華為鴻蒙操作系統(tǒng)全景解構(gòu)

從技術(shù)、生態(tài)兩角度看,操作系統(tǒng)對于 ICT 廠商而言具有重要意義,鴻蒙操作系統(tǒng)的推出,對華為、對我國自主可控進程的意義不言而喻。
微內(nèi)核、方舟編譯器是鴻蒙生態(tài)的兩大核心要素。微內(nèi)核更適應(yīng)復(fù)雜的程序功能,且能夠更靈活地移植至不同硬件平臺;方舟編譯器通過將編譯過程提前至開發(fā)者環(huán)節(jié)提升應(yīng)用執(zhí)行效率,這一點對于多終端尤其是物聯(lián)網(wǎng)邊緣計算而言尤為重要。結(jié)合以上兩大要素看,鴻蒙生而為 IoT 設(shè)計。
車聯(lián)網(wǎng)、智慧城市、工業(yè)是華為 IoT 的三大應(yīng)用方向,目前三大應(yīng)用成熟度各有不同,鴻蒙操作系統(tǒng)預(yù)計將在三大領(lǐng)域起催化作用。
本文參考自“華為鴻蒙操作系統(tǒng)全景解構(gòu)”報告,全文詳細(xì)介紹微內(nèi)核、方舟編譯器兩大鴻蒙生態(tài)核心要素,以及鴻蒙完善的IoT生態(tài),目錄和下載鏈接如下:

操作系統(tǒng)(OS,Operating System)是管理計算機軟硬件資源的“大腦”。常見 ICT系統(tǒng)包括硬件和軟件兩部分,軟件又可分為操作系統(tǒng)軟件和應(yīng)用軟件。其中操作系統(tǒng)是介于硬件和應(yīng)用軟件之間的一層重要部分,是管理分配硬件資源、實現(xiàn)應(yīng)用軟件功能的重要載體。操作系統(tǒng)在 ICT 領(lǐng)域扮演重要角色,其作用可從技術(shù)、生態(tài)兩方面佐證:
(1)技術(shù)角度看,操作系統(tǒng)在程序運行的過程中起重要作用。
一般而言,軟件程序的運行需要四大要素:程序設(shè)計語言、編譯系統(tǒng)、操作系統(tǒng)、指令集。粗略理解:
①程序設(shè)計語言是編程的工具基礎(chǔ),包括常見的 C、C++、Java、C#等;
②編譯系統(tǒng)的作用是將編寫好的程序語言“翻譯”成機器能夠識別的二進制碼;
③操作系統(tǒng)是調(diào)度資源、執(zhí)行程序的“大腦”;
④指令集則決定了程序以何種方式來執(zhí)行。
可作以下類比:硬件相當(dāng)于高速公路、鐵路等基礎(chǔ)設(shè)施資源,軟件相當(dāng)于駕駛員/旅客,而操作系統(tǒng)則相當(dāng)于各種類型的交通工具。汽車、火車等交通工具借助公路、鐵路等基礎(chǔ)設(shè)施得以行駛,駕駛員/旅客在交通工具上方能到達(dá)不同目的地。操作系統(tǒng)則是向下對接硬件,使硬件資源的存在有實際意義,同時向上承載各類應(yīng)用程序,得以實現(xiàn)各種應(yīng)用功能;編譯系統(tǒng)在程序運行的過程中,起到方向盤或?qū)Ш絻x的作用,將駕駛員(軟件)的操作(程序指令)轉(zhuǎn)化為車輛的位移(機器語言)。

(2)生態(tài)角度看,總結(jié) Win-tel 與我國自主可控歷程,操作系統(tǒng)廠商處于 ICT 產(chǎn)業(yè)鏈的核心環(huán)節(jié)。
Win-tel 聯(lián)盟下,微軟股價隨 Win95、WinXP 等版本的發(fā)布屢創(chuàng)新高。1980s 微軟與英特爾組成 Win-tel 聯(lián)盟,使得 Windows 系統(tǒng)搭配 x86 的 Intel 處理器成為 PC 領(lǐng)域的絕對主流,二者結(jié)合后,在軟硬件版本迭代、生產(chǎn)、銷售等環(huán)節(jié)協(xié)同,一時形成“雙寡頭壟斷”的格局。1995 年 Win95 的發(fā)布首創(chuàng)了“桌面”的概念,使人機交互界面更加友好;Windows XP 的發(fā)布進一步穩(wěn)固了微軟在操作系統(tǒng)領(lǐng)域的領(lǐng)先地位。
盡管芯片是 ICT 生態(tài)的底層核心,但 Windows 背后龐大的應(yīng)用生態(tài)決定了微軟對芯片商有較高話語權(quán)。微軟于 2018 年公布 Win10 操作系統(tǒng)已擁有 3500 萬個應(yīng)用、超 1.75億個軟件版本,支持 1600 萬個硬件/驅(qū)動組合。微軟三十余年積累海量開發(fā)者,擁有龐大的應(yīng)用基礎(chǔ),因此對芯片架構(gòu)的選擇擁有一定話語權(quán)。在 x86 以外微軟已針對 ARM 架構(gòu)推出新一代操作系統(tǒng),英特爾以外的芯片商將受益 Win 生態(tài)的拓展。
另外,ICT 領(lǐng)域自主可控不僅體現(xiàn)在以芯片為代表的硬件層,更需要操作系統(tǒng)帶動生態(tài)可持續(xù)?!盎A(chǔ)軟件的短板主要在操作系統(tǒng),芯片的短板主要在 EDA(電子設(shè)計自動化)設(shè)計工具等領(lǐng)域”。芯片層的創(chuàng)新與投入一直是產(chǎn)業(yè)與資本的關(guān)注重點,但持續(xù)研發(fā)需要商用以及操作系統(tǒng)帶動應(yīng)用軟件同步推進,如果沒有商用階段的現(xiàn)金流再投資,則芯片層的創(chuàng)新難以持續(xù)迭代。

華為“鴻蒙”概念的公開時點雖受到外部環(huán)境影響,但實際已積淀大量商用經(jīng)驗。鴻蒙操作系統(tǒng)的發(fā)布時點體現(xiàn)重大意義,但并非是“從無到有”的過程,2012 年華為就已開發(fā)物聯(lián)網(wǎng)操作系統(tǒng) LiteOS,并在可穿戴設(shè)備、智能家居、車聯(lián)網(wǎng)、LPWA 等領(lǐng)域應(yīng)用,是鴻蒙操作系統(tǒng)的雛形。

LiteOS 解決物聯(lián)網(wǎng)應(yīng)用成本、連接、安全三大痛點,體現(xiàn)華為早期就已探索布局 IoT領(lǐng)域。
(1)低成本、低功耗。物聯(lián)網(wǎng)需要海量終端接入,且大多數(shù)邊緣設(shè)備為小型化、可移動,因此對續(xù)航能力與單位成本提出較高要求。LiteOS 內(nèi)核小于 10k,同時通過 MCU 和通信模組二合一的 OpenCPU 架構(gòu),能夠顯著降低終端體積和終端成本。且超低功耗,甚至 1 節(jié) 5 號電池可工作 5 年。
(2)連接多樣。物聯(lián)網(wǎng)終端在不同場景下需要不同形式的網(wǎng)絡(luò)連接,尤其進入到 5G時代后,對系統(tǒng)的連接性能和兼容性要求嚴(yán)格。連接拓展性能強,支持 6LoWPAN、WiFi、BTE、Zigbee 等多種協(xié)議,且設(shè)備間可以自組網(wǎng)、自發(fā)現(xiàn)、互操作,能夠滿足物聯(lián)網(wǎng)應(yīng)用的不同連接需求。
(3)安全。物聯(lián)網(wǎng)邊緣計算需要“云”+“端”協(xié)同,互聯(lián)互通后數(shù)據(jù)泄露成為物聯(lián)網(wǎng)系統(tǒng)的重大隱患。LiteOS 以極小體積的內(nèi)核實現(xiàn)了雙向認(rèn)證、差分升級、DTLS/DTLS+等機制。

未來成熟商用的LiteOS 將逐步融入鴻蒙操作系統(tǒng),逐步增強鴻蒙生態(tài)的多終端開發(fā)能力。在鴻蒙之前,華為已形成 HiLink(連接標(biāo)準(zhǔn))+LiteOS(操作系統(tǒng))+芯片(算力)的IoT“三件套”體系。進一步 LiteOS 與鴻蒙結(jié)合,將在 IoT 領(lǐng)域形成強大合力。

鴻蒙從設(shè)計之初就為多終端(如邊緣計算 IoT、服務(wù)器等)而生,微內(nèi)核、方舟編譯器作為鴻蒙操作系統(tǒng)生態(tài)的兩大核心要素。微內(nèi)核乃操作系統(tǒng)的一種結(jié)構(gòu)形式,將系統(tǒng)實現(xiàn)各功能的模塊化,更靈活,易于拓展、易于維護與更新迭代;編譯器可視為人與機器的“翻譯”,將人的程序語言翻譯給計算機可理解并執(zhí)行,是人與計算機之間實現(xiàn)溝通的橋梁。


微內(nèi)核與宏內(nèi)核相對應(yīng),是操作系統(tǒng)的一種結(jié)構(gòu)形式。操作系統(tǒng)的核心功能包括文件系統(tǒng)、內(nèi)存和 I/O 設(shè)備管理、CPU 調(diào)度等,宏內(nèi)核即指操作系統(tǒng)將上述功能全部“打包集成”在內(nèi)核里,不同的功能模塊之間耦合度高,所以具有高效率的優(yōu)點,代表系統(tǒng)包括 Linux、Unix 等)。微內(nèi)核則將系統(tǒng)分為各個小的功能模塊,僅將最核心的調(diào)度、內(nèi)存管理功能保留在內(nèi)核中,驅(qū)動、文件系統(tǒng)等以“外部模塊”的形式與內(nèi)核連接,相應(yīng)的優(yōu)勢是易于拓展、易于維護與更新、穩(wěn)定性高,代表系統(tǒng)包括 Windows、Mac OS X 等。

鴻蒙微內(nèi)核從底層即為物聯(lián)網(wǎng)設(shè)計。上述可知,微內(nèi)核的最大特性是僅在內(nèi)核中保留最核心功能,因此對于鴻蒙而言:連接實時性更好(響應(yīng)時延降低 25.7%、時延波動率降低 55.6%),同時結(jié)合 5G 低時延場景,尤其適用于工業(yè)控制、智能交通等物聯(lián)網(wǎng)領(lǐng)域;可以做到故障隔離,最大程度保證系統(tǒng)的穩(wěn)定性與安全性,在 5G 超多連接場景下更能滿足萬物互聯(lián)的要求。
鴻蒙微內(nèi)核體現(xiàn)分布式的特點,解決 IoT 生態(tài)協(xié)同的痛點。目前已有操作系統(tǒng)基本只對應(yīng)于某一種硬件,如 Windows 對應(yīng) x86 PC、iOS 對應(yīng)蘋果手機等。但 IoT 時代終端種類數(shù)量極大拓展,難以針對每種硬件分別開發(fā)操作系統(tǒng)或應(yīng)用程序,不同硬件終端的生態(tài)無法共享協(xié)同,開發(fā)效率低。而鴻蒙實現(xiàn)了硬件解耦,即可針對應(yīng)不同設(shè)備進行彈性部署(例如智慧屏、穿戴設(shè)備、車機、音箱、手機等)。同時創(chuàng)新的分布式軟總線使得擁有不同功能的硬件可以彼此協(xié)同。

微內(nèi)核是 IoT 操作系統(tǒng)演進方向,鴻蒙微內(nèi)核之效率、安全性業(yè)內(nèi)領(lǐng)先。一般微內(nèi)核系統(tǒng),由于驅(qū)動、文件系統(tǒng)等進程被外置,各模塊之間的通信需要經(jīng)過內(nèi)核“搭橋”,因而效率往往比宏內(nèi)核要低。但鴻蒙微內(nèi)核對進程間通信進行了高度優(yōu)化,使得鴻蒙相比QNX、Fuchisia 效率提升 3 至 5 倍。此外,由于微內(nèi)核的代碼數(shù)量遠(yuǎn)遠(yuǎn)少于宏內(nèi)核,因此鴻蒙能夠以對每行代碼進行充分的“形式化”的安全驗證,顯著提升了內(nèi)核安全性。
方舟編譯器最早系華為于 2019 年 4 月在 P30 系列手機發(fā)布會上公布,但實際積淀十年,定位是多終端系統(tǒng)。華為早期表示方舟編譯器將大幅提升手機端安卓系統(tǒng)的運行效率,而開發(fā)編譯器其實是協(xié)助鴻蒙操作系統(tǒng)更深層次布局邊緣計算、服務(wù)器等領(lǐng)域。對傳統(tǒng)編譯器而言,編譯時點、跨語言編譯是制約應(yīng)用程序執(zhí)行效率的瓶頸。應(yīng)用程序的執(zhí)行要經(jīng)過字節(jié)碼到機器碼的轉(zhuǎn)換,程序員在編程時使用上述 C、C++、Java、C#等程序語言,但硬件的執(zhí)行邏輯是基于 0 和 1 的二進制。因此要讓硬件能夠“讀懂”指令,就需要編譯器把“程序語言”轉(zhuǎn)譯成“機器語言”。
方舟編譯器對以上兩大瓶頸的解決方案是:將編譯過程提前至開發(fā)者環(huán)節(jié)。在安卓的體系下,一些復(fù)雜動態(tài)語義的編譯仍需交由虛擬機完成。方舟編譯器開發(fā)團隊通過梳理 Java的動態(tài)語義,進行了大規(guī)模的數(shù)據(jù)建模,尤其是在跨語言編譯時,大大提高了動態(tài)語義分析的精度;另外,華為設(shè)計了一套具有核心專利的動態(tài)語義匹配機制,有效降低了運行時動態(tài)語義的開銷。最終結(jié)果是,方舟編譯器能夠在應(yīng)用程序執(zhí)行之前,就將 Java 代碼編譯成機器語言,極大釋放了硬件資源,這一點對于多終端尤其是物聯(lián)網(wǎng)邊緣計算而言尤為重要。

方舟編譯器對開發(fā)者友好,利于形成良好生態(tài)。過去安卓等系統(tǒng)避免在開發(fā)者環(huán)節(jié)涉及編譯,一大原因是為了降低開發(fā)難度,開發(fā)者只需完成代碼編寫即可,而無需考慮如何跨語言編譯。但方舟方案下將編譯過程提前至開發(fā)環(huán)節(jié),并不增加開發(fā)者負(fù)擔(dān),相反開發(fā)者還能通過方舟預(yù)置算法進行代碼優(yōu)化,還可自行開發(fā)代碼優(yōu)化算法,未來代碼優(yōu)化甚至有可能遷移至云端。開發(fā)環(huán)境友好是鴻蒙搭建良好生態(tài)的重要因素。
對于方舟編譯器,也可類比如下:過去 ART 虛擬機搭配安卓系統(tǒng),相當(dāng)于經(jīng)驗豐富的司機駕駛傳統(tǒng)的手動擋汽車;而方舟編譯器搭配鴻蒙操作系統(tǒng),則相當(dāng)于搭載了 L4 級別自動駕駛的車輛,車輛行駛可以隨時根據(jù)車況、路況靈活調(diào)整,保證所有乘客的乘車體驗均為最佳。兼容 Java 和 C、C++等多種語言增強了鴻蒙即戰(zhàn)力,并與自有麒麟、鯤鵬等硬件架構(gòu)協(xié)同,形成類似 Win-tel 的軟硬件格局。
產(chǎn)業(yè)互聯(lián)網(wǎng)新藍(lán)海下,“華為之于物聯(lián)網(wǎng)”可類比“蘋果之于移動互聯(lián)網(wǎng)”。
①生態(tài)。鴻蒙與方舟編譯器將開源,擁抱海量開發(fā)者。以手機端為例,方舟編譯器與超過 40 個高質(zhì)量 App 合作,明顯優(yōu)化 Android 操作系統(tǒng)的流暢度。在更廣泛的 IoT 領(lǐng)域,方舟編譯器支持多語言統(tǒng)一編譯,也支持混合編程,實現(xiàn)“一次編程,多端使用”,極大降低了開發(fā)者負(fù)擔(dān)(例如對于某款應(yīng)用,只需要一次性完成代碼,就可以適配于手機、電視、車機等多種終端)。因此借助方舟編譯器,鴻蒙將搭建完善的 IoT 生態(tài)。
②硬件。華為擁有強大 ICT 硬件基因,已推出從底層硬件到中間件、操作系統(tǒng),再到到編譯工具、應(yīng)用軟件的全棧軟硬件方案。類比蘋果產(chǎn)業(yè)鏈,華為內(nèi)部已基本形成核心硬件環(huán)節(jié)的自研,例如新發(fā)布的前端昇騰 310+后端鯤鵬 920 的安防軟硬標(biāo)準(zhǔn)化解決方案,又如自研基于鯤鵬 920 的 Taishan 服務(wù)器等全棧軟硬件系統(tǒng)在山東移動 BSS 實現(xiàn)國產(chǎn)替代等。因此鴻蒙相比谷歌 Fushcia 等純軟件體現(xiàn)出硬件優(yōu)勢(蘋果于 2019 年 7 月收購英特爾 5G 基帶部門也體現(xiàn)自研芯片對系統(tǒng)生態(tài)的重要性)。


③先發(fā)優(yōu)勢+持續(xù)創(chuàng)新。鴻蒙前身 LiteOS 早已推出,擁有商用經(jīng)驗和先發(fā)優(yōu)勢。物聯(lián)網(wǎng)基礎(chǔ)是網(wǎng)絡(luò),華為在 5G 領(lǐng)域的深厚積淀。例如,其于 2019 年初發(fā)布首款商用 5G 多模終端芯片 Balong 5000 和首款 5G 商用終端華為 5G CPE Pro。Balong 5000 在 Sub-6GHz頻段實現(xiàn) 4.6Gbps、在毫米波頻段達(dá) 6.5Gbps 的峰值下載速率,并支持 SA 和 NSA 組網(wǎng),已經(jīng)完全滿足未來 5G 產(chǎn)業(yè)不同階段的商業(yè)需求,相比行業(yè)標(biāo)桿的高通 X50 已取得領(lǐng)先。華為 5G 技術(shù)的先發(fā)優(yōu)勢與持續(xù)創(chuàng)新是鴻蒙作為 IoT 多終端操作系統(tǒng)取得成功的保障。
操作系統(tǒng)意味著應(yīng)用平臺與流量入口。上述從生態(tài)、硬件、先發(fā)優(yōu)勢+持續(xù)創(chuàng)新三方面看,擁有操作系統(tǒng)將幫助華為在物聯(lián)網(wǎng)領(lǐng)域擁有更強話語權(quán),將沿蘋果在移動互聯(lián)網(wǎng)時代的路徑,成長為 5G+IoT 的巨頭。
推薦閱讀:
企業(yè)IT技術(shù)架構(gòu)規(guī)劃方案
論數(shù)字化轉(zhuǎn)型——轉(zhuǎn)什么,如何轉(zhuǎn)?
企業(yè)10大管理流程圖,數(shù)字化轉(zhuǎn)型從業(yè)者必備!
【中臺實踐】華為大數(shù)據(jù)中臺架構(gòu)分享.pdf
