小米官宣IoT平臺(tái)全面開(kāi)源:打造全生態(tài)系統(tǒng)澎湃OS能否成功?
11月16日,小米在「2023小米IoT生態(tài)伙伴大會(huì)」上宣布全面開(kāi)源Xiaomi Vela,Vela一詞源自拉丁語(yǔ)中船帆的含義,也是南方星空中最亮的星座之一。
本文引用地址:http://2s4d.com/article/202311/453158.htmXiaomi Vela是小米基于開(kāi)源實(shí)時(shí)操作系統(tǒng)NuttX打造的物聯(lián)網(wǎng)嵌入式軟件平臺(tái),能夠在各種物聯(lián)網(wǎng)硬件平臺(tái)上提供統(tǒng)一的軟件服務(wù),支持豐富的組件和易用的框架,打通碎片化的物聯(lián)網(wǎng)應(yīng)用場(chǎng)景。
加強(qiáng)物聯(lián)網(wǎng)領(lǐng)域的競(jìng)爭(zhēng)力
Xiaomi Vela遵循Apache 2.0開(kāi)源協(xié)議,對(duì)個(gè)人開(kāi)發(fā)者開(kāi)放模組、擴(kuò)展程序、互聯(lián)互通、小愛(ài)語(yǔ)音控制、開(kāi)發(fā)者社區(qū)等,將于12月1日正式開(kāi)放1000名內(nèi)測(cè)名額。
其實(shí)Xiaomi Vela三年前就出現(xiàn)了,它是小米在2020年11月推出的物聯(lián)網(wǎng)軟件平臺(tái),基于開(kāi)源實(shí)時(shí)操作系統(tǒng)(Embedded RTOS)NuttX開(kāi)發(fā)而成。NuttX是由Gregory Nutt在2007年開(kāi)源的操作系統(tǒng)核心,并在2019年被捐獻(xiàn)給Apache軟件基金會(huì)進(jìn)行商業(yè)化。
Xiaomi Vela繼承了NuttX系統(tǒng)的優(yōu)點(diǎn),并在此基礎(chǔ)上進(jìn)行了改進(jìn)和擴(kuò)展 —— 原生支持POSIX接口的兼容,這意味著可以方便地移植Linux平臺(tái)的開(kāi)源庫(kù)和組件,為開(kāi)發(fā)者提供了更加便利的開(kāi)發(fā)環(huán)境;同時(shí),對(duì)系統(tǒng)資源的要求較小,但提供了與Linux系統(tǒng)相近的功能和性能,這意味著開(kāi)發(fā)者可以在相對(duì)較低的成本下獲得高性能的物聯(lián)網(wǎng)應(yīng)用。
為什么選擇NuttX?
POSIX標(biāo)準(zhǔn)原生支持:NuttX對(duì)POSIX API有原生支持,極大的簡(jiǎn)化開(kāi)源軟件移植,方便代碼復(fù)用,而其它RTOS通常只兼容少部分的POSIX接口,需要適配層把POSIX API轉(zhuǎn)成內(nèi)部API。
模塊化設(shè)計(jì):所有組件甚至組件內(nèi)部特性,都可以通過(guò)配置Kconfig來(lái)調(diào)整或關(guān)閉,可按需對(duì)系統(tǒng)進(jìn)行裁剪,適用于不同產(chǎn)品形態(tài)。
代碼精簡(jiǎn):所有組件都是從頭編碼,專門對(duì)代碼和數(shù)據(jù)做了優(yōu)化設(shè)計(jì),NuttX實(shí)現(xiàn)了傳統(tǒng)操作系統(tǒng)的所有功能,但是最終生成的代碼尺寸還是可以很?。ㄗ钚∨渲貌坏?2KB,最大配置不超過(guò)256KB)。
功能完整度高:NuttX本身提供了豐富的OS組件,集成了文件系統(tǒng)、網(wǎng)絡(luò)協(xié)議棧、圖形庫(kù)和驅(qū)動(dòng)框架。
從縱向看,NuttX和傳統(tǒng)操作系統(tǒng)一樣由調(diào)度子系統(tǒng)、文件子系統(tǒng)、網(wǎng)絡(luò)子系統(tǒng)、圖形子系統(tǒng)和驅(qū)動(dòng)子系統(tǒng)組成;從橫向看,NuttX向上給應(yīng)用程序提供了POSIX和ANSI定義的標(biāo)準(zhǔn)C/C++接口。
對(duì)于沒(méi)有標(biāo)準(zhǔn)化的組件(比如各種外設(shè)),NuttX通常會(huì)提供兼容Linux的API。向下NuttX定義了Arch API、塊設(shè)備驅(qū)動(dòng)接口、網(wǎng)卡驅(qū)動(dòng)接口、display驅(qū)動(dòng)接口,以及各種總線和外設(shè)的lower half驅(qū)動(dòng)接口,使得芯片廠商能夠規(guī)范、快速地完成移植工作。下圖中數(shù)量眾多的藍(lán)色模塊就是NuttX實(shí)現(xiàn)的各種功能。
NuttX的系統(tǒng)架構(gòu)子系統(tǒng)介紹
Xiaomi Vela的系統(tǒng)架構(gòu)
Xiaomi Vela的底層NuttX內(nèi)核:提供最基本的任務(wù)調(diào)度、跨進(jìn)程間通信、文件系統(tǒng)等基礎(chǔ)OS功能,同時(shí)也提供簡(jiǎn)潔高效的設(shè)備驅(qū)動(dòng)、輕量級(jí)的TCP/IP協(xié)議棧和電源管理等組件。
Xiaomi Vela的應(yīng)用框架:分為上下兩層。上層是針對(duì)不同的物聯(lián)網(wǎng)應(yīng)用而開(kāi)發(fā)的定制,其中包括多媒體應(yīng)用框架、傳感器應(yīng)用框架、Cloud SDK和AI SDK等。多媒體應(yīng)用框架提供了音頻、視頻等多媒體處理能力,開(kāi)發(fā)者可以利用這些能力開(kāi)發(fā)出音視頻播放、錄制等應(yīng)用;傳感器應(yīng)用框架則提供了與各種傳感器交互的接口和方法,開(kāi)發(fā)者可以方便地獲取傳感器數(shù)據(jù)并進(jìn)行處理;Cloud SDK和AI SDK提供了與云平臺(tái)和人工智能技術(shù)相關(guān)的接口和工具,使得開(kāi)發(fā)者能夠?qū)⑽锫?lián)網(wǎng)設(shè)備與云端進(jìn)行連接,并實(shí)現(xiàn)更加智能化的功能。
下層是為擴(kuò)展系統(tǒng)服務(wù)提供支持,包括藍(lán)牙連接、OTA服務(wù)、數(shù)據(jù)本地存儲(chǔ)服務(wù)、安全服務(wù),以及圖形用戶界面和腳本語(yǔ)言的支持等。藍(lán)牙連接框架使得物聯(lián)網(wǎng)設(shè)備可以與其他設(shè)備進(jìn)行無(wú)線連接,實(shí)現(xiàn)設(shè)備之間的數(shù)據(jù)交互;OTA服務(wù)框架則為設(shè)備的遠(yuǎn)程升級(jí)提供了支持,開(kāi)發(fā)者可以通過(guò)OTA服務(wù)框架對(duì)設(shè)備進(jìn)行固件升級(jí),提供更好的用戶體驗(yàn);數(shù)據(jù)本地存儲(chǔ)服務(wù)框架提供了對(duì)設(shè)備本地?cái)?shù)據(jù)的管理和存儲(chǔ)能力,開(kāi)發(fā)者可以方便地進(jìn)行數(shù)據(jù)的存儲(chǔ)和讀??;安全服務(wù)框架則保障了物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù)安全和通信安全,提供了加密、認(rèn)證等安全機(jī)制;圖形用戶界面和腳本語(yǔ)言的支持使得開(kāi)發(fā)者可以通過(guò)圖形界面進(jìn)行交互式開(kāi)發(fā),并通過(guò)腳本語(yǔ)言實(shí)現(xiàn)更加靈活的應(yīng)用邏輯。
Xiaomi Vela的開(kāi)發(fā)者工具:除了常見(jiàn)的Logger和Debugger工具,還提供Emulator工具來(lái)幫助開(kāi)發(fā)者提升調(diào)試效率,使用Emulator開(kāi)發(fā)者可以利用PC端豐富的調(diào)試工具和調(diào)試信息,降低嵌入式系統(tǒng)開(kāi)發(fā)和調(diào)試的難度。
Xiaomi Vela快應(yīng)用開(kāi)發(fā)工具
隨Xiaomi Vela一同發(fā)布的還有Aiot-IDE,官方稱這是用于開(kāi)發(fā)Xiaomi Vela快應(yīng)用的工具,在小米智能穿戴(Wearable)設(shè)備上進(jìn)行應(yīng)用開(kāi)發(fā),此類應(yīng)用統(tǒng)稱為Xiaomi Vela快應(yīng)用,允許一次開(kāi)發(fā)多設(shè)備運(yùn)行。Aiot-IDE基于VS Code進(jìn)行開(kāi)發(fā),此外快應(yīng)用的開(kāi)發(fā)也類似網(wǎng)頁(yè)開(kāi)發(fā)。
點(diǎn)擊運(yùn)行,可以啟動(dòng)模擬器,快應(yīng)用代碼可以直接跑起來(lái);點(diǎn)擊調(diào)試,也可以啟動(dòng)模擬器,并且打開(kāi)調(diào)試窗口,調(diào)試窗口與chrome調(diào)試面板類似;點(diǎn)擊打包,可以將快應(yīng)用代碼打包成一個(gè)測(cè)試的rpk包;點(diǎn)擊發(fā)布,可以將快應(yīng)用代碼打包成一個(gè)正式的rpk包。
隨著物聯(lián)網(wǎng)應(yīng)用的不斷增多和復(fù)雜性的提升,操作系統(tǒng)需要更好地支持設(shè)備之間的互聯(lián)互通,并提供更強(qiáng)大的安全性和穩(wěn)定性。小米推出Vela系統(tǒng)是為了加強(qiáng)其在物聯(lián)網(wǎng)領(lǐng)域的競(jìng)爭(zhēng)力。
除了Xiaomi Vela,小米在物聯(lián)網(wǎng)領(lǐng)域還有其他的布局和產(chǎn)品。小米推出了一系列智能家居產(chǎn)品,如智能攝像頭、智能插座、智能燈泡等,這些產(chǎn)品可以通過(guò)Vela實(shí)現(xiàn)互聯(lián)互通。其次,小米還開(kāi)展了智能穿戴設(shè)備的研發(fā),如智能手環(huán)、智能手表等,這些設(shè)備也可以通過(guò)Vela系統(tǒng)與其他智能設(shè)備進(jìn)行數(shù)據(jù)交互和控制。
此外,小米還在智能汽車領(lǐng)域有所布局,推出了小米汽車解決方案,以實(shí)現(xiàn)智能車聯(lián)網(wǎng)。最新消息顯示,11月15日,在工信部發(fā)布的新產(chǎn)品公示中,兩款小米的純電動(dòng)轎車在列,顯示企業(yè)名稱為“北京汽車集團(tuán)越野車有限公司”,意味著小米的首車SU7可能會(huì)先和北汽合作生產(chǎn)。
小米對(duì)于物聯(lián)網(wǎng)的戰(zhàn)略是通過(guò)提供完整的生態(tài)系統(tǒng),以滿足用戶在不同場(chǎng)景下的物聯(lián)網(wǎng)需求,結(jié)合眼下小米汽車的推出,小米“人車家”全生態(tài)即將完成閉環(huán),聯(lián)動(dòng)已蓄勢(shì)待發(fā)。Xiaomi Vela即可以用來(lái)滿足小米在物聯(lián)網(wǎng)領(lǐng)域的需求,也成功將汽車、手機(jī)和穿戴等設(shè)備聯(lián)連成一張網(wǎng)。
HyperOS的誕生
在萬(wàn)物互聯(lián)時(shí)代,各種設(shè)備涉及的操作系統(tǒng)分支之復(fù)雜、數(shù)量之龐大,不同系統(tǒng)及協(xié)議之間造成的生態(tài)連接隔閡,可能超過(guò)了很多人的想象。如何將MIUI、Vela、Mina、車機(jī)OS四個(gè)系統(tǒng)進(jìn)行融合,小米已經(jīng)到了需要跨越的時(shí)刻。
當(dāng)小米澎湃OS正式版在10月17日完成封包后,雷軍第一時(shí)間通過(guò)微博向外官宣。而這項(xiàng)工作,小米從2017年就已經(jīng)開(kāi)始了,目標(biāo)就是以一套融合的系統(tǒng)框架統(tǒng)一支持全生態(tài)設(shè)備與應(yīng)用,才有了今天的澎湃OS(HyperOS)。澎湃OS是基于AOSP和Vela的融合系統(tǒng),根據(jù)小米官方的說(shuō)法,澎湃OS是基于深度進(jìn)化的Android以及自研的Vela系統(tǒng)融合,重寫底層構(gòu)架,和華為鴻蒙OS相似。
在內(nèi)核層,澎湃OS融合了Linux原生內(nèi)核和自研的Vela內(nèi)核,重構(gòu)了性能調(diào)度、任務(wù)管理、內(nèi)存管理、文件管理等各個(gè)基礎(chǔ)模塊,支持200多個(gè)處理器平臺(tái)、20多種文件系統(tǒng)。另外,經(jīng)過(guò)深入內(nèi)核的底層重構(gòu),澎湃OS罕見(jiàn)地將出廠固件控制在8.75GB以下,對(duì)比蘋果iOS當(dāng)前的固件大小為11.36GB。
在系統(tǒng)內(nèi)核層之上的服務(wù)與框架層,澎湃OS并沒(méi)有舍棄Android服務(wù),而是將其服務(wù)框架和自研Vela系統(tǒng)的服務(wù)框架,都納入其中:全新打造了8大子系統(tǒng),并且其中全新的AI子系統(tǒng)融合大模型能力,成為整個(gè)系統(tǒng)的“智能大腦”。
而HyperConnect跨端層,澎湃OS則是打破了硬件設(shè)備的隔閡,讓所有設(shè)備可以統(tǒng)一連接協(xié)議,并且實(shí)時(shí)通信,最終構(gòu)建“人車家”全生態(tài)的智能世界。在整個(gè)OS搭建過(guò)程中分歧點(diǎn)主要是在汽車OS的架構(gòu)設(shè)計(jì)上,相較于手機(jī)和IoT終端,車機(jī)OS搭建就要顯得復(fù)雜很多,例如主動(dòng)駕駛、座艙的屏幕、車機(jī)互聯(lián)以及底層的車控設(shè)計(jì)到大量的整合,是一個(gè)龐大的工程問(wèn)題。
值得一提的是,澎湃OS打造了貫穿內(nèi)核層、服務(wù)框架層、跨端層的全端安全系統(tǒng),尤其是內(nèi)核層啟用了完全獨(dú)立的「自研微內(nèi)核安全系統(tǒng)」,保障了安全從最底層實(shí)現(xiàn)。
澎湃OS與MIUI的區(qū)別
澎湃OS相較于MIUI有著明顯的區(qū)別。MIUI作為小米早期推出的系統(tǒng),雖然在用戶群體中很受歡迎,但隨著小米生態(tài)設(shè)備種類的增多,MIUI的版本也變得越來(lái)越多樣化,與物聯(lián)網(wǎng)設(shè)備的兼容性也變得不穩(wěn)定。這導(dǎo)致了用戶在使用不同設(shè)備時(shí),界面和體驗(yàn)上的不一致性,影響了整體的用戶體驗(yàn)。為了解決這個(gè)問(wèn)題,小米推出了澎湃OS。
澎湃OS通過(guò)基于深度定制的安卓系統(tǒng)與Vela系統(tǒng)的整合,實(shí)現(xiàn)了所有小米設(shè)備的統(tǒng)一操作界面和使用體驗(yàn)。澎湃OS不僅適配小米手機(jī),還能應(yīng)用于小米的各類生態(tài)設(shè)備,如小米電視、空調(diào)、冰箱、洗衣機(jī)等。這樣一來(lái),不論用戶使用何種小米設(shè)備,都能享受到統(tǒng)一的操作界面、一致的交互邏輯和流暢的使用體驗(yàn),解決了MIUI系統(tǒng)碎片化的問(wèn)題,為小米品牌的一體化發(fā)展打下了基礎(chǔ)。
可以看出,小米已經(jīng)在為擴(kuò)大澎湃OS的生態(tài)體系,通過(guò)開(kāi)源平臺(tái)、能力開(kāi)放等吸引更多軟硬件合作伙伴接入。然而,想要獲得更多軟硬件廠商和開(kāi)發(fā)者的認(rèn)可,“姍姍來(lái)遲”的小米澎湃OS,要經(jīng)歷市場(chǎng)與時(shí)間的雙重檢驗(yàn)。
從Xiaomi Vela開(kāi)源來(lái)看,采取的是農(nóng)村包圍城市的思想,先從IoT終端入手后,慢慢發(fā)展為可以通過(guò)基礎(chǔ)通訊協(xié)議跟小米的所有產(chǎn)品互聯(lián)。至于小米Vela開(kāi)源之路還是很漫長(zhǎng)的,以開(kāi)源鴻蒙OS系統(tǒng)為例,到現(xiàn)在來(lái)說(shuō)也是屬于起步的狀態(tài)。
從手機(jī)到家居再到汽車都在進(jìn)入急速串聯(lián)的探索期,缺失自研系統(tǒng)意味著無(wú)法在智能家居及智能汽車領(lǐng)域真正掌握主動(dòng)權(quán)。而要實(shí)現(xiàn)全線自研,擺脫安卓,不僅需要時(shí)間和技術(shù),更要解決用戶習(xí)慣改變、應(yīng)用兼容性和生態(tài)鏈建設(shè)等問(wèn)題。
至于澎湃OS是自研還是基于安卓深度定制的問(wèn)題已經(jīng)不那么重要了。畢竟,由于AOSP本身是開(kāi)源免費(fèi)的,小米可以自由使用、不受限制,澎湃OS已經(jīng)是屬于小米自己的東西,其發(fā)展不再受限于安卓系統(tǒng)的制約。
那么,新系統(tǒng)將于何時(shí)適配小米現(xiàn)有產(chǎn)品,哪些型號(hào)可以“嘗鮮”?據(jù)悉,國(guó)內(nèi)版首批設(shè)備將于今年12月開(kāi)始推送正式版,包括手機(jī)、平板、電視、攝像機(jī)等六大品類。
評(píng)論