第四章 ucos操作系统概述【荐】.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 ucos操作系统概述【荐】.ppt

第四章 μC/OS-II操作系统概述 内容 4.1 μC/OS-II简介 4.2 μC/OS-II的特点 4.3 实时系统的概念 4.1 μC/OS-II简介 μC/OS-II来源于术语Micro-Controller Operating System (微控制器操作系统)。它通常也称为MUCOS或者UCOS。 μC/OS-II是Jean J.Labrosse在1990年前后编写的一个实时操作系统内核。 任务管理、任务调度、任务的同步与通信、时间管理、内存管理 未包括输入输出管理、文件管理、网络等服务,由用户提供 实时系统概念、多任务调度与管理、时间与内存管理 主要应用于高校教学 4.2 μC/OS-II的特点 公开的源代码: μC/OS-II的源代码共约5500行,由汇编语言和C语言编写。 使用者使用的是μC/OS-II的源程序而不是编译后的程序文件。 4.2 μC/OS-II的特点 可移植性: 可使用在多种处理器平台的特性。 可移植性的基础是编写操作系统的语言的可移植性。 汇编语言编写的与处理器特性相关的部分,必须经过修改。 ANSI C语言编写的部分通过不同的编译器编译链接后可直接使用。 4.2 μC/OS-II的特点 可固化: μC/OS-II通过编译、链接后可以下载并固化在嵌入式设备中的存储介质中。 可裁减: 可以根据应用的需求使用μC/OS-II所提供的不同的服务。 μC/OS-II通过条件编译实现裁减。 4.2 μC/OS-II的特点 可抢占性: μC/OS-II操作系统内核是完全可抢占性实时内核。 多任务: μC/OS-II可以管理最多64个任务,根据任务的优先级不同进行管理。 4.2 μC/OS-II的特点 可确定性: 函数调用和服务的执行时间是可以确定的。 用户可以知道μC/OS-II的绝大多数函数和服务的执行时间。 4.2 μC/OS-II的特点 任务栈: μC/OS-II允许每个任务都有单独的栈空间。 系统服务: μC/OS-II提供许多系统服务,比如信号量、互斥信号量、事件标志、消息邮箱、消息队列、时间管理等等 4.2 μC/OS-II的特点 中断管理: 中断可以使正在执行的任务暂时挂起。如果优先级更高的任务被该中断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套层数可以达255层 稳定性和可靠性: 比较可靠的嵌入式实时操作系统 4.2 μC/OS-II的特点 公开的源代码 可移植性、可固化、可裁减、可抢占性、多任务 可确定性、任务栈、系统服务、稳定性和可靠性 4.3 实时系统概念 4.3.1 系统级概念 4.3.2 代码相关的概念 4.3.3 任务及内核相关的概念 4.3.4 中断相关的概念 4.3.5 时钟节拍 4.3.6 对存储器的需求 4.3.7 使用实时内核的优缺点 4.3.1 系统级概念 软实时系统: 使各个任务运行得越快越好,并不要求限定某一任务的完成时间。 硬实时系统: 任务不仅要执行无误而且要准时完成。 4.3.1 系统级概念 前后台系统超循环系统 后台(任务级):应用程序是一个无限的循环,循环中调用相应的函数完成相应的操作。 前台(中断级):中断服务程序处理异步事件 4.3.2 代码相关的概念 代码的临界段 也称为临界区,指处理时不可分割的代码。 一旦这部分代码开始执行,不允许任何中断打断执行过程。 解决方法: 执行前关中断,执行后开中断。 4.3.2 代码相关的概念 可重入性 一个函数可以被多个任务调用,而不必担心数据的破坏。 int Temp; void swap(int *x, int *y) { Temp = *x; *x = *y; *y = Temp; } 4.3.2 代码相关的概念 4.3.2 代码相关的概念 使函数具有可重入性的方法 将Temp定义为局部变量 调用Swap()函数之前关中断,调用后开中断 用信号量禁止该函数在使用过程中被再次调用 4.3.3任务及内核相关的概念 任务与多任务 内核 调度 不可剥夺型内核 可剥夺型内核 任务优先级 互斥条件 信号量 死锁(或抱死) 同步 事件标志任务间的通讯 消息邮箱 消息队列 4.3.3 任务及内核相关的概念 任务 一个任务,也称作一个线程,是一个简单的程序,该程序可以认为CPU完全只属该程序自己。 每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。 4.3.3 任务及内核相关的概念 多任务 多任务运行的实现实际上是靠CPU(中央处理单元)在许多任务之间转换、调度。 CPU只有一个,轮番服务于一系列任务中的某一个。 多任务运行使CPU的利用率得到最大的发挥,并使应用程序模块化。 4.3.3 任务及内核相关的概念 任务与多任务 实时应

文档评论(0)

wulf + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档