Auxiliary Directories When a disk is accessed, each module that fits the description specified
on the ACCESS command is included in the resident directory. An
auxiliary directory is an extension of the resident directory and
contains the name and location of certain CMS modules that are not
included in the resident directory. These modules, if added to the
resident directory, would significantly increase its size, thus
increasing the search time and storage requirements. An auxiliary
directory can reference modules that reside on the system (S) disk; or,
if the proper linkage is provided, reference modules that reside on any
other read-only CMS disk. To take advantage of the saving in search
time and storage, modules that are referenced via an auxiliary directory
should never be in the resident directory. The disk on which these
modules reside should be accessed in a way that excludes these mOdules.
How to Add an Auxiliary Directory
To add an auxiliary directory to eMS, the system programmer must
generate the directory, initialize it, and establish the proper linkage. Only when all three tasks are completed, can a module described in an
auxiliary directory be properly located.
GENERATION OF THE AUXILIARY DIRECTORY An auxiliary directory TEXT deck is generated by assembling a set cf DMSFST macros, one for each module name. The format of the DMSFST macro
is: DMSFST L filename ( (filename r , ; , filetype I) I L .J ![,aliaSnalle1 filename,filetype is the name of the module whose File Status Table
(FST) information is to be copied.
aliasnalle is another name by which the module is to be known.
INITIALIZING THE AUXILIARY DIRECTORY After the auxiliary directory is generated via the DMSFST macro, it must be initialized. The CMS GENDIRT command initializes the auxiliary
directory with the name and location of the modules to reside in an
Part 3. Conversational Monitor System (CMS) 319
auxiliary directory. By using the GENDIRT command, the file entries for
a given module are loaded only when the module is invoked. The format
of the GENDIRT command is:
GENDIRT directoryname [targetmode]
directoryname is the entry point of the auxiliary directory.
target mode is the mode letter of the disk containing the modules
referenced in the auxiliary directory. The letter is the
mode of the disk containing the modules at execution
time, not the mode of the disk at the initialization of
the directory_ At directory creation, all modules named
in the directory being generated must be on either the
A-disk or a read-only extension (that is, not all disks
are searched) The default value for targetmode is S, the system disk. It is your responsibility to determine
the usefulness of this operand at your installation and
to inform users of programs utilizing auxiliary
directories of the proper methodes) of access. ESTABLISHING THE PROPER LINKAGE
The CMS module, DMSLAD, entry point DMSLADAD, must be called by a user
program or interface to initialize the directory search order. The
subroutine, DMSLADAD, must be called via an SVC 202 with register 1
pointing to the appropriate PLIST. The disk containing the modules
listed in the auxiliary directory must be accessed as the mode
specified, or implied, by the GENDIRT command before the call is issued.
If the GENDIRT command has not been used, the user will receive the
messages: "File not found" or "Error reading file." Th-e coding necessary for the call is: LA R1,PLIST SVC 202 DC AL4(error return)
This call must be executed before the call to any module that is to
be located via an auxiliary directory.
The PLIST should be: PLIST DS DC
DC
DC OF CL8'DMSLADAD' V (d irectoryname) F'O' The auxiliary directory is copied into nucleus free storage. The
Active Disk Table (ADT) for the targetmode expressed or implied by the
GENDIRT command is found and its file directory address chain (ADTFDA)
is modified to include the nucleus copy of the auxiliary directory. A
flag, ADTPSTM, in ADTFLG2 is set to indicate that the directory chain
has been modified. 320 IBM VM/370 System Programmer's Guide
Previous Page Next Page