In college, there was a lot of talk about microkernels being ideologically
superior to traditional monolithic kernels, but everything I've read about
real-world implementations seems to point to problems with message passing
inefficiencies. Even so-called microkernel OS X seems to deviate greatly
from the microkernel paradigm in order to make Mach work in the real
world. Given NetBSD's focus on technical elegance, what do people here
think about the supposed superiority of microkernels.
-Nathan
> In college, there was a lot of talk about microkernels being
> ideologically superior to traditional monolithic kernels, but
> everything I've read about real-world implementations seems to point
> to problems with message passing inefficiencies.
This reminds me of what Dave Presotto, one of the core people behind
the Plan 9 operating system (at Bell Labs) said, when he was asked why
Plan 9 wasn't microkernel based:
"Because you need a brain the size of a planet to design a microkernel
based system, and we only have egos that big."
-tih
--
Tom Ivar Helbekkmo, Senior System Administrator, EUnet Norway
www.eunet.no T: +47-22092958 M: +47-93013940 F: +47-22092901
Before NetBSD i worked alot with microkernel OS QNX4 and i cannot say it'=
s
supperior or not. Just another ideology. Every architecture has it's own
benefits and weak sides.
--
JSC Novosibirsk Geophysical Equipment Development Center.
WEB http://www.megasignal.com
Ohh well, this is a long topic and i'm really not so long in BSD world, l=
ess
then two months. After five or six years in embedded design for QNX4.x. A=
nd
this is 2:38 of night atm here so i'm a bit tired to type a long objectiv=
e
letter :)
But this topic is quite interesting [IMO] and i found something good
developing embedded stuff for NetBSD now same as i lost some good QNX
specific features i used to use in the past. So if you want i can at leas=
t
try to write a bit later some esse a'la "From system developer's point of=
view: moving from true network distributed micro kernel OS QNX4 to solid
kernel OS NetBSD".
Ian Zagorskih wrote:
> On Wednesday 02 July 2003 19:17, Gary Thorpe wrote:
>
>>>Before NetBSD i worked alot with microkernel OS QNX4 and i cannot say
>>>it's
>>>supperior or not. Just another ideology. Every architecture has it's
>>>own
>>>benefits and weak sides.
>>
>>Yes, but some architectures are better than others, despite all having
>>benefits and weaknesses (of course everyone has differing opinions on
>>which ones are better). Would you like to replace your modern
>>multitasking OS with CP/M or DOS 3.3 - after all everything has
>>strengths and weaknesses? It depends on what you want to do with the
>>OS. So what are microkernels well suited for as compared to monolithic
>>systems? In what cases would you opt for one over the other?
>>
>
>
> Ohh well, this is a long topic and i'm really not so long in BSD world, less
> then two months. After five or six years in embedded design for QNX4.x. And
> this is 2:38 of night atm here so i'm a bit tired to type a long objective
> letter :)
>
> But this topic is quite interesting [IMO] and i found something good
> developing embedded stuff for NetBSD now same as i lost some good QNX
> specific features i used to use in the past. So if you want i can at least
> try to write a bit later some esse a'la "From system developer's point of
I dont see how its relevant to NetBSD in any case.
Yes, but some architectures are better than others, despite all having
benefits and weaknesses (of course everyone has differing opinions on
which ones are better). Would you like to replace your modern
multitasking OS with CP/M or DOS 3.3 - after all everything has
strengths and weaknesses? It depends on what you want to do with the
OS. So what are microkernels well suited for as compared to monolithic
systems? In what cases would you opt for one over the other?
>
> --
> JSC Novosibirsk Geophysical Equipment Development Center.
> WEB http://www.megasignal.com
>
______________________________________________________________________
Post your free ad now! http://personals.yahoo.ca
> This is loaded question. Existance of Linux is partly due to the
> micro/mono kernel design difference. I would take a look at the
> Tannenbaum-Torvald Debate (flame?) Its reprinted in book OpenSources
> but its bound to be somewhere online. And yes if you read Tannenbaums
> Modern OS book which many college level OS courses use he does still
> advocate microkernel design. I would also look into the design of
> Mach.
http://www.oreilly.com/catalog/opensources/book/appa.html
-Steve
> Yes, but some architectures are better than others, despite all having
> benefits and weaknesses (of course everyone has differing opinions on
> which ones are better). Would you like to replace your modern
> multitasking OS with CP/M or DOS 3.3 - after all everything has
> strengths and weaknesses? It depends on what you want to do with the
> OS. So what are microkernels well suited for as compared to monolithic
> systems? In what cases would you opt for one over the other?
I personally found microkernels very well suited in situations where
the same system had to be adapted to multiple hardware configurations
in a fast manner... The other reason I like them is for development
of kernel components where it becomes as easy as to work with userspace
applications to debug/monitor and test, without always having to reboot
a system.
Another interesting aspect is that a generic kernel which supports
almost all hardware available for an architecture can initially still be
small and only load in the necessary components for the current hardware...
There of course also are programming style issues, microkernel components
programmers like to implement everything in the form of main event processing
loops or packet servers. Most drivers are like userspace daemons using
established APIs, and are actually independant from the microkernel itself,
which only provides the very basic APIs to link glue the whole thing
(scheduling, intertask I/O, locking primitives, memory management and
relocatable binary loader with runtime dynamic linker).
Matt
Thank you for this link, i'v read this discussuin with great interest. It=
's
hm... at least very fun :) Specially reading it today after ~10 years.