Processor storage management

The system administers the use of processor storage (that is, central and expanded storage) and directs the movement of virtual storage pages between auxiliary storage slots and real frames in blocks of 4096 bytes. It makes all addressable virtual storage in each address space appear as central storage. Only the virtual pages necessary for program execution are kept in central storage. The remainder reside on auxiliary storage. The system employs the auxiliary storage manager to perform the actual paging I/O necessary to transfer pages in and out of central storage. The system also provides DASD allocation and management for paging space on auxiliary storage.

The system assigns real frames upon request from pools of available frames, thereby associating virtual addresses with central storage addresses. Frames are repossessed when freed by a user, when a user is swapped-out, or when needed to replenish the available pool. While a virtual page occupies a real frame, the page is considered pageable unless it is fixed by the FIX option of the PGSER macro, a PGFIX or PGFIXA macro, or obtained from a fixed subpool. The system also allocates virtual equals real (V=R) regions upon request by those programs that cannot tolerate dynamic relocation. Such a region is allocated contiguously from a predefined area of central storage and is non-pageable.

The PGSER macro provides all the paging services through the use of parameters. PGSER handles virtual addresses above or below 16 megabytes. The macros, PGFIX, PGFIXA, PGFREE, PGFREEA, PGLOAD, PGANY, PGOUT, and PGRLSE are supported to maintain compatibility with MVS/370, but it is recommended that you use the PGSER macro.

The paging services provided include the following:

The PGFIX, PGFIXA, PGFREE, and PGFREEA functions as well as the FIX and FREE options of PGSER are available only to authorized system functions and users and are described in the following topics. PGANY, PGLOAD, PGOUT, and PGRLSE as well as the ANYWHER, LOAD, OUT, and RELEASE options of PGSER are not restricted and are available to all users. PGSER and PGANY are described in this publication. PGLOAD, PGOUT, and PGRLSE are described in z/OS MVS Programming: Assembler Services Guide and z/OS MVS Programming: Assembler Services Reference IAR-XCT.

You can use paging services for storage that you define as shared through the IARVSERV macro. For information about sharing storage through IARVSERV, particularly for the PGSER FIX, PROTECT, and UNPROTECT options, see Sharing data in virtual storage (IARVSERV macro).