intel的二进制代码监控工具。
可以对二进制执行代码进行逐指令监控记录,可以记录各内部函数的调用、执行次数。
编译命令:
..\nmake.bat [MSVCVER=8|9|10] [TARGET=ia32|ia32e] [debug=0|1] [pin_home=<Pin home directory>]
如:..\nmake.bat TARGET=ia32 proccount.dll
注意:输出文件为proccount.dll
需要根据Nmakefile文件的COMMON_TOOLS项来确定编译。
启动运行命令:
pin -t pintool.dll -- run.exe
pintool.dll为编译的PinTool动态链接库
run.exe为要加载的执行程序
附加运行命令:
pin -pid xxxx -t pintool.dll
xxxx为要附加的程序PID
pintool.dll为编译的PinTool动态链接库
Pintool带参数运行命令:
pin -t xxx -n arg --run.exe
xxx为Pintool动态链接库
-n为KNOB<string> KnobInputFile(KNOB_MODE_WRITEONCE, "pintool",
"n", "xxx", "xxx");中指定的参数,可能为其他值
arg为要传给Pintool的参数
run.exe为要加载的执行程序