Date: Mon, 26 Feb 2001 16:23:42 -0600 From: seebs@plethora.net (Peter Seebach) To: freebsd-hackers@freebsd.org Subject: Re: Setting memory allocators for library functions. Message-ID: <200102262223.f1QMNg621729@guild.plethora.net> In-Reply-To: Your message of "Mon, 26 Feb 2001 19:18:57 -0300." <Pine.LNX.4.33.0102261917120.5502-100000@duckman.distro.conectiva>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <Pine.LNX.4.33.0102261917120.5502-100000@duckman.distro.conectiva>,
Rik van Riel writes:
>Rationale:
>SIGSEGV for _user_ mistakes (process accesses wrong stuff)
>SIGBUS for _system_ errors (ECC error, kernel messes up, ...)
Actually, this is not canonically the distinction made. On a Unix PC,
{
int *a, c[2];
char *b;
a = c;
b = a;
++b;
a = b;
*a = 0;
}
would get SIGBUS, because it was a bus error. The error is not a segmentation
fault; the memory written to is all legitimately available to the process. It
is a bus error, because the data access is not possible on the bus. :)
I think "the memory you thought you had actually doesn't exist anywhere" is
more like a segmentation fault than a bus error.
-s
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102262223.f1QMNg621729>
