In performing the functions requested in this file, AMS may require
execution of DOSjVS iSAM phases located in the CMSVSAM DCSS. The CMSVSAM DCSS is loaded when AMS opens the VSAM catalog for processing. On return fro. DOS/VS code, DMSAMS purges the CMSAMS DCSS, and issues
DLBL commands for the SYSIPT and SYSLST files to clear the DOSCB's for
these ddnames. Control is then passed to DMSVSR, which
the user program was not in the CMSjDOS entered, the SET DOS OFF command is issued DMSVSR, DMSAMS performs minor housekeeping CMS. purges the CMSVSAM DCSS. If
environment when DMSAMS was by DMSVSR. Upon return from tasks and returns control to
Executing a VSAM Function for a DOS User
When a VSAM function, such as an OPEN or CLOSE macro, is requested from DOS throqgh the CMSDOS ness to the CMSVS!M DCSS, thus giving control to DOS/VS VSAM phases. Figure 20 shows the
relationships in storage between the user program, the CMSDOS DCSS, and
the CMSiSAM DCSS. The description below illustrates the overall logic
of that control flow. CMS/DOS SiC HANDLING
There are four CMS/DOS routines that handle DMSBOP, DMSCLS, and DMSXCP. Within DMSDOS, support VSAM requests. These are described
Environment Under CMS." VSAM requests: DMSDOS, several SVC functions
in "Simulating a DOS DMSDOS VSAM processing involves handling of SVC 65 (CDLOAD), which
returns the address of a specified phase to the caller. DMSDOS searches
both the shared segment table and the nonshared segment table for the CMSDOS and CMSV?AM segments, because both could be in use. Both of
these segment tables contain the name of each phase comprising that
segment followed by the fullvord address of that phase within the
segment.
During SVC 65 processing, DMSDOS checks to see if the address of
IKQLAB is being requested. IKQLAB is the VSAM routine that returns the
label information generated by DLBLs and EXTENT cards in DOS/VS systems.
If this is the case, DMSDOS saves the address of IKQLAB in NUCON for
later use by DMSXCP. If VSAM has not been loaded, a DIAGNOSE 64 (LOADSYS) is issued to
load the CMSVSAM DCSS. When DMSBOP is entered to process ACBs, it checks to see if CMSVSAM is
loaded. If VSAM has not been loaded, DIAGNOSE 64 is issued to load the
2-116 IBM VM/370 System Logic and program Determination--Volume 2
I DOS VSAM Program CMSDOS DCSS DOS Transient
Area I OPEN ACB1 __ rl $$BOVSAM __ I I ----J I $$BCVSAM CLOSE ACB1
B-disk
for OS or DOS User $$BACLOS Figure 20. The Relationships in Storage between the User Program and
the CMSDOS and CMSVSAM DCSSs CMSVSAM ncss. DMSBOP then
issues a DOS OPEN via SVC 2
into the DOS transient area.
initializes the transient work area and
to bring the VSAM OPEN $$BOVSAM transient When VSAM processing completes, control returns to the user program directly. DMSCLS processing is nearly the same as processing for DMSBOP. When DMSCLS is entered, it checks for an ACB to process. If there is one,
the $$BCVSAM transient work area is initialized and SVC 2 is issued to
FETCH the VSAM CLOSE transient $$BCVSAM into the DOS transient area. When the VSAM CLOSE routines complete processing, control returns to the
user program, as in the case of OPEN. When DMSXCP processes an EXCP request, it determines if the request is
from IKQLAB (that is, to read the SYSRES label information). If so, the
label information area record is filled in from the appropriate DOSCE. (DMSXCP determines that the caller is IKQLAB by co.paring the address of
the caller with the address stored in NUCOI by DMSDOS, as described
above. ) CMS Method of Operation and Program Organization 2-117
Previous Page Next Page