SETTING OR RESETTING SYSTEK ENVIRONMENT OPTIONS Once the CKS/DOS environment is initialized, the flags and control
blocks set during initialization can be modified and manipulated to
perform the functions specified by commands entered at the console.
This section describes the modules that set and reset the system environment options. That is, they set those options that control
co.piler execution and that control the configuration of logical and
Fhysical units in the system.
The CKS/DOS OPTION command invokes module DKSOP!, which sets either the
default options for the compiler or the options specified on the command
line. The ncnstandard language translator options switch and the jcb
duration indicator byte are altered. Options are set using two control
words located in the partition communication region (EGCOM). Bits in
bytes JCSW3 or JCSW4 are set, depending on the options specified. Module DMSASN is invoked when the ASSGB command is entered. DKSASN first scans the command line to ensure that the logical unit being
assigned is valid for the physical unit specified (for example, SYSLCG must be assigned to either the virtual console or the virtual printer). Once the command line is checked, PUB and LUB entries are modified to
reflect the specified assignment.
For the PUB entry, the device type is determined (via DIAG 24) and
the device type code is placed in the PUB. Other modifications are made
to the PUB depending on the specified assignment. The LUB entry is then
mapped to its corresponding PUB. The function of DMSLLU is to request a list of the physical units
assigned to logical units. It performs this function by referencing
information located in the CMS/DOS data blocks, specifically LUB, and PUB. Another data block, the next in class (NICL) table is
also referenced.
The information on the com.and line is scanned and the appropriate items are displayed at the user's console. If an option (EXEC or APPEND) is specified, an EXEC file is created ($LISTIO EXEC A1) to
contain the output. If EXEC is specified, any existing $LISTIO EXBC 11 file is erased and a new one is created. If APPEND is specified, the
new file is appended to the existing file. CKS Method of Operation and Program Organization 2-139
DMSDLB is invoked when the CMS/DOS DLBL command is entered. DMSDLB associates a DTF (Define The File) table filename with a logical unit.
This function is performed by creating a control block called a DOSCE, which contains information defining a DOS file used during jcb
execution. DLBL is valid only for sequential or disk devices.
This information parallels the label information written on a real BOS SYSRES unit under DOS/VS. The DOSCB contains such information as
the name, type, and mode of the referenced dataset, its device type
code, its logical unit specification, and its dataset type (SAM or YSAM) A DOSCB is created for each file specified by the user during a
terminal session. The DOSCBs are chained to each other and are anchored
in NUCON at the field DOSFIRST. The chain remains intact for the entire
session, unless an abend occurs or the user specifically clears an entry
in the the DOSCB chain. A given DOSCB is accessed when an OPEN macro is
issued from an executing user program.
The overall logic flow for DMSDLB is as follows:
1. Scans the command line to ensure that any options entered are valid
(that is, anything to the right of the open parenthesis).
2. Processes the first operand (ddname or *). When ddname is
specified, loop through the DOSCB chain to find a matching ddname.
If none is found, DMSDLB calls DMSFRE to get storage to create a
new DOSCB for this file. The old copy of the DOSCB is then saved
so that, in case of errors during processing, it can be retrieved
intact. The new copy of the DOSCB contains updates and DOSCB replaces the old copy if there are no errors.
3. The mode specification is checked to ensure that it is a valid mode letter; if the file is a CMS file, the mode letter must specify a CMS disk. If DSN has been specified, the mode letter must be for a non-CMS disk.
4. Process each option on the command line appropriately.
5. If EXTENT or MULT is specified, a separate tlock of free storage is
obtained to contain information about the extent, for example, a
block is obtained to contain the DOS data set name. 5. Check for errors. If there are errors, any blocks created during
processing are purged and an error message is issued. If there are
no errors, restore the old block, which has heen modified to
reflect current processing, and return control to DHSITS. PROCESS CMS/DOS OPEN AND CLOSE FUNCTIONS The CMS/DOS OPEN routines are invoked in response to DOS OPEN macros.
They operate on DTF (define the file) tables and ACE (access method
control block) tables created when the DTFxx and ACB macros are issued
from an executing user program. These tables contain information such as
the LOG unit specification for the file, the DTF type of the file, the
device code for the file, and so forth. The informaticn in the tables
varies depending upon the type of DTF specified (that is, the table
generated by a unit record DTF macro is slightly different from the
table generated by a DTF disk macro). 2-140 IBM VM/370 System Logic and program Determination--Volume 2
Previous Page Next Page