当前位置:首页 > 工业技术
嵌入式操作系统
嵌入式操作系统

嵌入式操作系统PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:廖勇,杨霞主编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2017
  • ISBN:9787040466072
  • 页数:315 页
图书介绍:本书主要介绍嵌入式操作系统内核的工作原理和设计思路。以开源嵌入式操作系统μC/OS-Ⅱ为例,深入剖析其在嵌入式平台ARM9 Mini2440 (处理器为三星S3C2440A)上的实现,重点描述内核基本调度机制、调度策略、任务协调机制(通信、同步、互斥等)、事务处理机制(中断、时钟等)、内存管理机制的设计和实现,并对嵌入式操作系统在不同嵌入式硬件平台上的移植等进行介绍。在此基础上,介绍实时调度理论、可信保障理论以及基于嵌入式操作系统的应用程序开发方法等内容。本书可作为计算机及相关专业嵌入式系统方向高年级本科生的必修课教材,也可作为相关专业的选修课教材,同时可作为对嵌入式操作系统有浓厚兴趣的读者的参考资料。
《嵌入式操作系统》目录

第1章 嵌入式操作系统概述 1

1.1 什么是嵌入式操作系统 1

1.2 嵌入式操作系统的特点 3

1.3 嵌入式操作系统的主要功能 5

1.4 嵌入式操作系统的体系结构 9

1.4.1 单块结构 9

1.4.2 层次结构 10

1.4.3 微内核结构 11

1.4.4 构件化结构 11

1.4.5 其他体系结构 12

1.5 嵌入式操作系统的应用领域 13

1.6 典型嵌入式操作系统 13

1.6.1 VxWorks 13

1.6.2 QNX 14

1.6.3 Windows CE 14

1.6.4 Embedded Linux 14

1.6.5 Android 16

1.6.6 iOS 16

1.6.7 Symbian OS 16

1.6.8 TinyOS 16

1.6.9 μC/OS 17

1.7 嵌入式操作系统的发展趋势 17

习题 18

第2章 任务调度机制 19

2.1 任务相关基本概念 19

2.2 任务描述 20

2.3 创建任务 26

2.3.1 临界段代码保护 28

2.3.2 堆栈初始化 30

2.3.3 TCB初始化 32

2.3.4 将新创建的任务挂载到就绪队列 37

2.3.5 调用OS_Sched() 40

2.3.6 创建任务扩展 40

2.3.7 编写任务函数 43

2.4 调度任务 43

2.4.1 调度前的准备 45

2.4.2 找到最高优先级任务 45

2.4.3 任务切换 47

2.5 其他基本调度机制 52

2.5.1 挂起任务 52

2.5.2 恢复任务 54

2.5.3 删除任务 56

2.5.4 改变任务优先级 59

2.5.5 堆栈检查 62

2.5.6 请求删除任务 64

2.5.7 获取任务信息 66

2.6 协调机制 67

2.7 内存管理机制 67

2.8 事务处理机制 67

习题 68

第3章 任务调度策略 70

3.1 任务调度策略的基本概念 70

3.2 任务调度策略 71

3.2.1 典型实时调度策略 72

3.2.2 基于公平策略的时间片轮转调度 73

3.2.3 基于优先级的抢占式调度 73

3.2.4 RM调度算法 75

3.2.5 EDF调度算法 88

3.3 优先级反转及解决办法 90

3.3.1 优先级继承 91

3.3.2 优先级天花板 94

3.4 提高系统实时性的其他措施 96

3.4.1 评价RTOS的性能指标 97

3.4.2 提高实时任务响应性的措施 98

3.5 多核/处理器调度 109

3.5.1 多核/处理器技术 109

3.5.2 多核/处理器调度策略 111

习题 113

第4章 任务的同步与通信 114

4.1 任务之间的同步与互斥关系 114

4.1.1 任务之间同步的概念 114

4.1.2 任务之间互斥的概念 115

4.2 任务之间的通信 115

4.2.1 ECB数据结构 115

4.2.2 ECB初始化 117

4.2.3 将一个任务挂载到就绪队列 119

4.2.4 将一个任务加入事件的等待队列 122

4.2.5 使等待超时的任务进入就绪状态 123

4.3 信号量机制 124

4.3.1 信号量的类型 124

4.3.2 创建信号量 125

4.3.3 删除信号量 127

4.3.4 获取信号量 130

4.3.5 释放信号量 132

4.3.6 无等待地请求一个信号量 133

4.3.7 查询信号量的当前状态 134

4.3.8 重置信号量的值 136

4.3.9 使用互斥信号量可能出现的问题 137

4.4 互斥锁 141

4.4.1 创建互斥锁 143

4.4.2 删除互斥锁 146

4.4.3 等待获取互斥锁 149

4.4.4 释放互斥锁 154

4.4.5 查询互斥锁的状态 156

4.4.6 无等待地获取互斥锁 158

4.5 邮箱机制 159

4.5.1 邮箱机制概述 159

4.5.2 建立一个邮箱 160

4.5.3 删除邮箱 161

4.5.4 从邮箱中获取一条消息 163

4.5.5 发送一个消息到邮箱 166

4.5.6 无等待地从邮箱中得到一个消息 167

4.5.7 查询一个邮箱的状态 168

4.6 消息队列 169

4.6.1 消息队列概述 169

4.6.2 消息队列初始化 171

4.6.3 建立消息队列 173

4.6.4 删除消息队列 175

4.6.5 从消息队列中获取一条消息 178

4.6.6 以FIFO方式向消息队列发送一条消息 180

4.6.7 以LIFO方式向消息队列发送一条消息 182

习题 183

第5章 中断和时间管理 185

5.1 中断的概念 185

5.1.1 中断作为任务切换 186

5.1.2 中断作为系统调用 186

5.1.3 中断作为前台任务 187

5.2 ARM的中断机制 187

5.3 一个简单的S3C2440中断服务程序的实现 190

5.3.1 中断返回 191

5.3.2 中断注册 191

5.3.3 状态保存和现场恢复 194

5.4 一个前后台系统的实现 195

5.4.1 启动S3C2440 195

5.4.2 后台主循环 196

5.4.3 前台中断处理 199

5.5 μC/OSⅡ的中断管理机制 200

5.5.1 中断的发生及响应 201

5.5.2 中断返回 203

5.5.3 中断初始化 205

5.6 一个开源RTOS的中断管理机制 205

5.6.1 中断的发生及响应 206

5.6.2 中断返回 212

5.6.3 中断子系统结构 214

5.6.4 中断初始化 215

5.7 时间管理 220

5.7.1 时钟中断 222

5.7.2 时钟服务 224

习题 226

第6章 内存管理、I/O管理和文件系统 227

6.1 内存管理 227

6.1.1 RTOS中内存管理的概念 227

6.1.2 RTOS中内存管理的机制与方法 228

6.1.3 RTOS中内存管理的实现 228

6.2 设备管理 237

6.2.1 通用操作系统的设备管理框架 238

6.2.2 RTOS的I/O管理框架 239

6.2.3 VxWorks的I/O管理 241

6.3 嵌入式文件系统 248

6.3.1 嵌入式文件系统概述 248

6.3.2 嵌入式Linux的文件系统 249

习题 253

第7章 嵌入式操作系统移植 255

7.1 移植的软硬件环境 255

7.1.1 开发板UT-S5PV210 255

7.1.2 开发环境RVDS 4.0 255

7.2 RVDS 4.0开发环境的使用 256

7.2.1 启动RVDS 4.0开发环境 256

7.2.2 新建项目 256

7.2.3 配置RVDS 4.0 257

7.2.4 start.s、main.c的生成与编译 258

7.2.5 编译、下载uart 260

7.3 将μC/OSⅡ移植到UT-S5PV210开发板 261

7.3.1 移植步骤 261

73.2 获取μC/OSⅡ源代码 261

7.3.3 μC/OSⅡ源代码目录结构 262

7.3.4 μC/OSⅡ硬件/软件体系结构 263

7.3.5 os_cpu.h 263

7.3.6 os_cpu_c.c 265

7.3.7 os_cpu_a.s 267

7.3.8 时钟中断 269

7.3.9 应用配置 270

7.3.10 其他硬件相关功能的移植 271

7.4 移植成功的验证 271

7.4.1 编写验证程序 272

7.4.2 编译μC/OSⅡ 273

7.4.3 执行μC/OSⅡ 275

7.5 移植中需要注意的问题 276

7.5.1 验证移植的正确性 276

7.5.2 移植过程建议 280

习题 281

第8章 嵌入式软件开发 282

8.1 嵌入式软件开发概述 282

8.2 嵌入式应用软件开发过程 282

8.3 交叉开发环境 283

8.3.1 交叉开发环境概述 283

8.3.2 交叉编译 284

8.3.3 交叉调试 285

8.3.4 常用的嵌入式软件集成开发环境 287

习题 289

第9章 高可信的嵌入式操作系统 290

9.1 可信计算概述 290

9.1.1 可信计算的定义 290

9.1.2 国外流行的可信计算标准 292

9.1.3 国内的可信计算标准 295

9.1.4 可信计算的发展历史和现状 296

9.2 嵌入式可信操作系统 297

9.2.1 嵌入式可信操作系统的概念 297

9.2.2 安全操作系统的发展历史和现状 299

9.2.3 嵌入式可信操作系统研究现状及急需解决的问题 300

9.3 嵌入式可信操作系统的实现技术和方法 303

9.3.1 基于时空隔离思想的可信操作系统实现方法 303

9.3.2 强制访问控制技术 311

习题 311

参考文献 312

返回顶部