Garbage collection algorithms

All techniques for automatic memory management boil down to keeping track of which objects are being used by the running program, in other words, which objects are referenced by other objects that are also in use. Objects that are no longer in use may be garbage collected. We will use the terms live and in use interchangeably.

It is hard to exactly place garbage collection techniques in different categories. With the risk of drawing fire from the academic community, we will use the term "tracing garbage collection" for everything except reference counting. Tracing garbage collection means building a graph of live objects at a collection event and discarding unreachable ones. The only other kind of technique that we ...

Get Oracle JRockit now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.