• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

RTOS和其他操作系统有什么不同

Chauncey 2018-04-08 浏览量:1925
都是操作系统,那RTOS操作系统和PC上的windows,linux有什么不同??
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 嵌入式实时系统中采用的操作系统我们称为嵌入式实时操作系统,它既是嵌入式操作系统,又是实时操作系统。作为一种嵌入式操作系统,它具有嵌入式软件共有的可裁剪、低资源占用、低功耗等特点;而作为一种实时操作系统(本文对实时操作系统特性的讨论仅限于强实时操作系统,下面提到的实时操作系统也均指强实时操作系统),它与通用操作系统(如Windows、Unix、Linux等)相比有很大的差别,下面我们将通过比较这两种操作系统之间的差别来逐步描述实时操作系统的主要特点。 

    我们在日常工作学习环境中接触最多的是通用操作系统,通用操作系统是由分时操作系统发展而来,大部分都支持多用户和多进程,负责管理众多的进程并为它们分配系统资源。分时操作系统的基本设计原则是:尽量缩短系统的平均响应时间并提高系统的吞吐率,在单位时间内为尽可能多的用户请求提供服务。由此可以看出,分时操作系统注重平均表现性能,不注重个体表现性能。如对于整个系统来说,注重所有任务的平均响应时间而不关心单个任务的响应时间,对于某个单个任务来说,注重每次执行的平均响应时间而不关心某次特定执行的响应时间。通用操作系统中采用的很多策略和技巧都体现出了这种设计原则,如虚存管理机制中由于采用了LRU等页替换算法,使得大部分的访存需求能够快速地通过物理内存完成,只有很小一部分的访存需求需要通过调页完成,但从总体上来看,平均访存时间与不采用虚存技术相比没有很大的提高,同时又获得了虚空间可以远大于物理内存容量等好处,因此虚存技术在通用操作系统中得到了十分广泛的应用。类似的例子还有很多,如Unix文件系统中文件存放位置的间接索引查询机制等,甚至硬件设计中的Cache技术以及CPU的动态分支预测技术等也都体现出了这种设计原则。由此可见,这种注重平均表现,即统计型表现特性的设计原则的影响是十分深远的。 

    而对于实时操作系统,前面我们已经提到,它除了要满足应用的功能需求以外,更重要的是还要满足应用提出的实时性要求,而组成一个应用的众多实时任务对于实时性的要求是各不相同的,此外实时任务之间可能还会有一些复杂的关联和同步关系,如执行顺序限制、共享资源的互斥访问要求等,这就为系统实时性的保证带来了很大的困难。因此,实时操作系统所遵循的最重要的设计原则是:采用各种算法和策略,始终保证系统行为的可预测性(predictability)。可预测性是指在系统运行的任何时刻,在任何情况下,实时操作系统的资源调配策略都能为争夺资源(包括CPU、内存、网络带宽等)的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。与通用操作系统不同,实时操作系统注重的不是系统的平均表现,而是要求每个实时任务在最坏情况下都要满足其实时性要求,也就是说,实时操作系统注重的是个体表现,更准确地讲是个体最坏情况表现。举例来说,如果实时操作系统采用标准的虚存技术,则一个实时任务执行的最坏情况是每次访存都需要调页,如此累计起来的该任务在最坏情况下的运行时间是不可预测的,因此该任务的实时性无法得到保证。从而可以看出在通用操作系统中广泛采用的虚存技术在实时操作系统中不宜直接采用。 

    由于实时操作系统与通用操作系统的基本设计原则差别很大,因此在很多资源调度策略的选择上以及操作系统实现的方法上两者都具有较大的差异,这些差异主要体现在以下几点: 

    (1) 任务调度策略:

    (2) 内存管理:

    (3) 中断处理:

    (4) 共享资源的互斥访问:

    (5) 系统调用以及系统内部操作的时间开销:
     
    (6) 系统的可重入性:

    (7) 辅助工具:

    此外,实时操作系统对系统硬件设计也提出了一些要求,其中一些要求为: 

    (1) DMA 
    DMA是一种数据交换协议,主要作用是在无需CPU参与的情况下将数据在内存与其它外部设备间进行交换。DMA最常用的一种实现方式被称为周期窃取(Cycle Stealing)方式,即首先通过总线仲裁协议与CPU竞争总线控制权,在获得控制权后再根据用户预设的操作指令进行数据交换。由于这种周期窃取方式会给用户任务带来不可预测的额外阻塞开销,所以实时操作系统往往要求系统设计时不采用DMA或采取一些可预测性更好的DMA实现方式,如Time-slice method等。 

    (2) Cache 
    Cache的主要作用是采用容量相对较小的快速存储部件来弥补高性能CPU与相对来说性能较低的存储器之间的性能差异,由于它可以使系统的平均表现性能得到大幅提高,因此在硬件设计中得到了极为广泛的应用。 

    但实时操作系统注重的不是平均表现性能,而是个体最坏情况表现,因此在对系统进行实时性验证时必须考虑实时任务运行的最坏情况,即每次访存都没有命中Cache情况下的运行时间,所以在利用辅助工具估算实时任务在最坏情况下的执行时间时,应将系统中所有的Cache功能暂时关闭,在系统实际运行时再将Cache功能激活。除此以外,另一种较极端的做法则是在硬件设计中完全不采用Cache技术。
    • 发布于 2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了 :对插端:1510132014 回复

其他答案 数量:10
  • windows系统是gui的可视操作系统,RTOS是系统的基础中的基础,不知道我这样理解对不对
    • 发布于2018-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • rots就是real time OS,实时操作系统。追求的目标是对事件相应速度快,这就是最大的区别,通常的实时操作系统体量都不大,结构简单也是它实现高速响应的最基本手段。
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :没有国产替代,都是国外厂牌的 回复

  • RTOS注重实时性。windows,linux  是非实时性的。RTOS只具有系统的一些基本功能,任务调度等。文件系统一般需要 自行 移植。
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :对插端:522660211 回复

  • 嵌入式实时操作系统英文为EmbedReal Time OperatingSystem,简称RTOS。与PC机上的通用的操作系统Windows或是Linux相比,RTOS精简,实时性强。不同的RTOS根据性能特点适应于航天航空、生物医学、工业控制、消费电子等行业。

        RTOS是一种架构。历史以来,任何一个阶段都有一定的软件架构在主宰软件行业。最开始的架构是前后台的超循环模式。While(1)大循环是后台,中断异步处理是前台。这种结构直至现在也很多公司使用,适合简单的、资源不多的单片机做一些简单的控制处理。但是如果需要处理多个的任务,这种超循环模式将变得难以控制,而且实时性也变的十分差,一个任务卡住了,下个任务执行时间难以预测,任何优秀的产品都是离不开现实需求,于是RTOS孕育而生。

        RTOS以多任务,实时性强,提供多种服务为软件工程师解决了超循环问题。对于RTOS,一个任务的卡死,并不影响另一个任务的运行。RTOS每个任务都有机会占有cpu全部的资源(单核情况),使用RTOS的用户只需要关心怎样去规划任务,包括任务的优先级、时间片,以及任务之间的同步、通讯就可以。

    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :同一产品,分销商的命名方式不一致 回复

  • RTOS是实时操作系统,其实时性比较高,主要应用于单片机这样的小型芯片组。
    而PC的系统,不是实时的系统,从硬件的组成到机制架构都是不同的。
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :官网无不带3的型号,T3表示: Tape & Reel(3kpcs / reel) 包装 回复

  • RTOS是MCU使用的实时系统 适合控制简单任务
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :经过查询没有符合替代型号。 回复

  • RTOS实时性高,其他的桌面系统都不是实时的。系统之间的架构和对硬件的需求也不一样。RTOS非常小型化,能够在单片机上运行。
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :客户需求的pin数。 回复

  • 找一个嵌入式实时操作系统学习下就晓得了, 诸如freertos ,threadx ,ucos等
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :触点间距不同 AZSR131-1AE-24D 是标准品 回复

  • RTOS注重的是实时性,相对来说比较简单,而linux这类的是更大的内核,注重的是综合应用
    • 发布于2018-04-08
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :B32529C0104J189,厂牌:TDK,请参考 回复

  • RTOS主要是强调实时性,其它的操作系统大多都是非实时的,对中断事件的处理不如RTOS快速。

    • 发布于2018-04-30
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

RTOS和其他操作系统有什么不同