memory defragmentation

Patrick Tullmann tullmann at cs.utah.edu
Tue Feb 16 12:59:03 PST 1999


> That is a problem with most memory allocators.  What needs
> to be done is to move all allocated blocks of memory and
> essentially "de-fragment" the heap.  I don't think this would
> be practical, unless a copy gc was implemented.

If you need to coalesce page-sized chunks of memory, then memory
mapping tricks could be used to make any two (or more) free pages
"adjacent."  I'm sure there are papers describing these sorts of
tricks for GC-based systems, but I don't know of any off hand.  There
are probably big downsides to such an implementation, too.  But, I
don't think there is any other choice if moving collectors are not an
option.

-Pat


More information about the kaffe mailing list