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