Interrupt Handling In eMS CMS receives virtual SiC, input/output, program, machine, and external
interruptions and passes control to the appropriate handling program.SVC Interruptions
The ConversationalMonitor System is SVC (supervisor call) driven. SVC interruptions are handled by the DMSITS resident routines. Two types of SVCs are processed by DMSITS: internal linkage SVC 202 and 203, and any
otherSVCs. The internal linkage SiC is issued by the command and function programs of the system when they require the services of other CMS programs. (Commands entered by the user from the terminal are
converted to the internal linkageSVC by DMSINT). as SVCs are
issuedby the processing programs (for example, the Assembler).
INTERNAL LINKAGESVCS When DMSITS receives control as a result of an internal linkage SVC (202 or 203), it saves the contents of the general registers, floating-point
registers, and theSVC old PSW, establishes the normal and error return
addresses, and passes control to the specified routine. (The routine is
specified by the first 8 bytes of the parameter list whose address is
passed in register 1 forSVC 202, or by a halfword code following SVC 203. )
ForSVC 202, if the called program is not found in the internal
function table of nucleus {resident} routines, thenDMSITS attempts to
call in a module (aCMS file with file type MODULE) of this name via the LOADMOD command.
If theprogram was not found in the function table, nor was a module
successfully loaded,DMSITS returns an error code to the caller.
To returnfrom the called program, DMSITS restores the calling
program's registers, andmakes the appropriate normal or error return as
defined by the calling program.OTHER SVCs The general approach taken by DMSITS to process other SVCs supported
underCMS is essentially the same as that taken for the internal linkage SVCs. However, rather than passing control to a command or functiorr program, as is the case with the internal linkage SVC, DMSITS passes
control to the appropriate routine. TheSVC number determines the
appropriate routine.
In handlingnon-CMS SiC calls, DMSITS refers first to a user-defined SVC table (if one has been set up by the DMSHDS program). If the
user-definedSVC table is present, any SVC number (other than 202 or 203) is looked for in that table. If it is found, control is
transferred to the routine at the specified address.CMS Introduction 2-7
interruptions and passes control to the appropriate handling program.
The Conversational
other
converted to the internal linkage
issued
INTERNAL LINKAGE
registers, and the
addresses, and passes control to the specified routine. (The routine is
specified by the first 8 bytes of the parameter list whose address is
passed in register 1 for
For
function table of nucleus {resident} routines, then
call in a module (a
If the
successfully loaded,
To return
program's registers, and
defined by the calling program.
under
control to the appropriate routine. The
appropriate routine.
In handling
user-defined
transferred to the routine at the specified address.