阿里雲資深專家崮德:談談我對華爲HarmonyOS 2.0的見解

圖片

本文首發自公衆號:凌雲時刻數據庫

注:本文做者胡俊鋒(崮德),阿里雲智能資深技術專家,擁有將近20年的嵌入式物聯網開發設計經驗,精通藍牙、RTOS、Linux、微內核。2017年加入阿里巴巴,負責藍牙mesh、AliOS Things和HaaS物聯網設備雲端一體Low-Code開發框架。

6月2日華爲正式發佈了HarmonyOS 2.0,一時間網上展開了各類討論,有大讚華爲爲國產OS爭光添彩的,有說仍是在用安卓套殼的,我也來談談個人一些見解。編程

HarmonyOS2.0特性介紹

圖片

圖片

注:圖源網絡緩存

本次鴻蒙發佈會針對HarmonyOS2.0主要發佈了6個特性,分別是:安全

  1. One as All,All as One:採用了全棧解耦的架構,支持的設備RAM大小從128KB到GB級別,好比風扇(KB級別),手錶(MB級別),手機(GB級別),都只須要一個操做系統(HarmonyOS 2.0)。
  2. 分佈式技術:參考計算機硬件總線,在1+8+N設備間搭建一條「無形」的分佈式軟總線,具有自發現、自組網、高帶寬、低時延的特色,根據須要自由組合硬件。
  3. 統一的控制中心:一個界面控制全部分佈式軟總線上掛載設備的統一的控制中心,且可用在不一樣的設備上,這樣就能夠在手機甚至手錶上統一控制好比家裏的各類電器了。
  4. 超級終端:將多個終端(好比手機和電視)組合成超級終端,經過統一的控制中心,很是方便的就能夠把手機和電視組合成超級終端,手機就可使用電視的顯示屏了。
  5. 分佈式編程框架:提出分佈式編程框架,將設備各類能力抽象成原子化服務,代替手機APP,以卡片的形式實現服務在設備間流轉,且免安裝。
  6. 全棧優化:經過全棧優化,提供更好的性能體驗,優化點包括存儲,顯示等。

總的來看,核心思想是爲了在萬物互聯、萬物智能時代,解決鏈接複雜、操控繁瑣、體驗割裂三大問題,而且從設備爲中心轉換爲之內容爲中心(內容在各設備間自由流轉)。網絡

HarmonyOS整體架構

圖片

圖片

注:圖源網絡架構

這個是HarmonyOS的整體架構,從下向上分別是內核層,系統服務層,框架層和應用層。框架

在內核層,HarmonyOS目前是有Linux Kernel(主要用在手機),LiteOS(用在手錶、風扇等領域)兩個內核,雖然華爲宣稱HarmonyOS是一套操做系統,本質上看來仍是兩套。但華爲的野心確定不止於此,一方面在系統服務層的需求側,華爲確定會制定對於內核的標準,這樣能夠包括更多的內核進來,另外一方面,華爲以前宣傳的微內核,可能也會是用來統一內核的一個方向,是否能統一,咱們持續關注。分佈式

在系統服務層,華爲擴展了分佈式的各類技術,好比分佈式軟總線,分佈式數據管理和分佈式任務調度,並在此基礎上提出了各類系統能力,分紅4大類:系統基本能力子系統集,基礎軟件服務子系統集,加強軟件服務子系統集和硬件服務子系統集。其中的最重要的分佈式相關技術是在系統基本能力子系統集中。性能

框架層主要定義了應用開發框架和UI開發框架。在UI開發框架中,爲了解決用戶體驗割裂的問題,統一了UI的跨屏交互;在應用開發框架中,又提出FA/PA的原子能力,使用卡片式即用即走的技術,打破了應用市場的格局,下降了安裝應用的獲客成本 。測試

應用層主要是針對不一樣場景的不一樣應用。再也不贅述。

HarmonyOS與安卓的關係

圖片

圖片

注:圖源網絡

一言以蔽之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,同時新增支持鴻蒙分佈式新特性。

接下來,讓咱們看看上圖中的「分佈式」的技術細節。

HarmonyOS核心技術:分佈式技術

圖片

圖片

注:圖源網絡

OpenHarmony最核心和最底層的技術是分佈式技術,從如下幾點能夠看出:

  1. 從宣傳角度,HarmonyOS重點宣傳的是各類場景化分佈式能力。
  2. 從品牌角度,HarmonyOS生態品牌是HarmonyOS Connect,Connect強調的就是分佈式的互聯互通。
  3. 從技術角度,HarmonyOS和安卓最主要的技術區別就是分佈式能力。

分佈式技術的核心是分佈式軟總線,分佈式軟總線的技術目標是讓使用者像使用硬件總線同樣的體驗,方便的自由組合硬件設備。

軟總線開發上強調極簡。主要包括兩類接口,一類是會話創建,另外一類是數據傳輸。用戶調用幾個API就可以在高帶寬,高可靠的數據通路上傳輸數據。

核心技術包括了多跳自組網,多協議混合組網和極簡傳輸協議。

  1. 多跳自組網完成局域網內設備的自組織網絡構建,混合組網是用於完成Wi-Fi和藍牙等多種不一樣鏈接方式的混合組網。不一樣網絡鏈接方式之間會有輕量級的網關作好數據轉換。
  2. 極簡傳輸協議將5層協議簡化爲1層,簡化協議層級,減小層間交互開銷。針對性能,華爲在軟硬結合部分作了很是多的優化。保證了分佈式軟總線的各項性能指標。而HarmonyOS宣稱的高吞吐和高容錯,據分析,實際上是基於Wi-Fi6等最新技術測試的數據。

在分佈式軟總線基礎上,構建了分佈式核心技術能力,分佈式數據管理、分佈式任務調度和分佈式安全:

  1. 分佈式數據管理,提供瞭如文件系統,數據庫等服務。在分佈式軟總線高速通道基礎上,優化各類文件緩存和預取策略,得到比Samba(一種局域網資源共享協議)更好的性能。
  2. 分佈式任務調度,支持跨設備的應用遠程啓動,調用及遷移等操做。仍是基於底層高速的分佈式軟總線,及調度策略,實現了高效的RPC(遠程調度)。經過這個能力,使用者能夠調用局域網內不一樣智能硬件的能力,如屏幕,攝像頭,算力等。
  3. 分佈式安全,實現了點到點設備鏈接時的互信認證和設備羣組管理能力,應用簽名和驗籤,系統權限等能力。

華爲爲何重兵HarmonyOS及如何作的?

圖片

注:圖源網絡

在我看來,華爲之因此重兵HarmonyOS,核心出發點在於爲本身的消費者業務服務,畢竟華爲已然是一家硬件品牌公司,消費者業務產品線從手機到平板,再到電視、手錶、音箱等,逐漸擴張的產品線須要一套操做系統來統一,只不過是藉着萬物互聯的趨勢,提出了全場景「超級終端」的設想,簡言之就是HarmonyOS是爲「超級終端」裏各個單品打造的,這也是華爲一直宣稱HarmonyOS與Android的定位不一樣之所在。

技術上,前面也已提到,HarmonyOS以分佈式技術爲核心,用來解決全場景「超級終端」所面臨的鏈接複雜、操控繁瑣、體驗割裂三大問題。

生態方面,華爲也但願藉着HarmonyOS,從新打造三大生態:應用市場生態、HarmonyOS Connect IoT設備鏈接生態、開源操做系統生態。

總結

圖片

HarmonyOS的優點就是其1+8+N戰略。HarmonyOS在華爲瞄準下一代超級入口打造操做系統打磨分佈式核心技術,解決鏈接複雜、操控繁瑣、體驗割裂三大問題;以手機爲核心,圍繞智慧出行、智能家居、運動健康、智慧辦公、影音娛樂5大場景,構建全場景的「超級終端」的一致性體驗;而且打造三大生態(應用市場生態、HarmonyOS Connect IoT設備鏈接生態、開源操做系統生態)。今年規模預計達到3億個(在網手機約6億可支持升級到鴻蒙OS),同時也繼續兼容現有安卓APP生態。但其劣勢就是角色衝突,既是運動員又是裁判。

若是從「四看」來點評HarmonyOS的話:

  1. 看「本身」:鴻蒙OS成敗關鍵在於華爲手機的發展?手機業務的死亡是否反而會使鴻蒙OS鳳凰涅磐?好比最近的榮耀手機,從華爲剝離後,市場佔有率從3%回到了9.5%,實現了涅磐重生。
  2. 看競對:小米、OV等手機廠商核心是要掌控UI交互、應用市場分發、以及IoT設備鏈接生態,極可能不會直接採用鴻蒙OS。
  3. 看行業:對比谷歌,手機操做系統是一個生態之戰,須要花大價錢去培育生態,是先賠錢後賺錢的模式,要看華爲如何放棄本身的短時間利益。
  4. 看市場:在2C消費互聯網領域,全場景「超級終端」的體驗是很是好的體驗,這個良好的體驗必定是將來的發展趨勢。
相關文章
相關標籤/搜索