April 1, 1981
GENERALCONSIDERATIONS The SENDX function is a fast way to transfer messages or data and can be
used in place of theCP MSG command where the message length exceeds the
capacity of the terminal input line. Its use is somewhat restricted in
that the maximum data length must be agreed upon by allVMCF users and
then remains fixedunless reneqotiated.
TheSEND and SEND/RECV functions are better suited to transfer high
volume data base type information. This type of data transfer requires
the flexibility of a wide range of data lengths along with rigorous
management and control techniques.
TheQUIESCE function allows a virtual machine to discontinue
receiving messages. The virtual machine can process those messages
already stacked and then usethe RESUME function to continue reception.
TheQUIESCE function also allows a virtual machine to process all queued
messages prior to terminatingVMCF operation.
The user parameter list,VMCPARM, is designed such that it can be
usedfoc any subfunction by simply varying the contents of its fields. Users should keep copies of VMCPARMs for all requests made via the SEND, SEND/RECV, or SENDX functions. When a final response interrupt is
received and the interrupt message header indicates no data transfer
errors, the correspondingVMCPARM copy can be released. If a data tcansfec error is indicated, the copy can be used to reinitiate the
tr ansact ion.
VMCF ProtocolVMCF pcovides four types of protocol: SEND, SEND/RECV, SENDX, and IDENTIFY. The protocol used to communicate between two virtual machines
depends on the application ofVMCF and conventions established by
virtual machine users authorized to useVMCF. A virtual machine must
in voke theAUTHORIZE subfunct ion before it is allowed to use any of the
other subfunctions.
The types of transactions that virtual machines can be involved in
are described by a series ofVMCF protocols. In these protocols the
originating virtual machine is called the "source" virtual machine. The
dest inat ion virtu al machine is called the "sink" virt ual machine.
Thepcotocol for a transaction remains in effect for the duration of
the transaction.
THESEND PROTOCOL The SEND pcotocol defines a one-way transfer of data from source virtual
machinestocage to sink virtual machine storage. The SEND protocol uses
theSEND and RECEIVE subfunctions, as described in Figure 15. The source victual machine first transfers data to the sink virtual machine.
This is done by executing theSEND subfunction which specifies the
userid of the sink virtual machine, a message ID, and the address and
length of the data being sent. The sink virtual machine receives an
external interrupt fromCP notifying it of the data transfer request.
The sink virtual machine can then respond via theRECEIVE subfunction.
TheRECEIVE request specifies the address and the length of the SINK buffer that is to receive the data and causes the data to be transferred
148IBM VM/370 System Programmer's Guide
GENERAL
used in place of the
capacity of the terminal input line. Its use is somewhat restricted in
that the maximum data length must be agreed upon by all
then remains fixed
The
volume data base type information. This type of data transfer requires
the flexibility of a wide range of data lengths along with rigorous
management and control techniques.
The
receiving messages. The virtual machine can process those messages
already stacked and then use
The
messages prior to terminating
The user parameter list,
used
received and the interrupt message header indicates no data transfer
errors, the corresponding
tr ansact ion.
VMCF Protocol
depends on the application of
virtual machine users authorized to use
in voke the
other subfunctions.
The types of transactions that virtual machines can be involved in
are described by a series of
originating virtual machine is called the "source" virtual machine. The
dest inat ion virtu al machine is called the "sink" virt ual machine.
The
the transaction.
THE
machine
the
This is done by executing the
userid of the sink virtual machine, a message ID, and the address and
length of the data being sent. The sink virtual machine receives an
external interrupt from
The sink virtual machine can then respond via the
The
148