Related articles |
---|
garbage collection lex@cc.gatech.edu (Lex Spoon) (2003-07-13) |
Garbage collection wmccabe@hotmail.com (2004-07-28) |
Re: Garbage collection nmm1@cus.cam.ac.uk (2004-08-04) |
Re: Garbage collection sk@z.pl (Sebastian) (2004-08-04) |
Re: Garbage collection tmk@netvision.net.il (2004-08-05) |
Re: Garbage collection basile-news@starynkevitch.net (Basile Starynkevitch \[news\]) (2004-08-05) |
Re: Garbage collection nick.roberts@acm.org (Nick Roberts) (2004-08-09) |
Re: Garbage collection vbdis@aol.com (2004-08-10) |
Re: Garbage collection gah@ugcs.caltech.edu (glen herrmannsfeldt) (2004-08-11) |
Re: Garbage collection nick.roberts@acm.org (Nick Roberts) (2004-08-13) |
Re: Garbage collection t.zielonka@zodiac.mimuw.edu.pl (Tomasz Zielonka) (2004-08-13) |
[14 later articles] |
From: | tmk@netvision.net.il (Michael Tiomkin) |
Newsgroups: | comp.compilers |
Date: | 5 Aug 2004 14:11:36 -0400 |
Organization: | http://groups.google.com |
References: | 04-07-085 |
Keywords: | GC, comment |
Posted-Date: | 05 Aug 2004 14:11:36 EDT |
wmccabe@hotmail.com (William McCabe) wrote
> I am in the process of writing my own programming language and I would
> like to use garbage collection as a means for automatic memory
> management. I have decided that I want to implement a two-stage
> generational copying collector.
>
> I know how a copying and generational collector works but Im not sure
> how they work when put together. In my mind, generational is similar
> to coping in being that they both seperate the heap into two
> semi-spaces, but use totaly different methods to collect garbage. Can
> someone shed some light on this subject for me.
You can try to check what is done in Java, they use 4 generations
with different GC methods for different groups for one of their last
GCs:
http://java.sun.com/docs/hotspot/gc1.4.2/index.html
http://www-106.ibm.com/developerworks/java/library/j-jtp11253
Notice that there is a problem with references from the "old"
objects to the "new" objects, these references need special treatment.
BTW, I'm not sure that GC is a part of a compiler, it's usually a
part of runtime support of a language.
[It's runtime, but it's often useful to tweak the compiler to generate
code that makes GC easier. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.