]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Overhaul design+implementation chapter.
authorNicholas Nethercote <njn@valgrind.org>
Fri, 7 Aug 2009 04:07:20 +0000 (04:07 +0000)
committerNicholas Nethercote <njn@valgrind.org>
Fri, 7 Aug 2009 04:07:20 +0000 (04:07 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10733

docs/xml/design-impl.xml

index 6e7b5934f4b75e9b8abd4f3ae1db56746f93ce37..f891f3ba8be88c0d897edb4f2e9483301c94eabd 100644 (file)
@@ -1,6 +1,7 @@
 <?xml version="1.0"?> <!-- -*- sgml -*- -->
 <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-          "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+          "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
+[ <!ENTITY % vg-entities SYSTEM "../../docs/xml/vg-entities.xml"> %vg-entities; ]>
 
 
 <chapter id="design-impl"
 
 <para>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.</para>
-
-<para>A good top-level overview of Valgrind is given in:</para>
-
-<para>
-"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.</para>
-
-
-<para>The following two papers together give a comprehensive
-description of how Memcheck works:</para>
-
-<para>"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.</para>
-
-<para>"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.</para>
-
-
-<para>The following paper describes Callgrind:</para>
-
-<para>"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.</para>
+them, and others, are available on the <ulink url="&vg-pubs-url;">Valgrind
+publications page</ulink>.</para>
+
+<para>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.</para>
+
+<itemizedlist>
+  <listitem>
+    <para>
+    <command>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.</command>
+    </para>
+  </listitem>
+</itemizedlist>
+
+
+<para>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.
+</para>
+
+<itemizedlist>
+  <listitem>
+    <para><command>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.</command>  
+    </para>
+
+    <para><command>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.</command>
+    </para>
+  </listitem>
+</itemizedlist>
+
+
+<para>The following paper describes Callgrind.</para>
+
+<itemizedlist>
+  <listitem>
+    <para><command>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.</command>
+    </para>
+  </listitem>
+</itemizedlist>
 
 <para>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:</para>
-
-<para>"Dynamic Binary Analysis and Instrumentation."  Nicholas
-Nethercote.  PhD Dissertation, University of Cambridge, November
-2004.</para>
+common.</para>
+
+<itemizedlist>
+  <listitem>
+    <para><command>Dynamic Binary Analysis and Instrumentation.  Nicholas
+    Nethercote.</command>  PhD Dissertation, University of Cambridge, November
+    2004.</para>
+  </listitem>
+</itemizedlist>
 
 
 </chapter>