Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Uniform Competitive Environment for Pageable Storage Measurement

IP.com Disclosure Number: IPCOM000076784D
Original Publication Date: 1972-Apr-01
Included in the Prior Art Database: 2005-Feb-24
Document File: 3 page(s) / 49K

Publishing Venue

IBM

Related People

Ernsberger, WG: AUTHOR

Abstract

The flow diagram describes a program that permits the maintenance of a constant level of system-wide Competition for real pages. By examining its own page tables, the program dynamically adjusts the number of pages that it references so that a constant level of real-storage over commitment is maintained. This allows the real-storage requirements of any concurrently executing program to be directly measured at the competitive level.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 3

Uniform Competitive Environment for Pageable Storage Measurement

The flow diagram describes a program that permits the maintenance of a constant level of system-wide Competition for real pages. By examining its own page tables, the program dynamically adjusts the number of pages that it references so that a constant level of real-storage over commitment is maintained. This allows the real-storage requirements of any concurrently executing program to be directly measured at the competitive level.

The program executes as a problem program in a demand paging environment. Fig. A describes the required initializations.

The program first obtains an area from its work space (e.g., partition) consisting of more virtual pages than all pageable real storage available to the system. Once processing cycles are begun, a variable-length subset of this area will be used as the reference area.

The program then examines system tables to get the virtual address of the page tables covering the program's work space.

The displacement of the reference area into the program's work space is used to find the reference area page table entries.

Finally, the current reference area size is set to an arbitrary initial value.

Once initializations are made, the program functions in cycles of process and wait intervals as described in Fig. B.

The program first randomly selects a value to be used as the duration of the current process interval and issues a system request for this amount of real time. (Random intervals are used to avoid chance synchronization with other cyclic system events, since this could distort results.)

The program then examines all of those page table entries which correspond to pages in the current reference area to obtain the total number of these pages which are marked invalid (i.e., do not currently map to a real location).

If the total is less than a prespecified (threshold) value, the reference area size is increased by one page. A high total causes the size to be decreased by one page, and a total equal to the threshold results in no change to the reference area size. In this way, the program adjusts itself so that the number of invalid reference area pages is kept as close as possible to the threshold.

The program then randomly references the pages in the current reference area until interrupted by the system upon process interval expiration.

A wait interval is then randomly selected and requested of the system. This interval eventually expires, triggering the next process/wait cycle.

Because of the feedback mechanism detailed above, the reference area is incrementally increased during the early cycles until all available pageable storage belongs to the program. The reference area size finally levels off when

1

Page 2 of 3

the level of system over commitment is...