本篇主要提供实时嵌入式系统电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com
本书对实时嵌入式系统调度、资源访问控制、软件设计与开发以及 系统建模、分析与验证等方面进行了综合讲解。首先概述基本概念,之后深入研究硬件组件的细节,包括处理器、内存、I/O设备和架构、通信结构、外围设备以及实时操作系统的特性。后面的章节致力于介绍实时任务调度算法和资源访问控制策略,以及优先级反转控制和死锁避免。同时还介绍了实时系统的并行系 程和POSIX编程,以及有限状态机和时间Petri网。令软件工程师特别感兴趣的是模型检测的章节(其中讨论了时序逻辑和NuSMV模型检测工具),以及用UML处理实时软件设计的章节。*后探讨了软件可靠性、老化、重启、安全以及电源管理等实际问题。
---作者简介---
王加存(Jiacun Wang) 蒙莫斯大学计算机科学与软件工程系教授。曾任职于美国北电网络公司、佛罗里达 大学和南京理工大学。研究兴趣包括软件工程、离散事件系统、形式化方法、无线网络和实时分布式系统。
---译者简介---
【有 新】
樊卫华 南京理工大学自动化学院副教授,中国自动控制理论专业委员会网络化控制系统学组委员,中国人工智能学会会员,江苏省自动化学会会员。研究方向为智能控制与智能系统,以及嵌入式系统。
出版者的话
译者序
前言
第1章 实时嵌入式系统简介1
1.1 实时嵌入式系统1
1.2 示例:汽车防抱死制动系统2
1.2.1 侧滑率和制动力2
1.2.2 ABS部件3
1.2.3 ABS控制5
1.3 实时嵌入式系统的特性6
1.3.1 系统结构6
1.3.2 实时响应7
1.3.3 高度制约的环境7
1.3.4 并发性7
1.3.5 可预测性8
1.3.6 安全性和可靠性8
1.4 硬实时嵌入式系统和软实时嵌入式系统8
习题9
阅读建议10
参考文献10
第2章 硬件组件11
2.1 处理器11
2.1.1 微处理器11
2.1.2 微控制器12
2.1.3 专用集成电路12
2.1.4 现场可编程门阵列13
2.1.5 数字信号处理器13
2.1.6 专用指令集处理器13
2.1.7 多核处理器13
2.1.8 冯·诺依曼结构和哈佛结构13
2.1.9 复杂指令集计算机和精简指令集计算机14
2.2 存储器和高速缓存15
2.2.1 只读存储器15
2.2.2 随机访问存储器15
2.2.3 高速缓存16
2.3 I/O接口17
2.4 传感器和执行器18
2.5 定时器和计数器19
习题20
阅读建议20
参考文献20
第3章 实时操作系统22
3.1 通用操作系统的主要功能22
3.1.1 进程管理22
3.1.2 内存管理24
3.1.3 中断管理26
3.1.4 多任务26
3.1.5 文件系统管理27
3.1.6 I/O管理27
3.2 RTOS内核的特性28
3.2.1 时钟和定时器29
3.2.2 优先级调度30
3.2.3 任务间通信和资源共享30
3.2.4 异步I/O31
3.2.5 内存锁定32
3.3 RTOS示例32
3.3.1 LynxOS32
3.3.2 OSE33
3.3.3 QNX33
3.3.4 VxWorks33
3.3.5 Windows Embedded Compact34
习题34
阅读建议35
参考文献35
URL35
第4章 任务调度36
4.1 任务36
4.1.1 任务说明36
4.1.2 任务状态38
4.1.3 优先约束39
4.1.4 任务分配与调度39
4.2 时钟驱动调度40
4.2.1 结构化时钟驱动调度42
4.2.2 调度非周期任务46
4.2.3 调度偶发任务46
4.3 轮询方法48
4.4 基于优先级的调度算法48
4.4.1 固定优先级算法49
4.4.2 动态优先级算法53
4.4.3 非周期和偶发任务的基于优先级调度57
4.4.4 实际因素59
4.5 任务分配62
4.5.1 装箱算法62
4.5.2 考虑通信成本的分配65
习题66
阅读建议68
参考文献69
第5章 资源共享与访问控制70
5.1 资源共享70
5.1.1 资源操作70
5.1.2 资源请求描述71
5.1.3 优先级反转和死锁72
5.1.4 资源访问控制73
5.2 非抢占的临界区协议73
5.3 优先级继承协议75
5.3.1 优先级继承协议的规则75
5.3.2 优先级继承协议的特性77
5.4 优先级上限协议79
5.4.1 优先级上限协议的规则79
5.4.2 优先级上限协议的特性81
5.4.3 坏情况的阻塞时间83
5.5 堆栈共享优先级上限协议85
5.5.1 堆栈共享优先级上限协议的规则85
5.5.2 堆栈共享优先级上限协议的特性86
习题87
阅读建议89
参考文献89
第6章 并发编程90
6.1 简介90
6.2 POSIX线程90
6.3 同步机制93
6.3.1 竞争条件和临界区94
6.3.2 互斥95
6.3.3 条件变量97
6.3.4 信号量101
6.4 任务间通信106
6.4.1 消息队列106
6.4.2 共享内存111
6.4.3 共享内存保护114
6.5 实时设施116
6.5.1 实时信号116
6.5.2 定时器119
6.5.3 周期任务的实现121
6.5.4 多周期任务系统的实现124
习题124
阅读建议127
参考文献127
第7章 有限状态机128
7.1 有限状态机基础128
7.2 确定性有限自动机129
7.2.1 Moore机130
7.2.2 Mealy机132
7.3 非确定性有限自动机135
7.4 有限状态机的编程135
习题137
阅读建议140
参考文献140
第8章 UML状态机141
8.1 状态141
8.2 转移143
8.3 事件144
8.4 复合状态145
8.4.1 层次结构145
8.4.2 正交性146
8.4.3 子状态机状态147
8.5 伪状态147
8.5.1 历史伪状态147
8.5.2 进入点和退出点149
8.5.3 分叉和汇入伪状态150
8.5.4 终止伪状态150
8.6 ABS系统的UML状态机151
习题154
阅读建议156
参考文献156
第9章 时间Petri网157
9.1 Petri网定义157
9.1.1 变迁激发158
9.1.2 建模能力159
9.2 Petri网属性161
9.2.1 行为属性161
9.2.2 结构属性165
9.3 时间Petri网168
9.3.1 确定性时间Petri网168
9.3.2 时间Petri网173
习题176
阅读建议180
参考文献181
0章 模型检查182
10.1 模型检查简介182
10.2 时序逻辑183
10.2.1 线性时序逻辑184
10.2.2 计算树逻辑190
10.2.3 LTL与CTL的比较194
10.3 模型检查工具NuSMV194
10.3.1 描述语言195
10.3.2 格式198
10.3.3 运行NuSMV199
10.4 实时计算树逻辑202
习题206
阅读建议209
参考文献209
1章 实际问题211
11.1 软件可靠性211
11.1.1 软件错误211
11.1.2 可靠性测量212
11.1.3 提高软件的可靠性212
11.2 软件老化和重启213
11.3 信息安全性214
11.3.1 挑战214
11.3.2 常见漏洞214
11.3.3 信息安全软件设计215
11.4 安全性216
11.5 节电216
阅读建议217
参考文献217