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
Page of GC20-1807-7 As Updated April 1, 1981 by TNL GN25-0829 The MSC handles volume mounts, demounts and relinquishes. If the MSC order was for a volume demount, then normal ending status from the indicates that the volume is demounted. The CP RDEVBLOK corresponding
to the device is reset to free status, and can now be used for
allocation to another task.
If the request is for a volume mount, DMKHSS examines the MSSRETRY bit. This bit is turned on only when CP determines which VUA is used to
mount a volume. For example, CP makes the determination for normal MDISKs, LINKs, and DEDICATEs of MSS volumes with no real address
specified. If the MSSRETRY bit is off, the mount order is sent to the MSC and the resulting MSC return code is passed back to CP. However, if CP determines which VUA will mount the volume, DMKMSS scans the MSC mounted volume table (MVT) to see if the volume is already
staged in any SDG. If the volume is not staged, then DMKMSS sends the
mount order to the MSC and the resulting KSC return code is passed back
to CP. If the volume is staged in any SDG, DMKMSS compares that SDG number with the SDG number of the VUA on which CP wants to mount the
volume. If a match is found, the mount order is sent to the MSC and the
resulting MSC return code is passed back to CP. In the case of a SDG number match, there may be no cartridge picks required to fulfill the
mount request. This situation reduces the amount of time spent waiting
for a volume mount to complete. It also reduces the amount of
mechanical work the MSS has to do.
If the SDG numbers do not match, DMKMSS examines the mount status of
the volume. The volume mayor may not be mounted. This is because the MVT shows that there are cylinders still allocated to that volume even
though it may not be mounted.
If the volume is mounted by another processor, the correct SDG number
is placed in the MSSCOM, the VOLMNTD bit in MSSCOM is turned on, and
reason code X'10' is returned to CP. If the volume is not mounted (but
still has cylinders in the staging space allocated to it), the correct SDG number is placed in MSSCOM, the VOLMNTD bit is left off, and reason
code X'10' is returned to CP. For a mount that can be retried and has a
reason code of X'10', CP attempts to select a VUA from the correct SDG. If CP finds one, MSSCOM is updated to reflect the new VUA and CP reissues the request= If no VUAs are available in the correct SDG and
the VOLMN1D bit in MSSCOM is off, the MSSRETRY bit in MSSCOM is turned
off and the original mount request is reissued. If no VUAs in the
correct SDG are available, and the VOLMNTD bit is on, the request is
terminated with reason code X'10'. If the MSC request was for a volume mount, the MSC ending status
indicated that the MSC was processed. If the MSC accepts the mount order, the MSC will order the staging adapter to generate a pack change
interrupt (an unsolicited device end) on the device when that device has
been CP receives the pack change interrupt, the RDEVBLOK is
set to indicate that the volume is mounted, and any VM/370 task waiting
for the volume is marked dispatchable. If the mount order was rejected,
no further processinq of the mount request occurs. The previously
allocated RDEVBLOK is marked free and processing continues with the next Part 2. Control Program (CP) 172.1
Previous Page Next Page