Linux のアプリケーションをエミュレートしたいとき
ホストOSもLinuxの場合、QEMU ユーザーモードエミュレーション を使うとかなり早くエミュレーションできます。ハードウェアのエミュレーションはしないのでARM用Linuxとかは動かせません。Ubuntu/Debianなら apt-get install binfmt-support qemu-user-static
で自動的にARM用Linuxアプリを実行できるようになります。
ARM用のOSをエミュレートしたいとき
ホストCPUがARMではないとき
忍耐力を高めて遅さに耐えて下さい
ホストCPUが32bit ARMでゲストCPUが64bit ARMのとき
忍耐力を高めて遅さに耐えて下さい
ホストCPUが32bit ARMでゲストCPUも32bit ARMのとき
qemu-system-arm -machine virt -cpu host -enable-kvm
でKVMによる圧倒的な高速化ができます。ただしホストCPUは Cortex A15 などの仮想化機能を含む必要があります。
ホストCPUが64bit ARMでゲストCPUも64bit ARMのとき
qemu-system-aarch64 -machine virt -cpu host -enable-kvm
でKVMによる圧倒的な高速化ができます。
ホストCPUが64bit ARMでゲストCPUは32bit ARMのとき
qemu-system-aarch64 -machine virt -cpu host,aarch64=off -enable-kvm
でKVMによる圧倒的な高速化ができます。qemu-system-armを64bit ARM CPUで使うとKVMによる高速が現状ではできません。