检查VT-x是否激活,而不必在Linux中重新启动?

我有一个笔记本电脑与英特尔酷睿i5 M 450 @ 2.40GHz显然有VT – X,但不是VT – D。 我有Ubuntu 12.04 32位,但希望有一个虚拟的64位基于terminal的Linux上运行。 如何知道BIOS是否启用了此VT-xfunction而无需重启?

您可以使用msr-tools中的rdmsr来读取寄存器IA32_FEATURE_CONTROL (地址0x3a )。 内核模块msr必须为此加载。

在大多数Linux系统上:

sudo modprobe msr sudo rdmsr 0x3a 

35意味着它被激活。

您可以使用

 sudo kvm-ok 

从cpu-checker 。 在具有最复杂逻辑的Intel上,kvm-ok 检查是否设置了rdmsr 0x3a (锁定位)的位0,位2(允许在SMX模式之外使用virt,与可信任引导有关)也必须被设置。 如果rdmsr 0x3a的输出不是13 ,则可以使用kvm。 如果有必要的话,kvm会设置msr的第2位,我期望virtualbox和其他的具有相同的逻辑。

安装cpu-checker并运行“kvm-ok”

如果CPU已启用,则应该看到如下所示的内容:

 INFO: /dev/kvm exists KVM acceleration can be used 

othewise

 INFO: /dev/kvm does not exist HINT: sudo modprobe kvm_intel INFO: Your CPU supports KVM extensions INFO: KVM (vmx) is disabled by your BIOS HINT: Enter your BIOS setup and enable Virtualization Technology (VT), and then hard poweroff/poweron your system KVM acceleration can NOT be used 

在linux中你可以检查cpuinfo:

 cat /proc/cpuinfo| egrep "vmx|svm"