大家好,本人是RTOS初學者,打算學習RTOS。想問一下大家哪款RTOS(Contiki、RT-Thread、alios things、freertos、ucos III)最好用?

市場佔有率哪一款最高?應該學習哪一款?


1.首先要學習操作系統原理。

2.之後看操作系統的源碼,如linux,us/os II,freertos等

3."沒有銀彈",沒有萬能的OS,但是,傳統操作系統原理是相似的,每種操作系統適用場合不同、實現方式、調度方式不同、規模不同、授權不同。要根據項目需求進行選擇和取捨。

如,

(1)linux適用於要求網路服務多,用於計算能力較強的系統中。開源軟體,資料豐富,適合學習,應用廣,佔有率高。

(2)uC/OS適用於實時性要求比較強的控制系統中。實時性好,常用於32位機的ARM系統中,有中文書,講解很好,半開源、商業軟體。(3)FreeRTOS,開源,授權寬鬆。內部實現中,主要使用鏈表結構,很靈活。實時性也比較好。因授權寬鬆,也主要用於STM32等ARM微控制器這個層次中。(4)contiki是IPSO聯盟的無線感測器網路的一個小OS,一個專用的小OS,主要基於protothread技術,實際就是個宏,源代碼註解不好,要基於adam的論文才能看明白。(5)tinyOS也是用於無線感測器網路的小OS,結構很好,很小,非搶佔調度。它是zigbee聯盟的。

(6)還有很多。如android OS,iOS,...

以上傳統操作系統,原理相同,實現方式不同,規模大小不同,提供的服務不同,適用場合不同。(7)本人愛好在嵌入式RTOS中,本人比較喜歡"現代的操作系統"QP,它繼承了uC/OS的實時性和快速表格實現方式,但結構又完全不同於uC/OS,它是基於層次狀態機和事件驅動的一個實時OS,非常非常非常優秀! 聽說過用C而不是C++實現面向對象嗎?QP實現了。QP第一次用函數表示狀態。QP的培訓費大約10萬¥,但QP很小眾,適用於前端控制,C/C++編程。QP中編程範式改變了,看OS的角度不一樣了,人的世界觀是很難改變的,這個學習曲線很高。

嵌入式系統後端服務,本人比較喜歡linux,服務多,主要用於樹莓派中,C和python編程。

現在,比較喜歡從C/C++編程轉到利用micropython和python編程。


RT-Thread 開源,免費,內核穩定,組件豐富,還是國產。


沒有最好用,只有最適合。

FreeRTOS在傳統嵌入式市場佔有率高。

在物聯網的話,用適合物聯網的RTOS比較好。

所以取決於你想往哪方面發展。

如果只是學習RTOS入門,那麼找個資料全的就可以了。


學習資源uc最多,free市場佔有率更高。


Freertos,目前全球市佔率最高的事實操作系統,現在絕大多數soc廠家的晶元都會內嵌一個cortex-M核用於低功耗,跑的都是的Freertos。

操作系統的原理都是相同的,學會了一個,其它的自然也就會了。

kv59piaoxue/RTOS_Worker 要不看看我寫的。。。


隨便哪款都好用,只要會一款就可以了,一通百通,基本原理都是有一樣的,freeRTOS資料少但是免費,uCos資料多但是是收費的,所以看工作需要了


ucos II....................吧,至少看了UCOS你會學到實時任務切換的演算法好像都一樣.一個任務是一個棧的.

Contiki實際上的任務不是搶佔的.是一種跳轉的特殊應用.用的是一個棧.....,不過CONTIKI的網部分的架購與實現還是很有意思的.

RT-THREAD,用發C面向對像的方法實現了 UCOS.做為國產的值得看看.

其實吧,先學好C, C的指針.和一點彙編. C向面對像編程學習一下.

alios things這玩意吧,,,,,,沒見到有人用.資料更是少.阿里這個還是不要和ucos和freertos比了吧.

看usos ii,經典,簡結,資料豐富.啥平台都有移植........


推薦閱讀:
查看原文 >>
相关文章