The file catalog contains an entry for every file on the pubset, including itself; This entry includes information on the file attributes, the protection criteria and the location of the file on the volume.
Figure 7: Structure of the file catalog
The first catalog block (4K block) contains data for management of the file catalog. The catalog entries (CEs) are stored in the subsequent catalog blocks. The catalog is structured according to user IDs. Any given block of a catalog contains only CEs of one user ID; the CEs are stored sequentially and unsorted. If there is not enough space in the block to accommodate additional CEs, another block is requested and chained to the last block of this user ID.
All users in the catalog are managed together with the beginning of their user chain PBN, (primary block number) in the PBN table of the catalog.
When a new user ID is added to the user catalog of an SF pubset, a new catalog block, the PBN of this user ID, is reserved automatically. The logical block number (LBN) of this catalog block is entered in the PBN table together with the user ID.
In an SM pubset initially only one entry in the PBN table of the control volume set catalog is generated for the new user. PBN assignment in an SM pubset catalog takes place only when the first CE of the user is stored in this catalog.
The second 4K block of the file catalog always contains the CE of the file catalog itself and is the beginning of the user chain of the TSOS ID.
The logical block size in TSOSCAT is 4-Kbytes; a logical block number (LBN) is maintained as the number of the logically smallest PAM page stored in the 4-Kbyte block.
A catalog block can accommodate from 1 to 13 catalog entries. The maximum length of an entry is 4079 bytes, the minimum length (including a 1-byte file name) is 301 bytes, as long as no space has been assigned. Otherwise this value increases by the length of the extent list. This length is at least 14 bytes for volumes < 32 Gbyte and 16 bytes for volumes >= 32 Gbyte.
Catalog formats
Whenever possible, BS2000 OSD/BC from V11.0 onwards only supports the EXTRA LARGE catalog format (max. Size 64,016 PAM pages). The NORMAL and LARGE catalog formats are now obsolete.
Catalogs of a preceding version in the NORMAL or LARGE format are automatically converted into the EXTRA LARGE format as soon as the pubset is imported exclusively or as master pubset. At the same time, the special catalogs are renamed as well:
:<catid>:$TSOS.TSOSCAT.#MIG
to:<catid>:$TSOS.TSOSCAT.#M00
:<catid>:$TSOS.TSOSCAT.#PVT
to:<catid>:$TSOS.TSOSCAT.#J00
:<catid>:$TSOS.TSOSCAT.#JVC
to:<catid>:$TSOS.TSOSCAT.#P00
These converted catalogs can be used in a preceding version as well.
Only when a shared pubset is imported in slave mode, the catalog format specified by the pubset master is retained. Even in this case, the NORMAL and LARGE catalog formats are only possible if the master runs in an older version.
File catalog on SF pubsets
The file catalog is stored in the file called :<catid>:$TSOS.TSOSCAT
. It contains all user and system files as well as the job variables.
File catalog on SM pubsets
Unlike with SF pubsets, the catalog of an SM pubset is made up of several catalog files. An example is used to illustrate its structure in the figure below. In the example the SM pubset consists of the three volume sets A, BLA and C7, the catalog ID is X, and the catalog format is EXTRA LARGE.
Subcatalogs with catalog format EXTRA-LARGE
With the catalog format EXTRA-LARGE, up to 100 subcatalogs are created with each necessary catalog enhancement, with the names:
:<catid>:$TSOS.TSOSCAT.#Mnn
(nn
= 00 through 99)
:<catid>:$TSOS.TSOSCAT.#Pnn
(nn
= 00 through 99)
:<catid>:$TSOS.TSOSCAT.#Jnn
(nn
= 00 through 99)
Figure 8: Structure of the file catalog of an SM pubset
Explanation
:X:$TSOS.TSOSCAT.A :X:$TSOS.TSOSCAT.BLA :X:$TSOS.TSOSCAT.C7
Each volume set of an SM pubset contains a volume-set-specific catalog file with the catalog entries for the files stored on it. The path name of the volume-set-specific catalog file is composed of the pubset ID and the volume set ID, as follows: :<catid>:$TSOS.TSOSCAT.<volume-set-id>.
The catalog files below are all located on the control volume set of the SM pubset:
:X:$TSOS.TSOSCAT.#Mnn
Catalog entries for files migrated to a background level as well as cataloged files which do not occupy any space.
:X:$TSOS.TSOSCAT.#Pnn
Catalog entries of files on Net-Storage, tape files and private disk files.
:X:$TSOS.TSOSCAT.#Jnn
Container for job variables.
:X:$TSOS.TSOSCAT.$PFI
Catalog index file, used for saving the catalog index when an SM pubset is deactivated. This file is an administrative entity superordinate to SM pubset catalogs and contains information on the location of a file or a job variable in the SM pubset.
:X:$TSOS.TSOSCAT.$NLO
Name list, used for data security. If a volume set fails, this file can be used to reconstruct the data lost as a result. The name list contains one entry for each file existing in a volume set of the SM. There are also entries for temporary files. Only job variables and files which are stored in catalogs on the control volume set are not referenced in this list, because if the control pubset fails the name list can no longer be accessed. The entry for a CE in the name list comprises the ID of the catalog which contains the CE, the user ID of the file owner, and the name of the file.
:X:$TSOS.TSOSCAT.$NLC
Name list copy, required to reconstruct the name list after a system crash.
The name list and the copy of the name list should be created with an equal size because each time the catalog index is restored the name list becomes the copy of the name list and vice versa. When managing the name list, CMS might then only take the smaller of the two file sizes into account.
File catalog on Net-Storage volumes
Each Net-Storage volume has its own file catalog with the name .BS2FSCAT
.
For each file which is stored on this Net-Storage volume this file catalog contains a copy of the catalog entry in the TSOSCAT of the pubset to which the Net-Storage volume is assigned.