Huawei Hongmeng system HarmonyOS Learning two ： Hongmeng HarmonyOS system architecture
Hongmeng HarmonyOS The whole follows the hierarchical design of layering , From bottom to top ： Kernel layer , System service layer , Framework layer and application layer . The system functions are in accordance with “ system > Subsystem >
function / modular ” Step by step , In the multi device deployment scenario , Support tailoring some unnecessary subsystems or functions according to actual needs / modular .
The following is a brief introduction to the functions of each level ：
One , Kernel layer ： It mainly consists of kernel subsystem and driver subsystem
* Kernel subsystem ：HarmonyOS Adopt multi-core design , It supports the selection of suitable devices for different resource constrained devices OS kernel . Kernel abstraction layer （KAL,KernelAbstract
Layer） By shielding multi-core differences , Kernel capabilities that provide the foundation for the upper layer , Including process / Thread management , memory management , file system , Network management and peripheral management .
* Driving subsystem ：HarmonyOS Driver Framework （HDF） yes HarmonyOS The foundation of hardware ecological opening , Provide unified peripheral access capability and driver development , Management framework .
Two , System service layer ： The system service layer is HarmonyOS Collection of core competence , Providing services to applications through framework layer . This layer consists of the following parts ：
* System basic capability subsystem set
： For distributed applications HarmonyOS Running on multiple devices , dispatch , Migration and other operations provide basic capabilities , Distributed soft bus , Distributed data management , Distributed task scheduling , Ark multilingual runtime , Public infrastructure , Multimode input , graphical , security ,AI And other subsystems . among , When the ark is running, it provides C/C++/JS Multi language runtime and basic system class library , Also for the use of the ark compiler static Java program （ It is used in the application or framework layer Java Part of language development ） Provide runtime .
* Basic software service subsystem set ： by HarmonyOS Providing public services , General software services , Notification by event , Telephone , Multi-Media ,DFX,MSDP&DV And other subsystems .
* Enhanced software services subsystem set ： by HarmonyOS To provide a variety of services for different devices , Differentiated capability enhanced software services , Exclusive business of smart screen , Wearable proprietary business ,IoT It is composed of proprietary business and other subsystems .
* Hardware service subsystem set ： by HarmonyOS Provide hardware services , Location based services , Biometrics , Wearable proprietary hardware services ,IoT It is composed of proprietary hardware services and other subsystems .
Deployment environment according to different equipment types , Basic software service subsystem set , Enhanced software services subsystem set , Hardware service subsystem set can be tailored according to subsystem granularity , Each subsystem can be tailored according to the function granularity .
Three ： Frame layer
： The frame layer is HarmonyOS The application provides Java/C/C++/JS User program framework and implementation of multi language Ability frame , As well as a variety of software and hardware services open to the outside world multilingual framework API; At the same time for the use of HarmonyOS Our equipment provides C/C++/JS The framework of multilingualism API, Supported by different devices API It is related to the degree of component tailoring of the system .
Four , application layer
The application layer includes system application and third-party non system application .HarmonyOS The application consists of one or more FA（Feature Ability） or PA（Particle
Ability） form . among ,FA Yes UI Interface , Provides the ability to interact with users ; and PA nothing UI Interface , Provides the ability to run tasks in the background and a unified data access abstraction . be based on FA/PA Application of development , Can achieve specific business functions , Support cross device scheduling and distribution , Provide consistent service for users , Efficient application experience .