On 23 Jul 2009, at 21:10, Tom Duff wrote:
This is a survey article. Which method is used?
Sorry, missed by one: the correct reference is one paper north on Wilson's page: http://www.cs.utexas.edu/~oops/papers.html
Paul R. Wilson and Mark S. Johnstone. Real-Time Non-Copying Garbage Collection. Position paper for the 1993 ACM OOPSLA Workshop on Memory Management and Garbage Collection, Washington D.C. September 1993.
ftp://ftp.cs.utexas.edu/pub/garbage/GC93/wilson.ps
It is hard to get an idea of this without somebody testing it thoroughly. But a quick netsearch says that a non-copying GC gets problem with memory fragmentation. So there are research papers on how to handle that. This is also a problem that can be handled by adding more RAM. But what happens is that one avoids doing GC causing the problem, not solving the GC problem. Also, it is a uniprocessor GC (or so I though I saw). There is a comment here about OCaml have that restriction (last sentences in section): http://en.wikipedia.org/wiki/OCaml#Features Hans