?
早在 1982 年,一群卡內基梅隆大學的學生開發(fā)出網絡可樂機,它可以告知冰箱里的存貨以及新放入的飲料是不是已經變冰,這臺機器被稱為第一個網絡家電。這群大學生沒想到自己的一番操作,成了物聯(lián)網的先驅。目前來看,“物聯(lián)網+”概念產生了很多新生代詞匯,比如智慧醫(yī)療、智慧城市、智慧工廠等。但是,不知道你有沒有聽說過“物聯(lián)網+操作系統(tǒng)”這種組合?
物聯(lián)網操作系統(tǒng)(簡稱物聯(lián)網 OS)的誕生就是單純兩者的碰撞?顯然沒這么簡單,這件事得從科技發(fā)展角度來講。
中國軟件行業(yè)協(xié)會嵌入式系統(tǒng)分會副理事長何小慶的《嵌入式操作系統(tǒng)風云錄:歷史演進與物聯(lián)網未來》一書中提到了物聯(lián)網 OS 的產生背景:首先互聯(lián)網為物聯(lián)網系統(tǒng)搭建了無處不在的互聯(lián)管道,云計算和大數(shù)據的發(fā)展為物聯(lián)網數(shù)據處理和分析提供了技術支撐。在嵌入式設備端,32 位 MCU 技術已經成熟,價格趨于與 8 位 /16 位 MCU 接近,其不僅在網關設備上使用,也在傳感和執(zhí)行單元上普遍使用。在 MCU 市場里,ARM Cortex M 系列的 MCU 占有最主要的份額。ARM 完善的生態(tài)環(huán)境大大幫助了物聯(lián)網 OS 在內的嵌入式軟件的發(fā)展。
中國軟件行業(yè)協(xié)會嵌入式系統(tǒng)分會副理事長 何小慶
可以想象,設備端的小型化、低功耗、安全性的趨勢,通信協(xié)議之間的靈活轉換,應用層對云計算能力的要求,更加復雜的設備軟件,這些都成了物聯(lián)網操作系統(tǒng)被孕育出來的必要條件。
翻閱歷史,起初是美國加州大學伯克利分校的 TinyOS 和瑞士計算機科學學院網絡系統(tǒng)小組開發(fā)的 Contiki,這兩款傳感器 OS 都是最早具備物聯(lián)網 OS 特征的存在。隨后的 2010 年,歐洲誕生了 RIOT(實時多任務操作系統(tǒng)),不僅可以運行在小型 MCU 上,也支持 MPU。
直到 2014 年 2 月,德國紐倫堡的嵌入式世界大會上,風河公司發(fā)布了其基于 VxWorks 7 的物聯(lián)網 OS,隨后也在官網上給出了產品介紹和白皮書。微軟和風河這兩家操作系統(tǒng)系統(tǒng)大公司加入,使得物聯(lián)網 OS 呼之欲出。
技術角度來講,物聯(lián)網操作系統(tǒng)的內核技術與現(xiàn)在的嵌入式操作系統(tǒng)很接近,Arm、華為采用實時多任務操作系統(tǒng),谷歌 Android Thing 的內核則從安卓系統(tǒng)中進行裁剪。何小慶老師在接受與非網記者采訪時表示:“物聯(lián)網操作系統(tǒng)并沒有做一個特別的內核,而是沿用了嵌入式操作系統(tǒng)中的技術, 目前可以將該技術分為兩種,一種是實時的,一種是通用型的?!?/p>
“物聯(lián)網”三個字勾起了資本的欲望,挑起了從芯片到終端廠商的戰(zhàn)爭,也點燃了物聯(lián)網操作系統(tǒng)戰(zhàn)場的戰(zhàn)火。國內外巨頭企業(yè)、本土的“小而美”企業(yè)紛紛拉到了一個舞臺上開始角逐。
戰(zhàn)火前的黎明
“現(xiàn)在物聯(lián)網操作系統(tǒng)的產品和應用都處于初期的探索和打磨階段,估計到 2020 年,有幾家公司產品的技術形態(tài)和商業(yè)模式已經受到產業(yè)界的認可?!边@句話是何小慶老師對當下物聯(lián)網操作系統(tǒng)所處時代的一個判定。
那處于探索期的物聯(lián)網操作系統(tǒng),各家都有怎樣的產品呢?
ARM mbed
2016 年,Arm 公司 320 億全資被軟銀收購,其物聯(lián)網操作系統(tǒng) Arm mbed 經過幾年的發(fā)展具有強大的生態(tài)系統(tǒng)支持,又因為 Arm Cortex-M 內核使用的巨大影響力,Arm mbed 操作系統(tǒng)的應用很容易在具體芯片上開發(fā)。
就在上個月,ARM 收購了 Stream Technologies,這是一家專注于幫助企業(yè)優(yōu)化其物聯(lián)網設備通信方式的軟件提供商。ARM 物聯(lián)網云服務部門負責人 Hima Mukkamala 在博客文章中詳細介紹了 ARM 對該工具套件的一些愿景設想。他寫道,收購 Stream 旨在創(chuàng)建一個“端到端的物聯(lián)網平臺,用于管理、連接、配置和更新設備”。這個一站式商店的價值定位,很大程度上是源于 Stream 軟件幾乎可以兼容所有類型的物聯(lián)網系統(tǒng),以及很多不同類型的網絡。
在安全性方面,Arm 也頗為重視。推出了 PSA 安全構架其基于現(xiàn)有的安全技術,如芯片、軟件做系統(tǒng)化整理,會形成不同的安全級別;整理出有效的安全實踐,加入 PSA 指導意見中,形成 IO 級安全指導。
說到不足,何老師用“使用復雜”幾個簡言概括。其實 Arm mbed 的發(fā)展并不是特別順利,初期到現(xiàn)在經歷了一些變化,比如開始內核并不提供實時性。但目前也有一些平臺在用,比如研華。
Huawei LiteOS
在 Huawei LiteOS 官方首頁“招聘”兩個字顯得格外引人注目,官網資料也給出了 LiteOS 的發(fā)展歷程(如下圖)。 2015 年 5 月 20 日,在 2015 華為網絡大會上,華為發(fā)布了敏捷網絡 3.0,主要包括最輕量級的物聯(lián)網操作系統(tǒng) LiteOS、敏捷物聯(lián)網關、敏捷控制器三部分。華為戰(zhàn)略 Marketing 總裁徐文偉介紹:“LiteOS 體積只有 10KB 級,而且實行開源,使智能硬件開發(fā)變得更加簡單?!?/p>
官方資料顯示,Huawei LiteOS 自開源社區(qū)發(fā)布以來,圍繞 NB-IoT 物聯(lián)網市場從技術、生態(tài)、解決方案、商用支持等多維度使能合作伙伴,構建開源的物聯(lián)網生態(tài),目前已經聚合了 30+ MCU 和解決方案合作伙伴,共同推出一批開源開發(fā)套件和行業(yè)解決方案,幫助眾多行業(yè)客戶快速的推出物聯(lián)網終端和服務,客戶涵蓋抄表、停車、路燈、環(huán)保、共享單車、物流等眾多行業(yè),加速物聯(lián)網產業(yè)發(fā)展和行業(yè)數(shù)字化轉型。
NB-IoT 技術是華為最早推進的聯(lián)網技術,華為圍繞該技術打造生態(tài)似乎如魚得水。據今年 1 月份一篇來源《通信世界》的文章顯示,Huawei LiteOS 已支持華為內部產品累計出貨量超過 5000 萬臺。2016 年第四季度以來,使用 Huawei LiteOS 的智能貓眼、智能門鈴、安防攝像頭等智能家居產品出貨量已經超過 10 萬臺。
AliOS
阿里云 IoT 事業(yè)部物聯(lián)網操作系統(tǒng)首席架構師謝琳峰在接受與非網記者采訪時這樣介紹其產品:“不同于市面上眾多從傳統(tǒng) RTOS 衍生卻打上‘物聯(lián)網操作系統(tǒng)’標簽的產品或開源項目,AliOS Things 是一款為現(xiàn)代物聯(lián)網應用量身打造的操作系統(tǒng)。除了提供高度可伸縮,實時,安全的內核,AliOS Things 還原生提供了包括云端一體設備和應用管理,安全系統(tǒng)和應用升級,高精度定位,傳感器數(shù)據上云和本地分析,動態(tài)安全漏洞診斷等眾多物聯(lián)網時代所亟需的高階能力,以及包括云化部署的一站式應用開發(fā)環(huán)境等強大豐富的開發(fā)工具。針對典型的物聯(lián)網場景,AliOS Things 進行了端對端的優(yōu)化,使得對于同樣的功能集合,基于 AliOS Things 打造的應用解決方案可以實現(xiàn)最好的性能和最低的資源消耗?!?/p>
隨著物理網芯片和終端的性能越來越強,計算能力乃至人工智能能力向端側下沉。在這一物聯(lián)網趨勢下,謝琳峰表示:“我們也相信‘云側學習,端側影響’將會是未來一段時間內人工智能在物聯(lián)網領域落地的主流形態(tài)。在這樣的大背景下,現(xiàn)代物聯(lián)網操作系統(tǒng)必須提供云端一體的分析計算框架,支持從云上將訓練好的模型和算法按需分發(fā)到端側的受其管理的設備和計算節(jié)點,以實現(xiàn)最好的計算和決策結果。這種模式的實現(xiàn),需要有云側的強大 AI 能力的支撐和云端之間精心設計的配合。AliOS Things 背靠阿里云的人工計算平臺和開發(fā)工具,結合原生提供的應用管理機制,和與戰(zhàn)略芯片合作伙伴的本地計算和分析 SDK 深度結合,真正使得端側設備的人工智能應用成為現(xiàn)實。 ”
據與非網記者了解,安全是 AliOS Things 最首要的設計考慮,其提供了包括安全編程和靜態(tài)檢查,安全連接和通道,安全啟動和更新,安全存儲,運行時安全的端對端全面安全防護方案。此外,阿里還和國內外頂尖的安全應急響應中心深度合作,提供基于云側的安全漏洞在線掃描,實時響應報警和修復的高階安全服務,確保運行 AliOS Things 的設備在等到屬主授權的前提下能得到業(yè)界最高水平的安全防護。
說到優(yōu)勢,阿里云計算在企業(yè)級應用上的優(yōu)勢是先天的。目前阿里也在與 ST 合作,積極布局自己的生態(tài),但打造一個讓開發(fā)者能夠迅速適應的環(huán)境,不斷保持內核的升級和問題的維護將是阿里要面臨的挑戰(zhàn)。
FreeRTOS
作為一個輕量級的操作系統(tǒng),F(xiàn)reeRTOS 提供的功能包括:任務管理、時間管理、信號量、消息隊列、內存管理、記錄功能等,可基本滿足較小系統(tǒng)的需要。
FreeRTOS 有許多應用,采用 Linux 開源方式,生態(tài)環(huán)境好,受眾群體非常廣泛。在 EEtime 雜志每次的嵌入式操作系統(tǒng)市場研究報告中,F(xiàn)reeRTOS 都名列前茅。
去年年底有個大新聞就是,F(xiàn)reeRTOS 作者加入亞馬遜 AWS 任首席工程師,正式推出 Amazon FreeRTOS。由于 Amazon FreeRTOS 基于 FreeRTOS 內核,嵌入式開發(fā)者理解起來就非常容易,開發(fā)環(huán)境本身沒有什么變化。NXP、ST 這幾家物聯(lián)網芯片公司的開發(fā)板都有移植好的端到端的介入,所以接受度比較高。
?
RT-Thread
RT-Thread 誕生于 2006 年,由國人自主開發(fā),是一個集 RTOS 內核、中間件組件和開發(fā)者社區(qū)于一體的技術平臺,由熊譜翔先生帶領并集合開源社區(qū)力量開發(fā)而成,它已成為國內最成熟穩(wěn)定和裝機量最大的開源嵌入式操作系統(tǒng)。RT-Thread 也是一個組件完整豐富、簡易開發(fā)、高可擴展性和高安全性的 IoT OS。上海睿賽德是 RT-Thread 背后的服務公司,負責 RT-Thread 的維護、運營和核心組件開發(fā)等
睿賽德科技 COO 鄒誠在接受與非網記者采訪時,提到了 RT-Thread 的特點:“占用資源極小,最小資源占用:1.2KB RAM 和 2.5KB flash;實時性性能極好,中斷響應時間在 1us 以內;支持芯片眾多,超過 30 款主流芯片;已經建立起初步良好的軟件生態(tài),目前軟件包當中的軟件數(shù)量超過 50 個?!?/p>
左一:吳洋勇,左二:邱祎,中間:熊譜翔,右二:鄒誠,右一:朱天龍
同時鄒誠還表示:“作為一個 OS 平臺,生態(tài)建設是一項非常耗時的工作,時間的緊迫性是我們遇到的最大瓶頸。當然,文檔和書籍的相對欠缺、相對 FreeeRTOS 的裝機量還比較小等都是我們不得不面對的挑戰(zhàn)?!?/p>
未來
去年何老師在接受媒體的采訪時表示:“最后能剩下的操作系統(tǒng)也就只有少數(shù)的幾個?!痹诒姸喈a品拼殺的時候,哪些特質才是物聯(lián)網操作系統(tǒng)的關鍵所在呢?何老師總結出了六點特征。
管理物的能力:從嵌入式系統(tǒng)視角看,“物”是網絡上發(fā)送和接受信息的一個個嵌入式計算小設備(或稱為深嵌入式系統(tǒng)),比如家庭或者工業(yè)現(xiàn)場的智能傳感器?,F(xiàn)在嵌入式系統(tǒng)設計的一個共識就是降低功耗,常見的方法是系統(tǒng)盡可能快地執(zhí)行,然后立即進入睡眠模式?,F(xiàn)在的處理器核心架構,在低性能狀態(tài)下,可以做到基本上不消耗任何電力。
可伸縮和擴展性的架構:隨著 32 位 MCU 的價格下降,Linux 又無法支持沒有 MMU 的 MCU,RTOS 理所當然地成為運行在 MCU 的物聯(lián)網 OS 的首選,原因是基于 RTOS 的設計運行更靈活和可擴展的軟件運行在這些系統(tǒng)中。
泛在互聯(lián)網功能:支持物聯(lián)網常用的無線和有線通信功能,比如支持 GPRS/3G/HSPA/4G 等公共網絡的無線通信功能,同時要支持 ZigBee/NFC/RFID/WiFi/Bluetooth 等近場通信功能,還要支持 Ethernet/CAN/USB 有線網絡功能,以及廣受關注的窄帶通信技術 NB-IoT 和 LoRa。在這些不同的物理和鏈路層接口之上的協(xié)議之間要能夠相互轉換,能夠把從一種協(xié)議獲取到的數(shù)據報文,轉換成為另外一種協(xié)議的報文發(fā)送出去,最后要能夠遷移到互聯(lián)網協(xié)議。
系統(tǒng)的安全性:物聯(lián)網設備中很大一部分是使用 MCU 和資源有限的微處理器,與大型設備相比,這些小型設備更容易保護,不易受同類型威脅的攻擊,更安全。
云計算后臺:物聯(lián)網設備區(qū)別于傳統(tǒng)的設備的標志就是這些設備將產生海量的數(shù)據,如何管理和處理這些數(shù)據是擺在物聯(lián)網企業(yè)面前的一個難題,云計算無疑是解決這個難題的最有效的技術手段。選擇支持物聯(lián)網系統(tǒng)的云計算平臺需要考慮一下的技術因素:
1)支持云計算和物聯(lián)網協(xié)議(Websocket、RESTful、MQTT 和 CoAP 等)。
2)靈活的標準和設備管理方式。
3)支持安全的遠程固件升級。
4)Web/ 移動應用開發(fā)的能力。
5)高效和可靠數(shù)據存儲能力。
先進的編程語言:用于傳統(tǒng)的嵌入式系統(tǒng)的編程語言多數(shù)是 C 和 C++。因為物聯(lián)網設備的特點,互聯(lián)網編程技術將進入物聯(lián)網設備,優(yōu)化后的互聯(lián)網編程語言可以低功耗的 MCU 上運行,比如 Java、Java 和 Python。需要注意的是,Java 總是運行在操作系統(tǒng)之上,所以你的選擇不是 C/C++或 Java 兩者之一,而是 C/C++和 Java 都會使用。
其實物聯(lián)網操作系統(tǒng)要有長足的發(fā)展,與學術界、高校的合作也必不可少。畢竟高校對待技術的視角與商業(yè)界是完全不一樣的,商業(yè)公司更傾向于立竿見影的產生效益,而高校則追求把技術系統(tǒng)的肢解,更加利于學生學習。這點來說,高校的參與會給物聯(lián)網操作系統(tǒng)的發(fā)展帶來很大的好處。
參考文獻
[1] 《嵌入式操作系統(tǒng)風云錄:歷史演進與物聯(lián)網未來》——何小慶著;
[2] 楊迪娜 . 專家談物聯(lián)網操作系統(tǒng)的現(xiàn)狀與未來[J]. 單片機與嵌入式系統(tǒng)應用, 2017, 17(12):5-6.
[3] 《嵌入式操作系統(tǒng)與物聯(lián)網演進之路》;
[4] 《物聯(lián)網操作系統(tǒng)》專題采訪之 RT-Thread;
[5] 《物聯(lián)網操作系統(tǒng)》專題采訪之 AliOS Things;
[6] 《物聯(lián)網操作系統(tǒng)》專題采訪之何小慶專訪。
與非網原創(chuàng)內容,未經許可,不得轉載!