Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Aug 1998 21:59:52 -0700 (PDT)
From:      Tom <tom@uniserve.com>
To:        Andrew Reilly <reilly@zeta.org.au>
Cc:        current@FreeBSD.ORG
Subject:   Re: Heads up on LFS
Message-ID:  <Pine.BSF.3.96.980805215728.20955B-100000@shell.uniserve.ca>
In-Reply-To: <19980806033631.5013.qmail@gurney.reilly.home>

next in thread | previous in thread | raw e-mail | index | archive | help

On Thu, 6 Aug 1998, Andrew Reilly wrote:

> Tom said:
> > 
> > On Thu, 6 Aug 1998, Andrew Reilly wrote:
> > 
> > ...
> >> Now if you were prepared to rely on hardware memory /protection/
> >> without using the hardware memory /mapping/, you could probably
> >> do the same thing in C or C++ (or assembly language).  I believe
> >> that this has been tried in some of the Acorn ARM based OS's
> >> (RiscOS and the Newton OS.)
> > 
> >   Most microkernel OSes are this way.  QNX for x86 does something similar.
> > The kernel is basically just a scheduler (a QNX kernel is less than 50K),
> > and all other services that would normally be in the kernel are in their
> > own address spaces, using strict IPC interfaces between modules.
> 
> That's not quite what I meant.  As far as I know, the Spin and JavaOS
> beasties get an extra performance bennefit from running both the kernel
> and all user processes in the _same_ address space, without any
> hardware protections.  They can do that safely, because they push the
> protection and access issues into the language and the compiler, rather
> than guarding for errant programs at run-time.
> 
> NewtonOS and RiscOS also put everything into the one address space, but
> use some hardware memory _protection_ to prevent user processes from
> reading or writing into kernel (or other user process) space, unless
> explicitly allowed, by calling a kernel routine.

  Hardware memory protection is hardware memory protection, whether you
get a separate address space or not.  Just like x86 stuff that generates
protection faults.

> QNX is much more like Unix, in that all processes have a separate
> address space of their own.

  Not quite.  Even the network staff, and file system run in separate
spaces.  As far as I know, even device drivers have their own address
space.  That level of segregation is not available on any Unix I know of.

> -- 
> Andrew
> 
> 
> 

Tom


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.980805215728.20955B-100000>