on March 22, 2003
Garbage collection is a very interesting and complicated topic. To understand different garbage collection algorithms, one has to go through various research papers published over last 30 years or read the simplified descriptions presented in Java site and Bill Venners artima.com. This book does an excellent job in putting together all these algorithms in a logical order that gives us a chance to understand the different challenges sceintists and programming language authors faced and how the algorithms evolved over the time. The book starts with basic overview and history of commonly known algorithms: Reference counting, Mark and Sweep, and Copying algorithms. It then elaborates each of these algorithms, enumerates their pros and cons, and presents imporvements done by different researchers. After this, the book moves on to advanced algorithms like Generational algorithm and concurrent mark and sweep algorithm. I recommend this book to anyone interested in garbage collection. I haven't seen any other book on this topic. Even for programmers who mostly don't have to worry about GC as it is "automatically" done, this is a good book to understand and appreciate what goes on behind the scenes. Also, knowledge of the concepts in this book will be invaluable in performance tuning.