让虚拟机支持VT

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

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

   

VMware

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

   

   

VirtualBox

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

   

设置方法

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

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

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

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

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

       

   

实验

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位)是 不一样的.

   

posted @ 2020-05-15 02:31  Joney_Yana  阅读(2708)  评论(3编辑  收藏  举报