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

总结

相关推荐
不爱吃糖的程序媛35 分钟前
Capacitor:跨平台Web原生应用开发利器,现已全面适配鸿蒙
前端·华为·harmonyos
一只大侠的侠1 小时前
Flutter开源鸿蒙跨平台训练营 Day6ArkUI框架实战
flutter·开源·harmonyos
一只大侠的侠2 小时前
Flutter开源鸿蒙跨平台训练营 Day 4实现流畅的下拉刷新与上拉加载效果
flutter·开源·harmonyos
早點睡3902 小时前
高级进阶 ReactNative for Harmony 项目鸿蒙化三方库集成实战:react-native-drag-sort
react native·react.js·harmonyos
果粒蹬i3 小时前
【HarmonyOS】DAY9:利用React Native开发底部 Tab 开发实战:从问题定位到最佳实践
华为·harmonyos
lbb 小魔仙3 小时前
【HarmonyOS实战】OpenHarmony + RN:自定义 useForm 表单管理
harmonyos
早點睡3904 小时前
高级进阶 ReactNative for Harmony 项目鸿蒙化三方库集成实战:react-native-video
react native·华为·harmonyos
开开心心就好4 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
前端不太难4 小时前
HarmonyOS 游戏项目,从 Demo 到可上线要跨过哪些坑
游戏·状态模式·harmonyos
全栈探索者5 小时前
列表渲染不用 map,用 ForEach!—— React 开发者的鸿蒙入门指南(第 4 期)
react.js·harmonyos·arkts·foreach·列表渲染