From: Nicholas Nethercote Date: Fri, 12 Jun 2009 23:40:04 +0000 (+0000) Subject: Tweak the README -- make its text match the website, get rid of some of the X-Git-Tag: svn/VALGRIND_3_5_0~497 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fb0ebe0dfefa6f10ceca04be4ac176828e317765;p=thirdparty%2Fvalgrind.git Tweak the README -- make its text match the website, get rid of some of the more detailed explanation (if they're reading the README, we probably don't need to convince them about Valgrind's wonderfulness). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10313 --- diff --git a/README b/README index 38c570e7e3..a32a88e5df 100644 --- a/README +++ b/README @@ -9,52 +9,37 @@ some useful information. For instructions on how to build/install, see the end of this file. -Valgrind works on most, reasonably recent Linux setups. If you have -problems, consult FAQ.txt to see if there are workarounds. +If you have problems, consult the FAQ to see if there are workarounds. + Executive Summary ~~~~~~~~~~~~~~~~~ -Valgrind is an award-winning suite of tools for debugging and profiling -Linux programs. With the tools that come with Valgrind, you can -automatically detect many memory management and threading bugs, avoiding -hours of frustrating bug-hunting, making your programs more stable. You can -also perform detailed profiling, to speed up and reduce memory use of your -programs. - -The Valgrind distribution currently includes five production grade -tools: a memory error detector, a thread error detector, a cache -profiler, a call graph profiler and a heap profiler. Experimental -tools are also included. They are distinguished by the "exp-" prefix -on their names. - -To give you an idea of what Valgrind tools do, when a program is run -under the supervision of Memcheck, the memory error detector tool, all -reads and writes of memory are checked, and calls to malloc/new/free/delete -are intercepted. As a result, Memcheck can detect if your program: - - - Accesses memory it shouldn't (areas not yet allocated, areas that have - been freed, areas past the end of heap blocks, inaccessible areas of - the stack). - - - Uses uninitialised values in dangerous ways. - - - Leaks memory. - - - Does bad frees of heap blocks (double frees, mismatched frees). - - - Passes overlapping source and destination memory blocks to memcpy() and - related functions. - -Problems like these can be difficult to find by other means, often -lying undetected for long periods, then causing occasional, -difficult-to-diagnose crashes. When one of these errors occurs, you can -attach GDB to your program, so you can poke around and see what's going -on. - -Valgrind is closely tied to details of the CPU, operating system and -to a less extent, compiler and basic C libraries. This makes it -difficult to make it portable. Nonetheless, it is available for -the following platforms: x86/Linux, AMD64/Linux and PPC32/Linux. +Valgrind is an award-winning instrumentation framework for building +dynamic analysis tools. There are Valgrind tools that can automatically +detect many memory management and threading bugs, and profile your +programs in detail. You can also use Valgrind to build new tools. + +The Valgrind distribution currently includes six production-quality +tools: a memory error detector, two thread error detectors, a cache and +branch-prediction profiler, a call-graph generating cache profiler, and +a heap profiler. It also includes one experimental tool, which detects +out of bounds reads and writes of stack, global and heap arrays. + +Valgrind is closely tied to details of the CPU, operating system and to +a lesser extent, compiler and basic C libraries. This makes it difficult +to make it portable. Nonetheless, it is available for the following +platforms: + +- x86/Linux +- AMD64/Linux +- PPC32/Linux +- PPC64/Linux +- x86/MacOSX +- AMD64/MacOSX + +Note that AMD64 is just another name for x86-64, and Valgrind runs fine +on Intel processors. Also note that the core of MacOSX is called +"Darwin" and this name is used sometimes. Valgrind is licensed under the GNU General Public License, version 2. Read the file COPYING in the source distribution for details. diff --git a/README_DEVELOPERS b/README_DEVELOPERS index 66fec3d118..cd4fbf1a04 100644 --- a/README_DEVELOPERS +++ b/README_DEVELOPERS @@ -101,6 +101,7 @@ without too much problem by following these steps: Steps (1)--(3) can be put in a .gdbinit file, but any directory names must be fully expanded (ie. not an environment variable). + Self-hosting ~~~~~~~~~~~~ To run Valgrind under Valgrind: