Alternatives Betriebssystem: Icaros, Teil 2
von Darrel Johnston (djohnston)
Wie bereits erwähnt, ist Icaros eine Reihe von erweiterten Funktionen des Betriebssystems AROS, das eine Nachbildung des Amiga-Betriebssystems ist. Das AmigaOS ist mit seiner Hardware sogar noch mehr „verheiratet“ als ein Macintosh. Ein großer Teil des AmigaOS ist in ROM-Chips eingebettet. Viele der Multitask-Fähigkeiten bestehen aufgrund besonderer Chips, wie eingebettete Audio- und Video-Prozessoren. Da AROS auf handelsüblicher x86er Hardware ausgeführt werden soll, mussten diese Multitasking-Fähigkeiten in die auf Festplatten-basierte Software mit eingebaut werden. Beachten Sie, dass AROS "von Grund auf" geschrieben wurde, um dieselben Funktionen wie das AmigaOS zu haben ohne dabei etwas von der ursprünglichen Software zu kopieren. In diesem Artikel werde ich einen Blick auf die Besonderheiten des AmigaOS werfen, welche in AROS dupliziert wurden.
Zunächst einmal, genau wie der Amiga, stellt auch AROS keinen geschützten Speicher bereit. Diese Funktion wurde unter den Entwicklern für zukünftige Implementierungen diskutiert. Aber bis jetzt wurde es noch nicht umgesetzt. Dies bedeutet, dass ein einzelnes System oder Anwendungsprogramm das gesamte Betriebssystem durch die Überlagerung des Speicherplatzes von einem anderen Programm oder Prozess zum Abstürzen bringen kann. Zweitens, AmigaOS und AROS sind Einzelbenutzer Desktop-Systeme. Mehrere Benutzer können beim AmigaOS durch die Verwendung von Software und Dateisysteme von Drittanbietern implementiert werden. MuFS (MultiUser Datei System) ist ein Dateisystem, welches auf dem Amiga mehrere Benutzer unterstützt.
Amiga´s echte bevorrechtigte Multitask-Fähigkeit bestand seit dem Tag, an dem es geboren wurde und es konnte dies innerhalb von 512kb Speicher erreichen. AROS besitzt ebenfalls echtes bevorrechtigtes Multitasking und sollte auf fast jeder Pentium CPU oder höher laufen. Im Idealfall 700 Mhz und mehr mit 256 MB Arbeitsspeicher werden empfohlen.
Das Messaging-System von AmigaOS´s Exec Bibliothek ist sehr schnell und flexibel, und basiert ursprünglich auf Tripos. Sie können eine beliebige Anzahl von Aufgaben ausführen, und jede kann Signale und Daten an eine Reihe von Ports senden und empfangen. Es ist sozusagen ein einfaches effizientes flag für jeden Port, welches auf Signale wartet, und die Aufgabe in irgendeiner gewünschten Weise behandeln kann. Außerdem bietet die ARexx-Version von Rexx ein noch höheres Niveau von messaging, auf der Ebene der programmübergreifenden Kommunikation, die mit einem Teil der Software einen anderen Teil steuern kann. ARexx ist als eine systemweite Makrosprache und als Mittel der Kommunikation zwischen Programmen in AmigaOS und AROS verfügbar. Die Programmiersprache Rexx wird auch auf der eComStation's Version von OS/2, AROS und auf Großrechnern von IBM verwendet. Microsofts NT4 Betriebssystem für Server hatte auch eine Implementierung von Rexx.
AmigaFFS (Fast File System) kann lange Dateinamen bis zu 108 Zeichen verarbeiten, besitzt internationale Einstellungen, (es kann Dateinamen die Buchstaben mit Akzenten enthalten verwenden), und kann auch zwischengespeichert werden, wenn der Benutzer die Formatierung der Partition mit der Cache-Option gewählt hat. AROS Dateisysteme besitzen die Fähigkeiten. Dateinamen dürfen mit '.' wie unter UNIX beginnen und sie können mehrere Erweiterungen wie z.B. Dateiname.tar.gz besitzen.
AmigaOS und AROS verfügen beide über eine grafische Benutzeroberfläche und eine Kommandozeilen-orientierte Shell, die mit UNIX-Shells vergleichbar ist. Amiga's GUI Workbench ist als AROS´s Wanderer dupliziert.
Die Version 3.1 von AmigaOS (und höher) oder die grafische Benutzeroberfläche kann zwischen 10 verschiedenen Sprachen umgestellt werden und bietet eine vollständige Lokalisierung durch einen Einstellungseditor, und dies alles ohne eine Neuinstallation des Betriebssystems vorzunehmen! Workbench bietet diesen Lokalisierungsmechanismus auch für Anwendungsprogramme für die folgenden Sprachen: Dänisch, Deutsch, Englisch, Spanisch, Französisch, Italienisch, Niederländisch, Norwegisch, Portugiesisch und Schwedisch. AROS bietet Unterstützung für 23 Sprachen und es kann mehr als nur eine Sprache angegeben werden.
Das Datentyp-System des AmigaOS ist ein zentralisiertes erweiterbares modulares System und beschreibt jede Art von Datei (Text, Musik, Bild-Dateien, Videos), jeweils mit einem eigenen Standarmodul zum Laden/Speichern. Jeder erfahrene Programmierer kann nach den Richtlinien der Amiga-Datentyp Programmierung ein neues Standard Datentyp-Modul, welches für jede Art von Datei zum Laden oder Speichern benötigt wird, erstellen. Einmal erstellt, ist der neue Datentyp für das gesamte Amiga-System, einschließlich aller Programme erkennbar, durch einfaches Kopieren des neuen Datentyps in das Verzeichnis SYS:Classes/DataTypes/ sowie dem Deskriptor, der aufgerufen wird um Dateien zu identifizieren, nach DEVS:DataTypes/. Dies ermöglicht den Amiga Programmen das Laden und Speichern jeder Art von Dateien für die ein entsprechender Datentype besteht, ohne die Notwendigkeit die Dateibeschreibungen in die Binärdatei einzubetten und ohne die Notwendigkeit eines unabhängigen Systems von Dateiladern. Diese Implementierung von Mimetypen ist einzigartig für den Amiga und ist vollständig in AROS implementiert.
Hinweis: Die logischen Volumes SYS: und DEVS: werden während der AROS-Startsequenz mit Zuweisungen erstellt und werden im nächsten Artikel beschrieben.
Ein einzigartiger Datentyp ist iff, oder Interchange File Format. Eine iff-Datei kann entweder eine sound-Datei, eine Bilddatei oder eine Animationsdatei sein. Der schnellste Weg, um seinen Typ zu bestimmen geschieht durch Öffnen der Datei. Dieser Datentyp wird auch in AROS implementiert.
Ein weiterer Datentyp ist der AmigaGuide, welches eine Art Anzeigeformat für die Hilfe-Datei ist. AmigaGuides sind in einer HTML-Version geschrieben und dieser Datentyp war bereits im Einsatz bevor das World Wide Web existierte. Er wurde geschaffen, damit Hilfsanleitungen Hypertext-Links zu Unterabschnitten des Handbuchs enthalten können, und jeder Unterabschnitt kann Hypertext-Links zurück zum Inhaltsverzeichnis enthalten. Dieser Datentyp wird auch in AROS implementiert.
In dem dritten und letzten Artikel über Icaros werden wir uns die Programme auf der CD ansehen.