Verlässliche Systeme – Einführung 1.1 Regularien Verlässliche Systeme Wintersemester 2015/2016 1.1 Regularien Language/Sprache Verlässliche Systeme 1. Kapitel I Although English is the official course language, German is partly supported: I The handouts are provided in English and German Prof. Matthias Werner I Professur Betriebssysteme I Einführung I Obwohl die Lehrveranstaltung als englischsprachig ausgewiesen ist, werden deutschsprachig Studierende teilweise unterstützt: Literature is in English anyway. I Language of a question determines the language of the answer Das Kursmaterial (Handouts) wird in Deutsch und Englisch bereit gestellt I Literatur ist durchweg englisch I Fragen werden in der bei der Fragestellung benutzten Sprache beantwortet WS 2015/2016 · M. Werner Verlässliche Systeme – Einführung 1.1 Regularien Übung I I Verlässliche Systeme (565130) (für Fans der alten Rechtschreibung: Verläßliche Systeme“) ” Dozent: Prof. Matthias Werner I I I Übungsleiter: Jafar Akhundov Ort & Zeit: I I I [email protected] Material und aktuelle informationen unter http://osg.informatik.tu-chemnitz.de/lehre/ds I I Ort & Zeit: I I I Mo, 13.45 – 15.15 Uhr Raum 1/219 WS 2015/2016 · M. Werner I osg.informatik.tu-chemnitz.de Klärung von Fragen zur Vorlesung Überprüfen von Lösungswegen von Hausaufgaben Rechnen von Beispielaufgaben Übungen sind (wie die Vorlesung) ein Angebot I 3 / 34 Fr, 7.30 – 9.00 Uhr Raum 1/205 Inhalt: I I osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.1 Regularien Vorlesung I 2 / 34 Sie setzen Vorbereitung und Mitarbeit der Teilnehmer voraus Bei Mangel an Interesse/Vorbereitung spielt der Übungsleiter nicht Alleinunterhalter, sondern beendet die Übung WS 2015/2016 · M. Werner 4 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.1 Regularien Verlässliche Systeme – Einführung 1.1 Regularien Zur Beachtung I Auch zur Beachtung In allen Lehrveranstaltungen ist das Handy abzuschalten! WS 2015/2016 · M. Werner 5 / 34 I Die Vorlesung beginnt 13:45 Uhr – bitte seien Sie pünktlich WS 2015/2016 · M. Werner osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.1 Regularien osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.1 Regularien Anrechenbarkeit I 6 / 34 Hinweis Anrechenbarkeit für: I I I I I Master Informatik Master Angewandte Informatik Master Automotive Software Engineering Master Biomedizinische Technik Master Web Engineering auslaufend: I I I Master High-Performance Computing Diplom Informatik Diplom Angewandte Informatik I Lernen des Stoffes ist eine notwendige aber nicht hinreichende Bedingung zum Bestehen des Moduls I Sie sollten den Stoff auch verstehen. Merke Sie sollten nicht nur Was-Fragen beantworten können, sonder auch Warum-Fragen! I Studenten anderer Richtungen brauchen eine Anerkennung I Prüfung I I schriftliche Prüfung Anmeldung über das Prüfungsamt WS 2015/2016 · M. Werner 7 / 34 osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner 8 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.1 Regularien Verlässliche Systeme – Einführung 1.1 Regularien Literaturempfehlungen Literaturempfehlungen (Forts.) I Die Vorlesung folgt keinem einzelnen Lehrbuch I Jedoch sind einige Standardwerke empfehlenswert: [AL82] I Zusätzlich wird folgendes Material zur Verfügung gestellt: I I I Thomas Anderson und Pete A. Lee. Fault Tolerance – Principles and Practice. Prentice Hall, 1982 [Pra96] Dhiraj K. Pradhan, Hrsg. Fault Tolerant Computer Systems. Prentice Hall, 1996 [SS95] Daniel P. Siewiorek und Robert S. Swarz. The Theory and Practice of Reliable Systems Design. Digital Press, 1995 I I WS 2015/2016 · M. Werner 9 / 34 ) Originalartikel (markiert durch Link auf der Homepage á Account beim TUC Web-Trust-Center nötig osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner 10 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.2 Verlässlichkeit 1.2 Verlässlichkeit Handout Begriff der Verlässlichkeit Beispielsscript (bash), um Handout in 1x1-Format zu konvertieren I Benötigt ghostscript und pdf-Toolkit I YMMV # !/ usr / bin / env bash if [ -z " $1 " ] || [ ! -f " $1 " ] || \ [ ‘ file - Ib $1 | cut - f1 -d ’ ’‘ != " application / pdf ; " ]; then echo " No valid input file " exit 1 fi x =( 0 -421 0 -421) y =( -297 -297 0 0) temp = ‘ mktemp -u / tmp / pdf - cv - XXXXX ‘ for i in {0..3}; do gs -q - dNOPAUSE - dBATCH -P - - dSAFER - sDEVICE = pdfwrite \ - g4210x2975 - sOutputFile = $ { temp } $i . pdf \ -c " < </ PageOffset [ $ { x [ $i ]} $ { y [ $i ]}] > > setpagedevice " \ -f $1 ; done pdftk $ { temp }?. pdf shuffle output $ {1/. pdf / -1 x1 . pdf } rm $ { temp }?. pdf WS 2015/2016 · M. Werner Ich bemühe mich, sie vorjeweiligen Behandlung in der Vorlesung ins Netz zu stellen Können durch eigene Notizen ergänzt werden Folien werden im Format 2x2 pro Seite zur Verfügung gestellt; wer es anders will, kann einschlägige Tools nutzen I Verlässliche Systeme – Einführung 1.1 Regularien I Handout der Folien im Netz 11 / 34 osg.informatik.tu-chemnitz.de I Früher: (bis ca. 80er Jahre) Verlässlichkeit ist Eigenschaft fehlertoleranter Systeme I Heute: Verlässlichkeit (dependability) ist ein Oberbegriff, der eine Vielzahl von Konzepten und Maßen abdeckt. Allgemeine Frage: Wie umgehen mit unerwarteten/unerwünschten Ereignissen?“ ” I Unerwartete Ereignisse = Störungen I z.B. sind Angriffe beabsichtigte Störungen WS 2015/2016 · M. Werner 12 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.2 Verlässlichkeit Verlässliche Systeme – Einführung 1.2 Verlässlichkeit Begriff der Verlässlichkeit (Forts.) Begriff der Verlässlichkeit (Forts.) I Definition 1.1 (LAPRIE 1993) Aspekte der Verlässlichkeit I Dependability is defined as the trustworthiness of a computer system such that reliance can justifiable be placed on the service it delivers. The service delivered is it behaviour as it is perceptible to its user(s); a user is another system (human or physical) which interacts with the former. I I I Zuverlässigkeit Verfügbarkeit Sicherheit (safety)(nach außen) Sicherheit (security)(nach innen) I I I I Achtung: nach der Definition fällt auch unerwünschtes Verhalten unter den Dienstbegriff. I 13 / 34 WS 2015/2016 · M. Werner osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.2 Verlässlichkeit I I Programmiersprachen Interfacebeschreibungen Nichtfunktionale Eigenschaften sind Randaspekte“ ” I I I I Ausführungszeit Ressourcenverbrauch Zuverlässigkeit Sicherheit .. . WS 2015/2016 · M. Werner osg.informatik.tu-chemnitz.de Probleme... Üblicherweise interessiert die eigentliche Funktion oder ihr Ergebniswert I 14 / 34 Verlässliche Systeme – Einführung 1.2 Verlässlichkeit Nichtfunktionale Eigenschaften I Wartbarkeit Korrektheit (Wert und Zeit) á Verlässlichkeitseigenschaften sind nichtfunktionale Eigenschaften Beispiel: Schaden gegenüber Dritten WS 2015/2016 · M. Werner I Vertraulichkeit Integrität ... mit nicht-funktionalen Eigenschaften I Schwierig zu definieren I Schwierig zu abstahieren I Divide et impera (teile und herrsche) funktioniert häufig nicht gut I Abhängigkeiten zwischen verschiedenen nicht-funktionalen Eigenschaften I Vielfach probabilistische Abhängigkeiten Genauere Betrachtung führt oft zu überraschenden Ergebnissen. 15 / 34 osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner 16 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele Verlässliche Systeme – Einführung 1.3 Fallbeispiele 1.3 Fallbeispiele Automatisches Lösen der Handbremse Beispiel I: Spezifikation vs. Implementation I Automatische Handbremse I I Beispiel: VW Passat Wird beim Anfahren automatisch gelöst I Was gemeint war I Was implementiert wurde Was passiert I Klimaanlage fährt hoch Drehzahl steigt Gaspedal drücken Bildquelle: Feststellbremse wird gelöst www.autozeitung.de WS 2015/2016 · M. Werner 17 / 34 osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner Verlässliche Systeme – Einführung 1.3 Fallbeispiele Alternative Designs 1 Dienst hängt von der Ausführung von 6 Tasks ab I Beendigungswahrscheinlichkeit jeder Task ist innerhalb eines Intervalls gleichverteilt I Ein oder zwei Prozessoren stehen zur Verfügung I Deadline: 25 Zeiteinheiten I Fehlerrate: λ = 0.01, R(t) = e−λ·t Request 2 einfacher Ansatz 3 P1 4 6 [3; 5] [2; 6] [4; 8] [1; 2] [4; 5] [1; 2] 3 4 5 6 min 19 / 34 τ4 τ5 τ6 10 15 20 P1 τ1 τ2 τ3 τ4 τ5 τ6 P2 τ1 τ2 τ3 τ4 τ5 τ6 t 5 max P1 τ1 τ2 P2 τ3 τ4 5 10 15 adaptiver Ansatz Echtzeit-Ansatz 2 Welche Schedulingstrategie soll benutzt werden? τ3 Antwort Task Sollen ein oder zwei Prozessoren eingesetzt werden? WS 2015/2016 · M. Werner τ2 fehlertoleranter Ansatz 5 1 I τ1 5 Fragestellungen I osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele Beispiel II: Paradigma vs. Maß I 18 / 34 10 τ6 τ5 15 20 t P1 τ1 τ2 P2 τ1 τ2 5 10 t 20 t Abbruch τ3 τ4 20 τ5τ6 τ5 τ6 15 t osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner 20 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele Verlässliche Systeme – Einführung 1.3 Fallbeispiele Alternatives Design I: Einfacher Ansatz ... etwas Mathematik Erfolgswahrscheinlichkeit Zt P1 τ1 τ2 τ3 τ4 τ5 R(t) = P [tready ≤ t] = τ6 (e−λτ 1 (τ )) ∗ · · · ∗ (e−λτ 6 (τ ))dτ 0 Dabei ist e−λt : Zuverlässigkeit (Überlebenswahrscheinlichkeit im Intervall [0, t]) 5 10 15 20 (t): Beendigungswahrscheinlichkeit zum Zeitpunkt t bei Fehlerfreiheit (Antwortzeitverhalten) t fx ∗ fy : Faltung der Funktionen fx und fy Ein Prozessor, sequentielle Ausführung keine Fehlertoleranz, keine Echtzeit I I WS 2015/2016 · M. Werner 21 / 34 osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner Verlässliche Systeme – Einführung 1.3 Fallbeispiele 22 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele ... etwas Mathematik (Forts.) Alternatives Design II: Echtzeit Erfolgswahrscheinlichkeit I 1 P1 τ1 τ2 τ3 τ6 0.8 0.6 Ρ ((tt)) R R(t) R = 78.85% 0.4 P2 τ4 τ5 0.2 0 5 0 5 10 15 20 25 30 I I 23 / 34 15 20 t 35 t WS 2015/2016 · M. Werner 10 osg.informatik.tu-chemnitz.de Zwei Prozessoren, verteilte Ausführung Keine Fehlertoleranz, aber Echtzeitgarantie WS 2015/2016 · M. Werner 24 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele Verlässliche Systeme – Einführung 1.3 Fallbeispiele Alternatives Design II: Echtzeit (Forts.) Alternatives Design III: Echtzeit Erfolgswahrscheinlichkeit I 0.8 P1 τ1 τ2 τ3 τ4 τ5 τ6 P2 τ1 τ2 τ3 τ4 τ5 τ6 0.6 R(t) R( t ) 0.4 R = 74.48% 0.2 5 0 0 5 10 15 20 25 I I WS 2015/2016 · M. Werner 25 / 34 osg.informatik.tu-chemnitz.de 10 15 20 t Zwei Prozessoren, redundante Ausführung Fehlertoleranz, aber keine Echtzeit Garantie WS 2015/2016 · M. Werner Verlässliche Systeme – Einführung 1.3 Fallbeispiele 26 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele Alternatives Design III: Echtzeit (Forts.) Alternatives Design IV: Adaptivität Erfolgswahrscheinlichkeit I Abbruch 1 P1 τ1 τ2 P2 τ1 τ2 τ3 τ5 τ6 0.8 0.6 R(t) Ρ( t ) R = 94.02% 0.4 τ4 τ5 τ6 0.2 5 0 0 5 10 15 20 25 30 I I WS 2015/2016 · M. Werner 27 / 34 osg.informatik.tu-chemnitz.de 10 15 20 t Zwei Prozessoren, Eager-Scheduling Fehlertoleranz und Echtzeit je nach Situation WS 2015/2016 · M. Werner 28 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.3 Fallbeispiele Verlässliche Systeme – Einführung 1.3 Fallbeispiele Alternatives Design IV: Adaptivität (Forts.) I Vergleich der Designs Erfolgswahrscheinlichkeit 1 1 0.8 0.8 I einfacher Ansatz I Echtzeit I Fehlertoleranz I Adaptivität 0.6 R(t) 0.6 R( t ) R(t) R = 95.43% 0.4 0.4 0.2 0.2 0 0 0 5 10 15 WS 2015/2016 · M. Werner 20 25 0 5 10 29 / 34 15 20 25 30 35 Deadline 30 osg.informatik.tu-chemnitz.de WS 2015/2016 · M. Werner Verlässliche Systeme – Einführung 1.3 Fallbeispiele 30 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.4 Vorlesungsinhalt 1.4 Inhalt der Vorlesung Erkenntnisse aus der Fallstudie Schwerpunkte der Vorlesung I Schon einfache Systeme verhalten sich oft unerwartet I Vorsicht bei Verbesserungen“: ” Evtl. wird das Gegenteil erreicht Fragen beim Entwurf: I I I I I I I I Was will ich erreichen? (Was ist für den Erfolg entscheidend?) Was sind die Randbedingungen? (z.B. Ressourcen) 31 / 34 osg.informatik.tu-chemnitz.de Konzepten Bewertung und Modellierung (Klassische) Fehlertoleranz Nicht so sehr: I I I WS 2015/2016 · M. Werner Fokus auf Echtzeit (á Empfehlung: Echtzeitsysteme, Sommersemester) Sicherheit (á Empfehlung: Prof. Lefmann) können aber Einfluss haben (siehe Fallstudie) WS 2015/2016 · M. Werner 32 / 34 osg.informatik.tu-chemnitz.de Verlässliche Systeme – Einführung 1.4 Vorlesungsinhalt Verlässliche Systeme – Einführung 1.4 Vorlesungsinhalt Interessante Fragestellungen Themen I Wie kann man die Verlässlichkeit eines Systems bewerten? I I Warum reicht bei bösartigen“ Fehler nicht die einfache Redundanz? ” Wie kann man fehlerhaftes Verhalten modellieren? I Welche Ansätze gibt es für Tests? I Was ist der Unterschied zwischen RAID 1+0 und 0+1? WS 2015/2016 · M. Werner 33 / 34 osg.informatik.tu-chemnitz.de I (Auffrischung der) Grundlagen der Stochastik I Verlässlichkeitsmaße und Systembewertung I Störungsmodelle I Modellierung I I Tests und Fehlerdiagnose Konsens und Byzantinische Fehler I Verifizieren und Testen von Software I Fehlertoleranz in Software I Fallstudien WS 2015/2016 · M. Werner 34 / 34 osg.informatik.tu-chemnitz.de
© Copyright 2024 ExpyDoc