[TUHS] CMU Mach sources?

Theodore Ts'o tytso at mit.edu
Mon Jun 24 09:54:00 AEST 2019


On Sun, Jun 23, 2019 at 06:08:56PM -0400, Noel Chiappa wrote:
> 
> Hammer-nail syndrome.
> 
> When the only tool you have for creating separate subsystems is processes, you
> wind up with a lot of processes. Who'd a thunk it.
> 
> A system with a segmented memory which allows subroutine calls from one subsystem
> to another will have a lot less overhead. It does take hardware support to be
> really efficient, though. The x86 processors had that support, until Intel dropped
> it from the latest ones because nobody used it.

One of the real problems with how x86 implemented segments was that
the segments were layered on top of the 32-bit virtual address space
implemented by the page tables.  So if you wanted to use a pure
segmented architecture, ala Multics, you run into the same problem as
32-bit IP addresses.  If you need to allow for segments to grow, you
very quickly fragment the 32-bit address space.

If I recall correctly, this wasn't an issue with Multics because the
DPS-8 had page tables for each segment.

Maybe if Intel/AMD had kept segmentation support when x86_64 was
developed, trying to do something more novel with segments could have
worked when we went to 64-bits (or maybe, like IPv6, what's really
needed is 128-bits of address space :-P).  But, Itanic was supposed to
be the dominant 64-bit architecture that was going to take over the
whole world, and when that turned out not to be the case, AMD threw
together x86_64 as the "just good enough" architectural extension.

					- Ted


More information about the TUHS mailing list