HP-UX Reference (11i v3 07/02) - 4 File Formats (vol 8)
c
core(4) core(4)
NAME
core - format of core image file
DESCRIPTION
The HP-UX system writes out a file containing a core image of a terminated process when certain signals
are received (see signal(5) for the list of reasons). The most common causes are memory violations, illegal
instructions, floating point exceptions, bus errors, and user-generated quit signals. The core image file is
called
core and is written in the process’s working directory (provided it is allowed by normal access con-
trols). A process with an effective user ID different from its real user ID does not produce a core image.
The file contains sufficient information to determine what the process was doing at the time of its termina-
tion. Core file contents consist of objects that represent different segments of a process. Each object is pre-
ceded by a corehead data structure, and each
corehead data structure describes the corresponding
object following it. The structure is defined in
<sys/core.h> , and includes the following members:
int type;
space_t space;
caddr_t addr;
size_t len;
The space and addr members specify the virtual memory address in the process where the described object
began. The len member is the length of the object in bytes.
The following possible values for type are defined in <sys/core.h> :
CORE_DATA Process data as it existed at the time the core image was created. This includes
initialized data, uninitialized data, and the heap at the time the core image is gen-
erated.
CORE_EXEC A compiler-dependent data structure containing the exec data structure, the magic
number of the executable file, and the command (see the declaration of the
proc_exec structure in <sys/core.h> ).
CORE_FORMAT The version number of the core format produced. This number changes with each
HP-UX release where the core format itself has changed. However, it does not
necessarily change with every HP-UX release. CORE_FORMAT can thus be
easily used by core-reading tools to determine whether they are compatible with a
given core image. This type is expressed by a four-byte binary integer.
CORE_KERNEL The null-terminated version string associated with the kernel at the time the core
image was generated.
CORE_PROC An architecture-dependent data structure containing per-process information such
as hardware register contents. See the declaration of the proc_info structure
in <sys/core.h> .
CORE_STACK Process stack contents at the time the core image was created.
Objects dumped in a core image file are not arranged in any particular order. Use corehead
informa-
tion to determine the type of the object that immediately follows it.
SEE ALSO
adb(1), coreadm(1M), coreadm(2), setuid(2), crt0(3), end(3C), signal(5).
64 Hewlett-Packard Company − 1 − HP-UX 11i Version 3: February 2007