mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-14 15:30:29 -08:00
108 lines
4.9 KiB
HTML
108 lines
4.9 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<HTML>
|
|
<!-- $HopeName: MMweb_internal!Welcome.html(trunk.10) $-->
|
|
<HEAD>
|
|
<TITLE>Memory Management</TITLE>
|
|
<LINK REV="MADE" HREF="mailto:mm-hackers@harlequin.co.uk">
|
|
</HEAD>
|
|
<BODY>
|
|
<H1>Memory Management</H1>
|
|
|
|
<P>There used to be an Adaptive Memory Management Group; now there
|
|
isn't.</P>
|
|
|
|
|
|
<H2>The Memory Management Reference</H2>
|
|
|
|
<P>We still maintain <A HREF="http://www.harlequin.com/mm/reference/">The
|
|
Memory Management Reference</A> on Harlequin's external web site
|
|
(actually Xanalys', but this might change). The latest draft of the
|
|
next version is available
|
|
<A HREF="http://www-qa.cam.harlequin.co.uk/xanalys/html/software_tools/mm/">on
|
|
an internal server</A>; problems in it should be reported to <A
|
|
HREF="mailto:mm-web-team">mm-web-team</A>.</P>
|
|
|
|
|
|
<H2>Useful links</H2>
|
|
|
|
<P>Most useful links can be found in the
|
|
<A HREF="http://www.harlequin.com/mm/reference/links.html">The Memory
|
|
Management Reference links page</A>; this is just stuff that didn't
|
|
make it there, for one reason or another.</P>
|
|
|
|
<UL>
|
|
<LI> <A HREF="http://www.functionalobjects.com/">Functional Objects,
|
|
Inc.</A>
|
|
<LI> <A HREF="http://www.cs.ukc.ac.uk/events/ISMM2000/">The 2000
|
|
International Symposium on Memory Management</A>
|
|
<LI> <A HREF="http://www.stairways.com/programming/memorymadness.html">Memory
|
|
Madness - Understanding handles and how to use them</A>, article on
|
|
Mac memory management
|
|
</UL>
|
|
|
|
<!-- The rest is basically copied from Pekka's bookmarks -->
|
|
<H3>Allocators</H3>
|
|
<UL>
|
|
<LI><A HREF="http://www.cs.colorado.edu/%7Ezorn/Malloc.html">Zorn's list of Malloc/Free Implementations</A>
|
|
<LI><A HREF="http://gee.cs.oswego.edu/dl/html/malloc.html">Lea's memory allocator</A>
|
|
<LI><A HREF="http://www.cs.utexas.edu/users/emery/hoard/">Hoard: A Fast, Scalable and Memory-Efficient Allocator for SMPs</A>
|
|
<LI><A HREF="http://fourmilab.ch/bget/">The BGET Memory Allocator</A>
|
|
<LI><A HREF="http://members.tripod.com/%7Eradosoft/UltraHeap/">UltraHeap</A>
|
|
<LI><A HREF="http://www.biit.com/">Biit Inc, Home of HeapManager</A>
|
|
<LI><A HREF="http://www.ia.pw.edu.pl/Pl-iso/tex-info/libc/libc_27.html">The GNU C Library - Efficiency and Malloc</A>
|
|
<LI><A HREF="http://rabi.phys.columbia.edu/%7Ezack/code/malloc.html">Draft API for a Revised Memory Allocator</A>
|
|
<LI><A HREF="http://www.surriel.com/zone-alloc.html">Design for the Linux zone-based memory allocator</A>
|
|
<LI><A HREF="http://www.dent.med.uni-muenchen.de/%7Ewmglo/malloc-slides.html">Dynamic memory allocator implementations in Linux system libraries</A>
|
|
</UL><p>
|
|
<H3>Garbage collectors</H3>
|
|
<UL>
|
|
<LI><A HREF="http://www.hpl.hp.com/personal/Hans_Boehm/gc/">The Boehm garbage collector for C and C++</A>
|
|
<LI><A HREF="http://www.yl.is.s.u-tokyo.ac.jp/gc/">Parallel/Distributed Garbage Collectors</A>
|
|
<LI><A HREF="http://openresource.com/openres/orgs/DP/P/MALI.shtml">MALI Project</A>
|
|
<LI><A HREF="http://www-sor.inria.fr/projects/sspc/">Stub Scion Pair Chains</A>
|
|
<LI><A HREF="ftp://ftp.digital.com/pub/DEC/CCgc/">Bartlett's Mostly-Copying GC from DEC WRL</A>
|
|
</UL><p>
|
|
<H3>Memory debugging tools</H3>
|
|
<UL>
|
|
<LI><A HREF="http://www.cs.colorado.edu/%7Ezorn/MallocDebug.html">Zorn's list of Debugging Tools</A>
|
|
<LI><A HREF="http://www.pascal-central.com/koryn/memory.html">Pascal Flavoured Memory Integrity</A>
|
|
<LI><A HREF="ftp://metalab.unc.edu/pub/Linux/devel/lang/c/mpr-2.0.lsm">MPR</A>
|
|
</UL>
|
|
|
|
|
|
<H2>Papers</H2>
|
|
|
|
<P>The versions on webhost are <EM>for distribution within Harlequin
|
|
and Xanalys only</EM>. For externally published versions, follow
|
|
links to external sites, where provided.</P>
|
|
|
|
<H3>Pekka P. Pirinen: Barrier techniques for incremental tracing</H3>
|
|
|
|
<A HREF="http://www.acm.org/pubs/citations/proceedings/plan/286860/p20-pirinen/">
|
|
published version</A><BR>
|
|
<A HREF="http://webhost.cam.harlequin.co.uk/%7Emm/barrier1.ps">draft, Postscript,
|
|
6 pages, 182 KB</A><BR>
|
|
<A HREF="http://webhost.cam.harlequin.co.uk/%7Emm/barrier1.pdf">draft, PDF 2.1,
|
|
6 pages, 72 dpi, 136 KB</A><BR>
|
|
Presented at
|
|
<A HREF="http://www.sfu.ca/%7Eburton/ismm98.html">the 1998
|
|
International Symposium on Memory Management</A>.
|
|
|
|
<BLOCKQUOTE>Abstract: This paper presents a classification of barrier
|
|
techniques for interleaving tracing with mutator operation during an
|
|
incremental garbage collection. The two useful tricolour invariants
|
|
are derived from more elementary considerations of graph traversal.
|
|
Barrier techniques for maintaining these invariants are classified
|
|
according to the action taken at the barrier (such as scanning an
|
|
object or changing its colour), and it is shown that the algorithms
|
|
described in the literature cover all the possibilities except one.
|
|
Unfortunately, the new technique is impractical. Ways of combining
|
|
barrier techniques are also discussed.</BLOCKQUOTE>
|
|
|
|
Comments to <A HREF="mailto:pekka">Pekka</A>, please.
|
|
|
|
<HR>
|
|
<ADDRESS>Contact <A HREF="mailto:mm-hackers">mm-hackers</A></ADDRESS><BR>
|
|
Last modified: $Date: 2000/03/13 14:00:19 $
|
|
</BODY>
|
|
</HTML>
|