Zum Inhalt springen

Amoeba (Betriebssystem)

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 11. Juni 2024 um 03:27 Uhr durch imported>Hutch (Leerzeichen vor/nach Schrägstrich korrigiert).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Amoeba (engl. für Amöbe) ist ein verteiltes Betriebssystem, das von Andrew S. Tanenbaum und seinen Mitarbeitern an der Freien Universität Amsterdam entwickelt wurde. Ziel des Projekts war, jedem Benutzer die Illusion einer eigenen Maschine zu geben, obwohl das System auf vielen Rechnern verteilt ist, die eventuell auch weit entfernt voneinander, etwa in verschiedenen Ländern, stehen können<ref name=":tanenbum1">Andrew S. Tanenbaum & Gregory J. Sharp: The Amoeba Distributed Operating System. In: vu.nl. Vrije Universiteit Amsterdam, abgerufen am 26. November 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref><ref name=":tanenbum2">Andrew S. Tanenbaum et al.: Experiences with the Amoeba Distributed Operating System. In: stanford.edu. Vrije Universiteit Amsterdam, abgerufen am 26. November 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>. Die Entwicklung des Projektes wurde eingestellt. Das letzte Update gab es am 30. Juli 1996.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Index of pub/amoeba/amoeba5.3.] In: vu.nl. , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; (englisch).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

Die Programmiersprache Python wurde ursprünglich für Amoeba entwickelt.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Why was Python created in the first place?] In: python.org. Python FAQ, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 11. Februar 2008 (englisch).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref><ref>Charles Severance: Guido van Rossum: The Early Years of Python. In: Computer - Innovative technology for computing professionals. IEEE Computer Society, 2015, abgerufen am 27. November 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>

Das System

Amoeba verwendet für jeden Benutzer einen eigenen, plattenlosen Rechner. Weitere Rechner dienen als Pool-Prozessoren, die bei Bedarf angefordert und wieder freigegeben werden. Spezielle Dienste wie Dateiserver, Verzeichnisdienste und Datenbanken werden von eigenen, speziellen Rechnern zur Verfügung gestellt. Alle lokalen Rechner kommunizieren miteinander über das Fast Local Internet Protocol. Gateways verbinden weit entfernte Rechner miteinander zu einem einheitlichen System.

Das System ist Objekt-basiert, wobei jedes Objekt und die dazu erlaubten Operationen durch sog. capabilities identifiziert werden. Jedes Objekt ist mit einem Serverprozess verbunden, der vom Anwenderprogramm über einen Remote Procedure Call angesprochen wird.

Amoeba verwendet einen Mikrokernel. An der Freien Universität Amsterdam bildeten etwa 80 SPARC-Einprozessorsysteme, die über Ethernet vernetzt sind, einen Amoeba-Prozessorpool. Das System läuft auch auf Intel-x86- und Motorola-68030-Prozessoren. Es war mehrere Jahre im Einsatz.<ref name=":tanenbum1" /><ref name=":tanenbum2" />

Weltweite Vernetzung

Amoeba-Systeme können weltweit vernetzt werden und werden dann in Domänen (domains) eingeteilt. Innerhalb einer Domäne, die normalerweise die Rechner eines LANs umfasst, können die Server für einen Dienst durch einen Netzwerk-Broadcast, die locate-Anforderung, ermittelt werden. Zwischen Domains müssen sie explizit in einen Verzeichnisdienst eingetragen, das heißt publiziert werden. Ein lokaler Server beantwortet die locate-Anforderung und informiert einen Server auf dem entfernten LAN. Die Kommunikation läuft über die Proxy-Server ab. Dies hat die folgenden Vorteile

  • Die lokale Kommunikation läuft mit maximaler Geschwindigkeit und ohne Vermittlungsprozess ab.
  • Die Kommunikation mit entfernten Rechnern unterscheidet sich für die Server und Clients nicht von der lokalen Kommunikation.

Weblinks

Einzelnachweise

<references />