新聞
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 移植到STM32F103全教程
深度原始碼分析:
-
【TencentOS tiny學習】原始碼分析(1)——task
-
【TencentOS tiny學習】原始碼分析(2)——調度器
-
【TencentOS tiny學習】原始碼分析(3)——佇列
-
【TencentOS tiny學習】原始碼分析(4)——訊息佇列
-
【TencentOS tiny學習】原始碼分析(5)——信號量
-
【TencentOS tiny學習】原始碼分析(6)——互斥鎖
-
【TencentOS tiny學習】原始碼分析(7)——事件
-
【TencentOS tiny學習】原始碼分析(8)——軟體定時器
配套例程:
-
【TencentOS tiny學習】例程(0)——hello world
-
【TencentOS tiny學習】例程(1)——task
-
【TencentOS tiny學習】例程(2)——佇列
-
【TencentOS tiny學習】例程(3)——訊息佇列
-
【TencentOS tiny學習】例程(4)——信號量
-
【TencentOS tiny學習】例程(5)——互斥鎖
-
【TencentOS tiny學習】例程(6)——事件
-
【TencentOS tiny學習】例程(7)——軟體定時器
-
【TencentOS tiny學習】例程(8)——記憶體池
-
【TencentOS tiny學習】例程(9)——記憶體堆
視頻教程:
- 【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資料:
- 【TencentOS tiny學習】視頻PPT
喜歡就關注我吧!

相關代碼可以在公眾號后臺獲取,
更多資料歡迎關注“物聯網IoT開發”公眾號!
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/33435.html
標籤:嵌入式
