Zum Hauptinhalt springen

0. Einführung

Bevor man sich mit dem Aufbau und Funktionsweise von Betriebssystemen beschäftigt, ist es sinnvoll, sich mit den Grundlagen der Rechnerarchitektur vertraut zu machen.

Wichtige Konzepte

Computer-System-Struktur

Ein modernes Computersystem besteht aus einer oder mehreren CPUs (dem "Gehirn") und diversen Geräte-Controllern (für Festplatten, USB-Geräte, Monitore usw.). Diese Komponenten sind über einen gemeinsamen Bus verbunden, der den Zugriff auf den geteilten Hauptspeicher (RAM) ermöglicht. Da sowohl die CPU als auch die Controller oft gleichzeitig (concurrently) auf diesen begrenzten Speicher zugreifen müssen, ist ein Speicher-Controller notwendig, der diesen Zugriff synchronisiert und einen reibungslosen, geordneten Betrieb sicherstellt.

Das Bootstrap-Programm

Das Bootstrap-Programm ist das allererste Programm, das beim Starten oder Neustarten eines Computers ausgeführt wird. Es ist üblicherweise im ROM (Read-Only Memory) gespeichert und hat die entscheidende Aufgabe, das Betriebssystem zu initialisieren. Es lokalisiert den Betriebssystemkern (Kernel), den Hauptteil des OS, auf dem Sekundärspeicher (z.B. Festplatte) und lädt ihn in den Hauptspeicher, woraufhin das Betriebssystem die Kontrolle übernimmt.

Interrupts und Systemaufrufe

Ein Interrupt ist ein Signal an die CPU, das anzeigt, dass ein Ereignis eingetreten ist, welches sofortige Aufmerksamkeit erfordert, wodurch die CPU ihre aktuelle Arbeit unterbricht. Dieses Signal kann entweder von der Hardware (z.B. ein Tastendruck oder ein E/A-Gerät) oder von der Software ausgelöst werden. Wenn ein Interrupt gezielt durch eine Software ausgelöst wird, um beispielsweise einen Dienst vom Betriebssystem anzufordern, wird dies als System Call (oder Monitor Call) bezeichnet.

Die Interrupt-Verarbeitung

Wenn die CPU einen Interrupt empfängt, stoppt sie sofort ihre aktuelle Tätigkeit und überträgt die Ausführung an eine vordefinierte Speicheradresse. Diese Adresse verweist auf den Beginn einer speziellen "Interrupt Service Routine" (ISR), die den Grund für die Unterbrechung behandelt (z.B. das Einlesen von Tastaturdaten). Sobald die ISR vollständig ausgeführt wurde, kehrt die CPU zu dem Programm zurück, das sie zuvor unterbrochen hat, und setzt dessen Ausführung fort.