嵌入式系统的微模块化程序设计 实用状态图C/C++实现PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:(美)MirosamiekPHD著;敬万钧,陈丽蓉译
- 出 版 社:北京:北京航空航天大学出版社
- 出版年份:2004
- ISBN:7810774158
- 页数:327 页
第1部分 状态图 3
第1章 量子编程的快速浏览 3
1.1 终结钩子——GUI应用程序的剖析 3
目录 3
1.2 程序设计的更好办法——一个计算器的工作 5
1.2.1 传统的事件动作范型的缺点 5
1.2.2 计算器状态图 7
1.2.3 同Windows集成 11
1.2.4 状态处理器方法 13
1.3 面向对象相似性 15
1.3.1 状态层次和类分类学 15
1.3.2 进入/退出状态和初始化/结束类 16
1.3.3 按差异编程 16
1.3.4 行为继承作为基本的元模式 16
1.3.6 重构状态模型 17
1.3.5 状态模式 17
1.3.7 超越面向对象编程 18
1.4 量子类比 18
1.5 小结 18
第2章 状态图速成 21
2.1 有限状态机的本质 21
2.1.1 状态 21
2.1.2 扩展状态 21
2.1.3 监测器 22
2.1.4 事件 23
2.1.5 动作和转换 23
2.1.6 Mealy和Moore自动机 24
2.1.7 执行模型——RTC步 24
2.1.8 状态转换图 25
2.2.1 层次式状态 26
2.2 UML状态图的本质 26
2.2.2 行为继承 28
2.2.3 正交区域 29
2.2.4 进入和退出动作 30
2.2.5 转换执行序列 32
2.2.6 内部转换 33
2.2.7 伪状态 33
2.2.8 细化事件处理 34
2.2.9 语义与表示法 34
2.2.10 状态图和流程图 35
2.2.11 状态图与自动代码综合 36
2.3 状态模型的例子 37
2.3.1 量子计算器 37
2.3.2 氢原子 41
2.4 小结 44
3.1 状态机接口 46
第3章 标准状态机实现 46
3.2 嵌套的switch语句 48
3.3 状态表 51
3.4 状态设计模式 56
3.5 优化的FSM实现 60
3.6 状态机和C++异常处理 64
3.7 成员函数指针的作用 65
3.8 实现监测器、接合和选择点 66
3.9 实现进入和退出动作 67
3.10 处理状态层次 68
3.11 小结 69
第4章 实现行为继承 71
4.1 结构 71
4.1.1 事件 74
4.1.2 状态 76
4.1.3 进入/退出动作和初始转换 77
4.1.4 状态转换 79
4.1.5 top状态和初始伪状态 80
4.2 一个注释性例子 81
4.2.1 枚举信号和子类构作QHsm 82
4.2.2 定义状态处理器方法 83
4.2.3 初始化和分发事件 86
4.2.4 测试运行 87
4.3 试探和约定 89
4.3.1 构建状态机代码 89
4.3.2 选择正确的信号粒度 91
4.3.3 UML一致的HSM 91
4.4 事件处理器 93
4.4.1 初始化状态机:init()方法 93
4.4.2 分发事件:dispatch()方法 95
4.4.3 静态和动态状态转换:宏Q_TRAN和Q_TRAN_DYN() 96
4.4.4 动态状态转换:tran()方法 97
4.4.5 静态状态转换:tranStat()方法和Tran类 102
4.4.6 初始化QTran对象:tranSetup()方法 104
4.5 C实现 107
4.5.1 用“C+”的QHsm类 107
4.5.2 QHsm构造函数与析构函数 109
4.5.3 状态处理器方法和成员函数指针 109
4.5.4 QHsm方法 110
4.5.5 用C的状态图例子 110
4.6 防止误解的说明 113
4.7 小结 115
5.1.2 问题 118
5.1.1 目的 118
5.1.3 解决办法 118
5.1 终结钩子 118
第5章 状态模式 118
5.1.4 样例代码 119
5.1.5 结论 121
5.2 提示法 122
5.2.1 目的 122
5.2.2 问题 122
5.2.3 解决办法 122
5.2.4 样例代码 123
5.2.5 结论 127
5.3 延迟事件 128
5.3.1 目的 128
5.3.2 问题 128
5.3.3 解决办法 128
5.3.4 样例代码 130
5.4.2 问题 133
5.4.1 目的 133
5.4 正交构件 133
5.3.5 结论 133
5.4.3 解决办法 134
5.4.4 样例代码 135
5.4.5 结论 141
5.5 转换到历史 143
5.5.1 目的 143
5.5.2 问题 143
5.5.3 解决办法 143
5.5.4 样例代码 143
5.5.5 结论 147
5.6 小结 147
第6章 继承状态模型 149
6.1 用C++的状态图细化举例 149
6.2 用C的状态图细化举例 157
6.2.1 为多态性准备C+状态机 157
6.2.2 继承和细化C+状态机 159
6.3 防止误解的说明 160
6.3.1 静态与动态状态转换的比较 161
6.3.2 多重继承 161
6.3.3 继承和细化状态图的探索 163
6.4 小结 165
第2部分 量子框架 170
第7章 量子框架介绍 170
7.1 传统多线程方法 170
7.1.1 就餐哲学家——传统方法 171
7.1.2 Therac-25的故事 174
7.2 QF的计算模型 175
7.2.1 基于活动对象的多线程 176
7.2.2 量子类比 177
7.2.3 出版-订阅事件交付 179
7.2.5 重访就餐哲学家问题 180
7.2.4 通用结构 180
7.3 QF的角色 183
7.3.1 概念完整的源泉 184
7.3.2 RTOS抽象层 185
7.3.3 软件总线 186
7.3.4 高度并行计算平台 187
7.3.5 自动代码生成的基础 188
7.4 小结 189
第8章 量子框架的设计 191
8.1 嵌入式实时系统 191
8.2 处理错误和异常条件 192
8.2.1 按契约设计 194
8.2.2 基于状态的异常条件处理 197
8.3 内存管理 198
8.3.1 堆问题 199
8.3.2 QF中的内存管理 201
8.4.1 互斥的危险 203
8.4 互斥和阻塞 203
8.4.2 基于活动对象的系统中的阻塞 206
8.5 传送事件 207
8.5.1 动态事件分配 209
8.5.2 出版-订阅模型 212
8.5.3 组播事件 217
8.5.4 自动事件回收 219
8.6 活动对象 220
8.6.1 内部状态机 220
8.6.2 事件队列 221
8.6.3 执行线程 222
8.7 初始化和清除 224
8.7.1 初始化框架 224
8.7.2 启动QF应用 225
8.8 时间管理 226
8.7.3 优美地终结QF应用 226
8.8.1 QTimer类 227
8.8.2 时钟节拍,QF∷tick()方法 228
8.9 QF API快速参考 229
8.9.1 QF接口 229
8.9.2 QActive接口 231
8.9.3 QTimer接口 232
8.10 小结 233
第9章 量子框架的实现 236
9.1 作为一个Parnas家族的QF 236
9.2 代码组织 236
9.2.1 目录结构 238
9.2.2 公共范围头文件 240
9.2.3 包范围头文件 241
9.3.1 临界区 242
9.3 公共元素 242
9.3.2 事件池 243
9.3.3 事件队列 247
9.4 DOS:不具备多任务内核的QF 253
9.4.1 前台/后台处理 253
9.4.2 使用QF的前台/后台 254
9.4.3 DOS特定的代码 258
9.4.4 QF给前台/后台系统带来的益处 260
9.5 Win32:桌面上的QF 261
9.5.1 临界区、事件队列和执行线程 261
9.5.2 时钟节拍 264
9.6 RTKernel-32:带有一个基于优先级的可抢占内核的QF 266
9.6.1 临界区和事件池 266
9.6.2 事件队列和执行线程 269
9.6.3 RTKernel-32的初始化和时钟节拍 271
9.6.4 使用RTKernel-32进行交叉开发 272
9.7 小结 273
第10章 量子框架应用实例 275
10.1 产生一个QF应用 275
10.1.1 信号和事件 275
10.1.2 Table活动对象 277
10.1.3 Philosopher活动对象 280
10.1.4 配置DPP 282
10.1.5 注解 283
10.2 开发QF应用的规则 284
10.3 开发QF应用的启发 286
10.4 划分事件队列和事件池的大小 287
10.4.1 事件队列 287
10.4.2 事件池 290
10.5 系统集成 290
10.6 小结 291
11.1 QP的关键元素 292
第11章 结束语 292
11.1.1 是一个设计类型,而不是工具 293
11.1.2 是一个建模助手 293
11.1.3 是一个学习上的助手 294
11.1.4 是一个有用的隐喻 295
11.2 QP的建议 296
11.2.1 量子编程语言 296
11.2.2 未来的RTOS 297
11.2.3 硬件/软件协同设计 297
11.3 一个邀请 298
附录A C+——用C作面向对象编程 301
A.1 抽象 301
A.2 继承 303
A.3 多态性 305
A.4 费用和额外开销 312
A.5 小结 313
附录B 表示法指南 315
B.1 类图 315
B.2 状态图 317
B.3 顺序图 318
B.4 时序图 318
附录C CD-ROM 321
C.1 源代码结构 321
C.2 安装 321
C.2.1 源代码 321
C.2.2 OnTime RTOS-32评估套件 321
C.2.3 Adobe Acrobat Reader 322
C.3 练习的答案 322
C.4 资源 323
参考文献 324
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019