開辟鴻蒙,今日播種。
在今天下午舉行的2019華為開發者大會上,華為余承東正式宣布推出Harmony OS鴻蒙。至此,這款華為研發七年之久、備胎計劃中殺手锏之一、受到萬千關注的鴻蒙操作系統終于揭開面紗。如果你沒有觀看今天的開發者大會直播,可能對鴻蒙OS還缺乏一個整體性的了解,本文將對鴻蒙OS進行一個匯總性的梳理,方便大家一文掌握鴻蒙OS的方方面面。
1、鴻蒙Harmony OS是什么?
答:HarmonyOS鴻蒙是一款基于微內核的全場景分布式OS,是華為開發的自主操作系統,是一套主要面向未來5G引領的物聯網時代的操作系統,具備支持全場景、跨多設備和平臺的能力以及應對低時延、高安全性挑戰的能力。余承東在會上表示,“鴻蒙在中文有開天辟地的意思,英文是harmonyOS,意指給這個世界帶來更多的和諧和方便。”
2、為什么會打造鴻蒙HarmonyOS?
答:華為開發鴻蒙HarmonyOS的初衷是應對即將到來的全場景智慧時代。當前的OS系統已經不能滿足未來的需要,以安卓為例,發展多年其代碼已經龐大冗余,難以保證不同終端流暢體驗,安卓代碼已經超過1億行,安卓Linux內核代碼也有2000萬行,其中只有8%的核心代碼被頻繁調用。
而華為認為需要進一步提升操作系統的跨平臺能力,包括支持全場景、跨多設備和平臺的能力以及應對低時延、高安全性挑戰的能力,因此逐漸形成了鴻蒙OS的雛形。鴻蒙OS的出發點和Android、iOS都不一樣,是一款全新的基于微內核的面向全場景的分布式操作系統,能夠同時滿足全場景流暢體驗、架構級可信安全、跨終端無縫協同以及一次開發多終端部署的要求,鴻蒙應未來而生。
當然,謀求國產自主操作系統的發展,在風云變化的國際市場能做到自力更生,鴻蒙OS對于華為來說也是必須要做的事情。
3、鴻蒙HarmonyOS的微內核是什么?和宏內核有什么區別?
答:鴻蒙HarmonyOS是基于微內核的全場景分布式OS。那么這里的微內核到底是什么?微內核就是內核中只有最基本的調度,把其他系統模塊都做成內核外的一個進程,每個子程序運行空間彼此不會干擾,子程序可單獨調試開發,反復優化;可移植性好;升級速度快。
宏內核相反,宏內核是把系統所需的很多部分都集成進內核。例如Linux系統的進程、線程管理、內存管理、文件系統、驅動、網絡協議等等部分都在內核里,所有的服務都在一個地址空間運行,相互之間直接調用函數,簡單高效。
4、鴻蒙HarmonyOS整體有什么特點?
答:鴻蒙HarmonyOS包含四大技術特性:
分布式架構首次用于終端OS,實現跨終端無縫協同體驗。
鴻蒙OS采用“分布式OS架構”和“分布式軟總線技術”,通過公共通信平臺、分布式數據管理、分布式能力調度和虛擬外設四大能力,將相應分布式應用的底層技術實現難度對應用開發者屏蔽,使開發者能夠聚焦自身業務邏輯,像開發同一終端一樣開發跨終端分布式應用,也使最終消費者享受到強大的跨終端業務協同能力為各使用場景帶來的無縫體驗。
確定時延引擎和高性能IPC技術實現系統流暢。
鴻蒙OS通過使用確定時延引擎和高性能IPC兩大技術解決現有系統性能不足的問題。確定時延引擎可在任務執行前分配系統中任務執行優先級及時限進行調度處理,優先級高的任務資源將優先保障調度,應用響應時延降低25.7%。鴻蒙微內核結構小巧的特性使IPC(進程間通信)性能大大提高,進程通信效率較現有系統提升5倍。
基于微內核架構重塑終端設備可信安全
鴻蒙OS采用全新的微內核設計,擁有更強的安全特性和低時延等特點。微內核設計的基本思想是簡化內核功能,在內核之外的用戶態盡可能多地實現系統服務,同時加入相互之間的安全保護。微內核只提供最基礎的服務,比如多進程調度和多進程通信等。
鴻蒙OS將微內核技術應用于可信執行環境(TEE),通過形式化方法,重塑可信安全。形式化方法是利用數學方法,從源頭驗證系統正確,無漏洞的有效手段。傳統驗證方法如功能驗證,模擬攻擊等只能在選擇的有限場景進行驗證,而形式化方法可通過數據模型驗證所有軟件運行路徑。鴻蒙OS首次將形式化方法用于終端TEE,顯著提升安全等級。同時由于鴻蒙OS微內核的代碼量只有Linux宏內核的千分之一,其受攻擊幾率也大幅降低。
通過統一IDE支撐一次開發,多端部署,實現跨終端生態共享
鴻蒙OS憑借多終端開發IDE,多語言統一編譯,分布式架構Kit提供屏幕布局控件以及交互的自動適配,支持控件拖拽,面向預覽的可視化編程,從而使開發者可以基于同一工程高效構建多端自動運行App,實現真正的一次開發,多端部署,在跨設備之間實現共享生態。華為方舟編譯器是首個取代Android虛擬機模式的靜態編譯器,可供開發者在開發環境中一次性將高級語言編譯為機器碼。此外,方舟編譯器未來將支持多語言統一編譯,可大幅提高開發效率。
5、鴻蒙HarmonyOS系統開源還是閉源?
答:鴻蒙OS將向全球開發者開源,并推動成立開源基金會,建立開源社區。
6、鴻蒙HarmonyOS的系統構成是怎樣的?
答:鴻蒙HarmonyOS當前包括底層內核(Linux內核、鴻蒙微內核、LiteOS)、基礎服務(多Run Time如方舟等、通用系統服務、IoT設備專有服務、分布式數據管理、虛擬外設、UI圖形、分布式軟總線)、程序框架(多用戶程序框架如鴻蒙、Web……)、應用(手表應用、大屏應用、車機應用、PC應用)四個層面。
未來鴻蒙HarmonyOS會繼續發展,會將基礎服務設為外核,并新增文件系統、電源管理、內存管理與設備驅動,內核為鴻蒙微內核。
大家看下圖:
7、鴻蒙HarmonyOS開發、落地進度規劃如何?
答:鴻蒙HarmonyOS開發進度如下:
2017年鴻蒙內核1.0完成技術驗證、2018年鴻蒙內核2.0用于終端TEE、2019年鴻蒙OS 1.0將首先用于智慧屏產品(也是鴻蒙OS第一款產品)、2020年鴻蒙OS 2.0將在創新國產PC、手表、手環、車機等產品落地、2021年鴻蒙OS 3.0將用于音箱、耳機等產品,2022年以后將用于VR眼鏡等更多設備。詳細的規劃路線大家可以看下圖:
8、鴻蒙HarmonyOS和安卓有什么區別?
答:鴻蒙OS的出發點和Android、iOS都不一樣,它基于微內核、面向全場景,能夠同時滿足全場景流暢體驗、架構級可信安全、跨終端無縫協同以及一次開發多終端部署的要求,鴻蒙應未來而生,應物聯網而生。
鴻蒙OS比安卓安全,安卓系統有Root權限,用戶可以完全掌控經過Root之后的安卓系統。而鴻蒙則沒有Root這一選項。此外鴻蒙基于微內核技術的可信執行環境,通過形式化方法顯著提升了內核安全等級,全面提升全場景終端設備的安全能力。微內核可以把每一個單獨加鎖,不可能一個鑰匙攻破所有地方。而外核的相互隔離更加安全也更加高效。
鴻蒙OS系統相比安卓性能更強,更流暢,安卓系統沿用Linux內核調度機制,是面向服務器負載的公平調度模式,難以保障用戶體驗,而鴻蒙OS通過確定時延引擎確保用戶交互體驗流暢,匹配應用特征實現資源精準調度,響應時延降低25.7%,帶給用戶流暢穩定的使用體驗。相當于在一個道路上劃分超車道、快車道、慢車道、自行車道,讓不同的車分類行駛,不同的資源有序傳輸。
鴻蒙OS相比安卓具備一次開發、多端部署的優勢,支持面向多終端的IDE環境,提高開發效率。
未來鴻蒙內核會代替 Linux 等所有內核,通過外核對用戶程序框架 API 來支持所有應用,包括讓 Android 應用、Linux、Unix 應用,開發環境、開發語言、多種操作語言、多種平臺,開發應用都能在上面運行。也就是鴻蒙系統將兼容Linux、Unix和安卓系統。
9、華為手機什么時候用鴻蒙HarmonyOS?
答:在大會上,余承東表示鴻蒙HarmonyOS可以用在手機上。但是什么時候回用在華為手機上?余承東說:“我們隨時可以用,但是因為考慮到生態原因,我們支持谷歌的 Android 生態,我們優先使用谷歌 Android 操作系統,如果 Android 操作系統無法使用了,我們就隨時可以啟用我們的鴻蒙。”同時余承東表示Android生態的應用遷移到華為鴻蒙OS,開發工作量非常非常之小,甚至用方舟編譯器,用華為的生態去連接,可能一天兩天就搞完了。
10、鴻蒙HarmonyOS的開發環境有什么優勢?
鴻蒙OS從編程語言、編譯器、應用分發格式、運行時庫等方面均有著十分友好的開發環境。
鴻蒙OS微內核的特性可以靈活部署,提供全場景、多樣安全設備能力。還有華為LITEOS,輕量級,兼顧所有應用。同時華為方舟編譯器,多終端IDE開發環境來支撐當前的鴻蒙OS。
過去開發者為手表開發應用和為手機開發應用不一樣,為不同硬件做適配、開發,工作量很大,鴻蒙OS支持開發者一套代碼,通過華為提供的開發環境,能夠適配不同種類終端,非常方便,一次開發多端部署,提升開發效率,跨設備生態共享。例如音樂播放軟件開發,到家里就是大屏,電視上智慧屏,都可以自動適配。鴻蒙OS的IDE環境可以通過拖拽方實現自動適配。
鴻蒙OS支持的方舟編譯器是真正支持多編程語言統一編譯器,可以大大提升開發效率,甚至混合編程,高性能程序可能用C++,但是一般應用用JAVA、Kotlin,甚至支持混合編譯,大大提升運行程序效率,同時鴻蒙OS借助分布式能力,提供了Kit開發跨終端應用,包括分布式軟總線Kit等等,通過Kit實現分布式能力跨終端開發,像開發普通應用一樣非常簡單。過去操作系統都沒有支持這樣的能力,現在開發者將得到很大的方便。