[發明專利]一種異構虛擬機的運行方法和裝置有效
| 申請號: | 202110456938.4 | 申請日: | 2021-04-27 |
| 公開(公告)號: | CN113176928B | 公開(公告)日: | 2022-08-30 |
| 發明(設計)人: | 高躍偉 | 申請(專利權)人: | 深圳市研唐科技有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 北京東方盛凡知識產權代理事務所(普通合伙) 11562 | 代理人: | 張雪 |
| 地址: | 518000 廣東省深*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 虛擬機 運行 方法 裝置 | ||
本發明公開一種異構虛擬機的運行方法和裝置,架設主宿主機和從宿主機,分別運行兩套虛擬機的操作系統,稱為主客戶操作系統和從客戶操作系統,其方法包括以下步驟:從客戶操作系統將實際的系統調用參數或運行庫調用參數打成數據包,通過網絡將數據包發送給主客戶操作系統;主客戶操作系統內運行守護程序,接收從客戶操作系統發來的數據包,并解包后進行運行庫調用或系統調用,再將運行結果打包,通過網絡發送給從客戶操作系統;從客戶操作系統通過網絡收到運行結果后解包并返回給調用者。采用本發明的技術方案,解決現有虛擬機技術中,當客戶系統與宿主機使用不同CPU指令集時運行效率低的問題。
技術領域
本發明屬于計算機技術領域,尤其是一種異構虛擬機的運行方法和裝置。
背景技術
傳統的虛擬機運行時需要將虛擬機的CPU指令翻譯成宿主機的CPU指令(運行虛擬機的主機稱為宿主機),如果虛擬機的CPU指令集與宿主機的CPU指令集相同,則可以免去CPU指令翻譯的過程而直接運行指令,運行性能接近物理CPU性能;當虛擬機的CPU指令集與宿主機CPU指令集不同時,如宿主機是x86架構CPU而虛擬機使用ARM架構CPU,CPU指令翻譯會導致性能嚴重降低。并且,當虛擬機的CPU指令集與宿主機CPU指令集不同時,無法使用硬件輔助的虛擬化技術,導致性能進一步降低。
發明內容
本發明要解決的技術問題是,提供一種異構虛擬機的運行方法和裝置,解決現有虛擬機技術中,當客戶系統與宿主機使用不同CPU指令集時運行效率低的問題。
為實現上述目的,本發明采用如下的技術方案:
一種異構虛擬機的運行方法,架設主宿主機和從宿主機,分別運行兩套虛擬機的操作系統,稱為主客戶操作系統和從客戶操作系統,其方法包括以下步驟:
從客戶操作系統將實際的系統調用參數或運行庫調用參數打成數據包,通過網絡將數據包發送給主客戶操作系統;
主客戶操作系統內運行守護程序,接收從客戶操作系統發來的數據包,并解包后進行運行庫調用或系統調用,再將運行結果打包,通過網絡發送給從客戶操作系統;
從客戶操作系統通過網絡收到運行結果后解包并返回給調用者。
作為優選,所述從客戶操作系統具有和主客戶操作系統相同的系統調用接口和運行庫調用接口。
作為優選,架設多臺主宿主機而只架設一臺從宿主機,多臺主宿主機同時與一臺從宿主機通訊;一個從宿主機內運行多套從客戶操作系統,同時為多個主客戶操作系統運行應用程序。
作為優選,同時架設多臺主宿主機及多臺從宿主機,從宿主機作為公共資源被任意主宿主機調用;一臺主宿主機內運行多套主客戶操作系統,同時與多臺主宿主機內的多套從客戶操作系統進行通訊形成多個虛擬機實例。
作為優選,從客戶操作系統發送給主客戶操作系統的數據包包含:
1、調用進程的進程號;
2、調用類型:庫調用或系統調用;
3、被調用對象:庫名稱、函數名稱或系統調用號;
4、調用參數;
5、如果參數類型為指針,還同時包含指針指向的內存數據。
6、如權利要求1所述的異構虛擬機的運行方法,其特征在于,對于主客戶操作系統發送給從客戶操作系統的運行結果包含:
1、調用進程的進程號;
2、調用類型:庫調用或系統調用;
3、被調用對象:庫名稱、函數名稱或系統調用號;
4、返回值,如果返回值為指針,還同時包含指針指向的內存數據;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市研唐科技有限公司,未經深圳市研唐科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110456938.4/2.html,轉載請聲明來源鉆瓜專利網。





