开发中用到的RTOS和TSOS有什么区别?

2019-07-12 18:49发布

640?wx_fmt=jpeg
学习操作系统原理时,会看到“时间片、“抢占式”、“实时性”等一些专业词语,可能很多人学习之后,甚至都参加了操作系统相关开发工作的攻城狮,都还不明白这些词的意思。归根到底,还是没有明白操作系统一些基本的原理。

写本篇文章一来解决之前某些朋友问过类似问题,二来向某些初学者普及一下知识。下面我结合自己经验以及网上一些相关内容,简述一下关于RTOS和TSOS是区别。

什么是RTOS?RTOS:英文为Real Time Operating System,即实时操作系统,相信这里99%的朋友都知道,或听说过RTOS这个缩写。
实时操作系统,关于操作系统,本文部讲述,重点讲述实时】。RTOS是指当外界事件数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。
举一个例子:机器人在运动过程中,突然,面前跑来一个人,撞上了。此时,系统(传感器)检测到撞上人就需要立刻控制机器人(电机)刹车。试想一下,如果不立刻刹车,岂不是要酿成更加严重的后果。
所以说,RTOS提供及时响应高可靠性是它的主要特点。
RTOS具备的特征1)多任务;2)有线程优先级;3)多种中断级别;
我们很多朋友学习的FreeRTOS、uCOS、RT-Thread···等都是属于RTOS。
正在学习RTOS的朋友,推荐给大家一个开源的RTOS网址:https://www.osrtos.com(公号不支持外链接)640?wx_fmt=png
什么是TSOS?TSOS:英文为Time Sharing Operating System,即分时操作系统。分时操作系统其实就是将系统处理机时间和内存空间按照一定的时间间隔(也就是我们所说的时间片)轮流地切换给各线程的程序使用。
时间片 :是把计算机的系统资源(尤其是 CPU时间)进行时间上的分割,每个时间段称为一个时间片,每个用户依次轮流使用时间片。 
分时技术:把处理机的运行时间分为很短的时间片,按时间片轮流把处理机分给各联机作业使用。
TSOS具备的特征: 交互性:用户与系统进行人机对话。 多路性:多用户同时在各自终端上使用同一CPU。 独立性:用户可彼此独立操作,互不干扰,互不混淆。 及时性:用户在短时间内可得到系统的及时回答。 影响响应时间的因素:终端数目多少、时间片的大小、信息交换量、信息交换速度。
大家熟悉的Windows、Linux、Unix···等就属于TSOS分时操作系统。
总结RTOS和TSOS各有各的特点,RTOS一般用于相对低俗的MCU,比如运动控制类、按键输入等动作要求实时处理的系统。TSOS一般用于相对高速的CPU,如多用户的桌面系统、服务器等系统。
某些TSOS可以修改成RTOS,如UCOS就基linux修改而来的实时系统。一般正常运行的系统,我们用户直观上看起来其实差不多,但在多任务、复杂的情况下,用户就能直接体会到实时与非实时的差异。
更多的相关的内容,请自行百度、谷歌。640?
1.3天,你就可以更好地驾驭嵌入式系统!(内有嵌友专属福利)
2.没有高端芯片的俄罗斯照样造出一流武器,是否给我们一些启示?3.这么多开源RTOS,怎么知道哪个适合我的项目?4.工程师聊AI芯片—谈算法不谈智能,谈实现不谈芯片!5.如何从一个小白到硬件开发高手,学习步骤是什么?
6.从Cortex-M到Cortex-A认识ARM处理器!640?wx_fmt=gif本文来自个人微信公众号「ID:strongerHuang」,经原作者授权发布。原文公众号由嵌入式工程师「strongerHuang」在精心整理并维护。专注分享的内容包含:Keil、IAR、STM8、STM32、μC/OS、FreeRTOS、CANOpen、ModBus...