2014-12-02 217 views
1

我試圖通過qemu在ARM主機cubieboard2嵌入式主板上模擬ARM VM。我從源代碼編譯qemu並啓用kvm。現在的問題是,推出qemu-system-arm如下:使用KVM加速在ARM上運行qemu

$ /usr/local/bin/qemu-system-arm -M accel=kvm -cpu host -kernel vmlinuz-3.2.0-4-vexpress -initrd initrd.img-3.2.0-4-vexpress -sd debian_wheezy-_armhf_standard.qcow2 -append "console=ttyAMA0 root=/dev/mmcblk0p2" -nographic 

我有這樣的錯誤:

qemu-system-arm: -M accel=kvm: Unsupported machine type 
Use -machine help to list supported machines! 

有什麼錯我所鍵入的命令。如何啓用kvm

回答

0

如何閱讀本:

https://groups.google.com/forum/#!topic/cubieboard/4EGONZMoIAU

是的,你是對的,因爲Cubieboard2有A15,HYP管理程序的實施和KVM應該在它運行。

更多HYP模式這裏介紹:

http://lwn.net/Articles/557132/

有你可以看到失敗的模式(爲什麼QEMU命令失敗)的另一種方式:「strace的」下執行你的命令,你會能夠清楚地看到/ dev/kvm何時打開,如果成功,在打開(「/ dev/kvm」)之後將返回非零fd。並且在這之前 - 「lsmod」應該返回一行表示「kvm.ko」內核模塊正在運行的行,並且如果您可以讀取內核的配置文件,則應該在其中嵌入一個「CONFIG_KVM」。

+0

你的意思是「KVM在ARM上不存在」?一些ARM CPU具有HYP模式,KVM使用此模式啓用虛擬化。無論如何,即使我指定了架構,我也會得到相同的錯誤。問題是激活kvm加速的參數。 – 2014-12-06 11:29:16

1

-M需要一個機器名稱(例如「vexpress-a15」或「virt」),而不是一組子選項=值設置。你想-machine suboption =值,...爲此。

(「-M名稱」是「型-machine =名」。快捷方式)

還需要指定一個機器名,或者通過-machine類型=名或-M名稱,否則QEMU會抱怨你沒有指定一個。