| 作者 |
| 吴国伟、林驰、任健康、李照鑫 |
| 丛书名 |
| 清华开发者书库 |
| 出版社 |
| 清华大学出版社 |
| ISBN |
| 9787302488064 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 μC/OSⅢ是一个基于优先级的可固化实时嵌入式操作系统内核,在各类嵌入式系统中有广泛的应用。本书对μC/OSⅢ内核结构和各种机制进行了详细分析,并设置了应用场景,给出了基于μC/OSⅢ的开发应用实例。全书共分10章,第1章介绍了μC/OSⅢ的架构、组成及内核源码的关键数据结构和相互关系; 第2章到第9章分别分析μC/OSⅢ的任务管理机制、内核调度机制、任务间同步机制、中断管理、定时器管理、时钟管理、内存管理和文件系统,并给出每种机制的应用实例; 第10章介绍了μC/OSⅢ的移植方法。在对μC/OSⅢ的每一部分机制的源码分析过程中,先介绍工作机制,然后提炼关键数据结构和相互关系,再结合关键数据结构和算法分析源码,*后给出应用实例,让读者明白原理及实际应用,达到理论和实战技能同步提升的效果。为方便教学和自学,所有章节配有思考题与习题,以方便慕课、微课、微视频、翻转课堂等现代教学资源的制作。 本书可作为软件工程、电子信息科学与技术、计算机科学与技术、电子信息工程、电气工程及自动化、测控技术与仪器等专业的教材和有关工程技术人员的参考用书。 |
| 目录 |
第1章μC/OSⅢ操作系统概述 1.1μC/OSⅢ概览 1.1.1os.h和os_type.h功能 1.1.2os_core.c概况 1.1.3os_task.c、os_prio.c和os_pend_multi.c概况 1.1.4os_flag.c概况 1.1.5os_sem.c和os_mutex.c概况 1.1.6os_q.c和os_msg.c概况 1.1.7os_tick.c、os_time.c和os_tmr.c概况 1.1.8os_int.c概况 1.1.9os_mem.c概况 1.1.10os_dbg.c、os_cfg_app.c和os_stat.c概况 1.1.11os_cfg.h概况 1.2μC/OSⅢ概览 1.2.1任务管理 1.2.2任务调度 1.2.3任务同步 1.2.4任务间通信 1.2.5中断 1.2.6时间管理 1.2.7内存管理 1.2.8错误检测 1.2.9性能测量 1.3总体数据结构关系及描述 1.3.1就绪任务管理 1.3.2事件标志和请求管理 1.3.3消息队列管理 1.3.4互斥信号量管理 1.3.5内存分区管理 1.4各关键数据结构描述 1.4.1os_mem成员定义 1.4.2os_flag_grp成员定义 1.4.3OSPrioTbl结构 1.4.4os_mutex成员定义 1.4.5os_tcb成员定义 1.5内核函数 1.5.1内核函数介绍 1.5.2关键代码分析 习题 第2章μC/OSⅢ任务管理 2.1μC/OSⅢ任务管理机制 2.2μC/OSⅢ内核任务管理分析 2.3μC/OSⅢ任务管理函数 2.3.1任务创建OSTaskCreate(),OSTaskCreateExt() 2.3.2任务删除OSTaskDel(),OSTaskDelReq() 2.3.3任务挂起OSTaskSuspend() 2.3.4任务恢复OSTaskResume() 2.4μC/OSⅢ任务管理应用开发 2.4.1场景描述 2.4.2设计总体架构和数据结构 2.4.3代码实现 习题 第3章μC/OSⅢ内核调度 3.1μC/OSⅢ内核调度机制 3.2μC/OSⅢ内核抢占优先级调度分析 3.3μC/OSⅢ内核时间片轮转调度分析 3.4μC/OSⅢ内核调度管理函数 习题 第4章μC/OSⅢ任务间同步机制 4.1μC/OSⅢ任务同步机制 4.2μC/OSⅢ信号量机制分析 4.2.1μC/OSⅢ信号量数据结构 4.2.2μC/OSⅢ信号量管理函数 4.2.3μC/OSⅢ信号量应用开发 4.3μC/OSⅢ互斥体机制分析 4.3.1μC/OSⅢ互斥体管理函数 4.3.2μC/OSⅢ互斥体应用开发 4.4μC/OSⅢ事件标志组机制分析 4.4.1μC/OSⅢ事件标志组关键数据结构 4.4.2μC/OSⅢ事件标志组管理函数 4.4.3μC/OSⅢ事件标志组应用开发 4.5μC/OSⅢ消息队列 4.5.1μC/OSⅢ消息队列数据结构 4.5.2μC/OSⅢ消息队列操作函数 4.5.3μC/OSⅢ消息队列应用举例 习题 第5章中断管理 5.1μC/OSⅢ中断机制 5.2CPU中断处理 5.3中断服务程序 5.4直接发布和延迟发布 5.4.1直接发布 5.4.2延迟发布 5.4.3延迟提交信息记录块 5.5中断管理内部函数 5.5.1中断进入函数 5.5.2中断退出函数 5.5.3中断级任务切换函数 5.5.4临界区进入和退出宏 5.5.5中断延迟队列初始化函数 5.5.6中断延迟队列提交函数 5.5.7中断延迟队列真正提交函数 5.5.8中断队列管理任务 习题 第6章时钟管理 6.1总体描述 6.2时钟机制分析 6.2.1结构体os_tick_spoke 6.2.2时钟任务管理 6.2.3延时任务TCB 6.3时钟管理内核函数 6.3.1时钟节拍中断函数 6.3.2时钟节拍任务 6.3.3节拍链表任务插入函数 6.3.4节拍链表任务删除函数 6.4时钟管理函数 6.4.1延迟时钟节拍的延时函数 6.4.2延迟具体时间的延时函数 6.4.3延时取消函数 6.4.4时钟节拍设置函数 6.4.5时钟节拍设置函数 6.5时钟管理应用 6.5.1场景描述 6.5.2运行环境 6.5.3具体实现 6.5.4实验结果 习题 第7章定时器管理 7.1定时器机制 7.2定时器内部机制 7.2.1定时器状态 7.2.2定时器结构体os_tmr 7.2.3定时器分类 7.2.4定时器管理时序 7.2.5软件定时器的实现原理 7.2.6主要的数据结构分析 7.3定时器函数 7.3.1定时器创建函数 7.3.2定时器删除函数 7.3.3获取定时器的剩余时间 7.3.4定时器启动 7.3.5定时器状态获取函数 7.3.6定时器停止函数 7.4应用实例 7.4.1场景描述 7.4.2设计过程 7.4.3具体实现 习题 第8章内存管理 8.1内存管理机制 8.2内存管理机制分析 8.2.1内存控制块os_mem 8.2.2内存分区调试链表指针OSMemDbgListPtr 8.3内存管理函数 8.3.1内存初始化函数 8.3.2添加内存分区到调试列表 8.3.3内存分区创建函数 8.3.4内存块获取函数 8.3.5内存块释放函数 8.4内存管理应用开发 8.4.1场景描述 8.4.2设计环境 8.4.3具体实现 8.4.4实验结果 习题 第9章文件系统μC/FS 9.1文件系统概述 9.2机制方法 9.3关键数据结构 9.3.1文件及文件操作的数据结构 9.3.2文件夹数据结构 9.3.3其他的一些变量及数据结构 9.4内核函数 9.4.1_FS_fat_find_file() 9.4.2_FS_fat_create_file() 9.5应用函数介绍 9.5.1FS_Fopen()文件打开函数 9.5.2FS_FWrite()文件写入函数 9.5.3FS_FClose()文件关闭函数 9.6应用示例 9.6.1场景描述 9.6.2设计过程 9.6.3测试 习题 第10章μC/OSⅢ移植 10.1移植机制 10.2μC/OSⅢ与CPU相关的文件 10.2.1cpu.c文件 10.2.2cpu_a.asm文件 10.2.3cpu_cfg.h文件 10.2.4cpu_def.h文件 10.2.5cpu.h文件 10.2.6cpu_core.h文件 10.2.7cpu_core.c文件 10.3μC/OSⅢ系统与CPU接口文件 10.3.1os_cpu.h文件 10.3.2os_cpu_c.c文件 10.3.3os_cpu_a.asm文件 习题 参考文献 |