《μC/OS-Ⅲ内核分析与应用开发》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:吴国伟,林驰,任健康等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2018
  • ISBN:9787302488064
  • 页数:188 页
图书介绍:讲解最新uC/OS-III内核的组成和机制,包括任务管理、设备管理、中断机制、内核同步互斥机制等,着重讲解uC/OS-III的新特点和新机制,包括内核调度、任务管理与任务间通信、内核调试器、执行时间确定性等,同时阐述嵌入式uC/OS-III的应用开发和分析方法。

第1章 μC/OS-Ⅲ操作系统概述 1

1.1 μC/OS-Ⅲ概览 1

1.1.1 os.h和os_ type.h功能 2

1.1.2 os_ core.c概况 2

1.1.3 os_task.c、os_prio.c和os_pend_multi.c概况 2

1.1.4 os_flag.c概况 4

1.1.5 os_ sem.c和os_ mutex.c概况 4

1.1.6 os_ q.c和os_ msg.c概况 4

1.1.7 os_ tick.c、os_ time.c和os_tmr.c概况 4

1.1.8 os_ int.c概况 5

1.1.9 os_ mem.c概况 6

1.1.10 os_dbg.c、os_cfg-app.c和os_stat.c概况 6

1.1.11 os_cfg.h概况 6

1.2 μC/OS-Ⅲ概览 7

1.2.1 任务管理 7

1.2.2 任务调度 8

1.2.3 任务同步 9

1.2.4 任务间通信 10

1.2.5 中断 10

1.2.6 时间管理 11

1.2.7 内存管理 11

1.2.8 错误检测 11

1.2.9 性能测量 12

1.3 总体数据结构关系及描述 12

1.3.1 就绪任务管理 12

1.3.2 事件标志和请求管理 12

1.3.3 消息队列管理 12

1.3.4 互斥信号量管理 13

1.3.5 内存分区管理 14

1.4 各关键数据结构描述 15

1.4.1 os_ mem成员定义 15

1.4.2 os_flag_grp成员定义 15

1.4.3 OSPrioTbl结构 15

1.4.4 os_ mutex成员定义 15

1.4.5 os_ tcb成员定义 15

1.5 内核函数 17

1.5.1 内核函数介绍 17

1.5.2 关键代码分析 19

习题 27

第2章 μC/OS-Ⅲ任务管理 28

2.1 μC/OS-Ⅲ任务管理机制 28

2.2 μC/OS-Ⅲ内核任务管理分析 30

2.3 μC/OS-Ⅲ任务管理函数 31

2.3.1 任务创建OSTaskCreate() , OSTaskCreateExt() 31

2.3.2 任务删除OSTaskDel(), OSTaskDelReq() 35

2.3.3 任务挂起OSTaskSuspend() 38

2.3.4 任务恢复OSTaskResume() 40

2.4 μC/OS-Ⅲ任务管理应用开发 42

2.4.1 场景描述 42

2.4.2 设计总体架构和数据结构 43

2.4.3 代码实现 44

习题 48

第3章 μC/OS-Ⅲ内核调度 50

3.1 μC/OS-Ⅲ内核调度机制 50

3.2 μC/OS-Ⅲ内核抢占优先级调度分析 51

3.3 μC/OS-Ⅲ内核时间片轮转调度分析 53

3.4 μC/OS-Ⅲ内核调度管理函数 57

习题 63

第4章 μC/OS-Ⅲ任务间同步机制 64

4.1 μC/OS-Ⅲ任务同步机制 64

4.2 μC/OS-Ⅲ信号量机制分析 64

4.2.1 μC/OS-Ⅲ信号量数据结构 66

4.2.2 μC/OS-Ⅲ信号量管理函数 66

4.2.3 μC/OS-Ⅲ信号量应用开发 76

4.3 μC/OS-Ⅲ互斥体机制分析 77

4.3.1 μC/OS-Ⅲ互斥体管理函数 81

4.3.2 μC/OS-Ⅲ互斥体应用开发 81

4.4 μC/OS-Ⅲ事件标志组机制分析 82

4.4.1 μC/OS-Ⅲ事件标志组关键数据结构 83

4.4.2 μC/OS-Ⅲ事件标志组管理函数 83

4.4.3 μC/OS-Ⅲ事件标志组应用开发 85

4.5 μC/OS-Ⅲ消息队列 89

4.5.1 μC/OS-Ⅲ消息队列数据结构 90

4.5.2 μμC/OS-Ⅲ消息队列操作函数 91

4.5.3 μC/OS-Ⅲ消息队列应用举例 91

习题 92

第5章 中断管理 93

5.1 μC/OS-Ⅲ中断机制 93

5.2 CPU中断处理 95

5.3 中断服务程序 95

5.4 直接发布和延迟发布 96

5.4.1 直接发布 96

5.4.2 延迟发布 97

5.4.3 延迟提交信息记录块 98

5.5 中断管理内部函数 99

5.5.1 中断进入函数 99

5.5.2 中断退出函数 99

5.5.3 中断级任务切换函数 101

5.5.4 临界区进入和退出宏 101

5.5.5 中断延迟队列初始化函数 103

5.5.6 中断延迟队列提交函数 105

5.5.7 中断延迟队列真正提交函数 107

5.5.8 中断队列管理任务 109

习题 111

第6章 时钟管理 112

6.1 总体描述 112

6.2 时钟机制分析 113

6.2.1 结构体os_tick_spoke 113

6.2.2 时钟任务管理 114

6.2.3 延时任务TCB 114

6.3 时钟管理内核函数 115

6.3.1 时钟节拍中断函数 115

6.3.2 时钟节拍任务 116

6.3.3 节拍链表任务插入函数 117

6.3.4 节拍链表任务删除函数 119

6.4 时钟管理函数 120

6.4.1 延迟时钟节拍的延时函数 120

6.4.2 延迟具体时间的延时函数 122

6.4.3 延时取消函数 123

6.4.4 时钟节拍设置函数 125

6.4.5 时钟节拍设置函数 125

6.5 时钟管理应用 126

6.5.1 场景描述 126

6.5.2 运行环境 127

6.5.3 具体实现 127

6.5.4 实验结果 130

习题 131

第7章 定时器管理 132

7.1 定时器机制 132

7.2 定时器内部机制 133

7.2.1 定时器状态 133

7.2.2 定时器结构体os_ tmr 134

7.2.3 定时器分类 134

7.2.4 定时器管理时序 134

7.2.5 软件定时器的实现原理 135

7.2.6 主要的数据结构分析 136

7.3 定时器函数 137

7.3.1 定时器创建函数 137

7.3.2 定时器删除函数 139

7.3.3 获取定时器的剩余时间 140

7.3.4 定时器启动 142

7.3.5 定时器状态获取函数 143

7.3.6 定时器停止函数 144

7.4 应用实例 146

7.4.1 场景描述 146

7.4.2 设计过程 146

7.4.3 具体实现 146

习题 149

第8章 内存管理 150

8.1 内存管理机制 150

8.2 内存管理机制分析 151

8.2.1 内存控制块os_ mem 151

8.2.2 内存分区调试链表指针OSMemDbgListPtr 151

8.3 内存管理函数 152

8.3.1 内存初始化函数 152

8.3.2 添加内存分区到调试列表 153

8.3.3 内存分区创建函数 153

8.3.4 内存块获取函数 155

8.3.5 内存块释放函数 157

8.4 内存管理应用开发 158

8.4.1 场景描述 158

8.4.2 设计环境 159

8.4.3 具体实现 159

8.4.4 实验结果 162

习题 162

第9章 文件系统μC/FS 163

9.1 文件系统概述 163

9.2 机制方法 165

9.3 关键数据结构 165

9.3.1 文件及文件操作的数据结构 165

9.3.2 文件夹数据结构 168

9.3.3 其他的一些变量及数据结构 168

9.4 内核函数 170

9.4.1 FS fat find file() 170

9.4.2 FS fat create file() 172

9.5 应用函数介绍 172

9.5.1 FS_Fopen()文件打开函数 173

9.5.2 FS_ FWrite()文件写入函数 175

9.5.3 FS_ FClose()文件关闭函数 175

9.6 应用示例 176

9.6.1 场景描述 176

9.6.2 设计过程 176

9.6.3 测试 176

习题 177

第10章 μC/OS-Ⅲ移植 178

10.1 移植机制 178

10.2 μC/OS-Ⅲ与CPU相关的文件 179

10.2.1 cpu.c文件 179

10.2.2 cpu_a.asm文件 179

10.2.3 cpu_cfg.h文件 180

10.2.4 cpu_def.h文件 180

10.2.5 cpu.h文件 181

10.2.6 cpu_core.h文件 182

10.2.7 cpu_core.c文件 182

10.3 μC/OS-Ⅲ系统与CPU接口文件 183

10.3.1 os_cpu.h文件 183

10.3.2 os_cpu_c.c文件 184

10.3.3 os_cpu_a.asm文件 185

习题 186

参考文献 188