0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

I/O軟件模擬虛擬化和類虛擬化

安芯教育科技 ? 來源:軟硬件融合 ? 作者:Chaobowx ? 2021-10-13 11:09 ? 次閱讀

I/O虛擬化是SmartNIC/DPU/IPU中最核心的部分,AWS NITRO就是從I/O硬件虛擬化開始,逐漸開啟了DPU這個新處理器類型的創(chuàng)新。而Virtio接口,已經(jīng)是事實上的云計算虛擬化的標(biāo)準(zhǔn)化接口。Virtio成為整個問題的焦點:不管是SPDK/vhost、還是vDPA加速,都是圍繞著Virtio接口展開。

1 I/O設(shè)備虛擬化:從軟件模擬到SR-IOV

I/O虛擬化是計算機(jī)虛擬化最復(fù)雜的部分,因為涉及到CPU、操作系統(tǒng)、Hypervisor以及I/O設(shè)備的相互配合。I/O虛擬化也經(jīng)歷了從軟件模擬虛擬化、類虛擬化向完全硬件虛擬化的轉(zhuǎn)變。

a. I/O軟件模擬虛擬化和類虛擬化

I/O設(shè)備虛擬化場景,既要關(guān)注I/O設(shè)備模擬,也要關(guān)注vCPU和虛擬I/O設(shè)備的交互,許多條件交織在一起,使得整個問題變的非常復(fù)雜。I/O虛擬化性能代價主要體現(xiàn)在三個方面:驅(qū)動訪問設(shè)備寄存器的代價;設(shè)備通過中斷和DMA訪問驅(qū)動的代價;設(shè)備模擬本身的代價。因此,I/O虛擬化性能優(yōu)化主要是通過五個角度:

減少I/O訪問寄存器的代價:一方面是把部分I/O的訪問變成MMIO訪問,這樣就不需要陷入Hypervisor;另一方面是優(yōu)化VM-exit/VM-entry切換的代價。

減少I/O訪問的次數(shù):比如簡化通知機(jī)制,簡化虛擬化設(shè)備功能等。

優(yōu)化中斷:主要有如APIC的中斷硬件虛擬化或者不需要中斷的輪詢驅(qū)動。

減少DMA訪問的代價:通過IOMMU等實現(xiàn)Pass Through模式。

減少設(shè)備模擬的代價:則主要是通過硬件SR-IOV機(jī)制實現(xiàn)硬件設(shè)備。

如圖1(a),虛擬機(jī)中看到的設(shè)備,一般是由Hypervisor模擬出來的。虛擬設(shè)備的功能,可以少于也可以多于物理的設(shè)備,甚至可以模擬出一些不存在的特性,模擬出不存在的硬件設(shè)備。通過I/O軟件模擬的方式,我們稱之為I/O設(shè)備軟件模擬虛擬化。在I/O軟件模擬虛擬化的解決方案中,客戶機(jī)VM要使用底層的硬件資源,需要Hypervisor來截獲每一條請求指令,然后模擬出這些指令的行為。我們都知道Hypervisor截獲指令的動作就是從VM-exit,處理完模擬然后再VM-entry的過程,這個過程的代價很高,每條指令都要如此,帶來的性能開銷必然是非常龐大的。

如圖1(b)所示,Virtio提供的類虛擬化方式,客戶機(jī)完成設(shè)備的前端驅(qū)動程序,Hypervisor配合客戶機(jī)完成相應(yīng)的后端驅(qū)動程序,這樣兩者之間通過交互機(jī)制就可以實現(xiàn)高效的虛擬化過程。

Virtio框架如圖2所示,使用Virtqueue來實現(xiàn)其I/O機(jī)制,每個Virtqueue就是一個承載大量數(shù)據(jù)的Queue。VRing是Virtqueue的具體實現(xiàn)方式,針對VRing會有相應(yīng)的描述符表格進(jìn)行描述。Virtio是一個通用的驅(qū)動和設(shè)備接口框架,基于Virtio分別實現(xiàn)了Virtio-net、Virtio-blk、Virtio-scsi等很多不同類型的模擬設(shè)備及設(shè)備驅(qū)動。

Virtio類虛擬化比傳統(tǒng)的I/O設(shè)備軟件模擬的性能優(yōu)勢體現(xiàn)在:很多控制和狀態(tài)信息不需要通過寄存器讀寫操作來交互的,而是通過寫入Virtqueue的相關(guān)數(shù)據(jù)結(jié)構(gòu)來讓驅(qū)動(Driver)和設(shè)備(Device)雙方交互。并且在數(shù)據(jù)交互的時候,只需要在一定批量數(shù)據(jù)變化需要對方處理的時候才會通知對方,驅(qū)動通知設(shè)備是通過寫Kick寄存器,設(shè)備通知驅(qū)動是通過中斷。

b. I/O完全硬件虛擬化

評價I/O虛擬化技術(shù)的兩個指標(biāo)——性能和通用性。性能,當(dāng)然是越接近無虛擬化環(huán)境下的I/O性能最好;而通用性,則是I/O虛擬化對客戶操作系統(tǒng)越透明越好。要想要高性能,最直接的方法就是讓客戶機(jī)直接使用真實的硬件設(shè)備;要想要通用性,則是要用想辦法讓客戶機(jī)操作系統(tǒng)自帶的驅(qū)動程序能夠發(fā)現(xiàn)設(shè)備并操作設(shè)備。

客戶機(jī)直接操作設(shè)備面臨兩個問題:第一,如何讓客戶機(jī)直接訪問到設(shè)備真實的I/O地址空間(包括I/O和MMIO);第二,如何讓設(shè)備的DMA直接訪問客戶機(jī)的內(nèi)存空間。內(nèi)存硬件虛擬化的EPT技術(shù)可以解決第一個問題。而VT-d技術(shù)則用來解決第二個問題。VT-d技術(shù)主要是引入地址重映射(IOMMU+IOTLB),負(fù)責(zé)提供重映射和設(shè)備直接分配。從設(shè)備端的DMA訪問,都會進(jìn)入地址重映射進(jìn)行地址轉(zhuǎn)換,使得設(shè)備可以訪問到對應(yīng)客戶機(jī)特定的內(nèi)存區(qū)域。

VT-d技術(shù)雖然可以將物理的I/O設(shè)備直接透傳給虛擬機(jī),但是一臺計算機(jī)系統(tǒng)受限于接口,可以連的物理設(shè)備畢竟有限。因此,PCIe SR-IOV技術(shù)應(yīng)運(yùn)而生。通過PCIe SR-IOV技術(shù),一個物理I/O設(shè)備可以虛擬出多個虛擬設(shè)備,分配給虛擬機(jī)使用。

如圖1(c)所示,SR-IOV引入了兩個PCIe的功能類型:

PFs(Physical Functions):包括管理SR-IOV功能在內(nèi)的所有PCIe設(shè)備。

VFs(Virtual Functions):輕量級的PCIe設(shè)備,只能進(jìn)行必要的配置和數(shù)據(jù)傳輸。

Hypervisor把VF分配給虛擬機(jī),通過IOMMU等硬件輔助技術(shù)提供的DMA數(shù)據(jù)映射,直接在虛擬機(jī)和硬件設(shè)備之間傳輸數(shù)據(jù)。

c. I/O虛擬化總結(jié)

通過兼容性、性能、成本、擴(kuò)展性四個方面對I/O虛擬化技術(shù)進(jìn)行總結(jié),詳見表1:

表1 不同I/O虛擬化方式對比

I/O虛擬化方式 VM的兼容性 性能 成本 擴(kuò)展性
設(shè)備接口軟件模擬 重用已有驅(qū)動 頻繁的上下文切換 沒有額外硬件成本 受設(shè)備模擬的性能代價約束
類虛擬化前后端 需要加載特定驅(qū)動 基于共享隊列的機(jī)制減少了前后端交互 沒有額外硬件成本 受設(shè)備后端的性能代價約束
直接分配VT-d 重用設(shè)備驅(qū)動 直接訪問物理設(shè)備,減少虛擬化開銷 需要購買額外的較多的硬件 硬件設(shè)備獨占性,受主板擴(kuò)展槽限制
直接分配SR-IOV 需要加載VF驅(qū)動 直接訪問物理設(shè)備,減少虛擬化開銷 需要購買額外的較少的硬件 硬件設(shè)備支持多個虛擬設(shè)備,擴(kuò)展性較好

2 通用接口Virtio

Virtio旨在提供一套高效的、良好維護(hù)的通用的Linux驅(qū)動,實現(xiàn)虛擬機(jī)應(yīng)用和不同Hypervisor實現(xiàn)的模擬設(shè)備之間標(biāo)準(zhǔn)化的接口。Virtio作為類虛擬化的I/O設(shè)備接口,廣泛應(yīng)用于云計算虛擬化場景,某種程度上,Virtio已經(jīng)成為事實上的I/O設(shè)備的接口標(biāo)準(zhǔn)。

在上一節(jié)介紹I/O虛擬化時,Virtio作為I/O類虛擬化技術(shù)做過介紹。本節(jié)會略去虛擬化相關(guān)的內(nèi)容,把Virtio作為一個標(biāo)準(zhǔn)的接口進(jìn)行詳細(xì)的闡述。

2.1 Virtio寄存器

Virtio寄存器有三種類型:設(shè)備狀態(tài)字、功能特征位以及PCIe配置空間。

a. 設(shè)備狀態(tài)字

如表2所示,設(shè)備狀態(tài)字(Device Status Field)標(biāo)識了初始化序列步驟的完成情況。

表2 設(shè)備狀態(tài)字描述

Bit位置 狀態(tài)字值 定義 描述
0 1 ACKNOWLEDGE 表示操作系統(tǒng)已找到該設(shè)備并將其識別為有效的Virtio設(shè)備
1 2 DRIVER 表示操作系統(tǒng)已找到該設(shè)備并將其識別為有效的Virtio設(shè)備
2 4 DRIVER_OK 表示已安裝驅(qū)動程序并準(zhǔn)備驅(qū)動設(shè)備
3 8 FEATURES_OK 表示驅(qū)動程序已確認(rèn)其理解的所有功能,并且功能協(xié)商已完成
4 16 保留位 保留位
5 32 保留位 保留位
6 64 DEVICE_NEEDS_RESET 表示設(shè)備遇到了無法恢復(fù)的錯誤。
7 128 FAILED 表示操作系統(tǒng)出現(xiàn)問題,或者驅(qū)動和設(shè)備功能不匹配,或者設(shè)備運(yùn)行過程中出現(xiàn)致命錯誤等。

基于設(shè)備狀態(tài)字,Virtio協(xié)議定義并約束了驅(qū)動程序必須按照以下順序初始化設(shè)備:

(1)重置設(shè)備。

(2)設(shè)置ACKNOWLEDGE狀態(tài)位,表示OS已發(fā)現(xiàn)此設(shè)備。

(3)設(shè)置DRIVER狀態(tài)位,表示OS知道如何驅(qū)動此設(shè)備。

(4)讀取設(shè)備功能位,并將操作系統(tǒng)和驅(qū)動程序可以理解的功能位子集寫入設(shè)備。

(5)設(shè)置FEATURES_OK狀態(tài)位。

(6)重新讀取設(shè)備狀態(tài),如果FEATURES_OK讀取結(jié)果依然為1,則表示設(shè)備接受了驅(qū)動的功能位子集;否則,如果為0,則表示該設(shè)備不支持驅(qū)動的功能子集,該設(shè)備不可用。

(7)執(zhí)行設(shè)備特定的設(shè)置,包括發(fā)現(xiàn)設(shè)備的虛擬隊列、讀取和可能寫入設(shè)備的virtio配置空間以及填充虛擬隊列等。

(8)將DRIVER_OK狀態(tài)位設(shè)置為1。此時,設(shè)備初始化完成,設(shè)備處于活動狀態(tài)。

(9)如果上述這些步驟中的任何一個發(fā)生不可恢復(fù)的錯誤,驅(qū)動程序會將FAILED狀態(tài)位設(shè)置為1。

b. 功能特征位

每個Virtio設(shè)備均提供其支持的所有功能對應(yīng)的功能特征位。在設(shè)備初始化期間,驅(qū)動程序?qū)⒆x取此信息并告知設(shè)備它接受的子集。

通過這種方式可以實現(xiàn)向前和向后兼容:如果設(shè)備增加了新功能位,則較舊的驅(qū)動程序就不會將該功能位寫回到設(shè)備中(意味著此功能不會被開啟)。同樣,如果驅(qū)動程序增加了新的功能,而設(shè)備未提供此功能,則同樣此功能不會被寫回到設(shè)備(意味著此功能不會被開啟)。

Virtio1.1協(xié)議中的功能位分配如下:

比特位0 – 23:特定設(shè)備類型的功能位;

比特位24 – 37:保留用于擴(kuò)展隊列和功能協(xié)商機(jī)制的功能位;

比特位38以上:保留功能位以供將來擴(kuò)展。

c. 配置空間

Virtio over PCI使用的配置空間與標(biāo)準(zhǔn)的PCI配置空間相比,特殊的地方在于其Vendor ID和Device ID。Virtio的Vendor ID為0x1AF4,其Device ID編號從0x1040-0x107F。

為了跟PCI Capabilities格式兼容,Virtio定義的virtio_pci_cap格式如表3所示。

表3 Virtio的PCI capability結(jié)構(gòu)

Byte 3 Byte 2 Byte 1 Byte 0
0x0 cfg_type cap_len cap_vndr cap_vndr
0x4 padding bar
0x8 offset
0xC Length

其中cfg_type標(biāo)識virtio_pci_cap類型,共有五種,代表了映射在BAR空間的五組寄存器。virtio_pci_cap類型如表4所示。

表4 Virtio PCI capability類型

類型名稱 ID 描述
VIRTIO_PCI_CAP_COMMON_CFG 1 通用配置
VIRTIO_PCI_CAP_NOTIFY_CFG 2 通知
VIRTIO_PCI_CAP_ISR_CFG 3 ISR狀態(tài)
VIRTIO_PCI_CAP_DEVICE_CFG 4 設(shè)備具體的配置
VIRTIO_PCI_CAP_PCI_CFG 5 PCI配置訪問

2.2 Virtqueue交互隊列

Virtio 1.1引入了Packed Virtqueue的概念,對應(yīng)的Virtio 1.0的Virtqueue被稱為Split Virtqueue。

如圖3所示,為Virtio1.0的Split Virtqueue結(jié)構(gòu)。Virtqueue由三部分組成:

描述符表

可用的描述符環(huán)

已使用的描述符環(huán)

Virtio 1.0的Split Virtqueue具有一些缺點:

如果是虛擬化場景軟件模擬Virtio設(shè)備的話,因為分散的數(shù)據(jù)結(jié)構(gòu),導(dǎo)致Cache利用率較低,每次請求都會有很多Cache不命中;

如果是硬件實現(xiàn)的話,每次描述符需要多次設(shè)備DMA訪問。

如圖4所示,Virtio 1.1引入了Packed Virtqueue的概念。整個描述符只有一個數(shù)據(jù)結(jié)構(gòu)。這樣,如果軟件實現(xiàn)Virtio設(shè)備模擬的話,可以提升描述符交互的Cache命中率。如果硬件實現(xiàn)的,可以降低設(shè)備DMA的訪問次數(shù)。

2.3 Virtio交互

驅(qū)動和設(shè)備的交互,符合生產(chǎn)者消費者模型的數(shù)據(jù)及通知(Notification)的交互行為。驅(qū)動把共享隊列的隊列項準(zhǔn)備好,通過寫寄存器的方式通知設(shè)備。設(shè)備收到驅(qū)動發(fā)送的通知則處理隊列項以及相應(yīng)的數(shù)據(jù)搬運(yùn)工作,結(jié)束后更新隊列狀態(tài)并通知(設(shè)備通知驅(qū)動是通過中斷)驅(qū)動。驅(qū)動接收到中斷通知時候,把已經(jīng)使用的隊列項釋放,并更新隊列狀態(tài)。

一個典型的通用的驅(qū)動和設(shè)備的交互流程如圖5所示。Virtio場景的驅(qū)動和設(shè)備交互,驅(qū)動給設(shè)備的通知(Notification)稱為Kick,設(shè)備給驅(qū)動的通知稱為Interrupt(中斷)。Kick和Interrupt操作是Virtio接口的一部分,在虛擬化場景,Kick和Interrupt需要非常大的CPU切換代價。驅(qū)動希望在Kick之前產(chǎn)生盡可能多的待處理緩沖項(一個緩沖項對應(yīng)一個描述符和描述符指向的數(shù)據(jù)塊);同樣的,設(shè)備希望處理盡可能多的緩沖項然后再發(fā)送一個中斷。通過盡量處理更多的緩沖項的方式,來攤薄通知的代價。

這種策略是一種理想狀態(tài),因為大多數(shù)時候驅(qū)動并不知道下一組緩沖項何時帶來,因此不得不每一組緩沖項準(zhǔn)備好之后就必須要Kick設(shè)備。同樣的,設(shè)備在處理完相應(yīng)的緩沖項之后,就盡快的發(fā)送中斷給驅(qū)動,以達(dá)到盡可能小的延遲。

如圖6所示,在設(shè)備模擬的虛擬化場景下,驅(qū)動可以暫時禁用中斷,設(shè)備也可以暫時禁用Kick。通過這樣的機(jī)制,可以最大限度的減少通知的代價,并且不影響性能和延遲。Virtio 1.1支持兩種通知抑制機(jī)制,因此共有三種模式:

使能通知模式:完全無抑制,使能通知;

禁用通知模式:如圖6所示,可以完全禁止對方發(fā)通知給自己;

使能特定的描述符通知模式:告知對方一個特定的描述符,當(dāng)對方順序處理到此描述符處理完成時產(chǎn)生通知。

2.4 總結(jié)

如圖7,Virtio基于分層的設(shè)計思想,定義了三層Virtio設(shè)備架構(gòu):

最下層的總線接口。PCI是最常用的Virtio場景使用的總線,但Virtio協(xié)議不僅僅支持PCI,也支持MMIO和Channel IO等。

通用的Virtio交互接口。包括Virtqueue、功能特征位、配置空間等。Virtio交互接口是Virtio最核心的功能,通過Virtio交互接口實現(xiàn)了不同類型設(shè)備的標(biāo)準(zhǔn)化。

上層的特定設(shè)備接口。在Virtio協(xié)議里,定義網(wǎng)絡(luò)、塊、控制臺、SCSI、GPU等各種不同類型的設(shè)備。

Virtio的優(yōu)點體現(xiàn)在:

Virtio實現(xiàn)了盡可能多的設(shè)計共享。這樣,在開發(fā)的時候就可以復(fù)用很多軟件和硬件資源,達(dá)到快速開發(fā)的目的。

Virtio實現(xiàn)了接口的標(biāo)準(zhǔn)化。標(biāo)準(zhǔn)化體現(xiàn)在兩個方面:

(1)一個是通用的Virtio交互接口,統(tǒng)一了不同的設(shè)備類型軟硬件交互;

(2)另一個是基于Virtio的Virtio-net、Virtio-block等廣泛應(yīng)用于云計算虛擬化場景,Virtio已經(jīng)成為事實上的標(biāo)準(zhǔn)I/O接口。

而Virtio的缺點,則同樣因為Virtio實現(xiàn)了接口的標(biāo)準(zhǔn)化,而忽略了不同設(shè)備類型數(shù)據(jù)傳輸?shù)奶攸c。因此,在一些大數(shù)據(jù)量傳輸?shù)膱鼍?,效率比較低下。如果是在類似HPC這樣的性能和延遲非常敏感的場景,Virtio就不是一個很好的選擇。

3 虛擬化卸載

虛擬化卸載指的是計算機(jī)虛擬化中消耗CPU資源較多的接口設(shè)備模擬、熱遷移、虛擬化管理等任務(wù)的卸載。

a. 接口設(shè)備的卸載

前面我們介紹了網(wǎng)絡(luò)、遠(yuǎn)程存儲等IO工作任務(wù)的卸載,而虛擬化卸載主要指的是跟IO相關(guān)的接口設(shè)備的卸載,例如網(wǎng)絡(luò)、存儲等接口設(shè)備的卸載。IO接口設(shè)備的卸載本身上也是IO硬件虛擬化的過程,比如我們通過VT-d技術(shù)實現(xiàn)從VM中pass though訪問硬件設(shè)備,某種程度上也可以認(rèn)為是把運(yùn)行在Hypervisor中的模擬設(shè)備 “卸載”到了硬件。因此,IO接口設(shè)備的卸載本質(zhì)上和IO設(shè)備硬件虛擬化是一件事情。

如圖8,為了實現(xiàn)設(shè)備接口的標(biāo)準(zhǔn)化、加速IO處理的性能以及潛在的充分利用現(xiàn)有的虛擬化生態(tài)(例如更好的支持設(shè)備熱遷移)等原因,阿里云在神龍芯片里實現(xiàn)了硬件的Virtio接口設(shè)備,通過Virtio接口設(shè)備支持Virtio-net網(wǎng)絡(luò)驅(qū)動和Virtio-blk存儲驅(qū)動等,實現(xiàn)了類虛擬化IO設(shè)備Virtio的硬件“卸載”。

AWS的NITRO系統(tǒng)支持網(wǎng)絡(luò)、本地存儲和遠(yuǎn)程存儲,NITRO實現(xiàn)了網(wǎng)絡(luò)接口設(shè)備ENA/EFA(AWS自定義接口)的硬件“卸載”以及存儲接口設(shè)備NVMe(遠(yuǎn)程存儲EBS使用的是NVMe接口,本地存儲也是NVMe接口)的卸載。

b. 接口設(shè)備卸載后的遷移問題

當(dāng)把設(shè)備“卸載”到硬件,讓VM直接訪問硬件設(shè)備,這使得VM的設(shè)備熱遷移變的非常有挑戰(zhàn)。vDPA(vhost Data Path Acceleration,vhost數(shù)據(jù)路徑加速,其中vhost是Virtio后端設(shè)備模擬的輪詢方式實現(xiàn))實現(xiàn)了一種折中的解決方案,如圖9所示,vDPA把Virtio分為了控制面和數(shù)據(jù)面:

控制面。vDPA控制面依然是通過要經(jīng)過Hypervisor的處理,用于設(shè)備和VM之間的配置更改和功能協(xié)商,用于建立和終止數(shù)據(jù)面。

數(shù)據(jù)面。vDPA數(shù)據(jù)面包括共享隊列以及相應(yīng)的通知機(jī)制,用于在設(shè)備和VM之間傳輸實際的數(shù)據(jù)。

使用vDPA一個重要原因是,在熱遷移的時候可以很方便的把Virtio數(shù)據(jù)面的處理切換回傳統(tǒng)的Virtio/Vhost后端設(shè)備模擬。這樣,可以充分利用現(xiàn)有的基于KVM/Qemu對Virtio設(shè)備遷移的解決方案來完成設(shè)備的遷移。

c. 虛擬化管理的卸載

從軟件虛擬化進(jìn)化到硬件虛擬化的過程,本身就可以看作是一個硬件加速以及硬件卸載的過程。我們逐步的剝離了Hypervisor的功能,比如通過VT-x技術(shù)“卸載”了Hypervisor的CPU/內(nèi)存等的軟件模擬,以及通過VT-d以及vDPA等技術(shù)“卸載”了設(shè)備軟件模擬。這些剝離,使得Hypervisor越來越輕量,整個系統(tǒng)的虛擬化開銷也越來越少。進(jìn)一步的,我們可以把虛擬化的管理(例如Linux平臺主流的管理程序Libvirt)卸載到硬件中的嵌入式軟件運(yùn)行。

如圖10, 我們通過橋接的方式,實現(xiàn)主機(jī)軟件和硬件中嵌入式軟件通信機(jī)制。把虛擬化管理等軟件任務(wù)從主機(jī)卸載到嵌入式系統(tǒng)(依然有很小一部分任務(wù)無法卸載,如虛擬機(jī)資源分配、vCPU調(diào)度等)。這樣,可以把幾乎100%的主機(jī)資源提供給用戶,使用戶虛擬機(jī)得到近乎物理機(jī)的性能。

通過虛擬化管理卸載到硬件中的嵌入式CPU軟件,我們可以做到物理上的業(yè)務(wù)和管理分離,整個業(yè)務(wù)主機(jī)跟云計算管理網(wǎng)絡(luò)安全的隔離,只能通過特定的接口訪問到Lite Hypervisor,除此之外,不能訪問主機(jī)的任何資源。這樣,即使有潛在的運(yùn)維操作失誤,也無法對業(yè)務(wù)主機(jī)造成影響。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 虛擬化
    +關(guān)注

    關(guān)注

    1

    文章

    355

    瀏覽量

    29671
  • APIC
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    7236

原文標(biāo)題:技術(shù)分享 | I/O虛擬化及Virtio接口介紹

文章出處:【微信號:Ithingedu,微信公眾號:安芯教育科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    虛擬數(shù)據(jù)恢復(fù)—EXSI虛擬機(jī)誤還原快照如何恢復(fù)數(shù)據(jù)?

    虛擬技術(shù)原理是將硬件虛擬供不同的虛擬機(jī)使用,一臺物理機(jī)上可以有多臺虛擬機(jī)。人為誤操作或者物理
    的頭像 發(fā)表于 09-09 11:56 ?158次閱讀
    <b class='flag-5'>虛擬</b><b class='flag-5'>化</b>數(shù)據(jù)恢復(fù)—EXSI<b class='flag-5'>虛擬</b>機(jī)誤還原快照如何恢復(fù)數(shù)據(jù)?

    什么是虛擬機(jī)?什么是虛擬?

    在日新月異的科技世界中,虛擬技術(shù)如同一座橋梁,連接著現(xiàn)實與數(shù)字的鴻溝,為我們打開了全新的計算維度。虛擬機(jī),這一概念,自其誕生以來,就以其獨特的魅力和強(qiáng)大的功能,深深地影響了軟件開發(fā)、
    的頭像 發(fā)表于 09-04 14:55 ?259次閱讀

    虛擬數(shù)據(jù)恢復(fù)—XenServer虛擬平臺數(shù)據(jù)恢復(fù)案例

    虛擬數(shù)據(jù)恢復(fù)環(huán)境: 某品牌R720服務(wù)器,4塊STAT硬盤通過H710P陣列卡組建了一組raid10磁盤陣列。服務(wù)器上部署XenServer虛擬平臺,
    的頭像 發(fā)表于 07-30 13:18 ?140次閱讀
    <b class='flag-5'>虛擬</b><b class='flag-5'>化</b>數(shù)據(jù)恢復(fù)—XenServer<b class='flag-5'>虛擬</b><b class='flag-5'>化</b>平臺數(shù)據(jù)恢復(fù)案例

    軟件可配置模擬 I/O 的設(shè)計理念

    作者: Kenton Williston 曾幾何時,模擬 I/O 就是最專業(yè)、功能最固定的硬件。例如,電流驅(qū)動器和電壓傳感器是完全不同的零件,試圖顛倒其角色可謂是荒謬至極。 軟件可配置
    的頭像 發(fā)表于 05-05 11:10 ?553次閱讀
    <b class='flag-5'>軟件</b>可配置<b class='flag-5'>模擬</b> <b class='flag-5'>I</b>/<b class='flag-5'>O</b> 的設(shè)計理念

    嵌入式開發(fā)常用的虛擬串口盤點

    HDD 提供的解決方案 - Free Virtual Serial Ports 專注于模擬由 16550 UART 連接的自定義即插即用串行和 I/O 端口。 這個免費虛擬零調(diào)制解
    發(fā)表于 03-18 10:15 ?950次閱讀
    嵌入式開發(fā)常用的<b class='flag-5'>虛擬</b>串口盤點

    存儲虛擬有哪些常見類型?有什么優(yōu)點?

    存儲虛擬是一種將多個存儲設(shè)備的物理存儲資源抽象出來、將它們集中在一起并將它們呈現(xiàn)為單個邏輯存儲單元的技術(shù)。此過程簡化了存儲管理,提高了資源利用率,并實現(xiàn)了跨各種存儲設(shè)備(例如硬盤驅(qū)動器、固態(tài)驅(qū)動器
    的頭像 發(fā)表于 03-07 16:47 ?799次閱讀

    虛擬軟件棧有哪些防御措施

    虛擬軟件棧是一種在物理服務(wù)器上運(yùn)行多個虛擬機(jī)的技術(shù),可以提高服務(wù)器資源的利用率和靈活性。然而,虛擬
    的頭像 發(fā)表于 01-25 11:27 ?572次閱讀

    RDMA RNIC虛擬方案

    主要包括Inifiband、RoCE以及iWARP。實現(xiàn)RDMA協(xié)議的I/O設(shè)備被稱為RNIC。主流云服務(wù)提供商已經(jīng)開始廣泛部署RNIC,例如亞馬遜云推出的彈性網(wǎng)絡(luò)適配器(Elastic Network Adapter,ENA)[1]。同時,云服務(wù)提供商通過硬件
    的頭像 發(fā)表于 01-23 17:23 ?1338次閱讀
    RDMA RNIC<b class='flag-5'>虛擬</b><b class='flag-5'>化</b>方案

    超融合和虛擬的區(qū)別

    景。 一、超融合(Hyper-convergence)的定義和原理 超融合是一種集成了計算、存儲、網(wǎng)絡(luò)和虛擬等功能的技術(shù)架構(gòu),它將不同的硬件資源整合到一臺服務(wù)器中,通過軟件定義的方式提供一致性的接口和管理平臺。超融合架構(gòu)通常由
    的頭像 發(fā)表于 01-15 10:36 ?3096次閱讀

    虛擬機(jī)和模擬器有哪些異同點和區(qū)別

    景等方面存在一些區(qū)別和異同點。下面我將詳細(xì)介紹虛擬機(jī)和模擬器的特點和區(qū)別。 首先,虛擬機(jī)是一種可以在物理計算機(jī)上運(yùn)行多個虛擬操作系統(tǒng)的軟件
    的頭像 發(fā)表于 12-27 16:26 ?2221次閱讀

    Docker與虛擬機(jī)的區(qū)別

    Docker和虛擬機(jī)是兩種不同的虛擬技術(shù),它們在實現(xiàn)方式、資源消耗、運(yùn)行性能等方面存在許多差異。本文將會詳細(xì)介紹它們的區(qū)別。 一、實現(xiàn)方式 1.1 虛擬機(jī)
    的頭像 發(fā)表于 11-23 09:37 ?6793次閱讀

    西門子標(biāo)準(zhǔn)編程和虛擬調(diào)試應(yīng)用

    西門子標(biāo)準(zhǔn)編程和虛擬調(diào)試應(yīng)用,西門子標(biāo)準(zhǔn)編程、仿真與虛擬調(diào)試應(yīng)用培訓(xùn)PPT。
    發(fā)表于 11-16 14:58 ?418次閱讀
    西門子標(biāo)準(zhǔn)<b class='flag-5'>化</b>編程和<b class='flag-5'>虛擬</b>調(diào)試應(yīng)用

    網(wǎng)絡(luò)虛擬、NFV和SDN之間的差異

    電子發(fā)燒友網(wǎng)站提供《網(wǎng)絡(luò)虛擬、NFV和SDN之間的差異.pdf》資料免費下載
    發(fā)表于 11-10 15:54 ?0次下載
    網(wǎng)絡(luò)<b class='flag-5'>虛擬</b><b class='flag-5'>化</b>、NFV和SDN之間的差異

    什么是虛擬GPU?虛擬GPU的優(yōu)勢有哪些?

    虛擬 GPU,也稱為 vGPU,是通過將數(shù)據(jù)中心 GPU 進(jìn)行虛擬,用戶可在多個虛擬機(jī)中共享該 GPU。
    的頭像 發(fā)表于 11-10 09:48 ?1569次閱讀
    什么是<b class='flag-5'>虛擬</b>GPU?<b class='flag-5'>虛擬</b>GPU的優(yōu)勢有哪些?

    計算虛擬基礎(chǔ)介紹

    利用先進(jìn)的虛擬管理和云運(yùn)營管理軟件,建立安全的、可審核的數(shù)據(jù)中心環(huán)境,為業(yè)務(wù)部門提供 成本更低、服務(wù)水平更高的基礎(chǔ)架構(gòu),從而能夠針對業(yè)務(wù)部門的需求做出快速的響應(yīng)。
    的頭像 發(fā)表于 10-17 17:15 ?388次閱讀
    計算<b class='flag-5'>虛擬</b><b class='flag-5'>化</b>基礎(chǔ)介紹