Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
-
Peter Amthor Fak. IA / FG VSBS Technische Universität Ilmenau www.tu-ilmenau.de/vsbs
Advanced Operating Systems
Kapitel 1: Einführung
Peter Amthor Wintersemester 2018/19
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–2
■ Zielgruppe: Wahlpflichtbereich BSc IN/II 5. FS (5 LP) ■ Voraussetzungen: Grundlagenvorlesung „Betriebssysteme“
■ Version History:
1 Einführung
About
Zeitraum Kursname Lehrender nie Betriebssysteme 2 —
bis 2012 Nichtfunktionale Eigenschaften H.-A. Schindler 2013—2016 Advanced Operating Systems H.-A. Schindler
seit 2017 Advanced Operating Systems P. Amthor
è panta rhei...
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–3
Termine
Organisatorisches
Montag Dienstag Mittwoch Donnerstag Freitag 9:00 9:00
9:00
HU 011
9:00
HU 011
9:00
11:00
K 2003A
11:00
11:00 11:00 11:00
13:00 13:00
13:00 13:00 13:00
15:00 15:00
15:00 15:00 15:00
1 Einführung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–4
Übungen
■ ergänzen und illustrieren den Vorlesungsinhalt ■ bestehen aus
◆ Wiederholungsfragen: ich frage, Sie antworten (ich merke, was ich nochmals/besser erklären muss...)
◆ Diskussionsfragen: Sie diskutieren, untereinander und mit mir (zumeist keine „richtige“ Antwort à Erweiterung des Horizonts)
◆ „Rechenaufgaben“: haben Sie vorbereitet, wir vergleichen Lösungen ◆ praktische Aufgaben: haben Sie auch vorbereitet, Sie zeigen eine Demo
■ Lernerfolg ~ Vorbereitung von Rechen- und praktischen Aufgaben!
■ Termine bedarfsgesteuert: rechtzeitige Ankündigung (2 Wochen vorher)
Organisatorisches
1 Einführung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–5
Begleitmaterial
Webseiten des Fachgebiets: http://www.tu-ilmenau.de/vsbs → Lehre → WS 2018/19
→ Advanced Operating Systems
■ Kurzbeschreibung der Lehrveranstaltung ■ tagesaktuelles Vorlesungsmaterial
◆ Inhaltsübersicht ◆ Präsentationsmaterial (nach Abschluss eines Kapitels) ◆ Übungsmaterial ◆ Literatur ◆ Weblinks
à gute Idee: Mitschreiben bei Bedarf!
Organisatorisches
1 Einführung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–6
Leistungsnachweis
■ Prüfungsgespräch: 20 Minuten (benotet) ■ (mehr oder minder) zeitnah im Anschluss an die Vorlesung ■ Prüfungsstoff: Vorlesungen + Übungen
Organisatorisches
1 Einführung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–7
◆ Informationssystemen • Gesundheitswesen • Finanzdienstleister
◆ Verkehrsmanagement-Systemen • Eisenbahn • Flugwesen
◆ Kommunikationssystemen • Mobilfunk • Raumfahrt
◆ eingebetteten Systemen • Multimedia • Fahrzeugsysteme • Sensornetze
◆ ...
à verschiedenste Anforderungen!
1.1 Themenumfeld
Betriebssysteme … ■ … stecken nicht nur in Einzelplatzrechnern, sondern z.B. auch in:
1.1 Themenumfeld
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–8
■ Konsequenz: Spezialbetriebssysteme für Anforderungen wie ... ◆ Robustheit ◆ Echtzeitfähigkeit ◆ Energieeffizienz ◆ Sicherheit ◆ Adaptivität ◆ ...
■ Gegenstand dieser Vorlesung: Konstruktionsrichtlinien für solche ”High-End Betriebssysteme”
(Advanced Operating Systems)
1.1 Themenumfeld
1.1 Themenumfeld
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–9
1.2 Funktionale und nichtfunktionale Eigenschaften
■ Anforderungen (und die aus ihnen resultierenden Eigenschaften) im Vergleich: funktionale vs. nichtfunktional
◆ Beispiel Autokauf: „Mit unserem Fahrzeug können Sie einkaufen fahren!“
◆ Beispiel Handykauf: „Mit unserem Telefon können Sie Ihre Freunde und Familie anrufen!“
1.2 Funktionale und nichtfunktionale Eigenschaften
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–10
1.2 Funktionale und nichtfunktionale Eigenschaften
■ Anforderungen (Requirements) ◆ Funktionale und nichtfunktionale Eigenschaften (eines Produkts, z.B.
Softwaresystems) entstehen durch Erfüllung von funktionalen und nichtfunktionalen Anforderungen
■ funktionale Eigenschaft ... legt fest, was ein Produkt tun soll. Handykauf: Das Produkt soll Telefongespräche ermöglichen.
■ eine nichtfunktionale Eigenschaft (NFE) ... legt fest, wie es dies tun soll, also welche sonstigen Eigenschaften das Produkt haben soll. Handykauf: Das Produkt soll klein, leicht, energiesparend, strahlungsarm, umweltfreundlich, ... sein.
1.2 Funktionale und nichtfunktionale Eigenschaften
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–11
■ andere Bezeichnungen nichtfunktionaler Eigenschaften ◆ Qualitäten bzw. Qualitätsattribute (eines Software-Produkts):
Ø Nichtfunktionale Anforderungen bzw. Eigenschaften eines Software-Systems bzw. -Produkts oft auch als seine Qualitäten bezeichnet.
Ø Einzelne realisierte Eigenschaft ist demzufolge ein Qualitätsattribut (quality property) dieses Systems bzw. Produkts.
◆ Weitere in der Literatur zu findende Begriffe in diesem Zusammenhang: • non-functional requirements/properties • Constraints • Quality of service requirements • u.a.
Zur Terminologie ...
1.2 Funktionale und nichtfunktionale Eigenschaften
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–12
■ „ILITIES“ ◆ im Englischen:
nichtfunktionale Eigenschaften eines Systems etc. informell auch als seine „ilities“ bezeichnet, hergeleitet von Begriffen wie
• Stability • Portability • ...
◆ im Deutschen:
müsste man dann z.B. von „itäten“ bzw. „barkeiten“ usw. sprechen ... (Portabilität, Skalierbarkeit, aber: Offenheit, Performanz, ...)
... und Sprechweise
1.2 Funktionale und nichtfunktionale Eigenschaften
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–13
1. Hardware-Basis Einst: ■ Einprozessor-Systeme Heute: ■ Mehrprozessor-Systeme ■ hochparallele Systeme
■ hieraus: wiederum neue Synchronisationsmechanismen erforderlich
1.3 Konsequenzen für Betriebssysteme
è unterschiedliche Hardware und deren Multiplexing aufgrund unterschiedlicher
nichtfunktionaler Eigenschaften
1.3 Konsequenzen für Betriebssysteme
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–14
2. Betriebssystem-Architektur
Einst: ■ Monolithische u. Makrokernel-Architekturen Heute: ■ Mikrokernelbasierte Architekturen ■ Exokernelbasierte Architekturen (Library-Betriebssysteme) ■ Virtualisierungsarchitekturen ■ Multikernel-Architekturen
è unterschiedliche Architekturen aufgrund unterschiedlicher nichtfunktionaler
Eigenschaften
1.3 Konsequenzen für Betriebssysteme
1.3 Konsequenzen für Betriebssysteme
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–15
3. Ressourcenverwaltung
■ Beispiel: echtzeitfähige Betriebssysteme ◆ benötigen z.B.:
• echtzeitfähigen Scheduler (Scheduling-Algorithmus) • angepasste Organisation der Hauptspeicherverwaltung • angepasste Verwaltung der Plattenzugriffe • angepassten Umgang mit Interrupts • angepassten Umgang mit Systemaufrufen • angepasste Organisation von Warteschlangen • Umgang mit Überlast • Umgang mit sog. Prioritätsumkehr
1.3 Konsequenzen für Betriebssysteme
è unterschiedliche Ressourcenverwaltung aufgrund unterschiedlicher
nichtfunktionaler Eigenschaften
1.3 Konsequenzen für Betriebssysteme
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–16
4. Zusätzliche Betriebssystem-Abstraktionen
■ zusätzliche Abstraktionen und deren Verwaltung ... ◆ ... zur Reservierung von Ressourcen (à Embedded-Systeme) ◆ ... zur Realisierung von QoS-Anforderungen (à Multimediasysteme) ◆ ... zur Erhöhung der Ausfallsicherheit (à verfügbarkeitskritische Systeme) ◆ … zur Durchsetzung von Nutzungsrichtlinien (à sicherheitskritische
Systeme) ◆ … zum flexiblen und modularen Anpassen des Betriebssystems (à adap-
tive Systeme)
1.3 Konsequenzen für Betriebssysteme
è höchst unterschiedliche Abstraktionen von Hardware aufgrund
unterschiedlicher nichtfunktionaler Eigenschaften
1.3 Konsequenzen für Betriebssysteme
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–17
5. Betriebssysteme als Softwareprodukte
■ Betriebssystem: • komplexes Softwareprodukt … dennoch: allgemeine Anforderungen
an Softwareprodukte gelten ■ an jedes Softwareprodukt gibt es Anforderungen an seine Nutzung
und Pflege à Evolutionseigenschaften ■ diese können für Betriebssysteme höchst speziell sein
(Korrektheitsverifikation, Wartung, Erweiterung, ...)
1.3 Konsequenzen für Betriebssysteme
è spezielle Anforderungen an das Softwareprodukt Betriebssystem aufgrund
unterschiedlicher nichtfunktionaler Eigenschaften
1.3 Konsequenzen für Betriebssysteme
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–18
■ Funktionale Eigenschaften (≈ Funktionen, Aufgaben) § Betriebssysteme schon als sehr komplexe Softwareprodukte erwähnt ... § Ein Grund für diese Komplexität:
besitzen Reihe von differenzierten Aufgaben – also funktionale Eigenschaften:
1.4 NFE von Betriebssystemen
1. Hardware-Abstraktion (Anwendungen/Programmierern eine angenehme Ablaufumgebung auf Basis der Hardware bereitstellen)
2. Hardware-Multiplexing (gemeinsame Ablaufumgebung zeitlich oder logisch getrennt einzelnen Anwendungen zuteilen)
3. Hardware-Schutz (gemeinsame Ablaufumgebung gegen Fehler und Manipulation durch Anwendungen schützen)
1.4 Nichtfunktionale Eigenschaften von Betriebssystemen
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–19
Ein Teil der folgenden nichtfunktionale Eigenschaften wurde bereits erwähnt:
◆ Sparsamkeit und Effizienz ◆ Robustheit ◆ Verfügbarkeit ◆ Sicherheit (Security) ◆ Echtzeitfähigkeit ◆ Adaptivität ◆ Performanz
◆ Wartbarkeit ◆ Portierbarkeit ◆ Offenheit ◆ Erweiterbarkeit
als sog. Laufzeiteigenschaften
als sog. Evolutionseigenschaften
1.4 NFE von Betriebssystemen
1.4 Nichtfunktionale Eigenschaften von Betriebssystemen
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–20
■ nichtfunktionale Eigenschaften unterteilbar in:
1. Laufzeiteigenschaften (execution qualities) Ø zur Laufzeit eines Systems beobachtbar
§ Beispiele: - „security“ (Sicherheit), „usability“ (Benutzbarkeit),
„performance“ (Performanz), ...
2. Evolutionseigenschaften (evolution qualities) Ø charakterisieren (Weiter-) Entwicklungs- und Betrieb eines Systems
§ Beispiele: - „testability“ (Testbarkeit), „extensibility“ (Erweiterbarkeit) usw.
Ø liegen in statischer Struktur eines Softwaresystems begründet
Klassifizierung
1.4 Nichtfunktionale Eigenschaften von Betriebssystemen
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–21
1.5 Inhalte der Vorlesung
Auswahl sehr häufiger NFE von Betriebssystemen:
◆ Sparsamkeit und Effizienz ◆ Robustheit ◆ Verfügbarkeit ◆ Sicherheit (Security) ◆ Echtzeitfähigkeit ◆ Adaptivität ◆ Performanz
◆ Wartbarkeit ◆ Portierbarkeit ◆ Offenheit ◆ Erweiterbarkeit
Laufzeiteigenschaften
Evolutionseigenschaften
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–22
■ Diskussion jeder Eigenschaft: (Bsp.: Echtzeitfähigkeit)
◆ Motivation, Anwendungsgebiete (Bsp.: Multimedia- und eingebettete Systeme)
◆ Mechanismen und Abstraktionen des Betriebssystems
(Bsp.: Fristen, Deadline-Scheduler)
◆ unterstützende Betriebssystem-Architekturkonzepte (Bsp.: Mikrokernel)
◆ ein typisches Beispiel-Betriebssystem
(Bsp.: RTOS)
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–23
… somit folgende Inhaltsübersicht: 1 Einführung (dieses Kapitel)
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–24
2 Sparsamkeit und Effizienz
Energieeffizienz
Speicher- effizienz
Raumfahrt- Technologie
mobile Geräte
Automobil- Technologie
„smart dust“
Smartcards
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–25
3 Robustheit und Verfügbarkeit Verfügbarkeit Ausfallzeit pro
Jahr Ausfallzeit pro Woche
90% > 1 Monat ca. 17 Stunden
99% ca. 4 Tage ca. 2 Stunden
99,9% ca. 9 Stunden ca. 10 Minuten
99,99% ca. 1 Stunde ca. 1 Minute
99,999% ca. 5 Minuten ca. 6 Sekunden
99,9999% ca. 2 Sekunden << 1 Sekunde
„Consumer“-Bereich ...
Hochverfüg-barkeitsbereich
(Hoch-) Verfügbarkeit
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–26
4 Sicherheit
Krankenhaus- und Patienten- Informationssysteme
Abwehr von Industrie- und Militärspionage
Generell alle (auch „nicht-sensible“)
IT-Systeme!
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–27
5 Echtzeitfähigkeit
militärische (Abwehr-)Systeme
Steuerungen in Fahrzeugen, Flugzeugen, …
Multimedia-Systeme
Digitale Motorelektronik (DME)
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–28 1.5 Inhalte der Vorlesung
6 Adaptivität
... und ihre Virtualisierung
Flexibilität von Betriebssystemen ...
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–29
7 Performanz und Parallelität
Multikernel-Architekturen für heterogene superskalare CPUs
High-Performance Computing, Parallel Computing
Verteilte Betriebssysteme
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–30
Ziele: 1. Kenntnisse zur Integration von NFE in Betriebssysteme 2. Diskussion von (Nicht-) Zusammenwirkung unterschiedlicher
NFE: Synergien und Widersprüche verschiedener
• Mechanismen • Architekturmodelle • deren jeweils verfolgte NFE (soweit verallgemeinerbar...) à Engineering-Werkzeug für Sie!
8 Zusammenfassung Energieeffizienz
Echtzeit
Safety Security
Performanz 1 2 3 4
0
Energieeffizienz
Echtzeit
Safety Security
Performanz 1 2 3 4
0
Industrieautomatisierung
Medizintechnik
Nicht- funktionale
Eigenschaften
1.5 Inhalte der Vorlesung
1.5 Inhalte der Vorlesung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–31
1.6 Bezüge zu anderen Wahlpflichtmodulen (Auswahl)
Sparsamkeit und Effizienz
Robustheit und Verfügbarkeit
Sicherheit
Echtzeitfähigkeit
Adaptivität
Performanz und Parallelität
Systementwurf (Prof. Zimmermann) Systemsicherheit
(Prof. Kühnhauser)
Network Security (Prof. Schäfer)
Kryptografie (Prof. Dietzfelbinger)
Verteilte Echtzeitsysteme (Dr. Schindler)
alle Themen: Linux und SELinux (Dr. Schindler)
1.6 Bezüge zu anderen Wahlpflichtmodulen
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–32
è NFE in Betriebssystemen: wenig zusammenfassende Literatur è Die meisten Informationen finden sich in Büchern zum Thema „Softwaretechnik“,
z.B.
1. [Eeles+2010] Eeles, Peter / Cripps, Peter: The Process of Software Architecting Pearson Education, Inc – Boston, MA © 2010 ISBN13: 978-0-321-35748-9
■ bzw. in Internetquellen
Literatur
1 Einführung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–33
■ Zu den funktionalen Aufgaben eines Betriebssystem sollte jedes Betriebssystembuch Aussagen liefern.
■ für die Vorlesung u.a. relevant:
1. [Stallings2009] Stallings, William: Operating Systems – Internals and Design Principles Pearson Education, Pearson Education International © 2009 ISBN13: 978-0-13-603337-0
2. [Tanenbaum2008] Tanenbaum, Andrew S.: Modern Operating Systems (3rd ed.) Pearson Prentice Hall © 2008 ISBN13: 978-0-13-600663-3
Literatur
1 Einführung
AOS WS 2018/19 © P. Amthor, H.-A. Schindler 1–34
Fragen?
ENDE Kap. 1
1 Einführung