garbage collection in a distributed environment
psu at jprc.com
Mon Jun 22 20:26:23 UTC 1998
A while back, the Modula-3 effort built a system called Network objects that
had a pretty decent scheme for distributed GC. check out the DEC SRC web
pages for the papers while SRC still exists. :)
Anyway, the basic idea was that the each local GC would keep track of which
objects on a machine had been exported to another machine. You would keep a
dummy handle on each of these objects to keep them from being GC'd locally,
and you'd keep a reference count on each exported object handle to keep
track of the # of remote references. If the reference count goes to zero,
you throw the handle away and allow the object to be GC'd locally.
This algorithm is tuned for the case where not too many objects are remotely
exported, and for the case where there are no export cycles. I think this is
For persistent GC, there is a thesis from CMU by Scott Nettles that
discusses persistent GC and transaction processing in the context of ML that
is pretty good. The Exodus project at wisconsin also published at least one
paper about this. And the Object database group at UMass has probably looked
into it some as well.
From: Patrick Logan <patrickl at servio.gemstone.com>
To: squeak at cs.uiuc.edu <squeak at cs.uiuc.edu>
Date: Friday, June 19, 1998 3:16 PM
Subject: Re: garbage collection in a distributed environment
>I think there is an interesting paper or two from U. Mass. about
>Paul Wilson's site at U. Texas may have something about persitent GC
>if not distributed.
>If you have Gemstone documentation, there is information about the
>functioning, but not the implementation, of its various distributed
>and persistent collectors. Maybe an old set is available somehow?
>Patrick Logan mailto:patrickl at gemstone.com
>Voice 503-533-3365 Fax 503-629-8556
>Gemstone Systems, Inc http://www.gemstone.com
More information about the Squeak-dev