z/OS UNIX System Services Planning
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Controlling use of ESQA

z/OS UNIX System Services Planning
GA32-0884-00

The extended system queue area (ESQA) is a major element of z/OS® virtual storage above the 16MB line. This storage area contains tables and queues relating to the entire system, and duplicates above the 16MB line the system queue area (SQA). A number of services use base z/OS functions that use ESQA storage. Much of this storage is fixed, consuming main memory rather than only virtual storage. Installations having constraints on virtual storage or main memory can control the amount of ESQA storage used by the following services:
  • Shared memory
  • Memory map files
  • ptrace
  • fork (copy-on-write)
The following statements in the BPXPRMxx member of SYS1.PARMLIB are the primary means of controlling consumption by UNIX services:
  • MAXSHAREPAGES controls the maximum number of shared pages to be used for fork, shared memory, memory map files, and ptrace. ESQA storage is required for each shared page.
  • FORKCOPY determines whether fork should use copy-on-write support. Copy-on-write support should normally reduce the cost of fork by removing the need to copy all the parent's virtual storage to the child address space. However, on systems with storage constraints, the benefit of copy-on-write might be outweighed by the impact on ESQA storage.
    Follow these guidelines:
    • If the runtime library is in the link pack area, specify FORKCOPY(COPY).
    • If the runtime library is not in the link pack area, specify FORKCOPY(COW).
Other statements in the BPXPRMxx member provide more detailed control of how shared memory, and memory map files can be used.

See the BPXPRMxx topic in z/OS MVS Initialization and Tuning Reference for a complete description of each BPXPRMxx statement. For more detail on ESQA and other storage requirements for MVS™, see Evaluating virtual memory needs.

Tip: Consider adjusting MAXSHAREPAGES on an active system. Dynamically decreasing the number of pages available to ESQA might cause errors because, for those jobs, the ESQA limit might be reached or exceeded. It is possible that shared programs will not be able to be loaded and fork() might not succeed. This situation will exist until the workload adjusts to the new lower limit.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014