0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙OS 技术架构

王程 来源:jf_75796907 作者:jf_75796907 2024-01-25 16:58 次阅读

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

图1 技术架构

wKgZomWyInuAAR6gAACwFYIXtuM135.png

内核层

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

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

系统服务层

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

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

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

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

硬件服务子系统集:为 HarmonyOS 提供硬件服务,由位置服务、生物特征识别、穿戴专有硬件服务、IoT 专有硬件服务等子系统组成。
根据不同设备形态的部署环境,基础软件服务子系统集、增强软件服务子系统集、硬件服务子系统集内部可以按子系统粒度裁剪,每个子系统内部又可以按功能粒度裁剪。

框架层

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

应用层

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

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • API
    API
    +关注

    关注

    2

    文章

    1522

    浏览量

    62507
  • 鸿蒙
    +关注

    关注

    57

    文章

    2398

    浏览量

    43133
  • HarmonyOS
    +关注

    关注

    79

    文章

    1984

    浏览量

    30704
收藏 人收藏

    评论

    相关推荐

    【「鸿蒙操作系统设计原理与架构」阅读体验】01-

    的应用经验,已形成了一套较完备的理论体系。鸿蒙操作系统在该理论体系的基础上,结合我国多年的产业化经验,参考学术界的最新研究成果,完成了基础架构设计。鸿蒙操作系统通过架构解耦,可弹性部署
    发表于 01-25 11:05

    AIGC入门及鸿蒙入门

    JDK、配置SDK等。 3. 开发实践: 学习鸿蒙系统的架构和API,了解其组件化、分布式等特性。 通过官方文档和社区资源,学习和掌握鸿蒙应用的开发流程和技巧。 总结来说,AIGC作为一项结合了
    发表于 01-13 10:32

    名单公布!【书籍评测活动NO.53】鸿蒙操作系统设计原理与架构

    呈现鸿蒙系统的原理与架构。 有利于纠正研究者、学生、开发者和行业从业者对鸿蒙技术理解的偏差,建立一个更好的鸿蒙生态环境。 整体概述:Harm
    发表于 12-16 15:10

    鸿蒙跨端实践-JS虚拟机架构实现

    类似的框架,我们需要自行实现以确保核心基础能力的完整。 鸿蒙虚拟机的开发经历了从最初 ArkTs2V8 到 JSVM + Roma新架构方案 。在此过程中,我们实现了完整的鸿蒙版的“J2V8”和 基于系统JSVM的JS虚拟机框架
    的头像 发表于 09-30 14:42 2555次阅读
    <b class='flag-5'>鸿蒙</b>跨端实践-JS虚拟机<b class='flag-5'>架构</b>实现

    华为发布鸿蒙原生智能,OS深度融合AI,小艺升级为系统级智能体

    Beta。鸿蒙原生智能是基于软硬芯云协同的硬件与基础设施架构,AI与OS深度融合的智能系统。 小艺智能体:能思考,会规划,可执行 基于鸿蒙原生智能强大的AI底座,搭载盘古大模型,小艺升
    的头像 发表于 06-24 14:30 690次阅读
    华为发布<b class='flag-5'>鸿蒙</b>原生智能,<b class='flag-5'>OS</b>深度融合AI,小艺升级为系统级智能体

    HDC2024华为发布鸿蒙原生智能:AI与OS深度融合,开启全新的AI时代

    董事长余承东先生表示:全新的Harmony Intelligence鸿蒙原生智能,将开启全新的AI时代!   软硬芯云协同 鸿蒙原生智能深度融合AI与OS “以消费者体验为核心,为消费者做伟大的产品”是华为终端坚定不移的业务战略
    的头像 发表于 06-24 09:28 754次阅读
    HDC2024华为发布<b class='flag-5'>鸿蒙</b>原生智能:AI与<b class='flag-5'>OS</b>深度融合,开启全新的AI时代

    鸿蒙开发就业前景到底怎么样?

    门槛与挑战: 鸿蒙开发需要程序员具备良好的编程语言基础, 并熟悉操作系统原理、分布式系统架构、云计算和人工智能等方面的知识。这种技术门槛虽然较高,但也为开发者提供了提升自己技术水平的机
    发表于 05-09 17:37

    鸿蒙的1万个理由,北京中关村现大幅鸿蒙海报

    鸿蒙,向光而行,Get职场”薪“风口;学鸿蒙,换道超车,Get技术”先“达人。这些宣传也说明了随着鸿蒙生态的高速发展,鸿蒙人才的需求愈加急迫
    发表于 05-08 20:31

    鸿蒙OS崛起,鸿蒙应用开发工程师成市场新宠

    应用的形态也在发生着翻天覆地的变化。作为全球领先的移动操作系统和智能终端制造商,华为公司自主研发的鸿蒙OS应运而生,致力于构建一个统一的分布式操作系统,为各行各业的应用开发带来全新的可能性。 一、鸿蒙
    发表于 04-29 17:32

    鸿蒙OS开发实例:【HarmonyHttpClient】网络框架

    鸿蒙上使用的Http网络框架,里面包含纯Java实现的HttpNet,类似okhttp使用,支持同步和异步两种请求方式;还有鸿蒙版retrofit,和Android版Retrofit相似的使用,解放双手般优雅使用注解、自动解析json
    的头像 发表于 04-12 16:58 916次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>OS</b>开发实例:【HarmonyHttpClient】网络框架

    华为鸿蒙生态设备用户已达8亿,鸿蒙商用版星河版即将推出

    据悉,截止至2024年年初,搭载鸿蒙OS的设备数量已达到8亿台,覆盖各类常用终端设备;同时也有众多企业和组织开始着手原生鸿蒙App开发,包括支付宝、淘宝、美团、京东、钉钉、高德、小红书等巨头在内。
    的头像 发表于 04-11 16:28 1037次阅读

    鸿蒙OS开发学习:【尺寸适配实现】

    鸿蒙开发中,尺寸适配是一个重要的概念,它可以帮助我们在不同屏幕尺寸的设备上正确显示和布局我们的应用程序。本文将介绍如何在鸿蒙开发中实现尺寸适配的方法。
    的头像 发表于 04-10 16:05 1898次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>OS</b>开发学习:【尺寸适配实现】

    鸿蒙OS实战:【module的使用】

    在开发HarmonyOS应用时,默认创建的工程会有一个entry module,实际应用场景为了代码或者功能解耦,我们需要用到module来进行隔离。根据鸿蒙3.0/3.1/4.0官方指导,我们可以了解到关于module的类型,以及依赖关系,本篇文章将详细为大家介绍一下module的使用
    的头像 发表于 03-26 18:07 936次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>OS</b>实战:【module的使用】

    2024款鸿蒙OS 最新HarmonyOS Next_HarmonyOS4.0系列教程分享

    鸿蒙的出现,标志着中国科技的崛起。HarmonyOS就是我们说的华为鸿蒙系统,截止到2023年8月4日已有超过7亿台设备搭载了鸿蒙OS系统。据多家媒体报道,2024年国内有21所985
    发表于 02-28 10:29

    鸿蒙OS之UI架构解析

    的做法,参考了官方文档的 MVVM模式 至此,架构越来越明了了。 Index的完整代码如下 @Entry @Component struct Index { model
    发表于 02-20 15:36