[發明專利]一種基于CPU硬件特性的虛擬機自省觸發方法及系統有效
| 申請號: | 201710738034.4 | 申請日: | 2017-08-24 |
| 公開(公告)號: | CN107608756B | 公開(公告)日: | 2020-10-13 |
| 發明(設計)人: | 王麗娜;劉維杰;吳頔 | 申請(專利權)人: | 武漢大學 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455;G06F11/30 |
| 代理公司: | 武漢科皓知識產權代理事務所(特殊普通合伙) 42222 | 代理人: | 魯力 |
| 地址: | 430072 湖*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 cpu 硬件 特性 虛擬機 自省 觸發 方法 系統 | ||
1.一種基于CPU硬件特性的虛擬機自省觸發方法,其特征在于,包括
VMFUNC感知步驟:在用戶空間中的被監控程序中插入VMFUNC指令,并讀取當前的EPTP,并以此比對該EPTP是否被修改;
參數傳遞步驟:啟動被監控程序,并在虛擬機管理器中的重載后的RDTSC模擬指令中檢測虛擬機擴展頁表指針值的變化,如果變化超過閾值,則判斷為用戶空間中被監控程序運行了,則為用戶意欲觸發虛擬機自省程序,此時虛擬機管理器獲取用戶虛擬機的Domain ID與EPTP值,寫入trace buffer緩沖區中;
VMI啟動步驟:虛擬機管理器觸發一個VIRQ_TBUF中斷,通知Dom0獲取緩沖區中的內容,然后Dom0應用XenTrace解析緩沖區的內容,獲取步驟四中的Domain ID與EPTP值,傳入虛擬機自省程序,Dom0啟動虛擬機自省程序,輸出實時監控內容。
2.根據權利要求1所述的一種基于CPU硬件特性的虛擬機自省觸發方法,其特征在于,所述VMFUNC感知步驟具體包括:
步驟1,VMFUNC在用戶虛擬機執行;
步驟2,判斷VMFUNC感知步驟是否開啟,若開啟則繼續;若未開啟,則執行步驟8;
步驟3,判斷是否在RDTSC模擬函數中,若是則繼續;若不是,則返回執行步驟2;
步驟4,截獲TSC值并將其保存;
步驟5,讀取當前EPTP值;
步驟6,判斷當前EPTP值于上一次保存的EPTP值是否一樣,若一樣則返回執行步驟(1);若不一樣,則調用參數傳遞步驟,將控制權交于下一步驟;
步驟7,將保存的TSC值送入eax、edx寄存器;
步驟8,結束并返回到虛擬機執行環境。
3.根據權利要求1所述的一種基于CPU硬件特性的虛擬機自省觸發方法,其特征在于,所述參數傳遞步驟具體包括:
步驟1,計算前后EPTP的差值從而獲得EPTP index;
步驟2,判斷該EPTP index是否大于或等于10,若是則執行VMFUNC的正常功能并返回虛擬機;若不是則繼續;
步驟3,定義index=10+x,得出x的值后,重新計算EPTP,并將新的EPTP寫回到對應的VMCS中;
步驟4,執行EPTP switching功能;
步驟5,調用VMI啟動模塊;向VMI啟動模塊傳入Domain ID,新的EPTP字段等用于用戶啟動VMI的參數。
4.根據權利要求1所述的一種基于CPU硬件特性的虛擬機自省觸發方法,其特征在于,所述VMI啟動步驟具體包括:
步驟1,在Dom0中啟動Xentrace;
步驟2,將接下來需要傳入VMI程序的參數domain ID、新的EPTP寫入到Xentrace的核心函數—TRACE_ND()中;
步驟3,當TRACE_ND()第一次執行時,將需要傳入的參數寫入到Xentrace在Xen堆上的trace cache中;
步驟4,Dom0中的daemon程序通過輪詢的方式監控該trace cache,若發現有新的參數傳入,則調用Dom0中的寫好的基于libVMI虛擬機自省程序。
5.一種基于CPU硬件特性的虛擬機自省觸發系統,其特征在于,包括
VMFUNC感知模塊:在用戶空間中的被監控程序中插入VMFUNC指令,并讀取當前的EPTP,并以此比對該EPTP是否被修改;
參數傳遞模塊:啟動被監控程序,并在虛擬機管理器中的重載后的RDTSC模擬指令中檢測虛擬機擴展頁表指針值的變化,如果變化超過閾值,則判斷為用戶空間中被監控程序運行了,則為用戶意欲觸發虛擬機自省程序,此時虛擬機管理器獲取用戶虛擬機的Domain ID與EPTP值,寫入trace buffer緩沖區中;
VMI啟動模塊:虛擬機管理器觸發一個VIRQ_TBUF中斷,通知Dom0獲取緩沖區中的內容,然后Dom0應用XenTrace解析緩沖區的內容,獲取步驟四中的Domain ID與EPTP值,傳入虛擬機自省程序,Dom0啟動虛擬機自省程序,輸出實時監控內容。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢大學,未經武漢大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710738034.4/1.html,轉載請聲明來源鉆瓜專利網。





