1. 程式人生 > >Linux 下的模擬器硬件加速

Linux 下的模擬器硬件加速

DDU gre ins www 其他 install 打印 gen 樂趣

Intel 提供了一個叫HAXM 的虛擬硬件加速技術,全稱為:Intel Hardware Accelerated Execution Manager.

只要你的 CPU 是 intel 的產品並且支持 VT(virtualization Technology)就可以使用 HAXM 技術將你的模擬器的速度提升至真機的水平。目前此技術支持蘋果的 Mac 系統和 Windows 系統,但 Linux 平臺不在此列。

技術分享

要知道 Android 的編譯環境 Google 首推 Linux 平臺(64位的Ubuntu)而 Mac 系統排到第二位。那麽在 Linux 平臺下是如何硬件加速的呢?

那就是傳說中的 kvm(Kernel-based Virtual Machine),同樣的,它需要硬件的支持,比如 intel 的 VT 和 AMD 的 V,它是基於硬件的完全虛擬化。

首先要確定你的 cpu 滿足要求,下面有幾個命令可以參考:

    $ egrep -c ‘(vmx|svm)‘ /proc/cpuinfo
    4

打印的值不為0即可。

下面安裝 kvm:

    $ sudo apt-get install qemu-kvm
    $ sudo adduser linc kvm
    $ sudo apt-get install libvirt-bin ubuntu-vm-builder  bridge-utils
    $ sudo adduser linc libvirtd

檢驗安裝是否成功:

    $ sudo virsh -c qemu:///system list
     Id    Name                           State
    ----------------------------------------------------

一切順利,接下來要創建 x86或 x86_64的模擬器,其他模擬器不支持。如下圖:

技術分享

用命令行啟動此模擬器:

    $ /opt/sdk/tools/emulator -avd Nexus5API21 -qemu -m 2047 -enable-kvm

技術分享

使用起來果然飛快,連打開網頁的速度都令人驚奇。當然了,如果不用命令行啟動,直接在 Android Studio 中啟動 x86_64架構的模擬器,速度也是很快,唯獨 arm 架構的模擬器啟動速度奇慢無比。話又說回來,既然有了比較不錯的 cpu,那麽機器的其他配置一定差不了,這樣的配置跑起模擬器來肯定要比原來強。

模擬器順手了,下面就盡情享受開發的樂趣吧。

如果覺得用自帶的模擬器不能夠滿足你的要求,那麽可以使用第三方的模擬器 Genymotion,網傳開發者反應良好。

參考:

http://www.mobibrw.com/?p=291

Linux 下的模擬器硬件加速