*** UNIX MANUAL PAGE BROWSER ***

A Nergahak database for man pages research.

Navigation

Directory Browser

1Browse 4.4BSD4.4BSD
1Browse Digital UNIXDigital UNIX 4.0e
1Browse FreeBSDFreeBSD 14.3
1Browse MINIXMINIX 3.4.0rc6-d5e4fc0
1Browse NetBSDNetBSD 10.1
1Browse OpenBSDOpenBSD 7.7
1Browse UNIX v7Version 7 UNIX
1Browse UNIX v10Version 10 UNIX

Manual Page Search

Manual Page Result

0 Command: core | Section: 4 | Source: Digital UNIX | File: core.4.gz
core(4) Kernel Interfaces Manual core(4) NAME core - Format of memory image file SYNOPSIS #include <sys/core.h> DESCRIPTION The system writes out a memory image of a terminated process when any of various errors occur. See sigaction(2) for the list of reasons; the most common are memory violations, illegal instructions, bus errors, and user-generated quit signals. The memory image is called core and is written in the process's working directory (provided it can be; nor- mal access controls apply). The maximum size of a core file is limited. Files that would be larger than the limit are not created. Default behavior is for the system to name a core file core and over- write any other core file in the working directory. You can enable enhanced core file naming, which causes the system to create unique names for core files. Core files are not overwritten, thereby preventing loss of valuable debugging information when the same program fails mulitiple times (and perhaps for mulitple reasons). When enhanced core file naming is enabled, the system produces core files with names in the following format: core.program_name.host_name.numeric_tag The literal string core. Up to sixteen characters taken from the program name as shown by the ps com- mand. The first portion of the system's network host name, or up to 16 characters of the host name, taken from the part of the host name that precedes the first dot. This tag is assigned to the core file to make it unique among all the core files generated by a program on a host. The maximum value for this tag, and thus the maximum number of core files for this program and host, is set by a system configuration para- meter. Note the tag is not a literal version number. The system se- lects the first available unique tag for the core file. For ex- ample, if a program's core files have tags .0, .1, and .3, the system uses tag .2 for the next core file it creates for that program. If the system-configured limit for core file instances is reached, the system will not create any more core files for that program/host combination. By default, the system can cre- ate up to 16 versions of a core file. For example, the fourth core file generated on host buggy.net.ooze.com by the program dropsy would be: core.dropsy.buggy.3 You must enable enhanced core file naming; there are two ways to do so. First, you can enable enhanced core file naming at the system level by setting the enhanced-core-name system configuration variable to 1 in the proc subsystem: proc: enhanced-core-name = 1 Second, you can enable enhanced core file naming at the program level by calling the uswitch system call with the USW_CORE flag set. See the EXAMPLE section. The system manager can limit the number of unique core file versions that a program can create on a specific host system by setting the sys- tem configuration variable enhanced-core-max-versions to the desired value: proc: enhanced-core-name = 1 enhanced-core-max-versions = 8 The miminum value is 1, the maximum is 99,999, and the default is 16. EXAMPLE The following example shows a code fragment that calls the uswitch sys- tem call with the USW_CORE flag set: #include <signal.h> #include <sys/uswitch.h> /* * Request enhanced core file naming for * this process then create a core file. */ main() { long uval = uswitch(USC_GET, 0); uval = uswitch(USC_SET, uval | USW_CORE); if (uval < 0) { perror("uswitch"); exit(1); } raise(SIGQUIT); } In general the debugger dbx(1) is sufficient to deal with core images. RELATED INFORMATION sigaction(2), uswitch(2), sysconfigdb(8), dbx(1) delim off core(4)

Navigation Options