Overview

In the JDK 16 and 17 timeframe, we plan to enhance the CDS Archived Heap to implement the following:

As shown below, the Root List makes it easy to support other collectors.

Archived Heap in JDK 15

This section describes the implementation, and the problems, of the Archived Heap in JDK 15.

In JDK 15, the Archived Heap is supported only by G1 with compressed oops. Other types of GC are not supported. Uncompressed oops are not supported.

The Archived Heap is divided into two parts

The Open Region is problematic:

Luckily, in JDK 15, all unreachable objects in the Open Region are of type A. I.e., once we have made an archived object reachable, it will always be reachable.