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.

#ZweckAufgabe
1Einführung in NebenläufigkeitEinführung in Nebenläufigkeit
2Erzeugen zweier ProzesseProzesse
3Anwendung zweier ProzesseAnwendung Prozesse
4Erzeugung zweier ThreadsThreads
5Anwendung zweier ThreadsThread Applikation
6ZombiesZombies
7Signale I: Timer EventSignale I
8Signale II: Strg+C EventSignale II
9Signale III: Division durch 0Signale III
10Anwendung von Signale: CounterCounter Applikation
11System Calls I: exec / systemSystem Calls I
12System Calls II: cat-UmsetzungSystem Calls II
13Zusatz: User-Signale sendenUser Signale