如何从 QEMU 中的 C 辅助函数访问执行指令二进制代码(例如,操作码)
How to access executing instruction binary code (e.g., opcode) from C helper functions in QEMU
我想修改 QEMU 模拟器在主机(例如 x86)上执行目标架构(例如 RISC-V)的一些汇编指令时的行为运行。
我的问题是,是否可以从 C 助手访问与正在执行的指令相关的信息?
有些信息可以从上下文变量指针访问,但我无法访问指令二进制代码等。有什么想法吗?
My question is, is it possible, to access the information related to
the instruction being executed, from the C helper?
是的。一种方法是将此信息从翻译功能传递给助手。另一种是在助手中使用cpu_ld*_code
(例如cpu_ldub_code
)从内存中获取指令。
我想修改 QEMU 模拟器在主机(例如 x86)上执行目标架构(例如 RISC-V)的一些汇编指令时的行为运行。
我的问题是,是否可以从 C 助手访问与正在执行的指令相关的信息?
有些信息可以从上下文变量指针访问,但我无法访问指令二进制代码等。有什么想法吗?
My question is, is it possible, to access the information related to the instruction being executed, from the C helper?
是的。一种方法是将此信息从翻译功能传递给助手。另一种是在助手中使用cpu_ld*_code
(例如cpu_ldub_code
)从内存中获取指令。