On Fri, 5 Nov 2010 09:03:35 -0400, Lizette Koehler wrote:

>what in the PDS structure reduced the pds member name to a maximum
>of 8 chars to start with.

A PDS directory has an 8 byte key and the member name in the directory is
found using the Search Key High or Equal channel command.  Each block is 256
bytes the records are of variable size.  The key for the block is the same
as the key for the last record in the block, with the key of the last used
block being set to all ones (X'FF...FF').  All of the records in the PDS
directory are maintained in sequence.

I don't know why eight bytes was selected for the length of the key, but can
only guess that it seemed a good compromise considering the high cost of
DASD at the time and the amount of processing needed when a member had to be
inserted or deleted.  When a member was deleted, removing that member from
the directory block, the first record on the next block would be examined to
see if it would fit in the empty space at the end of the block.  If it did,
it would be moved and the process would be repeated on the next block,
keeping the directory free of usable gas.  When a member is inserted, the
reverse process occurred when the last record in the block was pushed off
the end.

BTW, this same structure was used for CVOL catalogs, and that is the origin
of eight character nodes for cataloged data set names.  The same routines
were used to perform the manipulation of the entries the blocks for PDS
directories and catalogs.  A major difference was that in a CVOL there were
different some entries were "Index" entries, which pointed to the track that
contained the next level of the catalog.  Thus, for example, the high level
index would contain an entry for "SYS1" that would point to the track where
the SYS1 index could be found.  Then, within that part of the the catalog,
there was a record for "LINKLIB", containing the unit and volume information
for SYS1.LINKLIB.  Of course, there could be index entries in that level of
the catalog as well.

-- 
Tom Marchant

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to