Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
compare webbrowser
Freenet DSL
Who's Online
8 user(s) are online (7 user(s) are browsing encyclopedia)

Members: 0
Guests: 8

more...
browser tip
Unix Befehle
manual of unix befehle
recommendation!
Sponsored
partner

Core dump

A core dump is an unstructured record of the contents of working Computer storage at a specific time, generally used to debug a program that has terminated abnormally (crash (computing)ed). Nowadays, it typically refers to a file (computing) containing the memory image of a particular process (computing), but originally it was a printout of the entire contents of working memory.

The name comes from core memory and the image of dumping a bulk commodity (such as gravel or wheat).

Core dumps are a useful debugging aid in several situations. On early standalone or batch processing systems, core dumps allowed a user to debug a program without monopolizing the (very expensive) computing facility for debugging. Besides, a printout was more convenient than debugging using switches and lights. On shared computers, whether time-sharing, batch processing, or server systems, core dumps allow off-line debugging of the operating system, so that the system can be back in operation immediately. Core dumps allow a user to save a crash for later analysis, or comparison with other crashes. For embedded system, it may be impractical to support debugging on the computer itself, so a dump can be taken for analysis on a different computer. Some operating systems (such as early versions of Unix) do not support attaching debuggers to running processes, so core dumps are necessary in order to run a debugger on a process s memory contents. Finally, of course, an interactive debugger may simply not yet have been written for a particular system.

On many operating systems, a fatal error in a program automatically triggers a core dump. Thus, for a program to dump core means to encounter a fatal error; some people use that expression no matter whether or not a core dump is acutally created.

A core dump, unlike other kinds of debugging information, represents the complete, unstructured state of memory. It is thus especially useful when pointer structures have been memory corruption when using assembly language or an unsafe programming language such as C programming language; in that case, source-level debuggers may not be able to access or interpret the memory state in a useful way. A debugger can use a symbol table (if there is one) to help the programmer interpret dumps, identifying variables symbolically and displaying source code. There are also special-purpose tools called dump analyzers.

The paper form of dump generally was arranged in columns of hexadecimal numbers (a hex dump ), sometimes with alternate interpretations of memory contents along the side: as machine language instructions, as text strings, as decimal numbers, as floating-point numbers, etc.


The term is sometimes used on Usenet for a posting that describes what has been happening in the poster s life, especially if it involves emotional stress; the implication is that the material has not been edited or analyzed.

Also see the humorous variant brain dump.