- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4 种实时操作系统实时性的分析对比 The Comparison of Four Main Performance for RTOS
摘要: 本文分析了适用于测控领域的4种实时操作系统, 并对比了它们实时性能的重要指标, 归纳了实时性
设计和实现中的若干问题。
关键词: 实时操作系统;VxWorks;mC/OS-II;RT-Linux;QNX
引言
20世纪70年代以来嵌入式系统的硬件和软件技术的
飞速进步, 使得嵌入式应用得到了蓬勃发展, 在这些应用
中实时操作系统起着决定性的作用。
在复杂测控应用中,必须使用对实时性要求非常高
的实时操作系统。例如在工业控制、交通管理、机器人
航空航天、 武器装备等领域, 系统事件的响应如果不能准
时或超时, 就可能导致巨大的损失和灾难。 因而, 选择操
作系统时, 对实时性的仔细考虑至关重要。 本文从实时性
的角度细致的分析对比了适用于此类有苛刻实时性要求
的4种操作系统——VxWorks、mC/OS-II、RT-Linux、
NX,为系统选型提供一定参考。
实时性能主要实现技术
实时操作系统的实时性是第一要求,需要调度一切
可利用的资源完成实时任务。 根据响应时间在微秒、 毫秒
和秒级的不同, 可分为强实时、 准实时和弱实时三种。 强
实时系统必须是对即时的事件作出反应,绝对不能错过
事件处理时限。例如测控领域就是要求强或接近强实时
系统。在机顶盒、PDA、信息家电等应用领域,系统负荷
较重的时候,允许发生错过时限的情况而且不会造成太
大的危害, 准和弱实时系统就可满足应用。 一个强实时的
操作系统通常使用以下技术 :
● 占先式内核
当系统时间响应很重要时,要使用占先式内核。当
高优先级的任务一旦就绪,总能立即得到CPU的控
,而CPU的控制权是可知的。使用占先式内核使得
级响应时间得以最优化。
● 调度策略分析
任务调度策略是直接影响实时性能的因素。强实时
和准实时系统的实现区别主要在选择调度算法上。
基于优先级调度的算法足以满足准实时系统的要求,
可以提供高速的响应和大的系统吞吐率。当两个或
以上任务有同样优先级,通常用时间片轮转法进行
。 对硬实时系统而言, 需要使用的算法就应该是调度
简单, 反应速度快的实时调度算法了。 尽管调度算法
多样,但大多由单一比率调度算法(RMS)和最早期
先算法(EDF)变化而来。 前者主要用于静态周期任务
系统所使用技术的异同
IC与元器件
的调度, 后者主要用于动态调度, 在不同的系统状态下两
种算法各有优劣。在商业产品中采用的实际策略常常是
各种因素的折中。
● 任务优先级分配
每个任务都有其优先级。任务越重要,赋予的优先
级应越高。 应用程序执行过程中诸任务优先级不变, 则称
之为静态优先级。 在静态优先级系统中, 诸任务以及它们
的时间约束在程序编译时是已知的。 反之, 应用程序执行
过程中, 任务的优先级是可变的, 则称之为动态优先级。
● 时间的可确定性
强实时操作系统的函数调用与服务的执行时间应具
有可确定性。系统服务的执行时间不依赖于应用程序任
务的多少。 系统完成某个确定任务的时间是可预测的。
实时性能重要指标
衡量实时操作系统实时性能的重要指标有 :
● 任务切换时间
当多任务内核决定运行另外的任务时,它把正在运
行任务的当前状态(即CPU寄存器中的全部内容)保存到
任务自己的栈区之中。然后把下一个将要运行的任务的
当前状态从该任务的栈中重新装入CPU的寄存器,并开
始下一个任务的运行。 这个过程就称为任务切换。 做任务
切换所需要的时间取决于CPU 有多少寄存器要入栈。
CPU 的寄存器越多,额外负荷就越重。
● 中断响应时间(可屏蔽中断)
计算机接收到中断信号到操作系统作出响应,并完
成切换转入中断服务程序的时间。 对于占先式内核, 要先
调用一个特定的函数,该函数通知内核即将进行中断服
务, 使得内核可以跟踪中断的嵌套。 占先式内核的中断响
应时间由下式给出 :
中断响应时间=关中断的最长时间
+保护CPU内部寄存器的时间
+进入中断服务函数的执行时间
+开始执行中断服务例程(ISR)的第
一条指令时间
中断响应时间是系统在最坏情况下响应中断的时间,
某系统100次中有99次在50ms之内响应中断, 只有一次
响应中断的时间是250 ms,只能认为中断响应时间是
250ms。
表2列出了部分体现实时性能重要指标的典型值, 它
们的测试平台和测试方法不完全相同,影响了数据的可
比性,但我们仍可作为参考。
另外, 还有系统响应时间(系统发出处理要求到系统
给出应答信号的时间)、 最长关中断时间、 非屏蔽中断响
应时间等辅助的衡量指标。
若干问题
虽然当今的实时操作系统已日臻完善,但仍有一
些问题存在并干扰着强实
文档评论(0)