准确阐述实时操作系统的实现原理?以及与分时操作系统的特征差异?

发布于 2022-04-12  12 次阅读


分时操作系统:将系统处理机时间和内存空间按照一定的时间间隔,轮流地切换给各终端用户的程序使用。

  • 特征:交互性、多路性、独立性、及时性。

实时操作系统:在一定时间限制内完成特定功能,并控制所有实时任务协调一致工作的操作系统,提供及时响应并具备高可靠性。

  • 分为两种,硬实时(规定时间内完成操作),软实时(按照任务优先级完成操作)。
  • 特征:多任务、有线程优先级、多种中断级别。

实时性和优先级反转
实时性和相关的优先级反转问题,
在实时领域,是个很关键的问题

首先说多任务,
任务就是让一段“流程”,一般都是一遍又一遍的循环运行(死循环)。
一次“流程”运行一遍之后,常常会等待一段时间,
自己休息休息,也让其他任务也运行一下,
这就是多任务并行。
(大家都有房子住,这才是和谐社会嘛。)

在多任务的系统之中,实时性,就是让当前最高优先级的任务优先运行;
若当前最高优先级的任务不是当前正在运行的任务,那么就要给一个时机(时钟中断),
让高优先级的任务运行,正在运行的(低优先级)任务等下再运行。
这就是实时系统中的抢占调度。

实时操作系统的本质就是,
让当前最高优先级的任务以最快的速度运行!
(如果有同优先级的任务,则大家轮流运行)

从实时性上讲,若高优先级在等待一个某个资源,
那么为了保证高优先级任务能顺利运行,
则必须要让当前占用该资源的任务赶紧运行下去,或者把资源释放。
再让高优先级的任务来占用这个资源。