What is Amoeba ?

Amoeba is a distributed operating system. It collects a huge varity of single machines connected over a (fast) network to one, huge computer. It was originally developed at the Vrije Universiteit in Amsterdam by Andrew Tanenbaum and many more. Amoeba was always designed to be used, so it was deemed essential to achieve extremely high performance. Currently, it's the fastest distributed operating system
The original Amoeba sources are handled under a public license - similar the BSD license.

Amoeba builds upon a traditional micro kernel. It supports true multithreading (kernel controlled), segment based memory management. All Amoeba components communicate with eachother over a standardized RPC (Remote Procedure Call) interface - simple but very powerfull. No matter if a client or server thread is running in kernel or user mode - it uses the same RPC interface. Always. Everywhere. This leads to a very clean and simple OS design, very well suited for beginners.  

Because Amoeba was designed from scratch with  new concepts, never seen before, it  suffered from a lack of application programs. Therefore a POSIX-compliant UNIX emulation was added. It makes porting UNIX programs much easier!  Now, with additional changes, a huge varity of application programs  from the UNIX-world work under Amoeba:

X11 with applications, various compilers (gcc, ocaml, tcl/tk), bash shell, editors and many, many more. Amoeba is ready to use!  Of course not without (little) problems.

It's still in an sligthly experimental state, but ready to use. FSD-Amoeba is intended to use for dedicated programmers only, and not for end users!

Fireball Amoeba Software Distribution (FSD)

After three years of hard work I'm proud to present a new, fully revised, enhanced and bug-fixed Amoeba-5.3 successor distribution with many new programs and features for the i386 architecture. Amoeba-5.3  was the last official Amoeba release  maintained by the Vrije Universiteit (1996). My Fireball software distribution based on this old release.  
I extend the UNIX emulation, ported many additional programs from the UNIX world, wrote new installation scipts and put all together in the FIREBALL software distribution FSD with the current version number 2002A. The FSD-Amoeba is made under the terms of the GNU License.


Amoeba in action

For my physical studies (Measurement of velocity gradients in high viscose liquids) I use Amoeba as a compact and powerfull lab measurement system with many reduced pc systems for only data recording together with high speed pentium PC's for data analysis connected through a standard 10 Mbps ethernet network. Putting all machines together to one large coupled system is very simple and flexible. Only less administration work must be done. 

Parallel Programming

Currently you have the choice between three strategies to perform concurrent parallel programming in an easy way without large administration work:

  1. Use Amoeba's generic Remote Procedure Call interface. Only 3 functions are required. More details about Amobe's RPC interface can be retrieved here [Postscript]. Additionaly, extended group communication functions are existing, too.

  2. The programming language and compiler Orca, based on the distributed data object model by Henri Bal.

  3. The parallel extension language HP-Linda written by Stefan Bosse. Because HP-Linda is fully library based, the Linda tuple space can be incorperated in nearly every existing program, from your scientific libraries up to shells and interpreters. More details here [Postscript].

Performance measurements

You can find several real live performance tests here showing the capabilities of the FSD-Amoeba kernel and system.

New FSD-Amoeba Kernel features

The old Amoeba kernel was strongly enhanced and revised with a more clean, and more powerfull (?) micro kernel design .

Some new features:

Virtual Amoeba Machine

The next step: a virtual machine supplying the Amoeba concepts like RPC. Either running natively under Amoeba, or under UNIX with the AMUNIX library together with the FLIP protocol module. The VM is derived and build from OCaML. The great advantage: Amoeba programs written in OCaML and compiled to bytecode can run independently from the underlying OS!

You can find more informations about the VAM system here.

User Contributions

Here you can find software contributed by the FSD-Amoeba user community.

Development - About the author - Contact

The development of FSD-Amoeba was froozen in the year 2002.

Successor projects:

You can find more informations about the author here.

FSD-Amoeba was developed and maintained only by BSSLAB

Dr. Stefan Bosse

[Free Software Foundation Europe]