原因
选择x86_64的原因就是开启虚拟机的速度很快,当我们需要调试Android系统,比如打印了一些LOG或者是改了一些文件,使用x86_64选项编译的虚拟机要比arm64的虚拟机快了
很多,具体数据没有测试过,不同电脑的性能对于虚拟机启动时间会有影响, 如果没有固态硬盘的情况下,大致是一半的时间. 而且因为和宿主机的cpu架构相同,用的时候也不会很卡,我之前用arm64的时候有时甚至会卡直接重启虚拟机
编译
直接在lunch的时候选择aosp_x86_64-eng就可以了
开启CPU虚拟化
进入BIOS开启CPU虚拟化,intel的是叫Intel Virtual Technology, AMD是叫SVM mode, 开启之后重启, 用egrep -c '(svm|vmx)' /proc/cpuinfo进行检测, 如果不为0就是正确开启了
安装KVM
sudo apt-get install qemu qemu-kvm, 安装之后用kvm-ok检测是否安装成功.
问题
有个问题出现了
emulator: ERROR: x86 emulation currently requires hardware acceleration!
Please ensure KVM is properly installed and usable.
CPU acceleration status: This user doesn't have permissions to use KVM (/dev/kvm)复制代码
这个问题主要是因为我们当前用户没有权限导致的,运行以下的命令进行解决
sudo addgroup kvm
sudo usermod -a -G kvm username
sudo chgrp kvm /dev/kvm
sudo vim /etc/udev/rules.d/60-qemu-kvm.rules #在里面写入KERNEL=="kvm", GROUP="kvm", MODE="0660"
复制代码
原文中有详细的解释