Entwurf von Betriebssystemen
Eine Einführung

Author:

Language: German

54.22 €

Subject to availability at the publisher.

Add to cartAdd to cart
Publication date:
444 p. · 17x24.4 cm · Paperback
1.1 Die Formulierung von Programmen 1.1.1 Ein Betriebssystem besteht aus zahlreichen Programmen sehr unterschied- 1 icher Größe. Nicht selten bewegt sich der Umfang eines Betriebssystems zwischen 100 Kund 500 K Bytes. Ein mittelgroßer Ubersetzer für eine Programmiersprache umfaßt dagegen nur 30 - 50 K Bytes. (K ist eine Abkürzung für "Kilo", d. h. "Tau­ 10 send". In der Informatik bedeutet K stets 1024=2 .) In diesem Buch studieren wir Betriebssysteme aus der Sicht des Systementwicklers. Das bedeutet, daß wir die verschiedenen Aufgaben eines Betriebssystems analysieren sowie Programme entwickeln, die diese Aufgaben erfüllen. Dabei wird aber weniger die Analyse als vielmehr die Synthese im Vordergrund stehen: wir erörtern, wie die Komponenten eines Betriebssystems unter vorgegebenen Bedingungen realisiert werden können. Dabei kann das vorl iegende Buch als Vorbereitung für andere Bücher dienen, welche sich mehr der Analyse von Betriebssystemen widmen. Wenn der Leser das ange­ botene Material durchgearbeitet hat, wird er für eine tiefergehende Analyse der Leistungsfähigkeit von Betriebssystemen und für eine Beschäftigung mit Warte­ schlangentheorie gut vorbereitet sein. Entwicklungsstudien bilden den angemessenen Hintergrund für die mathematische Analyse von Systemmodellen. Die Systemanalyse bleibt daher im vorl iegenden Buch auf den Vergleich einiger alternativer Entwürfe und Implementierungen beschränkt.
1 Einführung.- 1.1 Die Formulierung von Programmen.- 1.2 Die Aufgaben eines Betriebssystems.- 1.3 Ein einfaches Betriebssystem.- 1.4 Das Leistungsverhalten des einfachen Betriebssystems.- 1.5 Verbesserung der Leistungsfähigkeit.- 2 Grundlegende Konzepte von Betriebssystemen.- 2.1 Umschalten des Prozessors.- 2.2 Stapel systeme.- 2.3 Prozesse.- 2.4 Mehrprogrammbetrieb.- 2.5 Teilnehmerbetrieb.- 3 Nebenläufige Prozesse.- 3.1 Zugriff auf gemeinsame Daten.- 3.2 Sperroperationen.- 3.3 Wechselseitiger Ausschluß ohne spezielle Instruktionen.- 3.4 Semaphoroperationen P und V.- 3.5 Verklemmungen.- 4 Kooperierende Prozesse.- 4.1 Synchronisation.- 4.2 Private Semaphore.- 4.3 Fragen und Antworten.- 4.4 Software-Implementierung von Semaphoren.- 4.5 Hardware-Implementierung von Semaphoren.- 5 Kommunizierende Prozesse.- 5.1 Kommunikationstechniken.- 5.2 Ein typisches Prozeßkommunikationssystem.- 5.3 Gerätekommunikation.- 5.4 Kommunikation mit der Operateurkonsole.- 5.5 Virtuelle Geräte.- 6 Ablaufsteuerung.- 6.1 Elementare Zuteilungsstrategien.- 6.2 Ein Spektrum präemptiver Zuteilungsstrategien.- 6.3 Langfristige Ablaufsteuerung.- 6.4 Ablaufsteuerung virtueller Prozessoren.- 6.5 Implementierungsfragen und Mehrprozessorzuteilung.- 7 Speicherverwaltung.- 7.1 Uberlagerungstechniken.- 7.2 Programmverschiebung und -umlagerung.- 7.3 Segmentierung.- 7.4 Seitenverfahren.- 7.5 Segmentierung mit Seitenverfahren.- 8 Strategien zur Speicherverwaltung.- 8.1 Belegungsstrategien.- 8.2 Austauschstrategien.- 8.3 Das Lokalitätsprinzip.- 8.4 Externer Speicherverschnitt.- 8.5 Interner Speicherverschnitt.- 9 Datenverwaltung.- 9.1 Dateistrukturen.- 9.2 Indexorganisation.- 9.3 Das Dateisystem.- 9.4 Zugriffsschutz.- 9.5 Implementierung von Schutzsystemen.- 10. Systemstruktur und -entwicklung.- 10.1Vermeidung von Verklemmungen.- 10.2 Modularität.- 10.3 Verifikation.- 10.4 Dokumentation.