嵌入式实时操作系统uCOS-Ⅱ

作者: 佚名   发布日期:2006-02-22 21:18   查看数:84   出自:互联网
下载资料简介
内容简介
  μC/OSII是著名的、源码公开的实时内核,是专为嵌入式应用设计的,可用于各类8位、16位和32位单片机或DSP。从μC/OS算起,该内核已有10余年应用史,在诸多领域得到了广泛应用。
  本书是MicroC/OSII The Real Time Kernel一书的第2版本,在第1版本(V2.0)基础上做了重大改进与升级。通过对 μC/OSII源代码的分析与描述,讲述了多任务实时的基本概念、竞争与调度算法、任务间同步与通信、存储与定时的管理以及如何处理优先级反转问题;介绍如何将μC/OSII移植到不同CPU上,如何调试移植代码。在所附光盘中,给出已通过FAA安全认证的μC/OSII V2.52的全部源码以及可在 PC机上运行的移植范例。
目录
概述7

第1章 初识μC/OSII1
1.00 安装 μC/OSII1
1.01 范例11
1.02 范例210
1.03 范例320
1.04 范例430

第2章 实时系统概念34
2.00 前/后台系统34
2.01 代码的临界段35
2.02 资源36
2.03 共享资源36
2.04 多任务36
2.05 任务36
2.06 任务切换38
2.07 内核38
2.08 调度39
2.09 不可剥夺型内核39
2.10 可剥夺型内核40
2.11 可重入函数42
2.12 时间片轮番调度法44
2.13 任务优先级44
2.14 静态优先级44
2.15 动态优先级44
2.16 优先级反转44
2.17 任务优先级分配47
2.18 互斥条件49
2.18.01 关中断和开中断49
2.18.02 测试并置位操作50
2.18.03 禁止,然后允许任务切换50
2.18.04 信号量51
2.19 死锁55
2.20 同步56
2.21 事件标志58
2.22 任务间通信59
2.23 消息邮箱59
2.24 消息队列60
2.25 中断61
2.26 中断延迟62
2.27 中断响应62
2.28 中断恢复时间63
2.29 中断延迟、响应及恢复64
2.30 中断处理时间66
2.31 非屏蔽中断66
2.32 时钟节拍67
2.33 对存储器的需求69
2.34 使用实时内核的优、缺点70
2.35 实时系统小结71


第3章 内核结构72
3.00 临界段,OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()73
3.01 任务76
3.02 任务状态78
3.03 任务控制块(OS_TCB)80
3.04 就绪表88
3.05 任务调度91
3.06 任务级的任务切换, OS_TASK_SW()92
3.07 给调度器上锁和开锁96
3.08 空闲任务97
3.09 统计任务98
3.10 μC/OSII中的中断103
3.11 时钟节拍107
3.12 μC/OSII初始化111
3.13 μC/OSII的启动113
3.14 获取当前μC/OSII的版本号115

第4章 任务管理116
4.00 建立任务,OSTaskCreate()117
4.01 建立任务,OSTaskCreateExt()119
4.02 任务堆栈122
4.03 堆栈检验,OSTaskStkChk()125
4.04 删除任务,OSTaskDel()128
4.05 请求删除任务,OSTaskDelReq()132
4.06 改变任务的优先级,OSTaskChangePrio()135
4.07 挂起任务,OSTaskSuspend()138
4.08 恢复任务,OSTaskResume()140
4.09 获得任务的信息,OSTaskQuery()142

第5章 时间管理144
5.00 任务延时函数,OSTimeDly()144
5.01 按时、分、秒延时函数,OSTimeDlyHMSM()146
5.02 恢复延时的任务,OSTimeDlyResume()149
5.03 系统时间,OSTimeGet()和OSTimeSet()150

第6章 事件控制块152
6.00 将任务置于等待事件的任务列表156
6.01 从等待事件的任务列表中使任务脱离等待状态156
6.02 在等待事件的任务列表中查找优先级最高的任务157
6.03 空余事件控制块链表159
6.04 初始化一个事件控制块,OS_EventWaitListInit()159
6.05 使一个任务进入就绪态,OS_EventTaskRdy()161
6.06 使一个任务进入等待某事件发生状态, OS_EventTaskWait()163
6.07 由于等待超时而将任务置为就绪态, OS_EventTO()163

第7章 信号量管理165
7.00 建立一个信号量, OSSemCreate()166
7.01 删除一个信号量,OSSemDel()168
7.02 等待一个信号量, OSSemPend()171
7.03 发出一个信号量, OSSemPost()173
7.04 无等待地请求一个信号量, OSSemAccept()175
7.05 查询一个信号量的当前状态, OSSemQuery()176

第8章 互斥型信号量管理179
8.00 建立一个互斥型信号量,OSMutexCreate()182
8.01 删除一个互斥型信号量,OSMutexDel()185
8.02 等待一个互斥型信号量(挂起),OSMutexPend()187
8.03 释放一个互斥型信号量,OSMutexPost()191
8.04 无等待地获取互斥型信号量(任务不挂起), OSMutexAccept()193
8.05 获取互斥型信号量的当前状态,OSMutexQuery() 195

第9章 事件标志组管理198
9.00 深入事件标志组199
9.01 建立一个事件标志组,OSFlagCreate()202
9.02 删除一个事件标志组,OSFlagDel()204
9.03 等待事件标志组的事件标志位,OSFlagPend()206
9.04 置位或清0事件标志组中的事件标志, OSFlagPost()214
9.05 无等待地获得事件标志组中的事件标志, OSFlagAccept()223
9.06 查询事件标志组的状态,OSFlagQuery()226

第10章 消息邮箱管理228
10.00 建立一个邮箱,OSMboxCreate()229
10.01 删除一个邮箱,OSMboxDel()231
10.02 等待邮箱中的消息,OSMboxPend()234
10.03 向邮箱发送一则消息,OSMboxPost()236
10.04 向邮箱发送一则消息,OSMboxPostOpt()238
10.05 无等待地从邮箱中得到一则消息, OSMboxAccept()240
10.06 查询一个邮

备注:
本站收集200多G的绝对实用的电子资料,但是站长还是个身无分文的学生,没有钱购买服务器,大量的资料没有办法供大家下载。但是,站长对这些资料进行了细致的分类,给大家一个资料索引,让大家更好的收集相关领域资料。本站资料部分来自互联网,朋友们可以在互联网上搜索到这些资料。当站长把资料整理完毕(大概需要1个月)后,会想办法让这些资料跟大家见面,也许用BT供大家下载,请大家耐心等待!
相关文章(最新&最热)