VT-x 真的需要bios 支持吗?

Tat*_*shi 5 linux vt-x

我有一台带有 Core Duo(不是 Core 2)的旧笔记本电脑。

CPU 支持 VT-x,但 bios 不支持。(永远,不再更新 BIOS)

VT-x 真的需要 BIOS 支持吗?我们可以用 Linux 内核补丁来实现吗?

Law*_*ceC 7

此 Intel 软件开发人员手册的第 2916 页上,您可以看到提供了一个硬件“挂钩”,可以允许 BIOS 禁用或启用虚拟化。

VMXON 也由 IA32_FEATURE_CONTROL MSR(MSR 地址 3AH)控制。当逻辑处理器复位时,该 MSR 被清零。... 位 0 是锁定位。如果该位清零,VMXON 会导致一般保护异常。如果设置了锁定位,则此 MSR 的 WRMSR 会导致通用保护异常;在上电复位条件之前不能修改 MSR。系统 BIOS 可以使用此位为 BIOS 提供设置选项以禁用对 VMX 的支持。要在平台中启用 VMX 支持,BIOS 必须设置位 1、位 2 或两者(见下文)以及锁定位。

如果 BIOS 已清除硬件模型特定寄存器 (MSR) 0x3A 中的位 0,则虚拟化将被禁用且无法重新启用,除非 CPU 被重置,然后 CPU 被赋予 BIOS 控制权。

Linux 内核补丁无法撤消此操作,因为这是在硬件中。必须刷新 BIOS 才能跳过设置该位。