Lightweight memory tracing
Valgrind: a framework for heavyweight dynamic binary instrumentation