From c1a82c95fb8046c4c7cc230a73121afe2004f73d Mon Sep 17 00:00:00 2001 From: Nicholas Nethercote Date: Fri, 7 Aug 2009 04:07:20 +0000 Subject: [PATCH] Overhaul design+implementation chapter. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10733 --- docs/xml/design-impl.xml | 113 +++++++++++++++++++++++---------------- 1 file changed, 68 insertions(+), 45 deletions(-) diff --git a/docs/xml/design-impl.xml b/docs/xml/design-impl.xml index 6e7b5934f4..f891f3ba8b 100644 --- a/docs/xml/design-impl.xml +++ b/docs/xml/design-impl.xml @@ -1,6 +1,7 @@ + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" +[ %vg-entities; ]> A number of academic publications nicely describe many aspects of Valgrind's design and implementation. Online copies of all of -them, and others, are available at -http://valgrind.org/docs/pubs.html. - -A good top-level overview of Valgrind is given in: - - -"Valgrind: A Framework for Heavyweight Dynamic Binary -Instrumentation." Nicholas Nethercote and Julian Seward. Proceedings -of ACM SIGPLAN 2007 Conference on Programming Language Design and -Implementation (PLDI 2007), San Diego, California, USA, June 2007. -This paper describes how Valgrind works, and how it differs from other -DBI frameworks such as Pin and DynamoRIO. - - -The following two papers together give a comprehensive -description of how Memcheck works: - -"Using Valgrind to detect undefined value errors with -bit-precision." Julian Seward and Nicholas Nethercote. Proceedings -of the USENIX'05 Annual Technical Conference, Anaheim, California, -USA, April 2005. This paper describes in detail how Memcheck's -undefined value error detection (a.k.a. V bits) works. - -"How to Shadow Every Byte of Memory Used by a Program." -Nicholas Nethercote and Julian Seward. Proceedings of the Third -International ACM SIGPLAN/SIGOPS Conference on Virtual Execution -Environments (VEE 2007), San Diego, California, USA, June 2007. This -paper describes in detail how Memcheck's shadow memory is implemented, -and compares it to other alternative approaches. - - -The following paper describes Callgrind: - -"A Tool Suite for Simulation Based Analysis of Memory Access -Behavior." Josef Weidendorfer, Markus Kowarschik and Carsten -Trinitis. Proceedings of the 4th International Conference on -Computational Science (ICCS 2004), Krakow, Poland, June 2004. This -paper describes Callgrind. +them, and others, are available on the Valgrind +publications page. + +The following paper gives a good overview of Valgrind, and explains +how it differs from other dynamic binary instrumentation frameworks such as +Pin and DynamoRIO. + + + + + Valgrind: A Framework for Heavyweight Dynamic Binary + Instrumentation. Nicholas Nethercote and Julian Seward. Proceedings + of ACM SIGPLAN 2007 Conference on Programming Language Design and + Implementation (PLDI 2007), San Diego, California, USA, June + 2007. + + + + + +The following two papers together give a comprehensive description of +how most of Memcheck works. The first paper describes in detail how +Memcheck's undefined value error detection (a.k.a. V bits) works. The +second paper describes in detail how Memcheck's shadow memory is +implemented, and compares it to other alternative approaches. + + + + + Using Valgrind to detect undefined value errors with + bit-precision. Julian Seward and Nicholas Nethercote. Proceedings + of the USENIX'05 Annual Technical Conference, Anaheim, California, + USA, April 2005. + + + How to Shadow Every Byte of Memory Used by a Program. + Nicholas Nethercote and Julian Seward. Proceedings of the Third + International ACM SIGPLAN/SIGOPS Conference on Virtual Execution + Environments (VEE 2007), San Diego, California, USA, June + 2007. + + + + + +The following paper describes Callgrind. + + + + A Tool Suite for Simulation Based Analysis of Memory Access + Behavior. Josef Weidendorfer, Markus Kowarschik and Carsten + Trinitis. Proceedings of the 4th International Conference on + Computational Science (ICCS 2004), Krakow, Poland, June 2004. + + + The following dissertation describes Valgrind in some detail -(some of these details are now out-of-date) as well as Cachegrind, +(many of these details are now out-of-date) as well as Cachegrind, Annelid and Redux. It also covers some underlying theory about dynamic binary analysis in general and what all these tools have in -common: - -"Dynamic Binary Analysis and Instrumentation." Nicholas -Nethercote. PhD Dissertation, University of Cambridge, November -2004. +common. + + + + Dynamic Binary Analysis and Instrumentation. Nicholas + Nethercote. PhD Dissertation, University of Cambridge, November + 2004. + + -- 2.47.2