Skip site navigation (1)Skip section navigation (2)
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>