Wie kann man ARM64-Programme in Windows X64 mit Qemu emulieren?

1697
Biswapriyo

Ich habe das Windows ARM64-ISO von https://uup.rg-adguard.net/ heruntergeladen und wie in diesem Artikel mit Qemu geöffnet . Aber Qemu emuliert so langsam das gesamte Windows ARM64-Betriebssystem (ich kenne die Emulation << Hypervisor). Daher dachte ich, ob es möglich ist, eine einzelne ausführbare Datei (wie arp, ping usw.) in Qemu (oder mit anderen Programmen) zu emulieren. Wenn ja, wie kann ich das machen? Wenn nicht warum?

0
Versuchen Sie, "--accel tcg, thread = multi" hinzuzufügen. Dieser [Artikel] (https://winaero.com/blog/install-windows-10-arm-qemu/) kann ebenfalls hilfreich sein. Aber ich denke nicht, dass Sie mit ARM64 zu viel machen können. harrymc vor 6 Jahren 0
Ich glaube nicht, dass es eine Lösung gibt - die Emulation einer völlig anderen Hardwarearchitektur wird immer unerträglich langsam sein, da jeder ARM-Hardwarebefehl von mehreren Intel-Befehlen ausgeführt wird, wobei Speicher anstelle von Hardwareregistern verwendet wird. Dies kann dutzende Male langsamer sein. Ich kenne kein anderes Virtualisierungsprodukt, das ARM außer QEMU unterstützt, daher kann ich keinen anderen Emulator empfehlen. Holen Sie sich ein Raspberry Pi, wenn Sie mit ARM-Architektur in nativer Geschwindigkeit spielen möchten. harrymc vor 6 Jahren 1
Mein Ziel ist es, ein Programm in Windows 10 ARM zu kompilieren und zu debuggen. Biswapriyo vor 6 Jahren 0
Sie können dies mit QEMU tun, aber Sie müssen Geduld haben. harrymc vor 6 Jahren 0
Sie finden Anweisungen zum Erstellen der VM und Sie können auch vorgefertigte VMs herunterladen. Möchten Sie, dass ich eine Antwort mit diesen Informationen posten werde? harrymc vor 6 Jahren 0

1 Antwort auf die Frage

2
harrymc

Wenn der QEMU-Emulator für die ARM-Computer zu langsam ist, können Sie den Microsoft Device Emulator 3.0 - Standalone-Release ausprobieren . Im Artikel- Entwicklerhandbuch zum ARM-Emulator finden Sie einige Informationen, obwohl sie aus dem Jahr 2005 stammen und sich auf Microsoft Device Emulator 2.0 beziehen.

Das Xen-Projekt hat auch Support für ARM-CPUs angekündigt, obwohl ich nicht weiß, wie fortgeschritten diese Entwicklung ist, und es ist unklar, ob ARM emuliert werden kann oder nur auf einer physischen ARM-CPU ausgeführt wird. Es ist ein weiterer Emulator, den Sie ausprobieren könnten.

Wenn Sie die ARM-Architektur mit nativer Geschwindigkeit verwenden möchten, ist die einzige Lösung ein ARM-Gerät. Der Raspberry Pi ist hier eine günstige Möglichkeit.

Um ein fertiges Bild mit Raspberry Pi auf QEMU zu erhalten, lesen Sie das Projekt Raspberry Pi-Emulation für Windows . Es wird mit einer run.batDatei geliefert und Sie müssen sie ausführen und den Anweisungen folgen.

Wenn Sie nur mit ARM-Assembler-Programmen spielen möchten, können Sie CEMU verwenden, das Arm / AArch64 unterstützt und wie folgt beschrieben wird:

eine gebündelte GUI-Anwendung, die Benutzern das Schreiben von Assemblys und das Testen ermöglicht, indem sie zu Bytecode kompiliert und in einem QEMU-basierten Emulator ausgeführt werden.

Anweisungen zum Erstellen sowie vorgefertigte virtuelle Bilder finden Sie in der Azeria ARM Lab-Umgebung . Sie liefern auch ein Basis-Cheatsheet für ARM-Baugruppen

Weitere nützliche Informationen finden Sie in diesen Ressourcen:

In diesem [Artikel] (https://docs.microsoft.com/en-us/windows/uwp/debug-test-perf/test-with-the-emulator) wird der [Microsoft Emulator für Windows 10 Mobile] (https: //go.microsoft.com/fwlink/p/?LinkID=615095), aber ich weiß nicht, dass es hilft. Die Surface RT verwendet ARM, aber ich kenne keine Bilder. harrymc vor 6 Jahren 0
Ich denke darüber nach, eine ausführbare ARM64-Windows-Datei in ARM64 Wine (falls verfügbar) in X64 Linux auszuführen. Wird es funktionieren? Biswapriyo vor 6 Jahren 0
@Biswapriyo: Sorry, ich kann da nicht helfen. Möglicherweise müssen Sie versuchen und sehen. harrymc vor 6 Jahren 0