Functional Information
The most important thing to remember about C"S, from a debugging
standpoint, is that it is a one-user system. The supervisor manages one user and keeps track of only one user
s file and storage
chains. Thus, everything in a dump of a particular machine relates only
to that virtual machine's activity. You should be familiar with register usage, save area structuring,
and control block relationships before attempting to debug or alter CMS. Register Usage When a C"S routine is called, R1 must point to a valid parameter list (PLIST) for that program. On return. RO mayor may not contain
meaningful information (for eXample, on return from a call to FILEDEF
with no change, RO will contain a negative address if a new FCB has been
set up; otherwise, a positive address of the already existing FCE). R15
will contain the return code. if any. The use of Registers 0 and 2
through 11 varies. On entry to a command or routine called by SVC 202 the following are
in effect: 1
Contents The-address of the PLIST supplied by the caller.
The address entry point of the called routine.
The address of a work area (12 doublewords) supplied by SVCINT. The return address to the SVCINT routine.
The entry point (same as register 12). On return from a routine, Register 15 contains:
Return o <0 )0 No error occurred
Called routine not found
Error occurred
If a C"S routine is called by an SVC 202, registers 0 through 14 are
saved and restored by C"S. Most CMS routines use register 12 as a base register.
Structure of DMSN UC D"SNUC is the portion of storage in a CMS virtual machine that contains
system control blocks, flags, constants, and pointers.
The CSECTs in DMSNUC contain only symbolic references. This means
that an update or modification to C"S, which changes a CSECT in DMSNUC. does not automatically force all eMS modules to be recompiled. Only those modules that refer to the area that was redefined must be
recompiled. 240 IBM VM/370 System Programmer's Guide
The USERSECT CSECT defines space that is not used by CMS. A
modification or update to can use the 18 fullwords defined for USERSECT. There is a pointer (AUSER) in the NUCON area to the user
The DEVTAB CSECT is a table describing the devices available for the system. The table contains the following entries: 1 console 10 disks 1 reader 1 punch 1 printer 4 tapes You can change some existing entries in DEV1AB. Each device table
entry contains the following information: Virtual device address Device flags Device types Sy.bol name Address of the interrupt processing routine (for the console)
The virtual address of the console is defined at IPL time. The
virtual address of the user disks can be altered dynamically with the ACCESS command. The virtual address of the tapes can te altered in the
device table. Changing the virtual address of the reader, printer, or
punch will have no effect. Figure 26 describes the devices supported by Structure of eMS Storage
Figure 27 describes how CMS uses its virtual storage. The pointers
indicated (MAINSTRT, MAINHIGH, FREELOWE, and FREEUPPR) are all found in NUCON (the nucleus constant area). The sections of CMS storage have the following uses: 12 X'03000'). pointers, flags, and other data updated--by routines.
This area
the various
contains systell DMSFREE Free 12 ThIs--area-rs a free storage area, from which requests
from DMSFREE are allocated. The top part of this area contains the
file directory for the system Disk (SSTAT). If there is enough room
(as there will be in most cases), the FREE tAB table also occupies
this area, just below the SSTAT. Part 3. Conversational Monitor system (CMS) 241
Previous Page Next Page