嵌入式实时操作系统uC-OS-II-PPT教程.ppt
文本预览下载声明
嵌入式实时操作系统
μC/OS-II讲座;为什么要学习μC/OS-II;讲座的主要内容;操作系统是一种为应用程序提供服务的系统软件,是一个完整计算机系统的有机组成部分。
从层次来看,操作系统位于计算机硬件之上,应用软件之下。所以也把它叫做应用软件的运行平台。;
它在计算机应用程序与计算机硬件系统之间,屏蔽了计算机硬件工作的一些细节,并对系统中的资源进行有效的管理。
通过提供函数(应用程序接口(API)),从而使应用程序的设计人员得以在一个友好的平台上进行应用程序的设计和开发,大大地提高了应用程序的开发效率。 ;操作系统;操作系统中经常使用
的数据结构(数组);操作系统中经常使用
的数据结构(位图);操作系统中经常使用
的数据结构(结构);next ;操作系统中经常使用
的数据结构(队列);操作系统中经常使用
的数据结构(堆栈);什么是多任务系统;程序的切换(两句话);所谓切换就是:
PC 目标地址
;小结;任务代码;任务代码;程序;虚拟处理器;
任务的基本概念
;小结;任务切换过程;
μC/OS-II中
的任务管理
;
任务的状态及其转换
;前面谈到,一个任务的任务控制块
的主要作用就是保存该任务的虚拟
处理器的堆栈指针寄存器SP。
其实,随着任务管理工作的复杂性
的提高,它还应该保存一些其他信
息。;
任务在内存中的结构
;
用户任务代码的
一般结构
;
系统提供的空闲任务
;
系统提供的另一个任务
——统计任务
;
任务的优先权
及优先级别
;
任 务 堆 栈
;
任务堆栈的初始化
;任务控制块 (OS_TCB)
及任务控制块链表 ;; 任务就绪表
及
任务调度 ;为加快访问任务就绪表的
速度,系统定义了一个变
量OSRdyGrp来表明就绪表
每行中是否存在就绪任务。;OSRdyTbl[ ];OSRdyGrp ;OSRdyGrp ;小结;任务切换过程;1.?
任务切换宏
OS_TASK_SW( )
;调度时机;
用函数OSTaskCreate( )
创建任务
;
创建任务
的一般方法
;
μC/OS-II的
初始化
;
μC/OS-II的启动
;第3章 μC/OS-Ⅱ的中断和时钟 ;本章主要内容:;μC/OS-II系统
响应中断的过程;中断请求;void OSIntEnter (void)
{
if (OSRunning == TRUE)
{
if (OSIntNesting 255)
{
OSIntNesting++; //中断嵌套层数计数器加一
}
}
}
;在中断服务程序中调用的负责任务切换工作的函数OSIntCtxSw( )叫做中断级任务切换函数 ;
应用程序中的临界段
;
μC/OS-II的系统时钟
;
任务的延时
;
其他用来管理时间的函数
;第4章
任务的同步与通信
;
事件
;一个简单的信号量;
事件控制块
;
空事件控制块链表
;
信号量及其操作
;互斥型信号量和任务优先级反转 ;
互斥型信号量
;消息邮箱及其操作 ;
消息队列及其操作
;
信号量集;
信号量集的标志组
; 等待任务链表 ;
信号量集的操作
;第6章 内存的
动态分配 ;
内存控制块 ;可动态分配内存的划分 ;
动态内存的管理
;关于μC/OS-II的硬件抽象层;关于μC/OS-II在PC机上
的硬件抽象层(续);;void main (void)
{
char* s_M=M; //定义要显示的字符
OSInit( ); //初始化μC/OS-II
PC_DOSSaveReturn( ); //保存Dos环境
PC_VectSet(uCOS, OSCtxSw);/*安装μC/OS-II任务
切换中断向量*/
OSTaskCreate(
MyTask, //创建任务MyTask
s_M, //给任务
显示全部