[發(fā)明專利]一種針對硬件虛擬化的內(nèi)存監(jiān)控方法和系統(tǒng)有效
| 申請?zhí)枺?/td> | 201210160617.0 | 申請日: | 2012-05-22 |
| 公開(公告)號: | CN102736969A | 公開(公告)日: | 2012-10-17 |
| 發(fā)明(設(shè)計)人: | 田昕暉;高云偉;鄔小龍;孫毓忠;葉川 | 申請(專利權(quán))人: | 中國科學院計算技術(shù)研究所 |
| 主分類號: | G06F11/30 | 分類號: | G06F11/30;G06F9/455 |
| 代理公司: | 北京律誠同業(yè)知識產(chǎn)權(quán)代理有限公司 11006 | 代理人: | 祁建國;梁揮 |
| 地址: | 100080 北*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 針對 硬件 虛擬 內(nèi)存 監(jiān)控 方法 系統(tǒng) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬化環(huán)境Xen,具體涉及一種在虛擬化環(huán)境Xen中利用Windows特權(quán)虛擬機監(jiān)控其他HVM虛擬機內(nèi)存的方法及系統(tǒng),屬于計算機體系結(jié)構(gòu)領(lǐng)域。
背景技術(shù)
近年來,隨著處理器速度的不斷提升和網(wǎng)絡(luò)帶寬的持續(xù)增長,虛擬化技術(shù)得到了廣泛的重視。在數(shù)據(jù)中心中,虛擬化技術(shù)得到了廣泛的應(yīng)用。Xen是由劍橋大學計算機實驗室系統(tǒng)研究組開發(fā)的虛擬機監(jiān)視器,以其高效性和靈活性而著稱。其作為一個高性能的開源的虛擬機軟件,也引起了業(yè)界極大的關(guān)注,其良好的性能表現(xiàn),比物理機僅低3%~5%的性能,也贏得了市場的一片好評。
Xen屬于硬件級虛擬化軟件,即直接運行在硬件級上,為其上運行的操作系統(tǒng)內(nèi)核提供虛擬化的硬件環(huán)境。Xen的結(jié)構(gòu)包括一個虛擬機管理層(Virtual?Machine?Monitor,以下簡稱VMM),在Xen中也稱作管理程序(Xen?Hypervisor),一個特權(quán)域(Privileged?Domain),還有其他的客戶域(Domain),特權(quán)域和客戶域都可以被稱為虛擬機。其中,特權(quán)域成為Domain?0(Dom0),主要功能是輔助Xen管理其他Domain,提供相應(yīng)的虛擬資源服務(wù),其他則稱為Domain?U(DomU)。
由于目前市場占有率比較高的x86架構(gòu)的處理器在設(shè)計之初未考慮支持虛擬化技術(shù),其本身的結(jié)構(gòu)和復(fù)雜性使得在其之上進行虛擬化非常困難,因此,在Xen設(shè)計之初,采用的是一種半虛擬化的解決方案,即通過對客戶機的操作系統(tǒng)(Guest?OS)進行代碼級修改來避開x86架構(gòu)帶來的弊端,但這種做法十分繁瑣,且?guī)砹艘恍┫到y(tǒng)指令級別的沖突以及運行效率的問題。目前Intel與AMD在硬件級都提供了對虛擬化的支持,能夠支持未經(jīng)修改的Guest?OS直接運行,減少了虛擬機運行的系統(tǒng)開銷,這些利用硬件進行虛擬化的虛擬機被稱為硬件虛擬域(Hardware-based?Virtual?Machine,簡稱HVM)。Xen中已經(jīng)提供了對HVM用戶的支持。
內(nèi)存中存有操作系統(tǒng)的內(nèi)核以及執(zhí)行的進程的內(nèi)容,因此,通過對內(nèi)存中內(nèi)容的監(jiān)控,可以獲得執(zhí)行中的進程信息以及操作系統(tǒng)內(nèi)核中主要數(shù)據(jù)的信息,從而更好地分析操作系統(tǒng)的運行狀況,識別出進程的惡意行為,由于每臺虛擬機的內(nèi)存之間是隔離的,利用虛擬化技術(shù)來進行監(jiān)控與本機上進行內(nèi)存監(jiān)控的方法相比具有天生的優(yōu)勢。文獻1“Bryan?D?Payne,Martin?D?P?De?A?Carbone,Wenke?Lee.Secure?and?Flexible?Monitoring?of?Virtual?Machines.ACSAC?2007”中提到一種利用Xen提供的借口在Dom0中建立一套監(jiān)控DomU的內(nèi)存及磁盤信息的方法,但以此種方法為代表的目前虛擬機內(nèi)存監(jiān)控技術(shù)都是以Dom0為監(jiān)控端,且僅能夠監(jiān)控裝有32位操作系統(tǒng)的DomU,這對于64位操作系統(tǒng)越來越普遍的當前形勢來說具有很大的局限性。本發(fā)明是在一臺裝有Windows系統(tǒng)的特權(quán)虛擬機上實現(xiàn)的針對HVM虛擬機的內(nèi)存監(jiān)控,且對于32位操作系統(tǒng)和64位操作系統(tǒng)的DomU都能進行監(jiān)控,比現(xiàn)有的內(nèi)存監(jiān)控技術(shù)更加先進。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種使用HVM特權(quán)虛擬機作為監(jiān)控端,獲取其他DomU內(nèi)存信息的方法及其系統(tǒng),其中,特權(quán)指的是該虛擬機具有與Xen的hypervisor通信的能力,內(nèi)存地址形式主要是虛擬地址,DomU上安裝的操作系統(tǒng)涉及32位與64位的Linux和windows操作系統(tǒng),由于PAE模式已經(jīng)使用得比較普遍,32位系統(tǒng)部分將默認采取PAE模式。
為了讓HVM特權(quán)虛擬機能夠使用Xen提供的Hypercall以及映射機制,我們在該特權(quán)虛擬機中添加IOCTL設(shè)備驅(qū)動,該設(shè)備驅(qū)動模擬Dom0與Xen的交互模式,提供給特權(quán)虛擬機與Xen進行交互的功能,該功能包括使用Xen提供的Hypercall以及映射機制。
本發(fā)明公開一種針對硬件虛擬化的內(nèi)存監(jiān)控方法,包括:
步驟1,建立客戶域DomU,根據(jù)操作系統(tǒng)的運算能力建立內(nèi)存監(jiān)控參數(shù),所述操作系統(tǒng)的運算能力包括32位操作系統(tǒng)和64位操作系統(tǒng);
步驟2,將客戶域DomU的配置文件初始化,導(dǎo)入內(nèi)存監(jiān)控參數(shù),并對內(nèi)存監(jiān)控參數(shù)進行映射操作,實現(xiàn)內(nèi)存監(jiān)控優(yōu)化。
所述的針對硬件虛擬化的內(nèi)存監(jiān)控方法,在步驟2執(zhí)行32位操作系統(tǒng)時包括:
步驟21,用戶提供要映射的DomU的進程的pid、DomU的id值以及虛擬地址;
步驟22,若pid為0,則該被監(jiān)控的虛擬地址屬于內(nèi)核空間;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國科學院計算技術(shù)研究所,未經(jīng)中國科學院計算技術(shù)研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210160617.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





