Functional Information Tbe most important thing to remember about eMS, from a debugging
standpoint, is that it is a one-user system. The supervisor manages
only 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 Cfts. When a CMS 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 FILEDFF 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 FCB). 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
12
13
14
15
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 CMS routine is called by an SVC 202, registers 0 through 14 are
saved and restored by CftS. Most CMS routines use register 12 as a base register.
Structure of DMSNUC DMSNUC 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 CMS, which changes a CSECT in DMSNUC, does not automatically force all CMS modules to be recompiled. Only those modules that refer to the area that was redefined must be
recompiled. CMS Introduction 2-11
USERSECT (USER AREA)
The USERSECT CSECT defines space that is not used by CMS. A
modification or update to CMS can use the 18 full words defined for USERSECT. There is a pointpr (AUSER) in the NUCON area to the user
space. DEVTAB (DEVICE TABLE)
The DEVTAB CSECT is a table describing the devices available for the CMS syste.. The table contains the following entries: 1 console 10 disks 1 reader 1 punch 1 pl:'in'tt?!" 4 tapes You can change some existing entries in DEVTAB. Each device table
entry contains the following information: Virtual device address Device flags Device types Symbol device name Address of the interrupt processing routine (for the console)
The virtual address of the console is defined at IPL time. The
virtual 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 2 describes the devices supported by CMS. Structure of eMS Storage
Figure 3 describes how CMS uses its virtual storage. The pointers
indicated (MAIISTRT, MAINHIGH, FREELOWE, and FREEUPPR) are all found in NUCOI (the nucleus constant area). The sections of CMS storage have the following uses: DMSNUC (X'OOOOO' 19 gEE!g!!!g!glI X'03000'). poInters,--ilags; and other data updated--by routines ..
This area contains
the various system DMSFREE Free !!gg (!EEf2!img!eII 12 ThIs--area-Is 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 FREETAB table also occupies
this area, just below the SSTAT. 2-12 IBM VM/370 System Logic and Program Determination--Volume 2
Previous Page Next Page