摘要:根據(jù)IOT設(shè)備的需求,以及IOT OS需要滿足的技術(shù)特征、現(xiàn)有IOT OS的來(lái)源,分別概述FreeRTOS、AliOS-Things、RT-Thread、Lite OS、Zephyr、Mbed OS、AWorksOS、HybridOS等8個(gè)IOT OS的特點(diǎn)。智能物聯(lián)網(wǎng)(AIOT,AI+IOT)是人工智能與物聯(lián)網(wǎng)的協(xié)同應(yīng)用,據(jù)此分析IOT OS的發(fā)展方向。
關(guān)鍵字:物聯(lián)網(wǎng)操作系統(tǒng);IOT OS;智能物聯(lián)網(wǎng);AIOT
1 IOT 設(shè)備特點(diǎn)及IOT OS特征
2016年,WindRiver(風(fēng)河系統(tǒng)公司)指出IOT設(shè)備的8大需求[1]:
不斷調(diào)整和升級(jí)的架構(gòu)(芯片?);適應(yīng)不同種類的設(shè)備軟件;設(shè)備安全;虛擬化;性能和可靠性;聯(lián)網(wǎng);豐富的UI;工業(yè)認(rèn)證。
何小慶得出IOT OS的5大技術(shù)特征[2]
1) 管理“物”——物聯(lián)網(wǎng)邊緣節(jié)點(diǎn)上的嵌入式實(shí)時(shí)低功耗設(shè)備。
2) 泛在通信,無(wú)線和有線,近場(chǎng)和遠(yuǎn)距離的通信方式和協(xié)議。
3) 可維護(hù)性,OTA和遠(yuǎn)程維護(hù)。
4) 安全,設(shè)備、通信、云等的安全。
5) 云平臺(tái),遠(yuǎn)程管理,這是物聯(lián)網(wǎng)大數(shù)據(jù)和人工智能的基礎(chǔ)。
2 現(xiàn)有IOT操作系統(tǒng)
現(xiàn)行的IOT操作系統(tǒng)來(lái)源[1][3]:
1) 基于移動(dòng)端操操作系統(tǒng)如Linux、Android、IOS等進(jìn)行裁剪和定制,來(lái)適應(yīng)物聯(lián)網(wǎng)接入設(shè)備的需求。這些OS體積龐大、功耗較高,而且無(wú)法滿足安全認(rèn)證和實(shí)時(shí)性等要求。
2) 傳統(tǒng)的嵌入式操作系統(tǒng),F(xiàn)reeRTOS(亞馬遜)、RT-Thread、uCos(以前是商業(yè)收費(fèi),現(xiàn)在也開(kāi)源了)、ThreadX(微軟)、VxWorks的變種。
3) 專門為IOT設(shè)計(jì),SyberV、華為LiteOS、阿里AliOS-Things、Android Things、ARM Mbed OS。
2.1 FreeRTOS
FreeRTOS起源于英國(guó)人Richard Barry于2003年發(fā)布的開(kāi)源的實(shí)時(shí)內(nèi)核,發(fā)展歷程如下。
2003~2016,傳統(tǒng)嵌入式OS。
2017成為AWS開(kāi)源項(xiàng)目,亞馬遜增加IOT應(yīng)用組件,連接云,變?yōu)镮OT OS。
2016年,Micrium公司的μC/OS被Silicon Labs收購(gòu),出于競(jìng)爭(zhēng)的擔(dān)心,ST和NXP等知名的嵌入式芯片公司轉(zhuǎn)向支持FreeRTOS[4]。
OS主要特點(diǎn)如下。
歷史悠久,開(kāi)發(fā)者眾多,支持的CPU硬件架構(gòu)特別多,達(dá)35種。
FreeRTOS有一些列軟件,版本眾多,包括開(kāi)源版本、授權(quán)版本、安全版本(SafeRTOS)、Amazon開(kāi)源IOT OS版本。
支持AWS邊緣計(jì)算的功能(Greengrass)。
除了AWS,官方?jīng)]有支持第三方云平臺(tái)。
2.2 AliOS-Things
AliOS Things發(fā)布于2017年杭州云棲大會(huì), 是AliOS家族旗下的、面向IoT領(lǐng)域的、高可伸縮的物聯(lián)網(wǎng)操作系統(tǒng)。OS主要特點(diǎn)如下。
支持微內(nèi)核基礎(chǔ)上的POSIX實(shí)現(xiàn),方便程序框架/程序庫(kù)移植。
支持云端一體在線開(kāi)發(fā)(靈活架構(gòu),自組網(wǎng)),提供IOT全鏈路開(kāi)發(fā)、模擬和部署支持。
支持APP獨(dú)立升級(jí);組件化思想的多BIN或差分升級(jí)。內(nèi)核、框架層、應(yīng)用層三個(gè)獨(dú)立的BIN文件,芯片廠商可以出廠預(yù)置內(nèi)核,應(yīng)用層只關(guān)心應(yīng)用層開(kāi)發(fā),不關(guān)心硬件,方便移植。
支持可信執(zhí)行環(huán)境(csky);支持ID2根身份證和秘鑰;支持系統(tǒng)調(diào)用。
v1.1.1集成了自研的Bone Engine,它是一套為AliOS Things優(yōu)化定制的JavaScript引擎,集成了JavaScript的編程及運(yùn)行環(huán)境。
集成了IOT套件,Link Kit,Link Voice等阿里云IoT核心組件,產(chǎn)品可以訪問(wèn)阿里云服務(wù)。
支持的CPU架構(gòu)一般。
2.3 RT-Thread
起源于上海睿賽德電子科技公司創(chuàng)始人和總經(jīng)理熊譜翔于2006年創(chuàng)建的RT-Thread 開(kāi)源實(shí)時(shí)操作系統(tǒng)項(xiàng)目,發(fā)展歷程如下。
2011 年 RT-Thread 1.0 版本正式發(fā)布。
2015 年 2.0版本和現(xiàn)在名氣很大的柿餅 GUI 捆綁發(fā)布。
2017 年發(fā)布 3.0,RT-Thread 全面啟動(dòng) IoT 戰(zhàn)略 。
OS特點(diǎn)如下。
柿餅UI,小型、現(xiàn)代化的圖像庫(kù)。
開(kāi)源、社區(qū)化、中立,開(kāi)放支持第三方云。
Nano版本和IOT版本。
集成開(kāi)源JerryScript引擎,支持JavaScript開(kāi)發(fā)。
組件比較豐富。
混合微內(nèi)核架構(gòu)正在內(nèi)測(cè)[5],平臺(tái)是柿餅M7的開(kāi)發(fā)板,全志R11處理器,ARM Cortex-A7。
2.4 Lite OS
Huawei LiteOS是華為針對(duì)物聯(lián)網(wǎng)領(lǐng)域推出的輕量級(jí)物聯(lián)網(wǎng)操作系統(tǒng),是華為物聯(lián)網(wǎng)戰(zhàn)略的重要組成部分,具備輕量級(jí)、低功耗、互聯(lián)互通、組件豐富、快速開(kāi)發(fā)等關(guān)鍵能力,為開(kāi)發(fā)者提供 “一站式” 完整軟件平臺(tái),有效降低開(kāi)發(fā)門檻、縮短開(kāi)發(fā)周期。發(fā)展歷程如下,走過(guò)了內(nèi)部產(chǎn)品-開(kāi)源軟件-IoT 解決方案發(fā)展之路。
2012 年華為開(kāi)發(fā)支持公司內(nèi)部消費(fèi)產(chǎn)品的小型嵌入式操作系統(tǒng) LiteOS。
2014 和 2015 年 LiteOS 與Huawei 手機(jī)和智能手表一同出貨。
2016 年 Lite OS內(nèi)核正式開(kāi)源。
2017 年發(fā)布 LiteOS IoT 解決方案(即端云解決方案)
2018 年華為加速開(kāi)發(fā)步伐,發(fā)布LiteOS SDK 2.1 和 Lite OS Studio 1.0(開(kāi)發(fā)環(huán)境)。
2019以后,鴻蒙OS的架構(gòu)中,LiteOS也是其內(nèi)核之一(Linux、鴻蒙、LiteOS)。
OS主要特點(diǎn):
OpenCPU架構(gòu),MCU和通信模組二合一,顯著降低終端體積和終端成本,特別適用于NB-IOT應(yīng)用場(chǎng)景和海思芯片,這是它的主要優(yōu)勢(shì)。
智能邊緣項(xiàng)目KubeEdge,名字來(lái)源于Kube + Edge,顧名思義就是依托Kubernetes的容器編排和調(diào)度能力,實(shí)現(xiàn)云邊協(xié)同、計(jì)算下沉、海量設(shè)備接入等。
AI引擎、JS引擎。
支持的CPU架構(gòu)單一。
2.5 Zephyr
Zephy是2016年由Intel、Synopsys、NXP等公司發(fā)起的開(kāi)源實(shí)時(shí)操作系統(tǒng)平臺(tái)項(xiàng)目,現(xiàn)在由Linux基金會(huì)管理。Zephyr是一款小型且可擴(kuò)展的操作系統(tǒng),尤其適用于資源受限的硬件系統(tǒng),可支持多種架構(gòu)。
OS特點(diǎn)如下:
起點(diǎn)很高,來(lái)自風(fēng)河的成熟代碼。
代碼結(jié)構(gòu)和Linux內(nèi)核很相似。
支持的CPU架構(gòu)豐富。
安全設(shè)計(jì)方面,支持用戶態(tài)/內(nèi)核態(tài);支持MPU;內(nèi)核對(duì)象權(quán)限模型。
支持TEE,Armv8-M trustzone。
功能安全,打算通過(guò)IEC 61508和ISO 26262認(rèn)證。
中間件豐富,支持很多協(xié)議。
2.6 Mbed OS
2014年,ARM發(fā)布了Mbed OS,試圖基于Mbed OS建立一個(gè)龐大的物聯(lián)網(wǎng)生態(tài),以此來(lái)連接硬件廠商、軟件服務(wù)商、云服務(wù)商以及開(kāi)發(fā)者社區(qū)。OS特點(diǎn)如下。
面向ARM Cortex-M系列處理器。
版本從1.0、2.0、3.0,然后直接到5.0,6.0在計(jì)劃中。
模塊化的可配置軟件棧,不配置則排除不必要的軟件組件,進(jìn)而降低內(nèi)存要求。
使用C++作為程序設(shè)計(jì)語(yǔ)言。
在線編譯,或者導(dǎo)出工程,用其他IDE編譯,部分源碼不開(kāi)放。
內(nèi)核uVisor運(yùn)行在特權(quán)模式,內(nèi)核創(chuàng)建隔離的安全域,安全域?qū)?nèi)存和外設(shè)的訪問(wèn)權(quán)限有限制。
支持ARM PSA架構(gòu)。
2017年ARM推出了mbed Edge,與mbed Cloud和mbed OS組成邊緣計(jì)算的 IoT 方案 。
云服務(wù)pelion 也是在國(guó)外,影響了國(guó)人的使用。
2.7 AWorksOS
AWorksOS是ZLG(周立功,廣州致遠(yuǎn)電子)歷時(shí)12年開(kāi)發(fā)的工業(yè)智能物聯(lián)開(kāi)發(fā)平臺(tái),特點(diǎn)如下。
AWorksOS是不開(kāi)源的,內(nèi)部核心功能組件都是以庫(kù)的形式提供,相關(guān)接口通過(guò)頭文件引出。
AWorksOS以SDK方式發(fā)布,伴隨著特定開(kāi)發(fā)板,SDK中包含了文檔、工具、示例代碼、模版工程等。
OS的發(fā)展,依托ZLG的AWTK開(kāi)源GUI引擎。
分為“核心域”和“非核心域”,即“業(yè)務(wù)”和“技術(shù)”, 非核心域包括底層驅(qū)動(dòng)、操作系統(tǒng)和組件;開(kāi)發(fā)者忽略產(chǎn)品底層技術(shù)細(xì)節(jié),專注“核心域”。
將MCU和OS的共性抽象為統(tǒng)一接口,應(yīng)用實(shí)現(xiàn)“一次編程,終生使用,跨平臺(tái)”。
支持的CPU很少,目前有ARM Cortex-M4/M7/A7,ARM9。
2.8 HybridOS
合璧操作系統(tǒng)(HybridOS)是北京飛漫軟件于 2018 年 11 月發(fā)起的一個(gè)全新的開(kāi)源項(xiàng)目。HybridOS 的目標(biāo)是為物聯(lián)網(wǎng)設(shè)備和云計(jì)算環(huán)境打造一個(gè)全新的操作系統(tǒng),特點(diǎn)如下。
2019.11.18發(fā)布了第一個(gè)組件hiCairo;2019.12.10發(fā)布了了2D/3D的圖形組件,包括hiMesa、hiDRM、hiDRMDrivers、以及hiCairo,這些和MiniGUI(最初由飛漫軟件創(chuàng)始人魏永明開(kāi)發(fā),20年的發(fā)展歷程,為 IoT 智能設(shè)備和嵌入式系統(tǒng)提供圖形界面及交互實(shí)現(xiàn))一起組成了HybridOS的圖形棧;2020.3.29,隨著MiniGUI 5.0的發(fā)布,HybridOS也升級(jí)了圖形棧。
為IOT網(wǎng)絡(luò)中的虛擬計(jì)算節(jié)點(diǎn)設(shè)計(jì),故可運(yùn)行在設(shè)備端、云端、客戶端。
提供云端和客戶端的接口,以及設(shè)備端與這兩者通訊的協(xié)議棧。
支持python、JavaScipt、C/C++。
依托MiniGUI,增加數(shù)據(jù)庫(kù),以及其它復(fù)雜的圖形處理。
2019.9.19宣布MiniGUI4.0.2支持RT-Thread,但是沒(méi)找到相關(guān)驗(yàn)證的源碼。
系統(tǒng)組件是damon進(jìn)程;網(wǎng)絡(luò)通信等協(xié)議棧作為系統(tǒng)的服務(wù)。
3 AI+IOT對(duì)操作系統(tǒng)提出的新課題
移動(dòng)操作系統(tǒng)Android和Linux,無(wú)法滿足工業(yè)安全認(rèn)證和實(shí)時(shí)性要求;傳統(tǒng)的嵌入式操作系統(tǒng)無(wú)法滿足系統(tǒng)擴(kuò)展、維護(hù)和應(yīng)用的便捷需求;針對(duì)智能物聯(lián)網(wǎng)(AIOT,AI+IOT)場(chǎng)景的廣義的嵌入式操作系統(tǒng)和泛IOT OS技術(shù)正在探索和研究中[6]。
智能物聯(lián)網(wǎng)是2018年興起的概念[7],是人工智能與物聯(lián)網(wǎng)的協(xié)同應(yīng)用,人工智能使物聯(lián)網(wǎng)獲取感知與識(shí)別能力,物聯(lián)網(wǎng)為人工智能提供訓(xùn)練算法的數(shù)據(jù)。AIOT中系統(tǒng)通過(guò)各種信息傳感器實(shí)時(shí)采集各類信息(一般是在監(jiān)控、互動(dòng)、連接情景下的),在終端設(shè)備、邊緣域或云中心通過(guò)機(jī)器學(xué)習(xí)對(duì)數(shù)據(jù)進(jìn)行智能分析,包括定位、對(duì)比、預(yù)測(cè)、調(diào)度等。
AIOT中終端設(shè)備還需要具備智能特性,預(yù)計(jì)未來(lái)IOT OS會(huì)向著兩個(gè)方向發(fā)展,一是大型、復(fù)雜、可配置,二是更小、更安全、硬化,則IOT OS需要滿足如下要求。
1)云端協(xié)同/邊緣計(jì)算架構(gòu)
云端人工智能技術(shù)如何透過(guò)邊緣計(jì)算與設(shè)備節(jié)點(diǎn)的 IOT OS結(jié)合起來(lái)[2];邊緣節(jié)點(diǎn)管理和控制該場(chǎng)景中各種物聯(lián)網(wǎng)設(shè)備和計(jì)算硬件[8],同時(shí)也支撐該場(chǎng)景中的應(yīng)用層業(yè)務(wù)需求,提供基本的安全性。
2)人工智能,終端智能化,具備感知和交互能力
AI引擎,JS引擎,音頻、圖像算法。
3)終端虛擬化
輕量級(jí)容器。
4)功能安全
通過(guò)工業(yè)級(jí)認(rèn)證,IEC 61508和ISO 26262。
5)信息安全
內(nèi)核高度安全,通過(guò)形式化認(rèn)證和安全認(rèn)證[9],ARM Cortex-M33/M35P軟核通過(guò)了EAL6+
認(rèn)證[10]。內(nèi)核支持用戶態(tài)/特權(quán)態(tài);進(jìn)程MPU隔離;內(nèi)核對(duì)象權(quán)限。
6)可信物聯(lián)網(wǎng),數(shù)據(jù)可信
結(jié)合區(qū)塊鏈技術(shù)[11],確保端到端數(shù)據(jù)可信。終端、邊緣、后端基礎(chǔ)設(shè)施(云端)、后端應(yīng)用程序的數(shù)據(jù)傳遞,確保可信。
7)可擴(kuò)展的內(nèi)核
大型、復(fù)雜、可配置:支持X86、ARM Cortex-A系列;
更小、更安全、硬化:支持極簡(jiǎn)的MCU等資源受限的設(shè)備。
8)APP單獨(dú)管理
多BIN特征,內(nèi)核、框架層、應(yīng)用三個(gè)BIN文件,應(yīng)用層不關(guān)心硬件。
9)高級(jí)語(yǔ)言支持
Micropython,JavaScript。
10)豐富的UI
占用資料少、界面流暢度高。
11)OS抽象層
支持POSIX、CMSIS RTOS
作者:wangyw
文章來(lái)源:博客園
審核編輯 黃昊宇
-
IOT
+關(guān)注
關(guān)注
187文章
4210瀏覽量
196795 -
物聯(lián)網(wǎng)操作系統(tǒng)
+關(guān)注
關(guān)注
3文章
114瀏覽量
13363 -
智能物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
0文章
77瀏覽量
6410 -
IoT OS
+關(guān)注
關(guān)注
0文章
2瀏覽量
3790
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論