[lkml]   [1999]   [Jun]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Some very thought-provoking ideas about OS architecture.
    In article <>,
    Rik van Riel <> wrote:
    >Unfortunately, EROS is still based on the PC hardware as
    >we've got it today and not modeled after a JINI-like
    >appliances model (the network is the computer).
    >With the death of the monolithic computer (if it happens)
    >will come the death of Unix, Windows _and_ EROS.

    That's a classic thing said by "OS Research People".

    And it's complete crap and idiocy, and I'm finally going to stand up and
    ask people to THINK instead of repeating the old and stinking dogma.

    It's _much_ better to have stand-alone appliances that can work well in
    a networked environment than to have a networked appliance.

    I don't understand people who think that "distribution" implies
    "collective". A distributed system should _not_ be composed of mindless
    worker ants that only work together with other mindless worker ants.

    A distributed system should be composed of individual stand-alone
    systems that can work together. They should be real systems in their
    own right, and have the power to make their own decisions. Too many
    distributed OS projects are thinking "bees in a hive" - while what you
    should aim for is "humans in society".

    I'll take humans over bees any day. Real OS's, with real operating
    systems. Monolithic, because they CAN stand alone, and in fact do most
    of their stuff without needing hand-holding every single minute.
    General-purpose instead of being able to do just one thing.

    >At the moment I can see only one Open Source system that
    >could become ready for a world like that. Alliance OS

    I will tell you anything based on message passing is stupid. It's very

    - if you end up doing remote communication, the largest overhead is in
    the communication, not in how you initiate it. This is only going to
    be more true with mobile computing, not less.

    Ergo: optimizing for message passing is stupid. You should _always_
    optimize for the local case, because it's the only case where the
    calling protocol really matters - once you go remote you have time to
    massage the arguments any which way you like.

    - Most operations are going to be local. Any operating system that
    starts out from the notion that most operations are going to be
    remote is going to die off as computers get more and more powerful.

    Things may start off distributed, but in the end network bandwidth is
    always going to be more expensive than CPU power.

    - Truly mobile computing implies that a noticeable portion of the time
    you do _not_ want to be in contact with any other computers. Your
    computer had better be a very capable one even on its own. Anybody
    who thinks anything else is just unbelievably misguided.

    This implies that your computer had better have a local filesystem,
    and had better be designed to work as well without any connectivity
    as it does _with_ connectivity. It can't communicate, but that
    shouldn't mean that it can't work.

    So right now people are pointing at PDA's, and saying that they should
    be running a "light" OS, all based on message passing, because obviously
    all the real work would be done on a server. It makes sense, no?

    NO. It does NOT make sense. People used to say the same thing about
    workstations: workstations used to be expensive and not quite powerful
    enough, and people wanted to have more than one. Where are those people
    today? Face it, the hardware just got so much better that suddenly REAL
    operating systems didn't have any of the alledged downsides, and while
    you obviously want the ability to communicate, you should not think that
    that is what you optimize for.

    The same is going to happen in the PDA space. Right now we have PalmOS.
    It's already doing internet connectivity, how much do you want to bet
    that in the not too distant future they'll want to offer more and more?
    There is no technical reason why a Palm in a few years won't have a few
    hundred megs of RAM and a CPU that is quite equipped to handle a real
    OS. (If they had selected the strongarm instead of a cut-down 68k it
    would already).

    In short: message passing as the fundamental operation of the OS is just
    an excercise in computer science masturbation. It may feel good, but
    you don't actually get anything DONE. Nobody has ever shown that it
    made sense in the real world. It's basically just much simpler and
    saner to have a function call interface, and for operations that are
    non-local it gets transparently _promoted_ to a message. There's no
    reason why it should be considered to be a message when it starts out.


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:52    [W:0.023 / U:71.852 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site