lynx-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: lynx-dev 2-8-1 bug: print vs partial


From: David Woolley
Subject: Re: lynx-dev 2-8-1 bug: print vs partial
Date: Sat, 5 Dec 1998 00:53:14 +0000 (GMT)

> 
> > BTW for my continuing education: 
> > what is a segmentation error (SIGSEGV) & why is it so named? 

For Intel machines, it is the same as General Protection Fault,
much loved by Windows users; however, unlike Windows, Unix generally
contains the damage to the one process.

> segmentation violation - the machine has segment-registers which address
> pieces of memory aka "pages".  when an address based on a segment register
> is out of bounds, you get a segmentation violation.

Segments were actually used before pages became common and there would
only be a small number of them available, possibly as few as two or
three.  Typically the read only code would be in one segment, and shared,
the read/write data in a private one, and the stack possibly in another
private one.  The hardware would typically have a start address and a size
register for each segment, and the size would be variable.  The error
condition got named when this was the typical architecture for a Unix
machine and the name stuck.  In fact, some of the other signals names
only make sense in the context of the PDP 11 mini-computer.

Note that paging is at least 30 and maybe 35 year old technology and was
used on the Atlas computer.  It took some time for IBM to (re-)discover it
and even longer for it to be economic to use it on the mini-computers
on which Unix ran and longer yet for it to be implemented on micros.
So, even though it existed at the time that Unix was written, it was
not available to Unix systems at that time.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]