Amoeba (オペレーティングシステム)
Amoebaのメモリ管理は、とても単純である。 プロセスは、希望する個数のセグメントを所有し、プロセスの仮想アドレス空間のどこにでも望むところに配置することが可能である。 セグメントは、ページングされることはない。 セグメントは、完全に主記憶装置 (メインメモリ) 上に常駐する。 さら、メモリ管理ユニット (MMU) というハードウェアを使っており、おのおののセグメントは隣接して主記憶装置上に配置される。 このため、Amoebaでは、プロセスの実行が、遠隔手続き呼び出し (RPC、リモートプロシージャコール) をともなう場合も含めて、高速である。 また、ページング方式を実装する必要がないので、Amoebaの設計が簡単になり、カーネルも小さくなって管理が易しくなる。
プロセスの起動を行う際に、そのプロセスをAmoebaを構成するコンピュータ群のうちどのコンピュータ上で実行するかの、決定を支援する。コンピュータが異なれば、プロセサのアーキテクチャは異なる。プロセサアーキテクチャによっては、起動対象となったプロセスが動かないことがある。またコンピュータごとに、プロセサの負荷状況も異なるし、主記憶装置 (メインメモリ) の空き容量も異なる。こうした条件をもとに、プロセスを実行するのに最適なコンピュータを選択する。
プログラミング言語のPythonは、もともとは、Amoebaプラットフォーム向けに開発された。
AmoebaがTCP/IPの通信プロトコルを使って、別のコンピュータと通信する機能を提供する。これによりAmoebaは、X端末との接続、Amoebaではないシステムのコンピュータとの通信、インターネットへの接続が、可能になる。TCP/IPサーバは、後述するFLIPよりも効率は良くないので、FLIPが使えない場合にのみ、このサーバが使われる。
このほか、ディスク入出力、その他の装置との入出力、乱数生成、電子メールの送受信などを行うサーバ群がある。