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