版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、隨著IT架構(gòu)不斷被部署到關(guān)系國計(jì)民生的支撐行業(yè)中,提供24×7的高可用性變得越發(fā)重要,對(duì)于運(yùn)行著關(guān)鍵服務(wù)的系統(tǒng)任何形式的打斷都將造成巨大損失。操作系統(tǒng)作為整個(gè)軟件體系架構(gòu)中的基礎(chǔ)層與關(guān)鍵層,其可用性將直接影響到上層所有軟件的可用性,因而如何提高操作系統(tǒng)的可用性成為提高軟件可用性的關(guān)鍵問題之一。另一方面由于操作系統(tǒng)本身的龐大和復(fù)雜,現(xiàn)有的實(shí)現(xiàn)遠(yuǎn)遠(yuǎn)不夠完善。為了修復(fù)安全隱患、糾正系統(tǒng)錯(cuò)誤、提高軟件性能和增加新的功能,操作系統(tǒng)在其生命周期中需
2、要不斷的被更新和維護(hù)。但現(xiàn)有基于“更新一重啟”的靜態(tài)更新方法需要重啟操作系統(tǒng),導(dǎo)致整個(gè)可用性的喪失。HP實(shí)驗(yàn)室在2001年的研究報(bào)告中同樣指出人為的系統(tǒng)維護(hù)是造成系統(tǒng)停機(jī)的最大原因。因此有效地降低系統(tǒng)維護(hù)引起的可用性喪失是提高操作系統(tǒng)可用性最直接有效的方法。 動(dòng)態(tài)更新技術(shù)(Dynamic update,or Live update)能夠在保持系統(tǒng)持續(xù)正常運(yùn)行的情況下完成更新維護(hù)操作,是解決上述問題的最佳方法。但是在操作系統(tǒng)上實(shí)現(xiàn)
3、動(dòng)態(tài)更新技術(shù)面臨多方面的困難。本文的主要工作是總結(jié)和分析了這些困難,并提出了一種利用系統(tǒng)虛擬化技術(shù)在當(dāng)前通用操作系統(tǒng)上實(shí)現(xiàn)動(dòng)態(tài)更新功能的有效方法。 由于當(dāng)前通用操作系統(tǒng)在設(shè)計(jì)上并沒有考慮到對(duì)動(dòng)態(tài)更新的支持,以及本身極高的復(fù)雜性,導(dǎo)致實(shí)現(xiàn)動(dòng)念更新功能存在諸多困難。首先,當(dāng)前通用操作系統(tǒng)幾乎都是使用面向過程語言開發(fā)的,很難找到合適的粒度來進(jìn)行動(dòng)念更新,同時(shí)也不存在一種簡單直接的方法能將對(duì)舊版本數(shù)據(jù)和函數(shù)的訪問重定向到新版本數(shù)據(jù)和函數(shù)
4、上。 其次,當(dāng)前通用操作系統(tǒng)采用多線程并發(fā)執(zhí)行,隨意的更新可能導(dǎo)致系統(tǒng)中同時(shí)出現(xiàn)使用不同版本數(shù)據(jù)和函數(shù)的線程,造成系統(tǒng)狀態(tài)不一致。而現(xiàn)有基于安全點(diǎn)(Safe Point)的解決方案又不適合像操作系統(tǒng)這樣復(fù)雜的大型軟件。 最后,直接運(yùn)行在物理硬件上的操作系統(tǒng)位于整個(gè)軟件架構(gòu)的底層,只能由自己來完成對(duì)自身的動(dòng)態(tài)更新。這種既是更新對(duì)象又是更新主體的情況很可能導(dǎo)致更新操作無法完成,甚至造成系統(tǒng)死鎖或者崩潰。為了克服這些困難,我們
5、提出了一種利用系統(tǒng)虛擬化技術(shù)在現(xiàn)有通用操作系統(tǒng)上實(shí)現(xiàn)動(dòng)態(tài)更新功能的方法。該方法依靠位于操作系統(tǒng)和物理硬件之問,完全控制著整個(gè)系統(tǒng)的虛擬機(jī)監(jiān)控器實(shí)現(xiàn)動(dòng)態(tài)更新操作。首先在函數(shù)粒度上由虛擬機(jī)監(jiān)控器通過二進(jìn)制代碼重寫(binary rewriting)實(shí)現(xiàn)訪問重定向,其次徹底摒棄對(duì)安全點(diǎn)的依賴,支持在任意時(shí)刻對(duì)操作系統(tǒng)進(jìn)行動(dòng)態(tài)更新,使用虛擬機(jī)監(jiān)控器保持多線程問不同版本數(shù)據(jù)的同步,維持系統(tǒng)狀態(tài)的一致性。最后使用位于更底層的虛擬機(jī)監(jiān)控器來完成對(duì)操作
6、系統(tǒng)的動(dòng)態(tài)更新,避免可能的死鎖和系統(tǒng)崩潰。為了進(jìn)一步完善動(dòng)態(tài)更新系統(tǒng),實(shí)現(xiàn)對(duì)虛擬機(jī)監(jiān)控器的動(dòng)態(tài)更新,我們?cè)贚ucos系統(tǒng)的基礎(chǔ)上引入白虛擬化技術(shù)。自虛擬化技術(shù)實(shí)現(xiàn)了對(duì)虛擬機(jī)監(jiān)控器的按需動(dòng)態(tài)插入和移除,使得操作系統(tǒng)能夠在物理硬件和虛擬機(jī)監(jiān)控器兩種執(zhí)行環(huán)境間自由切換執(zhí)行。直接運(yùn)行在物理硬件上的操作系統(tǒng)能夠完成對(duì)此時(shí)處于不工作狀態(tài)下的虛擬機(jī)監(jiān)控器的動(dòng)態(tài)更新,而處于工作狀態(tài)下的虛擬機(jī)監(jiān)控器能夠?qū)崿F(xiàn)對(duì)上層操作系統(tǒng)的動(dòng)態(tài)更新。 為了驗(yàn)證上述
7、方案的可行性,我們以開源虛擬機(jī)監(jiān)控器Xen以及Linux操作系統(tǒng)為基礎(chǔ)實(shí)現(xiàn)了名為Lucos(Live Update of Contemporary Operating System)的動(dòng)態(tài)更新系統(tǒng),和名為Mercury的自虛擬化系統(tǒng)。實(shí)驗(yàn)結(jié)果表明,Lucos動(dòng)態(tài)更新系統(tǒng)能夠正確迅速的使用來自官方發(fā)布的補(bǔ)丁文件實(shí)現(xiàn)對(duì)Linux操作系統(tǒng)的動(dòng)態(tài)更新,并且在性能方面,相對(duì)于運(yùn)行在Xen上的Linux操作系統(tǒng)僅僅存在不到1%的性能損失。而Merc
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 四操作系統(tǒng)-動(dòng)態(tài)分區(qū)分配算法
- 操作系統(tǒng)課程設(shè)計(jì)-- 操作系統(tǒng)
- 淺談操作系統(tǒng)(操作系統(tǒng)論文)
- 操作系統(tǒng)課程設(shè)計(jì)——操作系統(tǒng)課程設(shè)計(jì)模擬操作系統(tǒng)
- 基于Linux操作系統(tǒng)動(dòng)態(tài)調(diào)頻技術(shù)研究.pdf
- 操作系統(tǒng)a
- 操作系統(tǒng)
- 操作系統(tǒng)
- 操作系統(tǒng)課程設(shè)計(jì)--模擬操作系統(tǒng)的實(shí)現(xiàn)
- 操作系統(tǒng)linux主存管理操作系統(tǒng)實(shí)驗(yàn) 5
- 操作系統(tǒng)程序設(shè)計(jì)-操作系統(tǒng)模擬實(shí)現(xiàn)
- 內(nèi)存管理(操作系統(tǒng))操作系統(tǒng)課程設(shè)計(jì)
- 操作系統(tǒng)的分類
- 操作系統(tǒng)的種類
- 操作系統(tǒng)實(shí)驗(yàn)
- 操作系統(tǒng)2
- 操作系統(tǒng)98919
- 操作系統(tǒng)3
- 操作系統(tǒng)1
- 操作系統(tǒng)96322
評(píng)論
0/150
提交評(píng)論