| Vorwort zur 1. Auflage | 6 |
---|
| Inhaltsverzeichnis | 7 |
---|
| 1 Einleitung | 12 |
---|
| 2 Grundlagen der Informationstechnik | 14 |
---|
| 2.1 Bit | 14 |
| 2.2 Repräsentation von Zahlen | 15 |
| 2.3 Datei- und Speichergrößen | 19 |
| 2.4 Informationsdarstellung | 20 |
| 3 Grundlagen der Betriebssysteme | 25 |
---|
| 3.1 Einordnung der Betriebssysteme in die Informatik | 25 |
| 3.2 Positionierung und Kernfunktionalitäten von Betriebssystemen | 26 |
| 3.3 Entwicklung der Betriebssysteme | 29 |
| 3.4 Betriebsarten | 33 |
| 3.5 8/16/32/64 Bit-Betriebssysteme | 37 |
| 3.6 Echtzeitbetriebssysteme | 37 |
| 3.7 Verteilte Betriebssysteme | 40 |
| 3.8 Architektur des Betriebssystemkerns | 42 |
| 3.9 Schichtenmodell | 46 |
| 4 Grundlagen der Rechnerarchitektur | 48 |
---|
| 4.1 Von-Neumann-Architektur | 48 |
| 4.2 Ein-/Ausgabegeräte | 54 |
| 4.3 Digitale Datenspeicher | 57 |
| 4.4 Speicherhierarchie | 58 |
| 4.5 RAID | 73 |
| 5 Speicherverwaltung | 84 |
---|
| 5.1 Konzepte zur Speicherverwaltung | 84 |
| 5.2 Speicheradressierung in der Praxis | 93 |
| 5.3 Seitenersetzungsstrategien | 112 |
| 6 Dateisysteme | 118 |
---|
| 6.1 Technische Grundlagen der Dateisysteme | 119 |
| 6.2 Blockadressierung bei Linux-Dateisystemen | 119 |
| 6.3 Dateisysteme mit Dateizuordnungstabellen | 126 |
| 6.4 Journaling-Dateisysteme | 134 |
| 6.5 Extent-basierte Adressierung | 136 |
| 6.6 Copy-on-Write | 140 |
| 6.7 Datenzugriffe mit einem Cache beschleunigen | 141 |
| 6.8 Defragmentierung | 142 |
| 7 Systemaufrufe | 144 |
---|
| 7.1 Benutzermodus und Kernelmodus | 144 |
| 7.2 Systemaufrufe und Bibliotheken | 145 |
| 7.3 Ablauf eines Systemaufrufs | 149 |
| 8 Prozessverwaltung | 151 |
---|
| 8.1 Prozesskontext | 151 |
| 8.2 Prozesszustände | 152 |
| 8.3 Struktur eines Prozesses im Speicher | 159 |
| 8.4 Prozesse erzeugen mit fork | 161 |
| 8.5 Prozesse ersetzen mit exec | 167 |
| 8.6 Prozesswechsel und Scheduling von Prozessen | 171 |
| 9 Interprozesskommunikation | 183 |
---|
| 9.1 Kritische Abschnitte und Wettlaufsituationen | 183 |
| 9.2 Synchronisation von Prozessen | 186 |
| 9.3 Kommunikation von Prozessen | 195 |
| 9.4 Kooperation von Prozessen | 230 |
| 10 Virtualisierung | 238 |
---|
| 10.1 Partitionierung | 239 |
| 10.2 Hardware-Emulation | 240 |
| 10.3 Anwendungsvirtualisierung | 241 |
| 10.4 Vollständige Virtualisierung | 242 |
| 10.5 Paravirtualisierung | 244 |
| 10.6 Hardware-Virtualisierung | 246 |
| 10.7 Betriebssystem-Virtualisierung | 246 |
| Glossar | 249 |
---|
| Literatur | 258 |
---|
| Sachverzeichnis | 262 |