gtpm6m10 | Main Supervisor Reference |
Both the SNAPC and SERRC macros initiate system error processing; they differ only in the amount of diagnostic information they produce, and the amount of online resources they require.
The SNAPC macro is used whenever the cause of the error condition is well understood, and less than 32K of data is required to fully document the problem. The SNAPC macro only dumps areas of main storage that the programmer has specified using LISTC macros (refer to the TPF General Macros for details on LISTC).
You can use the ZASER command to specify whether to route a snapshot dump to a tape or printer device, and how much of the snapshot dump information to display on the CRAS terminal. Note that routing a snapshot dump to CRAS generates extra ECBs, because of the use of WTOPC.
SNAPC uses far fewer processor resources than SERRC. Only the I-stream on which the error occurred is used to generate the error data; the other I-streams in the CPC are not affected.
You can use SNAPC for database corruption errors, hardware errors, or any other errors where you understand the cause of the problem and need less than 32K of data to fully document it.
The SERRC macro always produces a standard memory dump of main storage. There are 2 types of SERRC dumps, one for application program errors and one for control program errors:
The first section of a dump is identical for both types of SERRC dumps. It contains information describing the system configuration, the status of each I-stream in the configuration, and the system trace tables for each I-stream. If there is an ECB associated with the error, a dump of the ECB virtual memory will follow, including all of the data objects that are logically attached to the ECB. An OPR dump ends at this point.
In a CTL dump, the dump of the ECB virtual memory (if any) is followed by a dump of system storage. This dump begins at location X'1000' and continues to the end of the system virtual memory. This dump is limited to a reasonable size through the use of pre-defined dump keywords, which identify large areas of storage that normally are omitted from dumps. One or more of these areas can be included in the dump for a particular system error if a dump override has been defined for that system error. See Controlling the Content of System Storage Dumps.
The format and content of the TPF system dumps is discussed in greater detail in TPF Program Development Support Reference.
Four system error numbers are reserved exclusively for the purpose of identifying program checks that result from software logic errors. They are:
Note that segment- or page-translation exceptions which occur in supervisor state are not necessarily catastrophic errors. If the error occurred in an EVM, the error will be converted to a CTL-I000004 and the ECB will simply be exited.