微信公眾號(hào) | strongerHuang
全球RTOS有上百款,但市面上常用的差不多也就10款左右。
首先問下大家,你們最常用哪款RTOS?今天給大家整理下市面上常見RTOS的一些特點(diǎn)。
一、FreeRTOS
官網(wǎng)地址:https://www.freertos.org/
源碼地址:https://github.com/FreeRTOS
1、開源免費(fèi)
FreeRTOS 內(nèi)核以及其他組件庫(kù),遵循 MIT 開源許可。
官方還提供了兩個(gè)基于FreeRTOS內(nèi)核的商業(yè)授權(quán)版本:?OpenRTOS和 SafeRTOS.
更多細(xì)節(jié)可以參看:https://www.freertos.org/Documentation/02-Kernel/01-About-the-FreeRTOS-kernel/04-Licensing
2、輕量化
FreeRTOS支持裁剪(通過FreeRTOSConfig.h配置文件)可以做到使用極少RAM和Flash資源。
3、學(xué)習(xí)資料豐富
FreeRTOS是目前全球市場(chǎng)占有率最高的一款RTOS,因此,不管是官方,還是網(wǎng)絡(luò)上都有大量的學(xué)習(xí)資料和視頻教程。
同時(shí),官方還提供了中文網(wǎng)頁(yè),極大的方便了英文不是很好的國(guó)人學(xué)習(xí)FreeRTOS。
二、RT-Thread
官網(wǎng)地址:https://www.rt-thread.org/
源碼地址:
https://github.com/RT-Thread/rt-thread
https://gitee.com/rtthread/rt-thread
1、開源免費(fèi)
RT-Thread 遵循Apache-2.0版本開源許可。
2、組件豐富
RT-Thread提供了市場(chǎng)上常用的一些組件,以及一套IOT鏈接組件。
3、學(xué)習(xí)資料豐富
RT-Thread是國(guó)內(nèi)最早的一批RTOS,這些年發(fā)展也很快,官方提供了專業(yè)大量的學(xué)習(xí)資料,關(guān)鍵還是中文版本的,特別適合國(guó)人學(xué)習(xí)。
https://www.rt-thread.org/document/site/#/
三、μCOS
為啥還有μCOS?
那是因?yàn)?0 ~ 90后這一代人見證了μCOS的輝煌。估計(jì)很多95后、00后都沒聽過μCOS。
官網(wǎng)地址:https://www.silabs.com/developers/micrium
(原:http://micrium.com)
維護(hù)網(wǎng)站:www.weston-embedded.com
(這網(wǎng)址需要梯子才能訪問)
源碼地址:https://github.com/weston-embedded
1、開源免費(fèi)
μCOS內(nèi)核以及其他組件庫(kù),遵循 Apache-2.0開源許可。
https://weston-embedded.com/micrium-licensing
早期的μCOS是瑞三開源,但商業(yè)付費(fèi),2016年被Silicon Labs收購(gòu)之后不久開啟了免費(fèi)商用。
2、源碼規(guī)范、結(jié)構(gòu)清晰、注釋明了
μCOS是我見過所有RTOS內(nèi)核源碼中最規(guī)范的一款,即便是新手,只要你C語言基礎(chǔ)扎實(shí),看懂其內(nèi)核源碼都相對(duì)比較容易。
想要深入理解RTOS底層機(jī)制的同學(xué),可以試著閱讀μCOS內(nèi)核源碼。
3、輕量化
μCOS支持市面上絕大多數(shù)MCU,包括很多8位的資源緊張的MCU(比如早期的51單片機(jī))。
μCOS的配置文件分類明確,描述也非常清晰,裁剪系統(tǒng)非常方便。
四、ThreadX
ThreadX經(jīng)歷了幾次“變更”,早在2019年,微軟收購(gòu)ThreadX,將其重新命名為Azure RTOS。然后,在2023年宣布將其托管至 Eclipse 基金會(huì),更名為 Eclipse ThreadX。
官網(wǎng):https://threadx.io/
源碼地址:https://github.com/eclipse-threadx
1、開源免費(fèi)目前(2025年)ThreadX遵循比較寬松的 MIT 開源許可。
參看:https://threadx.io/faq/
ThreadX沒有托管至 Eclipse 基金會(huì)之前是遵循微軟的一種“簡(jiǎn)單協(xié)議”。
2、安全認(rèn)證ThreadX擁有許多難以獲得的信息安全和安全認(rèn)證,獲取ThreadX安全許可協(xié)議需額外支付費(fèi)用。
3、發(fā)展迅速ThreadX在2019年微軟收購(gòu)之后,微軟對(duì)其投入也是巨大,組件也是在迅速壯大。
托管至 Eclipse 基金會(huì),推出ThreadX聯(lián)盟等這一系列操作,能肉眼可見ThreadX發(fā)展之迅速。
五、Zephyr
Zephyr是一款年輕一點(diǎn)的RTOS,但近幾年在快速發(fā)展,特別是近兩年動(dòng)作之大。
前不久發(fā)布的V4.1還與老牌的FreeRTOS進(jìn)行PK:Zephyr和FreeRTOS性能對(duì)比。
官網(wǎng):https://zephyrproject.org/
源碼地址:https://github.com/zephyrproject-rtos
1、開源免費(fèi)Zephyr遵循 Apache-2.0開源許可。2、資料豐富
如果你有關(guān)注Zephyr,你會(huì)發(fā)現(xiàn)它這幾年的發(fā)展速度真的很快。有一個(gè)原因就是資料豐富。
https://docs.zephyrproject.org/latest/introduction/index.html
3、支持多種架構(gòu)
Zephyr不但能款平臺(tái)開發(fā),它還支持多種處理器架構(gòu)。
ARCv2 (EM and HS) and ARCv3 (HS6X)
ARMv6-M, ARMv7-M, and ARMv8-M (Cortex-M)
ARMv7-A and ARMv8-A (Cortex-A, 32- and 64-bit)
ARMv7-R, ARMv8-R (Cortex-R, 32- and 64-bit)
Intel x86 (32- and 64-bit)
MIPS (MIPS32 Release 1 specification)
Renesas RX
RISC-V (32- and 64-bit)
SPARC V8
Tensilica Xtensa
六、NuttX
有接觸小米物聯(lián)網(wǎng)相關(guān)開發(fā)的朋友應(yīng)該知道NuttX,早在2018年的時(shí)候,我接觸一個(gè)無人機(jī)項(xiàng)目的時(shí)候,了解了NuttX這款系統(tǒng)。
官網(wǎng):https://nuttx.apache.org/
源碼地址:https://github.com/apache/nuttx
1、開源免費(fèi)NuttX遵循 Apache-2.0開源許可。
2、標(biāo)準(zhǔn)APINuttX管理標(biāo)準(zhǔn)是 POSIX 和 ANSI 標(biāo)準(zhǔn),還采用來自 Unix 和其他常見 RTOS的額外標(biāo)準(zhǔn) API。
3、支持平臺(tái)豐富NuttX兼容多種處理器架構(gòu),涵蓋了市面上大部分處理器。
可以參看:https://nuttx.apache.org/docs/latest/platforms/index.html
時(shí)間有限,就分享到這里,你們最常用哪款RTOS?歡迎留言區(qū)討論。