[发明专利]一种数据访问的方法和装置有效
申请号: | 201780040464.7 | 申请日: | 2017-09-25 |
公开(公告)号: | CN109923528B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 卢胜文 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/10 | 分类号: | G06F12/10;H04L12/24 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 访问 方法 装置 | ||
本发明实施例提供的数据访问方法应用于主机中,主机上运行虚拟机。主机的处理器将虚拟机的虚拟机接口卡识别的第一描述符转换为主机的物理接口卡识别的第二描述符,其中第一描述符包含虚拟机物理内存地址和可访问数据的数据长度;主机的物理接口卡根据第二描述符获得虚拟机物理内存地址映射到内存中的物理地址,根据内存中的物理地址访问可访问数据。
技术领域
本发明涉及信息技术领域,尤其涉及一种数据访问的方法和装置。
背景技术
主机上运行的虚拟机具有虚拟机网卡,在虚拟机通信过程中,物理网卡需要使用虚拟机网卡的描述符,该描述符需由物理网卡的驱动程序生成。因此虚拟机中需要安装物理网卡的驱动程序。这就要求不同的物理网卡提供商需要针对不同的虚拟机操作系统开发不同的物理网卡驱动程序,用户需要根据虚拟机的操作系统为虚拟机安装对应的物理网卡驱动程序,否则物理网卡无法对虚拟机进行数据访问。
发明内容
本申请提供了一种数据访问的方法和设备,本申请中,主机的物理接口卡在主机上运行的虚拟机未安装物理接口卡的驱动程序的情况下,仍然能够对虚拟机进行数据访问。
本申请的第一方面提供一种数据访问的方法。该方法应用在主机中,该主机包括处理器、内存和物理接口卡,主机上运行有虚拟机,该虚拟机包括虚拟机接口卡。处理器从内存中获取包含虚拟机物理内存地址和可访问数据的数据长度的第一描述符,其中,该虚拟机物理内存地址指向该可访问数据在该虚拟机中的物理内存中存储的起始位置,同时,该第一描述符是按照该虚拟机接口卡可识别的编码方式编码的。该处理器还将该第一描述符转换为按照该物理接口卡可识别的编码方式编码的第二描述符。该物理接口卡根据该第二描述符获得该虚拟机物理内存地址映射到的该内存中的物理地址,根据该内存中的物理地址访问该可访问数据。
示例性的,物理接口卡可以为网络接口卡,或称为网卡,则对应的虚拟机接口卡为虚拟机网卡。物理接口卡也可以为主机总线适配(Host Bus Adaptor,HBA)卡,则对应的虚拟机接口卡为虚拟机HBA卡。第一描述符是按照虚拟机接口卡可识别的编码方式进行编码的,物理接口卡不能识别。主机的处理器将第一描述符转换成第二描述符。由于第二描述符是按照物理接口卡可识别的编码方式编码的,因此物理接口卡可以通过该第二描述符获得虚拟机物理内存地址映射到的内存中的物理地址,从而访问数据。可见,本申请无需在该虚拟机上安装该物理接口卡的驱动程序,也可以实现物理接口卡对虚拟机的数据访问,从而提高了创建虚拟机的效率。
结合第一方面,在第一方面的第一种可能实现方式中,该内存中存储有该虚拟机接口卡的虚拟队列以及该物理接口卡的物理队列,该第一描述符保存在该虚拟队列中,该虚拟队列与该物理队列之间具有对应关系。该处理器还根据该对应关系,将该第二描述符存入该物理队列。将第一描述符和第二描述符分别存入虚拟队列和物理队列,使得处理器能够通过队列获取第一描述符,物理接口卡能够通过物理队列获取第二描述符,方便主机对第一描述符和第二描述符进行管理,提高访问效率。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,该对应关系保存在该内存中的第一存储空间,该第一存储空间属于该内存中的系统内存。只有主机才具有内存中的该系统内存的访问权限,而主机上运行的虚拟机没有该系统内存的访问权限,该第一存储空间不可被该虚拟机访问。将对应关系存入内存中的系统内存,处理器即可快速访问该对应关系,提高数据访问的效率。
结合第一方面的第二种可能实现方式,在第一方面的第三种可能实现方式中,该第二描述符包括该虚拟机物理内存地址和该数据长度。在该方法中,该物理接口卡向内存管理单元发送查询消息,以查询该虚拟机物理内存地址映射到的该内存中的物理地址,该查询消息中包含该虚拟机物理内存地址。内存管理单元根据该查询消息中包含的该虚拟机物理内存地址,查询该虚拟机物理内存地址与该内存中的物理地址的映射关系,获得该内存中的物理地址,内存管理单元向物理接口卡发送该内存中的物理地址。通过内存管理单元物理接口卡可以地通过虚拟机物理内存地址访问数据,减少了处理器的参与,节省了计算资源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780040464.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置