This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
Re: GC questions.
- To: Michael Livshin <mlivshin at bigfoot dot com>
- Subject: Re: GC questions.
- From: Han-Wen Nienhuys <hanwen at cs dot uu dot nl>
- Date: Sun, 21 May 2000 16:48:47 +0200 (CEST)
- Cc: guile at sourceware dot cygnus dot com
- References: <14631.60541.796607.110356@dokkum.cs.uu.nl><s3itw8t29c.fsf@bigfoot.com>
- Reply-To: hanwen at cs dot uu dot nl
mlivshin@bigfoot.com writes:
> > * I understood from Greg's notes, that one of the problems with
> > copying GC is how to deal with heap pointers in smobs? But isn't that
> > easy? To deal with this requires a small API change: every object has
> > to be marked during GC, so how about defining a new function
> > get_new_location (), like this?
[..]
> > up, by defining scm_gc_mark () to be an alias for the conservative
> > mark function.
>
> I'm not sure I understand. what is the relevant place in Greg's
> notes?
http://home.thezone.net/~gharvey/guile/ggc-notes.txt
<snip>
There is another problem with using memory protection, in that it
doesn't work with objects stored outside the heap; for example, an
smob that contains a heap pointer won't be mem protected, so we will
miss that object if it gets modified, and screw things up
royally. This is one of the hardest problems, actually, because it
means finding a solution that gives good performance but doesn't
require coders to know and understand the guts of the garbage
collector. I'll not deal with it now (Sun Nov 8 02:33:15 1998),
because it falls into the class of problems that I discovered after I
thought I'd thought through everything, and it needs a bit of time to
bounce around in my head.
--
Han-Wen Nienhuys, hanwen@cs.uu.nl ** GNU LilyPond - The Music Typesetter
http://www.cs.uu.nl/people/hanwen/lilypond/index.html