HarmonyOS架构详解

介绍

HarmonyOS是一款面向万物互联时代的、全新的分布式操作系统, 它有如下核心优势

  1. 万物互联

HarmonyOS基于同一套系统能力、适配多种终端形态的分布式理念。支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备,提供全场景(移动办公、运动健康、社交通信、媒体娱乐等)业务能力。

  1. 一次开发,多端部署(跨平台)

一套代码工程,一次开发上架,多端按需部署,为用户呈现多设备统一且卓越的使用体验。

3. 自由流转

跨设备的分布式操作,打破设备界限,多设备联动,为你革新全场景协同体验。 典型场景有:媒体播控、应用接续、跨设备拖拽、跨设备剪贴板。

HarmonyOS分层架构

HarmonyOS采用分层架构,从上到下依次为内核层,系统服务层,框架层和应用层

HarmonyOS分层架构图

内核层

HarmonyOS采用多内核设计,支持针对不同资源受限设备选用适合的OS内核。

分成两个部分

  1. 内核子系统

    采用多内核(如Linux内核和LiteOS等)设计, 支持针对不同资源受限设备选用合适的内核,KAL(内核抽象层)通过屏蔽多内核差异,为上层提供内核的统一基础能力, 包括进程/线程管理、内存管理、文件系统、网络管理和外围设备管理

  2. 驱动子系统

    HDF是系统硬件生态开放的基础, 提供统一的外围设备访问能力和驱动开发、管理框架

系统服务层

是HarmonyOS的核心能力集, 该层包含以下几个部分

  1. 系统能力子系统

    为分布式App在HarmonyOS多设备上运行、调度、迁移等操作提供基础能力。该子系统由分布式软总线、分布式数据管理、分布式任务调度、以及公共基础库、多模输入、图形、安全、AI、方舟编译运行时等子系统组成

  2. 基础软件服务子系统

    提供公共通用的软件服务,由事件通知、电话、多媒体、DFX、MSDP(Multimodel Sensor Data Platform)等子系统组成

  3. 增强软件服务子系统

    提供不同设备的, 差异化的能力增强软件服务,由智慧屏、穿戴专用业务、loT专有业务等子系统组成

  4. 硬件服务子系统

    提供硬件服务, 由位置服务,IAM(Identity and Access Management, 身份和访问管理), 穿戴专有硬件服务,LOT专有硬件服务等子系统组成

框架层

App与系统交互的桥梁, 为App开发提供JavaScript、C、C++和ArkTS等多语言的开发框架, 以及UI框架,Ability框架等开放API

应用层

包含两种App

  1. 系统App

    系统的一部分, 以App的形式向用户和第三方App提供系统服务能力。

  2. 第三方App

    是HarmonyOS生态丰富的基础,就是鸿蒙应用商店上成千上万有丰富多彩的App

App由一个或多个FA(Feature Ability)或PA(Particle Ability)组成。

  • FA有UI界面,提供与用户交互的能力;
  • PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象

视频通话App的组成情况

有一个作为视频通话的主界面FA,和若干个PA组成。

FA提供UI界面用于与用户进行交互

PA1用于摄像头视频采集,PA2用于视频美颜处理,PA3用于超级夜景处理。

这些FA、PA可以按需下载、加载和运行。

不同设备的不同表现

当手机下载该App时,将同时拥有FA主界面、PA1摄像头视频采集、PA2视频美颜处理、PA3超级夜景处理

当智慧屏下载该应用时,如果智慧屏不支持视频美颜处理、超级夜景处理功能时,则只会下载FA主界面、PA1摄像头视频采集。

总结

相关推荐
每天进步一点点km2 小时前
自用-牛客网-华为机试编程模拟题1-python
华为od·华为·面试
懿路向前4 小时前
唤醒工作台全实录(一):立项——化性起伪与三条设计原则
人工智能·华为
hhhjhl5 小时前
开源鸿蒙平台 KMP_CMP 三方库「Clikt」适配全流程
华为·开源·harmonyos
熊猫钓鱼>_>6 小时前
四种书签,一条时间线:一个读书 App 的记忆颗粒与它的边界案例【鸿蒙心迹】
开发语言·华为·ai编程·harmonyos·鸿蒙·openharmony·鸿蒙pc
Goway_Hui7 小时前
【KMP for OpenHarmony】-- 在鸿蒙工程中使用 Apollo-Kotlin
华为·kotlin·harmonyos
正在走向自律8 小时前
HarmonyOS 手机/平板远程控制 Windows 电脑实践指南
智能手机·电脑·harmonyos·todesk·远程工具
熊猫钓鱼>_>9 小时前
鸿蒙 PC 三方库适配复盘:libfvad 1.0 —— 把 WebRTC VAD 做成能装进采集链路的静态库
服务器·开发语言·华为·harmonyos·openharmony·适配·鸿蒙pc
aqi0010 小时前
AI编程让鸿蒙开发电子书APP更加快捷
android·华为·harmonyos·鸿蒙·harmony
熊猫钓鱼>_>10 小时前
鸿蒙PC高分屏与键鼠交互适配:DPI缩放、右键菜单一次讲清
开发语言·笔记·华为·ai编程·harmonyos·鸿蒙·鸿蒙心迹