Autor Thema: Qemu und Debbuger  (Gelesen 4552 mal)

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« am: 03. October 2008, 15:25 »
Hi,

unter Bochs kann ich mit bochsdbg (gibts nicht für linux???) mein OS debuggen. Jetzt hätte ich gerne so etwas bei qemu. Also wenn ich z.B. eine adresse angebe soll qemu an dieser stoppen. Also z.B.:

lbreak 0x10000 ;soppt wenn rip = 0x10000
und dann kann ich kommandos wie z.B. s 1 eingeben, dann wird ein Befehl ausgeführt oder s 2 dann zwei usw. mit r kann ich mir dann den Wert der Register anzeigen lassen. Gibt es so etwas auch für qemu?

Und kann man so etwas mit VMware auch machen? Habe mal was vom VMware debugger gehört. Aber kann der auch so etwas?

thx
In the Future everyone will need OS-64!!!

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 03. October 2008, 15:50 »
lbreak 0x10000 ;soppt wenn rip = 0x10000
und dann kann ich kommandos wie z.B. s 1 eingeben, dann wird ein Befehl ausgeführt oder s 2 dann zwei usw. mit r kann ich mir dann den Wert der Register anzeigen lassen. Gibt es so etwas auch für qemu?
qemu hat einen gdbstub (im Monitor gdbserver eingeben), dann kannst du im gdb mit "target remote localhost:1234" darauf verbinden. Anzeigen lassen kannst du dir auch relativ viel direkt im Monitor, aber zum Singlesteppen brauchst du gdb.

Zitat
Und kann man so etwas mit VMware auch machen? Habe mal was vom VMware debugger gehört. Aber kann der auch so etwas?
Kenne ich nicht.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #2 am: 03. October 2008, 16:54 »
Also wenn ich gdbserver eingebe passiert gar nichts. Und wenn ich dann target blabla eingebe, sagt qemu mir: unknown command: 'target'

Wieso so kompliziert localhost 1234? Hmm...


EDIT: Ah qemu gibt bei Eingabe von gdbserver auf der Konsole folgendes aus:

Could not open gdbserver socket on port '1234'
« Letzte Änderung: 03. October 2008, 17:05 von bitmaster »
In the Future everyone will need OS-64!!!

 

Einloggen