自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

芯片輔助虛擬化:AMD PK 英特爾

云計(jì)算 虛擬化
在過去的近20年間,X86處理器的核心指令集沒有什么變化,但AMD和Intel卻在處理器中加入了許多創(chuàng)新功能,如64位內(nèi)存擴(kuò)展技術(shù)、圖像處理指令、浮點(diǎn)運(yùn)算指令以及多核心技術(shù)等等。這兩年,AMD和Intel又在CPU中加入了芯片輔助虛擬化技術(shù),這一創(chuàng)新有望將虛擬化從夢(mèng)想推向現(xiàn)實(shí)……

在過去的近20年間,X86處理器的核心指令集沒有什么變化,但AMD和Intel卻在處理器中加入了許多創(chuàng)新功能,如64位內(nèi)存擴(kuò)展技術(shù)、圖像處理指令、浮點(diǎn)運(yùn)算指令以及多核心技術(shù)等等。這兩年,AMD和Intel又在CPU中加入了芯片輔助虛擬化技術(shù),這一創(chuàng)新有望將虛擬化從夢(mèng)想推向現(xiàn)實(shí)。

芯片輔助為虛擬化鋪平道路

基于Hypervisor的服務(wù)器虛擬化和操作系統(tǒng)分區(qū)(OS partITioning)是當(dāng)前的兩大主要軟件虛擬化方法,但前者面臨的問題更多。操作系統(tǒng)分區(qū)可以讓宿主操作系統(tǒng)(host OS)訪問所有的硬件資源,消除了hypervisor固有的許多問題,但對(duì)操作系統(tǒng)的種類數(shù)量有限制。

而基于Hypervisor的虛擬化在支持多操作系統(tǒng)方面的靈活性更好,但在CPU、內(nèi)存和I/O資源分配方面卻產(chǎn)生了大量的技術(shù)問題,需要通過大量的軟件手段來調(diào)配。Vmware之所以成為X86虛擬化領(lǐng)域的領(lǐng)導(dǎo)者,不僅僅因?yàn)樗亲钤绲膹S商,更重要是因?yàn)閂mware能夠克服這些硬件問題,從而為大規(guī)模虛擬化提供可行的管理環(huán)境。

但從架構(gòu)上來說,傳統(tǒng)的X86平臺(tái)并不是為支持多操作系統(tǒng)并行而設(shè)計(jì)的。因此,AMD和Intel需要重新設(shè)計(jì)CPU,增加虛擬化特性,以解決上述問題。

ring轉(zhuǎn)換:Intel VT-x和AMD-V異曲同工

在傳統(tǒng)的x86運(yùn)行環(huán)境下,操作系統(tǒng)運(yùn)行在CPU中受保護(hù)的ring 0位置。在沒有處理器輔助的虛擬化中,ring 0還需要運(yùn)行VMM(virtual machine monITor,虛擬機(jī)監(jiān)控器)或Hypervisor,以幫助VM(虛擬機(jī))及其VOS(虛擬操作系統(tǒng))管理硬件資源。

因此,芯片廠商引入了一個(gè)新的、具有超級(jí)特權(quán)和受保護(hù)的ring -1位置來運(yùn)行虛擬機(jī)監(jiān)控器(VMM)。這個(gè)新位置可以讓VOS和平共存于ring 0,而通信改道于ring -1,并且,VOS并不知道正在和同一系統(tǒng)的其他OS共享物理資源。

芯片上的這一重要?jiǎng)?chuàng)新消除了操作系統(tǒng)的ring轉(zhuǎn)換問題,降低了虛擬化門檻,支持任何操作系統(tǒng)的虛擬化而無須修改OS內(nèi)核或run-time。Intel和AMD分別推出了VT-x和 AMD-V(即Pacifica)芯片輔助技術(shù),并得到了虛擬化軟件廠商的支持。

Intel VT-x技術(shù)是在芯片內(nèi)創(chuàng)建新的ring -1,并且提供了新的指令集,用來建立、管理和退出各種VM。在帶有虛擬化功能的芯片中,Hypervisor處于ring-1位置,它生成一個(gè)VM控制結(jié)構(gòu)來支持每個(gè)新VM??梢姡@提供了一種機(jī)制,可以根據(jù)需要來啟動(dòng)、恢復(fù)和退出VM,并且在VMM和大量的VM之間提供了內(nèi)容交換框架(framework for context-swITching)。

對(duì)VM的控制,Intel稱之為VMXs,而AMD稱之為SVMs(secure VMs),雖然名稱不同,但兩家芯片的處理方式是比較相似的。更重要的是,都允許客機(jī)操作系統(tǒng)(guest OS)進(jìn)駐ring 0,從而消除了ring轉(zhuǎn)換問題。由于許多指令對(duì)位置具有敏感性(location-sensITive),而且被設(shè)計(jì)為只能在ring 0和ring 3之間轉(zhuǎn)化,因此,如果VOS運(yùn)行在ring 0之外的地方,就可能會(huì)導(dǎo)致關(guān)鍵進(jìn)程的運(yùn)行出現(xiàn)無法預(yù)知的錯(cuò)誤,或者在應(yīng)該出錯(cuò)的時(shí)候卻沒有出錯(cuò)。

以往,虛擬化廠商都是通過軟件機(jī)制來截取和糾正相應(yīng)問題?,F(xiàn)在,由于虛擬機(jī)可以安全地運(yùn)行在ring 0位置,因此,這一軟件機(jī)制也就無須再考慮了。當(dāng)VM發(fā)生錯(cuò)誤時(shí),處理器可以將控制權(quán)轉(zhuǎn)給受保護(hù)的VMM,從而解決問題和重新控制VM,或者終止出錯(cuò)進(jìn)程但不影響同一系統(tǒng)上的其他VM。

內(nèi)存管理:AMD和Intel的不同之處

Intel和AMD的不同之處在于:Intel處理器使用外部?jī)?nèi)存控制器,因此VT-x技術(shù)不提供虛擬內(nèi)存管理功能,這就意味著仍然需要通過軟件來解決物理/虛擬內(nèi)存資源之間的地址轉(zhuǎn)換問題。這種方法雖然有效,但不是最好的。

集成內(nèi)存控制器的AMD Opteron 處理器,增加處理器數(shù)量就能增加內(nèi)存帶寬

Intel平臺(tái)上的所有Xeon處理器都共享一個(gè)外部?jī)?nèi)存控制器

而AMD的處理器集成了內(nèi)存控制器,所以AMD-V虛擬化技術(shù)引入了獨(dú)特的新指令,可以實(shí)現(xiàn)獨(dú)特的內(nèi)存模式和特性。其中大部分指令都是針對(duì)MMU(內(nèi)存管理單元 memory management unIT)設(shè)計(jì)的,可以進(jìn)行內(nèi)存分配。在虛擬化環(huán)境下,當(dāng)需要映射多操作系統(tǒng)和運(yùn)行多個(gè)應(yīng)用程序時(shí),MMU可以對(duì)物理內(nèi)存尋址進(jìn)行大量有效的跟蹤協(xié)調(diào)。AMD-V提供了更高級(jí)的內(nèi)存特性,如Tagged Translation Look-Aside Buffers,可通過幫助VM識(shí)別最近訪問的內(nèi)存頁表來提升性能。AMD-V還提供了Paged Real Mode,支持某些需要在虛擬環(huán)境下以真實(shí)模式(real-mode)進(jìn)行尋址的應(yīng)用程序。

另外,最有意思的特性可能是AMD對(duì)各種嵌套頁表(NPT,nested page table)的支持。與Intel的軟件方法不同,NPT允許每個(gè)VM通過獨(dú)立于硬件、虛擬的CR3內(nèi)存寄存器對(duì)其內(nèi)部?jī)?nèi)存管理進(jìn)行更有力的控制。雖然使用NPT增加了內(nèi)存查找的數(shù)量,但NPT卻消除了VT-x必須的軟件層。這種方法通過硬件管理內(nèi)存的方式大大提高了VM的內(nèi)存性能。在內(nèi)存密集型應(yīng)用,特別是在多個(gè)VM共存的環(huán)境下,這一方法的效果最為明顯。

I/O:芯片/硬件廠商的共同困境

CPU和VMM內(nèi)存管理只是問題的一部分。對(duì)于硬件廠商來說,下一個(gè)巨大挑戰(zhàn)是要改善共享I/O設(shè)備的內(nèi)存交互和安全性??赡茏钇D巨的任務(wù)會(huì)落在I/O硬件廠商身上,需要開發(fā)可以在多個(gè)VM之間共享存取通道的設(shè)備。當(dāng)前的存儲(chǔ)、網(wǎng)絡(luò)和圖形卡等設(shè)備都只能向OS提供單一接口界面。這意味著,對(duì)于具有多個(gè)VM的系統(tǒng)來說,只有通過軟件方法來處理IRQ中斷、內(nèi)存和記時(shí)器功能,除非I/O硬件可以支持多個(gè)功能性接口。

從處理器的角度來看,挑戰(zhàn)在于要為共享設(shè)備開發(fā)處理器級(jí)的架構(gòu)。目前,AMD和Intel已經(jīng)制定了非常相似的規(guī)劃,已在06年春季公布,并得到了虛擬化廠商的支持。

在這方面,AMD可能率先推出IOMMU(I/O memory mapping unit ,I/O內(nèi)存映射單元)技術(shù),可以提供額外的指令來支持硬件虛擬化。相應(yīng)的新特性可以改進(jìn)DMA(direct memory access,直接內(nèi)存讀取)映射和硬件設(shè)備的訪問,取代當(dāng)前的圖形尋址機(jī)制,支持VM對(duì)設(shè)備的直接控制,同時(shí)在VM中可以直接訪問相應(yīng)用戶的I/O。

Intel的VT-d(Virtualization Technology for Directed I/O,定向I/O虛擬化技術(shù))標(biāo)準(zhǔn)也非常關(guān)注直接設(shè)備訪問和內(nèi)存保護(hù)的問題。跟IOMMU相似,VT-d提供了在多個(gè)VM和I/O設(shè)備之間進(jìn)行直接通信的架構(gòu)。

不過,就目前來說,這些對(duì)于推動(dòng)虛擬化應(yīng)用還是有名無實(shí),因?yàn)镮/O虛擬化本身還在探討中。當(dāng)前的I/O設(shè)備還不能管理共享VM對(duì)硬件資源的訪問。實(shí)際上,現(xiàn)在連通過PCI總線來實(shí)現(xiàn)設(shè)備共享的合適標(biāo)準(zhǔn)還沒有??赡苄枰?jīng)過2-4年,普遍的、基于設(shè)備的I/O硬件虛擬化解決方案才會(huì)出現(xiàn)。到那時(shí),虛擬化廠商需要提供一個(gè)提取層,來支持對(duì)存儲(chǔ)、網(wǎng)絡(luò)和其他設(shè)備的共享訪問。

總的來說,虛擬化象旋風(fēng)一樣席卷全球IT市場(chǎng)。特別是在Intel和AMD在各自新推出的x86處理器中內(nèi)置了虛擬化功能,更是為X86平臺(tái)虛擬化的廣泛普及鋪平了道路。我們認(rèn)為AMD的虛擬化策略可能比Intel的更具潛力。微軟和XEN開源廠商推出的基于hypervisor的虛擬化產(chǎn)品都會(huì)建立在這種芯片輔助技術(shù)之上,但VMware仍會(huì)繼續(xù)支持沒有芯片輔助的老系統(tǒng)。

【編輯推薦】

  1. LG李國(guó)政:利用虛擬化技術(shù)搭建安全研發(fā)中心
  2. 微軟虛擬化解決方案與實(shí)例剖析
  3. 2008年度產(chǎn)品創(chuàng)新獎(jiǎng)-思科 NEXUS 網(wǎng)絡(luò)設(shè)備虛擬化技術(shù)
責(zé)任編輯:符甲 來源: cnw
相關(guān)推薦

2009-04-03 09:57:44

IBM英特爾AMD

2009-07-16 18:45:37

2010-03-23 09:19:13

英特爾AMD

2009-11-18 09:39:23

英特爾AMD虛擬化

2019-05-15 14:16:03

英特爾ZombieLoad漏洞

2024-03-25 14:03:35

網(wǎng)絡(luò)安全芯片

2011-12-26 10:10:00

2010-03-25 11:47:55

AMD英特爾6核處理器芯片

2010-03-17 09:27:34

英特爾服務(wù)器芯片

2009-05-21 18:43:54

六核服務(wù)器英特爾

2009-06-02 14:10:31

AMD六核服務(wù)器

2009-07-24 14:00:48

2016-04-22 10:16:03

深信服虛擬化英特爾

2016-08-29 20:58:44

英特爾IBM服務(wù)器芯片

2011-03-21 17:05:01

英特爾48核芯片

2013-08-19 09:04:25

英特爾大數(shù)據(jù)

2013-09-09 18:24:32

2012-11-15 09:52:46

AMD出售英特爾

2011-11-17 01:55:08

虛擬化虛擬化平臺(tái)263

2009-02-03 17:21:52

服務(wù)器虛擬化英特爾
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)