Architektur und Organisation von Themen heute: Betriebssysteme Ein frohes Weihnachtsfest und alles erdenklich Gute zum Jahreswechsel! Ulrich Schaarschmidt, MCU-ArcOrg18_V5 HS Düsseldorf, WS 2018/19-20.12.18 CRN Computer Reseller s News (c) U.G. Schaarschmidt, HS D 2 (c) Prof. Dr. U. G. Schaarschmidt 1
Literaturhinweise Tanenbaum, A.S.: Computerarchitektur 5. Aufl., Pearson Education (Prentice Hall), 2006 Tanenbaum, A.S.: Moderne Betriebssysteme 3. aktual. Aufl., Pearson Studium (Prentice Hall), 2009 Siegert, H.-J.; Baumgarten, U.: Betriebssysteme (Eine Einführung) 5. Aufl. Oldenbourg Wissenschaftsverlag 2001 Glatz, E.: Betriebssysteme (Grundlagen, Konzepte, Systemprogrammierung) 2006, dpunkt.verlag (c) U.G. Schaarschmidt, HS D 3 Literaturhinweise Horn, C.; Kerner, I.O.; Forbrig, P.: Lehr und Übungsbuch Informatik, Bd. 1 Fachbuchverlag Leipzig, 2001 Kellermayr, K.H.: Technische Informatik Springer Wien New York, 2000 Schneider, U.; Werner, D.: Taschenbuch der Informatik 4. Aufl. Fachbuchverlag Leipzig, 2001 (c) U.G. Schaarschmidt, HS D 4 (c) Prof. Dr. U. G. Schaarschmidt 2
Betriebssystem-Überblick In den 50er Jahren, als die 2. Generation von Computern eingesetzt wurde, begann die Entwicklung von Betriebssystemen. Die Hardware reichte im Allgemeinen nicht aus, um darauf effizient und benutzerfreundlich Anwendungen zu entwickeln bzw. ablaufen zu lassen. (c) U.G. Schaarschmidt, HS D 5 Betriebssystem (operating system) Ein Betriebssystem stellt das Bindeglied zwischen der Hardware eines Computers einerseits und dem Anwender bzw. seinen Programmen andererseits dar. Es umfasst Programme, die zusammen mit den Eigenschaften des Computers die Grundlage der möglichen Betriebsarten dieses Systems bilden und insbesondere die Abwicklung von Programmen steuern und überwachen. (c) U.G. Schaarschmidt, HS D 6 (c) Prof. Dr. U. G. Schaarschmidt 3
Betriebssystem abstrakt Tanenbaum,2009 (c) U.G. Schaarschmidt, HS D 7 Ziele und... Ziele beim Einsatz eines BS optimale Auslastung der Betriebsmittel, Erfüllung der Nutzeranforderungen, Beachtung der Prioritäten, (quasi-) paralleler Zugriff auf die einzelnen Betriebsmittel eines Systems, Toleranz gegen Fehleingaben, schnelle Auftragserledigung (geringe Wartezeit), (c) U.G. Schaarschmidt, HS D 8 (c) Prof. Dr. U. G. Schaarschmidt 4
Aufgaben des BS (1/2) Anpassung der Leistung der Hardware an die Bedürfnisse der Benutzer (Abstraktion der HW): Das BS erweitert die HW-Funktionalität z.b. durch Dateiverwaltung, benutzerfreundliche Bedieneroberfläche, Organisation, Steuerung und Kontrolle des gesamten Betriebsablaufs im System: Zuordnung der Benutzeraufträge zu entsprechenden Ausführungseinheiten (z.b. Prozesse), geeignete Ablaufplanung unter Berücksichtigung von Wechselwirkungen. (c) U.G. Schaarschmidt, HS D 9 Aufgaben des BS (2/2) Verwaltung und ggf. geeignete Zuteilung von Betriebsmitteln an verschiedene Ausführungseinheiten, Kontrolle und Durchsetzung von Schutzmaßnahmen (z.b. Zugriffsrechte), insbesondere zur Sicherung der Integrität von Daten und Programmen (Mehrnutzer/Multiuser-Betrieb). Protokollierung des Ablaufgeschehens im System, Erfassung und Analyse von Leistungsdaten zur Systemoptimierung. (c) U.G. Schaarschmidt, HS D 10 (c) Prof. Dr. U. G. Schaarschmidt 5
Schichtenmodell eines Rechners Tanenbaum (c) U.G. Schaarschmidt, HS D 11 Hauptkomponenten von BS Typische Funktionskomplexe universeller BS Kommunikation mit der Umgebung, Auftragsverwaltung, Benutzerverwaltung, Prozessverwaltung, Betriebsmittelverwaltung, (Haupt-) Speicherverwaltung, Eingabe- / Ausgabe-Steuerung, Dateiverwaltung.! In BS für spezielle Einsatzbereiche sind einige Komponenten besonders ausgeprägt oder fehlen teilweise. mobile Computer: EPOC, PalmOS, Win CE, Android, RTOS, (c) U.G. Schaarschmidt, HS D 12 (c) Prof. Dr. U. G. Schaarschmidt 6
Geschichtete Struktur eines Rechners mit Betriebssystem Glatz, 2006 (c) U.G. Schaarschmidt, HS D 13 Monolithische Betriebssystemstruktur eines Rechners Glatz, 2006 (c) U.G. Schaarschmidt, HS D 14 (c) Prof. Dr. U. G. Schaarschmidt 7
Interrupts und Exceptions (am Beispiel eines PC) 3 Kategorien von Unterbrechungen in Abhängigkeit von der Quelle unterschieden: Software-Interrupts (synchrone Ausnahmebehandlung) Hardware-Interrupts (asynchrone Ausnahmebehandlung) Exceptions (Ausnahmeb. Aufgrund v. HW-Fehlern, fehlerhaftem Opcode, unzulässigen Datenwerten) Software-Interrupts werden gezielt durch einen INT-Befehl ausgelöst, dessen Prozedur im Real- Modus ausgeführt wird. (c) U.G. Schaarschmidt, HS D 15 Unterschiede zwischen Trap / Exception und Interrupt Peripherie-Einheiten (PIO, SIO, CTC & Co) erzeugen Interrupts, wenn sie eine definierte (Re-) Aktion des Prozessors erwarten. Befehle lösen Exceptions aus, wenn bei ihrer Ausführung spezielle Zustände auftreten, wie z.b. eine nicht im Speicher verfügbare Seite. Jede Interrupt-Quelle und jeder Exception Typ hat eine Nummer von 0 255, die dazu benutzt wird, die Service-Routine aufzurufen. (c) U.G. Schaarschmidt, HS D 16 (c) Prof. Dr. U. G. Schaarschmidt 8
Exceptions 0-6 Werden durch den Prozessor entdeckt und sind wie folgend festgelegt: 0 Divisionsfehler 1 Debug-Exception 2 3 Programm-Unterbrechung 4 Zahlenüberlauf 5 Arraygrenzenverletzung 6 Ungültiger Befehlscode (c) U.G. Schaarschmidt, HS D 17 Exceptions 7-16 7 Koprozessor nicht vorhanden 8 Doppel-Fehler 9 10 Ungültiges TSS (Task Status Segment) 11 Segmentfehler 12 Stack Über- / Unterlauf 13 Allgemeiner Schutzfehler 14 Page Fehler 15 16 Fehler des Koprozessors (c) U.G. Schaarschmidt, HS D 18 (c) Prof. Dr. U. G. Schaarschmidt 9
Übungsaufgabe Was sind die beiden Hauptaufgaben eines Betriebssystems? Welcher der folgenden Befehle sollte nur im Kernmodus erlaubt sein? Sperren aller Unterbrechungen. Lesen der aktuellen Uhrzeit. Setzen der aktuellen Uhrzeit. Änderung der Speicherzuordnungstabellen. (c) U.G. Schaarschmidt, HS D 19 Übungsaufgabe Zählen Sie einige Unterschiede zwischen einem Betriebssystem für einen PC und dem für einen Mainframe auf! Was ist der Hauptunterschied zwischen einem Trap/einer Exception und einer Unterbrechungsanforderung (Interrupt)? (c) U.G. Schaarschmidt, HS D 20 (c) Prof. Dr. U. G. Schaarschmidt 10