[發(fā)明專利]基于補丁機制的Windows虛擬機與KVM宿主機的通信方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201910552215.7 | 申請日: | 2019-06-25 |
| 公開(公告)號: | CN110262875B | 公開(公告)日: | 2021-04-27 |
| 發(fā)明(設計)人: | 邢希雙 | 申請(專利權)人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 濟南誠智商標專利事務所有限公司 37105 | 代理人: | 王汝銀 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 補丁 機制 windows 虛擬機 kvm 宿主 通信 方法 系統(tǒng) | ||
1.一種基于補丁機制的Windows虛擬機與KVM宿主機的通信方法,其特征在于,所述方法包括:
當Windows虛擬機業(yè)務驅(qū)動實現(xiàn)時,在所述Windows虛擬機的內(nèi)核業(yè)務驅(qū)動模塊中預先分配一塊內(nèi)存;
在所述Windows虛擬機中,利用內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針字段,掛接所述內(nèi)存;
KVM宿主機根據(jù)當前Windows虛擬機的內(nèi)核模塊鏈表中內(nèi)核業(yè)務驅(qū)動的補丁信息指針偏移量,確定所述內(nèi)存;
Windows虛擬機與KVM宿主機基于所述內(nèi)存進行雙向通信;
其中,在所述Windows虛擬機中,利用內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針字段,掛接所述內(nèi)存的方法,包括:
當Windows虛擬機業(yè)務驅(qū)動實現(xiàn)時,在初始化函數(shù)中獲取第一補丁信息指針,所述第一補丁信息指針為掛接前內(nèi)核模塊數(shù)據(jù)結構中的原始補丁信息指針;
將所述第一補丁信息指針替換為第二補丁信息指針,并保存所述第一補丁信息指針,所述第二補丁信息指針為所述內(nèi)存的指針;
當加載業(yè)務驅(qū)動時,內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針更新為第二補丁信息指針;
當卸載業(yè)務驅(qū)動時,內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針變更為第一補丁信息指針。
2.根據(jù)權利要求1所述的一種基于補丁機制的Windows虛擬機與KVM宿主機的通信方法,其特征在于,KVM宿主機根據(jù)當前Windows虛擬機的內(nèi)核模塊鏈表中內(nèi)核業(yè)務驅(qū)動的補丁信息指針偏移量,確定所述內(nèi)存的方法,包括:
KVM宿主機遍歷Windows虛擬機的內(nèi)核模塊列表,根據(jù)內(nèi)核模塊列表中的驅(qū)動名稱,確定需要通過內(nèi)存進行通信的內(nèi)核業(yè)務驅(qū)動;
根據(jù)Windows虛擬機中當前內(nèi)核業(yè)務驅(qū)動模塊的補丁信息指針偏移量,確定所述內(nèi)核業(yè)務驅(qū)動的補丁信息指針;
根據(jù)所述內(nèi)核業(yè)務驅(qū)動的補丁信息指針,獲取所述內(nèi)核業(yè)務驅(qū)動分配的內(nèi)存。
3.根據(jù)權利要求2所述的一種基于補丁機制的Windows虛擬機與KVM宿主機的通信方法,其特征在于,所述KVM宿主機遍歷Windows虛擬機的內(nèi)核模塊列表的方法,具體為:
KVM宿主機利用Libvmi技術,遍歷Windows虛擬機的內(nèi)核模塊列表。
4.根據(jù)權利要求1-3中任一所述的一種基于補丁機制的Windows虛擬機與KVM宿主機的通信方法,其特征在于,當Windows虛擬機業(yè)務驅(qū)動實現(xiàn)時,在所述Windows虛擬機的內(nèi)核業(yè)務驅(qū)動模塊中預先分配一塊內(nèi)存之后,所述方法還包括:
對所述內(nèi)存進行分段,且不同的段用于執(zhí)行不同的讀寫操作。
5.一種基于補丁機制的Windows虛擬機與KVM宿主機的通信系統(tǒng),其特征在于,所述系統(tǒng)包括:
內(nèi)存分配模塊,設置于Windows虛擬機中,用于當Windows虛擬機業(yè)務驅(qū)動實現(xiàn)時,在所述Windows虛擬機的內(nèi)核業(yè)務驅(qū)動模塊中預先分配一塊內(nèi)存;
掛接模塊,設置于Windows虛擬機中,用于在所述Windows虛擬機中,利用內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針字段,掛接所述內(nèi)存;
內(nèi)存確定模塊,設置于KVM宿主機中,用于根據(jù)當前Windows虛擬機的內(nèi)核模塊鏈表中內(nèi)核業(yè)務驅(qū)動的補丁信息指針偏移量,確定所述內(nèi)存;
通信模塊,用于在Windows虛擬機與KVM宿主機中,基于所述內(nèi)存進行雙向通信;
其中,所述掛接模塊包括:
第一補丁信息指針獲取單元,用于當Windows虛擬機業(yè)務驅(qū)動實現(xiàn)時,在初始化函數(shù)中獲取第一補丁信息指針,所述第一補丁信息指針為掛接前內(nèi)核模塊數(shù)據(jù)結構中的原始補丁信息指針;
替換單元,用于將所述第一補丁信息指針替換為第二補丁信息指針,并保存所述第一補丁信息指針,所述第二補丁信息指針為所述內(nèi)存的指針;
第一更新單元,用于當加載業(yè)務驅(qū)動時,將內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針更新為第二補丁信息指針;
第二更新單元,用于當卸載業(yè)務驅(qū)動時,將內(nèi)核業(yè)務驅(qū)動模塊數(shù)據(jù)結構中的補丁信息指針變更為第一補丁信息指針。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州浪潮智能科技有限公司,未經(jīng)蘇州浪潮智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910552215.7/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 檢測Windows系統(tǒng)已知漏洞的方法和系統(tǒng)
- 一種對主機進行管控的方法及系統(tǒng)
- 一種基于windows服務控制器的系統(tǒng)自動運行方法
- 處理windows update彈窗出現(xiàn)的方法和系統(tǒng)
- 檢測系統(tǒng)中已安裝應用的方法和客戶端
- 一種Windows Phone手機數(shù)據(jù)的鏡像方法
- 在Windows下對Linux系統(tǒng)中無線通訊模塊調(diào)試數(shù)據(jù)抓取方法和系統(tǒng)
- 一種實現(xiàn)Windows系統(tǒng)自動化安裝的系統(tǒng)及方法
- 一種基于Windows To Go的增強方法及系統(tǒng)
- 一種批量控制windows快速部署的工具及方法





