Betriebssystem SIOS

(=Simultaneous Operating System)
SIOS war ein Betriebssystem, das im Bereich der Arbeitsplatzcomputer (A5120, A5130, K8924, USAR) Anwendung fand. Es wurde aus der Funktionalität von Großrechnern abgeleitet und hauptsächlich im kommerziellen Bereich (Sparkasse, Post, Bahn) eingesetzt.


SIOS1526, Befehl SYSD, unten die Systemzeile eingeblendet

Zu SIOS gibt es kein kompatibles westliches Betriebssystem. Daher war die Auswahl an Software und damit auch die Verbreitung von SIOS nur sehr gering. Im privaten Umfeld wurde SIOS kaum eingesetzt.

Die Entwicklung von SIOS fand zusammen mit der Entwicklung der K1520-Rechner statt. So wurden spezielle Eigenschaften des SIOS, wie Speicherschutz, Nutzung eines Tastatur-Kodiersteckers sowie die Tastatur-Belegung in der Hardware berücksichtigt.

An externen Geräten unterstützte SIOS die gesamte K1520-Hardware.
So waren z.B. möglich: 5¼-Zoll-Diskettenlaufwerke, 8-Zoll-Diskettenlaufwerke, Kassettenlaufwerke, Spulenmagnetbandgeräte, Lochbandtechnik, Magnetkartentechnik, Modems, verschiedene Tastaturen und Bildschirmkarten sowie verschiedene Speicherbestückungen.
Die Auswahl, welche Module vom aktuellen Betriebssystemkern unterstützt wurden, erfolgte bei der Systemgenerierung.

SIOS arbeitete formularorientiert. Ein- und Ausgabe erfolgten also in festen, vorher durch das Programm zu definierenden Feldern. Rollende Bildschirmausgaben waren nicht üblich.


Zwei der von Robotron verfassten SIOS-Handbücher

Für die Rechner A5110 und PC1715 gab es eine spezielle abgerüstete Version von SIOS namens BROS.

Die Behörden, die damals mit SIOS gearbeitet hatten, haben leider ihre Datenträger meist penibel vernichtet. Daher ist es heute äußerst schwierig, an Anwenderprogramme für SIOS heranzukommen. Da SIOS nicht im privaten Umfeld eingesetzt wurde, gibt es auch nahezu keine Spieleprogramme dazu.

Wer besitzt noch Disketten mit SIOS-Software?


SIOS-Intern

SIOS bestand aus einem residenten Betriebssystemteil sowie Dienstprogrammen.
Der residente Teil konnte von der Diskette, von der Magnetkassette oder vom EPROM geladen werden und meldete sich mit einer Statusmeldung ("SIOS-Monitor") auf der untersten Zeile des Bildschirms. Dort konnten dann Kommandos zum Starten von Programmen sowie zur Systemanpassung eingegeben werden. Über die Monitortaste ([M]) konnte jederzeit aus einem laufenden Programm heraus die Systemzeile aktiviert werden.

SIOS gestattete im beschränktem Maße Multitasking. Das heißt, dass Zugriffe auf die Rechnerperipherie (z.B. Diskettenlaufwerk oder Modem) im Hintergrund erfolgen konnten, während das Programm weiter arbeitete. Vor dem Start eines 2. Prozesses prüfte SIOS, ob der Rechnerbus den Datentransfer des neuen Prozesses verkraften würde und startet ihn dann ggf.

SIOS unterstützte ein Berechtigungskonzept sowie die Arbeit mehrerer Nutzer. Die Identifikation des Nutzer erfolgte primär durch Auswertung des auf der Tastatur K7636 oder K7637 befindlichen Sicherheitssteckers. Durch ihn wird die Berechtigungsebene des Nutzers festgelegt und außerdem geprüft, ob der Nutzer an diesem Rechner arbeiten durfte. Bei nicht-passendem Sicherheitsstecker erfolgte die Sperrung der Tastatur und des Bildschirms. Bei Benutzung der Terminaltastatur K7633 wurde die Berechtigung durch 2 Schlüsselschalter (einer für den Anwender, einer für den Administrator) festgelegt.

Die Bildschirmausgabe von SIOS erfolgte nicht wie bei SCP oder DCP zeilenorientiert, sondern formularorientiert. Ein Programm, das eine Tastatureingabe oder Bildschirmausgabe machen wollte, definierte ein Formular mit entsprechenden Ein- bzw. Ausgabefeldern. SIOS kümmerte sich dann darum, dass nur auf diesen Feldern Ein- bzw. Ausgaben erfolgen. Das Eingeben von Daten außerhalb der Felder bestrafte SIOS sofort durch Aktivierung der Fehlerlampe und Sperrung der Tastatur.

Um den Speicherplatzbedarf von SIOS klein zu halten, war der Betriebssystemkern von SIOS generierbar. Das heißt, es wurden nur die Hardwaretreiber eingebunden, wie für den jeweiligen Rechner gebraucht wurden. Umgekehrt muss die Hardware, die als Modul ins Betriebssystem eingebunden war, auch wirklich existieren, sonst bootete der Rechner nicht. Die Anzeige der in eine Startdiskette eingebundenen Module erfolgte mit dem Programm SYSD. Zur Systemgenerierung diente das Programm SGEN.

Speicherseitig war SIOS sehr variabel:
Der minimale RAM-Bedarf war abhängig von den geladenen Modulen und lag bei Mini-Systemen bei 9 KByte.
SIOS 0.x und 1.x benutzen maximal 64 KByte Speicher, SIOS 2.x lief ausschließlich auf Rechnern mit 112 KByte Speicher.
SIOS realisierte einen Speicherschutz zwischen den Programmen. Es war daher nicht möglich, dass ein Programm den Speicherbereich eines anderen Programms oder des Betriebssystems überschrieb. In diesem Fall stoppte SIOS den Rechner mit einer Schutzverletzungs-Meldung.


Dateisystem

Das Dateisystem von SIOS war gegenüber SCP etwas gewöhnungsbedürftig:
Ein wichtiger Parameter eines Datenträgers war seine Datenträgerbezeichnung (VolumeID). Sie war bei verschiedenen Vorgängen anzugeben und konnte mit dem Programm FSERV angezeigt und geändert werden.

SIOS unterschied zwischen dem physischen und dem logischen Dateisystem. Physische Dateien können z.B. Datenbanken oder Bibliotheken sein und waren in der Anzahl auf 19 begrenzt. Physische Dateien waren immer unfragmentiert. Um das zu erreichen, musste beim Erstellen der Datei deren maximale Größe (EOE) angegeben werden, die dann sofort auf der Diskette reserviert wurde. Erwies sich später die maximale Größe der Datei (EOE) als zu klein, half nur ein Neuanlegen der Datei und eine anschließende Umkopierung der Daten. Physische Dateien konnten bei SIOS über mehrere Disketten gehen. Diese Möglichkeit bot kein anderes Betriebssystem. SIOS forderte in diesem Fall bei Bedarf zum Wechsel der Diskette auf. Die Erstellung von physischen Dateien erfolgte mit dem Programm FSERV.

Eine Bibliothek war eine Art Container, der logische Dateien enthielt.
Es konnte auf einer Diskette nur drei Bibliotheken geben: SOURCELB, RELOCLB und PHASELB. Die Bearbeitung von Bibliotheken erfolgte mit dem Programm LBSV.

Die innerhalb von Bibliotheken befindlichen Objekte bezeichnete man als "Logische Dateien". Ihre Anzahl ist auf 255 pro Bibliothek begrenzt. Logische Dateien konnten innerhalb ihrer Bibliothek auch fragmentiert sein. Im Gegensatz zu vielen anderen Betriebssystemen hatten die logischen Dateien eine Struktur. Das heißt, sie stellten nicht einfach eine Anhäufung von Bytes sondern eine Art Datenbank dar.

Disketten wurden unter SIOS ausschließlich einseitig formatiert. Zuständig dafür war das Programm INIT. Es prüfte neben der Formatierung die Lesbarkeit der Diskette. War eine Spur fehlerhaft, wurde sie gesperrt und durch eine der beiden Ersatzspuren ersetzt. Enthielt eine Diskette mehr als 2 defekte Spuren, war sie für SIOS unbrauchbar.

In ausführbaren Programmen unterstützte SIOS zwei Befehlsarten: Maschinenbefehle (SIEX) und Makrobefehle (MABS), die auch gemischt in Programmen vorkommen konnten. Zur Entwicklung von Programmen standen mehrere Programmiersprachen (Assembler, PASCAL, BASIC) zur Verfügung.


Der Bootvorgang

SIOS konnte auf 3 Arten gebootet werden: Als nächstes überprüfte SIOS das Vorhandensein der Hardware (entsprechend der eingebundenen Kernel-Module) und initialisierte sie ggf. Die Größe und die Lage des RAMS wurde ebenfalls ermittelt und anschließend der Bildschirm gelöscht.
Befand sich im SIOS-Kernel ein Modul namens "FIX" und auf dem Datenträger ein Programm namens INDEX, wurde dieses Programm automatisch gestartet. Falls nicht, wurde die Systemzeile aktiviert und SIOS erwartete die Eingabe eines Befehls.


Bedienung von SIOS

SIOS war bei der Eingabe sehr restriktiv. Eingaben von falschen Zeichen oder an falscher Stelle wurden sofort durch eine Sperrung des Programms bestraft. Die Sperrung äußerte sich auf der Tastatur im Aufleuchten der "RESET"-Lampe.
Entsperrt wurde ggf. mit der "RESET"-Taste (hat nichts mit dem Neustart des Rechners zu tun!).

Die [M]-Taste (Monitortaste) bewirkte ein temporäres Verlassen des aktuellen Programms und sprang zur SIOS-Kommandozeile (Monitor-Programm).
Alle Eingaben des Monitor-Programms waren einzeln mit der ET1-Taste abzuschließen. Die ET2-Taste bewirkte in der Regel einen Sprung an den Programmanfang.

Kritische Befehle benötigten die Administrator-Berechtigung. Diese wurde durch Stecken des entsprechenden Sicherheitssteckers oder -Schlüssels in der Tastatur oder durch Einlegen einer entsprechenden Magnetkarte erreicht.

Die Laufwerke manifestierten sich unter SIOS mit Ziffern:

SIOS-Befehle

Die meisten SIOS-Befehle lagen in Form ausführbarer (externer) Programme vor, die vom Datenträger gestartet wurden.
Interne Befehle waren dagegen immer verfügbar und funktionierten ohne Datenträger.

Interne Befehle

Externe Befehle für Diskettenarbeit

Externe Befehle für Magnetbandkassetten

Externe Befehle für die Arbeit mit ½-Zoll-Magnetbändern

Externe Befehle für Programmentwicklung

Externe DFÜ-Befehle

Sonstige externe Befehle


SIOS1526, Befehl INIT

SIOS1526, Befehl FGEN (Hauptmenü)

SIOS1526, Befehl FGEN, Anzeige der Disk-Eigenschaften

SIOS1526, Befehl FGEN, Anzeige der phys. Dateien

SIOS1526, Befehl LBSV, Hauptmenü

SIOS1526, Befehl LBSV, Anzeige des Bibliotheks-Inhalts

SIOS1526, Befehl SYSD, Hauptmenü

SIOS1526, Befehl SYSD, Analyse der Systemdiskette

SIOS1526, Befehl SGEN, Auswahl der Module

SIOS1526, Befehl CODP, Hauptmenü

Einen Vergleich der wichtigsten Befehle bei den unterschiedlichen Betriebssysteme findet man hier.

Heute ist SIOS ein sehr seltenes Betriebssystem. Die Quellcodes zu SIOS gelten nach wie vor als verschollen. Anwenderprogramme unter SIOS gibt es auch fast keine mehr.

Wer besitzt noch Programmdisketten für SIOS?



Letzte Änderung dieser Seite: 29.11.2016Herkunft: www.robotrontechnik.de