專利名稱:一種面向mips平臺的系統(tǒng)虛擬機(jī)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明公開了一種系統(tǒng)虛擬機(jī),尤其涉及一種面向MIPS平臺的系統(tǒng)虛擬機(jī)(英文簡寫為MIPSVM),MIPS指“無內(nèi)部互鎖流水級的微處理器”(Microprocessor without interlocked piped stages)。屬于計(jì)算機(jī)技術(shù)領(lǐng)域。
背景技術(shù):
系統(tǒng)虛擬化是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)與計(jì)算機(jī)系統(tǒng)軟件相結(jié)合的一個(gè)重要研究方向。它通過在計(jì)算機(jī)系統(tǒng)硬件和操作系統(tǒng)之間增加虛擬機(jī)監(jiān)控器(Virtual Machine Monitor,簡稱VMM),對計(jì)算機(jī)系統(tǒng)的物理資源進(jìn)行抽象,隔離硬件系統(tǒng)結(jié)構(gòu)和軟件之間的緊密依賴關(guān)系;通過動態(tài)組織CPU、內(nèi)存、1/0等多種物理資源,靈活構(gòu)建多個(gè)相互隔離的虛擬計(jì)算機(jī), 滿足多樣化的應(yīng)用需求;通過發(fā)掘應(yīng)用間的時(shí)間和空間的并行性,提高資源的利用率。虛擬化技術(shù)在20世紀(jì)60年代首次提出,當(dāng)時(shí)主要是為了對大型機(jī)硬件進(jìn)行分區(qū)以提高硬件利用率。在20世紀(jì)80年代和90年代,由于客戶端-服務(wù)器應(yīng)用程序以及價(jià)格低廉的x86服務(wù)器和臺式機(jī)的發(fā)展,在分布式計(jì)算技術(shù)日益成熟的同時(shí),虛擬化技術(shù)當(dāng)時(shí)基本銷聲匿跡了。20世紀(jì)90年代Windows的廣泛使用以及Linux作為服務(wù)器操作系統(tǒng)的出現(xiàn),奠定了 x86服務(wù)器的行業(yè)標(biāo)準(zhǔn)地位。隨著x86服務(wù)器和桌面部署的增長,帶來了新的如伸縮性、靈活性和可靠性差等IT基礎(chǔ)架構(gòu)和運(yùn)作難題,這使得虛擬化技術(shù)近年來得到了復(fù)興。近年隨著云計(jì)算的日益推廣,虛擬化技術(shù)在商業(yè)應(yīng)用上的優(yōu)勢日益體現(xiàn)。虛擬化改變了企業(yè)傳統(tǒng)的IT基礎(chǔ)設(shè)施部署和管理方式,大幅提高了基礎(chǔ)設(shè)施的伸縮性、靈活性和可靠性。其概念已經(jīng)深入到企業(yè)甚至每個(gè)人的日常的工作與生活中,成為了目前全球軟件產(chǎn)業(yè)中發(fā)展最快的技術(shù)之一。近年來,隨著MIPS CPU性能的飛速發(fā)展,MIPS CPU的應(yīng)用已經(jīng)不僅限于傳統(tǒng)的嵌入系統(tǒng)領(lǐng)域,部分高性能的MIPS CPU也被逐漸應(yīng)用到商用服務(wù)器中,也即無論嵌入式還是服務(wù)器領(lǐng)域都對MIPS平臺及其虛擬化應(yīng)用需求的日益擴(kuò)大。另一方面隨著虛擬化技術(shù)快速發(fā)展以來,包括MIPS架構(gòu)處理器在內(nèi)的嵌入式處理器領(lǐng)域,對虛擬化技術(shù)提出了新的需求。然而,通過對X86,PowerPC (PPC),MIPS等的對比(表1)可以看出,MIPS CPU存在迫切
權(quán)利要求
1.一種面向MIPS平臺的系統(tǒng)虛擬機(jī),基于KVM實(shí)現(xiàn),采用宿主模型架構(gòu),其特征在于 該虛擬機(jī)主要包括(1)物理硬件物理硬件進(jìn)一步包括物理CPU,物理內(nèi)存,物理外設(shè);物理硬件是整個(gè)系統(tǒng)虛擬機(jī)的硬件基礎(chǔ)設(shè)施;(2)宿主OS宿主OS為物理硬件提供OS ;(3)虛擬機(jī)內(nèi)核虛擬機(jī)內(nèi)核進(jìn)一步包括CPU虛擬化子系統(tǒng)、內(nèi)存虛擬化子系統(tǒng)以及I/ 0虛擬化子系統(tǒng);虛擬機(jī)內(nèi)核是整個(gè)系統(tǒng)虛擬機(jī)的核心,它負(fù)責(zé)虛擬機(jī)的創(chuàng)建、銷毀、調(diào)度, 虛擬機(jī)內(nèi)存的分配、管理,為虛擬機(jī)提供物理CPU、物理內(nèi)存和I/O設(shè)備的虛擬抽象,同時(shí)與宿主QEMU進(jìn)程的設(shè)備模型協(xié)同完成I/O設(shè)備的模擬;(4)虛擬硬件虛擬硬件進(jìn)一步包括虛擬CPU,虛擬內(nèi)存,虛擬外設(shè);虛擬硬件是整個(gè)系統(tǒng)虛擬機(jī)的重要輸出,為上層客戶OS和虛擬化應(yīng)用提供虛擬硬件支持;(5)設(shè)備模型設(shè)備模型為宿主QEMU進(jìn)程提供設(shè)備;(6)客戶OS客戶OS是上層客戶機(jī)應(yīng)用和虛擬硬件的中間件;(7)宿主QEMU進(jìn)程宿主QEMU運(yùn)行于宿主操作系統(tǒng)的用戶空間,主要有兩個(gè)作用1) 作為虛擬機(jī)內(nèi)核的用戶空間操作接口 ;2)協(xié)助虛擬機(jī)內(nèi)核完成I/O虛擬化任務(wù)。
2.如權(quán)利要求1所述的一種面向MIPS平臺的系統(tǒng)虛擬機(jī)的實(shí)現(xiàn)方法,該實(shí)現(xiàn)方法是基于一種面向MIPS平臺的系統(tǒng)虛擬機(jī)執(zhí)行模式,該執(zhí)行模式在原有Linux操作系統(tǒng)的用戶模式和內(nèi)核模式兩種執(zhí)行模式的基礎(chǔ)上,增加了一種管理模式,即一種面向MIPS平臺的系統(tǒng)虛擬機(jī)執(zhí)行模式主要包括三種執(zhí)行模式(1)管理模式管理模式用于執(zhí)行非I/O的客戶機(jī)內(nèi)核代碼;(2)內(nèi)核模式內(nèi)核模式用于實(shí)現(xiàn)到管理模式的切換,并處理那些由于I/O操作而從管理模式退出的代碼或者特殊指令,虛擬機(jī)內(nèi)核工作在這種模式下;C3)用戶模式用戶模式用于執(zhí)行客戶機(jī)的用戶代碼,同時(shí)宿主機(jī)QEMU進(jìn)程也運(yùn)行在這種模式下;基于以上執(zhí)行模式,一種面向MIPS平臺的系統(tǒng)虛擬機(jī)實(shí)現(xiàn)方法,主要包括如下幾個(gè)步驟步驟Sl 用戶模式下的宿主QEMU進(jìn)程通過系統(tǒng)調(diào)用,進(jìn)入內(nèi)核模式; 步驟S2 內(nèi)核模式中,虛擬機(jī)內(nèi)核為虛擬機(jī)創(chuàng)建和初始化虛擬CPU和虛擬內(nèi)存,然后返回用戶模式;步驟S3 用戶模式下的宿主QEMU進(jìn)程再次通過系統(tǒng)調(diào)用,進(jìn)入內(nèi)核模式; 步驟S4 內(nèi)核模式中,首先實(shí)施步驟S41,然后實(shí)施步驟S42 ;步驟S41和步驟S42實(shí)施內(nèi)容如下步驟S41 虛擬機(jī)內(nèi)核準(zhǔn)備客戶機(jī)的運(yùn)行環(huán)境,載入客戶機(jī)代碼;步驟S42 根據(jù)上次發(fā)生退出前所處的操作模式,相應(yīng)切換至管理模式或用戶模式;步驟S5 判斷客戶機(jī)代碼執(zhí)行過程是否發(fā)生異常;如發(fā)生異常,則執(zhí)行步驟S6 ; 步驟S6 進(jìn)入運(yùn)行于內(nèi)核模式的虛擬機(jī)內(nèi)核執(zhí)行異常處理操作,異常處理后執(zhí)行S7 ; 步驟S7 進(jìn)行I/O訪問判斷,如果是非I/O訪問,執(zhí)行步驟S8。如果是I/O訪問,執(zhí)行SlO ;步驟S8 執(zhí)行步驟S9并執(zhí)行步驟S42,即最終重新進(jìn)入客戶機(jī)代碼運(yùn)行; 步驟S9 內(nèi)存虛擬化;步驟SlO 退出到宿主機(jī)QEMU進(jìn)程進(jìn)行I/O訪問的模擬執(zhí)行,執(zhí)行完畢后再次進(jìn)入客戶機(jī)運(yùn)行。
全文摘要
本發(fā)明針對MIPS平臺無硬件輔助支持等問題,采用輕量級虛擬化技術(shù),公開了一種面向MIPS平臺的虛擬機(jī),為上層應(yīng)用提供了高效的虛擬化基礎(chǔ)設(shè)施支持。在模塊構(gòu)成上,主要包括物理硬件,宿主OS,虛擬機(jī)內(nèi)核,虛擬硬件,設(shè)備模型,客戶OS,宿主QEMU進(jìn)程。在執(zhí)行模式上,主要包括管理模式,內(nèi)核模式和用戶模式。根據(jù)應(yīng)用需求,該方法克服了MIPS處理器無硬件輔助支持等技術(shù)難題并且采用了輕量級的內(nèi)核級虛擬機(jī)技術(shù),即可以滿足嵌入式領(lǐng)域的虛擬化應(yīng)用需求,也可以滿足服務(wù)器領(lǐng)域的虛擬化應(yīng)用需求。因此,本發(fā)明具有輕量級,廣闊的應(yīng)用前景和可產(chǎn)生顯著的經(jīng)濟(jì)效益等特色。
文檔編號G06F9/455GK102402453SQ201210001268
公開日2012年4月4日 申請日期2012年1月4日 優(yōu)先權(quán)日2012年1月4日
發(fā)明者徐威, 肖利民, 阮利 申請人:北京航空航天大學(xué)