Settings

Theme

Amoeba (operating system)

en.wikipedia.org

37 points by mcartyem 13 years ago · 19 comments

Reader

jspiros 13 years ago

Tanenbaum wrote a textbook, Distributed Operating Systems[1], which covers in some detail the design and implementation of the Amoeba system. I recommend checking it out if you're interested in these things. The detail I enjoyed the most is how the use of multiple independent hardware platforms allowed a user on the overall system to execute binaries for multiple architectures seamlessly. Not the most useful feature, but still neat in my book. I also remember reading it around the same time I was just getting started with the Python programming language unrelatedly, and was very interested to learn later that Python originated with the Ameoba project.

I enjoy all of Tanenbaum's textbooks, but their price here in the US is very high if you're just a hobbyist, or a professional for whom operating system design is a hobby interest, so you may want to get them from the library. (Or, for what it's worth, my personal copies are from India and were much cheaper.)

[1]: http://www.amazon.com/Distributed-Operating-Systems-Andrew-T...

networked 13 years ago

The current title ("A way to bring back Moore's law") is somewhat misleading. You could say that Amoeba was a way to bring back Moore's law at the time, but then again, in the 1990s it wasn't exactly threatened. Nowadays the techniques used in Amoeba have spread to your "regular" Linux computing clusters. I've done some work in distributed computing and I can say that sophisticated load balancing and, to a lesser degree, process migration are known and used in the field. Lots of solutions for both for the commonly used MPI family of frameworks have been published [1].

It all comes down to Gustafson's Law [2].

[1] E.g., http://capinfo.e.ac.upc.edu/PDFs/dir25/file003041.pdf, http://www.mosix.org/pub/Process_Migration_for_OpenMPI.pdf, etc.

[2] https://en.wikipedia.org/wiki/Gustafson%27s_Law

DennisP 13 years ago

> The Python programming language was originally developed for this platform

That just struck me as a really nifty bit of trivia.

  • jacques_chester 13 years ago

    Tcl was developed for another distributed OS project, Sprite.

    And of course C was developed for Unix.

    What is it about operating systems and programming languages? :D

    • malandrew 13 years ago

      Interestingly you can say the same about Rust and Servo. After all the browser is essentially becoming an operating system with an entirely different trust model.

      • jacques_chester 13 years ago

        I wonder if we can include Go here? I understand that it's a descendent of Limbo, which was developed as part of Plan 9.

        • jff 13 years ago

          Go is very similar to Limbo. Seriously, really similar, because some of the same people wrote both.

          Limbo is a programming language that compiles to instructions for the Dis VM, which is what runs the Inferno operating system.

          Inferno came about as a way to use some of the good ideas from Plan 9 in other devices, such as telephones and set-top boxes.

    • kunai 13 years ago

      AFAIR Java wasn't really developed for any specific OS.

pjscott 13 years ago

There's only so much parallelism you can exploit, especially with network lags adding overhead.

http://en.wikipedia.org/wiki/Amdahl%27s_law

  • zaptheimpaler 13 years ago

    Thats a pretty trivial bound though. It basically deals with some portion "p" of the program that can be parallelized and tells you how that would affect performance given that the rest (1-p) can't be parallelized. "p" would probably be a huge chunk of the program in most cases, say a DB lookup if that is the biggest bottleneck.

    • jff 13 years ago

      I'm sure the supercomputing community would love to hear how communication costs and Amdahl's law are pretty trivial.

jacques_chester 13 years ago

My first instinct was to bust out a link to the "Network Fallacies" paper and a snarky remark, but it occurred to me that it's due to projects like Amoeba, Sprite and Plan 9 that we even really understand those fallacies.

klrr 13 years ago

This seems very similar to plan9 in the goal that a network can be managed as a single system.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection