Ich möchte QEMU
verwenden, um meinen kompilierten Kernel linux-4.13.4
auf Ubuntu 16.04.3 LTS
zu debuggen.
Ich folge den folgenden Schritten:
Sudo apt-get install qemu
qemu-system-x86_64 -s -S -kernel /home/wxf/kernelSources/linux-4.13.4/Arch/x86_64/boot/bzImage -initrd /boot/initrd.img-4.13.4
Hinweis:
-s Abkürzung für -gdb tcp :: 1234
-S friert die CPU beim Start ein (Verwendung von 'c' zum Starten der Ausführung)
Ich bekomme aber folgende Warnung:
warning: TCG doesn't support requested feature: CPUID.01H:ECX.vmx [bit 5]
Das Terminal stoppt dort und ich kann keine anderen Befehle eingeben.
Das QEMU-Fenster wird geöffnet, wenn ich es ausführen, aber es wird angehalten.
Wie kann ich die Warnung beseitigen und ist sie normal (da es sich nicht um eine Fehlerinformation handelt)?
Ehrlich gesagt weiß ich nicht, wie ich mit dieser Warnung umgehen soll. Kann sie ignoriert werden oder müssen Sie etwas dagegen tun? Das Hauptproblem ist jedoch, dass Sie die VM nicht ausführen können. Wenn ja, müssen Sie richtig festlegen, wo diese c
eingegeben werden muss, um die VM zu starten. :)
QEMU hat mehrere grafische Oberflächen (und AFAIK kann sogar in einer normalen Konsole ausgeführt werden). Angenommen, wir haben identische Standardeinstellungen für die Benutzeroberfläche (wahrscheinlich die GTK-Version). Wenn ich einen ähnlichen Befehl (qemu-system-x86_64 -s -S -kernel ...
) ausführen, kann ich durch Drücken von Strg + Alt + 2 (nur 2, nicht F2) zur Monitor-Konsole von QEMU wechseln. Dort drücke ich c
(und Enter scheint sich wie ein normales Terminal zu verhalten) und wechselt dann mit Strg + Alt + 1 zur Anzeige VM.
Ich hatte dieses Problem oder etwas sehr ähnliches. Es gab dieselbe Warnung, und obwohl es dann booten würde, war es ungewöhnlich langsam.
Ich habe es behoben, indem ich -machine ubuntu,accel=kvm
zur Befehlszeile qemu-system-x86_64
hinzufügte.
Sie haben es versäumt, die RAM - Größe anzugeben, die von der VM verwendet werden soll. Der von Qemu voreingestellte RAM ist 128M, was in Ihrem Fall nicht ausreichend war, denke ich. Versuchen Sie es weiterzugeben
-m 512
Ich erhalte Quellcode von seiner Website, baue aus Quellcode und erhalte die neueste Version .
Folgen Sie den Anweisungen auf der wiki-Seite .
Dann funktioniert es.