VFIO 中我們不斷提到有關於硬體的優化與支持,而其中,以 Intel 為例,其相關技術是 VT-d。
所以,今天我們來談談 Vt-d 的相關內容。
首先,他是 Intel 產品之一,所以用 AMD 的朋友請右轉搜尋 SVM 或 IOMMU 獲得相關資訊。
先來介紹他的相關朋友,英特爾 VT 具體包括分別:
其中得 VT-d Virtualization Technology for Directed I/O。
如官網所說英特爾 I/O 虛擬化技術為 VMM 軟件提供以下功能:
而以下文章多數參考 Intel 官方文件
VT-d 目的是將 device 直接 Passthrough 到 Guest OS,讓 VM 可以直接存取 Physical device。
所以,我們主要需要透過兩種技術來達成這個目標。
VT-d 通過將設備的直接內存訪問(DMA)限制為預分配的域或物理內存區域來實現保護。
由IOMMU截獲中斷,先將其中斷映射到host的某個中斷上,然後再重定向(由VMM投遞)到Guest內部。
VT-d 是硬體加速不可或缺的一部分。