在探究操作系统的基础知识时,我们经常遇到一些行业专用词汇,比如“时间片”、“抢占式”、“实时性”等等。对许多学习完这些概念的人来说,包括那些已经从事操作系统开发的程序员,这些术语仍然可能显得有点模糊不清。这主要是因为他们对操作系统的某些核心原则理解不够透彻。
这篇文章的目的,一方面是回答之前一些朋友提出的相关疑问,另一方面也是为了向新手传授一些基础知识。基于我个人的经验和网络上的相关信息,我将对实时操作系统(RTOS)和时间片操作系统(TSOS)的不同进行一番简单说明。
实时操作系统(RTOS是什么?)
实时操作系统,即RTOS(Real Time Operating System),很可能99%的读者已经有所了解或至少听说过这个缩写。
在操作系统的广泛领域中,不深入讨论其全部方面,本文更多关注于“实时”这一核心特性。实时操作系统是那种在外部事件或数据发生后,能够迅速接收并处理这些信息,并能够在设定时间内控制生产流程或迅速对处理系统做出反应的操作系统。它还要确保所有实时任务能够协同工作,运行地协调一致。
以一个实际生活中的例子来说明:想象一下一台机器人正在移动,忽然有人跑到了它面前并和它相撞。在这种情况下,传感器系统会探测到这个碰撞,并需要立即控制机器人的电机来刹车。如果机器人没有迅速刹车,后果可能会非常严重。
因此,实时操作系统的主要特点是快速反应和高度可靠。通过这些特质,RTOS确保了在关键时刻系统的即时性和稳定性。
RTOS具备的特征:
1)多任务;
2)有线程优先级;
3)多种中断级别;
我们很多朋友学习的FreeRTOS、uCOS、RT-Thread···等都是属于RTOS。
正在学习RTOS的朋友,推荐给大家一个开源的RTOS网址:https://www.osrtos.com(公号不支持外链接)
什么是TSOS?
TSOS:英文为Time Sharing Operating System,即分时操作系统。分时操作系统其实就是将系统处理机时间和内存空间按照一定的时间间隔(也就是我们所说的时间片)轮流地切换给各线程的程序使用。
时间片 :是把计算机的系统资源(尤其是 CPU时间)进行时间上的分割,每个时间段称为一个时间片,每个用户依次轮流使用时间片。
分时技术:把处理机的运行时间分为很短的时间片,按时间片轮流把处理机分给各联机作业使用。
TSOS具备的特征:
交互性:用户与系统进行人机对话。
多路性:多用户同时在各自终端上使用同一CPU。
独立性:用户可彼此独立操作,互不干扰,互不混淆。
及时性:用户在短时间内可得到系统的及时回答。
影响响应时间的因素:终端数目多少、时间片的大小、信息交换量、信息交换速度。
大家熟悉的Windows、Linux、Unix···等就属于TSOS分时操作系统。
总结:
RTOS和TSOS各有各的特点,RTOS一般用于相对低俗的MCU,比如运动控制类、按键输入等动作要求实时处理的系统。TSOS一般用于相对高速的CPU,如多用户的桌面系统、服务器等系统。
某些TSOS可以修改成RTOS,如UCOS就基linux修改而来的实时系统。一般正常运行的系统,我们用户直观上看起来其实差不多,但在多任务、复杂的情况下,用户就能直接体会到实时与非实时的差异。
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !