THE SEND/RECV PROTOCOL The SEND/RECV protocol defines a transaction calling for two-way
transfer of data, as described in Figure 16. TheSEND/RECV protocol
uses theSEND/RECV, RECEIVE, and REPLY subfunctions.
The source virtual machine initiates the transaction using theSEND/RECV using an external interrupt, CP notifies the sink virtual machine that there is a message waiting. The sink virtual
machine uses theRECEIVE subfunction to cause the data to be transfered from the source virtual machine's storage to the sink virtual machine
storage. The sink virtual machine now uses theREPLY subfunction to
cause data to be transferred from its storage to the source virtual
.achine's storage.When the REPLY subfunction completes processing, CP causes an external interrupt in the source virtual machine, notifying it
that the transaction is complete.
TheSEND/RECV request requires that ·the source virtual machine
specify the address and length of the data to be transferred and the
address where data is expected from theREPLY subfunction. (Both
addresses are in source virtual machine storage.) These addresses,
along with the length of the data to be transferred, are specified via
theVMCPARM parameter list, described below. When RECEIVE is issued by the sink virtual machine in response to the SEND/RECV request, VMCPARM contains the address in sink virtual machine
storage where data is to be received. Finally, when theREPLY request
is issued,VMCPARM contains the address in the sink virtual machine
storage from which data is to be transferred. r I I DMKVMC I • I VMCF I I Interface I I Module I Source Virtual Machine L-- SEND/RECV-->----------> -----------------)Data I I I (-----------------Data I (--External Interrupt-- I (Final Response) I I Sink Virtual Machine --External Interrupt------) (--------(----------RECEIVE Transfer-------------------) I I (------------(--------REPLY I Transfer-------(------------ I I I I Figure 16. The SEND/RECV Protocol 150 IBM iM/370 System Programmeris Guide
transfer of data, as described in Figure 16. The
uses the
The source virtual machine initiates the transaction using the
machine uses the
storage. The sink virtual machine now uses the
cause data to be transferred from its storage to the source virtual
.achine's storage.
that the transaction is complete.
The
specify the address and length of the data to be transferred and the
address where data is expected from the
addresses are in source virtual machine storage.) These addresses,
along with the length of the data to be transferred, are specified via
the
storage where data is to be received. Finally, when the
is issued,
storage from which data is to be transferred.