Wie zu emulieren, der Raspberry Pi 2 auf QEMU?
Habe ich vor einiger Zeit emuliert den Raspberry Pi folgende dieser Artikelaber dieser Ansatz hat mehrere Probleme:
- Es ist sehr langsam.
- Die display-Lösung beschränkt sich auf 800x600.
- Sie nicht emulieren, mehr als 256 MB ram.
Außerdem gibt es keine emulation für die neuen Broadcom BCM2836 oder andere arm7-basierten cpu in Qemu. Jedoch, es gibt mehrere Gründe, warum es wäre interessant zu emulieren, der Raspberry Pi. Also ich interessiere mich für alle Hinweise, die mich drängen, mich in die richtige Richtung zu bekommen, einen funktionierenden Raspberry Pi 2-emulation mit Qemu oder andere Emulations-software unter Linux.
InformationsquelleAutor der Frage Phidelux | 2015-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie bequem Gebäude qemu, können Sie eine Unterstützung für die pi2-system emulation, hier: https://github.com/0xabu/qemu. Es ist nicht besonders schnell, und das Gerät Emulationen sind unvollständig, aber Sie können die Größe des RAM-und framebuffer.
Gibt es eine kurze Anleitung für das Booten von Raspbian am Ende https://github.com/0xabu/qemu/wiki
InformationsquelleAutor der Antwort ab.
Wenn Sie ausführen möchten, ein Raspberry Pi 2 build-bot oder ähnliches, Sie sollten einen Blick auf die Laufenden Qemu im user - /static-Modus. Ich habe versucht, diese mithilfe von Linux in einer virtuellen Maschine, es ist ziemlich schnell im Vergleich zu Qemu-system-emulation. Leider ist es nur emuliert die CPU, so dass Sie nicht in der Lage sein, um test-Spiele oder Wayland/Weston.
Konnte ich einen kernel erstellen für meinen Pi 2 in etwa einer Stunde mit dieser Methode.
InformationsquelleAutor der Antwort Keehl
Ubuntu 16.04, QEMU 2.9.0 -M raspi2, Raspbian 2016-05-27, vanilla kernel
Kompilieren von QEMU 2.9.0 von Quelle:
Bild herunterladen und entpacken Sie die kernel-und dts:
Laden Sie das Bild herunter und entpacken Sie es:
Montieren Sie das zweite Bild der partition. Der einfachste Weg ist:
Funktioniert dies nur mit den neuesten
losetup
auf Ubuntu 16.04, andere Methoden an: https://askubuntu.com/questions/69363/mount-single-partition-from-image-of-entire-disk-device/496576#496576Diese Drucke ein loop-Gerät, z.B.:
also tun wir:
Run:
Können Sie sich dann anmelden, auf dem terminal, das zeigt, auf Ihrem host-terminal.
Aktuelle Einschränkungen:
-M raspi2
wurde Hinzugefügt, in QEMU 2.6.0, und Ubuntu 16.04 nur QEMU 2.5.0, so haben wir zum kompilieren von QEMU von der Quelle. Aber das ist nicht schwer.Ubuntu 16.04, QEMU 2.5.0, Raspbian 2016-05-27, modifizierte kernel -
Diese Methode verwendet
-M versatilepb
das ist auf der QEMU 2.5.0 von Ubuntu 16.04.Der Nachteil ist, dass Sie zum download einen modifizierten kernel (siehe https://raspberrypi.stackexchange.com/questions/47124/emulating-with-qemu-why-the-extra-kernel), und ändern Sie das Bild, es ist also weniger repräsentativ für das Reale system.
Download: https://github.com/dhruvvyas90/qemu-rpi-kernel/blob/36ede073f4ccb64f60200ede36c231afe9502070/kernel-qemu-4.4.12-jessie
Holen wir
4.4.12
da ist die kernel-version, die in den Raspbian-image.Den Prozess zu generieren, die kernel-blob ist beschrieben in das repository zu: https://github.com/dhruvvyas90/qemu-rpi-kernel/tree/36ede073f4ccb64f60200ede36c231afe9502070/tools
Warum diese zusätzliche kernel-image benötigt wird: https://raspberrypi.stackexchange.com/questions/47124/emulating-with-qemu-why-the-extra-kernel
Ändern Sie die Raspbian-image wie bereits erwähnt bei: https://github.com/dhruvvyas90/qemu-rpi-kernel/wiki/Emulating-Jessie-image-with-4.x.xx-kernel/0068f0c21d942b0f331e18014ff8e22c20cada5c
Zusammenfassung:
Montieren Sie das Bild einfach, wir haben für die
-M raspi2
aber die zweite partition statt der ersten:Bearbeiten Sie das Bild:
Run:
[gescheitert] Ubuntu 17.04, QEMU-2.8.0 -M raspi2, Raspbian 2016-05-27, vanilla kernel
Auf diese neuere Ubuntu, QEMU 2.8.0 ist die Standardeinstellung, so brauchen wir nicht zum kompilieren von QEMU aus der Quelle für
-M raspi2
. Allerdings 2.8.0 hängt beim Booten nach der Meldung:Dies geht um zu zeigen, wie instabil
-M raspi2
noch ist.[gescheitert] Ubuntu 16.04, QEMU 2.9.0 -M raspi2, Raspbian 2017-08-16, vanilla kernel
Auf dieses neuere Bild, mit der gleichen Methode für 2016-05-27, die kernel-panic beim Booten mit:
bztsrc/raspi3-tutorial
RPI3 bare-metal auf QEMUhttps://github.com/bztsrc/raspi3-tutorial ist eine gute Sammlung von Beispielen, die gerade arbeiten, auf QEMU, ultraquick Einstieg bei: https://raspberrypi.stackexchange.com/questions/34733/how-to-do-qemu-emulation-for-bare-metal-raspberry-pi-images/85135#85135
InformationsquelleAutor der Antwort Ciro Santilli 新疆改造中心 六四事件 法轮功