[Gc] Regarding Data structures

Boehm, Hans hans.boehm at hp.com
Thu Feb 26 09:49:02 PST 2004

I assume you looked at

https://www.hpl.hp.com/personal/Hans_Boehm/gc/gcdescr.html ?

Everything is allocated in chunks whose size is a multiple of HBLKSIZE,
and which are aligned to HBLKSIZE.

Small objects are allocated by dividing a HBLKSIZE-sized chunk into equal

There is a separate data structure, the two level tree, which maps each
chunk to a corresponding header.  The lookup is done by taking different
pieces of a block address (typically 10 or 12 bits at a time) and using
it to index into nodes at one level of a tree.  This is very similar to
how the virtual-to-physical address mapping is handled on most hardware.

If this still isn't clear, more specific questions would be helpful in
clarifying the text on the web page.


> -----Original Message-----
> From: gc-bounces at napali.hpl.hp.com
> [mailto:gc-bounces at napali.hpl.hp.com]On Behalf Of vasantha selvi
> Sent: Thursday, February 26, 2004 1:35 AM
> To: gc at napali.hpl.hp.com
> Subject: [Gc] Regarding Data structures
> Hi,
>   I tried to get a highlevel picture of the datastructures 
> used for mainting 
> memory\heap by the gc.
> I refered "Two-Level Trees Structure for Fast Pointer" but 
> still I am able 
> to get the clear relationship between pointers and all the 
> datastructure. 
> Still I have big question on how the heap is split into
> different sized blocks and how it mapping is done.
> Please any could help me out with some more references docs 
> or can u urself 
> give some brief explanation of the total data structure.
> Awaiting for ue valuable responses,
> Regards,
> VS
> _________________________________________________________________
> Contact brides & grooms FREE! 
> https://www.shaadi.com/ptnr.php?ptnr=hmltag 
> Only on www.shaadi.com. Register now!
> _______________________________________________
> Gc mailing list
> Gc at linux.hpl.hp.com
> https://www.hpl.hp.com/hosted/linux/mail-archives/gc/

More information about the Gc mailing list