騰訊最新開源IoT操作系統登上GitHub熱榜,最小體積僅1.8 KB
鵝廠又開源,這次是一個操作系統,面向物聯網場景,名為TencentOS-tiny。
項目如其名,核心亮點就是 tiny——最小體積僅 1.8 KB,功耗最低 2 微安。
而且合作伙伴眾多,已經支持意法半導體、恩智浦等多家廠商的多種芯片和模組。
項目放出之后,便引發大量關注,一舉登上 GitHub 熱榜,獲得 1200+ 標星,300+Fork。
TencentOS-tiny,為 IoT 而生
對于開源這一物聯網系統,騰訊也給出了官方的說法:
這不僅可以將騰訊在物聯網領域的技術和經驗與全球開發者分享,還能汲取全球物聯網領域的優秀成果和創新理念,最終推動整體物聯網生態的繁榮以及萬物智聯時代的到來。
當然,這背后也是應勢而為,物聯網已經成為了當下的熱門風口之一,而且有極大的市場潛力。
根據《中國物聯網發展年度報告》,去年中國物聯網市場容量已經超過 1 萬億,到 2020 年,中國物聯網市場容量可望超過 1.5 萬億。
在整個產業鏈中,終端側的操作系統至關重要,直接對接底層物聯網設備,是物聯網系統中“智能”的關鍵。
與其他平臺上的操作系統不同,物聯網領域的操作系統面向的是各種復雜的場景與設備,而且各個設備能夠提供的算力、電池以及存儲空間也大有不同,其中最顯著的特征就是“弱”、“小”、“少”。
這就是騰訊推出的 TencentOS tiny 的切入點:
首先,存儲與資源占用上,提供業界最精簡的 RTOS 內核,最少資源占用為 RAM 0.6 KB,ROM 1.8 KB。
在類似煙感和紅外等實際場景下,TencentOS tiny 的資源占用僅為:RAM 2.69 KB、ROM 12.38 KB,來降低硬件資源占用。
其次在功耗上,應用了高效功耗管理框架,可以針對不同場景降低功耗。
比如內部的定時機制在發現業務沒有運行的時候,會自動啟動休眠狀態,降低功耗。官方實測數據,最低的休眠功耗僅有 2 微安。
同時,這方面也給開發者提供了“操作空間”,他們可以根據業務場景選擇可參考的低功耗方案,降低設備耗電,延長設備壽命。
在追求低資源占用以及低功耗的同時,騰訊也在 TencentOS tiny 中支持了不少功能,比如復雜的任務管理、實時調度、時間管理、中斷管理、內存管理、異常處理等等。
這樣系統,是怎么實現的呢?我們一起來看看其背后的架構。
整體架構放出,植根于騰訊云
根據騰訊放在 GitHub 上的文件,整個 TencentOS tiny 的架構一共分為 8 個部分,整體架構圖如下所示:
從下到上依次是:CPU 庫(當前主要支持 ARM Cortex M0/3/4/7)、驅動管理層 (包括板級支持包、硬件抽象和設備驅動)、內核 (任務管理、實時調度等模塊)、支持不同網絡硬件的 IoT 協議棧、安全框架、組件框架、文件系統、開放 API(規劃開發中)、示例應用。
其中,IoT 協議棧、安全框架、開放 API 等功能,都與騰訊云密切相關,深度集成。
此外,騰訊也基于 TencentOS tiny 規劃了一個全鏈條的 IoT 開發功能:
結合騰訊云物聯網開發平臺 IoT Explorer,加上之前已經建設完成的國內最大規模 LoRa 網絡。
騰訊云物聯網已經徹底打通從芯片通訊開發、網絡支撐服務,物理設備定義管理,數據分析和多場景應用開發等一站式、全鏈條 IoT 云開發服務能力。
是的,如果想要更好地發揮這一開源系統能量與作用,你最好選擇騰訊云,因為這樣效果更好,效率更高。
這種依靠軟件開源,用更好的性能吸引更多開發者的策略,已經是科技巨頭圍繞自己核心業務構建生態的常用手法,比如阿里、百度、華為等等都有類似的動作出現。
與此同時,尋找合作伙伴也是這些科技巨頭推動生態建設的關鍵。
TencentOS tiny 也不例外,官方宣稱已經支持意法半導體、恩智浦、華大半導體、瑞興恒方、國民技術等主流廠商多種芯片和模組。
如果你有興趣,可以看看~
GitHub 項目鏈接:
https://github.com/Tencent/TencentOS-tiny