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

    文章

    7431

    浏览量

    129597
  • OpenHarmony
    +关注

    关注

    33

    文章

    3971

    浏览量

    21341

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    动态流量数据资源交付技术:破解网络流量调度的核心难题

    。而传统的网络流量交付模式长期面临资源浪费与突发拥堵的双重困境,基于动态流量的数据资源交付方法的出现,为这一行业痛点提供了全新的解决方案。一、传统数据流量交付的行
    的头像 发表于 03-30 13:50 1287次阅读
    动态流量<b class='flag-5'>池</b>数据<b class='flag-5'>资源</b>交付技术:破解网络流量调度的核心难题

    OpenHarmony开发开源资料!凌蒙派-RK3568开发板:从入门到实战的全栈硬件平台

    随着 OpenHarmony 生态的持续壮大,越来越多开发者投身于鸿蒙硬件开发 —— 但 “找板难、入门繁、案例少” 的问题,却成了不少人的 “开局绊脚石”。今天要给大家推荐的,正是一款能解决这些痛
    的头像 发表于 02-05 13:56 612次阅读
    <b class='flag-5'>OpenHarmony</b>开发开源资料!凌蒙派-RK3568开发板:从入门到实战的全栈<b class='flag-5'>硬件</b>平台

    #OpenHarmony HDC调试

    OpenHarmony
    视美泰
    发布于 :2026年01月16日 09:46:28

    #OpenHarmony 镜像烧录

    OpenHarmony
    视美泰
    发布于 :2026年01月16日 09:42:36

    #OpenHarmony 系统概述

    OpenHarmony
    视美泰
    发布于 :2026年01月16日 09:39:20

    #OpenHarmony Hello World应用以及部署

    OpenHarmony
    视美泰
    发布于 :2026年01月16日 09:32:52

    壁仞科技助力湖南移动国产算力资源成功点亮

    12月15日,由湖南移动、壁仞科技、中兴通讯三方联合打造的湖南移动国产算力资源全面建成并成功点亮。
    的头像 发表于 12-25 09:57 503次阅读

    后勤资源模型智能调度系统:功能特点与平台架构解析

        后勤资源模型智能调度系统解析    后勤资源模型智能调度系统融合大数据、人工智能与机器学习技术,针对物资、设备、人员、运输工具等后勤资源
    的头像 发表于 12-15 16:35 423次阅读

    英泰斯特入选2025年武汉市人工智能产品资源名单

    近日,武汉市经济和信息局正式公布《2025年武汉市人工智能产品资源名单》,英泰斯特自主研发的“智能车联网故障预警大模型”,作为工业制造领域垂直行业大
    的头像 发表于 11-30 17:03 1343次阅读

    数据全复用高性能层设计思路分享

    大家好,本团队此次分享的内容为可实现数据全复用高性能层设计思路,核心部分主要由以下3个部分组成; 1.SRAM读取模块;——使用的存储为SRAM 基于SRAM读与写时序,约束
    发表于 10-29 07:10

    跻身“国家队”!卓翼智能成功入围中国邮政2025无人机设备资源采购项目

    近日,中国邮政速递物流股份有限公司2025年无人机设备机型资源采购项目(项目编号:0747-2560SCCZAB336,以下简称“中国邮政无人机设备机型资源采购项目”)入围候选人名
    的头像 发表于 09-25 14:30 710次阅读
    跻身“国家队”!卓翼智能成功入围中国邮政2025无人机设备<b class='flag-5'>资源</b><b class='flag-5'>池</b>采购项目

    十万元奖金!首届全国RISC-V高水平创新及应用大赛火热进行中

    支持:适配Bianbu OS(基于Ubuntu优化)、OpenHarmony、OpenWR等。 机器人开发支持:支持ROS2,提供机器人算法开发和调试工具。 AI组件:集成硬件加速的ONNX Runtime
    发表于 09-25 13:56

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

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

    云电竞服务器 工作原理

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

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

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