跳转至正文

VT-d

架构参考Feex

也称为 VT-d (DMA 重定向)

Intel VT-d 提供在平台和操作系统控制下的直接 I/O 设施,例如 DMA 重定向。它是一项平台特性,与通过 VT-x 实现的 CPU 执行虚拟化截然不同。

您需要了解的内容

Intel VT-d 提供在平台和操作系统控制下的直接 I/O 设施,例如 DMA 重定向。它是一项平台特性,与通过 VT-x 实现的 CPU 执行虚拟化截然不同。

工作原理

I/O 重定向单元使用配置的域和转换结构转换并检查设备 DMA 事务。中断重定向是一项具有自身要求的相关功能。固件向操作系统描述重定向硬件和设备关系,操作系统必须建立适当的映射和隔离。

适用场景

虚拟机监控程序在将合适设备分配给虚拟机时可以使用 DMA 重定向,而操作系统可以使用它来限制设备对内存的访问。设备拓扑、隔离组、重置行为和驱动程序支持会影响特定分配是否安全且受支持。

如何检查支持与启用状态

检查系统制造商的 VT-d 支持和固件配置、平台的 DMAR 描述以及操作系统/虚拟机监控程序的 IOMMU 状态。在透传之前验证具体设备的隔离和重置要求。

虚拟化部署包含多个层级:物理功能、固件许可、处于活跃状态的宿主机虚拟机监控程序、公开的客户机功能以及客户机操作系统支持。请检查操作实际运行所在的层级,适用时还应包括嵌套虚拟化。

该特性未确立的内容

VT-d 字段不能证明每个 PCIe 设备都可以独立分配、固件表正确或 DMA 保护已启用。VT-x 和 EPT 不能替代 VT-d。更改存储或重定向策略可能会影响活动设备。

实践中的兼容性与性能

CPU 执行、客户机内存转换和设备 DMA 重映射属于彼此独立的功能。切勿从单一的虚拟化字段推断是否存在直通或隔离支持。请使用虚拟机监控程序受支持的诊断工具以及确切的平台/设备要求。

实用验证核对清单

  1. 记录所涉及的具体处理器或平台型号,以及应用程序、操作系统和运行时的版本。保留实际错误或要求的原始措辞。
  2. 查阅该具体型号的制造商参考资料,然后检查程序运行环境中生效的功能与启用状态。
  3. 逐项比对所选二进制文件或后端的每项要求。仅凭名称相似的特性、别名或宽泛的技术标签是不够的。
  4. 确认应用程序选择了预期的实现。在不满足要求时,使用其文档中记录的诊断工具和受支持的回退方案。
  5. 每次只进行一项受支持的更改并重复相同的负载测试。保留原始配置和恢复路径以便随时使用。

若特性已列出但软件无法使用

首先排查出现故障的具体组件。硬件数据库描述的是记录在案的功能;操作系统或虚拟机监控程序可能会呈现不同的生效环境。非法指令错误同样需要调查实际发生故障的指令和二进制构建版本,因为数据损坏或不相关的未受支持指令也可能产生类似症状。

安装适用于该特定平台的受支持应用程序、驱动程序或运行时版本,并在需要时使用厂商文档记录的基线或回退构建版本。软件更新无法凭空创造处理器缺失的指令。固件和安全策略的更改应遵循系统制造商的规程和恢复计划,而非通用的优化方案。

本说明的来源与适用范围

Intel Virtualization Technology for Directed I/O Architecture Specification · Linux 内核:VFIO 设备访问与 IOMMU 组

这些参考资料确立了架构行为和软件要求。它们并不独立验证关联硬件型号页面上的每个特性值。如需了解型号支持情况,请使用该页面的制造商证据并检查实际生效的系统配置。本文不提供基准测试、认证或独立审查日期。

来源与验证

编辑归属:Feex。未记录独立审核日期。 我们的研究方式.

这篇文章有用吗?

回答"是"或"否"即可。如果您愿意,可以选择一个原因,或添加一段简短附言。

这篇文章有用吗?