RTOS实时操作系统,真的实时吗?

发布时间:2021-12-14 阅读量:698 来源: 微信公众号strongerHuang 发布人: 胖哥

我们都说RTOS(Real Time Operating System)实时操作系统,那么,到底啥是实时操作系统呢?它到底实时不实时呢?

这个问题,相信有很多初学的小伙伴都有这么疑问。

简述RTOS

RTOS:Real Time Operating System,即实时操作系统。 

来自百度百科的解释:

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

实时操作系统,体现的重点是实时(及时响应)。简单说就是程序能及时的解决、处理一些比较急的事情,而不会出现“卡机”等情况。 

比如:一个运动的小车,传感器检测到前方有障碍物,要立马减速、停车,而不是半天才反应过来(反应慢了就会撞上去)。

 与裸机相比

从裸机转RTOS的同学,就会拿裸机与RTOS相比较:

RTOS相比裸机有什么优点?

RTOS相比裸机更方便吗?

...... 

我可以肯定的说:RTOS相比裸机更方便,优点也更多。当然,前提是MCU资源(Flash、RAM)能满足需求。 

因为早期的MCU资源相对匮乏,比如Flash低于10K,RAM低于1K,这个时候用RTOS,优点就不明显,反而更容易暴露缺点。

但现在MCU资源相对比较多,动辄超过1M的Flash、 100K的RAM,这种情况下,如果跑裸机,我感觉太浪费MCU资源了。 

此处推荐阅读:从 裸机 到 RTOS 思维的转变裸机系统与多线程系统的区别在51单片机上跑RTOS有没有意义?

与分时操作系统相比

很多人会联想到分时操作系统(TSOS),RTOS和TSOS有什么区别?各自有什么特点? 

现在的处理器速度相对更快了,分时操作系统的实时能力也很高了。它们的区别其实可以从字面意思上理解,分时就是分为时间片,这个时间片很小,一般us级别甚至更低 

你了解一下TSOS分时操作系统的调度机制,你就会更加明白二者之间的区别了。 

这一节可以参看我的之前分享的文章:RTOS和TSOS有什么区别? 

RTOS真的实时吗?

回到今天的话题:RTOS真的实时吗?

严格来说,RTOS也不是实时响应并处理紧急的事情,只是在很短时间(一般ms级别)就做出了响应,给人感觉就是实时在响应。

单个CPU,在同一个时间只能处理一件事(只能执行一处程序),你创建了任务1、 任务2、 任务3......等多个任务,CPU在执行的时候都是轮流(按照优先级)执行。 

1.系统滴答

RTOS实时响应有一个重要的配置,那就是系统滴答(SysTick)。

比如FreeRTOSConfig.h

#define configTICK_RATE_HZ        ((TickType_t)1000) 

再比如μCOS系统的os_cfg.h

#define OS_TICKS_PER_SEC        1000u

系统滴答决定了你RTOS底层调度的时间大小,如果设置1000,那么1ms就会调度一次,也就说1ms会做出一次响应。

拿上面小车遇到障碍物为例:传感器检测到障碍物,通知更高优先级任务进行刹车,这个过程只需要1ms就会得到响应 

你肯定说:那我设置10000,是不是0.1ms就会做出响应?是不是系统滴答越大越好?

按理说系统滴答值越大响应越快,但系统调度也是需要占用时间:

1639471051182061.jpg 

调度的时间长度不变,如果N到N+1之间时间越短(滴答),留给执行任务的时间就越短。 

所以,滴答值也不是越大越好,需要一个合理的值,可以参看:实时操作系统的滴答Tick设置多少才合适? 

2.硬件中断

从裸机开发转RTOS的同学就有这样一个思维:我用中断就能做到实时响应。 

的确,中断能做到实时响应,但不能满足大部分需求。

拿上面小车刹车来说:比如检测到前方障碍物立刻做出中断响应,此刻执行减速的动作,这个动作假如是S曲线(减减速)刹车,执行时间为1s。 

如果你在中断函数里面执行这个1s刹车动作,CPU就不会做其他事情了,这样你觉得可以吗? 

硬件中断只能做出一个“紧急通知”,不能做出(耗时的)执行动作。

RTOS结合硬件中断就能完美解决这个问题,中断通知高优先级任务执行刹车减速的动作,但这个过程可能需要1ms。 

所以,你会发现RTOS并非真正的实时,只是这个时间很短,你感觉不出来。


相关资讯
AI引爆芯片扩产潮:2028年全球12英寸晶圆月产能将破1100万片

国际半导体产业协会(SEMI)最新报告指出,生成式AI需求的爆发正推动全球芯片制造产能加速扩张。预计至2028年,全球12英寸晶圆月产能将达1,110万片,2024-2028年复合增长率达7%。其中,7nm及以下先进制程产能增速尤为显著,将从2024年的每月85万片增至2028年的140万片,年复合增长率14%(行业平均的2倍),占全球总产能比例提升至12.6%。

高通双轨代工战略落地,三星2nm制程首获旗舰芯片订单

据供应链消息确认,高通新一代旗舰芯片骁龙8 Elite Gen 2(代号SM8850)将首次采用双轨代工策略:台积电负责基于N3P(3nm增强版)工艺的通用版本,供应主流安卓厂商;而三星则承接其2nm工艺(SF2)专属版本,专供2026年三星Galaxy S26系列旗舰机。此举标志着高通打破台积电独家代工依赖,三星先进制程首次打入头部客户供应链。

美光2025Q3财报:HBM驱动创纪录营收,技术领先加速市占扩张

在AI算力需求爆发性增长的浪潮下,存储巨头美光科技交出超预期答卷。其2025财年第三季度营收达93亿美元,创历史新高,其中高带宽内存(HBM)业务以环比50%的增速成为核心引擎。凭借全球首款12层堆叠HBM3E的量产突破,美光不仅获得AMD、英伟达等头部客户订单,更计划在2025年末将HBM市占率提升至24%,直逼行业双寡头。随着下一代HBM4基于1β制程的性能优势验证完成,一场由技术迭代驱动的存储市场格局重构已然开启。

对标TI TAS6424!HFDA90D以DAM诊断功能破局车载音频安全设计

随着汽车智能化升级,高保真低延迟高集成度的音频系统成为智能座舱的核心需求。意法半导体(ST)推出的HFDA80D和HFDA90D车规级D类音频功放,以2MHz高频开关技术数字输入接口及先进诊断功能,为车载音频设计带来突破性解决方案。

村田量产全球首款0805尺寸10μF/50V车规MLCC,突破车载电路小型化瓶颈

随着汽车智能化电动化进程加速,自动驾驶(AD)和高级驾驶辅助系统(ADAS)等关键技术模块已成为现代车辆标配。这些系统依赖于大量高性能电子控制单元(ECU)和传感器,导致车内电子元件数量激增。作为电路稳压滤波的核心元件,多层片式陶瓷电容器(MLCC)的需求随之水涨船高,尤其是在集成电路(IC)周边,对大容量电容的需求尤为迫切。然而,有限的电路板空间与日益增长的元件数量及性能要求形成了尖锐矛盾,元件的高性能化与小型化成为行业亟待攻克的关键难题。