學(xué)習(xí)啦>知識(shí)大全>知識(shí)百科>百科知識(shí)>

虛擬化技術(shù)基礎(chǔ)知識(shí)

時(shí)間: 謝君787 分享

  在實(shí)際的生產(chǎn)環(huán)境中,虛擬化技術(shù)主要用來(lái)解決高性能的物理硬件產(chǎn)能過(guò)剩和老的舊的硬件產(chǎn)能過(guò)低的重組重用,透明化底層物理硬件,從而最大化的利用物理硬件,以下是由學(xué)習(xí)啦小編整理關(guān)于虛擬化技術(shù)基礎(chǔ)知識(shí)的內(nèi)容,希望大家喜歡!

  虛擬化技術(shù)的定義

  虛擬化技術(shù)與多任務(wù)以及超線程技術(shù)是完全不同的。多任務(wù)是指在一個(gè)操作系統(tǒng)中多個(gè)程序同時(shí)一起運(yùn)行,而在虛擬化技術(shù)中,則可以同時(shí)運(yùn)行多個(gè)操作系統(tǒng),而且每一個(gè)操作系統(tǒng)中都有多個(gè)程序運(yùn)行,每一個(gè)操作系統(tǒng)都運(yùn)行在一個(gè)虛擬的CPU或者是虛擬主機(jī)上;而超線程技術(shù)只是單CPU模擬雙CPU來(lái)平衡程序運(yùn)行性能,這兩個(gè)模擬出來(lái)的CPU是不能分離的,只能協(xié)同工作。

  虛擬化技術(shù)也與VMware Workstation等同樣能達(dá)到虛擬效果的軟件不同,是一個(gè)巨大的技術(shù)進(jìn)步,具體表現(xiàn)在減少軟件虛擬機(jī)相關(guān)開(kāi)銷(xiāo)和支持更廣泛的操作系統(tǒng)方面。

  純軟件虛擬化解決方案存在很多限制。“客戶(hù)”操作系統(tǒng)很多情況下是通過(guò)VMM(Virtual Machine Monitor,虛擬機(jī)監(jiān)視器)來(lái)與硬件進(jìn)行通信,由VMM來(lái)決定其對(duì)系統(tǒng)上所有虛擬機(jī)的訪問(wèn)。(注意,大多數(shù)處理器和內(nèi)存訪問(wèn)獨(dú)立于VMM,只在發(fā)生特定事件時(shí)才會(huì)涉及VMM,如頁(yè)面錯(cuò)誤。)在純軟件虛擬化解決方案中,VMM在軟件套件中的位置是傳統(tǒng)意義上操作系統(tǒng)所處的位置,而

  操作系統(tǒng)的位置是傳統(tǒng)意義上應(yīng)用程序所處的位置。

  虛擬化技術(shù)是一套解決方案。完整的情況需要CPU、主板芯片組、BIOS和軟件的支持,例如VMM軟件或者某些操作系統(tǒng)本身。即使只是CPU支持虛擬化技術(shù),在配合VMM的軟件情況下,也會(huì)比完全不支持虛擬化技術(shù)的系統(tǒng)有更好的性能。

  兩大CPU巨頭Intel和AMD都想方設(shè)法在虛擬化領(lǐng)域中占得先機(jī),但是AMD的虛擬化技術(shù)在時(shí)間上要比Intel落后幾個(gè)月。Intel自2005年末開(kāi)始便在其處理器產(chǎn)品線中推廣應(yīng)用Intel Virtualization Technology(Intel VT)虛擬化技術(shù)。

  而AMD方面也已經(jīng)發(fā)布了支持AMD Virtualization Technology(AMD VT)虛擬化技術(shù)的一系列處理器產(chǎn)品,包括Socket S1接口的Turion 64 X2系列以及Socket AM2接口的Athlon 64 X2系列和Athlon 64 FX系列等等,并且絕大多數(shù)的AMD下一代主流處理器,包括即將發(fā)布的Socket F接口的Opteron都將支持AMD VT虛擬化技術(shù)。

  虛擬化技術(shù)的原理

  虛擬機(jī)是對(duì)真實(shí)計(jì)算環(huán)境的抽象和模擬,VMM 需要為每個(gè)虛擬機(jī)分配一套數(shù)據(jù)結(jié)構(gòu)來(lái)管理它們狀態(tài),包括虛擬處理器的全套寄存器,物理內(nèi)存的使用情況,虛擬設(shè)備的狀態(tài)等等。VMM 調(diào)度虛擬機(jī)時(shí),將其部分狀態(tài)恢復(fù)到主機(jī)系統(tǒng)中。并非所有的狀態(tài)都需要恢復(fù),例如主機(jī) CR3 寄存器中存放的是 VMM 設(shè)置的頁(yè)表物理地址,而不是 Guest OS 設(shè)置的值。主機(jī)處理器直接運(yùn)行 Guest OS 的機(jī)器指令,由于 Guest OS運(yùn)行在低特權(quán)級(jí)別,當(dāng)訪問(wèn)主機(jī)系統(tǒng)的特權(quán)狀態(tài)(如寫(xiě) GDT寄存器)時(shí),權(quán)限不足導(dǎo)致主機(jī)處理器產(chǎn)生異常,將運(yùn)行權(quán)自動(dòng)交還給 VMM。此外,外部中斷的到來(lái)也會(huì)導(dǎo)致 VMM 的運(yùn)行。

  VMM 可能需要先將 該虛擬機(jī)的當(dāng)前狀態(tài)寫(xiě)回到狀態(tài)數(shù)據(jù)結(jié)構(gòu)中,分析虛擬機(jī)被掛起的原因,然后代表 Guest OS 執(zhí)行相應(yīng)的特權(quán)操作。最簡(jiǎn)單的情況,如Guest OS 對(duì) CR3 寄存器的修改,只需要更新虛擬機(jī)的狀態(tài)數(shù)據(jù)結(jié)構(gòu)即可。一般而言,大部分情況下,VMM 需要經(jīng)過(guò)復(fù)雜的流程才能完成原本簡(jiǎn)單的操作。最后 VMM 將運(yùn)行權(quán)還給 Guest OS,Guest OS 從上次被中斷的地方繼續(xù)執(zhí)行,或處理 VMM “塞”入的虛擬中斷和異常。這種經(jīng)典的虛擬機(jī)運(yùn)行方式被稱(chēng)為 Trap-And-Emulate,虛擬機(jī)對(duì)于 Guest OS 完全透明,Guest OS 不需要任何修改,但是 VMM 的設(shè)計(jì)會(huì)比較復(fù)雜,系統(tǒng)整體性能受到明顯的損害。

  虛擬化技術(shù)的分類(lèi)

  硬件虛擬化

  虛擬機(jī)(Virtual machine或VM),可以像真實(shí)機(jī)器一樣運(yùn)行程序的計(jì)算機(jī)的軟件實(shí)現(xiàn)

  便攜式應(yīng)用程序,允許程序在便攜式設(shè)備中運(yùn)行而不用在操作系統(tǒng)中安裝

  跨平臺(tái)虛擬化,允許針對(duì)特定CPU或者操作系統(tǒng)的軟件不做修改就能運(yùn)行在其他平臺(tái)上,例如Wine

  虛擬設(shè)備,運(yùn)行于虛擬化平臺(tái)之上,面向應(yīng)用的虛擬機(jī)映像

  模擬器

  完全虛擬化,敏感指令在操作系統(tǒng)和硬件之間被捕捉處理,客戶(hù)操作系統(tǒng)無(wú)需修改,所有軟件都能在虛擬機(jī)中運(yùn)行,例如IBM CP/CMS,VirtualBox,VMware Workstation

  硬件輔助虛擬化,利用硬件(主要是CPU)輔助處理敏感指令以實(shí)現(xiàn)完全虛擬化的功能,客戶(hù)操作系統(tǒng)無(wú)需修改,例如VMware Workstation,Xen,KVM

  部分虛擬化,針對(duì)部分應(yīng)用程序進(jìn)行虛擬,而不是整個(gè)操作系統(tǒng)

  準(zhǔn)虛擬化/超虛擬化(paravirtualization),為應(yīng)用程序提供與底層硬件相似但不相同的軟件接口,客戶(hù)操作系統(tǒng)需要進(jìn)行修改,例如早期的Xen

  操作系統(tǒng)級(jí)虛擬化,使操作系統(tǒng)內(nèi)核支持多用戶(hù)空間實(shí)體,例如Parallels Virtuozzo Containers,Unix-like系統(tǒng)上的chroot,Solaris上的Zone

  平臺(tái)虛擬化,將操作系統(tǒng)和硬件平臺(tái)資源分割開(kāi)

  應(yīng)用程序虛擬化,在操作系統(tǒng)和應(yīng)用程序間建立虛擬環(huán)境

  虛擬內(nèi)存,將不相鄰的內(nèi)存區(qū),甚至硬盤(pán)空間虛擬成統(tǒng)一連續(xù)的內(nèi)存地址

  存儲(chǔ)虛擬化,將實(shí)體存儲(chǔ)空間(如硬盤(pán))分隔成不同的邏輯存儲(chǔ)空間

  網(wǎng)絡(luò)虛擬化,將不同網(wǎng)絡(luò)的硬件和軟件資源結(jié)合成一個(gè)虛擬的整體

  虛擬專(zhuān)用網(wǎng)絡(luò)(),在大型網(wǎng)絡(luò)(通常是Internet)中的不同計(jì)算機(jī)(節(jié)點(diǎn))通過(guò)加密連接而組成的虛擬網(wǎng)絡(luò),具有類(lèi)似局域網(wǎng)的功能

  存儲(chǔ)器虛擬化,將網(wǎng)絡(luò)系統(tǒng)中的隨機(jī)存儲(chǔ)器聚合起來(lái),形成統(tǒng)一的虛擬內(nèi)存池

  桌面虛擬化,在本地計(jì)算機(jī)顯示和操作遠(yuǎn)程計(jì)算機(jī)桌面,在遠(yuǎn)程計(jì)算機(jī)執(zhí)行程序和儲(chǔ)存信息

  數(shù)據(jù)庫(kù)虛擬化

  軟件虛擬化

  服務(wù)虛擬化

  虛擬化發(fā)展時(shí)間線


看過(guò)“虛擬化技術(shù)基礎(chǔ)知識(shí)“的人還看了:

1.云計(jì)算機(jī)技術(shù)有哪些

2.虛擬化基礎(chǔ)知識(shí)

3.虛擬機(jī)基礎(chǔ)知識(shí)

4.大數(shù)據(jù)基礎(chǔ)知識(shí)

5.cpu虛擬化技術(shù)有什么用

6.淺談?dòng)?jì)算機(jī)虛擬化技術(shù)論文

虛擬化技術(shù)基礎(chǔ)知識(shí)

在實(shí)際的生產(chǎn)環(huán)境中,虛擬化技術(shù)主要用來(lái)解決高性能的物理硬件產(chǎn)能過(guò)剩和老的舊的硬件產(chǎn)能過(guò)低的重組重用,透明化底層物理硬件,從而最大化的利用物理硬件,以下是由學(xué)習(xí)啦小編整理關(guān)于虛擬化技術(shù)基礎(chǔ)知識(shí)的內(nèi)容,希望大家喜歡! 虛擬化
推薦度:
點(diǎn)擊下載文檔文檔為doc格式

精選文章

  • 虛擬化基礎(chǔ)知識(shí)
    虛擬化基礎(chǔ)知識(shí)

    虛擬化是指通過(guò)虛擬化技術(shù)將一臺(tái)計(jì)算機(jī)虛擬為多臺(tái)邏輯計(jì)算機(jī)。那么你對(duì)虛擬化了解多少呢?以下是由學(xué)習(xí)啦小編整理關(guān)于虛擬化基礎(chǔ)知識(shí)的內(nèi)容,希望大

  • 宿舍防火知識(shí)
    宿舍防火知識(shí)

    學(xué)生宿舍是一個(gè)集體場(chǎng)所,是一個(gè)人口密度大的聚居地,任何一場(chǎng)火災(zāi)都可能造成重大后果,帶來(lái)無(wú)可挽回的財(cái)產(chǎn)損失和人身傷害。因此,學(xué)生宿舍是學(xué)校

  • 宿舍防火小知識(shí)宿舍如何防火
    宿舍防火小知識(shí)宿舍如何防火

    作為宿舍的主體,要重視安全防火的重要性,提高思想認(rèn)識(shí),防范勝于救災(zāi),責(zé)任重于泰山。以下是由學(xué)習(xí)啦小編整理關(guān)于宿舍防火小知識(shí)的內(nèi)容,希望大

  • 維修汽車(chē)知識(shí)
    維修汽車(chē)知識(shí)

    隨著我國(guó)汽車(chē)工業(yè)發(fā)展和國(guó)民收入持續(xù)增加,私家車(chē)普及率越來(lái)越高,汽車(chē)維修業(yè)發(fā)展空間進(jìn)一步擴(kuò)大。以下是由學(xué)習(xí)啦小編整理關(guān)于維修汽車(chē)知識(shí)的內(nèi)容

1252112