Projects / Pin Dynamic Instrumentation Tool

Pin Dynamic Instrumentation Tool

Pin is an ATOM-like instrumentation tool for Linux executables. It allows arbitrary code (written in C or C++) to be injected at arbitrary places in an executable. Unlike Atom, Pin does not perform the instrumentation statically by rewriting the executable, but rather dynamically by adding instrumentation while the executable is running. Currently supported platforms include IA-32, Intel Xscale, and Itanium processors.

Operating Systems

Recent releases

  •  17 Oct 2006 01:25

    Release Notes: This release supports Windows and Mac OS X for IA-32.

    •  12 Apr 2005 20:56

      Release Notes: This release adds support for Mandrake 10 Linux, corrects several bugs regarding the reporting of instructions accessing memory, and enhances performance with the new conditional analysis code feature.

      •  29 Mar 2005 18:04

        Release Notes: This release fixes numerous bugs and reduces memory conflicts between Pin and the executable.

        •  03 Mar 2005 16:35

          Release Notes: This release for IA32 and EM64T improves support for multi-threaded applications and SuSE Linux distributions.

          •  24 Jan 2005 19:15

            Release Notes: This update features numerous bugfixes, improved memory handling, and a preview of multi-threading support (c.f. ToolUnitTests/mt.C). It has been successfully tested on RH 7.2, 9.0, EL3, and FC2. Problems with SuSE and Mandrake are being worked on.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.