你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

为什么IoT设备选用RTOS?而不是Linux?

[复制链接]
gaosmile 发布时间:2020-6-8 21:08
物联网近两年的快速发展,想必大家都看到了,因为物联网,使C语言的成为最受欢迎的语言(之前几年JAVA一直的老大)。

顺便先给大家看看6月TIOBE指数:
微信图片_20200608210301.png

C语言已经连续两月位居榜首,超越JAVA了。

一、为什么IoT设备选用RTOS?
我们说的IoT设备,通常指的是物联网系统中的终端设备,我们将IoT设备视为通过网络发送和接收信息的嵌入式系统。

尽管许多嵌入式系统使用较不复杂的软件即可很好地管理,但联网设备需要功能更强大的系统。

物联网设备的软件应该具备:
  • 可扩展:以适应各种不同类别的设备
  • 模块化:选择所需的组件
  • 可连接:通过Wi-Fi,以太网,USB或蓝牙将数据移入和移出设备。
  • 可靠性:最好具有相关的安全认证


1.可扩展性
可扩展的RTOS可以帮助你提高开发效率,降低开发成本并缩短上市时间。

尽管从历史上看,嵌入式系统完全是围绕8位和16位MCU构建的,但是32位MCU的价格却一直在迅速下降,销量在快速增长,使其成为最受欢迎的MCU。
微信图片_20200608210304.png

2.模块化
想必大家都看到了众多RTOS厂家都在不断完善自家RTOS的生态,各种中间件和组件越来越多,但有一个特点就是,模块化。

大家熟悉的µC/OS、RT-Thread、FreeRTOS等都围绕RTOS扩展了许多组件。
微信图片_20200608210307.png

3.可连接
网络连接对于物联网非常重要,关键的一点就是“连接”,否则就只是“物”,而不能叫物联网了。

如果RTOS有配套的协议栈最好,这样就能节省开发时间,同时,如果芯片自带有所需的协议栈更好,这样就能节省设备上的内存并降低成本。

4.可靠性
可靠性这一点相信不用我说,做过开发的都能理解。产品运行一段时间出现bug是一件多么头疼的事情。。。

所以,不光是看得到的实物需要认证,“看不见”的软件也是需要认证。

二、为什么不使用Linux呢?
Linux是一种强大的,对开发人员友好的操作系统,作为物联网设备的平台已受到关注,Linux已成熟成为许多应用程序的主流嵌入式操作系统。

Linux在嵌入式设备中有很多用途,尤其是那些提供图形丰富的用户界面的设备。

然而,与实时操作系统(RTOS)相比,Linux有一个“缺点”:内存占用。即使可以通过删除嵌入式系统不需要的工具和系统服务来缩小Linux,但它仍然非常庞大(相对RTOS)。

它根本无法在8位或16位MCU上运行,甚至许多较新的32位MCU都没有足够的板载RAM用于Linux内核。
微信图片_20200608210311.png
ARM Cortex-M系列就是非常适合IoT的MCU,有数百种基于流行的Cortex-M架构的MCU,通常只有几百KB的内存,Linux基本不能在这些芯片上运行。

所以,为什么不使用Linux呢?总结来说就是IoT设备的硬件(资源、性能)不适合Linux。

收藏 评论2 发布时间:2020-6-8 21:08

举报

2个回答
likang1202 回答时间:2020-6-9 09:37:27
谢谢分享
lenghanbing444 回答时间:2020-8-4 09:25:42
谢谢分享

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版