一、OpenHarmony、HarmonyOS和Harmony NEXT區別
OpenHarmony是由開放原子開源基金會(OpenAtom Foundation)孵化及運營的開源項目,開放原子開源基金會由華為、阿里、騰訊、百度、浪潮、招商銀行、360等十家互聯網企業共同發起組建。目標是面向全場景、全連接、全智能時代,基于開源的方式,搭建一個智能終端設備操作系統的框架和平臺,促進萬物互聯產業的繁榮發展。
HarmonyOS 是華為是基于 OpenHarmony、AOSP等開源項目開發的面向多種全場景智能設備的商用版本,所以HarmonyOS包含OpenHarmony,OpenHarmony是基礎。
Harmony Next是在Harmony OS 5.0版本之后針對華為手機所使用的商用操作系統進行的獨立命名。Harmony OS用于穿戴設備,Harmony Next用于手機。后續的版本,預計手機商用操作系統,還將繼續使用Next的命名。
二、HarmonyOS 5和Harmony OS NEXT走向單框架
2024年HarmonyOS 5/HarmonyOS NEXT,是HarmonyOS走向獨立自主操作系統的一個里程碑。
OpenHarmony作為開源項目是不兼容安卓框架AOSP(Android Open Source Project)的。但OpenHarmony支持多內核,包括Linux內核和LiteOS內核。由于Linux內核的兼容性,因此OpenHarmony可以兼容較多的芯片和驅動生態。
HarmonyOS 4及之前的版本:作為華為的早期商用版本,為了兼容安卓生態,添加了AOSP框架。旨在達到向下兼容芯片和驅動(OpenHarmony包含Linux內核,本身就支持),向上兼容安卓生態的目的(通過AOSP支持),是一個過度狀態。通過Harmony內核和Linux內核,可以兼容包括麒麟芯片、高通芯片以及英特爾芯片的產品,兼容X86和ARM指令集。通過AOSP支持安卓生態。
HarmonyOS 5 / HarmonyOS NEXT采用單框架結構。兼容靈犀指令集,而不再兼容ARM指令集。不包含Linux內核,只包含鴻蒙內核(未開源無法證實)。不再包含安卓開源框架代碼,獨立生態,不兼容安卓APP。
三、宏內核和微內核的概念
操作系統的內核分為兩類:宏內核和微內核。
宏內核是一種操作系統內核設計方法,在這種設計中,操作系統的核心功能(如進程管理、內存管理、硬件驅動程序、文件系統等)都運行在內核空間,并且緊密集成在一起。宏內核的主要特點是內核模塊之間緊密耦合,系統的所有功能都在一個單一的大塊代碼中完成。
微內核也是一種操作系統內核設計方法,它將操作系統的核心功能限制到最小的部分,只提供最基本的服務,例如進程管理、內存管理和消息傳遞等。其他的操作系統功能,如設備驅動、文件系統和網絡協議等,則在用戶空間中以服務的形式運行,這種設計思想使得操作系統的各個組件更加模塊化和可擴展。
四、Linux內核、Harmony內核
Linux內核
Linux內核采用宏內核的設計。對下,它管理系統的所有硬件設備;對上,它通過系統調用,向Library Routine(例如C庫)或者其它應用程序提供接口。
鴻蒙內核
HarmonyOS采用微內核設計,在微內核層只負責很少的工作,更多的能力交給上層。5層結構,從下往上分別為:虛擬化層、微內核、核心服務、服務、應用。
五、OpenHarmony所使用內核和Harmony OS所使用內核
Open Harmony操作系統所使用內核
OpenHarmony采用多內核的設計,目前支持的內核包括linux內核和LiteOS內核(低內存設備使用的操作系統內核)。支持針對不同資源受限設備選用適合的OS內核。內核抽象層通過屏蔽多內核差異,對上層提供基礎的內核能力,包括進程/線程管理、內存管理、文件系統、網絡管理和外設管理等。
Harmony OS操作系統所使用內核
Harmony OS雙框架階段采用多內核設計,支持linux內核和鴻蒙內核和LiteOS內核。Harmony OS 5.0之后,不再包含Linux內核(未證實),僅包含鴻蒙內核和OpenHarmony中的LiteOS內核,同時通過底層接口適配可以支持Linux驅動。針對不同的設備,預計可以選用不同的內核,比如穿戴設備可以選用LiteOS內核,手機則可以選用鴻蒙內核。