本文首發自公衆號:凌雲時刻數據庫
注:本文做者胡俊鋒(崮德),阿里雲智能資深技術專家,擁有將近20年的嵌入式物聯網開發設計經驗,精通藍牙、RTOS、Linux、微內核。2017年加入阿里巴巴,負責藍牙mesh、AliOS Things和HaaS物聯網設備雲端一體Low-Code開發框架。
6月2日華爲正式發佈了HarmonyOS 2.0,一時間網上展開了各類討論,有大讚華爲爲國產OS爭光添彩的,有說仍是在用安卓套殼的,我也來談談個人一些見解。編程
注:圖源網絡緩存
本次鴻蒙發佈會針對HarmonyOS2.0主要發佈了6個特性,分別是:安全
總的來看,核心思想是爲了在萬物互聯、萬物智能時代,解決鏈接複雜、操控繁瑣、體驗割裂三大問題,而且從設備爲中心轉換爲之內容爲中心(內容在各設備間自由流轉)。網絡
注:圖源網絡架構
這個是HarmonyOS的整體架構,從下向上分別是內核層,系統服務層,框架層和應用層。框架
在內核層,HarmonyOS目前是有Linux Kernel(主要用在手機),LiteOS(用在手錶、風扇等領域)兩個內核,雖然華爲宣稱HarmonyOS是一套操做系統,本質上看來仍是兩套。但華爲的野心確定不止於此,一方面在系統服務層的需求側,華爲確定會制定對於內核的標準,這樣能夠包括更多的內核進來,另外一方面,華爲以前宣傳的微內核,可能也會是用來統一內核的一個方向,是否能統一,咱們持續關注。分佈式
在系統服務層,華爲擴展了分佈式的各類技術,好比分佈式軟總線,分佈式數據管理和分佈式任務調度,並在此基礎上提出了各類系統能力,分紅4大類:系統基本能力子系統集,基礎軟件服務子系統集,加強軟件服務子系統集和硬件服務子系統集。其中的最重要的分佈式相關技術是在系統基本能力子系統集中。性能
框架層主要定義了應用開發框架和UI開發框架。在UI開發框架中,爲了解決用戶體驗割裂的問題,統一了UI的跨屏交互;在應用開發框架中,又提出FA/PA的原子能力,使用卡片式即用即走的技術,打破了應用市場的格局,下降了安裝應用的獲客成本 。測試
應用層主要是針對不一樣場景的不一樣應用。再也不贅述。
注:圖源網絡
一言以蔽之HarmonyOS與安卓關係爲:
HarmonyOS(手機端) = OpenHarmony + AOSP + HMS
手機側從安卓升級鴻蒙以後,AOSP完整保留(會在JVM虛擬機、文件系統等方面作一些優化,體現鴻蒙的「快」),也就完整兼容原有的安卓APP,不須要進行APP升級。手機側鴻蒙系統包含完整的安卓,因此有「安卓套殼」之嫌。這也是生態兼容性的無奈之舉,只有如圖中鴻蒙APP的數量愈來愈多,徹底替換安卓APP的時候,也就再也不有套殼的必要了。
OpenHarmony是華爲宣稱鴻蒙系統開源後創建的開源項目,熱度較高,包括了本次發佈的各類特性代碼,華爲對生態的重視態度可見一斑。OpenHarmony中開源了LiteOS的兩個版本,M和A版本,對應芯片的Cortex M和A系列。理論上能夠覆蓋4GB如下內存的設備。目前用在智能家居、手錶等弱交互設備上。
華爲提出了一整套鴻蒙API,將所有的安卓API進行封裝,並增長了諸如分佈式數據同步、分佈式RPC之類的接口。對於一個具體的APP,將來可能出現安卓版與鴻蒙版,二者均可以運行在鴻蒙系統上,但鴻蒙版APP沒法運行在安卓之上。
鴻蒙配套的HMS並未開源,其會創建相似google play這樣的「鴻蒙應用商店」。這是國內其餘手機廠家若是要切換鴻蒙的時候極不肯意看到的,因此HMS目前不強制其餘手機廠家採用,這部分博弈結果待持續觀察。
總的來講,華爲的「詩和遠方」是從上至下逐層替換安卓,但「眼前的苟且」是徹底兼容安卓現有生態全部APP,同時新增支持鴻蒙分佈式新特性。
接下來,讓咱們看看上圖中的「分佈式」的技術細節。
注:圖源網絡
OpenHarmony最核心和最底層的技術是分佈式技術,從如下幾點能夠看出:
分佈式技術的核心是分佈式軟總線,分佈式軟總線的技術目標是讓使用者像使用硬件總線同樣的體驗,方便的自由組合硬件設備。
軟總線開發上強調極簡。主要包括兩類接口,一類是會話創建,另外一類是數據傳輸。用戶調用幾個API就可以在高帶寬,高可靠的數據通路上傳輸數據。
核心技術包括了多跳自組網,多協議混合組網和極簡傳輸協議。
在分佈式軟總線基礎上,構建了分佈式核心技術能力,分佈式數據管理、分佈式任務調度和分佈式安全:
注:圖源網絡
在我看來,華爲之因此重兵HarmonyOS,核心出發點在於爲本身的消費者業務服務,畢竟華爲已然是一家硬件品牌公司,消費者業務產品線從手機到平板,再到電視、手錶、音箱等,逐漸擴張的產品線須要一套操做系統來統一,只不過是藉着萬物互聯的趨勢,提出了全場景「超級終端」的設想,簡言之就是HarmonyOS是爲「超級終端」裏各個單品打造的,這也是華爲一直宣稱HarmonyOS與Android的定位不一樣之所在。
技術上,前面也已提到,HarmonyOS以分佈式技術爲核心,用來解決全場景「超級終端」所面臨的鏈接複雜、操控繁瑣、體驗割裂三大問題。
生態方面,華爲也但願藉着HarmonyOS,從新打造三大生態:應用市場生態、HarmonyOS Connect IoT設備鏈接生態、開源操做系統生態。
HarmonyOS的優點就是其1+8+N戰略。HarmonyOS在華爲瞄準下一代超級入口打造操做系統打磨分佈式核心技術,解決鏈接複雜、操控繁瑣、體驗割裂三大問題;以手機爲核心,圍繞智慧出行、智能家居、運動健康、智慧辦公、影音娛樂5大場景,構建全場景的「超級終端」的一致性體驗;而且打造三大生態(應用市場生態、HarmonyOS Connect IoT設備鏈接生態、開源操做系統生態)。今年規模預計達到3億個(在網手機約6億可支持升級到鴻蒙OS),同時也繼續兼容現有安卓APP生態。但其劣勢就是角色衝突,既是運動員又是裁判。
若是從「四看」來點評HarmonyOS的話: