GC interface idle and unimportant questions

Nic Ferrier nferrier at tapsellferrier.co.uk
Mon Jul 17 16:39:23 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?


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



Thanks for enhancing my fun. Hopefully I'll get a little bit more fun
before they come and take me away ha ha.


Nic


More information about the kaffe mailing list