一種操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法
【專利摘要】本發(fā)明公開了一種操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)及其構(gòu)建方法,該操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)包括客戶端模塊、管理端模塊、數(shù)據(jù)庫模塊、虛擬化平臺(tái)、虛擬機(jī)資源池和虛擬機(jī),各模塊間采用TCP連接進(jìn)行通信,虛擬化平臺(tái)將計(jì)算資源虛擬為虛擬機(jī),以虛擬機(jī)資源池作為虛擬機(jī)容器,客戶端模塊通過所述管理端模塊向虛擬機(jī)轉(zhuǎn)發(fā)操作系統(tǒng)實(shí)驗(yàn)代碼,虛擬機(jī)生成Linux內(nèi)核源碼,并編譯、安裝和啟動(dòng)Linux新內(nèi)核。本發(fā)明操作系統(tǒng)云實(shí)驗(yàn)平容錯(cuò)能力更強(qiáng),能縮短實(shí)驗(yàn)周期,縮小實(shí)驗(yàn)的附加工作量,能直接觸及操作系統(tǒng)內(nèi)核,而不是僅停留在操作系統(tǒng)用戶態(tài)空間,能夠創(chuàng)建一個(gè)操作系統(tǒng)課程的實(shí)驗(yàn)教學(xué)平臺(tái)。
【專利說明】一種操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)領(lǐng)域,特別是涉及一種計(jì)算機(jī)專業(yè)操作系統(tǒng)課程教學(xué)實(shí)驗(yàn)平臺(tái)及其構(gòu)建方法。
【背景技術(shù)】
[0002]操作系統(tǒng)原理是國內(nèi)外計(jì)算機(jī)專業(yè)重要的必修課程,也是教學(xué)與實(shí)踐緊密結(jié)合的課程,不僅要完成常規(guī)的理論知識(shí)學(xué)習(xí),還必須接受一定數(shù)量的實(shí)驗(yàn)訓(xùn)練,甚至包括課程設(shè)計(jì)。許多教育機(jī)構(gòu)設(shè)計(jì)開發(fā)操作系統(tǒng)課程教學(xué)實(shí)驗(yàn)產(chǎn)品,用于改善教學(xué)效果,提高教學(xué)質(zhì)量。
[0003]Minix是一個(gè)微型的類Unix操作系統(tǒng),荷蘭的Andrew S.Tanenbaum教授為了教學(xué)之用而開發(fā),最新版本是Minix 3。將Minix用于操作系統(tǒng)教學(xué),首先需要在物理機(jī)或者虛擬機(jī)上安裝Minix,在閱讀Minix開源代碼的基礎(chǔ)上,根據(jù)實(shí)驗(yàn)要求修改Minix源碼樹,然后重新編譯整個(gè)Minix源碼樹,得到操作系統(tǒng)內(nèi)核,最后運(yùn)行操作系統(tǒng)內(nèi)核并檢驗(yàn)實(shí)驗(yàn)結(jié)果。這種技術(shù)方案的缺陷很明顯:
1、實(shí)驗(yàn)平臺(tái)極其脆弱,細(xì)微的錯(cuò)誤足以致實(shí)驗(yàn)平臺(tái)崩潰,而且恢復(fù)實(shí)驗(yàn)平臺(tái)的代價(jià)很大,在物理機(jī)上需要重新安裝Minix,在虛擬機(jī)上需要還原實(shí)驗(yàn)平臺(tái)的備份文件;
2、實(shí)驗(yàn)的周期很長,由于實(shí)驗(yàn)平臺(tái)的脆弱性,完成一個(gè)實(shí)驗(yàn),可能需要多次恢復(fù)實(shí)驗(yàn)平臺(tái),以至于恢復(fù)實(shí)驗(yàn)平臺(tái)占據(jù)大部分實(shí)驗(yàn)時(shí)間,而且實(shí)驗(yàn)平臺(tái)恢復(fù)與實(shí)驗(yàn)過程本身是串行進(jìn)行,不能并行進(jìn)行,拉長實(shí)驗(yàn)周期;
3、實(shí)驗(yàn)的附加工作量很大,至少需要閱讀Minix大部分的源代碼,不僅要編寫內(nèi)核實(shí)驗(yàn)代碼,還必須掌握Minix內(nèi)核的編譯方法與安裝步驟,而這些與操作系統(tǒng)原理本身并沒有直接關(guān)系。
[0004]部分國內(nèi)普通高校建立了操作系統(tǒng)精品課程,在實(shí)驗(yàn)平臺(tái)設(shè)計(jì)上有存在兩種技術(shù)方案。第一種技術(shù)方案是以Linux或者Windows為實(shí)驗(yàn)平臺(tái),編寫用戶態(tài)實(shí)驗(yàn)代碼驗(yàn)證實(shí)驗(yàn)結(jié)果。這種方案的缺陷是實(shí)驗(yàn)代碼完全位于操作系統(tǒng)的用戶態(tài),根本沒有深入到操作系統(tǒng)內(nèi)核,接觸不到操作系統(tǒng)內(nèi)核。第二種技術(shù)方案是以Linux為實(shí)驗(yàn)平臺(tái),采用編寫用戶態(tài)實(shí)驗(yàn)代碼和修改Linux內(nèi)核代碼相結(jié)合的方式。這種方案存在與Minix類似的問題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于針對(duì)上述操作系統(tǒng)課程實(shí)驗(yàn)平臺(tái)技術(shù)方案存在的缺陷,提供一種基于云計(jì)算的操作系統(tǒng)實(shí)驗(yàn)平臺(tái)構(gòu)建方法,按照該方法構(gòu)建的操作系統(tǒng)實(shí)驗(yàn)平臺(tái)容錯(cuò)能力更強(qiáng),能縮短實(shí)驗(yàn)周期,縮小實(shí)驗(yàn)的附加工作量,能直接觸及操作系統(tǒng)內(nèi)核,而不是僅僅停留在操作系統(tǒng)用戶態(tài)空間。
[0006]本發(fā)明提供的技術(shù)方案是:一種操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,包括構(gòu)建客戶端模塊、管理端模塊、數(shù)據(jù)庫模塊、虛擬化平臺(tái)、虛擬機(jī)資源池和虛擬機(jī),各模塊間采用TCP連接進(jìn)行通信,虛擬化平臺(tái)將計(jì)算資源虛擬為虛擬機(jī),以虛擬機(jī)資源池作為虛擬機(jī)容器,客戶端模塊通過管理端模塊向虛擬機(jī)轉(zhuǎn)發(fā)操作系統(tǒng)實(shí)驗(yàn)代碼,虛擬機(jī)生成Linux內(nèi)核源碼,并編譯、安裝和啟動(dòng)Linux新內(nèi)核,管理端模塊接收所述客戶端模塊提交的操作系統(tǒng)實(shí)驗(yàn)代碼。
[0007]進(jìn)一步地,所述客戶端模塊位于用戶(學(xué)生或者教師)使用的計(jì)算機(jī)終端,至少包括登錄模塊、提交實(shí)驗(yàn)?zāi)K、顯示模塊和注銷模塊,登錄模塊向管理端模塊提出分配虛擬機(jī)的請(qǐng)求;提交實(shí)驗(yàn)?zāi)K向管理端模塊提交操作系統(tǒng)實(shí)驗(yàn)代碼;顯示模塊接收管理端模塊的實(shí)驗(yàn)數(shù)據(jù)并給予顯示輸出;注銷模塊請(qǐng)求管理端模塊回收并釋放虛擬機(jī)資源。
[0008]進(jìn)一步地,所述管理端模塊位于操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)的服務(wù)器,至少包括分配模塊、釋放模塊、修復(fù)模塊、健康檢測(cè)模塊、提交模塊和存儲(chǔ)模塊,分配模塊接收客戶端模塊的登錄請(qǐng)求,向虛擬化平臺(tái)轉(zhuǎn)發(fā)虛擬機(jī)分配請(qǐng)求;釋放模塊接收客戶端模塊的注銷請(qǐng)求,向虛擬化平臺(tái)轉(zhuǎn)發(fā)虛擬機(jī)回收請(qǐng)求;健康檢測(cè)模塊監(jiān)測(cè)所有虛擬機(jī)的運(yùn)轉(zhuǎn)狀態(tài);修復(fù)模塊向虛擬化平臺(tái)請(qǐng)求修復(fù)出現(xiàn)故障的虛擬機(jī);提交模塊接受客戶端模塊提交的實(shí)驗(yàn)代碼,并轉(zhuǎn)發(fā)到指定的虛擬機(jī);存儲(chǔ)模塊接受來自客戶端模塊的數(shù)據(jù),并存儲(chǔ)到數(shù)據(jù)庫模塊。
[0009]進(jìn)一步地,所述數(shù)據(jù)庫模塊位于操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)的服務(wù)器,是操作系統(tǒng)實(shí)驗(yàn)的數(shù)據(jù)存儲(chǔ)場(chǎng)所,存儲(chǔ)來自客戶端模塊的數(shù)據(jù)。
[0010]進(jìn)一步地,所述虛擬機(jī)是進(jìn)行操作系統(tǒng)實(shí)驗(yàn)的軟件環(huán)境,運(yùn)行于虛擬化平臺(tái)上,虛擬機(jī)采用Linux作為操作系統(tǒng),并安裝有必要的工具,包括編譯器、鏈接器和Linux內(nèi)核源碼樹等,用戶在虛擬機(jī)上進(jìn)行操作系統(tǒng)實(shí)驗(yàn),虛擬機(jī)至少包括心跳模塊、補(bǔ)丁模塊、編譯模塊、采集模塊、安裝模塊和啟動(dòng)模塊,心跳模塊在啟動(dòng)虛擬機(jī)時(shí)自動(dòng)運(yùn)行,定期向管理端模塊的健康檢測(cè)模塊發(fā)送信號(hào),如果健康檢測(cè)模塊在一段時(shí)間內(nèi)未收到該信號(hào),便可診斷該虛擬機(jī)故障(例如虛擬機(jī)已經(jīng)死機(jī)或者崩潰);補(bǔ)丁模塊接受管理端模塊的提交模塊提交的實(shí)驗(yàn)代碼,將實(shí)驗(yàn)代碼同步到Linux內(nèi)核源碼樹,生成實(shí)驗(yàn)數(shù)據(jù)的采集模塊;編譯模塊重新編譯已更新的Linux內(nèi)核源碼樹;安裝模塊在虛擬機(jī)上安裝已編譯過的Linux內(nèi)核;啟動(dòng)模塊使用最新的Linux內(nèi)核重新啟動(dòng)虛擬機(jī);采集模塊在重新啟動(dòng)虛擬機(jī)之后采集實(shí)驗(yàn)數(shù)據(jù),并將實(shí)驗(yàn)數(shù)據(jù)發(fā)送到管理端模塊的存儲(chǔ)模塊。
[0011]進(jìn)一步地,所述虛擬化平臺(tái)位于操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)的服務(wù)器,是虛擬機(jī)的管理平臺(tái),至少包括調(diào)度模塊、回收模塊和虛擬機(jī)模板,調(diào)度模塊接收管理端模塊的虛擬機(jī)分配請(qǐng)求,從虛擬機(jī)資源池中選擇并啟動(dòng)一個(gè)虛擬機(jī);回收模塊接收管理端模塊的虛擬機(jī)釋放或者修復(fù)請(qǐng)求,關(guān)閉并刪除虛擬機(jī),用虛擬機(jī)模板新建一個(gè)虛擬機(jī)并加入到虛擬機(jī)資源池中;虛擬機(jī)模板的表現(xiàn)形式是若干個(gè)文件,能夠在虛擬化平臺(tái)上運(yùn)行,為操作系統(tǒng)實(shí)驗(yàn)提供一個(gè)最基本的軟件環(huán)境。
[0012]進(jìn)一步地,所述虛擬機(jī)資源池是虛擬機(jī)的容器,將物理上的服務(wù)器計(jì)算資源虛擬化為若干個(gè)虛擬機(jī)資源,保持虛擬機(jī)之間的相對(duì)獨(dú)立性。
[0013]同時(shí),本發(fā)明還提供所述操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法構(gòu)建的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)。
[0014]本發(fā)明的有益效果是:本發(fā)明提供了一種基于云計(jì)算的操作系統(tǒng)實(shí)驗(yàn)平臺(tái)構(gòu)建方法,按照該方法構(gòu)建的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái),所有的操作系統(tǒng)實(shí)驗(yàn)都是在虛擬機(jī)上進(jìn)行,而不是在物理機(jī)上進(jìn)行,即使存在錯(cuò)誤的實(shí)驗(yàn)代碼,僅導(dǎo)致虛擬機(jī)的崩潰,一個(gè)虛擬機(jī)的崩潰不會(huì)影響到其他的虛擬機(jī),不會(huì)導(dǎo)致整個(gè)實(shí)驗(yàn)平臺(tái)的崩潰。與Minix相比,該實(shí)驗(yàn)平臺(tái)的容錯(cuò)能力更強(qiáng);虛擬機(jī)崩潰時(shí),虛擬機(jī)的心跳模塊停止發(fā)送信號(hào),管理端模塊的健康檢測(cè)模塊能夠檢測(cè)到虛擬機(jī)的異常情況,因此虛擬機(jī)崩潰后,虛擬化平臺(tái)的修復(fù)模塊立即用虛擬機(jī)模板修復(fù)虛擬機(jī),管理端的分配模塊立即向虛擬化平臺(tái)申請(qǐng)新的虛擬機(jī),這兩個(gè)過程并發(fā)進(jìn)行。與Minix相比,該實(shí)驗(yàn)平臺(tái)縮短了實(shí)驗(yàn)周期;用戶僅需要提交Linux實(shí)驗(yàn)代碼,Linux內(nèi)核的編譯、安裝、實(shí)驗(yàn)數(shù)據(jù)采集等工作由虛擬機(jī)自動(dòng)完成,與Minix相比,該實(shí)驗(yàn)平臺(tái)縮小了實(shí)驗(yàn)的附加工作量;虛擬機(jī)采用Linux開源內(nèi)核代碼,不僅可以做操作系統(tǒng)內(nèi)核態(tài)實(shí)驗(yàn),也可以做操作系統(tǒng)用戶態(tài)實(shí)驗(yàn)。與國內(nèi)高校的操作系統(tǒng)精品課程實(shí)驗(yàn)平臺(tái)相比,該實(shí)驗(yàn)平臺(tái)直接觸及操作系統(tǒng)內(nèi)核,而不是僅僅停留在操作系統(tǒng)用戶態(tài)空間。
【專利附圖】
【附圖說明】
[0015]圖1是操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)的構(gòu)架結(jié)構(gòu)圖;
圖2是客戶端模塊、管理端模塊的內(nèi)部結(jié)構(gòu)及其兩者的通信圖;
圖3是管理端模塊、虛擬化平臺(tái)的內(nèi)部結(jié)構(gòu)及其兩者的通信圖;
圖4是管理端模塊、虛擬機(jī)的內(nèi)部結(jié)構(gòu)及其兩者的通信圖;
圖5是管理端模塊與數(shù)據(jù)庫模塊的通信圖;
圖6是心跳模塊、健康檢測(cè)模塊、修復(fù)模塊、回收模塊的工作流程;
圖7是虛擬機(jī)分配流程。
[0016]其中,1-客戶端模塊,2-管理端模塊,3-數(shù)據(jù)庫模塊,4-虛擬化平臺(tái),5-虛擬機(jī)資源池,6-虛擬機(jī),7-登錄模塊,8-提交實(shí)驗(yàn)?zāi)K,9-顯示模塊,10-注銷模塊,11-分配模塊,12-提交模塊,13-存儲(chǔ)模塊,14-釋放模塊,15-修復(fù)模塊,16-健康檢測(cè)模塊,17-調(diào)度模塊,18-回收模塊,19-虛擬機(jī)模板,20-補(bǔ)丁模塊,21-編譯模塊,22-安裝模塊,23-啟動(dòng)模塊,24-采集模塊,25-心跳模塊。
【具體實(shí)施方式】
[0017]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述:
參見圖1,操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法包括構(gòu)建客戶端模塊1、管理端模塊2、數(shù)據(jù)庫模塊3、虛擬化平臺(tái)4、虛擬機(jī)資源池5和虛擬機(jī)6,操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)各模塊之間采用TCP/IP協(xié)議族實(shí)現(xiàn)通信,采用TCP連接交換數(shù)據(jù)。操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)各模塊部署在同一個(gè)局域網(wǎng)絡(luò)內(nèi),也可以部署在不同局域網(wǎng)之間,只要保證局域網(wǎng)之間能夠相互通信。
[0018]客戶端模塊I在單獨(dú)的物理機(jī)上實(shí)施,可以部署在桌面計(jì)算機(jī)或者便攜計(jì)算機(jī)上。管理端模塊2和數(shù)據(jù)庫模塊3在單獨(dú)的服務(wù)器上實(shí)施,也可以在同一臺(tái)服務(wù)器上實(shí)施,數(shù)據(jù)庫模塊3采用MySQL、Microsoft SQL Server、0racle或者其他數(shù)據(jù)庫工具作為數(shù)據(jù)庫服務(wù)平臺(tái)。虛擬化平臺(tái)4、虛擬機(jī)資源池5和虛擬機(jī)6在同一臺(tái)服務(wù)器或者服務(wù)器集群上實(shí)施,虛擬化平臺(tái) 4 米用 Oracle VM VirtualBox、VMware Workstation、Microsoft VirtualPC或者其他虛擬化工具作為虛擬化服務(wù)平臺(tái),虛擬機(jī)6采用Linux內(nèi)核的操作系統(tǒng)進(jìn)行實(shí)施,不需要Xll等Linux視窗系統(tǒng),虛擬機(jī)6的Linux內(nèi)核版本視實(shí)驗(yàn)需要選擇。
[0019]客戶端模塊I與管理端模塊2的內(nèi)部結(jié)構(gòu)及其兩者通信見圖2所示??蛻舳四KI采用Browser/Server或者Client/Server架構(gòu)實(shí)施,與客戶端模塊I進(jìn)行通信的管理端模塊2,即分配模塊11、提交模塊12、存儲(chǔ)模塊13和釋放模塊14,采用Browser/Server或者Client/Server架構(gòu)實(shí)施,兩者的架構(gòu)必須相同。登錄模塊7成功登錄之后,激發(fā)分配模塊11請(qǐng)求調(diào)度模塊17分配并啟動(dòng)一個(gè)虛擬機(jī)6 ;提交實(shí)驗(yàn)?zāi)K8向提交模塊12傳遞實(shí)驗(yàn)代碼;顯示模塊9接收存儲(chǔ)模塊13的數(shù)據(jù)并給予顯示輸出;注銷模塊10向釋放模塊14請(qǐng)求釋放、回收虛擬機(jī)6。
[0020]管理端模塊2與虛擬化平臺(tái)4的內(nèi)部結(jié)構(gòu)及通信見圖3所示,兩者通信部分采用Client/Server架構(gòu)實(shí)施,虛擬化平臺(tái)4扮演Server角色,管理端模塊2扮演Client角色。在進(jìn)行操作系統(tǒng)實(shí)驗(yàn)之前,事先制作一個(gè)虛擬機(jī)模板19,作為所有虛擬機(jī)6的母版。分配模塊11請(qǐng)求調(diào)度模塊17分配并啟動(dòng)一個(gè)虛擬機(jī)6,調(diào)度模塊17調(diào)度一個(gè)虛擬機(jī)之后將該虛擬機(jī)的IP地址及端口反饋給分配模塊11 ;釋放模塊14請(qǐng)求回收模塊18回收一個(gè)正常轉(zhuǎn)動(dòng)的虛擬機(jī)6 ;修復(fù)模塊15請(qǐng)求回收模塊18回收一個(gè)報(bào)廢的虛擬機(jī)6,用虛擬機(jī)模板19新建一個(gè)虛擬機(jī)6,并加入到虛擬機(jī)資源池5中。
[0021]管理端模塊2與虛擬機(jī)6的內(nèi)部結(jié)構(gòu)及通信見圖4所示,兩者通信部分采用Client/Server架構(gòu)實(shí)施,虛擬機(jī)6扮演Server角色,管理端模塊2扮演Client角色。分配模塊11接收到調(diào)度模塊17反饋的虛擬機(jī)IP地址和端口之后,建立與虛擬機(jī)6的TCP連接;虛擬機(jī)6的心跳模塊25定期向健康檢測(cè)模塊16發(fā)送信號(hào),表示虛擬機(jī)6正常運(yùn)轉(zhuǎn);提交模塊12將操作系統(tǒng)實(shí)驗(yàn)代碼轉(zhuǎn)發(fā)到補(bǔ)丁模塊20,生成最新的Linux內(nèi)核源碼,啟動(dòng)編譯模塊21編譯Linux內(nèi)核,安裝模塊22安裝Linux內(nèi)核和采集模塊24 ;啟動(dòng)模塊用最新的Linux內(nèi)核啟動(dòng)虛擬機(jī)6之后,采集模塊24采集實(shí)驗(yàn)數(shù)據(jù),發(fā)送到存儲(chǔ)模塊13。心跳模塊25隨虛擬機(jī)6 —并啟動(dòng),啟動(dòng)成功之后在后臺(tái)運(yùn)行,直到虛擬機(jī)6被回收或者崩潰。提交模塊12提交一次實(shí)驗(yàn)代碼,補(bǔ)丁模塊20、編譯模塊21、安裝模塊22、啟動(dòng)模塊23和采集模塊24依次執(zhí)行一次,除非中間環(huán)節(jié)出現(xiàn)故障導(dǎo)致虛擬機(jī)6崩潰。
[0022]管理端模塊2與數(shù)據(jù)庫模塊3的通信見圖5所示,兩者通信部分采用Client/Server架構(gòu)實(shí)施,數(shù)據(jù)庫模塊3扮演Server角色,管理端模塊2扮演Client角色。不限定數(shù)據(jù)庫模塊3存儲(chǔ)的數(shù)據(jù)類型和數(shù)量,依據(jù)操作系統(tǒng)實(shí)驗(yàn)的需求確定需要存儲(chǔ)的數(shù)據(jù)。
[0023]心跳模塊25、健康檢測(cè)模塊16、修復(fù)模塊15和回收模塊18的工作流程見圖6所示。心跳模塊25以一個(gè)獨(dú)立的進(jìn)程實(shí)施,依實(shí)驗(yàn)平臺(tái)的需要設(shè)定進(jìn)程睡眠的時(shí)間;健康檢測(cè)模塊16以一個(gè)獨(dú)立的進(jìn)程實(shí)施,包含兩個(gè)同步的線程,分別執(zhí)行信號(hào)接收和健康檢測(cè)工作,依實(shí)驗(yàn)平臺(tái)的需要設(shè)定進(jìn)程睡眠的時(shí)間。不限定虛擬機(jī)異常的檢測(cè)條件,實(shí)施時(shí)可根據(jù)實(shí)際情況確定虛擬機(jī)異常的檢測(cè)條件,例如連續(xù)若干個(gè)周期未收到心跳模塊的健康信號(hào)等
坐寸ο
[0024]虛擬機(jī)分配流程見圖7所示。分配模塊11提出虛擬機(jī)分配請(qǐng)求,調(diào)度模塊17檢測(cè)虛擬機(jī)資源池5是否資源充足,如果虛擬機(jī)資源池5的資源充足,調(diào)度一個(gè)空閑虛擬機(jī),返回該虛擬機(jī)的IP地址和端口。不限定資源充足的檢測(cè)條件,實(shí)施時(shí)依實(shí)際情況確定資源充足的檢測(cè)條件,例如空閑虛擬機(jī)數(shù)量不低于虛擬機(jī)資源池5的虛擬機(jī)總數(shù)的15%視為資源充足。不限定虛擬機(jī)調(diào)度方法,實(shí)施時(shí)依實(shí)際情況確定從虛擬機(jī)資源池中調(diào)度空閑虛擬機(jī)的方法。
[0025]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用于限制本發(fā)明,只要操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)由客戶端模塊、管理端模塊、數(shù)據(jù)庫模塊、虛擬化平臺(tái)、虛擬機(jī)資源池和虛擬機(jī)構(gòu)成,各模塊符合上述基本特征,不論采用何種虛擬化工具、何種數(shù)據(jù)庫工具、何種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)等,均落在本發(fā)明的保護(hù)范圍之中。
【權(quán)利要求】
1.一種操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:構(gòu)建客戶端模塊、管理端模塊、數(shù)據(jù)庫模塊、虛擬化平臺(tái)、虛擬機(jī)資源池和虛擬機(jī),各模塊間采用TCP連接進(jìn)行通信,虛擬化平臺(tái)將計(jì)算資源虛擬為虛擬機(jī),以虛擬機(jī)資源池作為虛擬機(jī)容器,客戶端模塊通過管理端模塊向虛擬機(jī)轉(zhuǎn)發(fā)操作系統(tǒng)實(shí)驗(yàn)代碼,虛擬機(jī)生成Linux內(nèi)核源碼,并編譯、安裝和啟動(dòng)Linux新內(nèi)核,管理端模塊接收所述客戶端模塊提交的操作系統(tǒng)實(shí)驗(yàn)代碼。
2.根據(jù)權(quán)利要求1所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:所述客戶端模塊至少包括登錄模塊、提交實(shí)驗(yàn)?zāi)K、顯示模塊和注銷模塊。
3.根據(jù)權(quán)利要求1所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:所述管理端模塊至少包括分配模塊、提交模塊、存儲(chǔ)模塊、釋放模塊、修復(fù)模塊和健康檢測(cè)模塊,接收所述客戶端模塊提交的操作系統(tǒng)實(shí)驗(yàn)代碼。
4.根據(jù)權(quán)利要求1所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:所述客戶端模塊和管理端模塊的架構(gòu)相同,采用Browser/Server或者Client/Server架構(gòu)實(shí)施。
5.根據(jù)權(quán)利要求1所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:所述虛擬機(jī)至少包括補(bǔ)丁模塊、編譯模塊、安裝模塊、啟動(dòng)模塊、采集模塊和心跳模塊,接收所述管理端模塊提交的操作系統(tǒng)實(shí)驗(yàn)代碼,更新Linux內(nèi)核源碼,編譯、安裝和啟動(dòng)Linux新內(nèi)核,向所述管理端模塊發(fā)送虛擬機(jī)健康信號(hào)。
6.根據(jù)權(quán)利要求1所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:所述虛擬化平臺(tái)至少包括調(diào)度模塊、回收模塊和虛擬機(jī)模板,接收所述管理端模塊提交的請(qǐng)求,調(diào)度、回收和修復(fù)所述的虛擬機(jī)。
7.根據(jù)權(quán)利要求6所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法,其特征在于:所述虛擬機(jī)模板是一個(gè)Linux操作系統(tǒng),至少包括所述虛擬機(jī)的各個(gè)模塊,用于新建和修復(fù)所述的虛擬機(jī)。
8.一種根據(jù)權(quán)利要求1至6任一項(xiàng)所述的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)構(gòu)建方法構(gòu)建的操作系統(tǒng)云實(shí)驗(yàn)平臺(tái)。
【文檔編號(hào)】H04L29/08GK103533061SQ201310490123
【公開日】2014年1月22日 申請(qǐng)日期:2013年10月18日 優(yōu)先權(quán)日:2013年10月18日
【發(fā)明者】尹光彩 申請(qǐng)人:廣東工業(yè)大學(xué)