瀏覽單個文章
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
小龐網友:

不是您買的CPU沒有發揮效益,而是這些指令集發揮功能時,您沒有察覺罷了。

此外,不論是Intel Vanderpool或AMD Pacifica等,都是一種硬體輔助(hardware-assisted)虛擬化的指令,讓目前完全

僅依賴虛擬化軟體(如VMware、Xen、Virtual Iron...)處理某些特權指令所發出的中斷(interrupt)時,降低虛擬化軟體

運算所造成的資源損耗。

也就是說,在沒有VT或Pacifica指令集的處理器時,虛擬化的所有工作都由軟體來做。當虛擬機器經常發出特權指令需求

時,虛擬化軟體必須準確地攔截中斷要求,並做出例外處理(exception handler),就跟一般純粹硬體的做法相同,只是

這時候都由軟體來完成。不過,虛擬化軟體可能因為高負載而出問題,例如發生例外時沒有給予處理,虛擬機器就會不知

所措,好像當機般。

一般使用者比較難以感受到VT或Pacifica指令所帶來的優點,其使用對象主要是給企業當成入門級伺服器做為虛擬化平臺

使用,當伺服器集中化時才會感受到硬體指令輔助下,虛擬機器有較高的可靠度。畢竟,在處理器增加指令集不是開玩笑

,不像軟體增加功能般簡單,不用就刪除新功能的程式碼就好,而是投入晶圓廠大量生產的,這是在燒錢。

換個方向來看,也多虧Intel與AMD在個人電腦使用的泛用型處理器能內建虛擬化指令,讓一般使用者也可以模擬企業的伺

服器環境,對於經常開發J2EE或n-tier等應用系統的開發工程師來說,這是一大福因呢。

補充說明,軟、硬體廠商都在佈局虛擬化應用,像是Oracle、IBM、Sun、EMC/VMware、Citrix/Xen,以及Intel、AMD等。

Intel也學習AMD要生產原生4核心處理器,並內建記憶體控制器,接下來也才能再學AMD K10內建NPT(Nested Page

Tables),不然在虛擬化應用市場,Intel平臺會落後AMD。AMD使用Alpha的技術反而顯得很有先見之明。

近來Intel、AMD陸續完成虛擬化時記憶體管理所需的重要指令,接下來是I/O的部份了。兩家都有提出IOMMU指令集的計畫

(AMD就稱為IOMMU,Intel則是VT-d),不過短期內還看不到產品。可能這個時候,iSCSI或SAN等儲存系統廠商也會加入虛

擬化戰局吧,這方面來看,EMC先併購VMware也是很有先見之明吧。

記憶體與I/O等指令集都有了,應用虛擬化做伺服器集中管理,才能有效能的效益。在這個進展中,可能還要解決一些問

題,就是虛擬機器在Intel VT和AMD Pacifica平臺不相容,以及虛擬磁碟檔案標準等,未來在伺服器集中與遷移時,可能

都會面臨相容性的議題。所以現在使用虛擬化,彷彿繳錢給軟體供應商,因為x86架構先天不適合用來虛擬化,要不斷地

修改。

相關的文章可以請網友參考Kevin P. Lawton所寫的「Running multiple operating systems concurrently on an IA32

PC using virtualization techniques」。
舊 2008-03-19, 11:42 AM #16
回應時引用此文章
carejollg離線中