qemu 中的任何 ARM 平台仿真功能是否足以在多核仿真模式下运行 ARM v7 代码?

css*_*ent 5 qemu armv7

在 vexpress-a9 和 vespress-a15 的情况下,似乎 qemu(至少版本 2.0.0)在 ARMv7 板上运行 U-boot 和 Linux 发行版时存在问题。这里有人成功运行多核 ARMv7 操作系统吗?如果是,qemu 发行版是什么?我的意思是跑

qemu -M someplatform -cpu cores=2 ...
Run Code Online (Sandbox Code Playgroud)

Cir*_*四事件 3

qemu-system-arm -M virt -cpu cortex-a15

这个设置工作得很好:

qemu-system-arm \
-M virt \
-append 'root=/dev/vda' \
-cpu cortex-a15 \
-drive file='rootfs.ext2.qcow2,if=virtio,format=qcow2' \
-kernel zImage \
-nographic \
-smp '2'
Run Code Online (Sandbox Code Playgroud)

然后:

cat /proc/cpuinfo
Run Code Online (Sandbox Code Playgroud)

给出:

processor       : 0
model name      : ARMv7 Processor rev 1 (v7l)
BogoMIPS        : 125.00
Features        : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x2
CPU part        : 0xc0f
CPU revision    : 1

processor       : 1
model name      : ARMv7 Processor rev 1 (v7l)
BogoMIPS        : 125.00
Features        : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x2
CPU part        : 0xc0f
CPU revision    : 1
Run Code Online (Sandbox Code Playgroud)

我也打赌它会起作用,-M vexpress-a15 -cpu cortex-a15但我没有测试过。如果你想尝试一下,只需复制Buildroot 所说的内容,它就会像往常一样工作。

使用此设置在 QEMU 2.11.0、Linux v2.16 中进行测试。