实时操作系统[摘记]


这个名词很早就知道了,但是因为自己一直在做基于 Windows 的开发,所以并没有太去关注这个。过年时和表哥聊天才知道在硬件应用领域实时操作系统才是王道,因此在网上搜了一下相关的概念。

操作系统分为 “实时操作系统”(如,VxWorks) 和 “分时操作系统” (如,windows)。

大概说来,实时要求的是必须要有确保的响应时间,比如汽车的安全气囊,必须在传感器发出指令的一瞬间就打开,延迟打开就会造成严重的后果。

实时操作系统分非硬件实时和软件实时。

而区别实时和非实时的一大关键技术就是任务调度。

在网上搜了一圈,还是感觉维基的解释最容易理解。

即时操作系统Real-time operating system, RTOS),又称即时操作系统,它会按照排序运行、管理系统资源,并为开发应用程序提供一致的基础。

实时操作系统与一般的操作系统相比,最大的特色就是其“实时性”[1],也就是说,如果有一个任务需要执行,实时操作系统会马上(在较短时间内)执行该任务,不会有较长的延时。这种特性保证了各个任务的及时执行。

衡量一个实时操作系统坚固性的重要指标,是系统从接收一个任务,到完成该任务所需的时间,其时间的变化称为抖动。硬实时操作系统比软实时操作系统有更少的抖动。设计实时操作系统的首要目标不是高的吞吐量,而是保证任务在特定时间内完成。硬实时操作系统必须使任务在确定的时间内完成,而软实时操作系统能让绝大多数任务在确定时间内完成。[2]

实时操作系统与一般的操作系统有着不同的调度算法。普通的操作系统的调度器对于线程优先级等方面的处理更加灵活;而实时操作系统追求最小的中断延时线程切换延时[3]

通常都会有最基础的内核,以及外加上去的模块,像是文件系统、网络协议堆栈和应用、设备驱动程序等模块。

---维基百科<实时操作系统>


还有 CSDN 的一些帖子

Windows的内核是不可抢占的,所以它不是实时操作系统。Linux是软实时的,内核中仍然有大量不可抢占区域。
实时操作系统的设计目标在于对软硬件时间的相应,要求最小时限的响应。但是这种设计往往要牺牲系统的吞吐量。

---Bokutake

实时操作系统是抢占式操作系统,如果你的进程优先级高,则肯定第一个得到执行,直至结束执行,中间的时间通过CPU频率等可以推算出来。
Windows的内核是不可抢占的,所以它不是实时操作系统。Linux是软实时的,内核中仍然有大量不可抢占区域。


--sky101010ws


--《实时操作系统与非实时操作系统到底有什么区别?


文章索引

[隐 藏]

本站采用知识共享署名 3.0 中国大陆许可协议进行许可。 ©2014 Charley Box | 关于本站 | 浙ICP备13014059号