gtpd1m0pDatabase Reference

Functional Description

It is not unreasonable to envision systems with millions of temporary data records maintained in file pool storage areas. Consequently, an effective and dynamic facility is required to maintain and manage a file pool complex capable of satisfying varying requirements in the exacting environment of a real-time system.

All pool addresses are assigned unique bit status indicators in an array. By interrogating a specific bit, a program can determine if a file record is available for use or if it is being used for the storage of data. Because of the enormous requirement for temporary data storage records, a complete array is prohibitive for an online system in terms of main storage utilization. Therefore, an effective method is necessary to maintain and manage a bit array that represents a large number of records.

The medium used by the pool facility for containing a bit array is called a directory record. A pool bit array is generally first constructed from information in the FACE table (FCTB), which is created by the FACE table generator (FCTBG). The bit array is then broken down into directories, each having a record header. The information in the record header provides a means of locating the bits in each directory in the full bit array.

To improve overall pool performance, the TPF system allows multiple directories to be brought into memory in sets called directory sets. These sets are kept in two directory set buffers called the active and standby directory set buffers.

Directory set buffers are carved (or allocated in main storage) at IPL time by the initializer program (CCCTIN). These buffers will be carved in high storage on 4-KB boundaries. The number of directories in each set defaults to 1. The number of directories per set can be changed by the user with the ZGFSP command. See TPF Operations for more information about the ZGFSP command. Based on feedback from a data reduction report, users determine an optimum assignment for the number of directories in a set, which is a trade-off between working storage usage and get/release file pool address activity. For additional information about determining the minimum number of pool directories, see TPF System Generation.

During cycle-up, pool restart code fills both of the pool buffer areas for the long-term sections, but fills only the active buffer for the short-term sections.

The following values are associated with directory set size:

Value
Description

ACTIVE
The number of directories in the set currently dispensing addresses.

STANDBY
The number of directories in the set about to dispense addresses.

NEW
The size to which the active and standby set sizes will change through reorder processing.

CARVE
The size, in directory increments, that is available to hold directories. This value represents the amount of storage carved by CCCTIN for the directory buffer. Set size cannot exceed this value until the processor is re-IPLed, allowing CCCTIN to allocate more space.

At IPL time, CCCTIN looks at the 3 set size values in keypoint 9 (CTK9):

Using the largest of the three set size values, CCCTIN carves memory. This area contains the pool directory set control area (ICY7PR) and, if carving for a short-term pool, will also contain: