新聞 2019年9月18日,騰訊宣佈將 `自主研發 輕量級`物聯網實時操作系統 TencentOS tiny 。相比市場上其它系統,騰訊TencentOS tiny在資源占用、設備成本、功耗管理以及安全穩定等層面極具競爭力。該系統的開源可大幅降低物聯網應用開發成本,提升開發效率,同時支持一鍵上雲,對 ...
新聞
2019年9月18日,騰訊宣佈將開源
自主研發
的輕量級
物聯網實時操作系統TencentOS tiny。相比市場上其它系統,騰訊TencentOS tiny在資源占用、設備成本、功耗管理以及安全穩定等層面極具競爭力。該系統的開源可大幅降低物聯網應用開發成本,提升開發效率,同時支持一鍵上雲,對接雲端海量資源。
源碼已在github上開源:https://github.com/Tencent/TencentOS-tiny
正題
很榮幸,能親眼見證TencentOS tiny的開源,也很榮幸能在一個多月前內測使用過它~
不得不說,TencentOS tiny的內核確實是非常非常小巧,最少資源占用為RAM 0.6KB
,ROM 1.8 KB
。這是他們團隊自主研發的RTOS,源碼非常簡單易懂,源碼作者以非常清晰的邏輯實現了整個內核(還是非常佩服戴大神的,膜拜一下)。
瞭解一下TencentOS tiny的框架
TencentOS tiny主要由一個輕量級RTOS內核+
多個物聯網組件構成,,從下到上主要包括:
CPU庫 :TencentOS tiny支持的CPU IP核架構,當前主要支持ARM Cortex M0/3/4/7
,還有現在很火的RISC-V
,當然,騰訊物聯網團隊肯定也會支持更多種類更多IP核與開發板。
驅動管理層 :包括BSP
板級支持包,這些東西主要由MCU晶元廠家開發與維護,、HAL
硬體抽象、Drivers設備驅動,這部分對於純粹嵌入式開發者來說還是很重要的,肯定會越來越完善的!
內核 :TencentOS tiny
實時內核包括任務管理、實時調度、時間管理、中斷管理、記憶體管理、異常處理、軟體定時器、鏈表、消息隊列、信號量、互斥鎖、事件標誌等模塊,接下來我也將寫一系列TencentOS tiny
內核源碼分析
的文章,敬請期待吧!
IoT協議棧 :TencentOS tiny
提供lwip、AT Adapter、SAL層
,支持不同的網路硬體,如乙太網、串口WIFI、GPRS、NB-IoT、4G
等通信模塊。在TCP/IP
網路協議棧上提供常用的物聯網協議棧應用層,如COAP、MQTT
,支撐終端業務快速接入騰訊雲;
安全框架 :TencentOS tiny
為了確保物聯網終端數據傳輸安全以及設備認證安全,提供了比較完整的安全解決方案。安全框架提供的DTLS
和TLS
安全協議加固了COAP
及MQTT
的傳輸層,可確保物聯網終端在對接騰訊雲時實現安全認證和數據加密;另外針對低資源的終端硬體,安全框架還提供與騰訊雲IoTHub
配套的密鑰認證方案,確保資源受限設備也能在一定程度上實現設備安全認證;物聯網安全是非常重要的,這些框架也是必須存在的。
組件框架 :TencentOS tiny
提供文件系統、KV存儲、自組網、JS引擎、低功耗框架、設備框架、OTA、調試工具
鏈等一系列組件,這部分我覺得還是很不錯的,期待ing;
開放API (規劃開發中):TencentOS tiny
將在協議中間件和框架層上提供開放API
函數,這樣子就能很方便使用中間組件的功能,我是最喜歡這種開發的,不造輪子,能直接使用。簡單來說這個API能快速對接騰訊雲,實現終端業務上雲的需求,最大程度減少終端物聯網產品開發周期,節省開發成本;
示例應用 :TencentOS tiny
提供的示例代碼,模塊測試代碼等,方便用戶參考使用。
騰訊雲物聯網平臺(圖中最上層的部分):嚴格來說這部分不算TencentOS tiny
的框架內容,這是接入平臺層了,騰訊雲的物聯網平臺都是提供多種語言的SDK
包,當然在嵌入式設備上肯定使用C SDK
的,不過總的來說都是很不錯的。
總的來說TencentOS tiny
還是非常不錯的,該有的功能都有,可以考慮使用一下這個操作系統~
對於傑傑來說,作為嵌入式開發者,我是很看好物聯網的,也一直在往這條路上緩緩前行,在萬物互聯的時代,說不定真的能在賺錢
的同時還能為世界做出一丟丟貢獻
(如果沒有那就算了)。
據我所知,TencentOS tiny
後續也將推出基於事件驅動模型的調度,用於某些單片機上不支持基於上下文調度的多任務。
順便再透露一下,我將接下來會寫一系列TencentOS tiny
內核分析的文章,全網首發哦!ps:得到源碼作者的親自指點,絕對乾貨!!!
喜歡就關註我吧!
圖文教程:
簡單上手:
深度源碼分析:
配套常式:
視頻教程:
- 【TencentOS tiny學習】視頻彙總
- 【視頻】01-初識TencentOS tiny
- 【視頻】02-TencentOS tiny基礎知識
- 【視頻】03-TencentOS tiny移植
- 【視頻】04-TencentOS tiny任務-1
- 【視頻】05-TencentOS tiny任務-2
- 【視頻】06-TencentOS tiny隊列-1
- 【視頻】07-TencentOS tiny隊列-2
- 【視頻】08-TencentOS tiny消息隊列
- 【視頻】09-TencentOS tiny信號量-1
- 【視頻】10-TencentOS tiny信號量-2
- 【視頻】11-TencentOS tiny互斥鎖-1
- 【視頻】12-TencentOS tiny互斥鎖-2
- 【視頻】13-TencentOS tiny互斥鎖-3
- 【視頻】14-TencentOS tiny事件-1
- 【視頻】15-TencentOS tiny事件-2
- 【視頻】16-TencentOS tiny軟體定時器-1
- 【視頻】17-TencentOS tiny軟體定時器-2
- 【視頻】18-TencentOS tiny軟體定時器-3
相關PPT資料:
喜歡就關註我吧!
相關代碼可以在公眾號後臺獲取。
更多資料歡迎關註“物聯網IoT開發”公眾號!