|
From: <sv...@va...> - 2006-01-23 09:34:08
|
Author: njn Date: 2006-01-23 09:34:01 +0000 (Mon, 23 Jan 2006) New Revision: 267 Log: Remove the compressed V bits project, since it is close to finished. Modified: trunk/help/projects.html Modified: trunk/help/projects.html =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/help/projects.html 2006-01-22 02:20:49 UTC (rev 266) +++ trunk/help/projects.html 2006-01-23 09:34:01 UTC (rev 267) @@ -218,43 +218,6 @@ with a clean-up anyway. (Added September 13, 2005) =20 =20 -<h3>Addrcheck and/or compressed V bit representation</h3> -<p>Memcheck more than doubles the amount of memory a program uses, due -to its V bits. Addrcheck only increases memory by 1/8th. However, -Addrcheck has not yet been converted from the 2.x to the 3.x line. The -main issue is converting it to be 64-bit clean, particularly the shadow -memory. Also, Valgrind's structure has been rearranged a lot since 2.x -and Addrcheck has bit-rotted somewhat because of this. Getting -Addrcheck working is fairly straightforward, although it would require a -good understanding of how shadow memory works.</p> - -<p>An alternative is to make Memcheck use less memory. It shadows each -byte of memory with 8 V bits and 1 A bit. However, the 8 V bits are -almost always either all 0 or all 1, so there is great potential for -compressing the representation. Each byte could be shadowed by 2 bits, -with the following meanings:</p> - -<ul> -<li>00: unaddressable (but treated as defined; see the Memcheck - USENIX paper for details why);</li> -<li>01: addressable but all 8 bits are undefined;</li> -<li>10: addressable and all 8 bits are defined;</li> -<li>11: something else.</li> -</ul> - -<p>A secondary table would be needed for the "something else" case; it -would map memory addresses to V-bit/A-bit values. The OSet structure -(see include/pub_tool_oset.h) would be good for this.</p> - -<p>Hopefully this can be implemented with a negligible slow-down, since -the "something else" case is so rare. And the big advantage is the -large reduction in the amount of address space used, which is -particularly important on 32-bit machines such as x86. If compressed V -bits work well, we could probably get rid of Addrcheck altogether, since -the reduced memory usage is the main advantage it has over Memcheck. (A= dded -August 27, 2005)</p> - - <h3>Preserving debugging information</h3> <p>Currently, Valgrind unloads debugging information for shared objects when they are unloaded with dlclose(). If the shared object has a |