您当前的位置:首页 > 电脑百科 > 程序开发 > 移动端 > 鸿蒙

鸿蒙操作系统开发 搭建环境

时间:2023-09-07 11:35:02  来源:微信公众号  作者:清华计算机学堂

2019年8月9日,华为在东莞举行华为开发者大会,正式发布鸿蒙操作系统;2020年9月推出了鸿蒙2.0,全面使能全场景生态,具备跨设备、服务流转、极速直达、可视可说、隐私安全五大能力。在2021年6月2日的华为新品发布会中,鸿蒙手机操作系统正式登场,引起社会媒体的广泛关注,同时也掀起了国内更新鸿蒙操作系统和学习鸿蒙开发的浪潮。

本文主要介绍鸿蒙操作系统开发入门,从鸿蒙操作系统特征、技术架构、技术特性等方面介绍什么是鸿蒙操作系统。开发方面介绍了开发环境搭建、创建鸿蒙应用、部署鸿蒙应用到模拟器。

 

01

鸿蒙系统概述

传说中国神话的远古时代,在盘古昆仑山开天辟地之前,世界是一团混沌的元气,这种自然的元气叫作鸿蒙,因此人们把那个时代称作鸿蒙时代,后来该词也常被用来泛指远古时代。2019年8月9日,华为在东莞举行华为开发者大会,正式发布鸿蒙操作系统(HarmonyOS或HongmengOS)。根据官方的定义,鸿蒙系统是一款面向未来、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。

 

分析

 

鸿蒙操作系统与Android/ target=_blank class=infotextkey>安卓操作系统比较相似,但也具有自身的优势。本节主要从系统特征、技术架构和技术特性等方面来分析鸿蒙操作系统。

 

1

鸿蒙操作系统特征

 

华为鸿蒙操作系统的优点是流畅度较高,跨平台适用。这套系统主要是基于微内核的全场景分布式操作系统,可以按照需要进行扩展,由此来实现更为广泛的系统的安全性。它的主要特点是很低的时延,甚至可到毫秒级乃至亚毫秒级。在传统的单设备系统能力的基础上,鸿蒙操作系统提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。

鸿蒙操作系统具有以下三大特征。

(1) 搭载该操作系统的设备在系统层面融为一体,形成超级终端,让设备的硬件能力可以弹性扩展,实现设备之间硬件互助,资源共享。

对消费者而言,鸿蒙操作系统能够将生活场景中的各类终端进行能力整合,实现不同终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备,提供流畅的全场景体验。

(2) 面向开发者,实现一次开发,多端部署。

对应用开发者而言,鸿蒙操作系统采用了多种分布式技术,使应用开发与不同终端设备的形态差异无关,从而让开发者能够聚焦上层业务逻辑,更加便捷、高效地开发应用。

(3) 一套操作系统可以满足不同能力的设备需求,实现统一操作系统,弹性部署。

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

鸿蒙操作系统提供了支持多种开发语言的API,供开发者进行应用开发。支持的开发语言包括JAVA、XML(Extensible Markup Language)、C/C++、JS(JavaScript)、css(Cascading Style Sheets)和HML(HarmongOS Markup Language)。

 

2

鸿蒙操作系统技术架构

 

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

 

■ 图10-1鸿蒙操作系统技术架构

1. 内核层

(1) 内核子系统。鸿蒙操作系统采用多内核设计,支持针对不同资源受限设备选用适合的操作系统内核。内核抽象层(Kernel Abstract Layer,KAL)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。

(2) 驱动子系统。鸿蒙操作系统驱动框架(HDF)是鸿蒙操作系统硬件生态开放的基础,提供 统一外设访问能力和驱动开发、管理框架。

2. 系统服务层

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

(1) 系统基本能力子系统集: 为分布式应用在鸿蒙操作系统多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、方舟多语言运行时、公共基础库、多模输入、图形、安全、AI等子系统组成。其中,方舟运行时子系统提供了C/C++/JS多语言运行时和基础的系统类库,也为使用方舟编译器静态化的Java程序(即应用程序或框架层中使用Java语言开发的部分)提供运行时。

(2) 基础软件服务子系统集: 为鸿蒙操作系统提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX、MSDP&DV 等子系统组成。

(3) 增强软件服务子系统集: 为鸿蒙操作系统提供针对不同设备的、差异化的能力增强型软件服务,由智慧屏专有业务、穿戴专有业务、IoT 专有业务等子系统组成。

(4) 硬件服务子系统集: 为鸿蒙操作系统提供硬件服务,由位置服务、生物特征识别、穿戴专 有硬件服务、IoT专有硬件服务等子系统组成。

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

3. 应用框架层

应用框架层为鸿蒙操作系统的应用程序提供了 Java/C/C++/JavaScript等多语言的用户程序框架 Ability 框架,以及各种软硬件服务对外开放的多语言框架 API; 同时为采用鸿蒙操作系统的设备提供了 C/C++/JavaScript等多语言的框架 API,不同设备支持的 API 与系统的组件化裁剪程度相关。

4. 应用层

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

 

3

鸿蒙操作系统技术特性

 

1. 硬件互助,资源共享

1) 分布式软总线

分布式软总线是多种终端设备的统一基座,为设备之间的互连互通提供了统一的分布式通信能力,能够快速发现并连接设备,高效地分发任务和传输数据。分布式软总线示意图见图10-2。

 

■ 图10-2分布式软总线示意图

2) 分布式设备虚拟化

分布式设备虚拟化平台可以实现不同设备的资源融合、设备管理、数据处理,多种设备共同形成一个超级虚拟终端。针对不同类型的任务,为用户匹配并选择能力合适的执行硬 件,让业务连续地在不同设备间流转,充分发挥不同设备的资源优势。分布式设备虚拟化 示意图见图10-3。

 

■ 图10-3分布式设备虚拟化示意图

3) 分布式数据管理

分布式数据管理基于分布式软总线的能力,实现应用程序数据和用户数据的分布式管理。用户数据不再与单一物理设备绑定,业务逻辑与数据存储分离,应用跨设备运行时数据无缝衔接,为打造一致、流畅的用户体验创造了基础条件。分布式数据管理示意图见图10-4。

 

■ 图10-4分布式数据管理示意图

4) 分布式任务调度

分布式任务调度基于分布式软总线、分布式数据管理、分布式Profile等技术特性,构建统一的分布式服务管理(发现、同步、注册、调用)机制,支持对跨设备的应用进行远程启动、远程调用、远程连接以及迁移等操作,能够根据不同设备的能力、位置、业务运行状态、资源使用情况,以及用户的习惯和意图,选择合适的设备运行分布式任务。图10-5以应用迁移为例,简要地展示了分布式任务调度能力。

 

■ 图10-5分布式任务调度示意图

2. 一次开发,多端部署

鸿蒙操作系统提供了用户程序框架、Ability框架以及UI框架,支持应用开发过程中多终端的业务逻辑和界面逻辑进行复用,能够实现应用的一次开发、多端部署,提升了跨设备应用的开发效率。一次开发、多端部署示意图见图10-6。

 

■ 图10-6一次开发、多端部署示意图

3. 统一操作系统,弹性部署

鸿蒙操作系统通过组件化和小型化等设计方法,支持多种终端设备按需弹性部署,能够适配不同类别的硬件资源和功能需求。支撑通过编译链关系去自动生成组件化的依赖关系,形成组件树依赖图,支撑产品系统的便捷开发,降低硬件设备的开发门槛。

(1) 支持各组件的选择(组件可有可无)。根据硬件的形态和需求,可以选择所需的组件。

(2) 支持组件内功能集的配置(组件可大可小)。根据硬件的资源情况和功能需求,可以选择配置组件中的功能集。例如,选择配置图形框架组件中的部分控件。

(3) 支持组件间依赖的关联(平台可大可小)。根据编译链关系,可以自动生成组件化的依赖关系。例如,选择图形框架组件,将会自动选择依赖的图形引擎组件等。

 

02

搭建鸿蒙操作系统环境

鸿蒙操作系统开发环境基于Java开发环境,为了便于开发,华为官网提供了集成工具DevEco Studio。DevEco Studio 的编译构建依赖 JDK,DevEco Studio 预置了Open JDK,版本为1.8,安装过程中会自动安装 JDK。为保证DevEco Studio正常运行,建议计算机配置满足如下要求: 操作系统为windows 10 64 位、内存8GB 及以上、硬盘100GB及以上、分辨率1280×800px及以上。

 

分析

 

在开发过程中,UI界面开发可以选择使用JS UI框架,所以鸿蒙操作系统环境搭建包括DevEco Studio和Node.js的下载和安装。

 

 

1

Node.js下载与安装

 

Node.js应用于开发 JavaScript应用和运行预览器功能,是开发鸿蒙操作系统应用过程中必备的软件。登录 Node.js 官方网站,下载 Node.js 软件包。选择 LTS 版本,Windows 64 位对应的软件包,见图10-7。

 

■ 图10-7Node.js 官方网站

单击下载后的软件包进行安装,全部按照默认设置单击 Next按钮,直至 Finish。安装过程中,Node.js 会自动在系统的 path 环境变量中配置 node.exe 的目录路径。

 

2

DevEco Studio下载与安装

 

(1) 登录鸿蒙操作系统应用开发门户,单击右上角“注册”按钮,注册开发者账号,注册指导参考注册华为账号。如果已有华为开发者账号,直接单击“登录”按钮。

 

说明

 

使用 DevEco Studio 远程模拟器需要华为账号进行实名认证,建议在注册华为账号后,立即提交实名认证审核,认证方式包括“个人实名认证”和“企业实名认证”,详情请参考实名认证。

(2) 进入 HUAWEI DevEco Studio 产品页,下载 DevEco Studio 安装包。

(3) 双击下载的“deveco-studio-xxxx.exe”,进入 DevEco Studio 安装向导,在安装选项界面勾选DevEco Studio launcher复选框后,单击Next按钮,直至安装完成,如图10-8所示。

 

■ 图10-8DevEco Studio 安装向导



Tags:鸿蒙   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
华为鸿蒙跨过“生死线”!超4000个原生应用、市占率突破16%
华为官方于近日宣布,截至今年三月底,已有超过4000个应用程序加入了鸿蒙生态。这一成就被视作一个重要里程碑。值得注意的是,鸿蒙生态的发展速度惊人,仅在短短两个月的时间里就增...【详细内容】
2024-04-08  Search: 鸿蒙  点击:(4)  评论:(0)  加入收藏
鸿蒙5.0更新名单,手机再也不能安装安卓应用了!你准备好了吗
如果说国产系统中,谁发展的最好,答案毫无疑问:华为鸿蒙系统!最近,华为也很是热闹,从上个月开始,就加大了鸿蒙原生应用的推广力度。在西北、川渝、安徽等关键省份连续举办了“鸿蒙原...【详细内容】
2024-04-03  Search: 鸿蒙  点击:(7)  评论:(0)  加入收藏
华为手机升级至鸿蒙系统:长按2秒激活两个实用功能
华为手机用户迎来鸿蒙系统的更新,一系列新功能和改进正等待着您的探索。在这个全新的操作系统中,有些隐藏的功能需要您通过简单的长按操作来激活。这些功能不仅增强了手机的实...【详细内容】
2024-03-11  Search: 鸿蒙  点击:(3)  评论:(0)  加入收藏
鸿蒙开发岗平均月薪超1.8万,成为计算机人才和程序员的求职新选择!
智联招聘发布的《2024年春招市场行情周报(第一期)》显示,2023年9-12月,鸿蒙相关职位数同比增速从33.8%攀升至216.1%,鸿蒙相关职位的投递人数同比增速从132.1%攀升至380.1%。春节...【详细内容】
2024-02-26  Search: 鸿蒙  点击:(25)  评论:(0)  加入收藏
开源鸿蒙适配芯片到底都做了哪些工作?
随着智能设备市场的不断扩大和技术的进步,鸿蒙操作系统成为了备受瞩目的开源项目。作为一个全场景智能生态的基础,鸿蒙不仅仅是一个操作系统,还涉及到硬件层面的适配。然而,开源...【详细内容】
2024-01-16  Search: 鸿蒙  点击:(56)  评论:(0)  加入收藏
鸿蒙系统,即将跨越16%生死线?
1月15日周一,华为终端官宣,1月18日华为将举办鸿蒙重要活动,届时将揭秘鸿蒙生态和HarmonyOSNEXT进阶新篇章。鸿蒙概念再度走高,亚华电子涨超16%,华立股份、高新发展涨停。当下,鸿蒙...【详细内容】
2024-01-16  Search: 鸿蒙  点击:(52)  评论:(0)  加入收藏
纯血鸿蒙来了!HarmonyOS NEXT将于一季度开放:华为彻底与安卓划清界限
快科技1月4日消息,根据华为规划,全新HarmonyOS NEXT开发者预览版,将在今年第一季度面向所有开发者开放。而在1月18日,华为将举办鸿蒙重要活动,届时将揭秘鸿蒙生态和HarmonyOS NEX...【详细内容】
2024-01-04  Search: 鸿蒙  点击:(53)  评论:(0)  加入收藏
鸿蒙概念股票一览表(完整版)附上市公司龙头名单
鸿蒙概念股票有哪些?今天给大家整理一份鸿蒙概念上市公司一览表(附龙头股名单),记得收藏保存! 代码 名称 最新价 300352 北信源 ...【详细内容】
2023-12-31  Search: 鸿蒙  点击:(94)  评论:(0)  加入收藏
华为鸿蒙OS 4.0.0.116新功能背后的故事
华为最新的鸿蒙OS 4.0.0.116更新带来了令人瞩目的突破,成功将麒麟9000S处理器的核心数从8升级到了12线程,让60系列产品获得更强的市场竞争优势。这一成就实在让人惊叹不已。然...【详细内容】
2023-12-19  Search: 鸿蒙  点击:(69)  评论:(0)  加入收藏
支付宝启动鸿蒙原生应用开发 鸿蒙生态布局进一步完善
12月7日,支付宝与华为终端宣布合作,基于HarmonyOS NEXT启动支付宝鸿蒙原生应用开发,成为又一家启动鸿蒙原生应用开发的头部平台伙伴,鸿蒙生态布局进一步完善。支付宝作为行业领...【详细内容】
2023-12-08  Search: 鸿蒙  点击:(88)  评论:(0)  加入收藏
▌简易百科推荐
OpenHarmony - 基于ArkUI框架实现日历应用
前言对于刚刚接触OpenHarmony应用开发的开发者,最快的入门方式就是开发一个简单的应用,下面记录了一个日历应用的开发过程,通过日历应用的开发,来熟悉基本图形的绘制,ArkUI的组件...【详细内容】
2024-01-16    51CTO  Tags:OpenHarmony   点击:(54)  评论:(0)  加入收藏
鸿蒙工程师,熬来了「造富时代」
  作者|张俊  来源|新浪科技  ID|techsina  “套壳安卓”的质疑言犹在耳,如今华为正在计划将鸿蒙OS与安卓完全脱离。  此前,鸿蒙OS为了迅速扩大用户规模,采取了兼容安卓...【详细内容】
2023-11-20    锌财经  Tags:鸿蒙   点击:(212)  评论:(0)  加入收藏
OpenHarmony:如何使用HDF驱动控制LED灯
一、程序简介该程序是基于OpenHarmony标准系统编写的基础外设类:RGB LED。目前已在凌蒙派-RK3568开发板跑通。详细资料请参考官网:https://gitee.com/Lockzhiner-Electronics/...【详细内容】
2023-09-08    51CTO  Tags:OpenHarmony   点击:(263)  评论:(0)  加入收藏
深入了解华为OpenHarmony开源系统的架构与功能
当下最火的科技圈新闻,莫过于华为即将发布的Mate 60系列手机,但是今天摸鱼君不讲这些,毕竟我也没抢到,我也不是专业测评。但是以我所长说说它搭载鸿蒙系统的一些内容。 鸿蒙系...【详细内容】
2023-09-07  摸鱼IT  微信公众号  Tags:OpenHarmony   点击:(207)  评论:(0)  加入收藏
鸿蒙操作系统开发 搭建环境
2019年8月9日,华为在东莞举行华为开发者大会,正式发布鸿蒙操作系统;2020年9月推出了鸿蒙2.0,全面使能全场景生态,具备跨设备、服务流转、极速直达、可视可说、隐私安全五大能力。...【详细内容】
2023-09-07  清华计算机学堂  微信公众号  Tags:鸿蒙   点击:(196)  评论:(0)  加入收藏
OpenHarmony中使用MQTT
MQTT**(**消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而...【详细内容】
2023-08-29    51CTO  Tags:OpenHarmony   点击:(432)  评论:(0)  加入收藏
OpenHarmony组件复用示例
OpenHarmony组件复用示例 摘要:在开发应用时,有些场景下的自定义组件具有相同的组件布局结构,仅有状态变量等承载数据的差异。这样的组件缓存起来,需要使用到该组件时直接复用,...【详细内容】
2023-08-28  zhushangyuan  51CTO  Tags:OpenHarmony   点击:(352)  评论:(0)  加入收藏
HarmonyOS开发第一步,熟知开发工具DevEco Studio
俗话说的好,工欲善其事,必先利其器,走进HarmonyOS第一步,开发工具必须先行,当然了,关于开发工具的使用,官网和其他的博客也有很多的讲解,但是并没有按照常用的功能进行概述,如果需要...【详细内容】
2023-08-22  程序员一鸣  今日头条  Tags:HarmonyOS   点击:(205)  评论:(0)  加入收藏
鸿蒙元服务开发实例:桌面卡片上的电动自行车助手E-Bike
E-Bike是一款基于HarmonyOS开发的元服务,以万能卡片的形式给骑行提供便捷服务。首先需要完成HarmonyOS开发环境搭建。一、元服务E-Bike简介E-Bike是一款基于HarmonyOS开发的...【详细内容】
2023-08-16    51CTO  Tags:鸿蒙   点击:(302)  评论:(0)  加入收藏
OpenHarmony运行docker详细步骤
本文将介绍如何在OpenHarmony内核上运行docker容器。 目录 1.环境和设备 2.准备支持Docker容器的OpenHarmony内核 3.编译烧录镜像 4.安装docker容器引擎组件 5.格式...【详细内容】
2023-07-28  离北况归  51CTO  Tags:OpenHarmony   点击:(396)  评论:(0)  加入收藏
站内最新
站内热门
站内头条