GC interface idle and unimportant questions

Godmar Back gback at cs.utah.edu
Mon Jul 17 22:14:44 PDT 2000


> 
> 
> I am having some fun trying to work out kaffe's GC implementation.
> 
> Before they lock me up for having no life can someone just confirm
> some stuff for me:
> 
> 
> 1. the kaffe gc interface defined in kaffevm/gc.h defines how the VM
> talks to the GC?
> ie: the VM interacts with the heap only through the functions
> available in the:
>    GarbageCollectorInterface_Ops
> struct defined in that file.
> 
> The upshot of that is that if I wanted to build a new GC I would
> re-implement the gc.h "interface" 
> 
> 
> 2. I understand that the interface is not *completly* abstracted
> yet?
> but it's as near as dammit as far as I can see? 
> ie: gc.c references the current implementation specifically and
> instead there needs to be a configuration switch, eg:
> --with-gc=[implementation]
> 
> 
> 3. the current implementation is kaffevm/mem/gc-incremental.c?
> This is the mark and sweep gc described by Godmar in the FAQ yes?
> 

Answer to 1.-3.: more or less.  That's the idea at least.

> 
> 4. kaffevm/mem/gc-mem.c is not part of the external GC interface?
> But is used only by the gc-incremental.c implementation?
> 

Yes. gc-mem.c is the memory allocator part for small and large
blocks.

	- Godmar


More information about the kaffe mailing list