ARM平台与X86的方法也类似,都是使用工具和查看某个系统文件。
方法1:执行“grep -E '(svm|vmx)' /proc/cpuinfo”如果返回不是0则支持。
方法2:使用下面的命令安装 kvm-ok 实用程序,该程序用于确定您的主机是否能够运行硬件加速的 KVM 虚拟机。
sudo apt install cpu-checker
#运行 kvm-ok 命令确认输出结果
sudo kvm-ok
#输出结果:
INFO: /dev/kvm exists
KVM acceleration can be used
如输出结果与上类似,则支持
而如上图类似则不支持。
方法3:cat /proc/cpuinfo
找到flags部分,如果其中输出有SVM或VMX,表明CPU支持虚拟化技术,若
没有则不支持。
方法4:使用lscpu命令
lscpu 命令用于显示有关 CPU 架构的信息,如果返回的信息里面存在virutal项,则说明支持。否则无法支持。
如上图则不支持。
方法5:通过Libvirt客户端实用程序
#首先安装这个实用程序:
sudo apt install libvirt-clients。
#然后使用使用程序的命令
virt-host-validate #将帮助您验证处理器是否支持虚拟化
可以看到在QEMU的项目中存在kvm是FAIL的情况,说明此时没有开启ARM虚拟化技术。
综上如果没有开启虚拟化技术,原因往往是:
- CPU本身不支持虚拟化
- CPU支持虚拟化,但系统未开启虚拟化支持,那么这个时候需要做的就是开启虚拟化。对于嵌入式平台来说,就需要重新编译内核,在编译内核选项menuconfig的时候进行虚拟化技术安装的选择。