Benutzerspezifische Werkzeuge
Sie sind hier: Startseite Lexikon Technologische und methodische Grundlagen Software Betriebssystem

Betriebssystem

Damit ein Rechner das macht, was von ihm erwartet wird, muss seine komplexe Hardware gesteuert werden. Diese Aufgabe übernimmt das Betriebssystem. Es sorgt dafür, dass alle vorhandenen Ressourcen möglichst optimal genutzt werden können und dies auch dann, wenn eine Vielzahl von Nutzern und Anwendungsprogrammen den Rechner gleichzeitig nutzen möchten.

Motivation, Einführung und Definition

Im Sinne einer Schichtenarchitektur besteht ein Rechner in seiner untersten Schicht aus der Hardware. Diese ist zwar hochgradig komplex, stellt aber quasi nur den Körper da, der ein Gehirn benötigt, um überhaupt arbeiten zu können. Diese Aufgabe kommt dem Betriebssystem zu. Es setzt direkt auf der Hardware auf. Seine Aufgabe ist, deren vielfältigen Ressourcen zu steuern und zu verwalten, damit diese entsprechend den Anforderungen der auf dem Rechner laufenden Anwendungen möglichst effizient und für alle Anwendungen gerecht bereitgestellt werden können. In seiner Schnittstelle nach unten setzt es also auf der vergleichsweise einfachen Schnittstelle der Hardware auf. Nach oben hin bietet das Betriebssystem eine wesentlich komfortablere Schnittstelle an, die insbesondere auch von den spezifischen Eigenschaften der darunterliegenden Hardware abstrahiert. Diese Schnittstelle muss von jeder auf dem Rechner laufenden Software genutzt werden, damit auch von allen Anwendungsprogrammen.

Zu den bekanntesten Betriebssystemen für PCs bzw. Laptops gehören Microsoft Windows, Mac OS X (Apple) und Linux (eine UNIX-Variante). Letztere gehört zur Kategorie der Freeware, kann also kostenfrei genutzt werden.

Betriebssystem Abb. 1

 Abb. 1: Schichten­architektur

Aufgaben eines Betriebssystems

In allererster Linie ist ein Betriebssystem dafür verantwortlich, den auf dem Rechner laufenden Prozessen alle Ressourcen des Rechners komfortabel und effizient zur Verfügung zu stellen. Zu den wesentlichsten Ressourcen gehören die Zentraleinheit bzw. CPU (central processing unit), der Hauptspeicher samt Cache und die externen Speichermedien (wie Platte). Ein Prozess ist ein Anwendungsprogramm in Ausführung. Das Betriebssystem hat bei einem Mehrbenutzerrechner dafür Sorge zu tragen, dass alle (parallel) laufenden Prozessen die durch sie benötigten Ressourcen zugewiesen bekommen. Dabei ist insbesondere die Zuordnung von Hauptspeicher und die gerechte Zuweisung der CPU(s) auf die einzelnen Prozesse (time sharing, Zeitscheibe) zu realisieren. Ein Betriebssystem hat sich aber auch mit der Fehlerbehandlung auseinander zu setzen, indem insbesondere automatisch behebbare Fehler abgefangen und aufgelöst werden. Bei schweren Fehlern wird angestrebt, einen kontrollierten Fehlerzustand anzusteuern, von dem aus der Benutzer oder die Anwendung übernehmen kann. Schließlich hat sich das Betriebssystem auch noch um die Sicherheit eines Rechners zu kümmern. Nicht zuletzt seitdem viele Rechner im Prinzip von außen zugreifbar werden (über den Anschluss an das Internet), hat diese Funktionalität massiv an Bedeutung gewonnen.

Abhängig von ihrem Einsatzzweck gibt es unterschiedliche Arten von Betriebssystemen. Zu den einfacheren Betriebssystemen gehören die für PCs, da sie zwar mehrere Prozesse (nicht gleichzeitig) verwalten können müssen, aber Einbenutzersysteme sind. Betriebssysteme für Großrechner sind wesentlich komplexer und müssen u.a. die oben beschriebenen Funktionen erfüllen. Realzeitbetriebssysteme müssen grundsätzlich in Realzeit reagieren. Falls sie es nicht schaffen, eine kalkulierte Reaktion in der gegebenen Zeit zu realisieren, muss ein Notausgang existieren, der dann genommen wird. Eingebettete Betriebssystem sind solche, die in der Regel auf vergleichsweise einfacher Hardware laufen müssen und deshalb nur spezifische Kernfunktionen unterstützen. Verteilte Betriebssysteme kontrollieren mehrere Rechner gleichzeitig und stellen sie nach außen wie einen Rechner dar. Mit zunehmender Bedeutung des Internets bekommen Betriebssysteme auch zunehmend die Aufgabe, eine Vielzahl von Ressourcen zu betreuen und zu verwalten, die nicht notwendigerweise einem Rechner zugeordnet werden können, sondern im Internet zur Verfügung stehen (lokale Ressourcen werden global).

Hochfahren eines Rechners

Damit ein Prozess ausgeführt werden kann, muss er zunächst in den Hauptspeicher geladen werden. Beim Hochfahren eines Rechners ist der Hauptspeicher, der ein flüchtiges Medium darstellt, zunächst einmal leer. In diesem Zustand kann der Rechner im Prinzip nichts, da sein Gehirn, das Betriebssystem, nicht im Hauptspeicher ist und somit auch keine Betriebssystemfunktionen ausgeführt werden können. Abhilfe schafft hier das Bootstrapping. Darunter versteht man einen Prozess, bei dem ein System durch sich selbst gestartet wird. Damit dies möglich ist, werden die absoluten Basisfunktionen eines Rechners, das Basic Input/Output System (BIOS), auch Firmware bzw. BIOS-Firmware genannt, in einem (sehr teuren) permanenten, ursprünglich nur lesbarem Speichermedium abgelegt (read only memory (ROM)). Heutzutage wird meist das EEPROM (Electrically Erasable Programmable Read-Only Memory) benutzt, das es eingeschränkt erlaubt, den Speicherinhalt auszutauschen. Diese Firmware stellt die Basisfunktionalität eines Rechners bereit und sorgt insbesondere auch dafür, dass der eigentliche Betriebssystemkern in den Hauptspeicherbereich geladen wird.

Literatur

Silberschatz, Avi; Galvin, Peter Baer; Gagne, Greg: Operating System Concepts with Java, 8th edition, John Wiley & Sons Inc. 2008

Stallings, William: Operating Systems: Internals and Design Principles, 7th edition, Prentice Hall, 2011

Tanenbaum, Andrew S.: Modern Operating System, 3rd edition, Prentice Hall, 2008

Autor


 

Prof. Dr. Rainer Unland, Universität Duisburg-Essen, Institut für Informatik und Wirtschaftsinformatik (ICB), Datenverwaltungssysteme und Wissensrepräsentation, Schützenbahn 70, 45117 Essen

Autoreninfo


Zuletzt bearbeitet: 26.09.2014 14:42
Letzter Abruf: 24.06.2017 02:30
Artikelaktionen