HARDCOPY

The HARDCOPY utility program uses the DCALGOL intrinsic ATTACHSPOQ to receive copies of all ODT “traffic,” which includes all input commands and system responses. System responses are received in the HARDCOPY task language. All messages received by HARDCOPY are reformatted by replacing control characters with blanks, condensing multiple blanks to a single blank, and dividing messages into 132-character print lines. HARDCOPY then writes the reformatted commands and messages into a disk file titled *HARDCOPY. This disk file is created with a PROTECTION file attribute value of PROTECTED.

On systems running InfoGuard security enhancement software or with the Security Accountability Facility, the *HARDCOPY file can be public or private, depending on the value of the NONUSERFILES option of the SECOPT (Security Options) system command. For information about this option, refer to to the MCP Security Implementation and Operations Guide. On non-InfoGuard systems, the *HARDCOPY file is public.

When the HARDCOPY program is initiated, it searches for an existing file titled *HARDCOPY. If the file HARDCOPY exists, the last recorded message is located, and a message indicating a restart is added at the end of the file. If the file HARDCOPY is not found, one is created. Every 15 minutes, a message giving the time and date can be inserted into the file. The insertion is done only if entries have been made in HARDCOPY.

After the first message that extends into the last segment of HARDCOPY is written, the file HARDCOPY is closed and its title is changed to HARDCOPIES/<integer>. The integer is incremented by one each time a new HARDCOPIES file is created. A new file titled HARDCOPY is created at this time. PRINTCOPY is automatically initiated to print the file.

The contents of HARDCOPY can also be printed in sequential pieces. Each time a HI (Cause EXCEPTIONEVENT) system command is directed at HARDCOPY, a run of PRINTCOPY is requested that prints all messages since the last HI-initiated printing. (Refer to the System Commands Operations Reference Manual for further information about the HI command.)

HARDCOPY records all ODT traffic, including that generated by programmatic DCKEYIN requests. Programs producing a high volume of such requests might create a backlog of messages for HARDCOPY. Such a backlog is evident by steadily increasing actual segment descriptor (ASD) usage.

Ideally, programs should obtain system information by using the interfaces provided by GETSTATUS and SYSTEMSTATUS. These interfaces are more efficient and do not generate messages that must be recorded by HARDCOPY.

If you are unable to change the program, you can reduce the size of the backlog by using the PR system command to assign HARDCOPY a higher running priority. However, if the backlog occurs on a repeating basis because of the workload structure, use the MP system command to grant control program privileges to SYSTEM/HARDCOPY.

For more information about the PR and MP system commands, refer to the System Commands Operations Reference Manual.