1

我发现我可以使用以下代码确定是否启用了 VT-D / IOMMU:

if compgen -G "/sys/kernel/iommu_groups/*/devices/*" > /dev/null; then
    echo "AMD's IOMMU / Intel's VT-D is enabled in the BIOS/UEFI."
else
    echo "AMD's IOMMU / Intel's VT-D is not enabled in the BIOS/UEFI"
fi

但是在没有启用它的情况下,我无法找到一种方法来检查系统是否首先支持该选项。

我知道 Intel/AMD 已经记录了他们的哪些 CPU 支持 VT-D / IOMMU,但我想知道整个系统(主板+UEFI/BIOS+CPU+芯片组)是否支持此功能,因为我的笔记本例如有一个支持它的 CPU,但 UEFI 中没有启用它的选项。

4

1 回答 1

2

检测对 Intel VT-d 支持的唯一方法是通过 ACPI 表“DMAR”的存在。如果在 BIOS 中禁用了 VT-d,则该表将不存在,并且无法确定该功能是否可以启用。

于 2018-11-20T01:25:08.283 回答