虛擬化對未被充分利用的服務器進行整合,不再為新項目另外購置硬件,從而降低資本成本,同時,精簡 數據中心服務器的數量,又可以成比例地減少供電、制冷和場地方面的運營成本。
利用先進的虛擬化管理和云運營管理軟件,建立安全的、可審核的數據中心環(huán)境,為業(yè)務部門提供 成本更低、服務水平更高的基礎架構,從而能夠針對業(yè)務部門的需求做出快速的響應。
通過虛擬化管理和云運營管理軟件,完全實現(xiàn)數據中心 IT 基礎設施的集中化管理,這樣不僅可以精簡IT操作,提高管理效率,而且還可以簡化監(jiān)控、管理、報告和遠程訪問等操作。
最初的x86架構不適合于虛擬化
X86架構存在17條敏感的非特權指令,運行時不會產生異常,這些指令在客戶操作系統(tǒng)上的執(zhí)行會破壞整個系統(tǒng)。

解決方法1:半虛擬化(Para-Virtualization)
Xen 半虛擬化(Para-Virtualization)架構

在Hypervisor上運行的Guest OS已經集成了與半虛擬化有關的代碼,使得Guest OS能夠非常好地配合Hypervisor來實現(xiàn)虛擬化。

Hypervisor提供Hypercall接口來滿足Guest OS的關鍵內核操作,如內存管理、中斷和時間同步等。
解決方法2:BT(Binary Translation,二進制翻譯)
全虛擬化
VMware ESX 的軟件系統(tǒng)架構

Guest OS指令段在執(zhí)行前進行整段翻譯,將其中的敏感非特權指令替換為Ring0中執(zhí)行對應特權指令。

非特權指令直接執(zhí)行。
特權指令首先被陷入到VMM,并VMM通過一系列的模擬操作來實現(xiàn)此特權指令,然后返回給Guest OS,Guest OS從上次被中斷的地方繼續(xù)執(zhí)行。
硬件輔助虛擬化

硬件輔助虛擬化-CPU

CPU硬件虛擬化—Intel VT-i

硬件輔助虛擬化—內存


IO虛擬化
客戶機的設備驅動程序發(fā)起 I/O 請求操作請求,KVM 模塊中的 I/O 操作捕獲代碼攔截這次 I/O 請求

經過處理后將本次 I/O 請求的信息放到 I/O 共享頁 (sharing page),并通知用戶空間的 QEMU 程序。
QEMU 程序獲得 I/O 操作的具體信息之后,交由硬件模擬代碼來模擬出本次I/O 操作。
完成之后,QEMU 將結果放回 I/O 共享頁,并通知 KMV 模塊中的 I/O 操作捕獲代碼。
KVM 模塊的捕獲代碼讀取 I/O 共享頁中的操作結果,并把結果放回客戶機。
主流的Hypervisor產品

在 x86 架構中,與根模式相對應的是非根模式(non-root mode),非根模式即傳統(tǒng)的 CPU 模 式,包括Ring 0~Ring 3 的權限級;而在根模式中,也有對應的 Ring 0~Ring 3 的權限級。也就是說,根模式和非根模式是平行的;
而在 ARM 中,虛擬化模式和原有的幾種模式是并列的,只是虛擬化模式擁有比管理模式更高 的權限等級。
KVM/ARM 虛擬化技術原理

本文來自“計算虛擬化基礎介紹”,主要介紹虛擬化的產生與發(fā)展,KVM的CPU、內存和IO虛擬化,ARM和X86的比較。
-
模塊
+關注
關注
7文章
2848瀏覽量
53428 -
服務器
+關注
關注
14文章
10339瀏覽量
91731 -
操作系統(tǒng)
+關注
關注
37文章
7431瀏覽量
129591 -
虛擬化
+關注
關注
1文章
404瀏覽量
30974
原文標題:計算虛擬化基礎介紹
文章出處:【微信號:架構師技術聯(lián)盟,微信公眾號:架構師技術聯(lián)盟】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
云計算和虛擬化的差異理解
什么是計算機虛擬化
虛擬化技術在云計算中的發(fā)展
云計算的虛擬化技術應用
淺談云計算與虛擬化的關系及虛擬化的類型
虛擬機內存及云計算虛擬化技術的研究
計算虛擬化基礎介紹
評論