打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
5分钟搞清楚实时操作系统与非实时操作系统的区别

导语

谈到实时操作系统,大家一定会提起VxWorks

在物联网开发过程中,经常会听到有人谈起实时操作系统,比如VxWorks,uC-OS II, RTLinux等等,那究竟什么才算是实时操作系统?我们平时用的操作系统,比如Windows,Linux,是否算是实时操作系统呢?看完这篇文章,相信大家就明白了。

什么是实时操作系统

实时系统指系统的计算正确性不仅取决于计算的逻辑正确性,还取决于产生结果的时间。如果未满足系统的时间约束,则认为系统失效。

——Donal Gillies 在 Realtime Computing FAQ 中提出的定义。

大家普遍的一种意识是实时性意味着速度快,实际上实时性与任务执行的速度快并不是一回事,实时性的真正含义是指任务的(最迟)完成时间(Deadline)是可确定预知的。

操作系统面对的负载通常是变化的,有时任务少,有时任务重,实时操作系统要求无论负载多少,都必须保证满足时间要求。

所以实时操作系统追求的不是速度,而是任务执行时间的确定性。下面以Windows系统为例,说明实时性和速度不是一回事。

相信大家都有这样的经历,我们的Windows系统的电脑,配置有很高工作频率的强大CPU,显然在任务不多的时候,可以以非常快的处理速度执行任务。但是,当某些后台任务正在运行时,比如下载文件,或者是在杀毒,这时候前台的程序响应会变得非常漫长,甚至程序会失去响应。

并不是说Windows系统不够快或效率不够高,而是Windows系统不能提供确定性,所以,Windows不是一个实时操作系统。通常面向PC的操作系统都不是实时操作系统,比如Linux的桌面发行版、服务器版,以及Mac OS等。

实时操作系统有哪些

实时操作系统根据其实时性的刚性要求程度不同,分为硬实时(hard realtime)软实时(soft realtime)操作系统。

  • 硬实时系统指系统要在最坏情况(负载最重)下确保服务时间,即对于事件的响应时间的截止期限是无论如何都必须满足。

  • 软实时系统是从统计的角度,任何一个任务都能够有一个预期的处理时间,但任务一旦超过截止期限,也并不会带来致命的错误。

硬实时代表产品:VxWorks

好奇号火星探测车使用了VxWorks系统

对于一些涉及到人身安全或者非常重要的任务,必须使用硬实时操作系统,更多用于对实时性要求更高的工业制造领域。比如汽车安全气囊的控制,晚一秒钟打开可能就会丧生一条人命,这种场合必须使用硬实时系统。

WindRiver公司的VxWorks是硬实时操作系统的代表产品,以性能稳定而著称。美国 F-16、FA-18战斗机、B-2 隐形轰炸机和爱国者导弹上,甚至连1997年4月在火星表面登陆的火星探测器、2008年5月登陆的凤凰号,和2012年8月登陆的好奇号也都使用到了VxWorks。

VxWorks的缺点就是有点贵。但近年来各大厂商越来越强调成本,所以VxWorks不断被其他一些开源的实时操作系统取代。华为多年来一直在自己的网络设备中购买和使用VxWorks,也会逐渐采用替代的系统。

软实时代表产品:各种实时Linux

之前我们在《纵论物联网(六):基于Linux的物联网操作系统》介绍了很多Linux物联网系统,其中有不少是在Linux基础上做了实时性的改进,比如RTLinux等,这些系统都算是软实时产品。

对于IPTV数字电视机顶盒,需要实时的解码视频流,所以需要使用实时操作系统。但即使丢失了几个视频帧,在短时间内视频可能会有一些不流畅,但马上就会恢复,不会造成什么严重的后果。这种消费类电子产品,适合使用软实时操作系统。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
一文告诉你什么是实时操作系统?就连Windows也不是实时操作系统
嵌入式操作系统简介以及发展史
嵌入式操作系统选型分析
嵌入式之硬件系统&操作系统简介
常见操作系统概述总结
什么是真正的实时操作系统
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服