在計算機中,虛擬化(Virtualization)是一種資源管理技術(shù),是將計算機的各種實體資源,如服務(wù)器、網(wǎng)絡(luò)、內(nèi)存及存儲等,予以抽象、轉(zhuǎn)換后呈現(xiàn)出來,打破實體結(jié)構(gòu)間的不可切割的障礙,使用戶可以比原本的組態(tài)更好的方式來應(yīng)用這些資源。這些資源的新虛擬部份是不受現(xiàn)有資源的架設(shè)方式,地域或物理組態(tài)所限制。一般所指的虛擬化資源包括計算能力和資料存儲。
在實際的生產(chǎn)環(huán)境中,虛擬化技術(shù)主要用來解決高性能的物理硬件產(chǎn)能過剩和老的舊的硬件產(chǎn)能過低的重組重用,透明化底層物理硬件,從而最大化的利用物理硬件。
虛擬化技術(shù)與多任務(wù)以及超線程技術(shù)是完全不同的。多任務(wù)是指在一個操作系統(tǒng)中多個程序同時一起運行,而在虛擬化技術(shù)中,則可以同時運行多個操作系統(tǒng),而且每一個操作系統(tǒng)中都有多個程序運行,每一個操作系統(tǒng)都運行在一個虛擬的CPU或者是虛擬主機上;而超線程技術(shù)只是單CPU模擬雙CPU來平衡程序運行性能,這兩個模擬出來的CPU是不能分離的,只能協(xié)同工作。
虛擬化技術(shù)也與VMware Workstation等同樣能達到虛擬效果的軟件不同,是一個巨大的技術(shù)進步,具體表現(xiàn)在減少軟件虛擬機相關(guān)開銷和支持更廣泛的操作系統(tǒng)方面。
純軟件虛擬化解決方案存在很多限制。“客戶”操作系統(tǒng)很多情況下是通過VMM(Virtual Machine Monitor,虛擬機監(jiān)視器)來與硬件進行通信,由VMM來決定其對系統(tǒng)上所有虛擬機的訪問。(注意,大多數(shù)處理器和內(nèi)存訪問獨立于VMM,只在發(fā)生特定事件時才會涉及VMM,如頁面錯誤。)在純軟件虛擬化解決方案中,VMM在軟件套件中的位置是傳統(tǒng)意義上操作系統(tǒng)所處的位置,而操作系統(tǒng)的位置是傳統(tǒng)意義上應(yīng)用程序所處的位置。
虛擬化技術(shù)是一套解決方案。完整的情況需要CPU、主板芯片組、BIOS和軟件的支持,例如VMM軟件或者某些操作系統(tǒng)本身。即使只是CPU支持虛擬化技術(shù),在配合VMM的軟件情況下,也會比完全不支持虛擬化技術(shù)的系統(tǒng)有更好的性能。
兩大CPU巨頭Intel和AMD都想方設(shè)法在虛擬化領(lǐng)域中占得先機,但是AMD的虛擬化技術(shù)在時間上要比Intel落后幾個月。Intel自2005年末開始便在其處理器產(chǎn)品線中推廣應(yīng)用Intel Virtualization Technology(Intel VT)虛擬化技術(shù)。
而AMD方面也已經(jīng)發(fā)布了支持AMD Virtualization Technology(AMD VT)虛擬化技術(shù)的一系列處理器產(chǎn)品,包括Socket S1接口的Turion 64 X2系列以及Socket AM2接口的Athlon 64 X2系列和Athlon 64 FX系列等等,并且絕大多數(shù)的AMD下一代主流處理器,包括即將發(fā)布的Socket F接口的Opteron都將支持AMD VT虛擬化技術(shù)。