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

基礎(chǔ)知識:虛擬機的構(gòu)成和CPU虛擬化

云計算 虛擬化
模擬執(zhí)行的方法有很多種,典型的有解釋執(zhí)行和二進制執(zhí)行。軟件模擬的方法效率相對硬件支持要低,所以在采購資源池的X86服務(wù)器都要求采購帶有Intel VT-x和AMD SVM標(biāo)志的64位服務(wù)器,因為現(xiàn)在CPU硬件就可以解決這個問題。

 回憶一下主要內(nèi)容:

1、 計算虛擬化包括了“一虛多”和“多虛一”;現(xiàn)在階段硬件能力過盛,一虛多”成為主流。

2、 裸金屬架構(gòu)更適合部署在資源池內(nèi)如VMWARE、CitrixXenServerv、RHEV,適合企業(yè)使用,寄居架構(gòu)適合單機,適合個人折騰。

3、 全虛擬化和半虛擬化各有優(yōu)缺點。KVM發(fā)展迅猛,XEN開始走入暮年。

其實,對于應(yīng)用來看,虛擬機就是一臺X86服務(wù)器。所以能運行在X86服務(wù)器上的應(yīng)用,也能運行在虛擬機上。虛擬機的構(gòu)成和物理機也完全一致,主要是CPU、內(nèi)存、硬盤,輸入、輸出設(shè)備。但是虛擬機的這些“構(gòu)件”都是虛擬或共享的,都可以由所在的物理機提供出來的,但是為了實現(xiàn)虛擬機的遷移功能,虛擬機的硬盤***由和這臺物理服務(wù)器相連的共享存儲提供。

[[222329]]

CPU虛擬化技術(shù)主要分為兩大部分。一是將CPU核運行時間進行切片,通過VMM(虛擬化層管理)調(diào)度,將CPU運行時間片分配、調(diào)度到不同的虛擬機上,當(dāng)虛擬機運行完成或超時,將這個時間片控制權(quán)交回VMM,再進行下一次的調(diào)度。分配給應(yīng)用的vCPU不是固定在某個CPU上,它只是可以執(zhí)行命令的一個或幾個時間片,這一次分配在這些物理核上,下一次分配在另外一些核上。通過時間片,可以提高物理CPU的利用率。原來物理機的CPU好比是私家車,上下班的時候在路上跑,平時都停在路邊;CPU被時間切片被調(diào)度后就像加入“優(yōu)步”的私家車,一直在路上跑,有需求就搭客運營,提高了利用率。

二是CPU需要“欺騙”虛擬機上的操作系統(tǒng)(guest OS)執(zhí)行敏感指令。CPU是通過Ring級別來進行訪問控制的,級別共分4層,RING0,RING1,RING2,RING3。RING0層擁有***的權(quán)限,是個操作系統(tǒng)使用的,可以訪問所有層的數(shù)據(jù),而其他驅(qū)動程序位于RING1、RING2層,RING3可以運行應(yīng)用。每一層只能訪問本層以及權(quán)限更低層的數(shù)據(jù)。如果普通應(yīng)用程序企圖執(zhí)行RING0指令,則會認(rèn)為“非法指令”錯誤信息。但是在虛擬機內(nèi),RING0被比guest OS更“低級”的VMM所霸占,只能運行在RONG1。而操作系統(tǒng)的有些指令一定要在RING0執(zhí)行的,這些指令叫做敏感指令。RING0已經(jīng)被“控制者”霸占,在執(zhí)行浙西敏感指令時候就會出現(xiàn)異常而“陷入”,執(zhí)行一定會出現(xiàn)異常。如何處理“陷入”的敏感指令就是CPU虛擬化需要干的事情。

解決這個沖突,有2種方法:軟件模擬和硬件支持(Intel VT-x和AMD SVM)。

軟件模擬的方式就是當(dāng)這些“陷入”的指令被送到VMM層進行模擬并執(zhí)行,并將執(zhí)行的結(jié)果返回到虛擬機的guest OS。模擬執(zhí)行的方法有很多種,典型的有解釋執(zhí)行和二進制執(zhí)行。軟件模擬的方法效率相對硬件支持要低,所以在采購資源池的X86服務(wù)器都要求采購帶有Intel VT-x和AMD SVM標(biāo)志的64位服務(wù)器,因為現(xiàn)在CPU硬件就可以解決這個問題。

以Intel VT-x為例,VT-x提供了一套稱作VMX的新的工作模式,工作在該模式下的處理器又具有兩類操作模式:VMX root operation和VMX non-root operation。VMM占據(jù)VMX root operation,而guest OS使用VMX non-root operation。對操作系統(tǒng)來說,VMX non-root operation模式與傳統(tǒng)的x86處理器兼容,***的差別在于當(dāng)虛擬機執(zhí)行一些訪問全局資源的指令時將導(dǎo)致虛擬機退出操作(VM-Exit),從而使VMM獲得控制權(quán),以便對訪問全局資源的指令進行模擬。然后,VMM可以通過虛擬機進入操作(VM-Entry)使虛擬機重新獲得控制權(quán)。

虛擬化的CPU和物理機的CPU還是有一定的差別。就像上面的例子,物理機的CPU是固定被操作系統(tǒng)占用的,用和不用,都是被一個操作系統(tǒng)控制的,所有CPU配置越大,不會影響應(yīng)用的執(zhí)行,只是CPU的利用率越來越低。但是虛擬CPU就不一樣了,當(dāng)你配置的CPU的核數(shù)越多,本質(zhì)上是等待相應(yīng)核數(shù)的時間片,而且VMM的調(diào)度程序一定要等到配置的vCPU的核數(shù)全部到位后,才能執(zhí)行,所以在超配的情況下,核數(shù)越多,等待的時間越長。在虛擬CPU下,配置的原則是在滿足需求的情況下CPU數(shù)量越少越好。也可以再看一下我以前寫的文章《基礎(chǔ)知識——CPU的分配原則》。

還有一個需要注意的,虛擬機的時鐘會比實際的慢。因為計算機的時間是通過CPU的主頻計算出來的,虛擬機的時間也是靠vCPU計算出來的,而vCPU經(jīng)常被調(diào)度到其他虛擬機上,“時間被偷走了”,虛擬機上的時間走的慢。所以虛擬機***連接時間同步服務(wù)器。

責(zé)任編輯:武曉燕 來源: 顧炯的云世界
相關(guān)推薦

2018-11-12 15:20:15

CPU虛擬化云計算

2020-12-08 05:58:57

CPU虛擬化虛擬機

2009-09-21 15:11:54

虛擬化基礎(chǔ)知識

2009-04-14 19:22:51

Vmware服務(wù)器虛擬化虛擬化

2012-06-06 09:36:28

服務(wù)器虛擬化

2009-03-24 18:26:58

Vmwareesx服務(wù)器虛擬化

2017-12-26 14:56:44

虛擬化基礎(chǔ)知識

2012-05-18 10:22:23

2010-07-26 09:02:38

2013-07-17 09:32:58

2013-11-11 09:57:29

Hyper-V虛擬機

2010-12-27 14:11:55

虛擬機配置CPU

2018-11-26 06:45:08

2013-04-07 09:52:40

Ubuntu虛擬機虛擬化軟件

2020-06-18 16:39:10

KVM虛擬化虛擬機

2023-04-26 07:51:36

虛擬機操作系統(tǒng)進程

2020-01-17 10:52:37

無服務(wù)器容器技術(shù)

2010-08-30 10:51:38

2011-02-16 14:49:17

虛擬機

2009-07-29 17:19:02

hypervisor-container-b
點贊
收藏

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