我有一台 HP 台式机,我想安装 VirtualBox,这样我就可以运行 XP VM(必须在 IE8 中测试东西)。
在设置之前,我进入 BIOS 检查硬件虚拟化是否已启用。我在 BIOS 中找到了该设置,并且有一条相关说明。
HP recommends keeping this setting off unless you need it
我正在解释,我忘了精确的笔记。
我做我需要它,所以我打开了它,但我很好奇。为什么 HP 建议这样做?如果您不使用它(运行虚拟机),那么打开硬件虚拟化会带来什么危害?
答案1
有几种来自不良驱动程序的攻击媒介可以利用 VT 扩展来做一些潜在的坏事。这就是为什么该设置通常位于 BIOS UI 的“安全”部分。
此外,指令集越小,CPU 在非常低的水平上运行的效率就越高(因此过去几十年人们对 RISC 芯片很感兴趣)。禁用它可以让 CPU 缓存更少的指令并更快地搜索缓存。
答案2
另一个原因是大多数用户内核函数被移至 VDSO(如 gettimeofday)。
有时在虚拟化情况下无法启用此快速路径。
因此系统不能:
获得这些功能的快速执行
避免从用户态到内核的昂贵切换并返回