[發明專利]一種Windows平臺下檢測虛擬機監視器存在的方法有效
| 申請號: | 201110003479.0 | 申請日: | 2011-01-10 |
| 公開(公告)號: | CN102063594A | 公開(公告)日: | 2011-05-18 |
| 發明(設計)人: | 寧劍;劉波;陳林;肖楓濤;王天佐;陳新;張靜;馬曉龍;彭磊 | 申請(專利權)人: | 中國人民解放軍國防科學技術大學 |
| 主分類號: | G06F21/00 | 分類號: | G06F21/00;G06F9/455 |
| 代理公司: | 國防科技大學專利服務中心 43202 | 代理人: | 郭敏 |
| 地址: | 410073 湖*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 windows 平臺 檢測 虛擬機 監視器 存在 方法 | ||
1.一種Windows平臺下檢測虛擬機監視器存在的方法,其特征在于包括以下步驟:
第一步、根據頁表緩沖寄存器大小N,通過Windows提供的函數Malloc()為頁表項Allocated?PTEs和?Special?PTE分配內存空間,Allocated?PTEs為分配好內存空間且大小為N的一組頁表項;Special?PTE為分配好內存空間且大小為1的頁表項;頁表項是頁表中的基本組成單位,其內容是當前頁表項對應的物理地址;
第二步、對Allocated?PTEs通過Windows提供的函數Memset()寫入更改映射前地址A即頁表項中存儲的原始物理地址;對Special?PTE寫入更改映射后地址B,即頁表項中存儲的更改以后的物理地址;
第三步、對Allocated?PTEs依次進行訪問,使所有指向地址A的頁表項都存入頁表緩沖寄存器中,也就是說頁表緩沖寄存器內全部的N條記錄都指向更改映射前地址A;
第四步、在不改變頁表緩沖寄存器內容的前提下,把Allocated?PTEs指針內容依次改為Special?PTE所指向的地址B;
第五步、執行Windows系統中的特權指令RDMSR,如果存在VMM,該指令引起系統控制權的下陷,即系統控制權轉換給VMM;
第六步、設置一個計數器Counter,初始值為N;設置指針i,并使該指針指向頁表緩沖寄存器的起始地址;
第七步、若i?>=起始地址+N,轉第十步;否則轉第八步;
第八步、對指針i所指向的頁表項內的指針地址進行判定:若當前頁表項內的指針地址為更改映射前的地址A,i加1,轉第七步;若當前頁表項內的指針地址不為更改映射前的地址A,轉第九步;
第九步、使計數器Counter數值減1,i加1,并轉第七步;
第十步、判定計數器Counter的數值是否跟頁表緩沖寄存器大小N一致,如果計數器Counter的數值為N,則判定當前系統內不存在VMM;如果計數器Counter的數值小于N,判定當前系統內存在VMM。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科學技術大學,未經中國人民解放軍國防科學技術大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110003479.0/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:向量化數據傳輸的方法和裝置
- 下一篇:一種耐磨耐熱麻口鑄鐵材料及制備方法





