当前位置:首页 > 每日看点

RTOS和非RTOS比得到了什么牺牲了什么?

卡卷网2年前 (2024-12-01)每日看点330

事实上,有不少基本功扎实的工程师花上个把月,都能手搓一个简易版的RTOS,RTOS本身绝不是那么的高不可攀。目前我们使用的几款主流的RTOS,例如FreeRTOS,RT-Tread等,只是因为他们是组织化运营,商业化运作,在早期使用的群体较多,源码得到了大量的测试验证,从而能不断完善自身,成功搭建起了用户生态。RTOS绝不是一个技术门槛很高产品,相反题主只要稍微浏览一下FreeRTOS的源码,便可得知一二。

RTOS和非RTOS比得到了什么牺牲了什么?  第1张

事实上确实存在一些非理智的声音,觉得只要程序移植了RTOS就能凸显自身技术水平,而鄙视一切的裸机程序,但这绝对是非常狭隘的看法。因为RTOS不过是一种基于MCU的开发手段而已,很多时候杀鸡是无需用牛刀的。如果只是利用MCU做一些简单的硬件控制以及命令收发,使用裸机方式进行开发明显是更优的选择:

  • RTOS是需要根据MCU的资源情况进行适配和裁剪的,这会带来额外的前置工作量;
  • RTOS本身也是一个程序,它也会占用MCU的资源,也会带来固定的运行开销;
  • RTOS会频繁的进行多任务调度,裸机开发常用的单步调试往往会失去实际意义,提高了代码调试的难度;
  • 开发人员需要对多任务程序开发有正确的理解,否则代码的质量难以保证,尤其是任务间的数据同步问题。

RTOS和非RTOS比得到了什么牺牲了什么?  第2张

那什么时候使用RTOS?答案其实跟技术本身无关,纯粹还是一个投入产出比的问题:若你接受上述的代价后依然觉得要上RTOS的,那就果断上。当程序的功能庞杂,外设众多,尤其时带有图像显示需要进行人机交互时,使用RTOS的收益就会大大提高。

  • 原生的多任务的程序架构能明显降低程序员的思维负担,有利于实现功能模块间的解耦,提升代码可读性;
  • 提供多种高效的数据传递机制,如消息队列,事件组等,可有效降低各种全局变量的管理难度;
  • 任务调度机制可有效提升MCU的运行利用率,同时改善系统对各种外部事件的响应速度。

RTOS和非RTOS比得到了什么牺牲了什么?  第3张

总体而言,是否使用RTOS,主要取决于程序的复杂度:程序功能越多,业务逻辑越复杂,基于RTOS的开发就越有性价比。而且关键的是,RTOS是帮助程序员降低编程难度的,能使用RTOS进行开发,绝不是编程水平高的体现。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/2391.html

分享给朋友:

相关文章

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

最近一个月各大手机厂商的旗舰机扎堆发布,不知道大家看爽了没? 这一代的性能续航大提升,最低 3599 元就能买到,同时老款也有不小的降幅,今年双 11 算是相当适合换手机的节点了! 这次,小黑就给大家推荐双 11 期间值得购买的手机...…

拼多多,怎么就成为了年轻人的「赛博菜市场」?

拼多多,怎么就成为了年轻人的「赛博菜市场」?

可惜你不在拼多多买水果蔬菜,很难一句话跟你解释,我只能笨拙的用经历来慢慢讲。 我们公司有微波炉,同事们几乎都是自己带饭来上班,便当荤素搭配、水果零食;都是好看又好吃。 我自己本来就不喜欢外卖,当然也加入了带饭大军: 直到某一天深夜我闲着…

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

最主要原因是因为——贵! 看看我家里搭建的这一套吧。 目前我家中有5台常用的NAS,分别为群晖DS1522+、威联通TS-464C2、绿联DX4600 Pro 、极空间Z4S、威联通TS-AI642。个人认为,这其中的每台NAS都是时代…

有哪些网站,一旦知道,你就离不开了?

有哪些网站,一旦知道,你就离不开了?

这六个网站,一旦用过,基本上是离不开了。都是我超爱的一些网站,基本上每天都用。 1 地图生成器 第一个,我要给大家推荐的是地图生成器。可以下载到各省,各市,各县的svg格式的地图素材。 这些素材导入PPT中都是可以编辑的。 可以单独更改颜色…

如何进行 Elasticsearch 调优实践?

如何进行 Elasticsearch 调优实践?

面试官心理分析这个问题是肯定要问的,说白了,就是看你有没有实际干过 es,因为啥?其实 es 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s ,坑爹了。第一次搜索的…

自己拥有一台服务器可以做哪些很酷的事情?

自己拥有一台服务器可以做哪些很酷的事情?

我就有一台,跑了两年了,ipv6 ddns 网络,加虚拟化平台.跑了个 winserver 和 ubuntu 服务器。 稳的雅皮! 拆掉后盖,散热更好。烟盒固定硬盘。键盘防止灰尘掉落。电池拆掉,屏幕拆掉,也是散热考虑。 屏幕拿去做便携副屏了…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。