QEMU 目前不支持对所有已执行指令进行此类跟踪。
我们今天拥有的最接近的是-d 开关下有各种调试日志记录,您可以将“从客户翻译到本机的指令”的跟踪与“执行的已翻译代码块”翻译结合起来,以找出是什么执行了,但这很尴尬。
或者,您可以尝试编写 gdbstub 接口脚本来执行“PC 上的反汇编指令;单步”之类的操作,这将(缓慢地!)为您提供所有已执行的指令。
注意:正在进行的工作是提高 QEMU 内省来宾执行的能力,以便您可以编写一个简单的“插件”,其中包含在来宾指令执行等事件上回调的函数;这样,编写已执行的客户指令的转储(或进行更有趣的处理)将相当容易,但这仍在进行中,因此尚不可用。