Aug 1, 1919 UNEXPECTED RESULTS The type of errors classified as unexpected results vary from operating
systems improperly functioning under VM/310 to printed output in the
wrong format.
If an operating system executes properly on a real machine but does not
execute properly with VM/370, a problem exists. Also, if a program
executes properly under control of a particular operating system on a
real machine but does not execute correctly under the same operating
system with VM/370, a problem exists.
First, there are conditions (such as time-dependent programs) that CP does not support. Be sure that one of these conditions is not causing
the unexpected results in CP. Refer to the !M/370 for a list of the restrictions.
Next, be sure that the program and operating system running on the
virtual machine are the same as those that ran on the real machine.
Check for: The same job stream The same copy of the operating system (and program) The same libraries
If the problem still is not found, look for an I/O problem. Try to
reproduce the problem, while tracing all CCWs, SIOs, and interrupts via
the CP TRACE command. Compare the real and virtual CCWs from the trace.
A discrepancy in the CCWs may indicate that one of the CP restrictions
was violated, or that an error occurred in the Control Program. When a program executes correctly under control of a particular
operating system on a real machine but has unexpected results executing
under control of the same operating system with VM/370, a problem
exists. Usually you will find that something was changed. Check that the
job stream, the operating system, and the system libraries are the same.
If unexpected results occur (such as TEXT records interspersed in
printed output), you may wish to examine the contents of the system or
user disk files. Non-CMS users may execute any of the utilities
included in the operating system they are using to examine and rearrange
files. Refer to the utilities publication for the operating system
running in the virtual machine for information on how to use the
24 IBM VM/370 System Programmer's Guide
CMS users should use the DASD Dump Restore (DDR) service program to
print or move the data stored on direct access devices. The VM/370 DASD Dump Restore (DDR) program can be invoked by the CMS DDR command in a
virtual machine controlled by The DDR program has the following
functions: -- dumps part, or all, of the data from a DASD device to
magnetic tape. -- transfers data from tapes created by DDR DUMP to a
direct access device. The direct access device to which the data
is being restored must be the same type of device as the direct
access device originally containing that data. £QPY -- copies data from one device to another device of the same Data may be reordered, by cylinder, when copied from disk to In order to copy one tape to another, the original tape must
have been created by the DDR DUMP function. l!INT selectively prints the hexadecimal and EBCDIC
representation of DASD and tape records on the virtual printer. !IPE selectively displays the hexadecimal and EBCDIC
representation of DASD and tape records on the terminal. CMS users should refer to the "Debugging with CMS" section fer
instructions on using the DDR command. The "Debugging with CP" section
contains information about executing the DDR program in a real or
virtual machine and a description of the DDR control statements. LOOP The real cause of a loop usually is an instruction that sets or branches
on the condition code incorrectly. The existence of a loop can usually
be recognized by the ceasing of productive processing and a continual
returning of the PSi instruction address to the same address. If I/O operations are involved, and the loop is a very large one, it may be
extremely difficult to define, and may even comprise nested loops.
Probably, the most difficult case of looping to determine is entry to
the loop from a wild branch. The problem in leop analysis is finding
either the instruction that should open the loop or the instruction that
passed control to the set of looping instructions.
The processor o.perator should perform the following sequence when
gathering information to find the cause of a disabled loop. 1. Use the alter/display console mode to display the real PSi, general
registers, control registers and storage locations X'OO' - X'100'. On an attached processor system, you must add the prefix value for
the PSA of each processor to display, dump, or alter low core
storage for each processor, or use the M or N operand prefixes
described under the DCP, DMCP, and STCP commands.
2. Press the SYSTEM RESTART button to caUse an Abend dump to be taken.
3. Save the information collected for the system programmer or system
support personnel. Part 1. Debugging with VM/370 25
Previous Page Next Page