[發明專利]Xen虛擬機Fork機制建立方法有效
| 申請號: | 201710026549.1 | 申請日: | 2017-01-14 |
| 公開(公告)號: | CN106775956B | 公開(公告)日: | 2019-09-06 |
| 發明(設計)人: | 張一鳴;章成飛;喻凱;李東升 | 申請(專利權)人: | 中國人民解放軍國防科學技術大學 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 北京中濟緯天專利代理有限公司 11429 | 代理人: | 陸薇薇 |
| 地址: | 410073 湖*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | xen 虛擬機 fork 機制 建立 方法 | ||
本發明屬于計算機虛擬技術領域,具體涉及Xen虛擬機Fork機制建立方法。主要步驟:啟動xen系統,在Xen內核的libxl模塊主函數中,設置兩個進程;父DomU構建完成并啟動起來,讀取Xenstore中自身DomU下的is_parent標志位,判斷若等于1,執行父DomU的fork操作;子DomU構建完成并啟動起來,讀取Xenstore中自身DomU下的is_parent標志位,判斷等于0,執行子DomU的操作;子DomU讀取Xenstore中授權表下標和頁內偏移、寄存器狀態值和要執行的函數名稱,映射授權頁面,恢復寄存器狀態,然后執行函數。
技術領域
本發明屬于計算機虛擬技術領域,具體涉及Xen虛擬機Fork機制建立方法。
背景技術
Xen是一個開放源代碼的虛擬機監視器,在Xen上運行的虛擬機稱為Domain(域),在Xen上的眾多Domain中存在一個特權域用來輔助Xen管理其他Domain,提供相應的虛擬資源服務,特別是其他Domain對I/O設備的訪問,這個特權域稱為Domain0(簡稱:Dom0),而其他則稱為DomainU(簡稱:DomU),本文中Fork機制所指虛擬機均指DomU,Fork表示分叉,克隆的意思。Xen系統實現了共享內存機制,用于Domain之間數據的共享和傳遞。它建立在Domain之間的授權機制之上,即對共享內存的訪問須要預先通過授權。Domain之間的授權機制稱為授權表機制,它是一種基于頁(Pages)的授權訪問機制。Xenstore是Xen提供的一個域間共享的存儲系統,這個系統由Dom0管理和維持。Xenstore是一個具有層次結構的目錄,類似于Linux中的樹形目錄。Xenstore中存儲了Domain之間共享的配置信息,Dom0作為管理域,可以查看整個結構的內容,而DomU只能查看自身的信息。MiniOS是包含在Xen源代碼中的一個輕量級的操作系統內核,主要作為存根域的操作系統,存根域是一個為分解Dom0Qemu設備模型(為Xen的全虛擬化功能提供支持)運行在Xen之上的特殊的系統域。
經過修改的MiniOS成為可以提供單一服務的虛擬機,稱作Unikernel。由此可以將Xen看作一個整體的操作系統,其上運行的各個提供單一服務的Domain看作操作系統中的進程。實際上,Domain在Xen系統中的地位與傳統Linux系統中的進程無異。在Linux系統中,進程通過Fork(分叉)產生子進程,Fork過程首先會對父進程進行克隆,產生一個幾乎完全一樣的子進程,之后父子進程會執行不同的代碼,從而完成不同任務,進程的Fork是Linux中產生新進程的主要方式。受Linux進程Fork的啟發,因此提出Xen之上虛擬機的Fork機制。使虛擬機能在運行過程中Fork出具有相同初始狀態的子虛擬機,去完成其他任務。
虛擬機Fork機制本質上是虛擬機的克隆,但是目前的虛擬機克隆都是屬于靜態克隆,即先將要克隆的虛擬機掛起或關閉,然后手動執行克隆操作,最后恢復原始虛擬機并啟動新虛擬機。不同的虛擬機監視器有著不同的克隆策略。目前業界主流的虛擬機監視器有VMware、KVM和Xen等。VMware支持兩種類型的克隆:完整克隆和鏈接克隆,一個完整克隆是和原始虛擬機完全獨立的一個拷貝,它不和原始虛擬機共享任何資源。可以脫離原始虛擬機獨立使用。一個鏈接克隆需要和原始虛擬機共享同一虛擬磁盤文件,不能脫離原始虛擬機獨立運行。但采用共享磁盤文件卻大大縮短了創建克隆虛擬機的時間,同時還節省了寶貴的物理磁盤空間。KVM與Xen有著相同的兩種虛擬機克隆方式,一個是將虛擬機關閉之后,使用Virt-manager(一個開源的虛擬機管理工具)的Virt-clone工具(或者使用其他虛擬機管理工具)對虛擬機進行克隆,然后修改新虛擬機的主機名和IP地址等;另外一種方式是手動直接復制磁盤文件與配置文件,然后修改配置文件。這兩種方式本質上都是對虛擬機的磁盤文件和配置文件進行了拷貝,均需要掛起或關閉原始虛擬機。目前各種虛擬機監視器中,類似于Linux進程Fork機制這種動態克隆虛擬機的機制還未實現。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科學技術大學,未經中國人民解放軍國防科學技術大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710026549.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種虛擬指令調用系統服務的方法及系統
- 下一篇:一種虛擬機快照實現方法





