6ucos2嵌入式实时操作系统.ppt

  1. 1、本文档共291页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统原理与接口技术 第六讲 嵌入式实时操作系统?C/OS-Ⅱ 本节提要 7 1.1 计算机操作系统 定义 OS是一种系统软件。 OS是在计算机硬件与计算机应用程序之间,通过提供应用程序接口,屏蔽了计算机硬件工作的一些细节,大大提高了应用程序的开发效率。 作用与功能 OS为应用程序提供了一个界面友好,性能稳定、安全,效率高,操作方便的虚拟计算机。 OS的主要功能:处理器的管理;存储的管理;设备的管理;文件的管理;网络和通信的管理;提供用户接口。 1.2 嵌入式操作系统 定义 运行在嵌入式硬件平台上,对整个系统及其所操作的部件、装置等资源进行统一协调、指挥和控制的系统软件。 嵌入式操作系统的主要特点: 微型化 可裁剪性 实时性 高可靠性 易移植性 嵌入式操作系统按应用范围分为通用型(如Win CE,VXWorks, ?CLinux,?C/OS-Ⅱ等)和专用型(Symbian,Plam OS等)两种。 1.3 实时操作系统(RTOS) 定义 RTOS是具有实时性能且能支持实时控制系统工作的操作系统。 RTOS是一个程序,它按时序方式调度执行,管理系统资源,并为开发应用代码提供一致的基础。 RTOS的首要任务是调度一切可利用的资源来完 成实时控制任务,其次才着眼于提高计算机系统 的使用效率,其重要特点是能满足对时间的限制 和要求。 在实时计算中,系统的正确性不仅依赖于计算 的逻辑结果,而依赖于结果产生的时间。 RTOS与通用计算机OS的区别 实时性 代码尺寸小 应用程序开发较难 需要专用的开发工具 RTOS的组成 实时操作系统需根据实际应用环境的要求,对内 核进行裁减和重配置。根据其面向实际应用领域的 不同,实时操作系统组成也有所不同,一般包括以 下几个重要部分: 实时内核 网络组件 文件系统 图形用户界面 RTOS的特点 支持异步事件的响应 中断和调度任务的优先级机制 支持抢占式调度 确定的任务切换时间和中断延迟时间 支持同步 1.4 前/后台系统 前/后台系统是嵌入式实时系统的主要形式,用于不复杂的小系统设计上。 前/后台行为 应用程序是一个无限循环,循环中调用相应的函数完成相应的操作,这部分可看成后台行为(background)。 中断服务程序处理异步事件,这部分可看成前台行为(foreground)。 说明 时间相关性很强的关键操作(critical operation)一定是靠中断服务来保证的。因为中断服务提供的信息一直要等到后台程序运行到该处理这个信息时,才能得到处理。 该系统在处理信息的及时性上,比实际做的要差。处理信息的及时性称做任务级响应时间。最坏情况下,任务级响应时间取决于整个循环的的执行时间。(循环执行时间不是常数) 1.5 代码的临界段 代码的临界段也称为临界区,指处理时不可分割的代码。一旦这部分代码开始执行,则不允许任何中断打入。 为确保临界段代码的执行不被中断,在进入临界段之前要关中断,而临界段代码执行完以后要立即开中断(在任务切换时,地址、指令、数据等寄存器堆栈保护)。 1.6 多任务 任务 一个任务,也称作一个线程,是一个简单的程序。每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间 。 每个任务都是一个无限的循环。每个任务都在 以下5种状态之一: 休眠态 休眠态相当于该任务驻留在内存中,但并不被多任务内核所调用。 就绪态 就绪态意味着该任务已经准备好,可以运行,但由于该任务的优先级比正在运行的任务的优先级低,还暂时不能运行。 挂起态(等待某一事件发生) 挂起状态也可以叫做等待事件态WAITING,指该任务在等待,等待某一事件的发生。 被中断态 发生中断时,CPU提供相应的中断服务,原来正在运行的任务暂不运行,进入中断处理。 多任务 多任务运行的实现实际上是靠CPU(中央处理单元)在许多任务之间转换、调度。CPU只有一个,轮番服务于一系列任务中的某一个。 多任务运行使CPU的利用率得到最大的发挥,并使应用程序模块化。在实时应用中,多任务化的最大特点是,开发人员可以将很复杂的应用程序层次化。 使用多任务,应用程序将更容易设计与维护。 任务切换(Context Switch) 当多任务内核决定运行另外的任务时,它保存正在运行任务的当前状态(即CPU寄存器中的全部内容)到任务的当前状况保存区(即任务自己的栈区之中)。入栈完成后,把下一个将要运行的任务的当前状况从该任务的栈中重新装入CPU的寄存器,并开始下一个任务的运行,这个过程叫做任务切换。 任务切换过程增加了应用程序的额外负荷。 任务切换所需要的时间取

文档评论(0)

seunk + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档