图书介绍
嵌入式实时操作系统μC/OSII原理及应用PDF|Epub|txt|kindle电子书版本下载
![嵌入式实时操作系统μC/OSII原理及应用](https://www.shukui.net/cover/57/33277845.jpg)
- 任哲编著 著
- 出版社: 北京:北京航空航天大学出版社
- ISBN:9787811249323
- 出版时间:2009
- 标注页数:278页
- 文件大小:94MB
- 文件页数:294页
- 主题词:实时操作系统-高等学校-教材
PDF下载
下载说明
嵌入式实时操作系统μC/OSII原理及应用PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 嵌入式实时操作系统的基本概念1
1.1计算机操作系统1
1.1.1什么是计算机操作系统1
1.1.2操作系统的作用和功能2
1.2嵌入式系统和嵌入式操作系统3
1.2.1嵌入式系统的基本概念4
1.2.2嵌入式操作系统7
1.2.3实时操作系统需要满足的条件9
1.2.4嵌入式系统的任务及嵌入式实时操作系统11
1.3嵌入式实时操作系统μC/OS-Ⅱ简介12
1.4小结13
1.5练习题13
第2章 预备知识14
2.1开发工具14
2.1.1Borland C3.1及其精简版14
2.1.2多文件程序的编译和连接19
2.2工程管理工具make及makefile22
2.3复杂工程项目的管理30
2.3.1批处理文件与makefile的综合使用30
2.3.2复杂工程管理示例31
2.4常用数据结构35
2.4.1程序控制块35
2.4.2控制块的组织——链表39
2.4.3位图40
2.5小结40
2.6练习题41
第3章 μC/OS-Ⅱ中的任务42
3.1任务的基本概念42
3.1.1任务及其内存结构42
3.1.2任务的状态44
3.1.3用户任务代码的一般结构45
3.1.4系统任务46
3.1.5任务的优先权及优先级别48
3.2任务堆栈48
3.2.1任务堆栈的创建49
3.2.2任务堆栈的初始化51
3.3任务控制块及其链表52
3.3.1任务控制块结构52
3.3.2任务控制块链表53
3.3.3任务控制块的初始化55
3.4任务就绪表及任务调度56
3.4.1任务就绪表结构56
3.4.2对任务就绪表的操作58
3.4.3任务调度59
3.5任务的创建65
3.5.1用函数OSTaskCreate()创建任务65
3.5.2用函数OSTaskCreateExt()创建任务67
3.5.3创建任务的一般方法67
3.6任务的挂起和恢复74
3.6.1挂起任务74
3.6.2恢复任务74
3.7其他任务管理函数80
3.7.1任务优先级别的修改80
3.7.2任务的删除81
3.7.3查询任务的信息87
3.8μC/OS-Ⅱ的初始化和任务的启动87
3.8.1μC/OS-Ⅱ的初始化87
3.8.2μC/OS-Ⅱ的启动89
3.9小结91
3.10练习题92
第4章 μC/OS-Ⅱ的中断和时钟93
4.1μC/OS-Ⅱ的中断93
4.1.1μC/OS-Ⅱ的中断过程93
4.1.2中断级任务切换函数97
4.1.3应用程序中的临界段97
4.2μC/OS-Ⅱ的时钟99
4.3时间管理106
4.3.1任务的延时106
4.3.2取消任务的延时107
4.3.3获取和设置系统时间112
4.4小结114
4.5练习题115
第5章 任务的同步与通信116
5.1任务的同步和事件116
5.1.1任务间的同步116
5.1.2事件117
5.2事件控制块及事件处理函数129
5.2.1事件控制块的结构129
5.2.2操作事件控制块的函数131
5.2.3空事件控制块链表133
5.3信号量及其操作134
5.3.1信号量134
5.3.2信号量的操作135
5.4互斥型信号量和任务优先级反转144
5.4.1任务优先级的反转现象145
5.4.2互斥型信号量150
5.5消息邮箱及其操作153
5.5.1消息邮箱153
5.5.2消息邮箱的操作154
5.6消息队列及其操作159
5.6.1消息队列159
5.6.2消息队列的操作162
5.7小结168
5.8练习题169
第6章 信号量集170
6.1信号量集的结构170
6.1.1基本概念170
6.1.2信号量集的结构171
6.1.3对等待任务链表的操作175
6.1.4空标志组链表175
6.2信号量集的操作176
6.2.1创建信号量集176
6.2.2请求信号量集178
6.2.3向信号量集发送信号178
6.2.4查询信号量集的状态184
6.2.5删除信号量集187
6.3小结187
6.4练习题187
第7章 动态内存管理188
7.1内存控制块188
7.1.1可动态分配内存的划分188
7.1.2内存控制块OS_MEM的结构189
7.1.3空内存控制块链表190
7.2动态内存的管理190
7.2.1创建动态内存分区191
7.2.2请求获得一个内存块193
7.2.3释放一个内存块195
7.2.4查询一个内存分区的状态199
7.3小结204
7.4练习题204
第8章 在51单片机上移植μC/OS-Ⅱ205
8.1μC/OS-Ⅱ移植的一般性问题205
8.1.1可重入函数的概念205
8.1.2时钟节拍的产生206
8.1.3任务堆栈的设计206
8.2在51系列单片机上移植μC/OS-Ⅱ207
8.2.1文件OS_CPU.H的修改207
8.2.2任务堆栈的设计208
8.2.3文件OS_CPU_C.C的修改215
8.2.4几点注意事项216
8.3应用举例216
8.3.1LED数码显示器的驱动程序216
8.3.2串行接口的应用218
8.4小结226
8.5练习题226
第9章 基于ARM的μC/OS-Ⅱ227
9.1移植规划227
9.1.1编译器的选择227
9.1.2ARM7工作模式的选择227
9.2移植228
9.2.1文件OS_CPU.H的编写228
9.2.2文件OS_CPU_C.C的编写230
9.2.3文件OS_CPU_A.S的编写237
9.2.4关于中断及时钟节拍240
9.3在LPC2000上移植μC/OS-Ⅱ241
9.3.1挂接SWI软件中断242
9.3.2中断及时钟节拍中断242
9.3.3一个基于μC/OS-Ⅱ和ARM的应用程序实例243
9.4小结245
9.5练习题245
第10章 μC/OS-Ⅱ在80x86上的移植246
10.1概述246
10.2任务切换247
10.2.1任务切换函数OSCtxSw()247
10.2.2任务切换宏OS_TASK_SW()249
10.2.3中断级任务切换函数OSIntCtxSw()250
10.3系统时钟251
10.3.1PC中DOS的系统时钟251
10.3.2PC中μC/OS-Ⅱ的系统时钟251
10.3.3μC/OS-Ⅱ系统时钟中断服务程序253
10.3.4μC/OS-Ⅱ系统时钟中断向量的安装253
10.3.5由μC/OS-Ⅱ返回DOS254
10.4小结255
第11章 μC/OS-Ⅱ可剪裁性的实现256
11.1文件OS_CFG.H中用于系统裁剪的常量256
11.2配置常量的解释258
11.2.1OS_MAX_EVENTS258
11.2.2OS_MAX_MEM_PARTS259
11.2.3OS_MAX_QS259
11.2.4OS_MAX_MEM_TASKS259
11.2.5OS_LOWEST_PRIO259
11.2.6OS_TASK_IDLE_STK_SIZE260
11.2.7OS_TASK_STAT_EN260
11.2.8OS_TASK_STAT_STK_SIZE260
11.2.9OS_CPU_HOOKS_EN260
11.2.10OS_MBOX_EN261
11.2.11OS_MEM_EN261
11.2.12OS_Q_EN261
11.2.13OS_SEM_EN261
11.2.14OS_TASK_CHANGE_PRIO_EN261
11.2.15OS_TASK_CREATE_EN261
11.2.16OS_TASK_CREATE_EXT_EN262
11.2.17OS_TASK_DEL_EN262
11.2.18OS_TASK_SUSPEND_EN262
11.2.19OS_TICKS_PER_SEC262
附录A文件PC.C中的函数263
A.1字符显示函数263
A.1.1显示一个字符的函数PC_DispChar263
A.1.2清屏幕一列显示的函数PC_DispClrCol263
A.1.3清屏幕一行显示的函数PC_DispClrRow263
A.1.4清屏函数PC_DispClrScr264
A.1.5显示字符串函数PC_DispStr264
A.1.6颜色常量的定义264
A.2保存和恢复DOS环境的函数265
A.2.1保存DOS环境的函数PC_DOSSaveReturn()265
A.2.2恢复DOS环境的函数PC_DOSReturn()265
A.3设置和获取中断向量的函数265
A.3.1设置中断向量的函数PC_VectSet()265
A.3.2获取中断向量的函数PC_VectGet()265
附录B μC/OS-Ⅱ中使用的数据类型266
附录C C51开发工具μVision2简介267
C.1C51语言的扩展267
C.1.1数据类型267
C.1.2存储器类型268
C.1.3存储模式269
C.1.4指针270
C.1.5可重入函数271
C.1.6与汇编语言的接口272
C.1.7库函数273
C.2创建项目273
C.2.1启动μVision2并创建一个项目273
C.2.2新建一个源文件274
C.2.3增加和配置初始化代码274
C.2.4为目标设置工具选项275
C.2.5Build项目并生成HEX文件275
C.3常用的菜单选项276
C.3.1视图菜单View276
C.3.2项目菜单Project276
C.3.3调试菜单Debug276
C.3.4外围器件菜单Peripherals277
参考文献278