Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Kapitel 6 Betriebssysteme - Einführung. RW-Systemarchitektur Kap. 6 Überblick Betriebssysteme 6 Einführung 6.1 Aufgabe von Betriebssystemen 6.2 Verschiedene.

Ähnliche Präsentationen


Präsentation zum Thema: "Kapitel 6 Betriebssysteme - Einführung. RW-Systemarchitektur Kap. 6 Überblick Betriebssysteme 6 Einführung 6.1 Aufgabe von Betriebssystemen 6.2 Verschiedene."—  Präsentation transkript:

1 Kapitel 6 Betriebssysteme - Einführung

2 RW-Systemarchitektur Kap. 6 Überblick Betriebssysteme 6 Einführung 6.1 Aufgabe von Betriebssystemen 6.2 Verschiedene Komponenten / Konzepte von Betriebssystemen 6.3 Unterschiedliche Arten von Betriebssystemen 6.4 Anforderungen 6.5 Daraus abgeleitete Probleme, Teilaufgaben, Konzepte, Verfahren 6.6 Zusammenfassung 6.7 Historische Entwicklung 7 Prozesse, Fäden (threads), Scheduling 8. Speicherverwaltung 9. Dateisysteme 10. Ein- und Ausgabe Nebenläufigkeit und wechselseitiger Ausschluss – Inhalt der Vorlesung Nebenläufige Programmierung Deadlocks - dito

3 RW-Systemarchitektur Kap. 6 Abstraktionsniveaus für Programmierer Befehlssatzarchitektur - Instruction Set Architecture (ISA) Betriebssystem - Abstraktion der Architektur Bibliotheksfunktionen, Dienstprogramme Anwendungsprogramme Anwender Anwendungs- programmierer Betriebssystem- programmierer

4 RW-Systemarchitektur Kap Aufgabe von Betriebssystemen Hardware für bestimmte Zwecke benutzbar machen: bietet komfortable Abstraktion der Hardware an, Beispiel (Tanenbaum): read- und write-Kommando für Floppy Disks verlangen 13 Parameter, in 9 Bytes gepackt: Adresse, Zahl der Sektoren pro Spur, Aufzeichnungsmodus, Zwischenraum zwischen Sektoren, … geben 23 Status- und Fehlerfelder zurück, in 7 Bytes gepackt Programmierer möchte aber Datei-Abstraktion haben.

5 RW-Systemarchitektur Kap Was gehört zum Betriebssystem Rechner haben (mindestens) zwei Betriebsmodi (Hardware hat ein Modus-Bit): System-Modus – erlaubt uneingeschränkte Nutzung aller Hardware-Funktionen und Zugriff auf alle Betriebsmittel, Benutzer-Modus – erlaubt eingeschränkte Nutzung (Ausführung von nur einem Teil der Maschinenbefehle). Betriebssystem läuft als einziges im System-Modus! System-Modus ist die Basis für Schutzmechanismen. Darauf aufbauend gibt es weitere privilegierte Systeme, z.B. Passwortverwaltung, … Bedienoberfläche, Webbrowser laufen nicht im System- Modus nicht Teil des Betriebssystems

6 RW-Systemarchitektur Kap. 6 Betriebssystem, Dienstprogramme, Anwendungsprogramme Schnittstelle zwischen Betriebssystem und System- bzw. Dienstprogrammen ist nicht immer klar definiert. Hier: Dienstprogramme laufen nicht im System-Modus, sind also nicht Teil des Betriebssystems. Typische (anwendungsunabhängige) Dienstprogramme sind: Compiler Editoren Bedienoberfläche Kommandointerpreter (sog. Shell) Anwendungsprogramme: Textverarbeitung Tabellenkalkulation Datenbankanwendungen Webbrowser etc.

7 RW-Systemarchitektur Kap Typen von Betriebssystemen Viele Typen von Betriebssystemen mit verschiedenen Aufgaben, Unterstützung von Anwendungsprogrammen: Textverarbeitung, Tabellenkalkulation, Spiele, … Softwareentwicklung, Kontrolle eingebetteter (Echtzeit-)Systeme, Transaktionssystemen: Datenbanken, Reservierungssysteme, Buchhaltung,… Betriebssysteme unterstützen verschiedene Arten von Benutzern: Architektur-Abstraktion wichtig für den Anwendungsprogrammierer, Interaktivität wichtig für Online-Nutzer, Persistente Speicherung wichtig für Server-Nutzer

8 RW-Systemarchitektur Kap Anforderungen an Betriebssysteme

9 RW-Systemarchitektur Kap. 6 Anforderungen an und Charakteristik von PC/Workstation-Betriebssystemen

10 RW-Systemarchitektur Kap. 6 Anforderungen an und Charakteristik von Echtzeit- Betriebssystemen

11 RW-Systemarchitektur Kap. 6 Anforderungen an und Charakteristik von File-Server- Betriebssystemen

12 RW-Systemarchitektur Kap. 6 Anforderungen an und Charakteristik von Compute- Server-Betriebssystemen

13 RW-Systemarchitektur Kap. 6 Anforderungen an und Charakteristik von Transaktions-Betriebssystemen

14 RW-Systemarchitektur Kap. 6

15 RW-Systemarchitektur Kap Von den Aufgaben abgeleitete Probleme, Teilaufgaben, Komponenten, Konzepte, Verfahren, Eigenschaften Betriebssystem verwaltet Berechnungen Konzept : Prozess – in Ausführung befindliches Programm kreiert durch Benutzer, Service-Anfrage oder periodischen Auslöser, koexistiert häufig mit anderen Prozessen Nebenläufigkeit, Schutz voreinander, Deadlock, Livelock Sicherheitseigenschaften, Lebendigkeitseigenschaften benötigt zur Ausführung Betriebsmittel/Ressourcen Verwaltung von Betriebsmitteln, Virtualisierung, wg. Nebenläufigkeit: Konkurrenz um Betriebsmittel Scheduling Lebendigkeitseigenschaften, Fairness

16 RW-Systemarchitektur Kap. 6 Von den Aufgaben abgeleitete Probleme, Teilaufgaben, Komponenten, Konzepte, Verfahren, Eigenschaften Betriebssystem verwaltet Speicher, garantiert Persistenz – Dateisystem, garantiert Atomizität – Transaktion, Betriebssystem verwaltet Ein-/Ausgabegeräte Virtualisierung – jedem Prozess sein verlangtes Gerät Zuordnung zu realen Geräten unter Randbedingungen - Synchronität, gegenseitiger Ausschluss

17 RW-Systemarchitektur Kap. 6 Von den Aufgaben abgeleitete Probleme, Teilaufgaben, Komponenten, Konzepte, Verfahren Verschiedenen Typen von Betriebssystemen - verschiedene Optimierungsziele Server – Durchsatz Timesharing-System - Interaktivität Echtzeitbetriebssystem garantiert Reaktionszeiten, genauer, garantiert bestenfalls die Unabhängigkeit des zeitlichen Verhaltens der Prozesse,

18 RW-Systemarchitektur Kap Zusammenfassung: Aufgabe von Betriebssystemen Ein Betriebssystem ist ein Programm (Software) mit den grundsätzlichen Funktionen: 1.Virtualisierung von Systemressourcen, dazu 2.Verwaltung von Systemressourcen, 3.Bereitstellen einer erweiterten Maschine für den Anwendungsprogrammierer, 4.Anbieten von Schutzmechanismen.

19 RW-Systemarchitektur Kap. 6 Virtualisierung Betriebssystem bietet dem Benutzer statt – einem realen Rechner mit – einer festen Zahl von Prozessoren, – beschränktem Hauptspeicher, – beschränkter Zahl von Ein-/Ausgabe-Geräten – viele virtuelle Rechner an – pro ausgeführter Anwendung einen, – mit (fast) unbegrenztem Speicher, – der notwendigen Zahl von Ein-/Ausgabe-Geräten.

20 RW-Systemarchitektur Kap. 6 Verwaltung von Systemressourcen Verwaltung aller Komponenten eines komplexen Systems Komponenten sind z.B. Prozessoren, Speicher, Uhren, Platten, Terminals, Ein-/Ausgabegeräte, Netzwerkschnittstellen etc. Diese Bestandteile eines Rechnersystems bezeichnet man auch als Betriebsmittel. Betriebssystemaufgabe: Geordnete und kontrollierte Zuteilung von Betriebsmitteln an konkurrierende Prozesse / Benutzer. Beispiele: Mehrere Programme rechnen scheinbar gleichzeitig auf einer CPU und im gleichen Speicher, versuchen gleichzeitig Daten auf demselben Drucker auszugeben.

21 RW-Systemarchitektur Kap. 6 Betriebssystem als Ressourcenmanager Aufgaben beim Verwalten von Systemressourcen: Faire Zuteilung von gemeinsam genutzten Betriebsmitteln Auflösung von Konflikten bei der Betriebsmittelanforderung Effiziente Verwaltung von Betriebsmitteln Protokollieren der Ressourcennutzung Abrechnung der Betriebsmittelnutzung Fehlererkennung, Fehlerbehandlung Hardware: Gerätefehler Software: Programmfehler

22 RW-Systemarchitektur Kap. 6 Ressourcenverwaltung in zwei Dimensionen: Zeit: Verschiedene Benutzer erhalten Betriebsmittel nacheinander Raum: Verschiedene Benutzer erhalten verschiedene Teile einer Ressource. Achtung: Manche Ressourcen sind unteilbar!

23 RW-Systemarchitektur Kap. 6 Ressourcen-Zuteilung Vergabestrategie zur Erreichung von Entwurfszielen, je nach Typ des Betriebssystems: Fairness Grad an Interaktivität Optimierungsziel: Maximierung von Durchsatz Garantien: Einhaltung von Fristen (Deadlines)

24 RW-Systemarchitektur Kap. 6 Bereitstellen einer erweiterten Maschine (ABI) Abstraktion von Verhalten des zugrunde liegenden Rechners auf möglichst hohem Niveau Verstecken von Eigenschaften der realen Hardware vor dem Programmierer Leichte Programmierbarkeit Beispiel: Datenspeicherung auf der Festplatte Entlastung des Programmierers von Details wie Einschalten des Motors, Bewegung des Plattenarms, Aufteilung des benötigten Platzes auf Sektoren der Platte etc. Einfache Programmierschnittstelle: Schreiben in Datei Das BS stellt dem Programmierer eine abstrakte Programmierschnittstelle (ABI) zur Verfügung. Das BS bietet einen Satz von Kommandos (Systemaufrufe), über die z.B. auf Ein-/Ausgabegeräte zugegriffen werden kann.

25 RW-Systemarchitektur Kap. 6 Schutz Schutz verschiedener Benutzer und Programme voreinander Kontrolle des Zugriffs auf Speicherbereiche und Dateien – z.B. kein Überschreiben von Programmener, kein Pufferüberlauf (buffer overflow) Zugriffskontrolle zum System Verhindern nicht autorisierten Eindringens.

26 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen bis 1955 Rechnen auf nackter Hardware 1955 Stapelverarbeitung, Serielle Abarbeitung der Jobs gesteuert durch kleines Softwareprogramm, genannt Monitor, IBM 1966/67, IBM OS/360 Mehrprogrammfähige Stapelverarbeitungssysteme, überlappende Ausführung mehrerer Progamme zur Überbrückung von Ein-/Ausgabewartezeiten, mehrere Speicherpartitionen. Time-Sharing Systeme (Zeitaufteilungsverfahren), interaktives Arbeiten mehrerer Benutzer mit Online-Zugang Systeme mit graphischen Benutzeroberflächen, Fenster, Maus, … 1962 CTSS, Multics, UNIX Mikrocomputer-Betriebssysteme 1974 CPM, 1980 MS-DOS 1974 XEROX, 1983 Apple 1985 MS-Windows

27 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (1) Verschiedene Entwicklungsstadien: Serielle Systeme Einfache Stapelverarbeitungssysteme Mehrprogrammfähige Stapelverarbeitungssysteme Timesharing-Systeme (Systeme mit Graphischen Benutzeroberflächen) Netzwerkbetriebssysteme Verteilte Betriebssysteme

28 RW-Systemarchitektur Kap : Historische Entwicklung von Betriebssystemen (2) Serielle Systeme ( ) Betrieb von Rechnern ohne Betriebssystem Programmierung von Rechnern durch Einschieben von Steckkarten Später: Einlesen von Lochkarten Zuteilung von Rechenzeit durch Reservierung mit Hilfe Papieraushang

29 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (3) Einfache Stapelverarbeitungssysteme, 1955 für IBM Unterscheidung Programmentwickler Operateure, die Rechner (Mainframes) betrieben Sammlung von Programmen (Jobs) auf Lochkarten Einlesen der gesammelten Jobs durch kleine Rechner (z.B. IBM 1401), Speichern auf Band Abarbeitung des Bandes durch Hauptrechner (z.B. IBM 7094): Lese ersten Job ein Führe ersten Job aus Ausgaben auf zweites Band Dann weiter mit zweitem Job etc. Serielle Abarbeitung der Jobs gesteuert durch kleines Softwareprogramm, genannt Monitor. Ausgabe der Ergebnisse auf Band durch kleinen Rechner (z.B. IBM 1401) Fortschritt: Eingabe von Lochkarte, Rechnen, Ausgabe auf Drucker parallel.

30 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (5) Mehrprogrammfähige Stapelverarbeitungssysteme, ab 1965 Verarbeitung durch einzigen Rechner (IBM Nachfolger) Spooling (Simultaneous Peripheral Operation On Line): Einlesen von Jobs auf Lochkarten, Speichern auf Platte Nach Beenden des aktuellen Jobs: Laden eines neuen Jobs von Platte + Ausführung Mehrprogrammfähigkeit bzw. Multiprogramming …

31 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (6) Mehrprogrammfähigkeit bzw. Multiprogramming Beobachtung: Viel Rechenzeit wird verschwendet durch Warten der CPU auf Beendigung von Ein- / Ausgabeoperationen. Bis zu 90% der Zeit verschwendet bei Hochleistungs-Datenverarbeitung. Idee: Führe aus Effizienzgründen Jobs nicht streng sequentiell aus. Aufteilung des Speichers in mehrere Bereiche Eigene Partition pro aktiven Job Wartezeiten auf Beendigung von Ein- / Ausgabeoperationen genutzt durch Rechenzeit für andere Jobs. Job 1 Betriebs- system Job 2 Job 3 Speicher- partitionen

32 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (7) Timesharing-Systeme Nachteil mehrprogrammfähiger Stapelverarbeitungssysteme: kein interaktives Arbeiten mehrerer Benutzer möglich Abhilfe durch Timesharing-Systeme: Variante des Multiprogrammings Online-Zugang zum System für alle Benutzer Mehrprogrammbetrieb mit schnellem Umschalten von Benutzer zu Benutzer. Idee: Interaktives Arbeiten eines Benutzers erfordert nicht die komplette Rechenzeit eines Rechners Bei schnellem Umschalten bemerkt der Einzelnutzer nicht, dass er die Maschine nicht für sich allein hat.

33 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (8) Vergleich Mehrprogrammfähige Stapelverarbeitungssysteme versus Timesharing-Systeme: Stapelverabeitung Maximale Prozessornutzung (Betreiberwunsch) Job Control Language Timesharing Minimale Antwortzeit (Benutzerwunsch) Interaktive Kommandos

34 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (9) Systeme mit Graphischen Benutzeroberflächen GUI (Graphical User Interface) Geht zurück auf D. Engelbart, Stanford Research Institute, 60er Jahre Elemente: Fenster, Icons, Menüs, Maus Übernommen durch Apple Macintosh Später durch Microsoft Windows : Graphische Umgebung, aufsetzend auf MS-DOS Windows95, …, WindowsXP Betriebssystem und GUI stark miteinander verschränkt. UNIX / LINUX: GUI als Aufsatz auf Betriebssystem X-Windows-System (M.I.T.): Grundlegende Funktionen zur Fensterverwaltung Komplette GUI-Umgebungen basierend auf X-Windows: z.B. Motif

35 RW-Systemarchitektur Kap Historische Entwicklung von Betriebssystemen (10) Netzwerkbetriebssysteme und verteilte Betriebssysteme Netzwerkbetriebssysteme: Benutzer kennt mehrere vernetzte Rechner Einloggen auf entfernten Rechnern möglich Datenaustausch möglich Auf Einzelrechnern: Lokales Betriebssystem, lokale Benutzer Netzwerkbetriebssystem =normales Betriebssystem mit zusätzlichen Fähigkeiten Verteilte Betriebssysteme: Mehrere vernetzte Rechner Erscheinen Benutzern wie Einplatzsystem Datenspeicherung und Programmausführung verteilt auf mehreren Rechnern Verwaltung transparent und effizient (?) durch Betriebssystem Probleme: Nachrichtenverzögerungen, Datenkonsistenz

36 RW-Systemarchitektur Kap. 6 Zusammenfassung Betriebssystem ist ein Softwareprogramm. Liefert eine abstrakte Schnittstelle zum Rechner Verwaltet Systemressourcen Verschiedene Arten von Betriebssystemen aufgrund verschiedener Anforderungen in unterschiedlichen Anwendungsgebieten Moderne Betriebssysteme sind in der Regel Timesharing- Systeme mit vielen zusätzlichen Eigenschaften.


Herunterladen ppt "Kapitel 6 Betriebssysteme - Einführung. RW-Systemarchitektur Kap. 6 Überblick Betriebssysteme 6 Einführung 6.1 Aufgabe von Betriebssystemen 6.2 Verschiedene."

Ähnliche Präsentationen


Google-Anzeigen