出版社:电子工业出版社
年代:2014
定价:39.0
本书内容包括:实时操作系统基础、任务管理、中断和时间管理、事件管理、消息管理、内存管理、移植、μC/OS-II工程实例、μC/OS-III分析及工程实例等。本书内容翔实,图文并茂,采用逐步深入、反复印证的方法,从数据结构的设计入手,再到代码分析、示例验证的剖析方法,逐层深入讲解,给出在虚拟平台下的移植示例和针对各章内容示例,并给出了基于ARM Cortex M3内核的STM32系统上移植和工程实例。
第1章 实时操作系统基础.1.1 操作系统概述1.1.1 什么是操作系统.1.1.2 操作系统基本功能1.2 实时操作系统概述..1.2.1 什么是实时操作系统..1.2.2 实时操作系统的基本特征1.3 任务..1.3.1 任务简介1.3.2 多任务.1.3.3 任务状态1.3.4 任务切换1.3.5 可重入函数和不可重入函数 .1.4 基于优先级的可剥夺内核.1.4.1 内核 ..1.4.2 基于优先级的调度算法..1.4.3 不可剥夺型内核和可剥夺型内核 .1.5 同步与通信.1.5.1 同步 ..1.5.2 互斥1.5.3 临界区..1.5.4 事件1.5.5 信号量..1.5.6 互斥信号量1.5.7 事件标志组1.5.8 消息邮箱和消息队列1.6 时钟和中断.1.7 内存管理1.8 嵌入式实时操作系统μC/OS学习开发指引 .习题第2章 任务管理2.1 任务管理数据结构.2.1.1 任务控制块2.1.2 空闲链表和就绪链表2.1.3 任务优先级指针表.2.1.4 任务堆栈.2.1.5 任务就绪表和就绪组2.2 任务控制块初始化.2.2.1 代码解析.2.2.2 流程分析.2.3 操作系统初始化2.3.1 代码解析.2.3.2 流程分析.2.4 任务的创建.2.4.1 OSTaskCreate代码解析2.4.2 OSTaskCreate流程分析2.4.3 OSTaskCreateExt代码解析2.4.4 OSTaskCreateExt流程分析2.5 任务的删除.2.5.1 任务删除代码解析.2.5.2 任务删除流程分析.2.5.3 请求删除任务代码解析..2.5.4 请求删除任务流程.2.6 任务挂起和恢复2.6.1 OSTaskSuspend代码解析2.6.2 OSTaskSuspend流程分析2.6.3 OSTaskResume代码解析2.6.4 OSTaskResume流程分析2.7 任务的调度和多任务的启动..2.7.1 任务调度器2.7.2 任务切换函数..2.7.3 中断中的任务调度.2.7.4 多任务的启动2.8 特殊任务2.8.1 空闲任务OS_TaskIdle..2.8.2 统计任务OS_TaskStat..2.9 任务管理总结..习题第3章 中断和时间管理..3.1 中断管理3.1.1 中断管理核心思路.3.1.2 中断处理的流程..3.1.3 时钟中断服务..3.2 时间管理3.2.1 时间管理主要数据结构..3.2.2 时间的获取和设置.3.2.3 任务延时函数OSTimeDly.3.2.4 任务按分秒延迟函数OSTimeDlyHMSM3.2.5 延时恢复函数OSTimeDlyResume..习题第4章 事件管理4.1 事件管理的重要数据结构.4.1.1 事件控制块(ECB)4.1.2 事件等待组和事件等待表.4.1.3 事件控制块空闲链表4.2 事件管理程序..4.2.1 事件控制块(ECB)初始化4.2.2 事件等待表初始化.4.2.3 设置事件等待..4.2.4 取消事件等待..4.2.5 将等待事件的任务就绪..4.3 信号量管理.4.3.1 信号量的建立OSSemCreate..4.3.2 信号量的删除OSSemDel..4.3.3 请求信号量OSSemPend.4.3.4 提交信号量..4.3.5 无等待请求信号量4.3.6 放弃等待信号量.4.3.7 信号量值设置.4.3.8 查询信号量状态.4.3.9 信号量应用举例.4.4 互斥信号量管理..4.4.1 互斥信号量的建立4.4.2 请求互斥信号量.4.4.3 互斥信号量的删除4.4.4 发互斥信号量4.4.5 无等待请求互斥信号量.4.4.6 查询互斥信号量状态..4.4.7 改变任务的优先级并重新就绪.4.4.8 互斥信号量应用举例..4.5 事件标志组管理..4.5.1 事件标志组数据结构..4.5.2 事件标志组初始化4.5.3 创建事件标志组.4.5.4 事件标志组阻塞函数..4.5.5 请求事件标志.4.5.6 删除事件标志组.4.5.7 提交事件标志组.4.5.8 标志节点任务就绪4.5.9 无等待的请求事件标志.4.5.10 事件标志管理应用举例..习题..第5章 消息管理.5.1 消息邮箱..5.1.1 建立消息邮箱.5.1.2 等待消息5.1.3 发消息.5.1.4 删除消息邮箱.5.1.5 放弃等待邮箱.5.1.6 无等待请求消息.5.1.7 查询消息邮箱状态5.1.8 消息邮箱的例子.5.2 消息队列..5.2.1 消息队列数据结构5.2.2 初始化消息队列.5.2.3 建立消息队列.5.2.4 发消息到消息队列5.2.5 等待消息队列中的消息.5.2.6 删除消息队列.5.2.7 取得消息队列的状态..5.2.8 消息队列应用举例习题..第6章 内存管理.6.1 内存管理数据结构6.1.1 内存控制块..6.1.2 内存控制块实体.6.1.3 空闲内存控制块链表..6.1.4 内存分区6.2 内存控制块初始化6.3 创建内存分区.6.4 内存分区获取.6.5 内存分区释放.6.6 查询内存分区的状态.6.7 内存管理实例.习题..第7章 移植 .7.1 移植说明..7.1.1 μC/OS-II的代码结构7.1.2 操作系统中与CPU相关的代码解析.7.1.3 μC/OS-II移植步骤.7.2 在Visual C 6.0上实现基于Windows的虚拟μC/OS-II移植7.2.1 目录结构和工程的建立.7.2.2 包含文件includes.h7.2.3 os_cpu.h中修改的代码7.2.4 os_cpu.c中修改的代码7.2.5 主程序代码实现.7.2.6 移植测试7.3 μC/OS-II在ARM Cortex M3下的移植7.3.1 与移植相关的ARM Cortex M3研究.7.3.2 os_cpu.h代码解析.7.3.3 os_cpu_c.c移植代码解析..7.3.4 os_cpu_a.asm移植代码解析.7.3.5 移植后的目录结构习题..第8章 工程实践 .8.1 工程需求说明.8.2 分析8.3 工程设计..8.3.1 整体设计8.3.2 主机硬件接口设计8.3.3 多任务设计..8.3.4 串口数据格式.8.4 程序设计..8.4.1 主程序.8.4.2 串口中断服务程序8.4.3 缓冲区处理任务代码..8.4.4 显示任务代码.8.4.5 AD 采集任务代码8.4.6 触摸屏任务代码.8.4.7 μC/GUI消息处理任务代码.8.4.8 启动任务代码.8.4.9 工程代码结构.8.5 运行测试..习题..设计题第9章 μC/OS-III分析、移植与应用实践..9.1 本章说明..9.2 μC/OS-III代码结构..9.3 μC/OS-III在STM32上的移植.9.3.1 os_cpu.h代码9.3.2 os_cpu_c.c移植代码.9.3.3 os_cpu_a.asm移植代码9.4 μC/OS-III函数9.4.1 任务管理函数.9.4.2 时间管理函数.9.4.3 信号量管理函数.9.4.4 互斥信号量管理函数..9.4.5 消息队列管理函数9.4.6 中断管理函数.9.4.7 内核函数9.5 μC/OS-III工程示例..9.5.1 工程分组9.5.2 主程序.9.5.3 串口中断服务程序9.5.4 缓冲区处理任务代码..9.5.5 显示任务代码.9.5.6 启动任务代码9.5.7 其他代码 ..9.5.8 运行测试习题..设计题附录A 亮点STM32开发板资源A.1 硬件资源概述.A.2 硬件资源按引脚分配.A.3 接口描述..A.4 软件资源..A.5 网络资源..参考文献
《嵌入式实时操作系统μC/OS原理与实践(第2版)》内容包括:实时操作系统基础、任务管理、中断和时间管理、事件管理、消息管理、内存管理、移植、工程实践及μC/OS-III分析、移植与应用实践等。本书内容翔实,图文并茂,采用逐步深入、反复印证的方法,从数据结构的设计入手,再到代码分析、示例验证的剖析方法,逐层深入讲解,给出在虚拟平台下的移植示例和针对各章内容示例,并给出了基于ARM Cortex M3内核的STM32系统上移植和工程实例。 《嵌入式实时操作系统μC/OS原理与实践(第2版)》适用于计算机、电子、通信、自动化及相关专业大学本科、研究生,也适用于广大嵌入式开发工程技术人员、电子技术研究人员、操作系统研究人员。
卢有亮, 编著
邵贝贝等, 编译
任哲, 编著
程文娟, 吴永忠, 苗刚中, 编著
(美) K.C.王 (K. C. Wang) , 著
刘波文, 孙岩, 编著
刘波文, 编著
(美) 拉伯罗斯, 著
任哲, 房红征, 曹靖, 编著