Pin is a tool for the dynamic instrumentation of programs. It supports Linux binary executables for Intel (R) Xscale (R), IA-32, Intel64 (64 bit x86), and Itanium (R) processors; Windows executables for IA-32 and Intel64; and MacOS executables for IA-32. Pin was designed to provide functionality similar to the popular ATOM toolkit for Compaq's Tru64 Unix on Alpha, i.e. arbitrary code (written in C or C++) can be injected at arbitrary places in the executable. Unlike Atom, Pin does not instrument an executable statically by rewriting it, but rather adds the code dynamically while the executable is running. This also makes it possible to attach Pin to an already running process.
When posting a question to our mailing list, be sure to mention your processor, OS, gcc version, and Pin kit number.
Hi, I've got this weird problem with Ubuntu 9.10 (Karmic) (2.6.31-16-generic i686 GNU/Linux) that sometimes Pin just fails to start. The kit I am using is