Each PAM page of a conventional K-PAM file has a 16-byte PAM key, located outside the page, in which DMS management information is kept.
Specifying the operand BLKSIZE=(STD,n) in the FILE or FCB macro or the operand BUFFER-LENGTH=*STD(n) in the ADD-FILE-LINK command enables several PAM pages to be combined to form one data block. However, even here, file processing with UPAM is based on the PAM page, i.e. it is always individual PAM pages that are read or written.
In a K-PAM file in which n PAM pages have been grouped together by means of the operand BLKSIZE=(STD,n) or BUFFER-LENGTH=*STD(n) to form one data block, this block has the following structure:
All n * 2048 bytes of the data block are available for user data, since the DMS management information is stored in the 16-byte PAM key. The PAM key has the following structure:
where:
CFID | Coded File IDentification: the encrypted name of the file to which the PAM page belongs (or last belonged). By comparing this with a corresponding CFID in the catalog entry for the current file, DMS can determine whether the data in the PAM page belongs to the file or whether the page is reserved (for this file) but does not yet contain data. |
VN | Version number: the version number of a PAM page is updated or evaluated by DMS every time the file is created, modified, set up or deleted. It permits, among other things, partial backup of a file by means of ARCHIVE or HSMS. This is a save run in which only those PAM pages of a file which have been modified since the last partial or incremental backup are saved. |
LHP | Logical Half-Page number: this is used for consistency checking for files and for decompression when a file is recovered by ARCHIVE or HSMS from a backup copy. |
User section | This part of the PAM key is not used by UPAM and is available to the user. However, when processing SAM and ISAM files with UPAM, it should be noted that SAM and ISAM use this field. |