圖1:x86系統(tǒng)程序執(zhí)行權限。(來源:VMware)
VMware改變的方式是於作業(yè)系統(tǒng)與硬件之間再加入的VMM(VirtualMachine Monitor),如圖1左方,也就是Hypervisor,通過BinaryTranslation將原本不能虛擬化的指令轉譯為另一種編碼,再交給VMM執(zhí)行。當系統(tǒng)開機的時候,管理程序集Hypervisor會直接裝入到Ring 0,監(jiān)控與管理位於Ring1上的虛擬主機內(nèi)的作業(yè)系統(tǒng)(GuestOS),讓多個GuestOS可同時存在,并各自獨立不會彼此干擾。
BinaryTranslation可說是VMware在CPU廠商Intel、AMD支持虛擬化之前,為了實現(xiàn)虛擬化而結構於硬件之上的組件,但 免不了需要耗用實體資源做運算,性能表現(xiàn)較難有所突破。張振倫談到,如今的CPU結構已經(jīng)加入可支持虛擬化指令,內(nèi)存、I/O等各方面的虛擬,性能上更超 越以往BinaryTranslation模式,因此該組件已功成身退。
得到了硬件廠商的支持,當前各家廠商均可直接將虛擬化平臺結構於硬件之上。就VMware來看,張振倫表示當前導入虛擬化系統(tǒng)的客戶,已有上線時間 超過1,200天沒停過機的案例,不再像傳統(tǒng)結構一段時間就必須重新開機才能恢復正常作業(yè),由此可了解現(xiàn)在的虛擬化平臺已可達到企業(yè)要求的穩(wěn)定性與可靠性。