[發明專利]一種數據訪問的方法和裝置有效
| 申請號: | 201780040464.7 | 申請日: | 2017-09-25 |
| 公開(公告)號: | CN109923528B | 公開(公告)日: | 2021-04-09 |
| 發明(設計)人: | 盧勝文 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F12/10 | 分類號: | G06F12/10;H04L12/24 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據 訪問 方法 裝置 | ||
本發明實施例提供的數據訪問方法應用于主機中,主機上運行虛擬機。主機的處理器將虛擬機的虛擬機接口卡識別的第一描述符轉換為主機的物理接口卡識別的第二描述符,其中第一描述符包含虛擬機物理內存地址和可訪問數據的數據長度;主機的物理接口卡根據第二描述符獲得虛擬機物理內存地址映射到內存中的物理地址,根據內存中的物理地址訪問可訪問數據。
技術領域
本發明涉及信息技術領域,尤其涉及一種數據訪問的方法和裝置。
背景技術
主機上運行的虛擬機具有虛擬機網卡,在虛擬機通信過程中,物理網卡需要使用虛擬機網卡的描述符,該描述符需由物理網卡的驅動程序生成。因此虛擬機中需要安裝物理網卡的驅動程序。這就要求不同的物理網卡提供商需要針對不同的虛擬機操作系統開發不同的物理網卡驅動程序,用戶需要根據虛擬機的操作系統為虛擬機安裝對應的物理網卡驅動程序,否則物理網卡無法對虛擬機進行數據訪問。
發明內容
本申請提供了一種數據訪問的方法和設備,本申請中,主機的物理接口卡在主機上運行的虛擬機未安裝物理接口卡的驅動程序的情況下,仍然能夠對虛擬機進行數據訪問。
本申請的第一方面提供一種數據訪問的方法。該方法應用在主機中,該主機包括處理器、內存和物理接口卡,主機上運行有虛擬機,該虛擬機包括虛擬機接口卡。處理器從內存中獲取包含虛擬機物理內存地址和可訪問數據的數據長度的第一描述符,其中,該虛擬機物理內存地址指向該可訪問數據在該虛擬機中的物理內存中存儲的起始位置,同時,該第一描述符是按照該虛擬機接口卡可識別的編碼方式編碼的。該處理器還將該第一描述符轉換為按照該物理接口卡可識別的編碼方式編碼的第二描述符。該物理接口卡根據該第二描述符獲得該虛擬機物理內存地址映射到的該內存中的物理地址,根據該內存中的物理地址訪問該可訪問數據。
示例性的,物理接口卡可以為網絡接口卡,或稱為網卡,則對應的虛擬機接口卡為虛擬機網卡。物理接口卡也可以為主機總線適配(Host Bus Adaptor,HBA)卡,則對應的虛擬機接口卡為虛擬機HBA卡。第一描述符是按照虛擬機接口卡可識別的編碼方式進行編碼的,物理接口卡不能識別。主機的處理器將第一描述符轉換成第二描述符。由于第二描述符是按照物理接口卡可識別的編碼方式編碼的,因此物理接口卡可以通過該第二描述符獲得虛擬機物理內存地址映射到的內存中的物理地址,從而訪問數據。可見,本申請無需在該虛擬機上安裝該物理接口卡的驅動程序,也可以實現物理接口卡對虛擬機的數據訪問,從而提高了創建虛擬機的效率。
結合第一方面,在第一方面的第一種可能實現方式中,該內存中存儲有該虛擬機接口卡的虛擬隊列以及該物理接口卡的物理隊列,該第一描述符保存在該虛擬隊列中,該虛擬隊列與該物理隊列之間具有對應關系。該處理器還根據該對應關系,將該第二描述符存入該物理隊列。將第一描述符和第二描述符分別存入虛擬隊列和物理隊列,使得處理器能夠通過隊列獲取第一描述符,物理接口卡能夠通過物理隊列獲取第二描述符,方便主機對第一描述符和第二描述符進行管理,提高訪問效率。
結合第一方面的第一種可能實現方式,在第一方面的第二種可能實現方式中,該對應關系保存在該內存中的第一存儲空間,該第一存儲空間屬于該內存中的系統內存。只有主機才具有內存中的該系統內存的訪問權限,而主機上運行的虛擬機沒有該系統內存的訪問權限,該第一存儲空間不可被該虛擬機訪問。將對應關系存入內存中的系統內存,處理器即可快速訪問該對應關系,提高數據訪問的效率。
結合第一方面的第二種可能實現方式,在第一方面的第三種可能實現方式中,該第二描述符包括該虛擬機物理內存地址和該數據長度。在該方法中,該物理接口卡向內存管理單元發送查詢消息,以查詢該虛擬機物理內存地址映射到的該內存中的物理地址,該查詢消息中包含該虛擬機物理內存地址。內存管理單元根據該查詢消息中包含的該虛擬機物理內存地址,查詢該虛擬機物理內存地址與該內存中的物理地址的映射關系,獲得該內存中的物理地址,內存管理單元向物理接口卡發送該內存中的物理地址。通過內存管理單元物理接口卡可以地通過虛擬機物理內存地址訪問數據,減少了處理器的參與,節省了計算資源。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201780040464.7/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





