目录
- 前言
- 目标
- 一、HarmonyOS简介
- 1.1、初识HarmonyOS
- 1.2、HarmonyOS典型应用场景
- 二、HarmonyOS架构与安全
- 2.1、HarmonyOS架构
- 2.1.1 内核层
- 2.1.2 系统服务层
- 2.1.3 框架层
- 2.1.4 应用层
前言
- 本章主要介绍HarmonyOS分布式操作系统的概念、关键技术与能力以及HarmonyOS典型的应用场景。
目标
- 学习完成本课程后,您将能够:
- 了解HarmonyOS的相关概念和产品定位;
- 了解HarmonyOS的技术架构;
- 了解HarmonyOS的关键特性。
一、HarmonyOS简介
1.1、初识HarmonyOS
- HarmonyOS 是一款面向万物互联时代的、全新的分布式操作系统。
- 与市面上传统系统(window, 安卓,IOS,塞班等)的差异:
- 在单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备。
1.2、HarmonyOS典型应用场景
- HarmonyOS以手机为核心,构建1+8+N全场景应用。
- 常用8种场景有:PC、AI音箱、耳机、VR/AR眼镜、车机、智慧屏、手表、Pad.
- N种场景为IOT产品。
- PC+手机构建具有强大通信能力、高效人机交互和丰富应用生态的新设备。
- 手机+手表跨设备业务流转,开创新的生活方式。
二、HarmonyOS架构与安全
2.1、HarmonyOS架构
名词解释:
-
HDF, Hardware Driver Foundation,硬件驱动框架,用于提供统一外设访问能力和驱动开发、管理框架。
-
KAL , Kernel Abstract Layer, 内核抽象层,屏蔽多内核差异,为上层提供基础的内核能力,包括:进程/线程管理、内存管理、文件系统、网络管理以及外设管理等。
-
FA , Feature Ability,在FA模型(已经不再主推)中代表有界面的Ability,用于与用户进行交互。
-
PA ,Particle Ability,在FA模型(已经不再主推)中代表无界面的Ability,主要为Feature Ability提供支持,例如作为后台服务提供计算能力,或作为数据仓库提供数据访问能力。
-
HarmonyOS整体遵从分层设计:从下往上依次为:内核层、系统服务层、框架层和应用层。
-系统功能按照:“系统” -> “子系统” -> "功能/模块"逐级展开,在多设备部署情况下,根据需求裁剪非必要的子系统或者功能。
2.1.1 内核层
内核层主要包括内核子系统和驱动子系统。
- 内核子系统:HarmonyOS采用多内核设计,支持不同资源受限设备选用适合的OS核。内核抽象层通过屏蔽多内核差异,对上层提供基础内核能力,包括:进程/线程管理、内存管理、文件系统、网络管理以及外设管理等。
- 驱动子系统:硬件驱动框架(HDF)是HarmonyOS硬件生态开放的基础,提供统一的外设访问能力、驱动开发、管理框架。
- 统一驱动框架优势:驱动与内核解耦,支持运行动态加载,让更多的IOT设备接入超级终端。
- 通过平台、系统接口解耦,构建统一的驱动平台底座,兼容Linux、LiteOS等不同的内核;
- 支撑百K级~G级容量的1+8+N设备的部署;
- 根据不同的设备形态,支持用户态部署和内核态部署;
- 统一驱动框架优势:驱动与内核解耦,支持运行动态加载,让更多的IOT设备接入超级终端。
2.1.2 系统服务层
根据不同设备形态的部署环境,各个子系统集可以按子系统粒度裁剪,子系统内部又可以按功能粒度裁剪。
2.1.3 框架层
- 框架层为HarmonyOS应用开发提供:
- 用户程序框架:支持Java/C/C++/JS等多种语言;
- Ability框架:应用所具备能力的抽象;
- 两种UI框架:适用于Java语言的Java UI框架和适用于JS语言的JS UI框架;
- 多语言框架API:支持多种软硬件服务对外开发的语言框架;
- 根据系统组件化裁剪程度,HarmonyOS设备支持的API也有所不同。
2.1.4 应用层
- 应用层包括系统应用和扩展/第三方非系统应用;
- HarmonyOS应用分为一个或者多个FA或者PA组成。
- FA有UI界面,提供与用户交互能力;PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象;
- FA在进行用户交互时所需的后台数据访问也需要对应的PA提供支撑;
- 基于FA/PA开发的应用,能够实现特定的业务功能,支持跨设备调度和分发,为用户提供统一致、高效的应用体验