0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

linux是实时系统还是分时操作系统

STM32嵌入式开发 来源:STM32嵌入式开发 2024-11-11 11:43 次阅读

大家平时玩单片机基本上对于µC/OS、FreeRTOS、ThreadX这些操作系统非常熟悉了,他们都属于实时操作系统(RTOS),在工业领域比较广泛;然而对于linux这样的基于时间片划分的非实时系统就难以满足实时性需求,但是目前linux社区已经增加了较多版本的实时性补丁,给linux内核打上实时补丁后其实时性会得到大幅度提升,那么我们一起来看看两者的区别。

如下分享一下:“linux是实时系统还是分时操作系统”

1 实时操作系统-RTOS

RTOS,英文全称Real Time Operating System,即实时操作系统。

1.1 实时操作系统定义

实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。

因而,提供及时响应和高可靠性是其主要特点。

实时操作系统有硬实时和软实时之分,硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的。

软实时则只要按照任务的优先级,尽可能快地完成操作即可。我们通常使用的操作系统在经过一定改变之后就可以变成实时操作系统。

实时操作系统是保证在一定时间限制内完成特定功能的操作系统。例如,可以为确保生产线上的机器人能获取某个物体而设计一个操作系统。在“硬”实时操作系统中,如果不能在允许时间内完成使物体可达的计算,操作系统将因错误结束。

在“软”实时操作系统中,生产线仍然能继续工作,但产品的输出会因产品不能在允许时间内到达而减慢,这使机器人有短暂的不生产现象。一些实时操作系统是为特定的应用设计的,另一些是通用的。

一些通用目的的操作系统称自己为实时操作系统。但某种程度上,大部分通用目的的操作系统,如微软的Windows NT或IBM的OS/390有实时系统的特征。这就是说,即使一个操作系统不是严格的实时系统,它们也能解决一部分实时应用问题。

1.2 实时操作系统的特征

1)多任务;

2)有线程优先级

3)多种中断级别

小的嵌入式操作系统经常需要实时操作系统,内核要满足实时操作系统的要求。

1.3 实时操作系统的相关概念

(1)基本概念

代码临界段:指处理时不可分割的代码。一旦这部分代码开始执行则不允许中断打入;

资源:任何为任务所占用的实体;

共享资源:可以被一个以上任务使用的资源;

任务:也称作一个线程,是一个简单的程序。每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。典型地,每个任务都是一个无限的循环,每个任务都处在以下五个状态下:休眠态,就绪态,运行态,挂起态,被中断态;

任务切换:将正在运行任务的当前状态(CPU寄存器中的全部内容)保存在任务自己的栈区,然后把下一个将要运行的任务的当前状态从该任务的栈中重新装入CPU的寄存器,并开始下一个任务的运行;

内核:负责管理各个任务,为每个任务分配CPU时间,并负责任务之间通讯。分为不可剥夺型内核于可剥夺型内核;

调度:内核的主要职责之一,决定轮到哪个任务运行。一般基于优先级调度法;

(2)关于优先级的问题

任务优先级:分为优先级不可改变的静态优先级和优先级可改变的动态优先级;

优先级反转:优先级反转问题是实时系统中出现最多的问题。共享资源的分配可导致优先级低的任务先运行,优先级高的任务后运行。解决的办法是使用“优先级继承”算法来临时改变任务优先级,以遏制优先级反转。

(3)互斥

虽然共享数据区简化了任务之间的信息交换,但是必须保证每个任务在处理共享共享数据时的排他性。使之满足互斥条件的一般方法有:关中断,使用测试并置位指令(TAS),禁止做任务切换,利用信号量。

因为采用实时操作系统的意义就在于能够及时处理各种突发的事件,即处理各种中断,因而衡量嵌入式实时操作系统的最主要、最具有代表性的性能指标参数无疑应该是中断响应时间了。中断响应时间通常被定义为:

中断响应时间=中断延迟时间+保存CPU状态的时间+该内核的ISR进入函数的执行时间。

中断延迟时间=MAX(关中断的最长时间,最长指令时间) + 开始执行ISR的第一条指令的时间。

2 分时操作系统-TSOS

TSOS,英文全称Time-sharing Operating System,即分时操作系统。

使一台计算机同时为几个、几十个甚至几百个用户服务的一种操作系统叫分时操作系统。把计算机与许多终端用户连接起来,分时操作系统将系统处理机时间与内存空间按一定的时间间隔,轮流地切换给各终端用户的程序使用。

由于时间间隔很短,每个用户的感觉就像他独占计算机一样。分时操作系统的特点是可有效增加资源的使用率。例如UNIX系统就采用剥夺式动态优先的CPU调度,有力地支持分时操作。

产生分时系统是为了满足用户需求所形成的一种新型 OS 。它与多道批处理系统之间,有着截然不同的性能差别。用户的需求具体表现在以下几个方面: 人—机交互 共享主机 便于用户上机

2.1 分时系统的基本思想

时间片:是把计算机的系统资源(尤其是 CPU时间)进行时间上的分割,每个时间段称为一个时间片,每个用户依次轮流使用时间片。

分时技术:把处理机的运行时间分为很短的时间片,按时间片轮流把处理机分给各联机作业使用。

分时操作系统:是一种联机的多用户交互式的操作系统。一般采用时间片轮转的方式使一台计算机为多个终端服务。对每个用户能保证足够快的响应时间,并提供交互会话能力。

设计目标:对用户的请求及时响应,并在可能条件下尽量提高系统资源的利用率。

适合办公自动化、教学及事务处理等要求人机会话的场合。

2.2 工作方式

一台主机连接了若干个终端;每个终端有一个用户在使用;交互式地向系统提出命令请求;系统接受每个用户的命令;采用时间片轮转方式处理服务请求;并通过交互方式在终端上向用户显示结果;用户根据上步结果发出下道命令

分时系统实现中的关键问题:及时接收。及时处理。

2.3 特征

交互性:用户与系统进行人机对话。

多路性:多用户同时在各自终端上使用同一CPU。

独立性:用户可彼此独立操作,互不干扰,互不混淆。

及时性:用户在短时间内可得到系统的及时回答。

影响响应时间的因素:终端数目多少、时间片的大小、信息交换量、信息交换速度。

3 两者区别

RTOS和TSOS各有各的特点,RTOS一般用于相对低速的MCU,比如运动控制类、按键输入等动作要求实时处理的系统,一般要求ms级,甚至us级响应。 分时:现在流行的PC,服务器都是采用这种运行模式,即把CPU的运行分成若干时间片分别处理不同的运算请求。 实时:一般用于单片机上,比如电梯的上下控制中,对于按键等动作要求进行实时处理。

4 最后

通过以上分析,可以明确linux是分时系统,不过可以改成实时的如:ucLinux就是linux修改而来的实时系统,至于他们的区别,可以引用百度中的类似回答: 分时系统是一个系统可以同时为两个或两个以上的账户服务! 实时系统是能立即对指令做出反应的操作系统!微软的常见系统不能吧!而且还死机!战斗机中的操作系统就是实时的系统,想想如果别人打仗时战斗机中的电脑反应的是飞行员上一条指令或死机了,谁还敢开这架飞机呢?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11216

    浏览量

    208761
  • 操作系统
    +关注

    关注

    37

    文章

    6703

    浏览量

    123153
  • 实时系统
    +关注

    关注

    0

    文章

    38

    浏览量

    14449

原文标题:Linux是实时操作系统吗?

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    国产实时操作系统:和RT-Linux,Zephyr的实时性对比

    基于RT-Thread内核,并具备POSIX用户态运行环境的高性能实时操作系统。它类似Linux、Windows的架构,具备用户态和内核态(并相分离),用户态具备全地址空
    的头像 发表于 11-12 01:07 153次阅读
    国产<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>:和RT-<b class='flag-5'>Linux</b>,Zephyr的<b class='flag-5'>实时</b>性对比

    linux操作系统安装步骤 linux操作系统的特点及组成

    Linux操作系统安装步骤 Linux操作系统是一种开源的操作系统,它以其稳定性、安全性和灵活性而闻名。以下是安装
    的头像 发表于 10-21 11:24 421次阅读

    简单认识RTOS实时操作系统

    RTOS(Real Time Operating System,实时操作系统)是一种专门设计用于在严格时间限制内处理任务的操作系统。它以其高实时性、多任务处理能力和资源管理能力在工业自
    的头像 发表于 08-20 11:20 2147次阅读

    嵌入式实时操作系统:Intewell操作系统与VxWorks操作系统有啥区别

    Intewell操作系统和VxWorks操作系统都是工业领域常用的操作系统,它们各有特点和优势。以下是它们之间的一些主要区别:
    的头像 发表于 07-08 14:16 347次阅读
    嵌入式<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>:Intewell<b class='flag-5'>操作系统</b>与VxWorks<b class='flag-5'>操作系统</b>有啥区别

    工业实时操作系统对比:鸿道Intewell跟rt-linux有啥区别

    Intewell和RT-Linux是两种不同的实时操作系统(RTOS),它们具有各自独特的特点和优势。以下是Intewell操作系统的一些关键特性,以及与RT-
    的头像 发表于 07-03 10:00 441次阅读
    工业<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>对比:鸿道Intewell跟rt-<b class='flag-5'>linux</b>有啥区别

    AURIX3G可以使用Linux操作系统吗?

    即使在 AURIX3G 中,也可以使用 Linux 操作系统吗?
    发表于 05-22 07:12

    请问STM32上有跑RTOS实时操作系统的吗?

    亲们最近在鼓捣实时操作系统,有什么好的经验请不吝赐教,嘿嘿。 我在摸索uT/OS。社区有在STM32几款芯片上的移植。
    发表于 05-16 07:16

    微内核实时操作系统的介绍

    微内核实时操作系统(Microkernel Real-Time Operating System, μRTOS)是一种专为实时设计的操作系统。它采用微内核架构,以提高
    的头像 发表于 05-11 17:13 459次阅读

    带你认识实时操作系统(rtos)

    实时操作系统(RTOS)是为嵌入式系统实时应用提供一个稳定、可预测和高效运行环境的操作系统实时
    的头像 发表于 04-16 16:30 1113次阅读
    带你认识<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>(rtos)

    再谈嵌入式实时操作系统

    程序的可移植性得到了增强,系统开发的工作量减轻的同时也提高了开发效率。对实时性和可靠性日益增长的要求正在塑造某些现代领域的嵌入式实时操作系统的发展方向,例如航空航天、工业控制、汽车电子
    的头像 发表于 04-09 17:27 720次阅读
    再谈嵌入式<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>

    Linux操作系统上的射频测试模式应用指南

    电子发烧友网站提供《Linux操作系统上的射频测试模式应用指南.pdf》资料免费下载
    发表于 02-19 09:39 0次下载
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系统</b>上的射频测试模式应用指南

    Linux操作系统中如何按下PCIe的复位键

    Linux操作系统中,看如何按下PCIe的复位键
    的头像 发表于 01-20 09:31 1415次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系统</b>中如何按下PCIe的复位键

    详解实时操作系统和非实时操作系统

    实时操作系统,当外界事件和数据产生时,系统能以足够快的速度予以处理,其处理结果能在规定的时间内控制生产结果或对系统做出响应,并控制所有实时
    的头像 发表于 12-26 09:54 4404次阅读
    详解<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>和非<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>

    什么是实时操作系统(RTOS)

    实时操作系统(RTOS)是一种专为实时应用程序设计的操作系统实时应用程序需要在特定时间内做出预测的响应,因此 RTOS 专注于提供对时间约
    的头像 发表于 11-23 17:14 5507次阅读