Page of GC20-1807-7 As Updated April 1, 1981 by TNL GN25-0829 Special Message Facility The special message facility enables a virtual machine to send messages
to another virtual machine by issuing the SMSG command. The special
message facility uses the SENDX subfunction of the Virtual Machine
Communication Facility (VMCF) to send the messages. However, the
sending virtual machine does not need to perform the initialization
required by VMCF. Initialization is handled by CP and is described
later in this topic.
To send a message, a virtual machine need only prepare the message
text --up to 129 bytes and issue the class G command, SMSG. Parameters on the SMSG command identify the USERID of the receiving
virtual machine and specify the message text. The format of the message
text must be acceptable to the receiving virtual machine. The SMSG command is described in the CP !or· ..
Before the rece1v1ng virtual machine can receive special messages, it
must enable itself to receive external interrupts, must set bit 31 in
control register 0 to one, and must authorize itself. It authorizes
itself by issuing DIAGNOSE Code X'68', Authorize. The parameter list, VMCPARM, specified with DIAGNOSE Code X'68' must contain a pointer to an
external-interrupt buffer, must specify a buffer length of 169 bytes,
and must have the special message flag (VMCPSMSG) turned on. The
receiving virtual machine may turn on this flag by setting VMCPS8SG to a
value of B'l'. Optionally, the receiving virtual machine may turn on
the special message flag by issuing the class G command, SET SMSG ON.
For information on using DIAGNOSE Code X'68', see "Description of V8CF Subfunctions" and "Invoking VMCF Subfunctions." To understand
virtual machine, Pr otocol. " how a
see
special message is presented to "The SENDX Protocol" in the
the receiving
section "VMCF When a virtual machine no longer wishes to accept special messagesi
it may turn off the special message flag by issuing the command, SET SMSG OFF. To resume receiving messages, the virtual machine may issue
the command, SET SMSG ON. CP sends an error message to any virtual
machine that attempts to send a special message to another virtual
machine that is not accepting special messages. CP handles VMCF initialization and special message processing as
follows. When the SMSG command is issued, CP verifies that no invalid
options were specified and that a valid USE RID was specified. CP also
verifies that the receiving virtual machine is authorized and accepting
special messages. CP then obtains storage for the external-interrupt
buffer and builds the parameter list required by VMCF. Part of the
external interrupt buffer contains the external interrupt message
header. Descriptions of the fields contained in this message header are
described in the section "The External Interrupt Message Header." Note
that the VMCMUSER field contains the word "SYSTEM" while the user
doubleword of the user issuing the SMSG command is contained in the VMCMUSE field.
Finally, CP uses the SENDX subfunction of VMCF to send the message to
the receiving virtual machine. Part 2. Control Program (CP) 171
Page of GC20-1807-7 As Updated April 1, 1981 by TNL GN25-0829 VM/370 Use of the IBM 3850 MSS Virtual machines operating CMS, OS/VS1, or OS/VS2 (MVS) may access mass
storage volumes containing VM/370 minidisks or entire mass storage
volumes dedicated to the virtual machine. These volumes appear to the
virtual machine as 3330 volumes and are accessed using 3330 device
support in the virtual machine. VM/370 controls allocation, volume
mounting, and volume demounting. virtual machines that run OS/VS1 or OS/VS2 (MVS) with MSS support can also access mass storage volumes using
dedicated device support. VM/370 Access to the M,ass Storage Control Whenevec an MSS 3330V volume must be mounted or demounted, the VM/370 control program first selects an appropriate device address. If a
volume mount is required, the device is selected from the pool of
available 3330V devices created at system generation time. If a volume
must be demounted, CP sele,cts the address of the device on which the
volume is currently mounted.
To pass mount, demount, and relinquish orders, the virtual machine
must have an MSC port dedicated to it via the ATTACH command or the DEDICATE directory statement. An application program named DMKftSS is
distributed as part of VM/370i it acts as an interface between CP and
the MSC. After DMKMSS is started in an OS/VS1 or OS/VS2 (MVS) virtual
machine, it uses a special virtual I/O device and the VM/370 DIAGNOSE interface to communicate with the VM/370 control program. DMKMSS first issues a DIAGNOSE Code X'78' subcode X'OO' to inform CP that the MSS is available. Until CP receives this interrupt, the
control program cannot mount or demount MSS volumes.
When CP receives the interrupt, DMKMSS then obtains from tables found
in the MSC (the configuration table), a list of all VUAs (virtual unit
addresses) associated with the processor (cpuid). After DMKMSS builds
the list, it issues DIAGNOSE Code X'78' subcode X'14' to pass this list
to CP. CP builds two tables from the list:
a. one table contains only shared VUAs b. the other table contains only non-shared VUAs Each table is also sorted according to SDG (staging drive qroup) number.
The two tables are written to DASD and their slot address (CCPDs) are
anchored in DMKMSS. After DIAGNOSE Code X'78' subcode X'14' is issued with a mount or
demount request, CP generates an attention interrupt on the virtual I/O device. When it receives this interrupt, DMKMSS issues another DIAGNOSE Code X'78' to indicate that it is ready to process an MSS request. CP places the required information into a buffer in the virtual machine.
The address of this buffer is contained in DIAGNOSE X'78' instruction.
The format of the information is described in the MSSCOM control block. Aftec the request has been processed by the MSC, DMKMSS again issues
a DIAGNOSE Code X'78' that indicates that the MSS order is complete and
reflects the MSC endinq status.
172 IBM VM/370 System Programmer's Guide
Previous Page Next Page