让虚拟机支持VT

虫子 2020-05-15

想要在虚拟机中使用VT(嵌套使用VT),需要在虚拟机管理工具(Vmware/VirtualBox)中设置。

不管是Vmware还是VirtualBox都默认是关闭了虚拟机的VT功能, VMware 和 VirtualBox 设置方式如下。

??

VMware

在虚拟机设置中勾选图中所示即可。

让虚拟机支持VT

??

??

VirtualBox

VirtualBox中要让虚拟机开启VT稍微比较麻烦,在界面中改功能是置灰状态,无法勾选,需要通过命令行设置。

让虚拟机支持VT

??

设置方法

  1. 在cmd中定位到VirtualBox根目录 : cd C:\Program Files\Oracle\VirtualBox

    让虚拟机支持VT

  2. 打印出所有的虚拟机 : VBoxManage.exe list vms

    让虚拟机支持VT

  3. 开启虚拟机的VT: VBoxManage.exe modifyvm "Windows7_x64" --nested-hw-virt on

    注意"Windows7_x64"是我的虚拟机名称, 你需要把这个设置为你希望修改的虚拟机名称

    设置完毕后,重新打开虚拟机设置,可以发现CheckBox已经是可勾选状态,并且已经勾选上了。

    让虚拟机支持VT

    ??

??

实验

VT是否开启到底影响了什么? 没有开启VT CPUID.1:ECX.VMX[bit 5]会设置为0,开启后会置为1。

VMX(Virtual Machine Extensions) 为1时表示处理器支持VT;为0时表示不支持VT。 虚拟机软件都会检查这个标志.。

??

下面是通过cpuid指令 分别在未开启VT和已开启VT的状态得出的ECX值

result Ecx : DE9A220B

result Ecx : DE9A222B

可以看到bit5位(VMX位)是 不一样的.

??

让虚拟机支持VT

相关推荐