Einführung in Betriebssysteme
Die Aufgaben des Betriebssystems haben sich im Lauf der Zeit gewandelt: Anfangs war ein menschlicher Operator dafür zuständig, Programme zu starten und zu beenden, später wurde diese und weitere Aufgaben von Dienst-Programmen übernommen. Um die Aufgaben und die Arbeitsweise des Betriebssystem besser zu verstehen, wird ein Computer in Schichten zerlegt: Anwendersoftware, Systemsoftware und Hardware.
Einordnung des Artikels
- Einführung in die Informatik
- Betriebssysteme
- Einführung in Betriebssysteme
- Betriebssysteme
Der Ursprung des Betriebssystems
In den 50er und 60er Jahren war nur der Prozessor des Computers realisiert. Es gab noch einen (menschlichen!) Operator (zu deutsch etwa der Bediener) im weißen Kittel mit Stapeln von Lochkarten in der Brusttasche (Statussymbol!), der Lochkarten einlegte, Programme startete, beendete, entschied, wann der Rechner gewartet wurde etc. Der Name Operating System (OS), also einer Software, die die Aufgaben des Operators übernimmt, ist somit neuer als die Berufs-Bezeichnung Operator.
Das erste Programm-Schnipsel, das man als Vorläufer eines Betriebssystems bezeichnen könnte, war ein Programm, das feststellte, ob ein Programm (besser: ein Stapel-Auftrag) beendet war und dann das nächste Programm startete.
Schichten eines Rechnersystems
Um besser zu verstehen, welche Aufgaben das Betriebssystem heute in einem Rechnersystem erfüllt, ist es hilfreich, einen Computer in Schichten zu zerlegen (siehe Tabelle 1).
Anwendersoftware | Programme wie |
Systemsoftware | Betriebssystem-Kern, Dienst-Programme |
Hardware | Prozessor, Hauptspeicher, externe Geräte (Speicher, Ein- und Ausgabegeräte) |
Tabelle 1: Logische Zerlegung eines Computers in drei Schichten. Das Betriebssystem bildet die Schnittstelle zwischen der Anwendersoftware und der Hardware des Computers.
Die unterste Schicht des Computers (Hardware) sollte nach der ausführlichen Diskussion des von Neumann-Rechners klar sein: Der Computer ist eine universelle Maschine, auf der beliebige Algorithmen ausgeführt werden können. Dazu ist eine entsprechende Hardware in Form von logischen Schaltungen und Speichern im Prozessor vorhanden. Aber auch der Hauptspeicher und die externen Geräte zählen zu dieser untersten Schicht, da diese heute für die Arbeitsweise eines Computers unerlässlich sind — Computer, die nur als Prozessoren realisiert sind, gibt es heute nicht mehr.
Auch die oberste Schicht (Anwendersoftware) sollte verständlich sein: Der Nutzer des Computers möchte mit seinen Programmen arbeiten, aber nicht damit konfrontiert werden, wie diese Programme auf dem Computer ausgeführt werden.
Gäbe es nicht die dazwischenliegende Schicht der Systemsoftware, müsste der Anwender selbst dafür sorgen — wie einst der Operator —, dass seine Programme ausgeführt werden. Oder die Programme müssten so programmiert sein, dass sie direkt die von ihnen benötigte Hardware des Computers ansprechen können — was mit einem immensen Aufwand verbunden wäre.
All die Aufgaben, die die Anwendersoftware und zugleich die Hardware betreffen, werden von der Systemsoftware erledigt. Sie besteht aus dem Betriebssystem-Kern (kernel) und weiteren Dienst-Programmen. Manche dieser Dienst-Programme werden bei Bedarf vom Betriebssystem-Kern aufgerufen und zählen somit zum Betriebssystem; andere Dienst-Programme werden nicht mit dem Betriebssystem mitgeliefert und können nach Belieben nachträglich installiert oder ausgetauscht werden (Brennprogramme, Programme zum Formatieren von Laufwerken oder zur Defragmentierung).
Mit Betriebssystem-Kern ist gemeint, dass dieses Programm immer laufen muss, damit das Betriebssystem arbeitet. Je nachdem, welche Aufgabe gerade zu erfüllen ist, kann der Betriebssystem-Kern weitere Dienstprogramme aufrufen.
Zu den nicht im Betriebssystem enthaltenen Dienst-Programmen der Systemsoftware werden meist auch Programme wie Compiler und Interpreter sowie Programm-Bibliotheken gezählt. Allerdings sind sie heute oft nicht vorhanden. In der Anfangszeit des Computers war es nahezu selbstverständlich, dass ein Computer-Nutzer seine Programme selber schreibt. Und daher benötigt man einen Compiler (oder Interpreter), um diese auszuführen; falls man Programme aus anderen Bibliotheken einbinden möchte, muss man auf diese Bibliotheken auch zugreifen können.
Auch sollte man beachten, dass mit dem Installieren eines Betriebssystems meist zahlreiche Anwender-Programme mitinstalliert werden; diese Anwender-Programme gehören natürlich nicht zum Betriebssystem sondern zur Anwendersoftware.
Definition Betriebssystem
Nach DIN 44300 wird ein Betriebssystem definiert durch:
Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten des digitalen Rechensystems bilden und die insbesondere die Abwicklung von Programmen steuern und überwachen.
Diese Definition ist jetzt nur zum Teil verständlich: Dass das Betriebssystem als Schnittstelle zwischen Hardware und Software die Abwicklung von Programmen steuert und überwacht bedarf keiner weiteren Erklärung. Aber was ist damit gemeint, dass das Betriebssystem die Basis der möglichen Betriebsarten des digitalen Rechensystems bildet? Was sind mögliche Betriebsarten? Deren Erklärung folgt im nächsten Kapitel.