虚拟机使用透传设备可以获得设备近乎原生的性能。Intel 和 AMD 都在它们的新一代处理器架构中提供对设备透传的支持(以及辅助管理程序的新指令)。Intel 将这种支持称为 Virtualization Technology for Directed I/O (VT-d),而 AMD 称之为 I/O Memory Management Unit (IOMMU)。不管是哪种情况,最新的 CPU 都提供将 PCI 物理地址映射到客户虚拟系统的方法。当这种映射发生时,硬件将负责访问(和保护),客户操作系统在使用该设备时,就仿佛它不是一个虚拟系统一样。除了将客 户机映射到物理内存外,新的架构还提供隔离机制,以便预先阻止其他客户机(或管理程序)访问该内存。
一.配置流程
0.首先查阅官方的硬件支持列表或者查看BIOS中的相关选项,以确认cpu及主板是否支持intel或amd的硬件辅助虚拟化功能。另外需透传的设备也需支持pci-passthrough
以下步骤基于环境:Intel(R) Core(TM) i7-4790 CPU + Xilinx artix7 +ubuntu 16.04.3 LTS
1.在bios中打开硬件辅助虚拟化功能
将VT(VT-x)及VT-d选项更改为enable,使其支持硬件虚拟化。
2.编辑文件 /etc/default/grub,以更改liunx内核启动参数
在
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_iommu=on"
GRUB_CMDLINE_LINUX="locale=zh_CN intel_iommu=on"
中增加 intel_iommu=on
接着运行:
sudo update-grub
或
grub-mkconfig -o /boot/grub/grub.cfg
以更新刚