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>