Valgrind is a programmable framework for creating program supervision tools such as bug detectors and profilers. It executes supervised programs using dynamic binary translation, giving it total control over their every part without requiring source code, and without the need for recompilation or relinking prior to execution. New supervision tools can be easily created by writing skins that plug into Valgrind's core. As an example, we describe one skin that performs Purify-style memory checks for C and C++ programs.
No takes yet. Share an insight, caveat, or question.
Nethercote et al. (2003) studied this question.
Synapse has enriched 4 closely related papers on similar clinical questions. Consider them for comparative context: