專利名稱:移動(dòng)虛擬環(huán)境系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)科學(xué)中的普適計(jì)算環(huán)境領(lǐng)域,特別是涉及一種移動(dòng)虛擬環(huán)境系統(tǒng)。
技術(shù)背景在實(shí)際研究中,研究人員常常因?yàn)楣ぷ餍枰x開(kāi)實(shí)驗(yàn)室,到達(dá)另外的科研環(huán)境繼續(xù)開(kāi) 展研究。在這種情況下,研究人員常常會(huì)面臨和自己所熟悉的實(shí)驗(yàn)室環(huán)境差別很大的科研環(huán) 境,從而迫切希望能夠建立熟悉的、面向個(gè)人研究的流動(dòng)科研環(huán)境。建立以網(wǎng)絡(luò)環(huán)境為基礎(chǔ)的科學(xué)活動(dòng)環(huán)境已經(jīng)成為當(dāng)前國(guó)際計(jì)算機(jī)技術(shù)研究和應(yīng)用的熱點(diǎn) 和前沿領(lǐng)域,引起了國(guó)外政府、學(xué)術(shù)界和工業(yè)界的高度重視,各國(guó)政府紛紛設(shè)立重大計(jì)劃和 項(xiàng)目對(duì)網(wǎng)絡(luò)計(jì)算環(huán)境進(jìn)行研究和開(kāi)發(fā)。目前,結(jié)合虛擬機(jī)技術(shù)的虛擬環(huán)境系統(tǒng)研究還剛剛起步,尚不成熟,沒(méi)有形成一個(gè)統(tǒng)一 的概念。美國(guó)密歇根大學(xué)(University of Michigan)的SVGrid項(xiàng)目提出了一種安全的虛擬網(wǎng)格 計(jì)算環(huán)境,用以保護(hù)網(wǎng)格計(jì)算機(jī)的文件系統(tǒng)和網(wǎng)絡(luò)免受惡意網(wǎng)格應(yīng)用程序的攻擊,其工作機(jī) 制是把網(wǎng)格應(yīng)用程序分配到一個(gè)或多個(gè)網(wǎng)格虛擬機(jī)上,而把這些虛擬機(jī)所涉及的文件系統(tǒng)和 網(wǎng)絡(luò)服務(wù)交給一個(gè)專用的監(jiān)控虛擬機(jī)完成。這樣所有的文件和網(wǎng)絡(luò)訪問(wèn)請(qǐng)求就必須提交給監(jiān) 控虛擬機(jī),因此安全策略得到保證,這種劃分資源的方式保證了即使一個(gè)網(wǎng)格虛擬機(jī)的性能 受到損害,也不能被繞開(kāi)或者禁止執(zhí)行安全策略。該研究更多關(guān)注了引入虛擬機(jī)技術(shù)后的對(duì) 安全問(wèn)題的保證。美國(guó)中田納西大學(xué)(Middle Tennessee State University)的計(jì)算機(jī)實(shí)驗(yàn)室正在研究開(kāi) 發(fā)一種可定制的便攜式虛擬機(jī)(CPVM),并在上面靜態(tài)復(fù)制實(shí)現(xiàn)了虛擬的實(shí)驗(yàn)室環(huán)境,用戶 通過(guò)任何有USB接口或者FTP客戶端的計(jì)算機(jī)都可以運(yùn)行這種虛擬機(jī),進(jìn)入虛擬的研究環(huán)境, 它可以像虛擬操作系統(tǒng)一樣提供編譯器、桌面管理和智能磁盤設(shè)備,這種復(fù)制的結(jié)果和其實(shí) 驗(yàn)室的主機(jī)環(huán)境十分相似。該項(xiàng)目的不足在于只能靜態(tài)的構(gòu)建這種虛擬的實(shí)驗(yàn)室環(huán)境,無(wú)法 做到"移動(dòng)"。美國(guó)佛羅里達(dá)大學(xué)和西北大學(xué)的研究人員聯(lián)合提出了網(wǎng)格計(jì)算的一種新的方法,目標(biāo)是 改變傳統(tǒng)的網(wǎng)格計(jì)算的實(shí)現(xiàn)方式,即把抽象層面從操作系統(tǒng)用戶提到操作系統(tǒng)虛擬機(jī)上,這
種方法基于傳統(tǒng)的操作系統(tǒng)級(jí)虛擬機(jī)和在分布式環(huán)境中管理虛擬機(jī)的中間件機(jī)制,其抽象是 集合了傳統(tǒng)操作系統(tǒng)進(jìn)程和VM狀態(tài)文件的可以動(dòng)態(tài)實(shí)例化和移動(dòng)的虛擬機(jī)。美國(guó)芝加哥大學(xué)(University of Chicago)和阿貢國(guó)家實(shí)驗(yàn)室(Argonne National Laboratory)的研究人員提出虛擬工作空間的概念,在網(wǎng)格環(huán)境中引入兩種服務(wù)虛擬機(jī)倉(cāng) 庫(kù),為工作空間提供一個(gè)管理接口;虛擬機(jī)管理器,用于協(xié)調(diào)虛擬機(jī)的應(yīng)用。該項(xiàng)目將這種 虛擬工作空間更多的視為一種網(wǎng)格服務(wù),每個(gè)空間只能特定地針對(duì)某一具體任務(wù),而對(duì)于資 源要求不同的新任務(wù),只能重新構(gòu)建并執(zhí)行,無(wú)法做到普適性。發(fā)明內(nèi)容本發(fā)明即致力于滿足這種現(xiàn)實(shí)中的迫切需要,提出了一種結(jié)合虛擬機(jī)技術(shù)的移動(dòng)虛擬環(huán) 境系統(tǒng),其作用是在研究人員所使用的當(dāng)前主機(jī)上,將目標(biāo)主機(jī)的工作環(huán)境描述、定制、復(fù) 制并呈現(xiàn),從而為研究人員提供一個(gè)移動(dòng)的熟悉的虛擬工作環(huán)境系統(tǒng)。為此,本發(fā)明解決技術(shù)問(wèn)題的技術(shù)方案是提供一種移動(dòng)虛擬環(huán)境系統(tǒng),其分別構(gòu)建于 當(dāng)前主機(jī)和目標(biāo)主機(jī)上,使當(dāng)前主機(jī)能呈現(xiàn)目標(biāo)主機(jī)的工作環(huán)境,其特征在于,包括監(jiān)視 層,虛擬機(jī),虛擬環(huán)境任務(wù)管理器,主機(jī)操作系統(tǒng),主機(jī)應(yīng)用程序及前臺(tái)界面,其中監(jiān)視層直接運(yùn)行于當(dāng)前主機(jī)的物理硬件之上,它向上層的虛擬機(jī)提供一個(gè)虛擬接口集, 以和底層的物理硬件進(jìn)行交互;虛擬機(jī)為移動(dòng)虛擬環(huán)境系統(tǒng)提供配置和裝載的載體,其包括域0和域U,域O在系統(tǒng)引 導(dǎo)時(shí)自動(dòng)創(chuàng)建,其依靠監(jiān)視層提供的域O控制接口來(lái)創(chuàng)建和管理域U,并能執(zhí)行管理任務(wù); 域U是用戶真正使用的域,其負(fù)責(zé)完成具體任務(wù)的接收、處理以及結(jié)果的返回;主機(jī)操作系統(tǒng)為運(yùn)行在監(jiān)視層上的操作系統(tǒng),其結(jié)合運(yùn)行于其中的軟件資源共同為移動(dòng) 虛擬環(huán)境系統(tǒng)提供主機(jī)環(huán)境信息;虛擬環(huán)境任務(wù)管理器負(fù)責(zé)在移動(dòng)虛擬環(huán)境系統(tǒng)搭建起來(lái)后,保證移動(dòng)虛擬環(huán)境系統(tǒng)對(duì)于 研究人員提交的任務(wù)來(lái)說(shuō)是可用的,是可以執(zhí)行并返回結(jié)果的,該虛擬環(huán)境任務(wù)管理器包括 本地接口、遠(yuǎn)程接口、輸入接口和輸出接口,本地接口用于與主機(jī)操作系統(tǒng)聯(lián)系,遠(yuǎn)程接口 用于與遠(yuǎn)程主機(jī)聯(lián)系,輸入接口用于接收前臺(tái)界面提交的任務(wù),輸出接口用于將任務(wù)執(zhí)行結(jié) 果返回前臺(tái)界面;主機(jī)應(yīng)用程序是在主機(jī)操作系統(tǒng)上運(yùn)行的應(yīng)用程序,其是主機(jī)環(huán)境信息的重要組成部分; 前臺(tái)界面提供給用戶定制虛擬環(huán)境的圖形化界面,以及任務(wù)提交及結(jié)果返回的界面。 其中,所述監(jiān)視層的虛擬接口集包括虛擬CPU,虛擬內(nèi)存,虛擬磁盤,虛擬網(wǎng)卡等。
其中,所述域0中運(yùn)行有虛擬環(huán)境控制器,通過(guò)監(jiān)視層的域O控制接口負(fù)責(zé)對(duì)整個(gè)虛擬 環(huán)境的定制、裝載等任務(wù),該虛擬環(huán)境控制器主要包括描述器、定制器、裝載器及傳送器, 描述器負(fù)責(zé)描述環(huán)境信息及典型刻畫各種軟件資源生成描述文件;定制器根據(jù)用戶的要求和 描述文件生成配置策略;裝載器根據(jù)配置策略裝載虛擬機(jī);傳送器負(fù)責(zé)將目標(biāo)主機(jī)的配置策 略傳送到當(dāng)前主機(jī),當(dāng)前主機(jī)也通過(guò)傳送器接受目標(biāo)主機(jī)的配置策略,傳送器也在移動(dòng)虛擬 環(huán)境系統(tǒng)裝載起來(lái)后負(fù)責(zé)和虛擬環(huán)境任務(wù)管理器的交互,以完成任務(wù)的分發(fā)執(zhí)行等功能。其中,所述虛擬環(huán)境任務(wù)管理器包括分發(fā)器,它主要負(fù)責(zé)判斷一個(gè)具體的任務(wù)究竟是交 付給虛擬機(jī)本身完成還是需要使用其他的主機(jī)或虛擬機(jī)資源,如果虛擬機(jī)自身的資源足夠完 成該任務(wù),那么就直接在本地虛擬機(jī)上執(zhí)行完畢,將結(jié)果從前臺(tái)界面上返回給用戶;否則需 要使用當(dāng)前主機(jī)的本地資源,或提交給遠(yuǎn)程的目的主機(jī),由其調(diào)度適用的資源執(zhí)行完成,并 將結(jié)果返回給前臺(tái)界面。其中,所述的域U包括定制軟件和任務(wù)展示層,定制軟件是在創(chuàng)建配置該域時(shí),由虛擬 環(huán)境控制器根據(jù)主機(jī)環(huán)境信息及用戶需求定制安裝的軟件資源,當(dāng)任務(wù)來(lái)臨時(shí),定制軟件參 與任務(wù)的執(zhí)行任務(wù)展示層負(fù)責(zé)任務(wù)的提交和結(jié)果的返回,并通過(guò)前臺(tái)界面對(duì)研究人員"可見(jiàn)"。相對(duì)于現(xiàn)有技術(shù),本發(fā)明具有如下有益效果相對(duì)于利用移動(dòng)終端等設(shè)備攜帶個(gè)人工作空間的方法,移動(dòng)虛擬環(huán)境系統(tǒng)的優(yōu)勢(shì)在于 研究人員無(wú)需隨身攜帶物理設(shè)備,不負(fù)責(zé)物理資源的安全性,而轉(zhuǎn)交給網(wǎng)絡(luò)負(fù)責(zé)傳輸數(shù)據(jù)的 安全和可靠性;最重要的,由于移動(dòng)終端自身資源所限,原有科研環(huán)境中的一些大規(guī)模計(jì)算 資源無(wú)法通過(guò)筆記本電腦等終端攜帶,造成其上的工作空間常常不可用。而使用結(jié)合網(wǎng)絡(luò)環(huán) 境的移動(dòng)虛擬環(huán)境系統(tǒng),可以通過(guò)建立與其他虛擬環(huán)境或主機(jī)的協(xié)同工作機(jī)制來(lái)解決這個(gè)問(wèn) 題。
圖1是移動(dòng)虛擬環(huán)境系統(tǒng)的體系結(jié)構(gòu); 圖2是移動(dòng)虛擬環(huán)境系統(tǒng)的層次結(jié)構(gòu); 圖3是移動(dòng)虛擬環(huán)境系統(tǒng)的工作流; 圖4是移動(dòng)虛擬環(huán)境系統(tǒng)的應(yīng)用場(chǎng)景。
具體實(shí)施方式
移動(dòng)虛擬環(huán)境系統(tǒng)的體系結(jié)構(gòu)如圖1所示,移動(dòng)虛擬環(huán)境系統(tǒng)的體系結(jié)構(gòu)主要分為以下幾個(gè)組成部分監(jiān)視層,虛擬
機(jī),虛擬環(huán)境任務(wù)管理器,主機(jī)應(yīng)用程序,主機(jī)操作系統(tǒng)以及前臺(tái)界面。其中虛擬機(jī)主要包 括域0和域U,為移動(dòng)虛擬環(huán)境系統(tǒng)提供配置和裝載的載體;主機(jī)操作系統(tǒng)主要提供初始的 主機(jī)環(huán)境信息。下面對(duì)圖1中所示的各主要部件進(jìn)行解釋。 監(jiān)視層移動(dòng)虛擬環(huán)境系統(tǒng)基于虛擬機(jī)技術(shù),監(jiān)視層是直接運(yùn)行于硬件之上的一層,它向上層的虛擬機(jī)提供一個(gè)虛擬接口集(例如虛擬CPU、虛擬內(nèi)存、虛擬磁盤等),以和底層的物理硬件(處理器、內(nèi)存、磁盤等)進(jìn)行交互。虛擬機(jī)分為兩種域域0和域U。域O在系統(tǒng)引導(dǎo)時(shí)自動(dòng)創(chuàng)建,它擁有特殊的管理權(quán)限,可以創(chuàng)建和管理其它更多的域(域u)。它能執(zhí)行管理任務(wù),包括虛擬機(jī)的體眠、喚醒和遷移 等等。但是域o不能直接控制管理其他域,它必須依靠監(jiān)視層提供的域o控制接口來(lái)完成任 務(wù)。而對(duì)于該控制接口來(lái)說(shuō),也只允許被域o訪問(wèn)調(diào)用,其他域是沒(méi)有權(quán)限訪問(wèn)使用該接口 的。移動(dòng)虛擬環(huán)境系統(tǒng)即通過(guò)域o訪問(wèn)監(jiān)視層的控制接口,以管理整個(gè)系統(tǒng)。在域o中實(shí)現(xiàn)的虛擬環(huán)境控制器中的各個(gè)功能模塊,也只有通過(guò)監(jiān)視層的域0控制接口才能實(shí)現(xiàn)所想要達(dá)到的功能。運(yùn)行在監(jiān)視層上的操作系統(tǒng)稱為主機(jī)操作系統(tǒng),結(jié)合運(yùn)行于其中的軟件層資源共同為移 動(dòng)虛擬環(huán)境系統(tǒng)提供主機(jī)環(huán)境信息。如果該主機(jī)為目標(biāo)主機(jī),那么其主機(jī)環(huán)境信息就是研究 人員定制個(gè)人化的移動(dòng)虛擬環(huán)境系統(tǒng)生成配置策略時(shí)的主要參考來(lái)源之一。 虛擬環(huán)境控制器虛擬環(huán)境控制器是移動(dòng)虛擬環(huán)境系統(tǒng)的關(guān)鍵組成部分之一,運(yùn)行在域o中,通過(guò)監(jiān)視層的控制接口負(fù)責(zé)對(duì)整個(gè)虛擬環(huán)境的定制、裝載等任務(wù)。它主要包括描述器、定制器、裝載器及傳送器。描述器負(fù)責(zé)描述環(huán)境信息及典型刻畫各種軟件資源;定制器和裝載器根據(jù)研究人 員的要求或配置策略裝載虛擬機(jī);傳送器負(fù)責(zé)將所需要的配置策略傳送到當(dāng)前主機(jī),并在移 動(dòng)虛擬環(huán)境系統(tǒng)裝載起來(lái)后負(fù)責(zé)和任務(wù)管理器的交互,以完成任務(wù)的分發(fā)執(zhí)行等功能。虛擬環(huán)境控制器主要負(fù)責(zé)前期的空間定制和裝載工作。其中定制工作主要由描述器和定 制器完成,裝載主要由定制器和裝載器完成。描述器首先要描述目標(biāo)主機(jī)的執(zhí)行環(huán)境,這包括運(yùn)行操作系統(tǒng)的版本等信息,以及一些 常用軟件的信息。通過(guò)典型化的刻畫這些描述信息,得到目標(biāo)主機(jī)描述環(huán)境的描述文件,并 提供給定制器,供研究人員參考、選擇以生成最后的配置策略。定制器主要是結(jié)合描述文件及研究人員個(gè)人化的選擇,得到虛擬機(jī)的基本配置信息,最 終生成虛擬環(huán)境的配置策略。由于描述文件中所列出的軟件資源并不一定是研究人員在本次 研究活動(dòng)中所必需的軟件資源,研究人員可以根據(jù)本次研究活動(dòng)的實(shí)際需求來(lái)選擇需要用到
的軟件資源,這樣就達(dá)到了盡量精簡(jiǎn)配置策略的目的。定制器主要是根據(jù)描述文件及研究人員實(shí)際選擇,生成最后的配置策略,并提供給裝載 器和傳送器。裝載器用其來(lái)配置虛擬環(huán)境,當(dāng)前主機(jī)請(qǐng)求傳輸配置策略,由目標(biāo)主機(jī)的傳送 器通過(guò)網(wǎng)絡(luò)將配置策略發(fā)送到當(dāng)前主機(jī)的傳送器。裝載器根據(jù)配置策略按研究人員的需求分配相應(yīng)虛擬機(jī)資源(虛擬內(nèi)存的大小,虛擬磁 盤的容量等),啟動(dòng)虛擬機(jī),并根據(jù)配置策略選擇安裝相應(yīng)的軟件資源。 虛擬環(huán)境任務(wù)管理器虛擬環(huán)境任務(wù)管理器是移動(dòng)虛擬環(huán)境系統(tǒng)的另一個(gè)關(guān)鍵組成部分,它主要負(fù)責(zé)在移動(dòng)虛 擬環(huán)境系統(tǒng)搭建起來(lái)后,保證其對(duì)于研究人員提交的任務(wù)來(lái)說(shuō)是可用的,是可以執(zhí)行并返回 結(jié)果的。通過(guò)使用虛擬環(huán)境任務(wù)控制器,研究人員可以靜態(tài)地搭建起一個(gè)基于虛擬機(jī)的移動(dòng)虛擬 環(huán)境系統(tǒng),但是該虛擬環(huán)境限于自身虛擬機(jī)載體的有限資源,只能完成涉及較少資源的簡(jiǎn)單 任務(wù),即在自身虛擬機(jī)上可以直接執(zhí)行完成的任務(wù)。這對(duì)于研究人員來(lái)說(shuō)是十分不方便的, 甚至是不可用的。實(shí)際的科研工作常常涉及大規(guī)模的數(shù)據(jù)計(jì)算,以及使用大規(guī)模的軟件或硬 件資源才能夠完成。在這種情況下,搭建起來(lái)的移動(dòng)虛擬環(huán)境系統(tǒng)對(duì)于研究人員來(lái)說(shuō)不能僅 僅是靜態(tài)的工作環(huán)境,它應(yīng)該能夠和更豐富的資源相連接起來(lái),如和當(dāng)前主機(jī)及目標(biāo)主機(jī)通 過(guò)網(wǎng)絡(luò)連接在一起,從而可以調(diào)度和使用各個(gè)主機(jī)上更豐富的資源為己所用,以完成研究人 員可能提交的復(fù)雜任務(wù)。虛擬環(huán)境任務(wù)管理器的核心組成部分是分發(fā)器,它主要負(fù)責(zé)判斷一個(gè)具體的任務(wù)究竟是 交付給虛擬機(jī)本身完成還是需要使用其他的主機(jī)或虛擬機(jī)資源。如果虛擬機(jī)自身的資源足夠 完成該任務(wù),那么就直接在本地虛擬機(jī)上執(zhí)行完畢,將結(jié)果從前臺(tái)界面上返回給研究人員; 否則需要使用當(dāng)前主機(jī)的本地資源,或提交給遠(yuǎn)程的目的主機(jī),由其調(diào)度適用的資源執(zhí)行完 成,并將結(jié)果返回給移動(dòng)虛擬環(huán)境系統(tǒng)的前臺(tái)界面?;诜职l(fā)器的功能,另外各部分組成部分的功能包括輸入接口主要是為研究人員提供任務(wù)的提交接口,前臺(tái)界面通過(guò)它將任務(wù)提交給分發(fā)器, 由其決定在何處執(zhí)行;無(wú)論在本地還是遠(yuǎn)程,任務(wù)執(zhí)行完畢后,得到的結(jié)果都通過(guò)輸出接口 輸出到前臺(tái)界面,即返回給研究人員任務(wù)執(zhí)行完的結(jié)果。本地和遠(yuǎn)程接口都是和虛擬環(huán)境控制器中的傳送器配合實(shí)現(xiàn)功能的,如果分發(fā)器決定執(zhí) 行任務(wù)需要本地主機(jī)軟件資源的參與,那么就通過(guò)本地接口和傳送器將任務(wù)提交給本地主機(jī), 由其調(diào)度必要的本地主機(jī)資源執(zhí)行任務(wù);如果分發(fā)器判斷結(jié)合上本地主機(jī)軟件資源的參與仍 然不能完成任務(wù),還需要遠(yuǎn)程主機(jī)上的資源,那么就通過(guò)遠(yuǎn)程接口和傳送器將任務(wù)提交給遠(yuǎn)
程主機(jī),由其調(diào)度必要的遠(yuǎn)程主機(jī)資源執(zhí)行任務(wù)。 移動(dòng)虛擬環(huán)境系統(tǒng)前臺(tái)界面移動(dòng)虛擬環(huán)境系統(tǒng)前臺(tái)界面是研究人員可以看到的界面,它屏蔽了任務(wù)在后臺(tái)執(zhí)行時(shí)的 一切細(xì)節(jié)。對(duì)于研究人員來(lái)說(shuō),他們并不知道自己所提交的任務(wù)具體是在本地虛擬機(jī)還是在 遠(yuǎn)程主機(jī)上完成的,即任務(wù)的執(zhí)行過(guò)程對(duì)其來(lái)說(shuō)是"透明"的,移動(dòng)虛擬環(huán)境系統(tǒng)只是要確 保研究人員在可以忍受的時(shí)間內(nèi)得到任務(wù)的執(zhí)行結(jié)果。移動(dòng)虛擬環(huán)境系統(tǒng)搭建起來(lái)之前,研究人員在當(dāng)前主機(jī)上所面臨的是關(guān)于定制虛擬環(huán)境 的界面,研究人員可以根據(jù)目標(biāo)主機(jī)的主機(jī)環(huán)境信息,根據(jù)自己的喜好和需要選擇合適的硬 件及軟件資源,最終生成移動(dòng)虛擬環(huán)境系統(tǒng)的個(gè)人化配置策略。根據(jù)配置策略裝載配置起研究人員所需要的移動(dòng)虛擬環(huán)境系統(tǒng)后,研究人員就可以在其 中看到可以提交任務(wù)的虛擬環(huán)境執(zhí)行界面。研究人員將任務(wù)提交給該界面,如果任務(wù)是簡(jiǎn)單 任務(wù),研究人員會(huì)很快地得到任務(wù)的執(zhí)行結(jié)果;如果是復(fù)雜任務(wù),需要主機(jī)資源的參與,那 么研究人員在提交任務(wù)后可以利用虛擬環(huán)境進(jìn)行其他工作,如執(zhí)行一些需要資源較少的任務(wù), 之前的復(fù)雜任務(wù)自動(dòng)地交由后臺(tái)執(zhí)行, 一旦執(zhí)行完畢后會(huì)立即將最后結(jié)果返回給研究人員。移動(dòng)虛擬環(huán)境系統(tǒng)的層次結(jié)構(gòu)如圖2所示是移動(dòng)虛擬環(huán)境系統(tǒng)的層級(jí)結(jié)構(gòu)示意圖。IP網(wǎng)絡(luò)是最下面的一層,目標(biāo)主機(jī) 和其他要求復(fù)制呈現(xiàn)其虛擬環(huán)境的主機(jī)(當(dāng)前主機(jī)1、 2)通過(guò)IP網(wǎng)絡(luò)連接起來(lái),并彼此建 立通信;在此基礎(chǔ)之上,運(yùn)行在各個(gè)主機(jī)上的虛擬機(jī)(虛擬機(jī)t、 cl、 c2、 c3)構(gòu)建連接彼 此的虛擬的網(wǎng)絡(luò),可以抽象成為虛擬網(wǎng)絡(luò)這一層;最上面一層即是在各個(gè)虛擬機(jī)之上所呈現(xiàn) 的移動(dòng)虛擬環(huán)境系統(tǒng)(移動(dòng)虛擬環(huán)境系統(tǒng)t、 cl、 c2、 c3),它們共同組成一個(gè)大的虛擬空間, 在這種虛擬空間中協(xié)同的完成研究任務(wù)。從圖2中也可以看出在整個(gè)移動(dòng)虛擬環(huán)境系統(tǒng)的層次結(jié)構(gòu)中任務(wù)到底層物力資源的映射 關(guān)系。在虛擬空間這一層,所有的裝載到目標(biāo)主機(jī)或當(dāng)前主機(jī)的移動(dòng)虛擬環(huán)境系統(tǒng),協(xié)同地 完成同一任務(wù);而在虛擬網(wǎng)絡(luò)層,研究任務(wù)被映射成各種虛擬資源,它們通過(guò)虛擬網(wǎng)絡(luò)互相 交互,以支持上層任務(wù)的完成;在IP網(wǎng)絡(luò)層,上層的各種虛擬資源被映射成相關(guān)的實(shí)際物理 資源,它們通過(guò)物理網(wǎng)絡(luò)分發(fā)和使用,并最終完成虛擬空間層的研究任務(wù)。移動(dòng)虛擬環(huán)境系統(tǒng)的工作流移動(dòng)虛擬環(huán)境系統(tǒng)工作流的主要步驟如圖3所示。當(dāng)研究人員需要在當(dāng)前主機(jī)建立一個(gè)移動(dòng)虛擬環(huán)境系統(tǒng)時(shí)(系統(tǒng)開(kāi)始) a) 描述器收集目標(biāo)主機(jī)環(huán)境的各種資源信息,刻畫出足夠描述該環(huán)境的典型信息,并提 供給定制器;如果當(dāng)前主機(jī)的傳送器已經(jīng)收到目標(biāo)主機(jī)傳送來(lái)的狀態(tài)信息,那么無(wú)需 描述器,而直接把狀態(tài)信息提供給定制器。b) 定制器根據(jù)描述器提供的信息,并結(jié)合研究人員的需求,生成配置策略并提供給裝載 器和傳送器。 'c) 通過(guò)監(jiān)視層的域0控制接口,裝載器在域U中按照配置策略裝載虛擬機(jī),虛擬環(huán)境 即呈現(xiàn)在域U中,研究人員可以進(jìn)入使用,至此虛擬環(huán)境完成裝載實(shí)現(xiàn)(系統(tǒng)結(jié)束)。d) 研究人員使用虛擬環(huán)境執(zhí)行某項(xiàng)任務(wù)時(shí)(任務(wù)開(kāi)始),如果虛擬機(jī)自身的資源足夠執(zhí) 行這項(xiàng)任務(wù),研究人員就能很快地得到返回結(jié)果(任務(wù)結(jié)束)。e) 如果虛擬機(jī)自身的資源不足以完成這項(xiàng)任務(wù),那么就交由任務(wù)管理器來(lái)決定如何執(zhí)行 該任務(wù)。f) 如果執(zhí)行該任務(wù)需要當(dāng)前主機(jī)的數(shù)據(jù)或軟件資源,任務(wù)管理器就把該任務(wù)交由當(dāng)前主 機(jī)完成,并返回結(jié)果;如果當(dāng)前主機(jī)所提供的資源仍不足以執(zhí)行該任務(wù),任務(wù)管理器 就把其提交給目標(biāo)主機(jī),由目標(biāo)主機(jī)調(diào)用網(wǎng)絡(luò)環(huán)境中的適用資源來(lái)完成這項(xiàng)任務(wù),并 返回執(zhí)行結(jié)果。當(dāng)研究人員在演示界面看到任務(wù)的執(zhí)行結(jié)果時(shí),任務(wù)執(zhí)行過(guò)程亦宣告 結(jié)束(任務(wù)結(jié)束)。移動(dòng)虛擬環(huán)境系統(tǒng)的應(yīng)用場(chǎng)景研究人員因?yàn)檠芯咳蝿?wù)的實(shí)際需要離開(kāi)實(shí)驗(yàn)室,無(wú)法使用實(shí)驗(yàn)室的計(jì)算機(jī)及其所用的計(jì) 算、存儲(chǔ)、數(shù)據(jù)等資源。在這里,實(shí)驗(yàn)室的計(jì)算機(jī)即稱為目標(biāo)主機(jī)。研究人員到達(dá)新的地點(diǎn),使用新的計(jì)算機(jī),稱為當(dāng)前主機(jī)。研究人員面臨新的工作環(huán)境, 但是還想用自己實(shí)驗(yàn)室計(jì)算機(jī)上的工作環(huán)境,于是就需要將工作環(huán)境從目標(biāo)主機(jī)復(fù)制到當(dāng)前 主機(jī)來(lái)滿足要求,即虛擬環(huán)境的移動(dòng)。虛擬環(huán)境的移動(dòng)實(shí)際上是虛擬機(jī)之間通過(guò)底層的IP網(wǎng)絡(luò)進(jìn)行通信,通過(guò)實(shí)際的數(shù)據(jù)傳輸, 將定制好的虛擬環(huán)境在另一臺(tái)主機(jī)上通過(guò)虛擬機(jī)重新復(fù)制呈現(xiàn)出來(lái),如附圖4所示。兩個(gè)實(shí) 驗(yàn)環(huán)境之間,或說(shuō)是當(dāng)前主機(jī)和目標(biāo)主機(jī)之間是通過(guò)IP網(wǎng)絡(luò)相聯(lián)系的,要滿足研究人員的需 要,需要將目標(biāo)主機(jī)的執(zhí)行環(huán)境虛擬化為一個(gè)虛擬環(huán)境,并通過(guò)網(wǎng)絡(luò)傳輸復(fù)制到當(dāng)前主機(jī), 并在裝載好的虛擬機(jī)上裝載配置呈現(xiàn)出來(lái)。研究人員離開(kāi)熟悉的實(shí)驗(yàn)室研究環(huán)境和目標(biāo)主機(jī),到達(dá)新的研究環(huán)境,這時(shí)他/她面對(duì)的 是一個(gè)不熟悉的研究環(huán)境和當(dāng)前主機(jī),但是仍然想在這個(gè)新的研究環(huán)境里繼續(xù)使用所熟悉的 實(shí)驗(yàn)室研究環(huán)境以及目標(biāo)主機(jī)上的各種連接資源①。目標(biāo)主機(jī)首先即裝載一個(gè)虛擬機(jī)并按主機(jī)執(zhí)行環(huán)境進(jìn)行配置,得到研究人員想要的虛擬 環(huán)境②,然后把這臺(tái)虛擬機(jī)的環(huán)境狀態(tài)信息傳送給當(dāng)前主機(jī)③,由當(dāng)前主機(jī)自動(dòng)配置已經(jīng)裝 載好的虛擬機(jī),得到和目標(biāo)主機(jī)上的虛擬機(jī)環(huán)境相同的虛擬機(jī)執(zhí)行環(huán)境,即得到了研究人員 想要的移動(dòng)虛擬環(huán)境系統(tǒng)④。研究人員進(jìn)入這個(gè)虛擬環(huán)境,即進(jìn)入熟悉的目標(biāo)主機(jī)的執(zhí)行環(huán)境⑤,但這只是一種虛擬 化的呈現(xiàn),虛擬環(huán)境完成移動(dòng)后,還需要與其它虛擬環(huán)境或其他主機(jī)基于網(wǎng)絡(luò)協(xié)同地完成研 究工作,使其最終對(duì)于研究人員來(lái)說(shuō)是一個(gè)可操作可執(zhí)行的研究環(huán)境。這個(gè)過(guò)程在虛擬網(wǎng)絡(luò)上即表現(xiàn)為虛擬環(huán)境系統(tǒng)的這種"移動(dòng)"⑥,實(shí)際上仍是通過(guò)底層 的物理網(wǎng)絡(luò)所實(shí)現(xiàn)。
權(quán)利要求
1、一種移動(dòng)虛擬環(huán)境系統(tǒng),其分別構(gòu)建于當(dāng)前主機(jī)和目標(biāo)主機(jī)上,使當(dāng)前主機(jī)能呈現(xiàn)目標(biāo)主機(jī)的工作環(huán)境。其特征在于,包括監(jiān)視層,虛擬機(jī),虛擬環(huán)境任務(wù)管理器,主機(jī)操作系統(tǒng),主機(jī)應(yīng)用程序及前臺(tái)界面,其中監(jiān)視層直接運(yùn)行于主機(jī)的物理硬件之上,它向上層的虛擬機(jī)提供一個(gè)虛擬接口集,以和底層的物理硬件進(jìn)行交互;虛擬機(jī)為移動(dòng)虛擬環(huán)境系統(tǒng)提供配置和裝載的載體,其包括域0和域U,域0在系統(tǒng)引導(dǎo)時(shí)自動(dòng)創(chuàng)建,其依靠監(jiān)視層提供的域0控制接口來(lái)創(chuàng)建和管理域U,并能執(zhí)行管理任務(wù);域U是用戶真正使用的域,其負(fù)責(zé)完成具體任務(wù)的接收、處理以及結(jié)果的返回;主機(jī)操作系統(tǒng)為運(yùn)行在監(jiān)視層上的操作系統(tǒng),其結(jié)合運(yùn)行于其中的軟件資源共同為移動(dòng)虛擬環(huán)境系統(tǒng)提供主機(jī)環(huán)境信息;虛擬環(huán)境任務(wù)管理器負(fù)責(zé)在移動(dòng)虛擬環(huán)境系統(tǒng)搭建起來(lái)后,保證移動(dòng)虛擬環(huán)境系統(tǒng)對(duì)于研究人員提交的任務(wù)來(lái)說(shuō)是可用的,是可以執(zhí)行并返回結(jié)果的。該虛擬環(huán)境任務(wù)管理器包括本地接口、遠(yuǎn)程接口、輸入接口和輸出接口,本地接口用于與主機(jī)操作系統(tǒng)聯(lián)系,遠(yuǎn)程接口用于與遠(yuǎn)程主機(jī)聯(lián)系,輸入接口用于接收前臺(tái)界面提交的任務(wù),輸出接口用于將任務(wù)執(zhí)行結(jié)果返回前臺(tái)界面;主機(jī)應(yīng)用程序是在主機(jī)操作系統(tǒng)上運(yùn)行的應(yīng)用程序,其是主機(jī)環(huán)境信息的重要組成部分;前臺(tái)界面提供給用戶定制虛擬環(huán)境的圖形化界面,以及任務(wù)提交及結(jié)果返回的界面。
2、 如權(quán)利要求1所述的移動(dòng)虛擬環(huán)境系統(tǒng),其特征在于,所述監(jiān)視層的虛擬接口集包括 虛擬CPU,虛擬內(nèi)存,虛擬磁盤,虛擬網(wǎng)卡等。
3、 如權(quán)利要求1所述的移動(dòng)虛擬環(huán)境系統(tǒng),其特征在于,所述域O中運(yùn)行有虛擬環(huán)境控 制器,通過(guò)監(jiān)視層的域O控制接口負(fù)責(zé)對(duì)整個(gè)虛擬環(huán)境的定制、裝載等任務(wù),該虛擬 環(huán)境控制器主要包括描述器、定制器、裝載器及傳送器,描述器負(fù)責(zé)描述環(huán)境信息及 典型刻畫各種軟件資源生成描述文件;定制器根據(jù)用戶的要求和描述文件生成配置策 略;裝載器根據(jù)配置策略裝載虛擬機(jī);目標(biāo)主機(jī)的傳送器負(fù)責(zé)將配置策略傳送到當(dāng)前 主機(jī)的傳送器,傳送器也在移動(dòng)虛擬環(huán)境系統(tǒng)裝載起來(lái)后負(fù)責(zé)和虛擬環(huán)境任務(wù)管理器 的交互,以完成任務(wù)的分發(fā)執(zhí)行等功能。
4、 如權(quán)利要求1所述的移動(dòng)虛擬環(huán)境系統(tǒng),其特征在于,所述虛擬環(huán)境任務(wù)管理器包括 分發(fā)器,它主要負(fù)責(zé)判斷一個(gè)具體的任務(wù)究竟是交付給虛擬機(jī)本身完成還是需要使用其他的主機(jī)或虛擬機(jī)資源,如果虛擬機(jī)自身的資源足夠完成該任務(wù),那么就直接在本 地虛擬機(jī)上執(zhí)行完畢,將結(jié)果從前臺(tái)界面上返回給用戶;否則需要使用當(dāng)前主機(jī)的本 地資源,或提交給遠(yuǎn)程的目的主機(jī),由其調(diào)度適用的資源執(zhí)行完成,并將結(jié)果返回給 前臺(tái)界面。
5、如權(quán)利要求1所述的移動(dòng)虛擬環(huán)境系統(tǒng),其特征在于所述的域U包括定制軟件和任務(wù) 展示層,定制軟件是在創(chuàng)建配置該域時(shí),由虛擬環(huán)境控制器根據(jù)主機(jī)環(huán)境信息及用戶 需求定制安裝的軟件資源,當(dāng)任務(wù)來(lái)臨時(shí),定制軟件參與任務(wù)的執(zhí)行;任務(wù)展示層負(fù) 責(zé)任務(wù)的提交和結(jié)果的返回,并通過(guò)前臺(tái)界面對(duì)研究人員"可見(jiàn)"。
全文摘要
一種移動(dòng)虛擬環(huán)境系統(tǒng),包括監(jiān)視層,虛擬機(jī),虛擬環(huán)境任務(wù)管理器,主機(jī)操作系統(tǒng),主機(jī)應(yīng)用程序及前臺(tái)界面。其分別構(gòu)建于當(dāng)前主機(jī)和目標(biāo)主機(jī)上,使當(dāng)前主機(jī)能呈現(xiàn)目標(biāo)主機(jī)的工作環(huán)境,其能為用戶在不同的工作地點(diǎn)提供熟悉的虛擬工作環(huán)境。
文檔編號(hào)G06F9/44GK101132329SQ200710121848
公開(kāi)日2008年2月27日 申請(qǐng)日期2007年9月17日 優(yōu)先權(quán)日2007年9月17日
發(fā)明者鵬 呂, 巨燕文, 白躍彬, 陳育軍 申請(qǐng)人:北京航空航天大學(xué)