国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)

這篇具有很好參考價值的文章主要介紹了云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

第二章:虛擬化實現(xiàn)技術(shù)架構(gòu)

CPU虛擬機要解決的問題(x86處理器結(jié)構(gòu)漏洞)及軟硬件解決方案

intel VT-x的技術(shù)特點,VMX(非根操作)的操作模式及操作流程

vCPU的組成和基本操作

內(nèi)存虛擬化的地址映射問題

Intel EPT的基本概念及地址轉(zhuǎn)換實現(xiàn)過程

Intel VT-d的技術(shù)特點以及DMA重映射過程

?TUN/TAP設(shè)備的工作原理

KVM的系統(tǒng)框架結(jié)構(gòu)、QEMU和KVM的關(guān)系

KVM的初始化過程


  • 第二章:虛擬化實現(xiàn)技術(shù)架構(gòu)

CPU虛擬機要解決的問題(x86處理器結(jié)構(gòu)漏洞)及軟硬件解決方案

? ? ? ? 要解決的問題在x86體系結(jié)構(gòu)中實現(xiàn)虛擬化,需要客戶機系統(tǒng)一下加入虛擬化層,來實現(xiàn)物理資源的共享。因此,這個虛擬化層應(yīng)該運行在 Ring0 級別,而客戶機操作系統(tǒng)只能運行在 Ring0 的以上的級別。但是,客戶機操作系統(tǒng)中的特權(quán)指令,如果不運行在 Ring0 級別,將會有不同的 語義,產(chǎn)生不同的效果,或者根本不起作用,這是處理器結(jié)構(gòu)在虛擬化設(shè)計上存在的缺陷,這 些缺陷會直接導(dǎo)致虛擬化漏洞。為了彌補這種漏洞,在硬件還未提供足夠的支持之前,在半虛擬化中,客戶機操作系統(tǒng)和虛擬花平合必須兼容,否則虛擬機無法有效操 作宿主機。x86 系統(tǒng)結(jié)構(gòu)下處理器虛擬化如圖 2-1 所示。

????????解決方法基于軟件:基于軟件的虛擬化技術(shù)就已經(jīng)先給出了兩種可行的解決方案:全虛擬化和半虛擬化。全虛擬化可以采 用二進(jìn)制代碼動態(tài)翻譯技術(shù)(Dynamic Binary Translation)來解決客戶機的特權(quán)指令問題,這 種方法的優(yōu)點在于代碼的轉(zhuǎn)換工作是動態(tài)完成的,無須修改客戶機操作系統(tǒng),因而可以支持多 種操作系統(tǒng)。而半虛擬化通過修改客戶機操作系統(tǒng)來解決虛擬機執(zhí)行蛙權(quán)拼令的問題。被虛擬 化平臺托管的客戶機操作系統(tǒng)需要修改其操作系統(tǒng),將所有敏感指令替換為對底層虛擬化平臺的超級調(diào)用。

????????解決方法基于硬件:目前,Intel和AMD公司分別推出了硬件輔助虛擬化技術(shù)Intel VT和AMD SVM來更高效,更容易的實現(xiàn)虛擬化.

intel VT-x的技術(shù)特點,VMX(非根操作)的操作模式及操作流程

?VT-x的技術(shù)特點:能夠降低(甚至消除)多個虛擬機操作系統(tǒng)之間的資源爭奪和限制,從硬件上極大地改善虛擬機的安全性和性能,有助于提高基于軟件的虛擬化解決方案的靈活性與穩(wěn)定性。. IntelVT-x技術(shù)可以消除VMM(VirtualMachineMonitor虛擬機監(jiān)視器)參與虛擬機“中斷”請求的處理與特定指令的執(zhí)行.云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)

?VMX的操作模式及操作流程:

????????有兩種VMX操作模式:VMX?根操作(root operation) 與VMX 非根操作(non-root operation)。操作流程如下:

  1. 通過CPUID指令判斷VMX功能是否被當(dāng)前處理器支持;
  2. 如果當(dāng)前處理器支持VMX功能,那么通過設(shè)置CR4.VMXE [bit13] = 1來打開VMX功能;
  3. 通過VMXON指令開啟VMX功能,并且激活VMM;
  4. 在VMX中可以通過VM Entry和VM Exit來進(jìn)入客戶虛擬機或者返回到VMM中,即切換到VMX非根操作模式或者切換到VMX根操作模式,也可以利用此操作來切換運行的客戶虛擬機;
  5. 通過VMXOFF來關(guān)閉VMX功能,從而終止VMX的操作。

vCPU的組成和基本操作

?????????vCPU的組成部分一般可以分為兩部分:一是VMCS結(jié)構(gòu),其中存儲的是由硬件使用和更新的內(nèi)容,這主要是虛擬寄存器;二是VMCS沒有保存而由VMM使用和更新的內(nèi)容,主要是VCMS以外的部分。

? ? ? ? vCPU的具體操作如下:

(1)vCPU 的創(chuàng)建:創(chuàng)建 VCPU 實際上是創(chuàng)建 vCPU 描述符。由于 vCPU 描述符是一個結(jié)構(gòu)體,因? 此創(chuàng)建 vCPU 描述符就是分配相應(yīng)大小的內(nèi)存。vCPU 描述符在創(chuàng)建之后,需要進(jìn)一步初 始化才能使用。

( 2)vCPU 的運行:vCPU 創(chuàng)建并初始化好之后,就會被調(diào)度程序調(diào)度運行,調(diào)度程 序會根據(jù)一定的策略算法來選擇 vCPU 運行。

(3)vCPU 的退出:和進(jìn)程一樣,vCPU 作為調(diào)度單位不可能永遠(yuǎn)運行,總會因為各種原因退出,例如執(zhí)行了特權(quán)指令、發(fā)生了物理中斷等,這種退出在 VT-x 中表現(xiàn)為發(fā)生 VM-Exit。對 vCPU 退出的處理是 VMM 進(jìn)行 CPU虛擬化的核心,例如模擬各種特權(quán)指令。

(4)vCPU 的再運行:指 VMM 在處理完 vCPU 的退出后,會負(fù)責(zé)將 vCPU 投入再運行。

內(nèi)存虛擬化的地址映射問題

?包含了兩個問題:

(1)實現(xiàn)地址空間的虛擬化,維護(hù)宿主機物理地址和客戶機物理地址之間的映射關(guān)系。

(2)解惑宿主機對客戶及物理地址的訪問,并根據(jù)所記錄的映射關(guān)系,將其轉(zhuǎn)換成宿主機物理地址。

解決方案:解決第一個問題inert公司提供了EPT技術(shù),AMD公司提供了AMD NPT技術(shù)直接在硬件上支持GVA到GPA到HPA的兩次地址轉(zhuǎn)換,大大降低了內(nèi)存虛擬化的難度。解決第二個問題最簡單的解決方法就是讓客戶及對宿主機物理地址空間的每一次訪問都觸發(fā)異常,由VMM查詢地址傳喚表模仿其訪問,但是這種性能很差

Intel EPT的基本概念及地址轉(zhuǎn)換實現(xiàn)過程

云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)

?

?Intel EPT的基本概念:EPT是intel為內(nèi)存虛擬化而設(shè)計的一種硬件機制,主要是是為了實現(xiàn)Guest對于物理內(nèi)存的訪問控制

為了簡化內(nèi)存虛擬化的實現(xiàn),以及提升內(nèi)存虛擬化的性能,Intel推出了EPT(Enhanced Page Table)技術(shù),即在原有的頁表基礎(chǔ)上新增了EPT頁表實現(xiàn)另一次映射。這樣,GVA-GPA-HPA兩次地址轉(zhuǎn)換都由CPU硬件自動完成。

轉(zhuǎn)換實現(xiàn)過程:

通過EPT的GVA和HPA大概翻譯的過程:

  1. 處于非根模式的CPU加載guest進(jìn)程的gCR3;
  2. gCR3是GPA,cpu需要通過查詢EPT頁表來實現(xiàn)GPA->HPA;
  3. 如果沒有,CPU觸發(fā)EPT Violation, 由Hypervisor截獲處理;
  4. 假設(shè)客戶機有m級頁表,宿主機EPT有n級,在TLB均miss的最壞情況下,會產(chǎn)生MxN次內(nèi)存訪問,完成一次客戶機的地址翻譯;

Intel VT-d的技術(shù)特點以及DMA重映射過程

?????????Intel VT-d是IOMMU技術(shù)在intel上的實現(xiàn),全稱是Intel Virtualization Technology for Direct I/O,它是Intel虛擬化技術(shù)的一部分,主要針對的是I/O子系統(tǒng),它的實現(xiàn)主要是通過在硬件上引入重定向單元,該硬件重定向單元用于對I/O子系統(tǒng)的DMA操作和中斷傳遞進(jìn)行重定向,從而輔助VMM(Virtual Machine Monitor)實現(xiàn)I/O子系統(tǒng)的虛擬化。

? ? ? ? DMA重映射過程:云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)

?TUN/TAP設(shè)備的工作原理

?Tun/Tap驅(qū)動程序工作原理?在計算機網(wǎng)絡(luò)中,TUN與TAP是 操作系統(tǒng)內(nèi)核 中的虛擬 網(wǎng)絡(luò)設(shè)備?。 不同于普通靠硬件網(wǎng)路 板卡 實現(xiàn)的設(shè)備,這些虛擬的 網(wǎng)絡(luò)設(shè)備?全部用軟件實現(xiàn),并向運行于操作系統(tǒng)上的軟件提供與硬件的網(wǎng)絡(luò)設(shè)備完全相同的功能。

KVM的系統(tǒng)框架結(jié)構(gòu)、QEMU和KVM的關(guān)系

KVM的系統(tǒng)框架結(jié)構(gòu)如下:

1. ?kvm 驅(qū)動 ?現(xiàn)在已經(jīng)是Linux內(nèi)核的一個模塊了,它的作用主要是負(fù)責(zé)虛擬機的創(chuàng)建,虛擬內(nèi)存的分配 虛擬CPU寄存器的讀寫和虛擬cpu的運行

2. ?另一個組件是 Qemu ? ?QEMU是一個通用的開源機器模擬器和虛擬器,其主要的功能是用于模擬虛擬機的用戶空間組件,提供io 設(shè)備模型,訪問外設(shè)的途徑
云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)

QEMU和KVM的關(guān)系:

?從QEMU角度來看,虛擬機運行期間,QEMU通過KVM模塊提供的系統(tǒng)調(diào)用接口進(jìn)行內(nèi)核設(shè)置,由KVM模塊負(fù)責(zé)將虛擬機置于處理器的特殊模式運行。

KVM的初始化過程

?(1)初始化 CPU 硬件。KVM 是基于硬件進(jìn)行虛擬化,CPU 必須支持虛擬化技術(shù)。 KVM 會首先檢測當(dāng)前系統(tǒng)的 CPU,確保 CPU 支持虛擬化。當(dāng) KVM 模塊被加載時,KVM 模塊會先初始化內(nèi)部數(shù)據(jù)結(jié)構(gòu)。KVM 的內(nèi)核部分是作為可動態(tài)加載內(nèi)核模塊運行在宿主 機中的,其中一個模塊是和平臺無關(guān)的實現(xiàn)虛擬化核心基礎(chǔ)架構(gòu)的 kvm 模塊,另一個是 與硬件平臺相關(guān)的 kvm_intel 模塊或者是 kvm_amd 模塊。

( 2)打開 CPU 控制寄存器 CR4 中的虛擬化模式開關(guān),并通過執(zhí)行特定指令將宿主機 操作系統(tǒng)置于虛擬化模式中的根模式。

(3)KVM 模塊創(chuàng)建特殊設(shè)備文件/devkvm,并等待來自用戶空間的命令(例如,是 否創(chuàng)建虛擬客戶機,創(chuàng)建什么樣的虛擬客戶機等)。文章來源地址http://www.zghlxwxcb.cn/news/detail-442626.html

到了這里,關(guān)于云計算虛擬化技術(shù)與開發(fā)-------虛擬化技術(shù)應(yīng)用第二章內(nèi)容(CPU虛擬機X86要解決的問題、VT-x、VMX、vCPU、EPT、VT-d)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【云計算學(xué)習(xí)教程】云計算虛擬化技術(shù)和容器技術(shù)詳解_云計算虛擬化技術(shù)與容器技術(shù)

    【云計算學(xué)習(xí)教程】云計算虛擬化技術(shù)和容器技術(shù)詳解_云計算虛擬化技術(shù)與容器技術(shù)

    這跟交通網(wǎng)絡(luò)很相似,連接兩個城市的交通網(wǎng)絡(luò)具備的第一個功能就是汽車從一個城市到達(dá)另一個城市;第二個功能是控制到底走哪條線路最好。前者就是由公路組成的交通網(wǎng)絡(luò),后者就是交通控制系統(tǒng)。 下面我們再來看看傳統(tǒng)的網(wǎng)絡(luò)設(shè)備(比如一臺路由器)的邏輯分層結(jié)構(gòu)

    2024年04月22日
    瀏覽(37)
  • 虛擬化技術(shù) — 虛擬機計算

    NUMA CPU 的主要優(yōu)勢是: 高內(nèi)存帶寬 :每一個 NUMA Node 內(nèi)部有專用的內(nèi)存總線訪問本地內(nèi)存,而所有 NUMA Nodes 之間使用共享總線訪問遠(yuǎn)端內(nèi)存。假設(shè):一個具有 4 個 NUMA Nodes 的系統(tǒng),每一個 Node 內(nèi)部有 1GB/s 的存儲帶寬,同時共享總線也具有 1GB/s 的帶寬。如果所有的 Core 總是使

    2024年02月04日
    瀏覽(32)
  • 云計算與虛擬化技術(shù)詳解

    云計算與虛擬化技術(shù)詳解

    1、云計算資源類型 下圖所示為計算機科學(xué)的虛擬化層次: 節(jié)點和網(wǎng)絡(luò)物理硬件通過多層虛擬化的邏輯簡化過程形成彈性化的計算、存儲和網(wǎng)絡(luò)帶寬三者整合的虛擬資源池,也就是所講的云計算模式。 可見云計算的概念是對最底層的物理硬件經(jīng)過多次虛擬化抽象而形成的,這

    2024年01月17日
    瀏覽(24)
  • 云計算資源虛擬化技術(shù)實現(xiàn)原理

    說到云計算,我們通常會看到這樣的描述,“通過虛擬化技術(shù)實現(xiàn)”,不難看出,在云計算的概念中,虛擬化是非?;A(chǔ),但又相當(dāng)重要的一環(huán),也是實現(xiàn)云計算的隔離性、擴(kuò)展性、安全性等諸多問題的關(guān)鍵。 云計算的基礎(chǔ)是虛擬化,但虛擬化只是云計算的一部分,云計算是

    2024年02月08日
    瀏覽(22)
  • 《虛擬化與云計算技術(shù)》實訓(xùn)

    《虛擬化與云計算技術(shù)》實訓(xùn)

    1.《虛擬化與云計算技術(shù)》 課程綜合實訓(xùn)是計算機信息管理專業(yè)的一門重要的實踐課程。通過實訓(xùn),考核自身對云計算技術(shù)的理解,利用云服務(wù)器去部署各種環(huán)境的的能力;培養(yǎng)自身解決實際問題的職業(yè)綜合能力,具備收集信息、制定計劃、實施計劃和自我評價的能力,鍛煉

    2024年02月03日
    瀏覽(28)
  • 云計算采用的各種虛擬化技術(shù)比較

    KVM 是一個全虛擬化的解決方案??梢栽?x86 架構(gòu)的計算機上實現(xiàn)虛擬化功能。但 KVM 需要 CPU 中虛擬化功能的支持,只可在具有虛擬化支持的 CPU 上運行,即具有 VT 功能的 Intel CPU 和具有 AMD-V 功能的 AMD CPU。 Xen 也是 Linux 下的一個虛擬化解決方案,也將很快被編入內(nèi)核中。Xen

    2024年02月01日
    瀏覽(28)
  • 云計算虛擬化技術(shù)分析及其演進(jìn)路線

    云計算虛擬化技術(shù)分析及其演進(jìn)路線

    作者:禪與計算機程序設(shè)計藝術(shù) 云計算(Cloud Computing)是一種新的計算方式,它把計算能力從中心服務(wù)器擴(kuò)展到一系列網(wǎng)絡(luò)端點上。隨著云計算的發(fā)展,越來越多的人將注意力集中在如何利用云資源來提高效率、節(jié)約成本以及加強競爭力上。因此,云計算技術(shù)的最新研究也就

    2024年02月08日
    瀏覽(21)
  • 云計算——ACA學(xué)習(xí) 虛擬化技術(shù)概述

    云計算——ACA學(xué)習(xí) 虛擬化技術(shù)概述

    作者簡介:一名云計算網(wǎng)絡(luò)運維人員、每天分享網(wǎng)絡(luò)與運維的技術(shù)與干貨。? 公眾號:網(wǎng)絡(luò)豆云計算學(xué)堂 ?座右銘:低頭趕路,敬事如儀 個人主頁: ?網(wǎng)絡(luò)豆的主頁????? ??? 本系列將會持續(xù)更新云計算阿里云ACA的學(xué)習(xí),了解云計算及網(wǎng)絡(luò)安全相關(guān)從業(yè)的基礎(chǔ)知識,以

    2024年02月05日
    瀏覽(21)
  • 虛擬化技術(shù)和云計算的關(guān)系

    虛擬化技術(shù)和云計算的關(guān)系

    1、云計算底層就是虛擬化技術(shù)。 (1)常見的虛擬化技術(shù):VMware(閉源的,需要收費)、XEN、KVM (2)大部分公司用的虛擬化方案:XEN、KVM 2、虛擬化的歷史 (1)1999年VMware首先推出了X86架構(gòu)虛擬化產(chǎn)品 (2)2002年XEN開源了 (3)2006年以色列公司qumaranet開發(fā)了KVM虛擬化 (4)

    2024年02月03日
    瀏覽(24)
  • 云計算與虛擬化技術(shù)【課堂筆記】

    云計算與虛擬化技術(shù)【課堂筆記】

    鯤鵬產(chǎn)業(yè)學(xué)院 云計算與虛擬化技術(shù) 課堂筆記 目錄 一、云計算系統(tǒng)及演進(jìn) 云計算的定義 云計算的三個階段 云計算的三種服務(wù)模式 云計算的四種部署模型 二、未完待續(xù) 總結(jié) ???????? 云計算的本質(zhì)是一種服務(wù)提供模型 ,通過這種模型可以隨時、隨地、按需地通過網(wǎng)絡(luò)訪

    2024年02月01日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包