logo资料库

2、实时多任务操作系统的移植与扩展.pdf

第1页 / 共110页
第2页 / 共110页
第3页 / 共110页
第4页 / 共110页
第5页 / 共110页
第6页 / 共110页
第7页 / 共110页
第8页 / 共110页
资料共110页,剩余部分请下载后查看
实时多任务操作系统 的移植与扩展 演讲人:刘淼(博创科技) threewater@up-tech.com 2004.5.22 2004.5.22
实时操作系统(RTOS) RTOS的基本特征: • 高效的任务管理 • 支持多任务 • 优先级管理 • 任务调度:基于优先级的占先式调度、时间片轮转调度的算法 • 支持快速而确定的上下文切换 • 快速灵活的任务间通信 • 信号量:互斥、计数器 • 通信机制:消息队列、管道等 • 系统时钟和定时器 • 高度的可剪裁性、动态链接与部件增量加载 • 快速有效的中断和异常事件处理
uCOS-II简介 • 为嵌入式应用设计的专用操作系统 • 占先式,多任务,强实时性 • 90%以上的代码用C写成,移植方便 • 可裁剪,ROM化 • 源码中注释详细,便于学习 • 代码精简——对uCOS 2.76的统计:8700多行代 码,16个文件。易懂易学。 uCOS-II用最精简的代码展示了多任务操作系统最 核心的内容
uC/OS-II提供的系统服务 • 信号量——带互斥机构的信号量 • 解决优先级倒置的问题 • 事件标志 • 消息信箱 • 消息队列 • 内存管理 • 时钟管理 • 任务管理
优先级反转 Priority Inversion (4) (12) (8) (1) (6) (10) Task 1 (H) Task 2 (M) Task 3 (L) Task 3 Get Semaphore (2) Task 1 Preempts Task 3 (3) Task 1 Tries to get Semaphore (5) Task 3 Resumes (9) Task 3 Releases the Semaphore (11) Task 2 Preempts Task 3 (7)
uCOS-II的系统需求 • uCOS-II系统内核小,需要很少的系统资源 • 在51、AVR、MSP430等单片机上都有成功的移植 • UP-NetARM3000平台完全适合uCOS-II • 67.5MHz、32位的ARM7TDMI • 8/32MB SDRAM • 2MB NOR Flash+16MB Nand Flash
uCOS-II在ARM上的移植 • 所谓移植,是指使一个实时操作系统能够在某个 微处理器平台上运行。 • uCOS-II的主要代码都是由标准的C语言写成的, 移植方便——只需要编写与ARM体系结构相关部分 的代码
移植µCOS-II满足的条件 • 处理器的C编译器能产生可重入代码 • 在程序中可以打开或者关闭中断 • 处理器支持中断,并且能产生定时中断(通常在 10—1000Hz之间) • 处理器支承能够容纳一定量数据的硬件堆栈 • 处理器有将堆栈指针和其他CPU寄存器存储和读出 到堆栈(或者内存)的指令
分享到:
收藏