Interrogating IUCV Queues Connection pending Connection complete Path severed Path quiesced Path resumed
The SET MASK function is interrogated before the SET CONTROL MASK func­
tion. If you specify that all control interrupts are disabled using the SET MASK
function, then the SET CONTROL MASK settings are not interrogated. If you
specify that all control interrupts are enabled using the SET MASK function, then
the SET CONTROL MASK settings will be interrogated to determine how to han­
dle the individual types of control interrupts.
After IUCV initialization and until you issue the SET MASK or SET CONTROL MASK functions, all IUCV sub mask bits are on, enabling all IUCV external inter­
rupts.
A virtual machine can only be notified of pending CONNECT, ACCEPT, SEVER,
QUIESCE, and RESUME functions by receiving an external interruption. Howev­
er, a virtual machine can field incoming messages or replies either by being enabled
for external interruptions, or by interrogating the SEND queue (via the DESCRIBE
function) or the REPLY queue (via the TEST COMPLETION function). IUCV also provides the TEST MESSAGE function to determine the presence of
any messages on a communicator's SEND queue or REPLY queue. If no messages
are present, the virtual machine goes into a wait state until a message comes in.
For example, if a source communicator sends a priority message, IUCV queues an
external interruption (subtype 08) for the target communicator. If the target virtu­
al machine is both enabled for external interruptions (bit 7 in the virtual PSW and
submask bit 30 in control register zero are set to one), and enabled for priority
messages (via the SET MASK function), then the target virtual machine receives
an external interruption. If the target virtual machine is not enabled for external
interruptions or is not enabled for priority messages, the message remains queued
on the target's SEND queue. If the target virtual machine is not enabled for
external interrupts or priority messages, it can issue the DESCRIBE function to
obtain information about the message, and the pending external interrupt for that
message is cleared. The target virtual machine can store the information and can
later RECEIVE or REJECT the message.
Note: If a communicator is enabled for external interruptions and issues the
DESCRIBE or TEST COMPLETION function, results are unpredictable. It can
not be determined whether information about a particular message is received via
external interruption or by the completion of DESCRIBE or TEST COM­ PLETION. However, IUCV supplies information about a message only once.
When a communicator has completed all communications, the virtual machine may
invoke the RETRIEVE BUFFER to
Cause IUCV to stop using the external interruption buffer created by the
DECLARE BUFFER function Prevent further IUCV communication. Inter-User Communications Vehicle 115
CP Communications
Note: IUCV external interruptions are not reflected to CP system code. See the
section, "CP Communications" for details. IUCV communications with CP system services treat CP as a single virtual
machine. For this reason, a distributing mechanism in IUCV (the communication
processor) gathers initial information about a message and routes it to the proper
module in CP for processing.
Thus, IUCV provides:
Routing of connections from virtual machines to CP system services
Routing of messages received via IUCV to CP system services
Routing of REPLY s received via IUCV to the CP system service that issued
the SEND Severing of virtual machines from system services
External interrupts are not reflected to CP system code. For communications to CP services, external interrupts are replaced with one of two possible linkages
depending on whether the function was initiated outside CP or whether it was initi­
ated from within CPo For data targeted for a CP service that was initiated in a vir­
tual machine, there is a table of entry points which tell IUCV where to pass
control. For replies targeted for a CP system service, virtual machines use a con­
trol block called an IXBLOK. The structure and use of an IXBLOK is similar to a CPEXBLOK. Each CP system service that interfaces with virtual machines is uniquely defined to
the IUCV communication processor. For each CP service defined to use IUCV communications, there are five entry points that can gain control from IUCV: One to get control for incoming connections One to get control for incoming messages One to get control when a connection to the particular service is severed One to get control when a QUIESCE is issued for a path One to get control when a RESUME is issued for a path
When anyone of these entry points is given control, Register 1 points to a buffer.
This buffer contains the same information in the same format as an IUCV external
interrupt buffer used in virtual machine to virtual machine communications.
The CP system services that lUCY supports at this time are Console Communi­
cations Services, the Message System Service, and the DASD Block I/O System
Service. To establish communications with the Console Communications Services
facility, specify *CCS when invoking the CONNECT function of IUCV. To estab­
lish communications with the Message System Service, specify *MSG when invok-
ing the CONNECT function. To establish communications with the DASD Block / . I/O System Service, specify *BLOCKIO when invoking the CONNECT function
of IUCV. The name of a CP system service id must begin with an asterisk (*).
116 VM/SP System Programmer's Guide
Previous Page Next Page