国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運營 > 虛擬化技術介紹

虛擬化技術介紹

時間:2023-07-01 01:42:02 | 來源:網(wǎng)站運營

時間:2023-07-01 01:42:02 來源:網(wǎng)站運營

虛擬化技術介紹:虛擬化(Virtualization)技術最早出現(xiàn)在20世紀60年代的IBM大型機系統(tǒng),在70年代的System 370系列中逐漸流行起來。這些機器通過一種叫虛擬機監(jiān)控器(Virtual Machine Monitor,VMM)的程序在物理硬件之上生成許多可以運行獨立操作系統(tǒng)軟件的虛擬機(Virtual Machine)實例。
隨著近年計算機技術的進步,無論是服務器市場、桌面市場,還是嵌入式市場,處理器的頻率和核心數(shù)目都出現(xiàn)了巨大的進步,從而帶來了處理能力的迅速增長,使得虛擬化技術再次迅速發(fā)展起來,并從最初的的裸機虛擬化技術開始,演化出主機虛擬化、混合虛擬化等更復雜的虛擬化模型,并在此基礎山發(fā)展出了當下最熱門的云虛擬化技術,極大地降低了IT成本,增強了系統(tǒng)的安全性,可靠性和擴展性。

在計算機領域,虛擬化是一個廣義的概念。簡而言之,虛擬化是指對計算機資源的抽象。虛擬機最初被Popek和Goldberg定義為物理機器的一個或多個隔離的有效復制[16]。J.E. Smith和RaviNair給出了一個更具體化的定義:虛擬機是通過在物理平臺上添加的軟件給出的一個或多個不同的平臺。一個虛擬機可以有一個操作系統(tǒng)和指令集,或者兩者都有,可以不同于底下的真實的硬件。

虛擬化技術的本質在于對計算機系統(tǒng)軟硬件資源的劃分和抽象。計算機系統(tǒng)的高度復雜性是通過各種層次的抽象來控制,每一層都通過層與層之間的接口對底層進行抽象,隱藏底層具體實現(xiàn)而向上層提供較簡單的接口。





1. 虛擬化技術層次

計算機系統(tǒng)包括五個抽象層:硬件抽象層,指令集架構層,操作系統(tǒng)層,庫函數(shù)層和應用程序層。相應地,虛擬化可以在每個抽象層來實現(xiàn)。無論是在哪個抽象層實現(xiàn),其本質都是一樣的,那就是它使用某些手段來管理分配底層資源,并將底層資源反映給上層。操作系統(tǒng)上傳統(tǒng)的進程模型就利用了虛擬化的思想,操作系統(tǒng)通過對物理內(nèi)存的劃分和抽象,給每個進程呈現(xiàn)出遠超出物理內(nèi)存空間的4G空間,并且使得每個進程實現(xiàn)了有效的隔離,從而一個進程的崩潰不會影響到其它進程的正常運行。

虛擬化平臺是操作系統(tǒng)層虛擬化的實現(xiàn)。在系統(tǒng)虛擬化中,虛擬機(VM)是在一個硬件平臺上模擬一個或者多個獨立的和實際底層硬件相同的執(zhí)行環(huán)境。每個虛擬的執(zhí)行環(huán)境里面可以運行不同的操作系統(tǒng),即客戶機操作系統(tǒng)(Guest OS)。Guest OS通過虛擬機監(jiān)控器提供的抽象層來實現(xiàn)對物理資源的訪問和操作。目前存在各種各樣的虛擬機,但基本上所有虛擬機都基于"計算機硬件 + 虛擬機監(jiān)視器(VMM)+ 客戶機操作系統(tǒng)(Guest OS)"的模型。





虛擬機監(jiān)控器是計算機硬件和Guest OS之間的一個抽象層,它運行在最高特權級,負責將底層硬件資源加以抽象,提供給上層運行的多個虛擬機使用,并且為上層的虛擬機提供多個隔離的執(zhí)行環(huán)境,使得每個虛擬機都以為自己在獨占整個計算機資源。虛擬機監(jiān)控器可以將運行在不同物理機器上的操作系統(tǒng)和應用程序合并到同一臺物理機器上運行,減少了管理成本和能源損耗,并且便于系統(tǒng)的遷移。

2. 虛擬機監(jiān)視器(VMM)模型

根據(jù)虛擬機監(jiān)視器在虛擬化平臺中的位置,可以將其分為以下3種模型:

  1. 裸機虛擬化模型(Hypervisor Model)

裸機虛擬化模型,也稱為Type-I型虛擬化模型、獨立監(jiān)控模型。該模型中,虛擬機監(jiān)控器直接運行在沒有操作系統(tǒng)的裸機上,具有最高特權級,管理底層所有的硬件資源。所有的Guest OS都運行在較低的特權級中,所有Guest OS對底層資源的訪問都被虛擬機監(jiān)控器攔截,由虛擬機監(jiān)控器代為操作并返回操作結果,從而實現(xiàn)系統(tǒng)的隔離性,達到對系統(tǒng)資源絕對控制。作為底層硬件的管理者,虛擬機監(jiān)控器中有所有的硬件驅動。這種模型又稱為Type-I型虛擬機監(jiān)控器。
采用該模型的虛擬化平臺有Wind River的Hypervisor 2.0, VMware ESXi, Xen等。

  1. 宿主機虛擬化模型(Host-based Model)

宿主機虛擬化模型,也稱為Type-II型虛擬化模型。該模型中,虛擬機監(jiān)控器作為一個應用程序運行在宿主機操作系統(tǒng)(Host OS)上,而Guest OS運行于虛擬機監(jiān)控器之上。Guest OS對底層硬件資源的訪問要被虛擬機監(jiān)控器攔截,虛擬機監(jiān)控器再轉交給Host OS進行處理。改模型中,Guest OS對底層資源的訪問路徑更長,故而性能相對獨立監(jiān)控模型有所損失。但優(yōu)點是,虛擬機監(jiān)控器可以利用宿主機操作系統(tǒng)的大部分功能,而無需重復實現(xiàn)對底層資源的管理和分配,也無需重寫硬件驅動。
采用該模型的虛擬化平臺有Wind River的VxWorks ST,VMware Workstation和Xen等。

  1. 混合模型(Hybrid Model)

該模型中,虛擬機監(jiān)控器直接運行在物理機器上,具有最高的特權級,所有虛擬機都運行在虛擬機監(jiān)控器之上。與Type-I型虛擬化模型不同的是,這種模型中虛擬機監(jiān)控器不需要實現(xiàn)硬件驅動,甚至虛擬機調度器等部分虛擬機管理功能,而把對外部設備訪問、虛擬機調度等功能交給一個特權級虛擬機(RootOS、Domain 0、根操作系統(tǒng)等)來處理。特權級虛擬機可以管理其它虛擬機和直接訪問硬件設備,只有虛擬化相關的部分,例如虛擬機的創(chuàng)建/刪除和外設的分配/控制等功能才交由虛擬機監(jiān)視控制。
采用該模型的虛擬化平臺有Linux KVM、Jailhouse等。

3. 常用虛擬化技術

虛擬機監(jiān)視器采用的虛擬化技術分為以下4種:

  1. 硬件仿真技術
    該技術在宿主機操作系統(tǒng)上創(chuàng)建一個硬件VM來仿真所想要的硬件,包括客戶機需要的CPU指令集和各種外設等。硬件仿真技術使用VM來模擬所需要的硬件,因此速度會非常慢。由于每條指令都必須在底層硬件上進行仿真,因此速度減慢100倍的情況也并不稀奇。若要實現(xiàn)高度保真的仿真,包括周期精度、所仿真的 CPU 管道以及緩存行為,實際速度差距甚至可能會達到 1000 倍之多。當然,硬件仿真也有自己的優(yōu)點。例如,使用硬件仿真,可以在一個ARM架構處理器上運行為PowerPC設計的操作系統(tǒng),而不需要任何修改。采用該技術,甚至可以運行多個虛擬機,每個虛擬器仿真一個不同架構的處理器。
    采用該技術的虛擬機有WindRiver Simics、QEMU、Bochs等。
  2. 全虛擬化技術(Full Virtualization)
    全虛擬化技術,也稱為原始虛擬化技術。該技術以軟件模擬的方式來彌補硬件的虛擬化漏洞,呈現(xiàn)給虛擬機的是一個與真實硬件完全相同的硬件環(huán)境,使得為原始硬件設計的操作系統(tǒng)或其它系統(tǒng)軟件完全不做任何修改就可以直接運行在全虛擬化的虛擬機監(jiān)控器上,兼容性非常好。但是采用該技術的虛擬機監(jiān)控器模擬了完整的底層硬件,并且需要額外的指令翻譯,從而使得模擬過程比較復雜,導致效率較為低下。
    采用該技術的虛擬化平臺有VirtualBox,Virtual Iron,IBM z/VM,Virtual PC,Hyper-V,VMware Workstation,VMware Server (formerly GSX Server),Adeos,Mac-on-Linux以及Egenera vBlade technology等。
  3. 半虛擬化技術(Paravirtualization)
    半虛擬化技術又稱為泛虛擬化技術、準虛擬化技術、協(xié)同虛擬化技術或者超虛擬化技術,是指通過暴露給Guest OS一個修改過的硬件抽象,將硬件接口以軟件的形式提供給客戶機操作系統(tǒng)。這可以通過Hypercall(VMM提供給GuestOS的直接調用,與系統(tǒng)調用類似)的方式來提供。比較著名的VMM有Denali以及早期的Xen等。而Guest OS也修改自己的部分代碼與VMM配合工作來實現(xiàn)系統(tǒng)虛擬化。半虛擬化的優(yōu)點是降低了虛擬化技術帶來的性能開銷,主要表現(xiàn)在消減代碼冗余減少特權級別轉換和減少內(nèi)存復制。并且半虛擬化技術修改了Guest OS與虛擬機監(jiān)控器協(xié)同工作,使得虛擬機監(jiān)控器可以得知Guest OS內(nèi)部的一些狀態(tài),消除了黑盒調度帶來的一些問題。
    采用該技術的虛擬化平臺有Denali、UML(User-mode Linux)和早期的Xen等。
  4. 硬件輔助虛擬化技術(Hardware-Assisted Virtualization)
    硬件輔助虛擬化技術是指借助硬件(CPU、芯片組以及I/O設備等)的虛擬化支持來實現(xiàn)高效的全虛擬化。原有的硬件體系結構在虛擬化方面存在虛擬化漏洞等缺陷,導致單純的軟件虛擬化方法存在一些問題;還有就是由于硬件架構的限制,某些功能即使可以通過軟件的方式來實現(xiàn),但是實現(xiàn)過程卻異常復雜,甚至帶來性能的大幅下降,這主要體現(xiàn)在以軟件方式實現(xiàn)的內(nèi)存虛擬化和I/O設備虛擬化。通過在硬件中加入專門針對虛擬化的支持,系統(tǒng)虛擬化的實現(xiàn)變得更加容易和高效。例如,在Intel VT技術的支持下,Guest OS和VMM的執(zhí)行環(huán)境可以自動地完全隔離開來,Guest OS有自己的“全套寄存器”,可以直接運行在最高級別。
    目前支持完整的硬件輔助虛擬化技術的硬件平臺包括:
采用該技術的虛擬化平臺有Linux KVM, VMware Workstation, VMware Fusion, Microsoft Virtual PC, Xen, Parallels Desktop for Mac,VirtualBox and Parallels Workstation。

4. 嵌入式虛擬化技術

嵌入式系統(tǒng)是虛擬化技術的新方向和重要分支。
嵌入式處理器的迅速發(fā)展使得嵌入式系統(tǒng)在更多方面得到了廣泛的應用。而嵌入式設備應用的普及導致其對軟硬件的需求也越來越高。硬件體現(xiàn)在不斷增強的計算能力和多種多樣的外部設備,軟件體現(xiàn)在愈加復雜的新功能特性。這些問題導致嵌入式開發(fā)變得復雜和軟件維護成本的增加。原來的SMP和AMP等多核操作系統(tǒng)方案無法滿足安全隔離、硬件資源分配和復用等日益復雜的要求。因此,服務器和桌面系統(tǒng)上的虛擬化技術被引入了嵌入式操作系統(tǒng)領域,并借助于硬件輔助虛擬化技術,解決了虛擬化技術帶來的便利性與嵌入式系統(tǒng)得實時性要求之間的矛盾,使得以Linux KVM、Xen等嵌入式虛擬化平臺得到了迅速發(fā)展。

虛擬化平臺在硬件和操作系統(tǒng)之間引入了一個新的抽象層次,稱為虛擬機監(jiān)控器(Virtual Machine Monitor,簡稱VMM),由它接管所有的硬件,并管理運行其上的所有虛擬機(Virtual Machine,簡稱VM),而每個虛擬機中可以運行各自的操作系統(tǒng)。

虛擬化的優(yōu)點在于實現(xiàn)了資源的重用,使得一個物理平臺上面可以同時運行多個不同的操作系統(tǒng)。通過利用系統(tǒng)虛擬化技術,可以在嵌入式設備中同時運行實時操作系統(tǒng)和通用操作系統(tǒng),分別發(fā)揮各自的優(yōu)勢——實時操作系統(tǒng)處理實時任務,通用操作系統(tǒng)提供豐富的應用程序,它們彼此分工協(xié)作,發(fā)揮各自的優(yōu)勢,同時滿足各種不同的需求。

但與此同時,虛擬化平臺技術也引入了新問題。不少嵌入式系統(tǒng)對實時性能都有比較高的要求,而虛擬機與虛擬機監(jiān)控器間的切換導致處理器操作模式的切換和上下文的切換,會增加系統(tǒng)的響應時間,從而增加實時系統(tǒng)的時間不確定性,影響了實時系統(tǒng)的性能。虛擬機對運行于其上的應用程序的隔離又增加了虛擬機監(jiān)控器的精確調度的難度,目前的虛擬機監(jiān)控器也只能基于虛擬機的優(yōu)先級或者時間片分配而進行粗粒度的調度。此外,現(xiàn)存的虛擬化平臺技術主要基于X86等通用計算機平臺,對ARM、MIPS等嵌入式處理器支持不夠,在功能性和穩(wěn)定性上都有所缺失。

綜上所述,虛擬化可以解決嵌入式系統(tǒng)目前面臨的不少問題,帶來很多方便,但由于現(xiàn)存虛擬化解決方案(如KVM和XEN)在設計之初并沒有考慮嵌入式系統(tǒng)的特殊需求,從導致功能性、實時性、穩(wěn)定性都有所缺失。




本文使用 WPL/s 發(fā)布 @GitHub,首發(fā)于本人簡書專欄。


關鍵詞:技術,虛擬

74
73
25
news

版權所有? 億企邦 1997-2025 保留一切法律許可權利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關閉