DragonFly BSD
DragonFly kernel List (threaded) for 2004-04
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: New brainfart for threaded VFS and data passing between threads.


From: Max Okumoto <okumoto@home>
Date: Thu, 01 Apr 2004 04:06:18 -0800

Matthew Dillon wrote:
:
:Matthew Dillon wrote:
:>     The recent PIPE work adapted from Alan Cox's work in FreeBSD-5 has really
:>     lit a fire under my seat.  It's amazing how such a simple concept can
:>     change the world as we know it :-)
:
:Out of curiousity, have you considered some of the ideas from exokernel
:designs?

Not really. As far as I can tell, all exokernel does to get its stated performance improvement is to vertically integrate everything,
e.g. such as the web server and TCP protocol stack, into what is
essentially a single execution context.


    Well, I stopped doing that the day I set aside my Amiga for a PC running
    Linux, and you won't see me going back.  I don't see how such a system
    could ever be used in a complex production environment.... it would be
    nearly impossible to track down and fix bugs.

    I will be frank... I could integrate a TCP stack into a web server and
    fast-path the most common connection/data/disconnect situations, but the
    resulting mess would be unsupportable.  It might look good in a one-off
    performance benchmark but the cost of trying to maintain such a beast
    over time would be horrendous.  The last embedded hardware project I wrote
    was based on a 10MHz 68000, and even the little UDP stack I wrote for
    that was message-based and protected (via a simple protection map tacked
    on to the memory subsystem) rather then vertically integrated.  So,
    no, exokernel does not appeal to me at all.

-Matt
Matthew Dillon <dillon@xxxxxxxxxxxxx>

Have you read any papers on 'container shipping'? This sounds alot like the stuff that a friend of mine did for his thesis.


http://www.cs.ucsd.edu/groups/csl/pubs/conf/sosp95.html


Max Okumoto




[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]