7.3 Overview of memory space used in the Explicit Memory Management functionality
This subsection describes the structure of an Explicit heap, which is the memory space used by the Explicit Memory Management functionality. For the configuration of memory space used by the Java VM, see also 7.2.6 Configuration of memory space used by JavaVM when using serial GC and JavaVM options in the uCosminexus Application Server System Design Guide.
The Explicit heap is a memory space in which no GC occurs. It is configured from multiple memory blocks. Memory blocks that configure an Explicit heap are called Explicit memory blocks. The Explicit heap is a concept that represents all Explicit memory blocks.
Execute operations such as initialization and release for each Explicit memory block unit.
The following figure shows the concept of an Explicit heap.
|
|
Set the maximum size of an Explicit heap in the JavaVM startup option -XX:HitachiExplicitHeapMaxSize. For details on the -XX:HitachiExplicitHeapMaxSize option, see -XX:HitachiExplicitHeapMaxSize (Option for specifying the maximum size of the Explicit memory block) in the uCosminexus Application Server Definition Reference Guide. You can generate (initialize) maximum 1,048,575 Explicit memory blocks. You cannot generate Explicit memory blocks more than the maximum number.
- About the time when the Explicit heap area is secured:
-
The actual memory area of the maximum size of the Explicit heap, that you have specified in the -XX:HitachiExplicitHeapMaxSize option, is secured when JavaVM is started. The area is secured as a continued area from the Java heap and Metaspace area.
If the memory required to place Java objects in the Explicit memory blocks is insufficient, the memory area for Explicit memory blocks is secured from the area of the Explicit heap that was secured when starting JavaVM. For this reason, the memory area in the Explicit memory blocks is divided into multiple areas.
The following figure shows the image of using the virtual memory space.
Figure 7‒5: Image of using the virtual memory space Although the area for an Explicit heap is a continued area, the area used in a single Explicit memory block is non-continuous.