£2de Execution of DIAGNOSE code X'OO' allows a virtual machine to examine the V"/370 extended-identification code. For example, an OS/VS1 virtual machine issues a DIAGNOSE code X'OO' instruction to determine if the
version of V"/370 under which it is executing supports the V!/VS Handshaking feature. If the extended-identification code is returned to VS1, V!/370 supports handshaking; otherwise, it does not.
The register specified as Rx contains the doubleword aligned virtual
storage address where the V!/370 extended-identification code is to be
stored. The Ry register contains the number of bytes to be stored
entered as an unsigned binary number.
If the V"/370 system currently executing does not support the DIAGNOSE code X'OO' instruction, no data is returned to the virtual
aachine. If it does support the DIAGNOSE code X'OO' instruction, the
following data is returned to the virtual machine (at the location
specified by Rx): lield System Name Version Number Version Code !CEL Processor
Address Userid Program Product Bit Map The first byte is the
version number, the second
byte is the level, and the third
byte is the PLC (Program Level
Change) number. V!/370 executes the STIDP (Store Processor ID) instruction
to determine the version
code. V!/370 executes the STIDP instruction to determine
the maximum length of the "CEL ("achine Check Extended
Logout) area.
3 bytes, hexadecimal
1 byte, hexadecimal
2 bytes, hexadecimal V!/370 executes the ST1P 2 bytes, hexadecimal (Store Processor Address) instruction
to determine the processor
address.
The userid of the virtual machine issuing the DIAGNOSE. Reserved for IBM use
8 bytes, EBCDIC
8 bytes, hexadecimal
If V"/370 is executing in a virtual machine, another 24 bytes, or
less, of extended identification data is appended to the first 24 bytes
described above. Up to five nested levels of V!/370 virtual machines are supported by this diagnose instruction resulting in a maximum of 120 bytes of data that can be returned to the virtual machine that initially
issued the diagnose instruction. Upon return, Ry contains its original value less the number of bytes
that were stored. No completion code is returned, and the condition code remains unchanged. 1-50 IBM VM/370 System Logic and Problem Deteraination--Volume 1
Execution of a DIAGNOSE code X'04' allows a user with command privilege
class C or E to examine real storage. The register specified as Rx
contains the virtual address of a list of CP (real) addresses to be examineda The Ry register contains the count of entries in the list.
Ry+1 contains the virtual address of the result field. The result field
contains the values retrieved from the specified real locations.
Note: The request and result tables must be in the same page of virtual
storage, and that page must be resident in real storage, at the time the DIAGNOSE is executed. This is guaranteed if the instruction itself is
also in the same page. In the attached processor environment, each processor has a prefix
register to relocate addresses between 0 and 4095 to another page frame in main storage. The prefix register enables each processor to use a
different page frame in order to avoid conflict with the other processor
for such activity as interrupt code recording. Thus, the range 0 through 4095 refers to different areas of storage, depending upon which
processor generates the address.
All references to main storage from either processor are handled as
if they were made on the main processor. Existing user programs remain
valid for performance data; in the attached processor environment, they
receive the statistics for the main processor.
References to the PSA of the attached processor may be made as
follows: first, retrieve the value of PREFIXB, the value of the prefix
register for the other processor (the attached processor in this case).
Next, specify addresses that are the sum of the value of PREFIXB and the PSA displacement. References to 0 through 4095 are made by summing the
value of PREFIXA and the PSA displacement to form the request address. Several system values that are processor independent are maintained in 0 through 4095, such as the restart PSi and the trace table vectors.
The execution of DIAGNOSE code X'OS' allows a program executing in
supervisor mode in a virtual machine to perform a CP com.and. The
register specified as Rx contains the address, in virtual storage, of the data area defining the CP command and parameters. The Ry register
contains flags in the high-order byte,-and contains the command length
(up to 132 characters) in the three low-order bytes. If the first bit
of the high-order bytes is on (X'SO'), it indicates that the virtual machine issuing the DIAGNOSE code X'OS' instruction wants CP to reject
passwords from the terminal for AUTOLOG and LINK commands. This will be
done only if the installation has elected to use the password
suppression facility (PSUPRS=YES parameter of the SYSJRL macro in DI!KSYS) If the second bit of the high-order byte is on (X'40'), it indicates
that the virtual machine issuing the CP command requires the response to
that command to be returned to the virtual storage area specified by register Rx+1. The length of this area must be passed in register Ry+1.
The following example illustrates how DIAGNOSE code X'OS' would be
issued to perform the CP command, QUERY, to determine the number of
input and output spool files: CP Introduction 1-51
Previous Page Next Page