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

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

3天内不再提示

OpenHarmony硬件资源池化模型

OpenAtom OpenHarmony ? 来源:OpenAtom OpenHarmony ? 作者:OpenAtom OpenHarmony ? 2022-05-11 10:24 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

OpenAtom OpenHarmony(以下简称“OpenHarmony”)作为面向全场景、全连接、全智能时代的分布式操作系统,通过将各类不同终端设备的能力进行整合,实现硬件互助、资源共享,为用户提供流畅的全场景体验。本期,我们通过介绍 OpenHarmony 的硬件资源池化模型,为大家揭晓 OpenHarmony 是如何实现多设备协同的。

1.硬件资源访问的演进

硬件资源访问是多设备进行协同的关键。OpenHarmony 发展至今,硬件资源访问经历了从“一对一”到“多对多”的演进过程。

1.1 一对一

在设计初期,为解决两台设备间的协同问题,我们通过 OpenHarmony 提供的分布式设备虚拟化能力将两台设备的硬件资源进行融合,实现了“一对一”的硬件资源访问。这便是硬件资源池化模型的雏形。

eb8dbd9e-c6f7-11ec-bce3-dac502259ad0.jpg

图1 “一对一”的硬件资源访问

1.2 多对多

随着全场景智慧生活的不断深入,“一对一”的设备硬件资源访问方式已不能满足某些复杂场景的业务需求。OpenHarmony 对分布式技术不断探索与创新,通过增强原来的分布式设备虚拟化能力,将多台设备的各种硬件资源,如屏幕、相机、扩音器、键盘、传感器及存储器等予以抽象,形成“超级虚拟终端”内的统一硬件资源池,并支持硬件资源的按需分配和重新组合,真正实现了硬件资源的全局调用。组成“超级虚拟终端”的多个设备,能访问硬件资源池内的多种硬件资源,这便是“多对多”的硬件资源访问。

ebb3a900-c6f7-11ec-bce3-dac502259ad0.jpg

图2 硬件资源池化(多对多)

基于“硬件资源池化”,开发者可以根据不同的业务场景,在硬件资源池内选择并匹配合适的能力模块,充分发挥不同设备的能力优势,从而构建全新的用户体验。

2.硬件资源池化模型

基于“硬件资源池化”的创新理念,OpenHarmony 融合硬件虚拟化、硬件资源管理及硬件数据管理等能力,构建了硬件资源池化模型,对外提供了统一的硬件能力开放接口,让开发者轻松实现高效开发。

如图3所示,硬件资源池化模型将各类设备的硬件资源进行抽象,为北向应用提供各种分布式服务,比如分布式相机、分布式屏幕、分布式音频和分布式输入等,同时提供统一的设备管理和分布式硬件框架。

ebdf5bb8-c6f7-11ec-bce3-dac502259ad0.jpg

图3 硬件资源池化模型

下面为大家一一介绍硬件资源池化模型的各个组成部分。

2.1 设备管理

设备管理(即 DeviceManager)服务,提供设备发现、认证管理、可信设备管理和设备状态管理等能力。

ec2bb8be-c6f7-11ec-bce3-dac502259ad0.jpg

图4 设备管理(DeviceManager)

OpenHarmony 为开发者提供了一套设备管理接口,用于分布式设备间监听、发现和认证,如图 5 所示。

ec4221e4-c6f7-11ec-bce3-dac502259ad0.jpg

图5 设备管理接口

设备管理接口的使用示例代码如下:


// 创建DeviceManager实例:deviceManager.createDeviceManager('com.ohos.xxxx', (err, dm) => {    this.log("createDeviceManager err:" + JSON.stringify(err) + '  --success:' + JSON.stringify(dm))    if (err) return;    dmClass = dm;    dmClass.on('serviceDie', data => this.log("serviceDie on:" + JSON.stringify(data)))});// 查询可信设备列表var array = dmClass.getTrustedDeviceListSync();// 获取本地设备信息var localDeviceInfo = dmClass.getLocalDeviceInfoSync();// 开始设备发现(发现周边不可信设备)var subscribeId = 0;dmClass.on('deviceFound', (data) => {    if (data == null) {        this.log("deviceFound error data=null")        return;    }    this.logList.push("deviceFound:" + JSON.stringify(data));});dmClass.on('discoverFail', (data) => {    this.log("discoverFail on:" + JSON.stringify(data));});subscribeId = Math.floor(Math.random() * 10000 + 1000)var info = {    "subscribeId": subscribeId,    "mode": 0xAA,    "medium": 0,    "freq": 2,    "isSameAccount": false,    "isWakeRemote": true,    "capability": 0};dmClass.startDeviceDiscovery(info);// 停止设备发现(需要和startDeviceDiscovery接口配对使用)dmClass.stopDeviceDiscovery(subscribeId);// 设备认证var deviceInfo ={    "deviceId": "XXXXXXXX",    "deviceName": "",    deviceType: 0};let extraInfo = {    "appIcon": new Uint8Array(), // app图标,可选参数,可不填    "appThumbnail": new Uint8Array(), // app缩略图,可选参数,可不填    "appName": "xxxxxxxx", // 对端设备应用名称    "appDescription": "xxxxxxxx", // app描述    "business": '0',    "displayOwner": 0,}// 设备取消认证dmClass.unAuthenticateDevice(this.deviceInfo);

DeviceManager 的更多详情,请参考以下代码仓:

https://gitee.com/openharmony/device_manager

2.2 分布式硬件框架

分布式硬件框架为硬件资源池化模型提供了接入管理、能力查询、状态管理、权限管理以及版本管理等硬件资源管理能力,如图6所示:

ec7290f4-c6f7-11ec-bce3-dac502259ad0.jpg

图6 分布式硬件框架

分布式硬件框架的各模块说明如下:

ec969314-c6f7-11ec-bce3-dac502259ad0.jpg

图9 分布式相机的模块说明

分布式相机的更多详情,请参考分布式相机代码仓:

https://gitee.com/openharmony/distributed_camera

2.4 分布式屏幕

分布式屏幕提供了屏幕设备的硬件资源软件抽象能力,为 OpenHarmony 系统框架提供系统投屏、屏幕镜像、屏幕分割等能力的实现。分布式屏幕的框架图如下所示:

eccd909e-c6f7-11ec-bce3-dac502259ad0.jpg

图10 分布式屏幕

分布式屏幕的各模块说明如下:

eced8278-c6f7-11ec-bce3-dac502259ad0.jpg

图11 分布式屏幕的模块说明

分布式屏幕的更多详情,请参考以下代码仓:

https://gitee.com/openharmony/distributed_screen

3.结束语

除了分布式相机和分布式屏幕外,硬件资源池化模型在后续版本还将提供分布式音频和分布式输入能力。分布式音频将提供对麦克风、喇叭、听筒等音频设备的硬件资源池化能力,通过音频服务提供给应用开发者,使得开发者能够自由选择、切换、组合音频设备,提升用户的使用体验。分布式输入将提供对键盘、鼠标等输入设备的硬件资源池化能力,通过输入服务让应用开发者能跨设备调用输入能力,实现多设备协同。

硬件资源池化模型仍在建设中,期待广大开发者共同加入我们,共同见证万物互联时代的无限可能!

审核编辑 :李倩


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

    关注

    37

    文章

    7173

    浏览量

    125884
  • OpenHarmony
    +关注

    关注

    30

    文章

    3858

    浏览量

    18794

原文标题:OpenHarmony 3.1 Release版本关键特性解析——OpenHarmony硬件资源池化模型

文章出处:【微信号:gh_e4f28cfa3159,微信公众号:OpenAtom OpenHarmony】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于OpenHarmony打造新一代智能化解决方案

    硬件性能优势与软件生态资源,构建形成面向工业控制、智能终端及物联网等多元场景的高效、稳定、安全的一体智能解决方案。
    的头像 发表于 05-23 17:45 ?865次阅读

    云电竞服务器 工作原理

    实例,实现硬件资源的按需分配与隔离运行。 资源?:CPU、GPU、内存等硬件
    的头像 发表于 05-14 07:44 ?243次阅读
    云电竞服务器 工作原理

    基于RAKsmart云服务器的AI大模型实时推理方案设计

    面对高并发请求、严格的响应延迟要求及波动的业务负载,传统本地部署的算力瓶颈愈发显著。RAKsmart云服务器凭借其弹性计算资源、分布式网络架构与全栈AI加速能力,为AI大模型实时推
    的头像 发表于 05-13 10:33 ?276次阅读

    TECS OpenStack资源虚机写磁盘时延高告警的问题处理

    某运营商TECS资源,在当前告警中显示“虚机写磁盘时延高告警”,如下图所示。告警统计总体平均10分钟左右自动恢复。
    的头像 发表于 03-21 09:36 ?510次阅读
    TECS OpenStack<b class='flag-5'>资源</b><b class='flag-5'>池</b>虚机写磁盘时延高告警的问题处理

    英麦科半导体薄膜功率电感进入OPPO的ODM资源

    2025年2月底,英麦科自主研发的半导体薄膜功率电感产品正式进入OPPO的ODM资源。这是公司在正式成为华勤、闻泰、龙旗三大ODM的合格供应商之后不久,在客户端的又一次重大进展。 卓越品质
    的头像 发表于 03-06 11:58 ?456次阅读

    TECS OpenStack资源时间同步失败的故障分析

    某运营商TECS OpenStack资源,在当前告警中显示“时钟同步失败”,以10分钟整数倍为间隔上报“时间同步失败”告警,持续时间30秒-1分钟不等。
    的头像 发表于 03-03 10:09 ?496次阅读
    TECS OpenStack<b class='flag-5'>资源</b><b class='flag-5'>池</b>时间同步失败的故障分析

    TECS OpenStack资源虚机残留导致网元异常的问题处理

    某运营商TECS资源的一台主机内存故障,进行关机、内存更换操作,虚机自动迁移到其他主机上,同时做了其他虚拟机的手动迁移操作。后续在TECS上出现虚机内核异常告警,如下图所示。
    的头像 发表于 03-03 09:42 ?407次阅读
    TECS OpenStack<b class='flag-5'>资源</b><b class='flag-5'>池</b>虚机残留导致网元异常的问题处理

    AI模型部署边缘设备的奇妙之旅:目标检测模型

    并非易事,它涉及到从选择合适的算法架构到针对特定硬件平台进行优化等一系列复杂的工作。 接下来,我们将详细介绍如何在资源受限的边缘设备上成功部署目标检测模型,探索其背后的原理和技术,并讨论解决该领域内常见
    发表于 12-19 14:33

    【「大模型启示录」阅读体验】如何在客服领域应用大模型

    多个因素以确保所选模型能够满足企业的具体需求和目标。首先,企业需要明确自己的客服需求和目标。例如,是否需要24小时在线客服服务?是否需要处理复杂问题的能力?是否需要个性服务?明确这些需求有助于企业更好
    发表于 12-17 16:53

    abg欧博电子 | 电子发烧友亮相OpenHarmony人才生态大会2024

    ,共同推动OpenHarmony技术在各个领域的广泛应用和深入发展。通过搭建硬件创新开放平台、提供市场推广与技术支持等举措,将不断激发开发者的创新活力,促进生态伙伴之间的资源共享与优势互补,共同构建更加
    发表于 12-02 09:45

    OpenHarmony人才生态大会南向生态社区发展论坛在武汉圆满举办

    ,深度分享OpenHarmony硬件生态与人才建设经验,为其发展指明方向。 OpenHarmony项目群工作委员会执行总监陶铭致辞表示,呼吁开发者共建OpenHarmony开源社区,
    发表于 11-29 09:54

    海外IP代理:解锁全球网络资源的重要工具

    海外IP代理作为一种网络工具,确实在解锁全球网络资源方面发挥着重要作用。通过使用海外IP代理,用户可以绕过地理位置限制,访问特定国家或地区的网络资源,这对于跨国企业、研究人员、数据
    的头像 发表于 11-14 07:36 ?670次阅读

    祝贺致远电子“AWTK开源GUI引擎”入选2024年关键软件产品资源

    ,广州市启动了2024年关键软件产品资源入库项目。10月22日,广州市工业和信息局公布了入库名单,致远电子的“AWTK跨平台开源GUI框架”凭借卓越的技术实力、
    的头像 发表于 10-25 08:07 ?774次阅读
    祝贺致远电子“AWTK开源GUI引擎”入选2024年关键软件产品<b class='flag-5'>资源</b><b class='flag-5'>池</b>

    50万奖金!开放原子大赛——第二届OpenHarmony创新应用挑战赛正式启动

    平台。 扫码添加小助手立即报名 在这场赛事中,你可以获得: ● 50万奖励:8大奖项为你而来,还可获得OpenHarmony开发设备 ● 打造超强影响力:多家媒体传播报道,官方媒介宣传 ● 十七
    发表于 10-24 15:40

    打造异构计算新标杆!国数集联发布首款CXL混合资源参考设计

    今日,领先的高速互联芯片及方案设计厂商国数集联发布业界首创的CXL混合资源(Compute Express Link Hybrid Resource Pool ,以下简称“CHRP”)参考设计。该
    的头像 发表于 08-06 14:19 ?692次阅读
    打造异构计算新标杆!国数集联发布首款CXL混合<b class='flag-5'>资源</b><b class='flag-5'>池</b>参考设计