DIAGNOSE Code X'6C' --Special Diagnose for Shadow Table Maintenance I Privilege class G DIAGNOSE Code X'6C' is an internal DIAGNOSE instruction issued by MVS to VM/SP that is used only to pass the virtual address of a page table entry that maps
to real page zero for the low storage protection facility.
Entry Values: The virtual address passed in the Rx register is stored in the EXTVPORL field of the ECBLOK. The VMVPOREL flag in the VMBLOK is set
on. The Ry register is not used. Usage: The DIAGNOSE X'6C' information is used when a V=R user issues a SET STBYP ASS VR command, and also when a V = V user sets a high-water mark.
Condition Codes: If a BC mode virtual machine attempts to issue a DIAGNOSE X'6C' a condition code of 3 is reflected in the BC mode PSW. DIAGNOSE Code X'70' -- Activating the Time-of-Day (TOD) Clock Accounting Interface I Privilege class G
Diagnose Code X'70' enables an operating system that is running in a virtual
machine to request timing information from CPo Each time the virtual machine is
dispatched, CP provides the accumulated processor time the virtual machine has
used and the TOD the virtual machine was dispatched. Programs that are running
in the virtual machine may use the timing information to calculate the amount of
processor time used by each job, by each job step, and so forth. DIAGNOSE Code X'70' should be used by operating systems that use the store
clock (STCK) instruction to obtain the TOD in order to calculate processor usage.
Because there is no virtual TOD clock, calculations that use multiple STCK instructions may not reflect the time used by just one virtual machine. They may
also include the time used by all virtual machines and by CP. A virtual machine should issue DIAGNOSE Code X'70' only one time. Once issued, it is effective until the virtual machine is reset.
Entry Values: When DIAGNOSE Code X'70' is issued, the Rx register must con­
tain the address of a 16-byte area, the communication area. The Ry register is not
used.
The communication area must be aligned on a double word boundary and must be
in the virtual machine's real storage, preferably in page zero. Page zero is pre­
ferred because CP always locks page zero and must also lock the page that contains
the communication area. Thus, when page zero is used, CP does not have to lock
an additional page. Usage: After DIAGNOSE Code X'70' is issued, CP updates the communication
area each time the virtual machine is dispatched. The first eight bytes of the com­
munication area contain the total processor time the virtual machine has used. The
last eight bytes contain the TOD CP last dispatched the virtual machine. Programs
running in the virtual machine should not alter the communication area.
To use the information that CP has stored in the communication area, perform the
following steps: . DIAGNOSE Instruction in a Virtual Machine 257
1. Obtain the current TOD by issuing the STCK instruction.
2. Compute the difference between the TOD obtained in step 1 and the TOD stored in the communication area. This difference is the amount of processor
time the virtual machine has used since it was last dispatched.
3. To calculate the total amount of processor time the virtual machine has used up
to the present time, add the processor time that is stored in the communication
area to the difference obtained in step 2.
4. Ensure that the TOD value stored in the communication area has not changed
since step 2 was performed. If it has changed, repeat the procedure from step
1.
Specification Exception: CP returns a specification exception if DIAGNOSE Code X'70' is issued and:
The virtual machine does not have the ECMODE option.
The communication area is not aligned on a doubleword boundary.
The address in the Rx register is not within the virtual machine's real address
range. DIAGNOSE Code X'70' has already been issued for the virtual machine.
DIAGNOSE Code X'74' --Saving or Loading a 3800 Named System
Privilege class A, B, or C DIAGNOSE Code X'74' is invoked to save an image library as a 3800 named sys­
tem or to load a named system into virtual storage when that named system is
required by the 3800 printer.
Entry Values: When the DIAGNOSE Code X'74' is invoked, the Rx, Rx+l, Ry,
and Ry+ 1 registers must contain the following:
Registers Rx and Rx + 1 -must contain the eight-character name of the system
to be saved or loaded, left-justified and padded with blanks.
Register Ry -must contain the virtual address at which to start saving or load­
ing the named system.
Register Ry+ 1 -must contain a X'OO' in the high order byte if a LOAD opera­
tion is required, and a X'04' for a SAVE operation. The remainder of the reg­
ister must contain the number of bytes to be saved or loaded into virtual
storage.
Error Conditions: A specification exception occurs if Register 15 is specified in
either Rx or Ry, or if the virtual address specified in Ry is not on a page boundary.
If the area to be saved or loaded extends beyond the user's virtual storage, an
addressing exception occurs. Finally, a privileged operation exception results if the
user does not have privileged class A, B, or C. These exceptions cause abnormal
termination (abend) and the user is notified. /' 258 VM/SP System Programmer's Guide
Previous Page Next Page