Posted on 2007-04-19 23:06
-=Kinohl=- 閱讀(1100)
評論(0) 編輯 收藏 所屬分類:
平臺架構 、
項目經驗
上一篇既然已經說了,現在除了 Xen 還有 VMWare等公司也在做虛擬化,而且VMWare在這個領域簡直就是老大哥,那么作為由劍橋大學推出的小黑馬 Xen為什么有那么大本事在很短時間內不但吸引了軟件界也吸引了硬件界呢。
原因是,Xen真的是很快,性能很好。
對于VMWare等虛擬化軟件,其實他是在 虛擬操作系統 與母體操作系統(Host機器)之間采用軟件實現一整套硬件的emulator,當虛擬OS運行時,動態的針對虛擬OS的內核指令進行解析和處理,維護所有虛擬硬件的當前狀態,同時防止虛擬OS的指令對于真實硬件的任何狀態變更。這樣的一整套處理一般會占用系統全體性能的30%到50%左右。這就是所謂的微內核虛擬化技術。
而對于Xen所采用的虛擬技術叫做paravirtualization。它在系統管理層(就是OS與硬件之間那一層)中封裝了一層API。虛擬OS的CPU調度,內存訪問,硬件中斷等等都是通過這一層API來完成。在系統管理層中,對MMU,DMA的操作作了優化,所以相比較VMware的實現方式來說,性能上有了提高。不利的點是必須要在guestOS的內核中進行修改,將所有訪問硬件的API替換為使用XEN的接口API。但是相比起性能的提高來說,還是值得的。
但是 但是 但是,Xen也有它的死穴: 加載在Xen上的虛擬機需要修改其內核。
對于VMWare我們可以拿普通的 os盤直接安裝,不會有太多不爽的地方(FC6下的驅動比較不爽)。可是這些盤在Xen上就別想用了,對于沒有VT-x技術的普通pc機器,我們必須下載支持xen的,經過修改的os,現今為止這種os還只限于linux陣營,畢竟么,windows的內核你咋改呢。呵呵。xen在intel和amd的大力支持下,相應的提出了vt-x架構的intel CPU和AMD的Pacifica,這兩種機器都支持硬件級別的xen,那么,如果您有幸得到這2種機器,恭喜你,你可以直接使用我們普通的os盤,不用再為啟動domainn0而大傷腦筋了。