英特尔 PIN:在 windows 上获取回溯

Intel PIN: get backtrace on windows

我正在尝试在 windows 上编写一个 pintool。我想做的一件事是在特定指令后打印堆栈跟踪。根据 Pin 手册,PIN_Backtrace 仅在 Linux 和 Mac OS 上可用。在 Windows 上是否有任何等效的解决方案?

创建影子堆栈,而不是在 IPOINT_BEFORE 和 IPOINT_AFTER 上使用 RTN_InsertCall 检测所有模块中的所有例程,并相应地修改影子堆栈。

这样你就可以打印 Shadow 堆栈而不需要回溯。