1嵌入式实时的操作系统剖析.ppt
文本预览下载声明
嵌入式系统设计与实例开发
——ARM与?C/OS-Ⅱ
实时操作系统分析
控制工程系火控教研室 ;嵌入式系统;从硬件方面来讲,嵌入式系统的核心部件是嵌入式处理器。
嵌入式微控制器(MCU)
嵌入式DSP处理器(DSP)
嵌入式微处理器(MPU)
嵌入式片上系统(SOC);嵌入式系统的分类;无操作系统-----有操作系统区别;无操作系统;有操作系统;无操作系统:
1 严格按所规定的顺序执行
2 程序执行的封闭性
3 独占资源,执行过程和结果不受其它程序的影响
4 程序结果的可再现性(结果的确定性)
5 只要初始状态相同,程序多次重复运行,其结果与程序执行速度无关(连续或间断),结果都应相同。
有操作系统:多任务系统可以充分的利用系统资源。;嵌入式操作系统;嵌入式操作系统
Embedded Operating System;常见的嵌入式操作系统;μC/OS-Ⅱ是一种免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统。其内核提供任务调度与管理、时间管理、任务间同步与通信、内存管理和中断服务等功能。适合小型控制系统,具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB。抢占式内核。
UClinux则是继承标准Linux的优良特性,针对嵌入式处理器的特点设计的一种操作系统,具有内嵌网络协议、支持多种文件系统,开发者可利用标准Linux先验知识等优势。其编译后目标文件可控制在几百KB量级。无MMU,采用时间片轮番调度算法。 ;?C/OS简介;公开源代码
可移植性(Portable)
绝大部分? C/OS-II的源码是用移植性很强的ANSI C写的。和微处理器硬件相关的那部分是用汇编语言写的。汇编语言写的部分已经压到最低限度,使得? C/OS-II便于移植到其他微处理器上。 ? C/OS-II可以在绝大多数8位、16位、32位以至64位微处理器、微控制器 、数字信号处理器(DSP)上运行。
可固化(ROMable)
? C/OS-II是为嵌入式应用而设计的,这就意味着,只要读者有固化手段(C编译、连接、下载和固化), ? C/OS-II可以嵌入到读者的产品中成为产品的一部分。
可裁剪(Scalable)
可以只使用? C/OS-II中应用程序需要的那些系统服务。也就???说某产品可以只使用很少几个? C/OS-II调用,而另一个产品则使用了几乎所有? C/OS-II的功能,这样可以减少产品中的? C/OS-II所需的存储器空间(RAM和ROM)。这种可剪裁性是靠条件编译实现的。;占先式(Preemptive)
多任务
?C/OS-II可以管理64个任务,然而,目前这一版本保留8个给系统。应用程序最多可以有56个任务。
可确定性
全部? C/OS-II的函数调用与服务的执行时间具有可确定性。
任务栈
每个任务有自己单独的栈, ? C/OS-II允许每个任务有不同的栈空间,以便压低应用程序对RAM的需求。
系统服务
?C/OS-II提供很多系统服务,例如邮箱、消息队列、信号量、块大小固定的内存的申请与释放、时间相关函数等。
中断管理
中断可以使正在执行的任务暂时挂起,如果优先级更高的任务被该中断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套层数可达255层。
稳定性与可靠性;μC/GUI and μC/FS;μC/OS-II图书;μC/OS-II的各种商业应用;内容提要;特点:
可靠性
实时性
可裁减性;RTOS在嵌入式系统中的位置;实时系统基本概念;实时系统基本概念;实时系统基本概念;实时系统基本概念;实时系统基本概念;实时系统基本概念;实时系统基本概念;实时系统基本概念;中断是一种硬件机制,用于通知CPU有个异步事件发生了。中断一旦被识别,CPU保存部分(或全部)现场(Context)即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子程序(ISR)。
中断服务子程序做事件处理,处理完成后,程序回到:
1在前后台系统中,程序回到后台程序
2对不可剥夺型内核而言,程序回到被中断了的任务
3对可剥夺型内核而言,让进入就绪态的优先级最高的任务开始运行
中断使得CPU可以在事件发生时才予以处理,而不必让微处理器连续不断地查询(Polling)是否有事件发生。通过两条特殊指令:关中断(Disable interrupt)和开中断(Enable interrupt)可以让微处理器不响应或响应中断。;代码的临界段
代码的临界段也称为
显示全部