Speeding up networking, worth a read.

walt wa1ter at myrealbox.com
Wed Mar 8 17:13:44 PST 2006


Matthew Dillon wrote:
> :Simon 'corecode' Schubert wrote:
> :
> :> ...we don't feel comfortable with a tcp stack in userland...
> :
> :Could you explain in basic bonehead terms why not?  I've long
> :been a fan of the microkernel which runs *everything* in
> :userland.
[...]
>     In a traditional microkernel architecture things like the TCP stack would
>     run in their own processes and, indeed, this WOULD improve stability
>     simply by exposing bugs more quickly due to the protection space 
>     separation that each subsystem enjoys.  I think this is a fine idea *IF*
>     your sole goal is to have an ultra reliable system rather then an
>     ultra fast system...

Well, I'm just an amateur.  I can't hope to advance any technical
arguments which might convince any techno-people like you guys.

I'm just thinking about how to keep software as free from bugs as
possible.  Linus once said:  'All bugs are shallow, given enough eyes.'

Wouldn't moving kernel code into userspace increase the number of eyes?

Yes, this implies a performance penalty, but there is a cost attached
to every benefit in life, alas!

How about letting each user choose whether he wants to participate in
debugging 'kernel code' (like the TCP stack) or go for maximum
performance?

I know that I would choose reliability (and debugging chores) over
speed.  Others would do the opposite.  No biggie!

Thanks for your answer -- I learned from it.





More information about the Users mailing list