Browse Prior Art Database

Table Driven MVS/ESA Page Replacement using Summary Bits

IP.com Disclosure Number: IPCOM000107529D
Original Publication Date: 1992-Mar-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 2 page(s) / 126K

Publishing Venue

IBM

Related People

Manners, DC: AUTHOR [+2]

Abstract

Current MVS/ESA* page replacement techniques for virtual storage employ sophisticated logic for maintaining central storage frame queues on an address space basis. These include the ability to keep the queues properly ordered for least recently used (LRU) page replacement algorithms and the ability to select those queues that contain the appropriate/best candidates for page replacement. Undesirable characteristics of this approach include substantial, code complexity and performance overhead within the Real Storage Manager (RSM) component of MVS. Discussed below is a method to significantly relieve these problems by replacing the current queue-driven technique with a table- driven method using summary bits to locate and steal (i.e.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 50% of the total text.

Table Driven MVS/ESA Page Replacement using Summary Bits

       Current MVS/ESA* page replacement techniques for virtual
storage employ sophisticated logic for maintaining central storage
frame queues on an address space basis.  These include the ability to
keep the queues properly ordered for least recently used (LRU) page
replacement algorithms and the ability to select those queues that
contain the appropriate/best candidates for page replacement.
Undesirable characteristics of this approach include substantial,
code complexity and performance overhead within the Real Storage
Manager (RSM) component of MVS.  Discussed below is a method to
significantly relieve these problems by replacing the current
queue-driven technique with a table- driven method using summary bits
to locate and steal (i.e., perform page replacement for) central
storage frames backing virtual storage pages so that the central
storage can be made available for use elsewhere in the system.

      The use of summary bits in this algorithm, as will be seen,
directs the page replacement mechanism to those areas of virtual
storage that offer the most potential for frames that meet the
criteria to be stolen.  Likewise, large areas of virtual storage not
currently backed by central storage are avoided.  This is predicated
on the fact that in MVS/ESA-supported environments, virtual storage
tends to be referenced in clusters and, thus, age in clusters.

      Minimally, 370/XA virtual storage architecture is assumed.

      Discussed first will be a general description of a control
block structure representing virtual storage in MVS that would be
necessary to enable table-driven steal using summary bits.  In MVS,
virtual storage is maintained in 2-gigabyte addressing ranges called
address spaces.  These 2 gigabytes are partitioned into 4 kilobyte
adjacent, but disjoint, addressing ranges called pages.  Each page is
described and made addressable by an entry in a page table. A page
table contains 256 entries and thus describes and makes addressable
an addressing range of 256 consecutive pages, commonly called a
segment.  Each page table, also located in virtual storage, is
further described and made addressable by an entry in a higher level
page table, call it S1, which, therefore, describes a range of 256
contiguous segments.  S1 can then be described in an entry of an even
higher table, call it S2, that describes an even larger range of
contiguous virtual storage.  This process can be repeated until some
table Sn describes the full 2 gigabytes of virtual storage.

      Also required is a Page Frame Table (PFT) containing sequential
entries, called PFTEs, where each PTFE represents one specific and
unique frame (4 kilobytes) of central storage.  There is one and only
one PFTE for each frame of installed central storage.

      To enable this algorithm, each entry in the tables Si is
defined with a field of bits, called summary bits.  If the...