Hitachi

Hitachi Application Server V10 Definition Reference Guide (For UNIX® Systems)


8.3 exmemnotexcludeclass.cfg

exmemnotexcludeclass.cfg is the configuration file for specifying the classes that are specified in the explicit memory management functionality exclusion configuration file but for which exclusion is to be disabled. This configuration file is referred to as the configuration file that disables exclusions from the explicit memory management functionality.

Description

exmemnotexcludeclass.cfg specifies the classes that are specified in the explicit memory management functionality exclusion configuration file but for which exclusion is to be disabled. When GC occurs, objects of the classes specified in this file are moved to the Explicit heap.

If you want to disable exclusion for the classes that are excluded from the explicit memory management functionality, update the configuration file that is stored in the file path below or create a new configuration file. Exclusion can be also disabled for classes that are specified in the explicit memory management functionality exclusion configuration file (sysexmemexcludeclass.cfg) that is provided by the system. If you create a new configuration file, specify the file path for the -XX:ExplicitMemoryNotExcludeClassListFile option.

Specifications in this configuration file have priority over those in the explicit memory management functionality exclusion configuration file.

The following explains the specification of each configuration file and the scope of the explicit memory management functionality, by using the package "com.sample" as an example. The package "com.sample" includes the following two classes: ClassA and ClassB. The following are specification examples of the configuration files.

Specification example of the explicit memory management functionality exclusion configuration file
com.sample.*
Specification example of the configuration file that disables exclusions from the explicit memory management functionality
com.sample.ClassB

The specification in the explicit memory management functionality exclusion configuration file includes both ClassA and ClassB. However, because the specification in the configuration file that disables exclusions from the explicit memory management functionality has priority, as shown in the figure below, the explicit memory management functionality is applied to ClassB. Only ClassA is excluded from the explicit memory management functionality.

[Figure]

Syntax

For types other than the array type:
fully_qualified_class_name_of_the_specified_class#comment
...
fully_qualified_class_name_of_the_specified_class
For the array type:
"["_repeated_by_the_number_of_dimensions_of_the_array#Lfully_qualified_class_name_of_the_specified_class;
#

For multidimensional arrays, specify [ the same number of times as the number of the dimensions. For example, for a three-dimensional array, specify [[[.

Example for a one-dimensional array of the class aaa.bbb.Myclass:

[Laaa.bbb.Myclass;

The following are the specification rules for this configuration file:

Storage location

installation_directory_for_JDK/usrconf/exmemnotexcludeclass.cfg

Examples

This specification example assumes that the package name is "com.sample" and the class structure is configured as shown in the figure below. In addition, class names are omitted in the explicit memory management functionality exclusion configuration file.

Figure 8‒2: Class structure example

[Figure]

Specification example of the explicit memory management functionality exclusion configuration file
com.sample.*
Specification example of the configuration file that disables exclusions from the explicit memory management functionality
com.sample.aaa.ClassB
com.sample.ddd.ClassE

In this example, according to the specification in the explicit memory management functionality exclusion configuration file, all classes (including the classes in the same package and those in sub-packages) are to be moved to the Tenured area. However, according to the specification in the configuration file that disables exclusions from the explicit memory management functionality, the objects of ClassB and ClassE are to be moved to Explicit memory blocks. As a result, the objects of ClassA, ClassC, and ClassD are moved to the Tenured area.

Notes

This configuration file is for specifying the classes that are specified in the explicit memory management functionality exclusion configuration file but for which the explicit memory management functionality exclusion setting is to be disabled. Do not use this configuration file to specify classes to be moved to Explicit memory blocks.