From: Eilert Brinkmann <eilert@Informatik.Uni-Bremen.DE> Date: 15 Nov 2000 13:53:09 +0100 Message-ID: <xttk8a5wg5m.fsf@dominion.informatik.uni-bremen.de> Subject: Re: [SLE] What is a segmentation fault? "Stan Koper" wrote:
What are segmentation faults, what causes them, and how can I avoid/get rid of them?
A segmentation fault is caused by a process violating it's virtual address space (which consists of a number of "segments", hence the name), i.e., - accessing addresses outside of it's virtual address space or - violating access restrictions (i.e., writing to a memory-page that is marked readl-only). In this cases the kernel sends a signal (SIGSEGV = signal segmentation violation) to the process in question. A program can catch such signals and do own error handling, but that's unusual with SIGSEGV as this signal is typically caused a bug in the program itself. By default a process receiving SIGSEGV terminates (with a coredump, if possible). Since segmentation faults usually result from a program error, you can't do too much as a normal user. You can report errors to the maintainers and keep your software installations up to date. If you have programming experiences and access to the source code, you might try to find and fix the bug yourself ;-) However, in many cases such errors show up only with a specific configuration or command line options. In such cases it could be possible to avoid the error by changing this parameters, but that would be only a workaround, not a solution for the problem itself. Eilert -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org - eilert@linuxfreak.com http://www.informatik.uni-bremen.de/~eilert/