常见 RTOS 优势对比¶
ucos/freertos/RT-Thread,选择这三款 OS 的原因是,它们的年限都比较长了,在市面上都蛮有知名度,用过的人比较多,更有说服力。
1. 基本功能,性能¶
各家 RTOS 差异很小,可比性并不是很大
2. 易用性 / 可读性¶
FreeRTOS 应该说是最差,奇葩的匈牙利命名法,代码实现用了很多宏,可读性非常差。
ucos 可读性还可以,注释也很全。
RT-Thread 这块做的比较好,它是类 Linux 的代码风格,面向对象的设计模式,代码简洁易懂。在保证了体积(最小 ROM:3K RAM:1.5K)的同时,还借鉴了 Linux 的设备驱动框架、虚拟文件系统、Shell 等功能,设计更加优雅。
3. 组件丰富性¶
RT-Thread 比起传统 UCOS、FreeRTOS 不仅仅在基础功能上多而全,多达 50 个以上的可重用软件组件,还有很多物联网组件,对于物联网产品几乎做到开箱即用。RT-Thread 还可以运行 Python、JavaScript、Lua 这些高级语言的脚本,进一步降低开发难度。
4. 开发资料¶
ucos 做的最好,还有配套相关的书籍,
FreeRTOS 属于后起之秀,网上也有很多相关资料。
RT-Thread 这块之前还是略显薄弱的,不过现在 RT-Thread 对这块非常重视,最直观的可以看到官网上的应用笔记越来越多了,还有一些配套教学视频。
5. 版权¶
ucos 商业是要收费的,
FreeRTOS 和 RT-Thread 版权都很宽松,特别是 RT-Thread 刚刚使用了 Apache 许可协议。
6. 社区生态¶
这三款 RTOS 的社区都比较活跃,现在可以感觉到 ucos 慢慢的用的人越来越少了,RT-Thread 和 FreeRTOS 用的人都在增多。RT-Thread 也是开发者最多的国产 RTOS,并且还拥有国内最大的嵌入式开源软件社区。
参考¶
要不要用 RTOS: https://zhuanlan.zhihu.com/p/69510401