Valgrind Resource Collection¶
Valgrind Articles¶
Valgrind Slides¶
Projects with Valgrind¶
Papers¶
- [2015] MemorySanitizer: fast detector of uninitialized memory use in C++
- [2014] ACDC-JS: explorative benchmarking of javascript memory management
- [2013] JSWhiz - Static Analysis for JavaScript Memory Leaks
- [2012] AddressSanitizer: A Fast Address Sanity Checker
- [2012] Transparent Dynamic Instrumentation
- [2011] Practical Memory Checking with Dr. Memory
- [2011] Dynamic cache contention detection in multi-threaded applications
- [2011] Dynamic Race Detection with LLVM Compiler
- [2009] ThreadSanitizer – data race detection in practice
- [2007] Flayer: Exposing Application Internals
Comparison Of Memory Tools¶
Table modify from address-sanitizer - ComparisonOfMemoryTools
AddressSanitizer | Valgrind (Memcheck) | Valgrind (SGCheck) | |
---|---|---|---|
technology | CTI | DBI | DBI |
ARCH | x86, x86_64, ARM, PPC, ... | x86, x86_64, ARM, PPC, ... | x86, x86_64, ARM, PPC, ... |
OS | Linux, FreeBSD, Android, Mac, Windows, ... | Linux, FreeBSD, Android, Mac, ... | Linux, FreeBSD, Android, Mac, ... |
Slowdown | 2x | 20x | |
Detects: | |||
Heap OOB | O | O | X |
Stack OOB | O | X | O |
Global OOB | O | X | O |
UAF | O | O | X |
UAR | O | O | X |
UMR | X | O | X |
Leaks | O | O | X |
縮寫 | 全名 |
---|---|
CTI | Compile-Time Instrumentation |
DBI | Dynamic Binary Instrumentation |
UMR | Uninitialized Memory Reads |
UAF | Use-After-Free (aka dangling pointer) |
UAR | Use-After-Return |
OOB | Out-Of-Bounds |