Paging Supervisor

In a VS operating system, all non-resident programs exist in complete form only on auxiliary storage, which is where the OS loads them first. and the total virtual storage size of all executing programs usually exceeds the size of the real storage of the computer.

In OS/390, both virtual and real storage are divided into 4096-byte chunks. The chunks are called pages on auxiliary storage, and page frames in real RAM. 

Paging is the name of the mechanism used to maintain the contents of real memory:

When a program is first loaded, it is copied into contiguous virtual storage pages on auxiliary storage, not into real storage page frames in RAM. 

From that initial DASD storage location, a page is copied as needed into a real storage page frame by the OS/390 Paging Supervisor. 

Page Frame Table

The Page Frame Table contains lists, AKA "queues", of non-empty page frames. The actual number of the Active Queues is determined by the systems programmers and operators responsible for generating and running the system efficiently.

Click here to see a Page Frame Table with three Active queues.

CHG and REF Bits

Each entry in the page frame queues contains a page frame number, as well as two bits, the change (CHG) and reference (REF) bits.

These bits are set on and off by hardware, and by software:

When the (software) Paging Supervisor copies a page from auxiliary storage into a page frame in RAM, it

  • turns off the frame's CHG and REF bits.

When any executing program modifies the content of a page frame, the system hardware

  • turns on that page frame’s CHG bit,

to indicate that the auxiliary storage copy of the page is now out of date.

When an executing program references the content of a page frame the system hardware

  • turns on that page frame’s REF bit.

The page frame table also contains two special page frame lists, plus one controlling number:

  • The Available Queue lists the page frames which do not currently contain an active page, and are thus available as targets for a page read from auxiliary storage.
  • The Page Out Queue lists the page frames that contain pages which are to be paged out, i.e. written back to auxiliary storage.
  • The Queue Maintenance Threshold is the number of available page frames which the Paging Supervisor will attempt to keep available at all times.

The role of the Paging Supervisor (PS) is to replenish the available page frames. On an OS/390 system, it accomplishes this by using a Least Recently Used (LRU) algorithm, in which

  • the page that have most recently been referenced are kept in main storage page frames,
  • while those that have been least recently referenced tend to migrate back to auxiliary storage.

Queue Maintenance

An algorithm is implemented by Queue Maintenance which  updates the paging tables, and causes the most inactive frames to be recycled. Click here to see the details of that LRU Paging Algorithm.

A Queue Maintenance cycle is activated whenever

  • a paging exception triggers an interrupt (indicating that a page must be loaded from auxiliary storage),

  • or the number of frames in the available queue drops below the threshold value.

When a Queue Maintenance cycle is complete, the available and page-out queues will have been replenished with page frames, and page-ins can proceed.

Queue Maintenance Threshold

When the number of available pages drops below the Queue Maintenance Threshold, pages from page-out frames will be written to Auxiliary Storage, and those now-unused frames will be moved to the list of available page frames.

Page-ins will take place until the number of available pages drops again, and queue maintenance will again be performed.


Click on Next in the above ACTION MENU for an Assignment on Paging worth 2% of your final mark.