[发明专利]一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品有效

专利信息
申请号: 201680002834.3 申请日: 2016-12-29
公开(公告)号: CN107077377B 公开(公告)日: 2020-08-04
发明(设计)人: 温燕飞 申请(专利权)人: 深圳前海达闼云端智能科技有限公司
主分类号: G06F9/455 分类号: G06F9/455
代理公司: 北京新知远方知识产权代理事务所(普通合伙) 11397 代理人: 申楠
地址: 518000 广东省深圳市前海深港合作区前*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 设备 虚拟 方法 装置 系统 电子设备 计算机 程序 产品
【说明书】:

本申请实施例中提供了一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品,该方法包括:在第一操作系统处创建共享内存,并将该共享内存映射为第二操作系统的外设部件互连标准PCI设备内存空间;其中,该共享内存对应于一物理设备;在第二操作系统处接收物理设备的应用接口API操作指令,并根据API操作指令,确定对应的处理指令;将处理指令通过共享内存传递至第一操作系统;在第一操作系统处执行处理指令,并将处理结果作为API操作指令的响应或者经共享内存返回给第二操作系统。采用本申请中的方案,能够减少虚拟化过程中的系统延时,提高系统性能。

技术领域

本申请涉及计算机技术,具体地,涉及一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品。

背景技术

图1中示出了基于Qemu/KVM(Kernel-based Virtual Machine,基于内核的虚拟机)技术的虚拟化架构。

如图1所示,基于Qemu/KVM技术的虚拟化架构由一个主Host操作系统,一个或多个虚拟出来的客Guest操作系统组成。Host操作系统包括多个Host用户空间程序、Host LinuxKernel,即,Host Linux内核。每个客Guest操作系统分别包括用户空间、Guest LinuxKernel、和Qemu。这些操作系统运行在同一套硬件处理器芯片上,共享处理器及外设资源。支持虚拟化架构的ARM处理器至少包含EL2,EL1,EL0三种模式,EL2模式下运行虚拟机管理器Hypervisor程序;EL1模式下运行Linux内核程序,即,Linux kernel程序;EL0模式下运行用户空间程序。Hypervisor层管理CPU、内存、定时器、中断等硬件资源,并通过中央处理器CPU、内存、定时器、中断的虚拟化资源,可以把不同的操作系统分时加载到物理处理器上运行,从而实现系统虚拟化的功能。

KVM/Hypervisor跨越Host Linux kernel和Hypervisor两层,一方面为模拟处理器Qemu提供驱动节点,即,允许Qemu通过KVM节点创建虚拟CPU,并管理虚拟化资源;另一方面KVM/Hypervisor还可以把Host Linux系统从物理CPU上切换出去,然后把Guest Linux系统加载到物理处理器上运行,并处理Guest Linux系统异常退出的后续事务。

Qemu作为Host Linux的一个应用运行,为Guest Linux的运行提供虚拟的物理设备资源,通过KVM/Hypervisor模块的设备KVM节点,创建虚拟CPU,分配物理设备资源,实现把一个未经修改的Guest Linux加载到物理处理器上去运行。

当Guest Linux需要访问物理设备时,比如GPU(Graphics Processing Unit,图形处理器)设备、多媒体设备、摄像设备等,需要对这些物理设备进行本地虚拟化,目前通常通过Qemu转接去调用Host Linux kernel的驱动节点;具体地,这些物理设备提供了较多数量的API(Application Programming Interface,应用程序编程接口)函数,可以通过远程API调用实现这些设备的虚拟化,具体地,可以从Host与Guest系统软件架构层次中选择合适的层进行API转接。例如,对于Android系统,Guest Android可以选择从HAL(Hard AbstractLayer,硬件抽象层)进行API转接;并在Host Linux用户空间实现一个后端服务器BackendServer,最终使Guest系统能够通过Host系统来实现API函数的远程调用。

跨系统API远程调用主要涉及到函数参数的传递、运行结果的返回、函数的执行时间以及同步。图2中示出了现有技术中跨系统API远程调用的系统架构。如图2所示,一个API的调用经由Guest Android系统发起,经HAL层、Guest Linux Kernel、Qemu、到达HostBackend server、然后调用Host Linux kernel驱动程序实现对物理设备的访问。对于性能要求较高的物理设备,比如GPU设备、多媒体设备、摄像设备等,上述软件架构很难达到理想的性能要求。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海达闼云端智能科技有限公司,未经深圳前海达闼云端智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201680002834.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top