目录

HarmonyOS鸿蒙系统体系

HarmonyOS(鸿蒙系统)体系

HarmonyOS 鸿蒙系统体系

HarmonyOS(鸿蒙系统) 鲲鹏 昇腾 EulerOS(欧拉系统) 仓颉 \


一、OpenHarmony平台架构


OpenHarmony整体遵从分层设计,从下向上依次为: 内核层、系统服务层、框架层和应用层 。系统功能按照“系统 > 子系统 > 组件”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的组件。OpenHarmony技术架构如下所示:

https://i-blog.csdnimg.cn/blog_migrate/bab1b6354dc90eb1a5f3f6a0a2c3949b.png#pic_center

内核层

  • 内核子系统:采用多内核(Linux内核或者LiteOS)设计,支持针对不同资源受限设备选用适合的OS内核。内核抽象层(KAL,Kernel Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。
  • 驱动子系统:驱动框架(HDF)是系统硬件生态开放的基础,提供统一外设访问能力和驱动开发、管理框架。

系统服务层

系统服务层是OpenHarmony的核心能力集合,通过框架层对应用程序提供服务。该层包含以下几个部分:

  • 系统基本能力子系统集:为分布式应用在多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、公共基础库、多模输入、图形、安全、AI等子系统组成。
  • 基础软件服务子系统集:提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX(Design For X) 等子系统组成。
  • 增强软件服务子系统集:提供针对不同设备的、差异化的能力增强型软件服务,由智慧屏专有业务、穿戴专有业务、IoT专有业务等子系统组成。
  • 硬件服务子系统集:提供硬件服务,由位置服务、用户IAM、穿戴专有硬件服务、IoT专有硬件服务等子系统组成。

根据不同设备形态的部署环境,基础软件服务子系统集、增强软件服务子系统集、硬件服务子系统集内部可以按子系统粒度裁剪,每个子系统内部又可以按功能粒度裁剪。

框架层

框架层为应用开发提供了 C/C++/JS 等多语言的用户程序框架和Ability框架,适用于JS语言的ArkUI框架,以及各种软硬件服务对外开放的多语言框架API。根据系统的组件化裁剪程度,设备支持的API也会有所不同。

应用层

应用层包括系统应用和第三方非系统应用。应用由一个或多个 FA(Feature Ability)PA(Particle Ability) 组成。其中,FA有UI界面,提供与用户交互的能力;而PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象。基于FA/PA开发的应用,能够实现特定的业务功能,支持跨设备调度与分发,为用户提供一致、高效的应用体验。


二、OpenHarmony源码下载


:开源代码仓库地址 。


三、IDE开发工具


HUAWEI DevEco Device Tool

HUAWEI DevEco Studio

HarmonyOS应用开发


四、ArkTS语言


ArkTSHarmonyOS 优选的主力应用开发语言。 ArkTS 围绕应用开发在 TypeScript (简称 TS )生态基础上做了进一步扩展,继承了 TS 的所有特性,是 TS 的超集。因此,在学习 ArkTS 语言之前,建议开发者具备TS语言开发能力。

4.1 TypeScript

TypeScript 是带有编译时类型检查器的 JavaScript 运行时