Learning how the spaces are used
To understand how these different spaces are used, we will explain them in two different stages. Initially, we will examine how the spaces are used in the minor GC algorithm. Subsequently, with the aid of an example, we will show the algorithm in action.
Understanding the minor garbage collection algorithm
Let us start with the minor GC algorithm. Figure 3.2 is high-level pseudocode of the minor GC process:
Figure 3.2 – Pseudocode of the minor garbage collection algorithm
Let us examine the process outlined in the preceding figure using a Given-When-Then scenario.
- Given: S0 as the target survivor and S1 as the source survivor spaces initially.
- When: Minor garbage collector runs. In other words, the eden space does not have enough space for an object that the JVM wishes to allocate.
- Then:
- All live objects from the eden space are copied to the S0 survivor space. The ages of these objects are set...