计算机操作系统诞生至今,已经出现了很多的操作系统,操作系统是计算机与人中间的缓冲部分,人是通过操作系统来编写程序控制机器。目前的操作系统大概可以分为以下几种类型
- 批处理操作系统;
- 分时操作系统;
- 实时操作系统;
- 网络操作系统;
苹果公司的MacOS操作系统属于分时操作系统,还有众所周知的微软windows系统也是属于分时操作系统。分时操作系统很难保证某些进程或者任务在特定的时间内完成,因而很多人因此开发了实时操作系统。实时系统中WinCE、VxWorks、μC/OS-Ⅱ等运用较广。Linux是作为通用操作系统开发的,其内核在中断处理上无法保证秩序,部分网络开发社区将其经过改造能在一定程度上成为实时操作系统。针对普通linux的实时改造方案包括xenomai,rtai等。具体参见下表
类型 | OS |
---|---|
代码开源 | • BeRTOS ChibiOS/RT Contiki eCos ERIKA Enterprise FreeRTOS Fuchsia FunkOS Mynewt Nano-RK NuttX RIOT RTAI RTEMS RTLinux RT-Thread seL4 TI-RTOS TRON Wombat OS Xenomai Zephyr |
版权 | • DioneOS embOS Integrity Junos OS LynxOS µC/OS-II MQX Nucleus RTOS OpenComRTOS OSE OS-9 OS2000 PikeOS QNX REAL/32 • REX OS ScreenOS ThreadX TPF VRTX VxWorks Windows Embedded Compact |
其他 | • Concurrent DOS DNIX DSOS EROS FlexOS MERT – UNIX-RT Multiuser DOS pSOS RMX RSX-11 RT-11 Sintran III Symbian THEOS UNOS |
实时操作系统是需要在特定的时间内完成特定的事情。按照实施原则可以分为以下三类
Hard Real Time | 在Hard RTOS中,非常严格地处理了最后期限,这意味着给定的任务必须在指定的计划时间开始执行,并且必须在指定的持续时间内完成;如 医疗重症监护系统,飞机系统 |
---|---|
Firm Real time | 这些类型的RTOS也需要遵守截止日期。但是,错过最后期限可能不会产生重大影响,但可能会导致不良影响,例如产品质量的大幅下降。如 各种类型的多媒体应用程序。 |
Soft Real Time | 软实时RTOS,由操作系统接受一些延迟。在这种类型的RTOS中,有为特定工作分配的截止中断,但是可以接受少量时间的延迟。 |
衡量一个实时操作系统的实时性能主要有以下三个指标
- 切换时间:切换时间越短,多线程并行的效果就越好。中断响应时间是
- 中断响应时间:指操作系统接收到中断信号后将CPU切换至执行中断服务程序所耗费的时间。
- 定时器精度:通常是为了满足定时触发类任务的需求
以Linux为例,其主要分为以下三个模块: Bootloader引导启动程序,内核层以及应用层。其中Bootloader是将原本由Loader引导加载程序和Boot引导程序两部分构成。计算机上电后,首先通过BIOS上电自检,这个过程BIOS会检测设备是否存在问题,如果没有问题的化,将根据BISO的启动项配置选择引导设备。目前BIOS支持的设备启动项包括软盘启动,U盘启动,硬盘启动以及网络启动。普通Linux的操作系统,