2014-12-02 218 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会抱怨你没有指定一个。