Skip to content

Betriebssystem: Dem Computer einen „Generalmanager" anstellen

Vorwort

Mit einem perfekten CPU und unendlich viel Arbeitsspeicher lässt sich der Computer direkt nutzen? Im letzten Kapitel haben wir gesehen, wie Transistoren zu einem leistungsstarken CPU zusammengesetzt werden. Doch selbst mit der besten Hardware: Wenn man sie direkt nutzen müsste, wäre selbst die Anzeige eines einzigen Buchstabens auf dem Bildschirm ein Unterfangen von hunderten Zeilen kryptischer Maschinenbefehle. Nicht nur mühsam, sondern auch extrem gefährlich — ein kleiner Fehler, und Ihr Code überschreibt die Daten eines anderen.

Um diesen Albtraum zu beenden, wurde das Betriebssystem (Operating System, kurz OS) geboren. Es ist die größte „Software-Schicht" zwischen Ihnen und der kalten Hardware. In diesem Kapitel lassen wir kryptischen Code beiseite und nutzen anschauliche Vergleiche, um zu zeigen, wie dieser „Super-Manager" die chaotische Hardware zur Ordnung zwingt.

Was werden Sie in diesem Artikel lernen?

Nach Abschluss dieses Kapitels werden Sie Folgendes gewonnen haben:

  • Problemanalyse-Fähigkeit: Bei „Programm eingefroren" oder „Speicher voll" die Ursache auf Betriebssystemebene analysieren können
  • Tiefes Terminologie-Verständnis: Verstehen, welche Probleme „Multiprozess", „Virtueller Speicher" und „Dateiberechtigungen" lösen
  • Systemisches Denken: Begreifen, dass Programme nicht isoliert laufen, sondern eng mit dem Betriebssystem, anderen Prozessen und Hardwareressourcen interagieren
  • Grundlage für Weiteres: Basis für nebenläufige Programmierung, System-Tuning und Container-Technologie schaffen
KapitelInhaltKernkonzepte
Kapitel 1ProzessverwaltungCPU-Zeitmultiplex, Round-Robin
Kapitel 2SpeicherverwaltungVirtueller Speicher, Paging
Kapitel 3DateisystemDateiorganisation, Verzeichnisstruktur

0. Überblick: Was wäre ohne Betriebssystem?

Stellen Sie sich vor, Sie eröffnen eine hochpotente „Computerfabrik" (Ihren PC). In der Fabrik gibt es einen allround-fähigen, unermüdlichen Top-Mitarbeiter (CPU), einen riesigen Lagerhallenkomplex (Arbeitsspeicher) und unzählige Container (Festplatte).

Wenn Sie keinen Fabrikleiter (Betriebssystem) einstellen:

  1. CPU-Monopol-Krise: Der CPU kann immer nur eine Sache tun. Wenn jemand Musik hört, will ein anderer eine Webseite sehen? Pech — alle müssen warten, bis der Musik-Hörer den CPU freiwillig freigibt.
  2. Speicher-Kollisionen: WeChat und ein Spiel nutzen beide den Speicher. Ohne eine Art „Pförtner", der Bereiche zuweist, legt das Spiel versehentlich seine Ausrüstungsdaten in die WeChat-Box — WeChat stürzt sofort ab.
  3. Festplattenlabyrinth: Die Festplatte ist physisch nur eine riesige Scheibe voller Nullen und Einsen. Um das gestern gespeicherte Foto zu finden, müssten Sie sich die koordinaten „Platte 1, Spur 56, Sektor 8" merken — niemand kann sich solche unmenschlichen Adressen merken.
📱 Applications
🎵💬🎮
🖥️ Operating System
Schedule CPU
Allocate memory
Manage files
💾 Hardware
🧠 CPU💾 Memory💿 Disk
The application is ready to send a request...

Um diese drei Albträume zu lösen, setzt das Betriebssystem drei Kerninstrumente ein: Prozessverwaltung, Speicherverwaltung und Dateisystem.


1. Prozessverwaltung: Zeitmultiplex des CPU

Sie nutzen Ihren PC oft so: WeChat im Hintergrund, Musik am Laufen und dabei noch getippt. Aber wenn Ihr PC nur einen einzigen CPU-Kern hat, wie macht er drei Dinge „gleichzeitig"?

Die Antwort: Er macht sie nicht gleichzeitig. Das Betriebssystem betreibt verrücktes „Zeitmanagement".

⏱️ The CPU switches tasks so fast you cannot feel it
CPU
💬Chat
Time slice: 0ms
💬
Chat
Running
🎵
Music
Waiting
🌐
Browser
Waiting
💡 Principle: The CPU switches processes every 100ms. It happens so quickly that it feels like everything runs at the same time, even though each process is actually executing in slices.

1.1 Was ist ein „Prozess"?

Jedes laufende Programm ist ein Prozess. Man kann ihn sich als „Projektteam" vorstellen: mit eigenem Code (Aufgabenliste), eigenen Speicherdaten (Projektbudget), das in der Schlange auf eine Audienz beim CPU wartet.

1.2 Round-Robin mit Zeitscheiben

Damit keine Schadsoftware den CPU dauerhaft blockiert, teilt das Betriebssystem die CPU-Zeit in winzige Scheiben (ca. 10 Millisekunden) und verteilt sie reihum an die Prozesse. Der Wechsel erfolgt so schnell, dass es sich wie „gleichzeitiges Laufen" anfühlt.


2. Speicherverwaltung: Virtueller Adressraum

Das Problem der abwechselnden CPU-Nutzung ist gelöst. Nun zum Speicherplatz. Ohne Verwaltung schreiben alle Programme direkt in den physischen Arbeitsspeicher — unweigerlich kommt es zu Kollisionen, bei denen Daten gegenseitig überschrieben werden.

🧠 The operating system gives each program an illusion of memory
📱 Memory as the program sees it (virtual)
💬 Chat
1
2
3
4
🎮 Game
1
2
3
4
The operating system maps addresses ↓
💾 Real memory chips (physical)
1OS
2
3
4OS
5
6
7
8OS
💡 Principle: Each program thinks it owns a continuous block of memory on the left. In reality, the operating system spreads data across real memory on the right. The addresses a program sees are virtual, and the OS translates them.

2.1 Virtueller Speicher (Virtual Memory)

Das Betriebssystem lügt jeden Prozess grandios an: „Hey, du hast den gesamten verfügbaren Speicher des Computers exklusiv für dich allein — nutze ihn, wie du willst!"

Aus der Sicht des Prozesses ist sein Speicher immer zusammenhängend und sauber. Sorgenlos schreibt er seine Daten hinein.

2.2 Seitentabelle (Page Table)

Wie sieht es in Wirklichkeit aus? Das Betriebssystem verstekt die Daten heimlich in den echten physischen Speicher — in verschiedene Lücken hier und dort. Das bringt zwei geniale Vorteile:

  1. Absolute Sicherheit: WeChat sieht nur seinen eigenen Bereich und kann keine fremden Daten manipulieren
  2. Fragmentierungsnutzung: Egal wie zerstückelt der physische Speicher ist — der virtuelle Raum des Prozesses bleibt ordentlich

3. Dateisystem: Organisation der persistenten Speicherung

Wenn Sie eine nagelneue Festplatte kaufen, ist sie nur eine leere Fläche aus Speicherzellen. Sie wollen ein Foto speichern? Die Festplatte fragt: „Bitte sagen Sie mir, in welchem Byte Sie speichern möchten."

📁 The file you see vs fragments on disk
📂 What you see (folder)
📁Photos
🖼️pet.jpg2.5MB
🖼️trip.png1.8MB
💾 Real disk storage (data blocks)
1
2
3Pet-1
4
5Trip-1
6Trip-2
7Pet-2
8
9
10
11Pet-3
12
💡 Principle: The file system splits a file into fragments stored in different disk blocks, then keeps a table of their locations. The tidy folder you see is a view built from that table.

3.1 Was macht das Dateisystem?

  1. Festplatte zerteilen: Die Festplatte in unzählige Blöcke fester Größe (meist 4KB) aufteilen
  2. Buchführung: Notieren, welche Blöcke voll und welche leer sind
  3. Pfadübersetzung: D:/Fotos/Haustier.jpg übersetzen in „Blöcke 3, 7 und 11"

Das ist der Grund, warum das Umbenennen einer Datei sofort erledigt ist (nur der Name im Buch wird geändert), während das Kopieren einer Datei lange dauert (die Datenblöcke auf der Festplatte müssen tatsächlich gelesen und geschrieben werden).


4. Zusammenspiel: Der komplette Programmstart

Wir haben die drei Module des Betriebssystems separat betrachtet. Nun sehen wir uns an, wie sie zusammenarbeiten, wenn Sie ein Programm per Doppelklick öffnen:

🚀 What is the computer doing after you double-click an icon?
1👆
You double-click the icon
The operating system receives a request to start the browser
2📋
Create a process
3🧠
Allocate memory
4📁
Load files
5▶️
Start running
🖱️
Clicking...

Ob Sie auf das Desktop-Icon klicken oder im Code print("Hello World") schreiben — ohne diesen komplexen Hintergrundprozess geht nichts. Dass wir so bequem in der digitalen Welt surfen können, liegt daran, dass das Betriebssystem im Hintergrund die schwere Arbeit für uns erledigt.


Weiterführende Literatur

Wenn Sie die verschiedenen „Management- und Verschleierungstechniken" des Betriebssystems faszinierend finden, können Sie diese vertiefenden Themen erkunden:

  • Prozesse und Threads: Wenn der Prozess das Projektteam ist, dann sind „Threads" die Mitarbeiter im Team
  • Nebenläufigkeit und Sperren: Wie man Deadlocks verhindert, wenn zwei Prozesse um dieselbe Ressource konkurrieren
  • Systemaufrufe: Das „Servicefenster", das das Betriebssystem den Anwendungen darüber anbietet