Data Areas
The directory exists on disk as 4K (page
size) records. The VOL1 label (cylinder 0 track 0 record 3), on the volume containing
the directory, points to the directory. The
directory starts with the first available
record.
The first UDIRBLOK is a dummy UDIRBLOK. Its UDIRDISP field points to the last UDIRBLOK in that record. The UDIRDASD field
peints to the next UDIR record, or, if it
is the last record, it contains zeros. The second UDIRBLOK in the first record points
to the UMACBLOK for that user, located in
the second record. In turn, the UMACBLOK points to the first UDEVBLOK for that user.
It is the second block in the second
record. The last UDEVBLOK for this user has
a pointer of all zeros. The directory entry for the second user
consists of a UDIRBLOK in the first record
and associated UMACBLOK, and UDEVBLOKs in
the second record. When a record becomes full, the chain continues into the next available record. When the directory is created, all UDIRBLOKs are grouped 169 blocks per
record. The UMACBLOK and UDEVBLOKs are
sequentially chained into a separate
record. If the record becomes full before
the end of the chain, the chain overflows
into the next available record.
The formula to find the number of records is: NO «BU+RM) X2) +ND + --------------
= NR
169 170 NU is the number of user records. NM is the number of MDISK describing a v irtual disk
T-!isk) cards
(net ND is the total number of MDISK (describing T-Disk sFace), SPOOL, LINK, SPECIAL, CCNSCLE, and DEDICATE
cards ;;; DR is the total number of records used.
To find the number of cylinders, divide
the total number of records by 32 for 2314/2319 devices, by 57 for 3330 series devices, or by 24 for 3340 and 2305 series
devices. To ensure that a new directory
will not overlap an existing directory,
allow space for two directories or allocate
a new directory each tile the directory is created.
The following data areas are used by the
directory program: The UD!VBLOK (user device block), built
in the UDEVBLOK or UeACELCK buffer. The urIRBLOK (user directory block),
built in the DIRBLOK buffer. The UMACBLOK (user machine block), built
in the UMACBLCK buffer.
These data areas, as well as a figure
showing the user directery fermat and
relationship of the above blocks,
described in the ltV37.Q ]!!! £2!tt;Q! ck§ ic Chapter q. tMKDIR--The Directcry program the are !l!.Q n1 J ,
Diagnostic Aids
Figure 4-3 lists the .essages issued by the
Directory prcgra.. The label of the
message and the associated .ethod cf
operation diagra. are included in the list. r-------------------------------------------------------------------------------------, Message Code DMKDIR751E
DMKDIR752E
DMKDIR753E DMKDIR754E DMKDIR755E
DMKDIR756E
DMKDIR757E
DMKDIR758E
DMKDIR760E
DMKDIR761E
DMKDIR762E
DMKDIR763E
DMKDIR764E
Label ERROR51! ERROR52 ERROR53 ERROR54A STARTIO READ WRITE ERROR55A WRITE ERROR56A ERROR57 ERROR58 CHAINDEV ERROR60 GETPAGE ERROR61A SCANDIRE ERROR62 READ ERROR63 STATE ERROR64 MSG04 MSG01 HSG03 MSG02 MSG02A Diagra. 4-2,4-4 4-1
4-1
4-5
4-5
4-1
4-1 !!essage Text INVALID OPERAND - XXXXXIXXXXXX. STATEMENT SEQUENCE ERROR FOLLOWING USER user OPERAND !!ISSING DEV ccu NOT OPERATIONAL 10 ERROR ccu CSW XXXXXXXXXXXXXXXX SENSE XXXXXXXXXXXX PROGRAM CHECK PSi = xxxxxxxxxxxxxxxx MACHINE CHECK RUN SEREP AND SAVE OUTPUT FOR CE DUPLICATE UNIT DEFINITION NOT ENOUGH SPICE ALLOCATED FOR DIRECTCRY VOLID READ IS volid1 NOT volid2 DIRECTORY STITE!!ENT !!ISSING INVALID FILENI!!E OR FILE NOT FOUND ERROR IN XXXXXXXX EOJ DIRECTODY NOT UPDATED EOJ DIRECTORY UP£ATED EOJ DIRECTORY UP£ATID AND ON LINE VM/370 USER IIRECTORY CREATICN PROGBAM RELEASE n
ENTER CABD REIDER DEVICE ADDRESS AND OPTIONS Figure 4-3. The Directory Program Messages
92 IBM VM/370 Service Routines Program Logic
Previous Page Next Page