CORE(4) — HP-UX
NAME
core − format of core image file
DESCRIPTION
The HP-UX system writes out a core image of a terminated process when any of various errors occur. See signal(2) for the list of reasons; the most common are memory violations, illegal instructions, floating point exceptions, bus errors, and user-generated quit signals. The core image is called core and is written in the process’s working directory (provided it can be; normal access controls apply). A process with an effective user ID different from the real user ID will not produce a core image.
The file contains sufficient information to determine what the process was doing at the time of its termination. Debuggers such as cdb(1) and adb(1) provide a uniform user interface to this information. The contents of the file are implementation-dependent; refer to the DEPENDENCIES section below for further details.
DEPENDENCIES
Series 300
The first section of the core image is a copy of the system’s per-user data for the process, including the registers as they were at the time of the fault. The size of this section depends on the parameter UPAGES, which is defined in <sys/param.h>. The remainder represents the contents of the user’s core area when the core image was written. If the text segment is read-only and shared, or separated from data space, it is not dumped.
The format of the information in the first section is described by the user structure of the system, defined in <sys/user.h>. The locations of the registers, however, are specified in <sys/reg.h>.
Series 500
The first section of the core image is a header that contains information about the terminated process. The remainder represents the contents of the user’s core area when the core image was written. This area contains the stack, user global data, and heap segments. The last object in the core image is the code segment fixup map, which maps user code segments into real addresses.
The format of the information in the first section is described by the user structure of the system, defined in <sys/user.h>.
Series 800
The first section of the core image is a copy of the system’s per-user data for the process. This includes the user structure, the registers and the kernel stack. The size of this section depends on the parameter UPAGES, which is defined in <sys/param.h>. The UPAGES block consists of USIZE pages of the user structure followed by STACKSIZE pages of the kernel stack. The user structure is defined in <sys/user.h>. Additional information about this section of the core image can be found in <sys/reg.h> and <sys/save_state.h>.
The remainder of the core image represents the contents of the user’s core area when the core image was written (that is, the user data area followed by the user stack). The text segment is always read-only and shared; thus, it is never dumped.
The Series 800 does not support cdb(1); instead, see xdb(1) for a similar interface.
SEE ALSO
adb(1), cdb(1), setuid(2), signal(2).
Hewlett-Packard Company — Version B.1, May 11, 2021