Das Betriebssystem Linux
Linux ist ein freies Multiplattform-Mehrbenutzer-Betriebssystem, das den Linux-Kernel enthält. Im praktischen Einsatz werden meist sogenannte Linux-Distributionen wie Ubuntu, Mint oder Debian genutzt, in denen der Linux-Kernel und verschiedene Softwaremodule zu einem fertigen Paket zusammengestellt sind. Die Architektur des Linux-Betriebssystems ist folgendermaßen dargestellt.
Das zentrale Kernstück (Kernel) des Betriebssystems bildet eine Trennschicht zwischen Hardware und Anwenderprogrammen. Das heißt, wenn ein Programm auf ein Hardwaremodul zugreifen will, so kann es nicht direkt darauf zugreifen, sondern nur über das Betriebssystem. Dazu bedient sich das Programm der Systemaufrufe. Über den Systemaufruf teilt das Anwenderprogramm dem Betriebssystem mit, dass eine Systemressource genutzt werden soll. Will etwa ein Programm einen Text auf dem Bildschirm ausgeben, so wird ein Systemaufruf gestartet, dem der Text übergeben wird. Dieser Systemaufruf schreibt den Text dann auf den Bildschirm.
Auf der anderen Seite muss das Betriebssystem die Möglichkeit haben, mit den einzelnen Hardware-Komponenten zu kommunizieren. Mittels seiner Treiberschnittstelle spricht es spezielle Geräte-Treiber an. Erst die Treiber kommunizieren dann direkt mit den Geräten, die an dem Computer angeschlossen sind.
Unterrichtsbegleitend biete ich folgende Übungen an, um sich mit den theoretischen Abläufen des Betriebssystems Linux vertraut zu machen.
# | Zweck | Aufgabe |
---|---|---|
1 | Einführung in Nebenläufigkeit | Einführung in Nebenläufigkeit |
2 | Erzeugen zweier Prozesse | Prozesse |
3 | Anwendung zweier Prozesse | Anwendung Prozesse |
4 | Erzeugung zweier Threads | Threads |
5 | Anwendung zweier Threads | Thread Applikation |
6 | Zombies | Zombies |
7 | Signale I: Timer Event | Signale I |
8 | Signale II: Strg+C Event | Signale II |
9 | Signale III: Division durch 0 | Signale III |
10 | Anwendung von Signale: Counter | Counter Applikation |
11 | System Calls I: exec / system | System Calls I |
12 | System Calls II: cat-Umsetzung | System Calls II |
13 | Zusatz: User-Signale senden | User Signale |