Wie kann man die Registerwerte der ausgeführten Anweisungen in QEMU verfolgen?

387
Ciro Santilli 新疆改造中心 六四事件 法轮功

Ich kann die demontierten Anweisungen erhalten mit:

qemu-system-aarch64 -d in_asm 

Beispielformat:

---------------- IN: 0xfffffff0: ea 5b e0 00 f0 ljmpw $0xf000:$0xe05b  ---------------- IN: 0x000fe05b: 2e 66 83 3e 88 61 00 cmpl $0, %cs:0x6188 0x000fe062: 0f 85 7b f0 jne 0xd0e1 

Es wäre aber auch sehr nützlich, wenn ich den Wert der an einer Anweisung beteiligten Register sehen könnte.

Zum Beispiel beim Laden aus dem Speicher:

ldr x0, [x1] 

Ich würde gerne wissen, in welchen Wert geladen wurde x0, und idealerweise auch den Wert der gelesenen Adresse x1.

Ist dies möglich, mit dem -doder -traceoder einem anderen Spur Mechanismus?

Ich habe einige verwandte alte Threads gesehen und es scheint nicht vielversprechend zu sein:

Ich weiß, wie man das mit GDB macht, aber eine vollständige Aufzeichnung wäre sehr langsam.

0

0 Antworten auf die Frage