z/OS V1R7.0-V1R12.0 MVS Device Validation Support
Previous topic | Next topic | Contents | Index | Contact z/OS | Library | PDF


UIM Structure

z/OS V1R7.0-V1R12.0 MVS Device Validation Support
SA22-7586-01

Input to the UIM is in the UIM Communication Area (UCA). The UCA contains all relevant data for interfacing with the UIM. In particular, the UCA contains the request type (UCAUIMRT). The request type tells the UIM what to do. There are several request types, and the UIM does not need to support them all. However, the UIM must be prepared to accept and tolerate any request type, even the ones that might be introduced at a later time. The initialization request is the only one that is mandatory.

The following request types are defined:

UCARINIT
Initialization request
UCARPARM
Validate device parameters
UCARFEAT
Validate device features
UCARADDR
Validate device number
UCARUADD
Validate unit address (UA) of device
UCARDTFB
Build device feature table
UCAEOD
Perform end of data (EOD) processing

Except for the initialization and EOD request call, the UCA points to an internal text record, called an I/O device text record (IODV), as shown in Figure 4. The IODV contains all relevant information about the device to be validated or processed.

On entry, the UIM must follow the standard linkage conventions and save the caller's registers and establish its own savearea (because the UIM calls other UIM service routines), pointed to by register 13. Next, the UIM must push an entry on the diagnostic stack. This is done by defining a diagnostic stack entry by means of the CBDZDIAG macro and adding the entry on top of the diagnostic stack by means of the CBDIPPDS macro. Then, the UIM can examine the request code in the UCA to determine what to do.

On exit, the UIM must ensure that the correct return code is set in field UCARETC in the UCA and then remove the diagnostic entry from the stack by means of the CBDIPPDS macro.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014