Read these notes on automated memory management by Shriram Krishnamurthi, Ben Lerner and Joe Gibbs Politz.
Manual memory management (malloc/free, free list(s))
Reference counting (MF Part 1)
Garbage collection algorithm (MF Part 2)
Two-space copying collectors (Cheney’s algorithm and MF Part 3)
Overview of the Java GC - in particular look at the description of the generational GC, and the many GC parameters of a modern JVM.
Survey of GC Techniques [Wilson, 1992]