EMZETT.
Login

Betriebssystem (OS)

Kurz: Die grundlegende Software, die Hardware verwaltet und Programmen eine einheitliche Schnittstelle bereitstellt — Operating System, kurz OS.

Genauer: Übernimmt zentrale Aufgaben wie Prozessverwaltung (welches Programm bekommt wann Rechenzeit), Speicherverwaltung, Dateisystem und Gerätetreiber. Bekannte Beispiele: Windows, Linux und macOS von Apple. Ohne Betriebssystem müsste jede Anwendung direkt mit der Hardware kommunizieren.

Im Detail

Der Kernel als Herzstück

Das Herzstück jedes Betriebssystems ist der Kernel — der Teil, der direkt mit der Hardware spricht und den restlichen Programmen eine einheitliche, abstrahierte Schnittstelle bietet (z. B. “Datei öffnen” statt “Sektor X auf Festplatte Y lesen”). Programme laufen im “User Space” mit eingeschränkten Rechten, der Kernel selbst im “Kernel Space” mit vollem Hardwarezugriff — diese Trennung verhindert, dass ein fehlerhaftes oder bösartiges Programm das ganze System destabilisiert. Will ein normales Programm etwas tun, das Hardwarezugriff braucht (eine Datei lesen, ein Netzwerkpaket senden), muss es einen “Systemaufruf” (Syscall) an den Kernel stellen, statt selbst direkt auf die Hardware zuzugreifen.

Multitasking und virtueller Speicher

Zentrale Aufgaben im Detail:

  • Multitasking: mehrere Prozesse quasi-gleichzeitig ausführen, indem die CPU-Zeit in kleine Zeitscheiben (oft nur wenige Millisekunden) aufgeteilt und blitzschnell zwischen Prozessen gewechselt wird — für Menschen wirkt das wie echte Gleichzeitigkeit, obwohl eine einzelne CPU-Kern-Einheit tatsächlich immer nur einen Prozess auf einmal ausführt (moderne Mehrkern-CPUs führen zusätzlich echte Parallelität über mehrere Kerne aus).
  • Virtueller Speicher: jedem Prozess erscheint es, als hätte er den ganzen Arbeitsspeicher für sich allein, mit eigenem, bei 0 beginnendem Adressraum — tatsächlich verwaltet das Betriebssystem die Zuteilung, Isolierung zwischen Prozessen und bei Bedarf die Auslagerung (“Swapping”) auf die Festplatte, wenn der physische RAM knapp wird.
  • Dateisysteme: legen fest, wie Daten physisch auf dem Speichermedium organisiert werden — NTFS bei Windows, ext4 (und Nachfolger wie btrfs) bei vielen Linux-Distributionen, APFS bei macOS.

Scheduler und Priorisierung

Der Teil des Kernels, der entscheidet, welcher Prozess wann und wie lange CPU-Zeit bekommt, heißt Scheduler. Moderne Scheduler berücksichtigen Priorität (ein Nutzer-Klick sollte gefühlt sofort reagieren, ein Hintergrund-Backup kann warten), Fairness (kein Prozess soll dauerhaft verhungern) und Effizienz (möglichst wenig Zeit für den Wechsel zwischen Prozessen selbst verschwenden, den sogenannten “Context Switch”).

Mono- vs. Multi-User-Betriebssysteme

Die meisten heutigen Betriebssysteme (Windows, Linux, macOS) sind grundsätzlich Multi-User-fähig — mehrere Benutzerkonten mit getrennten Rechten und Daten können auf demselben System existieren, auch wenn Privatnutzer meist nur ein einziges Konto verwenden. Server-Betriebssysteme nutzen diese Fähigkeit intensiver aus, etwa um mehrere Kundenanwendungen isoliert auf derselben physischen Maschine zu betreiben.

Embedded und Echtzeitbetriebssysteme

Neben den bekannten Desktop-/Server-Betriebssystemen gibt es spezialisierte Echtzeitbetriebssysteme (RTOS) für eingebettete Systeme (Industriesteuerungen, Autos, medizinische Geräte), bei denen garantierte, vorhersagbare Reaktionszeiten wichtiger sind als maximaler Durchsatz — ein normales Desktop-Betriebssystem kann in seltenen Fällen unvorhersagbar für Millisekunden “hängen” (z. B. durch Garbage Collection oder Hintergrundprozesse), was in einer Industriesteuerung oder einem Airbag-System katastrophale Folgen hätte. RTOS opfern deshalb bewusst Durchsatz und Komplexität zugunsten harter, garantierter Zeitgrenzen.

Siehe auch: Windows, Linux, Apple