[linux-elitists] ME roadshow

Ben ben@valinux.com
Thu Aug 31 11:01:20 PDT 2000


I took a couple of classes at the Berkley extension from Kirk
McKuscick (one of the leaders of the CSRG when BSD was being
written). The one thing that stood out to me is the very most basic
unix kernel is actually very small. Some evidence for this can be seen
in things like QNX and Minix. V7 Unix wasn't all that big. HOWEVER,
once you start actually trying to implement the Posix standard and get
the symantics correct then you have added a huge pile of code. Then if
you want to make it run fast then you have added another huge pile of
code.

The people who designed and use QNX understand this. They understand
that they are designing an embedded system and they don't expect full
Posix compliance. They simply write their software in such a way that
it will run on what they have got rather than expecting the OS to do
everything for them.

Linux is different, people don't want to be porting their software to
linux anymore, they don't want to have to be working around the
limitations of the operating system. They want their software to run
on Linux with little modification. In that respect Linux is a
different animal. So keep in mind the fact that the size of the Linux
kernel is not due to bloat but rather the three implicit design
requirements of the linux community: generality, correctness, and
speed.

I haven't taken time to look at what the companies who are marketing
Linux in the embedded space are doing but I would expect that they
have done pretty much what the QNX people have done and that is make
their kernel highly configurable. They probably figured out ways to
allow their customers to turn off vast portions of the kernel's
functionality.

-ben

> >>>>> "Eugene" == Eugene Leitl <eugene.leitl@lrz.uni-muenchen.de> writes:
> 
>     Eugene> Paul J Collins writes:
>     >> QNX's kernel does not provide the variety of services that a
>     >> Unix-style kernel does. [...]
> 
>     Eugene> Well, maybe we don't need a complete country fair in a
>     Eugene> kernel.
> 
> Being a know-nothing slob, I am not keen to get into a
> Torvalds-Tanenbaum.  The point I was trying to make is that the
> kernels of QNX and Unix are very different animals.
> 
> I try to follow the summaries of linux-kernel, and I get the
> impression that Linus Torvalds tries very hard to keep stuff out of
> the kernel where possible.  If you want to see a country-fair kernel,
> check out Windows NT.
> 
> -- 
> Paul Collins <sneakums@eircom.net> - - - - - [ A&P,a&f ]
>  GPG: 0A49 49A9 2932 0EE5 89B2  9EE0 3B65 7154 8131 1BCD
> "Love so deep, kills you in your sleep.  It's true!"
> 
> _______________________________________________
> linux-elitists 
> http://zgp.org/mailman/listinfo/linux-elitists





More information about the linux-elitists mailing list