3 Injecting Pin • The injector loads Pin into the address space of an application. • Unix Ptrace API • Pin loads Pintool into the address space and starts it running. • Pin creates the initial context and starts jitting the application at the entry point JIT Compiler • Pin compiles from one ISA to the same Isa w/o an intermediate format • One trace at a time • Compiled code is stored at the code cache • Each exit initially branches to a “ stub ” • Stub: redirects the control to the VM • VM determines the target address

This preview
has intentionally blurred sections.
Sign up to view the full version.