我有一个笔记本电脑与英特尔酷睿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
值3
和5
意味着它被激活。
您可以使用
sudo kvm-ok
从cpu-checker 。 在具有最复杂逻辑的Intel上,kvm-ok 检查是否设置了rdmsr 0x3a
(锁定位)的位0,位2(允许在SMX模式之外使用virt,与可信任引导有关)也必须被设置。 如果rdmsr 0x3a
的输出不是1或3 ,则可以使用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"