While there is no practical limit to the virtual storage above
the bar, practical limits exist to the real storage frames and auxiliary
storage slots that back the area. To control the amount of real and
auxiliary storage that an address space can use for
private
memory
objects at one time, your installation can establish an installation
default MEMLIMIT that sets the total number of usable virtual pages
above the bar for a single address space. You set this default in
two ways:
- On the MEMLIMIT parameter in the SMFPRMxx parmlib
member
- Through the SET SMF or SETSMF commands
The default takes effect if a job does not specify MEMLIMIT on
the JCL JOB or EXEC statement, or
REGION=0 in the
JCL; the MEMLIMIT specified in an IEFUSI exit routine overrides all
other MEMLIMIT settings. If
REGION=0 is specified
in the JCL and the IEFUSI exit limits the REGION size but does not
set MEMLIMIT, MEMLIMIT is defaulted to the REGION size above 16MB.
Figure 1 shows how the system chooses which
MEMLIMIT applies.
Figure 1. How the system chooses which
MEMLIMIT applies
For more information, see the following publications:
The system enforces the MEMLIMIT when you issue the IARV64 GETSTOR
and CHANGEGUARD services. When your unconditional request for new
storage (either for a new memory object or for more usable storage
in an existing memory object) causes the MEMLIMIT to be exceeded,
the system abends the program. IBM® recommends
that programs use the COND parameter to make a conditional request
and check the return code to make sure the storage is available.
If a SET SMF or SETSMF command changes the default MEMLIMIT (either
the system default or the installation default) for an address space
that is already created the following changes occur:
- If the command raises the current default MEMLIMIT, all address
spaces whose MEMLIMIT values are set through SMF run with the higher
default.
- If the command lowers the current default MEMLIMIT, all address
spaces whose MEMLIMIT values are set through SMF keep their original
(higher) system default.
You cannot use SET SMF or SETSMF command to change the MEMLIMIT
value that is set through JCL or the IEFUSI installation exit.