今日看点

鸿蒙系统 HarmonyOS 专题

发表于话题:HarmonyOS 2
发布时间:2021-06-02

一、HarmonyOS介绍

系统定义

HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。


1.对消费者而言,鸿蒙系统能够将生活场景中的各类终端进行能力整合,形成一个“超级虚拟终端”,可以实现不同的终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。


2.对应用开发者而言,鸿蒙系统采用了多种分布式技术,使得应用程序的开发实现与不同终端设备的形态差异无关,降低了开发难度和成本。这能够让开发者聚焦上层业务逻辑,更加便捷、高效地开发应用。


2.对设备开发者而言,鸿蒙系统采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求。

技术特性

HarmonyOS四大技术特性

1.分布式架构首次用于终端OS,实现跨终端无缝协同体验

2.确定时延引擎和高性能IPC技术实现系统天生流畅

3.基于微内核架构重塑中断设备可信安全

4.通过统一IDE支撑一次开发,多端部署,实现跨终端生态共享

分布式软总线示意图 如下:

技术架构

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

系统安全

在搭载HarmonyOS的分布式终端上,可以保证“正确的人,通过正确的设备,正确地使用数据”。

通过“分布式多端协同身份认证”来保证“正确的人”。

通过“在分布式终端上构筑可信运行环境”来保证“正确的设备”。

通过“分布式数据在跨终端流动的过程中,对数据进行分类分级管理”来保证“正确地使用数据”。


在分布式终端场景下,“正确的人”指通过身份认证的数据访问者和业务操作者。“正确的人”是确保用户数据不被非法访问、用户隐私不泄露的前提条件。通过以下三个方面来实现协同身份认证:

零信任模型:鸿蒙系统基于零信任模型,实现对用户的认证和对数据的访问控制。当用户需要跨设备访问数据资源或者发起高安全等级的业务操作(例如,对安防设备的操作)时,操作系统会对用户进行身份认证,确保其身份的可靠性。

多因素融合认证:鸿蒙系统通过用户身份管理,将不同设备上标识同一用户的认证凭据关联起来,用于标识一个用户,来提高认证的准确度。

协同互助认证:鸿蒙系统通过将硬件和认证能力解耦(即信息采集和认证可以在不同的设备上完成),来实现不同设备的资源池化以及能力的互助与共享,让高安全等级的设备协助低安全等级的设备完成用户身份认证。

功能亮点

先进性:多终端统一 OS;分布式设备虚拟化;一次开发多端部署。


兼容性:POSIX 标准接口,兼容三方库;HDF 统一驱动框架,方便适配和移植;兼容业界主流芯片,支持快速产品化。


安全可信:HarmonyOS 内核通过形式化验证,软件技术全栈开源。


二、IDE

概述

HUAWEI DevEco Device Tool:HarmonyOS 智能设备一站式集成开发环境,支持组件按需定制、一键编译和烧录、可视化调试、分布式能力集成等,帮助开发者高效开发和创新新硬件。

HUAWEI DevEco Device Tool(以下简称DevEco Device Tool)是为智能设备开发者提供的一站式集成开发环境,支持组件按需定制,支持代码编辑、烧录和调试等功能,支持C/C++语言,以插件的形式部署在Visual Studio Code上。该工具具有以下特点:


DevEco Device Tool以Visual Studio Code插件形式提供,体积小巧。

支持代码查找、代码高亮、代码自动补齐、代码输入提示、代码检查等,开发者可以轻松、高效编码。

支持ARM架构的Hi3516/Hi3518系列和RISC-V架构的Hi3861系列开发板,提供一键式的烧录和调试GUI界面。

支持单步调试能力和查看内存、变量、调用栈、寄存器、汇编等调试信息。

用户指南

DevEco Device Tool工具主要分为如下4个功能区域。

1.工具控制区:提供工程的导入、配置、烧录、调试等功能。

2.代码编辑区:提供代码的查看、编写和调试等功能。

3.输出控制台:提供操作日志的打印、调试命令的输入及命令行工具等功能。

3.快捷控制功能:提供DevEco Device Tool工具的快捷操作命令,如配置模板选择、工具检查、编译等快捷功能。

用户指南资料下载:https://bbs.elecfans.com/jishu_1989330_1_1.html

三、设计

定义了HarmonyOS的产品兼容性规范,使用鸿蒙系统的设备开发者有责任保证其设备的实现必须包含兼容性规范,确保其设备的兼容性。本文中的出现 “MUST(必须)”, “MUST NOT(禁止)”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” 根据RFC2119中定义的IETF标准。

四、开发介绍

内核

HarmonyOS轻内核基础功能,进程,从系统的角度看,进程是资源管理单元。进程可以使用或等待CPU、使用内存空间等系统资源,并独立于其它进程运行。内核的进程模块可以给用户提供多个进程,实现了进程之间的切换和通信,帮助用户管理业务程序流程。这样用户可以将更多的精力投入到业务功能的实现中。内核使用musl libc库,支持标准POSIX接口,开发者可基于POSIX标准接口开发内核之上的组件及应用。

驱动

HDF(HarmonyOS Driver Foundation)驱动框架,为驱动开发者提供驱动框架能力,包括驱动加载、驱动服务管理和驱动消息机制。旨在构建统一的驱动架构平台,为驱动开发者提供更精准、更高效的开发环境,力求做到一次开发,多系统部署。


HDF框架以组件化的驱动模型作为核心设计思路,为开发者提供更精细化的驱动管理,让驱动开发和部署更加规范。我们可以通过HarmonyOS驱动文档系统的了解驱动开发。HDF框架将一类设备驱动放在同一个host里面,驱动内部实现开发者也可以将驱动功能分层独立开发和部署,支持一个驱动多个node,HDF框架管理驱动模型如下图所示:

子系统

分布式任务调度模块,通过主从设备服务代理机制,在鸿蒙操作系统上建立起分布式服务平台,支持主设备(智慧屏设备)启动从设备(IP Camera、运动手表等小内存HarmonyOS设备)FA的能力。


以智慧屏节目开播提醒为例,智慧屏上在喜欢的节目菜单中,点击“开播后提醒我”按钮,等节目开播后,智慧屏会拉起运动手表上的节目开播提醒FA。通过该FA用户可以快速知道喜欢的节目已经开始,达到协同互助的作用。

组件

HarmonyOS软件以组件(bundle)作为基本单元,从系统角度看,凡是运行在HarmonyOS上的软件都可以定义为组件;一般来讲,根据组件的应用范围,可以分为:板级组件:如board、arch、mcu这些与设备硬件相关的组件;系统组件:一组独立功能的集合,如内核、文件系统、框架等;应用组件:直接面向用户提供服务的应用(如wifi_iot,ip_camera)。通常情况下,您可以在HPM网站找到您开发常用的组件。


从形式上看,组件是为复用而生,一切可以复用的模块都可以定义为组件,可以分为:源代码、二进制、代码片段、发行版。

设备开发

HarmonyOS设备开发可以分为三种不同的产品类型,WLAN连接类产品、无屏幕摄像头类产品、带屏幕摄像头类产品,我们可以通过开发示例进一步加深对于产品的理解。

API参考

智慧视觉设设备与联接类模组,API参考地址

五、开发快速入门

Hi3861开发板

Δ Hi3861开发板介绍: Hi3861 WLAN模组的开发环境搭建、版本编译构建、烧录、源码修改、调试验证等方法。

Δ Hi3861开发板搭建环境: 介绍搭建环境所需要的硬件要求,并提供编译工具安装包。

Δ Hi3861开发板第一个示例程序: 本示例将演示如何通过AT命令完成WLAN模组配网。

Δ Hi3861开发板第二个示例程序: 本示例将演示如何编写简单业务,输出“Hello World”。

Hi3516开发板介绍

Δ Hi3516开发板介绍: Hi3516DV300在低码率、高画质、智能处理和分析、低功耗等方面引领行业水平。

Δ Hi3516开发板环境搭建: 介绍搭建环境所需要的硬件要求,并提供编译工具安装包。

Δ 开发Hi3516第一个应用程序示例: 本示例指导开发者在单板上运行第一个应用程序,其中包括修改应用程序、编译、烧写、运行等步骤,最终输出“Hello OHOS!”。

Δ 开发Hi3516第一个驱动程序示例: 本示例指导开发者在单板上运行第一个驱动程序,其中包括驱动程序介绍、编译、烧写、运行等步骤。

Hi3518开发板

Δ Hi3518开发板介绍: 新一代智慧视觉处理SOC,集成新一代ISP(Image Signal Processor)以及业界最新的H.265视频压缩编码器,同时采用先进低功耗工艺和低功耗架构设计。

Δ Hi3518开发板环境搭建: 介绍搭建环境所需要的硬件要求,并提供编译工具安装包。

Δ 开发Hi3518第一个示例程序: 本示例指导开发者在单板上运行第一个应用程序,其中包括修改应用程序、编译、烧写、运行等步骤,最终输出“Hello OHOS!”。

六、源码下载

OpenHarmony是HarmonyOS的开源版,第一个开源版本支持在128KB~128MB设备上运行。


那么如何获取OpenHarmony源码并说明OpenHarmony的源码目录结构。OpenHarmony的代码以组件的形式开放,开发者可以通过如下其中一种方式获取:


获取方式1:从镜像站点下载压缩文件(推荐)


获取方式2:从hpm网站组件式获取。通过HPM,查找满足需求的解决方案,挑选/裁剪组件后下载。


获取方式3:用包管理器命令行工具获取。通过HPM的hpm-cli命令行工具,执行命令下载。


获取方式4:从代码仓库获取。通过repo或git工具从代码仓库中下载。

七、典型产品

HarmonyOS WLAN模组

基于Hi3861平台提供了丰富的外设操作能力,包含I2C、I2S、ADC、UART、SPI、SDIO、GPIO、PWM、FLASH等。本文介绍如何通过调用HarmonyOS的NDK接口,实现对GPIO控制,达到LED闪烁的效果。其他的IOT外设控制,开发者可根据API指导文档完成,此处不逐一介绍。

摄像头类产品

介绍如何基于IoT Camera开发板,利用开发套件中自带的摄像头,完成拍照、录像功能。开发者可通过执行示例应用,对开发板的外设控制有了更深入了解后,可使用开发板完成“监控摄像头”等设备。

摄像头与屏幕类产品

将介绍如何基于IoT Camera开发板,利用开发套件中自带的摄像头和屏幕,完成拍照、录像和视频预览功能。开发者可通过执行示例应用,对开发板的外设控制有了更深入了解后,可使用开发板完成“智能猫眼”、“智能后视镜”、“智能带屏音箱”等设备。

八、安全

安全指南,HarmonyOS操作系统是一个开放的系统,开发者可以开发灵活的服务和应用,为开发者和使用者带来便利和价值。为了达到这一目的,鸿蒙系统提供了一个可以有效保护应用和用户数据的执行环境。


在这个执行环境中,芯片的安全能力、系统的安全能力、以及上层的安全服务一起协作,从硬件安全、系统安全、数据安全、设备互联安全、应用安全、安全更新多个维度提供安全保障。

九、认证

HarmonyOS认证价值为保障世界各地的消费者产品制造商开发出高质量的产品和业应用,同时确保这些设备受到安全保护,用户获得良好、一致的分布式业务体验的目标,鸿蒙系统团队对这些设备进行测试认证。认证内容如下:

标签组:[软件] [分布式技术] [分布式部署] [分布式架构

本文来源:https://www.kandian5.com/articles/23909.html

相关阅读

权谋棋局中的无奈之选:刘邦为何将江山托付忌惮的吕雉

公元前195年,病榻上的刘邦凝视着吕雉的背影,这位曾与他共患难的结发妻子,此刻正以雷霆手段镇压异姓诸侯王。他深知吕雉的野心与手段,却仍选择将帝国权柄交予其手。这场看似矛盾的权力交接,实则是刘邦在政治棋...

2025-10-29

情深难敌权谋:刘邦不立戚夫人为皇后的深层逻辑

汉高祖刘邦晚年,戚夫人因得宠而萌生取代吕后之位的野心,甚至多次吹枕边风要求改立太子。然而,这位以"仁义"自诩的帝王,最终在权力天平上选择了结发妻子吕雉。这场后宫争斗的结局,实则是政治智慧与人性弱点的激...

2025-10-29

权谋棋局中的生死盟约 司马昭与贾充的共生关系解析

公元260年洛阳街头,十九岁的魏帝曹髦率亲卫直扑司马昭府邸,却在南阙门被太子舍人成济一戈刺穿胸膛。这场震动朝野的弑君案背后,真正的主谋贾充不仅未受惩处,反被司马昭加封安阳侯。这场看似矛盾的政治决策,实...

2025-10-29

高滔滔:北宋政坛的“女中尧舜”与宋哲宗的复杂评价

在北宋波澜壮阔的历史长卷中,高滔滔宛如一颗璀璨星辰,以其独特的政治智慧和坚韧的品格,在男性主导的权力舞台上留下了浓墨重彩的一笔。她以太皇太后之尊临朝听政,成为北宋中后期政治格局的关键塑造者,而宋哲宗对...

2025-10-29

成化风云:明宪宗朱见深的功过与西厂之谜

明宪宗朱见深(1447—1487),年号成化,是明朝第八位皇帝。他的一生充满戏剧性,幼年历经皇位更迭的动荡,成年后既展现出治国理政的才能,又因设立西厂等举措引发争议。 一、朱见深的早年经历与性格塑造...

2025-10-29

弘治中兴:明孝宗朱祐樘的仁政与中兴之路

在明朝近三百年的历史长河中,明孝宗朱祐樘以其独特的个人魅力与卓越的治国才能,开创了“弘治中兴”的辉煌局面。这位自幼历经坎坷的皇帝,以宽厚仁慈、勤政爱民的形象,赢得了后世史家的广泛赞誉,被比作汉文帝、宋...

2025-10-29

永乐大帝:铁血与文治交织的盛世华章

在明朝近三百年的历史长河中,明成祖朱棣以藩王之身夺取帝位,开创了“永乐盛世”,其文治武功不仅重塑了大明王朝的格局,更在中国历史上留下了浓墨重彩的一笔。《明史》以“远迈汉唐”的赞誉,将朱棣的功绩推向了与...

2025-10-29

明史视角下的明仁宗朱高炽:仁政为基,德化盛世

在明朝十六帝的谱系中,明仁宗朱高炽以仅十个月的在位时间,却赢得了《明史》“与文、景比隆”的极高赞誉。这位被后世冠以“仁宗”庙号的皇帝,其政治智慧与人格魅力在《明史·仁宗本纪》中得到了立体呈现。 一、...

2025-10-29

宣德之治:明宣宗朱瞻基如何铸就仁宣盛世

明宣宗朱瞻基(1398/1399-1435)作为明朝第五位皇帝,在位仅十年却开创了与“文景之治”“贞观之治”齐名的“仁宣之治”。这一时期,明朝政治清明、经济繁荣、社会稳定,被后世誉为明代最鼎盛的阶段之...

2025-10-29

朱祁镇:从昏君标签下走出的“仁德之举”

在明朝的历史长河中,明英宗朱祁镇常因“土木堡之变”和“夺门之变”被贴上昏君的标签。前者让明朝险些提前覆灭,后者导致忠臣于谦含冤而死。然而,若抛开这些重大失误,深入探究他的生平,会发现他在废除殉葬制度之...

2025-10-29