- 电子工业出版社
- 9787121282201
- 1-1
- 294344
- 16开
- 2016-05
- 340
- 软件工程
- 本科 研究生(硕士、EMBA、MBA、MPA、博士)
目 录
第1章 嵌入式系统导论 1
1.1 嵌入式系统概述 1
1.1.1 嵌入式系统的发展历程 2
1.1.2 嵌入式系统的特点 6
1.1.3 嵌入式系统的分类 7
1.2 嵌入式系统的应用领域 11
1.3 嵌入式系统的发展趋势 12
思考题1 14
第2章 嵌入式硬件系统 15
2.1 嵌入式硬件系统的基本组成 15
2.2 嵌入式微处理器 17
2.2.1 嵌入式微处理器的
特点 18
2.2.2 主流的嵌入式微
处理器 21
2.2.3 ARM指令集体系
架构 29
2.2.4 典型ARM CPU Core
体系结构 32
2.3 ARM编程模型 34
2.3.1 基于ARMv4的编程
模型 34
2.3.2 ARMv7-A&R的应用级
编程模型 51
2.3.3 ARMv7-A&R系统级编程
模型 58
2.3.4 处理器存储器子系统 63
2.3.5 存储器数据模式及I/O
编址 72
2.4 嵌入式系统总线 75
2.4.1 AMBA总线 75
2.4.2 PCI/CPCI总线 79
2.4.3 USB总线 81
2.5 嵌入式系统存储器 85
2.5.1 嵌入式系统的存储
结构 85
2.5.2 NandFlash 85
思考题2 88
第3章 ARM汇编程序设计 89
3.1 ARM嵌入式微处理器指
令集 89
3.1.1 ARM指令集 89
3.1.2 ARM v4T架构指令
体系 93
3.1.3 ARM v5TE架构指令
体系 100
3.1.4 ARMv6架构指令
体系 102
3.1.5 ARMv7-A&R架构指令
体系 107
3.1.6 Thumb与Thumb-2
指令集 115
3.2 ARM汇编 121
3.2.1 汇编、汇编器和汇编语言
程序 121
3.2.2 ARM伪指令 122
3.2.3 ARM宏与宏指令 130
3.2.4 汇编语句格式 132
3.2.5 ARM汇编语言中的
表达式及运算符 132
3.3 ARM程序设计 135
3.3.1 ARM工程 135
3.3.2 ARM汇编语言程序
设计 136
3.3.3 ARM程序的框架
结构 143
3.3.4 C语言程序与汇编程序
之间的函数调用 144
3.3.5 ARM汇编与C语言的
混合程序设计 151
思考题3 156
第4章 嵌入式软件系统 159
4.1 嵌入式软件系统分类和体系
结构 159
4.1.1 嵌入式软件分类 160
4.1.2 嵌入式软件体系
结构 161
4.1.3 嵌入式软件运行
流程 162
4.2 嵌入式操作系统 163
4.2.1 体系结构 164
4.2.2 功能及特点 166
4.2.3 发展趋势 169
4.3 嵌入式软件开发工具 170
4.3.1 嵌入式软件开发工具的
分类 170
4.3.2 嵌入式软件的交叉开发
环境 171
4.3.3 嵌入式软件实现阶段的
开发过程 172
4.3.4 嵌入式软件开发工具的
发展趋势 179
思考题4 180
第5章 任务管理与调度 181
5.1 概述 181
5.2 任务 183
5.2.1 任务的定义及其主要
特性 183
5.2.2 任务的内容 183
5.2.3 任务分类 184
5.2.4 任务参数 185
5.3 任务管理 185
5.3.1 任务状态与变迁 185
5.3.2 任务控制块 186
5.3.3 任务切换 187
5.3.4 任务队列 188
5.3.5 任务管理机制 193
5.4 任务调度 197
5.4.1 概述 197
5.4.2 基于优先级的可抢占
调度 199
5.4.3 时间片轮转调度 199
5.4.4 静态调度 200
5.4.5 动态调度 204
5.4.6 静态调度与动态调度之间
的比较 205
5.5 优先级反转 205
5.5.1 概述 205
5.5.2 优先级继承协议 206
5.5.3 优先级天花板协议 207
5.6 基于多核的任务调度 214
5.6.1 局部调度 214
5.6.2 全局调度 216
5.6.3 混合调度 220
5.7 与任务有关的性能指标 221
5.7.1 任务上下文切换时间 221
5.7.2 任务响应时间 223
思考题5 224
第6章 同步、互斥与通信 226
6.1 概述 226
6.2 信号量 228
6.2.1 信号量的种类及用途 228
6.2.2 互斥信号量 229
6.2.3 二值信号量 231
6.2.4 计数信号量 232
6.2.5 信号量机制的主要数据
结构 234
6.2.6 典型的信号量操作 235
6.2.7 与信号量有关的资源
配置问题 238
6.3 邮箱和消息队列 238
6.3.1 嵌入式系统的通信 238
6.3.2 消息队列机制的主要
数据结构 240
6.3.3 典型的消息队列
操作 243
6.3.4 与消息队列有关的资源
配置问题 246
6.3.5 消息队列的其他典型
使用 246
6.4 事件 247
6.4.1 事件机制 247
6.4.2 事件机制的主要数据
结构 248
6.4.3 典型的事件操作 250
6.4.4 与事件机制有关的资源
配置问题 251
6.4.5 事件机制的典型
应用 252
6.5 异步信号 252
6.5.1 异步信号机制 252
6.5.2 异步信号机制与中断机制
的比较 253
6.5.3 异步信号机制与事件机制
的比较 254
6.5.4 异步信号机制的主要
数据结构 255
6.5.5 典型的异步信号操作 256
6.6 多核系统中的同步、互斥与
通信 257
6.6.1 多核系统的硬件基础 257
6.6.2 多核系统的互斥机制 258
6.6.3 核间通信 264
6.6.4 核间同步 270
思考题6 272
第7章 中断、时间、内存与I/O
管理 274
7.1 中断管理 274
7.1.1 实时内核的中断管理 274
7.1.2 中断的分类 275
7.1.3 中断处理的过程 277
7.1.4 实时内核的中断
管理 279
7.1.5 用户中断服务程序 281
7.1.6 中断相关的性能
指标 282
7.2 时间管理 286
7.2.1 硬件时钟设备 286
7.2.2 实时内核的时间
管理 288
7.3 内存管理 291
7.3.1 内存管理概念 291
7.3.2 内存管理机制 292
7.4 I/O管理 300
7.4.1 I/O管理的功能 300
7.4.2 I/O系统的实现考虑 301
思考题7 304
第8章 虚拟化技术 305
8.1 概述 305
8.2 虚拟化技术分类 306
8.2.1 进程级虚拟机 306
8.2.2 系统级虚拟机 307
8.3 微内核虚拟化技术 313
8.3.1 微内核的系统特征 314
8.3.2 微内核技术的起源和
发展 314
8.3.3 L4微内核技术 316
8.3.4 微内核虚拟化架构 327
8.4 虚拟化产品实例 327
思考题8 329
参考文献 330