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摄像头视频采集。

总结

相关推荐
贾伟康33 分钟前
【天体运行模拟|16】HarmonyOS ArkTS 多设备布局实战:适配手机、平板和 PC/2in1 的窗口变化
harmonyos·arkts·arkui·响应式布局·多设备适配
黑臂麒麟35 分钟前
HarmonyOS鸿蒙实战应用6:随手账本——Preferences本地持久化
数据库·华为·app·鸿蒙
大雷神37 分钟前
HarmonyOS AR Engine高精几何重建实战——扫描纸盒并测量体积
华为·ar·harmonyos
用户09340777351441 分钟前
HarmonyOS WPS Open SDK 实践:registerApp 鉴权与就绪门禁
android·typescript·harmonyos
特立独行的猫a1 小时前
仓颉语言原生 Coding Agent:cjh · 仓颉语言实现的 Harness
ai·agent·harmonyos·仓颉·cangjie·harness
大锅盖11 小时前
警示橙如何驱动巡检闭环?ArkUI 物业安全平台的声明式实现
安全·华为·harmonyos
贾伟康2 小时前
【时光清单|03】HarmonyOS ArkTS 提醒服务实战:计算触发时间并防止重复注册
harmonyos·arkts·后台任务·幂等设计·通知提醒
李蚊子2 小时前
从代理提醒到真实响铃:懒熊闹钟的鸿蒙开发实践
前端·harmonyos
GKxx2 小时前
在 HarmonyOS 上从源码构建 GCC 16(gcc/g++ + libstdc++ + libsanitizer):完整记录
c++·华为·harmonyos·鸿蒙·gcc
贾伟康2 小时前
【时光清单|04】HarmonyOS ArkTS 通知服务实战:管理权限、渠道和点击跳转
harmonyos·arkts·系统通知·notificationkit·wantagent