參考資料:
機械工業出版社的《雲計算:應用開發實踐》
百度百科
1. 什麼虛擬化技術
虛擬化是一個廣義的術語,在計算機方面通常是指計算元件是在虛擬的基礎上而不是真實的基礎上運行。虛擬化技術可以擴大硬件的容量,簡化軟件的重新配置過程。
虛擬化技術通常包含虛擬服務器、客戶操作系統和虛擬服務器管理程序。
2. 完全虛擬化
使用名爲hypervisor的一種軟件,在虛擬服務器和底層硬件之間建立一個抽象層。
優點是,客戶操作系統不需要做任何修改;缺點是,Hypervisor會給CPU帶來額處的開銷。例如,VMWare、微軟的VirtualPC和KVM等就是這方面的產品。
3. 準虛擬化
完全虛擬化要求hypervisor管理各個虛擬服務器,並讓它們彼此獨立。減輕這種負擔的一種方法就是,改動客戶操作系統,讓它以爲自己運行在虛擬環境下,能夠與hypervisor協同工作。這種方法就叫準虛擬化。
優點是,性能高;缺點是,客戶操作系統需要修改。例如,Xen就是這方面的產品。
4. 操作系統層虛擬化
實現虛擬化還有一個方法,就在操作系統層直接增加虛擬服務器,這就稱爲操作系統層虛擬化。
優點是,本機速度性能較高;缺點是,靈活性較差。例如,Solaris就是這方面的產品。
5. 硬件虛擬化技術
Intel VT和AMD VT,主要解決因爲缺少對應的內部指令集,無法保證虛擬化任務可以高效完成的相關問題。