[Gc] Atomic page-sized blocks

David Jones dej at inode.org
Thu Feb 26 14:07:36 PST 2004

In order to debug memory use in my application, I am traversing the collected 
heap (using GC_apply_to_all_blocks()) and testing each object using 

I am coming across several objects allocated pointer-free, each 4096 bytes 
long, my page size.  I cannot find where in my application I am allocating 
them - I am using the debug versions of GC_malloc_*() and all my other 
objects are tracing back properly.

Does the collector use zeroed pages interally for some reason, say, awaiting 
redeployment for future allocations?  Strange that they are marked, though.  
Is GC_is_marked() reliable for objects bigger than a page?

I am seeing 10-20% of my heap space taken by these objects, so I am interested 
in tracking them down.

More information about the Gc mailing list