Proseminar Fehlertoleranzverfahren WS 06/07

Größe: px
Ab Seite anzeigen:

Download "Proseminar Fehlertoleranzverfahren WS 06/07"

Transkript

1 Proseminar Fehlertoleranzverfahren WS 06/07 Redundanz als Grundlage von Fehlertoleranz/Fehlerkorrektur Philipp Reichart 1/11

2 Einführung und Begriffsdefinition Redundanz als Grundlage jeglicher Verfahren zur Fehlertoleranz und Fehlerkorrektur bezeichnet zusätzliche Mittel, die über den eigentlichen Bedarf des Nutzbetriebs hinausgehen. Je nach Art der Redundanz können dies zusätzliche Komponenten, Funktionen oder abstraktere Mittel wie Zeit, Entwürfe und Spezifikationen sein. Solche bei Fehlerfreiheit entbehrliche Mittel findet sich beispielsweise in Form von Paritätsbits, zusätzlichen Schaltkreisen, in Programmen zur Verwaltung zusätzlicher Betriebsmittel und eben auch in Form längerer Ausführungszeit. Zu beachten ist hierbei, dass die Fehlertoleranzfähigkeit eines Systems an sich keine Nutzfunktion darstellt. Ungenutzte Mittel, die nicht zur Fehlertoleranz beitragen, zählen zwar auch zum Begriff der Redundanz, werden hier aber nicht weiter betrachtet. Der Vollständigkeit halber sei als Beispiel für ungenutzte Redundanz der BCD-Code erwähnt, der in RAM-Bausteinen Verwendung findet und dort weniger Bits auf den Speicherelementen nutzt, als theoretisch möglich wäre; die verbleibenden Bits liegen brach, werden nicht zur Fehlertoleranz genutzt. Nutzen und Auswirkungen Redundanz ist bei weitem kein Allheilmittel, ihr Nutzen hängt vor allem von der Anzahl der zusätzlichen Mittel und dem jeweiligen Fehlertoleranzverfahren ab. Mehr Mittel bedeuten aber nicht zwangsläufig eine Verbesserung der Überlebenswahrscheinlichkeit eines Systems. Diese hängt vor allem von der Zuverlässigkeit der einzelnen Komponenten ab, wobei zuverlässigere Komponenten die Überlebenswahrscheinlichkeit des Gesamtsystems im allgemeinen erhöhen, unzuverlässigere sie dagegen senken. Abb. 1 zeigt exemplarisch an einem redundanten System mit dreifacher Komponentenzahl aber unzuverlässigen Komponenten, dass Redundanz hier nur bis zu einem gewissen Zeitpunkt T eine Verbesserung der Überlebenswahrscheinlichkeit erbringt. Danach Übersteigen die Ausfallwahrscheinlichkeiten der einzelnen Komponenten die Fähigkeiten der Redundanz und das nicht redundante System übernimmt. 2/11

3 Abb 1: Überlebenswahrscheinlichkeit eines redundanten und eines nicht redundanten Systems über Zeit bei unzuverlässigen Komponenten Merkmale und Aktivierungsarten Fehlertoleranz besteht meistens aus einer Kombination mehrerer redundanter Mittel, die durch die vier Merkmale Struktur, Funktion, Information und Zeit beschrieben werden können. Diese Merkmale sind in mehr oder weniger starken Ausprägungen in allen redundanten Mitteln vorhandenen. Zur Bennenung der Mittel beschränkt man sich jedoch auf den jeweils hervorstehenden Aspekt der Redundanz. Strukturelle Redundanz Bei der Strukturellen Redundanz wir das System um für den Nutzbetrieb entbehrliche Komponenten erweitert. Zum Beispiel können in einem Mehrrechnersystem zusätzliche Rechner ergänzt oder Dateien in mehrfachen Kopien vorgehalten werden. Weitere typische Beispiele, bei denen durch eine Vergrößerung der Komponentenzahl Redundanz strukturell erbracht wird, sind Rechnercluster und RAID-Systeme. Teilweise kann auf grund absoluter Gleichheit zwischen ursprünglichen und zusätzlichen Komponenten nicht unterschieden werden, man spricht dann von mehreren Exemplaren einer Komponente, bzw. auf höheren Ebenen von Exemplaren eines Subsystems. Häufig ist strukturelle Redundanz in Hardware anzutreffen, wo sie sehr effektiv umgesetzt werden kann. Dennoch entstehen hier erhebliche Zusatzkosten, und so wird versucht den Hardwareaufwand möglichst gering zu halten oder zumindest die Mehrkosten durch eine Leistungssteigerung abzufangen. Somit gibt es in Mehrrechnersystemen selten ungenutzte 3/11

4 Reserven, vielmehr wird die Auftragslast über alle fehlerfreien Rechner verteilt, um die zur Verfügung stehende Hardware möglichst voll auszunutzen. Funktionelle Redundanz Erweitert man ein System um zusätzliche Funktionen, so spricht man von funktioneller Redundanz. Solche redundanten Funktionen dienen ausschließlich dem Fehlertolerierungsbetrieb, erbringen also keine Nutzfunktionen. Als Beispiele nennen lassen sich Testfunktionen, die Ergebnisse von Nutzfunktionen überprüfen, Rekonfigurierungsfunktionen in Mehrrechnersystemen, die den Datenfluss des Nutzbetriebs um fehlerhaft gewordene Rechner herumleiten oder die Verwaltung von Ersatzrechnern und -prozessen durch das Betriebssystem. Allesamt sind dies sogenannte Zusatzfunktionen, da sie sich in ihrer Spezifikation und Implementierung grundlegend von Funktionen des Nutzbetriebs unterscheiden. Erbracht werden solche redundanten Funktionen häufig durch Fehlertoleranzinstanzen, wie im Fall einer Funkion, die Paritätsbits erzeugt. Die Umsetzung von Zusatzfunktionen erfolgt oft aber nicht zwingend durch redundante Komponenten; es besteht also meist ein enger Zusammenhang zwischen funktioneller und struktureller Redundanz. Diversität Wegen ihrer weiten Verbreitung soll eine Art der funktionellen Redundanz hier besondere Erwähnung finden. Reine Replikation bietet keinen Schutz vor Entwurfsfehlern, wie Mängeln bei der Problemanalyse, Übervereinfachung von Sachverhalten oder dem schlichten Ignorieren von Grenzfällen. Solche Fehler lassen sich durch Diversität tolerieren, dem mehrfachen Entwurf und der verschiedenen Implementierung einer Nutzfuntkion. Solche diversitären Exemplare oder Varianten einer Funktion f werden dargestellt als f n und meistens durch Komponentenexemplare K n dargestellt. Abb 2: Ein Komponentenexemplar mit drei Varianten einer Funktion f als Modellierung der Diversität Zudem erlaubt Diversität die Tolerierung von Betriebsfehlern, hier vor allem störungsbedingten 4/11

5 Fehlern, Bedienungs- und Wartungsfehler, da diversitäre Exemplare auf die gleichen fehlerhaften Einwirkungen unterschiedlich reagieren und somit eine Komponente in ihrer Gesamtheit wahrscheinlicher fehlerfrei bleibt, da andere Varianten möglicherweise nicht von den Fehleinwirkungen beeinträchtigt werden. Ein Beispiel dafür wäre die gleichzeitige Speicherung von Daten auf Halbleiterspeichern (ROM, RAM, Flash) und Magnetplattenspeichern (Festplatten): Elektromagnetische Störungen beschränken sich eher auf erstere, mechanische Stöße eher auf letzere. Insgesamt hat der Datenspeicher somit eine höhere Überlebenswahrscheinlichkeit als ein solcher, der nur eine Art der Speicherung verwendet. Diversität kann nur bis zu einer gewissen Grenze eine Steigerung der Zuverlässigkeit erbringen, die vor allem von der Schwierigkeit des zu lösenden Problems und der Anzahl der Entwurfsvarianten abhängt. Für sehr komplexe Probleme gibt es teils nur wenige, teils nur überproportional schwierige Lösungsansätze, so dass die Menge an verschiedenen Entwürfen schon alleine durch den vertretbaren Aufwand beschränkt sein kann. Wie hoch die maximale Anzahl von Varianten ist, lässt sich nur statistisch, manchmal sogar nur im laufenden Betrieb feststellen. Im Zusammenhang mit der Anzahl an Entwurfsmöglichkeiten ist auch der durch die Spezifikation gegebene Entwurfsspielraum relevant: Eine sehr strikte Spezifikation, die kaum Raum für verschiedene Entwürfe lässt, verhindert Diversität ebenso wie eine sehr grobe, ungenaue Spezifikation zu viel Spielraum gewährt und damit Missverständnisse der Aufgabenstellung provoziert. Umsetzen lässt sich Diversität beispielsweise auf grund der Annahme, dass verschiedene Entwickler eher unwahrscheinlich den gleichen Fehler begehen. Man lässt also alle Varianten einer diversitären Funktion durch separate Teams implementieren und verhindert somit die Verbreitung von Denkfehlern zwischen den Teams, den Entwürfen und somit den Implementierungen. Nachteile sind hierbei aber der schwer quantifizierbare Nutzen, der gegen hohe Mehrkosten steht, sowie die Gefahr, dass sich durch missverständliche oder fehlerhafte Spezifikationen oft auch die gleichen Entwurfsfehler entwickeln. Unterscheiden kann man bei diesem Ansatz wiederum zwischen unabhängigem und gegensätzlicher Entwurf. Bei ersterem unterbindet man jegliche Kommunikation zwischen den einzelnen Teams und lässt ihnen freie Wahl bei der Programmiersprache, Bibliotheken, Compiler, usw. Dadurch riskiert man aber, dass durch Zufall gleiche Entwürfe und somit auch gleiche Fehler entstehen können. Dem entgegenzuwirken versucht der gegensätzliche Entwurf, der mit einer gemeinsamen Besprechung des Problems durch alle Teams beginnt. Den einzelnen Teams werden dabei spezifische Entwurfsvarianten zugewiesen, was den Vorteil einer besseren Nutzung des Entwurfsspielraums und den Ausschluss zufällig gleicher Entwürfe bietet. Allerdings können sich bereits bei der gemeinsamen Vorbesprechung Fehlentscheidungen einschleichen, die dann alle Teams gleichsam betreffen. Betrachtet man die typischen Phasen eines Projektes, lassen sich vielfältige Ansatzpunkte für Diversität finden. Hierzu muss man das Objekt einer Phase a als Spezifikation für mehrere Varianten des Objekts der Phase a + 1 ansehen. Diese Aufspaltung in mehrere Varianten ist in 5/11

6 jeder Phase möglich, ebenso die Zusammenführung in ein einziges Objekt in einer Phase b > a. Phase Vorgegebenes Objekt Tätigkeit 1 Problem Problemanalyse 2 Pflichtenheft Formalisierung 3 Spezifikation Implementierung 4 Module Test 5 Funktionsfähiges System Installation 6 Angewandtes System Betrieb/Wartung Abb 3: Typische Projektphasen Ein sehr aufwändiger, wenn auch bei Gelingen höchste Fehlerfreiheit versprechender Ansatz ist die direkte Erzeugung von Objekten verschiedenener Phasen. So erstellt ein Team ausgehend vom Pflichtenheft eine Spezifikation, während ein zweites Team direkt eine Implementierung fertigt. Im Anschluss wird versucht, die Korrektheit der Implementierung bezüglich der Spezifikation durch formale Verifikation nachzuweisen. Schlägt dies fehl, kann die Verifikation nach Bearbeitung von Spezifikation und/oder Implementierung wiederholt werden, bis der Aufwand nicht mehr vertretbar ist. Gelingt die Verifikation, hat man ein Programm, dass zu einem hohen Grad frei von Spezifikations- und Implementierungsfehlern ist, da hier starke Diversität in Form gegensätzlichen Entwurfs eingeflossen ist. Dies hat den Vorteil, dass zur Laufzeit nur eine Variante im Betrieb sein muss; die meistens sehr aufwändige Auswahl eines korrekten Ergebnisses zur Laufzeit aus mehreren Varianten entfällt somit. Verschiedene Kombinationen der Aufspaltung und Zusammenführung in den Phasen a und b erlauben eine Vielzahl von diversitären Umsetzungen: Findet die Zusammenführung in der Phase 3 statt, handelt es sich um eine UND-Verknüpfung mehrer Spezifikationen in eine einzige, die idealerweise alle Vorteile ineinander vereint. Sollten sich dabei Wiedersprüche ergeben, nimmt man stattdessen die minimale Anzahl widerspruchsfrei verknüpfbarer Spezifikationen. In den Phasen 4 und 5 kann man Testdaten zur Bestimmung einer fehlerfreien Variante verwenden; hat man dabei Kenntnis von der Korrektheit einer Antwort, kann man fehlerhafte Varianten einfach aussondern. Fehlt einem die Möglichkeit zur Überprüfung von Ergebnissen, können mehrere Varianten in einem Mehrheitsentscheid gegeneinander antreten und die relative Mehrheit der Ergebnisse entscheiden lassen, was zudem den Vorteil hat, nahezu vollständig automatisiert werden zu können. Auch möglich ist eine Zusammenführung in Phase 6, also im laufenden Betrieb, was aber auf grund des damit meist verbundenen hohen Aufwands nur in wenigen Fällen vertretbar ist. 6/11

7 Abb 4: Anwendungsbeipsiel von Diversität: Aufspaltung in Phase 3 in mehrere Module, Zusammenführung in Phase 6 durch Auswahl zur Laufzeit Informationsredundanz Unter Informationsredundanz versteht man zusätzliche Information neben der Nutzinformation, die der Erkennung und gegebenenfalls Lokalisierung bis hin zur Behandlung von Fehlern bei der Speicherung und Übertragung von Daten dient. Bei der Datenverarbeitung in der ALU eines Prozessors ist sie jedoch wegen des hohen Aufwands weniger geeignet. Informationsredundanz baut auf funktionelle Redundanz zur Erzeugung der zusätzlichen Information und wiederum auf strukturelle Redundanz zur Realisierung dieses Erzeugers. Analog zu den Fehlerbereichen aus der strukturbezogenen Begrenzung, geht man als Fehlfunktions-Annahme meist von einem k- Binärstellenausfall aus, also dem Auftreten von Fehlern in lediglich einer gewissen Anzahl von Bits. Während sich 1-Bit-Fehler noch durch Paritätsbits erkennen lassen, muss man bei potentiell mehreren fehlerbehafteten Bits auf formalere Werkzeuge zurückgreifen: Hier kommen Codes und die Mindesthammingdistanz zum Einsatz. Die Hammingdistanz gibt die Anzahl der Bits an, in denen sich zwei Binärwörter unterscheiden, die Mindesthammingdistanz ist nun die kleinste 7/11

8 Hammingdistanz aus einer Menge an Binärwörtern. Will man lediglich Fehler erkennen, reicht es Codes mit einer Mindesthammingdistanz von d k + 1 zu verwenden, da durch die Verfälschung von bis zu k Bits kein anderes gültiges Codewort erzeugt werden kann. Zur Korrektur von bis zu k Bitfehlern benötigt man eine Mindesthammingdistanz von d 2 k + 1; nur so ist garantiert, dass bei bis zu k fehlerhaften Bits die Hammingdistanz zum ursprünglichen Codewort immer noch kleiner als zu allen anderen gültigen Codewörtern ist. Abb 5: Vier Codewörter und alle fehlerhaften Wörter, die durch Fehlerkorrektur noch auf das ursprüngliche Codewort zurückgeführt werden können Nimmt man als Beispiel den Code {00000, 00111, 11100, 11011} und d = 3, erhält man eine sehr hohe Anzahl zusätzlicher Bitstellen, da die reinen Nutzinformation auch mit 2 Bits darstellbar wären, kann aber nach Abb. 5 alle Bitfehler, die bis zu 3 Bits verfälschen, erfolgreich korrigieren. Mit steigender Gesamtstellenanzahl sinkt der relative Anteil der zusätzlichen Binärstellen deutlich, bei 32 Nutzbits braucht man somit ingesamt nur 38 Bits für eine umfassende Fehlerkorrekturfähigkeit. Informationsredundanz beschränkt sich aber nicht nur auf Codierung, sondern findet sich beispielsweise auch in einer doppelt verketten Liste wieder. Hier ermöglichen die mehrfachen Referenzen zwischen Listenelementen nicht nur performante Suchfunktionen sondern auch das Erkennen und Korrigieren von Fehlern in der Verkettung. 8/11

9 Abb 6: In einer doppelt verketten Liste können fehlerhafte Verkettungen teilweise erkannt und korrigiert werden. Unter den Fehlertoleranzverfahren ist Informationsredundanz das wohl effizienteste, solange sich Fehler auf eine bestimmte und erwartete Anzahl von Binärstellen oder Teilinformationen beschränken. Zeitredundanz Letztendlich bezeichnet man mit Zeitredundanz das Vorhandensein von zusätzlicher Zeit, die über den Zeitbedarf des Normalbetriebs hinausgeht. Nahezu jede Art von Fehlertolerierungsbetrieb benötigt Zeit, die aber äußerst stark vom jeweiligen Verfahren abhängig ist. Die Spanne reicht hier von Bruchteilen bis zu Vielfachen des Zeitbedarfs des Normalbetriebs, und so gibt man eine Höchstdauer anstatt eines absoluten Zeitwerts an. Als typisches und sehr langwieriges Beispiel sei hier die Rekonstruierung einer Festplatte in einem RAID-System erwähnt. Meist gibt man die Gesamtausführungsdauer, auch Reaktionszeit oder Antwortzeit genannt, eines Systems an, bis dieses ein fehlerfreies Ergebnis liefert. Aktivierung Während die oben erwähnten Merkmale lediglich die verschiedenen Ausprägungen von Redundanz beschreiben, definiert die Aktivierung den Benutzungszeitpunkt eines redundanten Mittels. Im folgenden benötigen wir den Begriff der zu unterstützenden Funktion für Funktionen des Nutzbetriebs, die durch redundante Mittel fehlertolerant erbracht werden sollen. Grob lässt sich bei der Aktivierung zwischen statischer, auch funktionsbeteiligter Redundanz und dynamischer oder auch Reserveredundanz unterscheiden. Erstere ist über den gesamten Einsatzzeitraums vorhanden und arbeitet fortwährend den zu unterstützenden Funktion zu, zweitere wird erst im Ausnahmebetrieb aktiviert und unterscheidet zwischen Primär- und Ersatz- /Sekundär-/Reservekomponenten sowie dementsprechend Primär- und Ersatzsystemen. Als dritte Art gibt es noch hybride Aktivierung, bei der an sich statische redundante Mittel im Rahmen von Rekonfigurierung zur Laufzeit dynamisch verändert werden. Im Folgenden sollen mehrere Kombinationen aus Merkmalen und Aktivierungsarten erläutert werden: Statische strukturelle Redundanz findet man bei einem Mehrheitsentscheid durch eine erhöhte Anzahl von Komponenten-Exemplaren. Zusatzfunktionen stellen statisch funktionelle Redundanz zum Beispiel in Form einer Erweiterung einer Sende Nachricht -Funktion um eine Zusatzfunktion 9/11

10 dar, die den Nachrichtentransfer über mehrere verschiedene Wege leitet; der Empfänger vergleicht ob beide Nachrichten übereinstimmen und kann so Fehler erkennen. Für statische funktionelle Redundanz durch Diversität steht ein Mehrheitsentscheid zwischen mehreren Varianten einer diversitären Funktion. Die Erzeugung eines Codeworts über Nutzinformationen vor dem Senden und die Prüfung zur Fehlererkennung/-korrektur auf Seite des Empfängers stellt statische Informationsredundanz dar, die Mittelung von Messwerten zur Vermeidung von kurzzeitigen Peaks als mehrfache Ausführung einer Funktion ist Zeitredundanz. Dynamische strukturelle Redundanz ist beispielsweise das Kopieren von Primärdateien auf Magnetband als Ersatzdateien, die bis zum Fehlerfall nicht les- oder schreibbar sind; dies könnte man auch als dynamische Informationsredundanz werten, wenn man sich auf die Information in der Datei an sich bezieht. Wartet der Sender einer Nachricht auf positive Quittierung vom Empfänger und übermittelt bei Zeitüberschreitung die Nachricht erneut, liegt dynamische funktionelle Redundanz durch Zusatzfunktionen vor. Beispielhaft für dynamische funktionelle Redundanz durch Diversität ist bei Varianten f1, f2 einer Funktion f die ausschließliche Ausführung von f2, wenn der Rückgabewert von f1 auf einen Fehler schließen lässt. Bei Ausnahme- und Wiederholungsbetrieb, bspw. zum Kopieren der Inhalte einer Ersatzdatei in die Primärdatei, handelt es sich um dynamische Zeitredundanz. Während dynamische Redundanz im Normalbetrieb die Unterstützung von Nutzfunktionen nicht gestattet, fordert sie mit nichten vollkommene Passivität von den redundanten Mitteln. Ungenutzte Redundanz sind im Normalbetrieb vollkommen passive Mittel; das simple Brachliegen ist natürlich gestattet. Fremdgenutze Redundanz beschreibt das Erbringen von Funktionalitäten, die nicht der eigentlichen Nutzfunktion des Systems zuzuordnen sind, wie beispielsweise das Komprimieren von Logdateien oder das Aufräumen temporärer Verzeichnisse. Schließlich stellt gegenseitige Redundanz eine sehr vorteilhafte Verwendung von Komponenten dar, die sich untereinander als Reserve zur Verfügung stehen und im Fehlerfall die Funktion einer anderen Komponente zusätzlich zur eigenen Funktion übernehmen. So kann im Normalbetrieb durch das Beitragen aller Komponenten zur Erfüllung der Nutzfunktionen maximale Leistung erzielt werden. Fehler bewirken lediglich eine Leistungsminderung durch die Mehrlast auf einzelne Komponenten, nicht jedoch einen Leistungsausfall. Zudem kann man die Auftragslast zur Laufzeit optimal auf fehlerfreie Komponenten verteilen, da es keine Festlegung auf Primärund Ersatzkomponenten gibt; man denke an Rechnercluster. Ein abschließendes Beispiel Folgendes Rechnersystem baut grundlegend auf redundante Prinzipien auf, um eine möglichst hohe Überlebenswahrscheinlichkeit, Zuverlässigkeit und Verfügbarkeit zu gewährleisten. Das Gesamtsystem besteht aus einem Cluster mehrerer gleichartiger Rechner, die sich in Form gegenseitiger Redundanz die Auftragslast teilen und über mehrere verschiedene Wege miteinander kommunizieren. Dynamisch funktionelle Redundanz wiederholt eine Nachricht im 10/11

11 Fehlerfall auf einem anderen Weg. Auf jedem Rechner sichert statische Informationsredundanz in Form des Fehlerkorrektur-Codes ECC im Arbeitsspeicher die Datenintegrität. Nachrichten zwischen Prozessen werden über verschiedene Bussysteme übermittelt, zusätzlich wendet der Empfänger einen Mehrheitsentscheid an, um die Ausbreitung von Übertragungsfehlern weiter zu senken; hierbei handelt es sich um statische strukturelle Redundanz bei Bussen und Nachrichten und um statisch funktionelle Redundanz der Sendefunktion. Zusätzlich warten zwei Ersatzprozesse je Anwendungsprozess, um im Fehlerfall die Funktion im Sinne dynamisch struktureller Redundanz zu übernehmen. Dieses abschließende Beispiel stellt ein in mehreren Ebenen redundant ausgelegtes System dar, dass viele der hier beschriebenen Merkmale und Aktivierungsarten beinhaltet und die Funktion der Redundanz als Grundlage der Fehlertoleranz und Fehlerkorrektur nochmals verdeutlicht. Literatur Klaus Echtle: Fehlertoleranzverfahren (1990) Springer-Verlag GmbH, ISBN /11

Redundanz als Grundlage von Fehlertoleranz/Fehlerkorrektur

Redundanz als Grundlage von Fehlertoleranz/Fehlerkorrektur Redundanz als Grundlage von Fehlertoleranz/Fehlerkorrektur Inhalt 1. Einführung und Begriffsdefinition 2. Übersicht Merkmale und Aktivierungsarten 3. Merkmale 1. Strukturelle Redundanz 2. Funktionelle

Mehr

Fakultät für Informatik der Technischen Universität München. Fehlertoleranz. Redundanz

Fakultät für Informatik der Technischen Universität München. Fehlertoleranz. Redundanz Fehlertoleranz Redundanz 476 Grundlage der Fehlertoleranzmechanismen: Redundanz Die beiden grundsätzlichen Schritte eines Fehlertoleranzverfahrens, die Diagnose und Behandlung von Fehlern, benötigen zusätzliche

Mehr

Vor- und Nachteile der Fehlermaskierung

Vor- und Nachteile der Fehlermaskierung Vor- und Nachteile der Fehlermaskierung Fehlermaskierung reicht als einziges Fehlertoleranz-Verfahren aus. Maskierer lassen sich vergleichsweise einfach implementieren. Wiederholungsbetrieb entfällt, dadurch

Mehr

Fehlertolerante Systeme

Fehlertolerante Systeme Wissenschaftliche Vertiefung Studiengang Technische Informatik Fehlertolerante Systeme Philipp Dürnay 22.01.2016 Agenda Fehlertoleranz Fehlerdiagnose Fehlerbehandlung Beispielsystem Ausblick Philipp Dürnay

Mehr

Fehlertoleranz. Betriebssysteme. Hermann Härtig TU Dresden

Fehlertoleranz. Betriebssysteme. Hermann Härtig TU Dresden Fehlertoleranz Betriebssysteme Hermann Härtig TU Dresden Wegweiser Prinzipien der Fehlertoleranz RAID als ein Beispiel Betriebssysteme WS 2018, Fehlertoleranz!2 Begriffe Grundprinzip Konstruktion zuverlässigerer

Mehr

Strukturelle Redundanz

Strukturelle Redundanz Strukturelle Redundanz bezeichnet die Erweiterung eines Systems um zusätzliche (gleich- oder andersartige) für den Nutzbetrieb entbehrliche Komponenten. Beispiele: 2-von-3-Rechnersysteme redundante Kommunikationskanäle

Mehr

Proseminar Technische Informatik WS08/09 bei Georg Wittenburg, M.Sc. Zuverlässigkeit und Fehlertoleranz in der Technik

Proseminar Technische Informatik WS08/09 bei Georg Wittenburg, M.Sc. Zuverlässigkeit und Fehlertoleranz in der Technik Proseminar Technische Informatik WS08/09 bei Georg Wittenburg, M.Sc. Zuverlässigkeit und Fehlertoleranz in der Technik Ein Vortrag von Sebastian Oliver Kalwa Berlin, 30.01.2009 1 Was ist Fehlertoleranz?

Mehr

FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG

FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG BEGRIFFE Sicherheit/Security/Safety

Mehr

Grundlagen der Technischen Informatik. 2. Übung

Grundlagen der Technischen Informatik. 2. Übung Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 2. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Hamming-Distanz Fehlererkennung

Mehr

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir?

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir? Rechnernetze Übung 5 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2012 Wo sind wir? Quelle Nachricht Senke Sender Signal Übertragungsmedium Empfänger Quelle Nachricht Senke Primäres

Mehr

Grundlagen Digitaler Systeme (GDS)

Grundlagen Digitaler Systeme (GDS) Grundlagen Digitaler Systeme (GDS) Prof. Dr. Sven-Hendrik Voß Sommersemester 2015 Technische Informatik (Bachelor), Semester 1 Termin 10, Donnerstag, 18.06.2015 Seite 2 Binär-Codes Grundlagen digitaler

Mehr

Fehlertoleranz in eingebetteten Systemen

Fehlertoleranz in eingebetteten Systemen Fehlertoleranz in eingebetteten Systemen Ausgewählte Kapitel eingebetteter Systeme (AKES) 19.07.2006 1 / 36 Was ist ein Fehler? Fehlerklassen Überblick Einführung Was ist ein Fehler? Fehlerklassen 2 /

Mehr

Verteilte Systeme. 7. Fehlertoleranz

Verteilte Systeme. 7. Fehlertoleranz Verteilte Systeme 7. Fehlertoleranz Sommersemester 2011 Institut für Betriebssysteme und Rechnerverbund TU Braunschweig Dr. Christian Werner Bundesamt für Strahlenschutz 7-2 Überblick Motivation für Fehlertoleranz

Mehr

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Codierungstheorie Teil 1: Fehlererkennung und -behebung Codierungstheorie Teil 1: Fehlererkennung und -behebung von Manuel Sprock 1 Einleitung Eine Codierung ist eine injektive Abbildung von Wortmengen aus einem Alphabet A in über einem Alphabet B. Jedem Wort

Mehr

Ü B U N G E N Z U V E R L Ä S S L I C H E E Z S A U F G A B E 4 : E RW E I T E RT E A R I T H M E T I S C H E C O D I E R U N G

Ü B U N G E N Z U V E R L Ä S S L I C H E E Z S A U F G A B E 4 : E RW E I T E RT E A R I T H M E T I S C H E C O D I E R U N G A U F G A B E 4 : E RW E I T E RT E A R I T H M E T I S C H E C O D I E R U N G In dieser Aufgabe werden Sie die gegen Bitfehler abgesicherten Bereiche Ihrer dreifach redundanten Filterausführung durch

Mehr

Vergleich der Hard-Decision Decodierung mit der Soft Decision- Decodierungi (HD- mit SD-Decodierung)

Vergleich der Hard-Decision Decodierung mit der Soft Decision- Decodierungi (HD- mit SD-Decodierung) Vergleich der Hard-Decision Decodierung mit der Soft Decision- Decodierungi (HD- mit SD-Decodierung) Als Beispiel für die folgenden Überlegungen dient der (7,4,3)-Hamming- oder BCH-Code). Wegen des Mindestabstands

Mehr

Grundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3

Grundlagen der Technischen Informatik. Hamming-Codes. Kapitel 4.3 Hamming-Codes Kapitel 4.3 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design Inhalt Welche Eigenschaften müssen Codes haben, um Mehrfachfehler erkennen und sogar korrigieren zu können?

Mehr

Gruppe. Kanalcodierung

Gruppe. Kanalcodierung Kanalcodierung Ziele Mit diesen rechnerischen und experimentellen Übungen wird die prinzipielle Vorgehensweise zur Kanalcodierung mit linearen Block-Codes und mit Faltungscodes erarbeitet. Die konkrete

Mehr

Codierung Fehlerdetektion

Codierung Fehlerdetektion Übersicht Elektromagnetische Wellen Frequenzen und Regulierungen Antennen Signale Signalausbreitung Multiplex Modulation Bandspreizverfahren Codierung Rauschen und Übertragungsfehler Fehlerdetektion Block-Codes

Mehr

Paketvermittlung (1/9)

Paketvermittlung (1/9) Paketvermittlung (1/9) 1 Daten- und Telekommunikationsnetze sind traditionell leitungsvermittelt Leitungsvermittelte Netze Switching Networks, z.b. Telefonnetzwerk Kommunikationspartnern wird stehende

Mehr

7 Fehlertoleranz. vs7 1

7 Fehlertoleranz. vs7 1 7 Fehlertoleranz vs7 1 Zuverlässigkeit (reliability) Sicherheit vor Fehlern (safety) Sicherheit vor Angriffen (security) -> Systemsicherheit -> Netzsicherheit vs7 2 7.1 Terminologie (ist nicht einheitlich)

Mehr

Dekohärenz und Grundprinzip der Quantenfehlerkorrektur

Dekohärenz und Grundprinzip der Quantenfehlerkorrektur Dekohärenz und Grundprinzip der Quantenfehlerkorrektur Bachelorarbeit Gregor Wurm, Betreuer: Prof. E. Arrigoni Institut für Theoretische Physik der Technischen Universiät Graz 24. Sept. 2010 Übersicht

Mehr

Übungsblatt 5 - Musterlösung

Übungsblatt 5 - Musterlösung Universität Mannheim Lehrstuhl für Praktische Informatik IV Prof. Dr. W. Effelsberg Christoph Kuhmünch, Gerald Kühne Praktische Informatik II SS 2000 Übungsblatt 5 - Musterlösung Aufgabe 1: Huffman-Codierung

Mehr

Grundbegrie der Codierungstheorie

Grundbegrie der Codierungstheorie Grundbegrie der Codierungstheorie Pia Lackamp 12. Juni 2017 Inhaltsverzeichnis 1 Einleitung 2 2 Hauptteil 3 2.1 Blockcodes............................ 3 2.1.1 Beispiele.......................... 3 2.2

Mehr

Electronic Design Automation (EDA) Systementwurf

Electronic Design Automation (EDA) Systementwurf Electronic Design Automation (EDA) Systementwurf Systembegriff Beispiel Antiblockiersystem Signalverarbeitung Hardware/Software- Partitionierung Hardware oder Software? Electronic Design Automation Systementwurf:

Mehr

Themen. Sicherungsschicht. Rahmenbildung. Häufig bereitgestellte Dienste. Fehlererkennung. Stefan Szalowski Rechnernetze Sicherungsschicht

Themen. Sicherungsschicht. Rahmenbildung. Häufig bereitgestellte Dienste. Fehlererkennung. Stefan Szalowski Rechnernetze Sicherungsschicht Themen Sicherungsschicht Rahmenbildung Häufig bereitgestellte Dienste Fehlererkennung OSI-Modell: Data Link Layer TCP/IP-Modell: Netzwerk, Host-zu-Netz Aufgaben: Dienste für Verbindungsschicht bereitstellen

Mehr

Software Entwicklung 2

Software Entwicklung 2 1 Software Entwicklung 2 Softwareprüfung Prof. Dr. Liggesmeyer, 1 Inhalt System, technisches System Qualität, Qualitätsanforderung, Qualitätsmaß, Qualitätsmerkmal Sicherheit, technische Sicherheit Korrektheit,

Mehr

Electronic Design Automation (EDA) Spezifikation

Electronic Design Automation (EDA) Spezifikation Electronic Design Automation (EDA) Spezifikation Inhalte einer Spezifikation Beispielspezifikation Ampelsteuerung Formale Beschreibung Blockdiagramme... für die Ampel Zustandsübergangs-diagramme... für

Mehr

Grundlagen der Technischen Informatik. 2. Übung

Grundlagen der Technischen Informatik. 2. Übung Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit Organisatorisches Übungsblätter zuhause vorbereiten! In der Übung an der Tafel vorrechnen! Bei

Mehr

Übung 14: Block-Codierung

Übung 14: Block-Codierung ZHW, NTM, 26/6, Rur Übung 4: Block-Codierung Aufgabe : Datenübertragung über BSC. Betrachten Sie die folgende binäre Datenübertragung über einen BSC. Encoder.97.3.3.97 Decoder Für den Fehlerschutz stehen

Mehr

Überblick. Verlässliche Echtzeitsysteme. Annahmen. Table of Contents. Übungen zur Vorlesung. Florian Franzmann Martin Hoffmann Tobias Klaus

Überblick. Verlässliche Echtzeitsysteme. Annahmen. Table of Contents. Übungen zur Vorlesung. Florian Franzmann Martin Hoffmann Tobias Klaus Überblick Verlässliche Echtzeitsysteme Übungen zur Vorlesung Florian Franzmann Martin Hoffmann Tobias Klaus Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und

Mehr

2.5 Verifikation. Verifikation und Test Der Pentium-Bug Das Verifikationsproblem. Verifikationswerkzeuge. Verifikationsstrategie: Close

2.5 Verifikation. Verifikation und Test Der Pentium-Bug Das Verifikationsproblem. Verifikationswerkzeuge. Verifikationsstrategie: Close 2.5 Verifikation Verifikation Verifikation und Test Der Pentium-Bug Das Verifikationsproblem Verifikationswerkzeuge Verifikationsstrategie: Beispiel Close 2.5.1 Verifikation und Test Ein großer Teil des

Mehr

Fehlertolerante und Selbstheilende Systeme. Redundanztechniken

Fehlertolerante und Selbstheilende Systeme. Redundanztechniken Fehlertolerante und Selbstheilende Systeme Redundanztechniken Azad Kamo Seminar Fehlertolerante und Selbstheilende Systeme: Redundanztechniken Azad Kamo - 1 Gliederung Motivation Fehler Ziele der Fehlertoleranz

Mehr

Theoretische Grundlagen der Informatik. Vorlesung am 7. Februar INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische Grundlagen der Informatik. Vorlesung am 7. Februar INSTITUT FÜR THEORETISCHE INFORMATIK Theoretische Grundlagen der Informatik 0 07.02.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Werbung Vorlesung Algorithmen

Mehr

Electronic Design Automation (EDA) Verification

Electronic Design Automation (EDA) Verification Electronic Design Automation (EDA) Verification Verifikation und Test Der Sandy-Bridge-Bug Das Verifikationsproblem Verifikationswerkzeuge Verifikationsstrategie: Beispiel Verification: Verifikation und

Mehr

Software-Wartung eine Taxonomie

Software-Wartung eine Taxonomie Software-Wartung eine Taxonomie Übersicht Warum wird eine Taxonomie der Software-Wartung benötigt? Definition der Software-Wartung Erläuterung verwandter Begriffe Arten und Aspekte der Software-Wartung

Mehr

Trellis Diagramme und Viterbi-Decoder

Trellis Diagramme und Viterbi-Decoder Trellis Diagramme und Viterbi-Decoder Michael Dienert. März Fehlertolerante Datenübertragung bei Gigabit-Ethernet Um MBit/s auf Kat Kupferkabeln übertragen zu können, sind eine Reihe technischer Kunstgriffe

Mehr

Rechnerstrukturen WS 2013/14

Rechnerstrukturen WS 2013/14 Rechnerstrukturen WS 2013/14 1 Boolesche Funktionen und Schaltnetze 2 Hazards (Wiederholung/Abschluss) 3 Programmierbare Bausteine Einleitung Einsatz von PLAs 4 Sequenzielle Schaltungen Einleitung Folien

Mehr

Verifizierende Testverfahren

Verifizierende Testverfahren Spezifikation Um einen Algorithmus zu schreiben, muss das zu lösende Problem genau beschrieben sein. Eine Spezifikation ist Verifizierende Testverfahren vollständig, wenn alle Anforderungen/alle relevanten

Mehr

(Prüfungs-)Aufgaben zur Codierungstheorie

(Prüfungs-)Aufgaben zur Codierungstheorie (Prüfungs-)Aufgaben zur Codierungstheorie 1) Gegeben sei die folgende CCITT2-Codierung der Dezimalziffern: Dezimal CCITT2 0 0 1 1 0 1 1 1 1 1 0 1 2 1 1 0 0 1 3 1 0 0 0 0 4 0 1 0 1 0 5 0 0 0 0 1 6 1 0 1

Mehr

Rechnerstrukturen WS 2012/13

Rechnerstrukturen WS 2012/13 WS 2012/13 Boolesche Funktionen und Schaltnetze Hazards (Wiederholung/Abschluss) Programmierbare Bausteine Einleitung Einsatz von PLAs Sequenzielle Schaltungen Einleitung Hinweis: Folien teilweise a. d.

Mehr

7.2 Conjoining Specifications

7.2 Conjoining Specifications Seminar: Spezifikation und Verifikation verteilter Systeme 7.2 Conjoining Specifications Teil 2: Das Kompositions-Theorem Dirk Fahland 1 TLA & Komposition in TLA Jede TLA-Formel Mi lässt sich in eine äquivalente

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Fehlerarten. Validation. Wintersemester 2012/13. Dr. Tobias Lasser

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Fehlerarten. Validation. Wintersemester 2012/13. Dr. Tobias Lasser Programm heute Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 01/13 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München 1 Einführung Mathematische Grundlagen

Mehr

Fehlertoleranz & Robustheit

Fehlertoleranz & Robustheit January 17, 2017 Warum Recap fault error failure transient - permanent - intermittent Kritische Anwendungen - Extreme Umgebung - Komplexität Trends: Miniaturisierung kleiner Streuung in Fertigung einfach

Mehr

4.0.2 Beispiel (Einfacher Wiederholungscode). Im einfachsten Fall wird die Nachricht einfach wiederholt. D.h. man verwendet die Generatorabbildung

4.0.2 Beispiel (Einfacher Wiederholungscode). Im einfachsten Fall wird die Nachricht einfach wiederholt. D.h. man verwendet die Generatorabbildung Wir beschäftigen uns mit dem Problem, Nachrichten über einen störungsanfälligen Kanal (z.b. Internet, Satelliten, Schall, Speichermedium) zu übertragen. Wichtigste Aufgabe in diesem Zusammenhang ist es,

Mehr

Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC)

Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC) Codes (6) Fehlererkennende (EDC) bzw. fehlerkorrigierende Codes (ECC) Definitionen: Codewort:= mit zusätzlichen (redundanten) Kontrollbits versehenes Quellwort m:= Länge des Quellwortes (Anzahl der Nutzdatenbits)

Mehr

Konzeption und Implementierung eines Funktionsbausteins zur Prüfung postalischer Adressdaten im SAP R/3 System bei der Conrad. Conrad Electronic GmbH

Konzeption und Implementierung eines Funktionsbausteins zur Prüfung postalischer Adressdaten im SAP R/3 System bei der Conrad. Conrad Electronic GmbH Konzeption und Implementierung eines Funktionsbausteins zur Prüfung postalischer Adressdaten im SAP R/3 System bei der Conrad Electronic GmbH Diplomarbeit Ersteller: Christian Drexler Studiengang: Wirtschaftsinformatik

Mehr

Schlussendlich geben wir die Listen aus. Es kommt zu folgender Ausgabe:

Schlussendlich geben wir die Listen aus. Es kommt zu folgender Ausgabe: Musterlösung Übung 7 Aufgabe 1 Sehen wir uns zu allererst das gegebene Forth Programm an: 0 3 new - list constant list1 list1 5 new - list constant list2 list1 6 new - list constant list3 list2 2 new -

Mehr

Redundanzen. Verfügbarkeit = MTBF / (MTBF + MTTR)

Redundanzen. Verfügbarkeit = MTBF / (MTBF + MTTR) Allgemein: Der Begriff Redundanz stammt aus dem Lateinischen (v. lat. Redundare) und bedeutet im Überfluss vorhanden sein. Im IT und Telekommunikationsbereich versteht man unter dem Begriff der Redundanz

Mehr

Die Softwareentwicklungsphasen!

Die Softwareentwicklungsphasen! Softwareentwicklung Die Softwareentwicklungsphasen! Die Bezeichnungen der Phasen sind keine speziellen Begriffe der Informatik, sondern den allgemeinen Prinzipien zur Produktion integrierter Systeme entliehen.

Mehr

Zusammenfassung der Vorlesung vom

Zusammenfassung der Vorlesung vom Zusammenfassung der Vorlesung vom 15.10.2014 Was sind besondere Eigenschaften von Informationen, aus denen sich Missbrauchsmöglichkeiten und die Notwendigkeit von Datensicherheit ergeben? Was sind die

Mehr

Verlässliche Systeme

Verlässliche Systeme Verlässliche Systeme RAID, Teil 2 Rachid El Abdouni Khayari Universität der Bundeswehr München, Neubiberg, Fakultät für Informatik, Institut für Technische Informatik Herbsttrimester 2004 Datenorganisation

Mehr

Grundlagen des Software Engineering

Grundlagen des Software Engineering Gustav Pomberger und Günther Blaschek Grundlagen des Software Engineering Prototyping und objektorientierte Software-Entwicklung Mit 101 Abbildungen Technische Universität Darmstadt FACHBEREICH INFORMATIK

Mehr

Überblick. Multi-Cloud Computing Motivation Redundant Array of Cloud Storage (RACS) c td MWCC (WS16/17) Multi-Cloud Computing 13 1

Überblick. Multi-Cloud Computing Motivation Redundant Array of Cloud Storage (RACS) c td MWCC (WS16/17) Multi-Cloud Computing 13 1 Überblick Multi-Cloud Computing Motivation Redundant Array of Cloud Storage (RACS) c td MWCC (WS16/17) Multi-Cloud Computing 13 1 Vendor Lock-In -Problem Typische Vorgehensweise bei der Migration eines

Mehr

YERGITXH YZRBIPQH? Lösung. Der Hamming-Abstand der beiden Zeichenfolgen ist 4. Die verschiedenen Zeichen Y E R G I T X H Y Z R B I P Q H

YERGITXH YZRBIPQH? Lösung. Der Hamming-Abstand der beiden Zeichenfolgen ist 4. Die verschiedenen Zeichen Y E R G I T X H Y Z R B I P Q H Schülerzirkel Mathematik Fakultät für Mathematik. Universität Regensburg Planet Nuschel Aufgabe 1 (Hieroglyphen (nur für die Klassen 7/8) [4 Punkte]). Der Hamming-Abstand ist nicht nur auf Buchstaben beschränkt.

Mehr

Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen

Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen Übungen zur Vorlesung Grundlagen der Rechnernetze Zusätzliche Übungen Hamming-Abstand d Der Hamming-Abstand d zwischen zwei Codewörtern c1 und c2 ist die Anzahl der Bits, in denen sich die beiden Codewörter

Mehr

Die allerwichtigsten Raid Systeme

Die allerwichtigsten Raid Systeme Die allerwichtigsten Raid Systeme Michael Dienert 4. Mai 2009 Vorbemerkung Dieser Artikel gibt eine knappe Übersicht über die wichtigsten RAID Systeme. Inhaltsverzeichnis 1 Die Abkürzung RAID 2 1.1 Fehlerraten

Mehr

Grundlagen der Informationstheorie. Hanna Rademaker und Fynn Feldpausch

Grundlagen der Informationstheorie. Hanna Rademaker und Fynn Feldpausch Grundlagen der Informationstheorie Hanna Rademaker und Fynn Feldpausch . Thema Informationstheorie geht zurück auf Claude Shannon The Mathematical Theory of Communication beschäftigt sich mit Information

Mehr

Objektorientierte Programmierung (OOP)

Objektorientierte Programmierung (OOP) orientierte Programmierung (OOP) 1. Motivation Die objektorientierte Sichtweise der Welt Als Motivation für die OOP sieht man sich am besten die reale Welt an: Die reale Welt besteht aus "en", z. B.: Gegenstände,

Mehr

Programmiermethodik Vorlesung und Praktikum SS 2001

Programmiermethodik Vorlesung und Praktikum SS 2001 Vorlesung und Praktikum SS 2001 Prof. Dr. W. Effelsberg, G. Kühne, Ch. Kuhmünch Universität Mannheim 1. Einführung 1-1 Inhalt 1. Einführung, Vorstellung der Programmieraufgabe 2. Der Software-Entwicklungszyklus

Mehr

Steuerungsarchitektur für Multi-Roboter Kooperation

Steuerungsarchitektur für Multi-Roboter Kooperation Steuerungsarchitektur für Multi-Roboter Kooperation ALLIANCE: An Architecture for Fault Tolerant Multi-Robot Cooperation Lynne E. Parker Referent: S 31.01.2005 Übersicht Architekturen zur Kooperation ALLIANCE

Mehr

Software-Qualität Ausgewählte Kapitel

Software-Qualität Ausgewählte Kapitel Martin Glinz Software-Qualität Ausgewählte Kapitel Kapitel 9 Verlässlichkeit 2009-2010 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

Prüfungsklausur Entwicklungswerkzeuge und Software-Architektur Ergebnis der Klausur

Prüfungsklausur Entwicklungswerkzeuge und Software-Architektur Ergebnis der Klausur Fakultät für Mathematik und Informatik Elektronische Schaltungen 58084 Hagen 02331 987 1166 Prüfungsklausur Entwicklungswerkzeuge und Software-Architektur 21781 Datum: 12. März 2011 (Bearbeitungszeit 120

Mehr

Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43

Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43 Wahlalgorithmen Überblick/Problemstellung Wahlalgorithmen auf Ringstrukturen Beispiel TokenRing Wahlalgorithmen auf Baumstrukturen Wahlalgorithmen auf beliebigen Netzstrukturen Verteilte Algorithmen (VA),

Mehr

Systemanforderungen Manufacturing Execution System fabmes

Systemanforderungen Manufacturing Execution System fabmes Manufacturing Execution System fabmes Das Manufacturing Execution System fabmes bemüht sich trotz hoher Anforderungen an die Datenverarbeitung möglichst geringe Anforderungen an die Hardware zu stellen.

Mehr

Konzepte von Betriebssystem-Komponenten. Programmstart & dynamische Bibliotheken SS 05. Wladislaw Eckhardt.

Konzepte von Betriebssystem-Komponenten. Programmstart & dynamische Bibliotheken SS 05. Wladislaw Eckhardt. Proseminar KVBK Programmstart dynamische Bibliotheken Konzepte von Betriebssystem-Komponenten Programmstart & dynamische Bibliotheken SS 05 Wladislaw Eckhardt Wladi23@gmx.net 1 1 Einleitung 1.1 Problematik

Mehr

Dynamisches Huffman-Verfahren

Dynamisches Huffman-Verfahren Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über

Mehr

Programmierung mit NQC: Kommunikation zwischen zwei RCX

Programmierung mit NQC: Kommunikation zwischen zwei RCX Programmierung mit NQC: Kommunikation zwischen zwei RCX Martin Schmidt Master-Slave-Betrieb mit 2 RCX Systeme mit 2 RCX sind leichter zu handhaben, wenn ein RCX die Kontrolle über alles behält ( Master

Mehr

KNX TP1 Telegramm. KNX Association

KNX TP1 Telegramm. KNX Association KNX TP1 Telegramm Inhaltsverzeichnis 1 TP1 Telegramm allgemein...3 2 TP1 Telegramm Aufbau...3 3 TP1 Telegramm Zeitbedarf...4 4 TP1 Telegramm Quittung...5 5 Kapitel Telegramm: Informativer Anhang...6 5.1

Mehr

2. Tutorium Digitaltechnik und Entwurfsverfahren

2. Tutorium Digitaltechnik und Entwurfsverfahren 2. Tutorium Digitaltechnik und Entwurfsverfahren Tutorium Nr. 9 Alexis Tobias Bernhard Fakultät für Informatik, KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Byzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit Frank Mattauch

Byzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit Frank Mattauch 1 Hauptseminar: Moderne Konzepte für weitverteilte Systeme: Peer-to-Peer-Netzwerke und fehlertolerante Algorithmen (DOOS) Byzantinische Fehlertoleranz durch Gruppenkommunikation am Beispiel des Rampart-Toolkit

Mehr

Qualitätssicherung und Dokumentation in Netzwerken der Palliativ-Versorgung

Qualitätssicherung und Dokumentation in Netzwerken der Palliativ-Versorgung Eine ClinWise Net Anwendung Qualitätssicherung und Dokumentation in Netzwerken der Palliativ-Versorgung pallidoc 2016-03 Systemvoraussetzungen Version 3.0 Impressum Geschäftsführer: Jan Reichmann Gesellschaftssitz:

Mehr

Verlässliche Echtzeitsysteme

Verlässliche Echtzeitsysteme Verlässliche Echtzeitsysteme Übungen zur Vorlesung Florian Franzmann, Martin Hoffmann Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.informatik.uni-erlangen.de

Mehr

Schulinterner Lehrplan zum Kernlehrplan für die gymnasiale Oberstufe. Informatik Q2. Stand: 02/2016 Status: Gültig

Schulinterner Lehrplan zum Kernlehrplan für die gymnasiale Oberstufe. Informatik Q2. Stand: 02/2016 Status: Gültig Schulinterner Lehrplan zum Kernlehrplan für die gymnasiale Oberstufe Informatik Q2 Stand: 02/2016 Status: Gültig Unterrichtsvorhaben: Modellierung und Implementierung von Anwendungen mit dynamischen, nichtlinearen

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Fehlererkennende und fehlerkorrigierende Codes

Fehlererkennende und fehlerkorrigierende Codes Fehlererkennende und fehlerkorrigierende Codes Claudiu-Vlad URSACHE, 5AHITN Inhalt 1. Codes... 2 2. Hammingdistanz... 3 3. Fehlererkennende Codes... 4 4. Fehlerkorrigierende Codes... 5 1. Codes a 2 a 00

Mehr

Überblick. Verlässliche Echtzeitsysteme. Überblick. Annahmen. Übungen zur Vorlesung. 6. Juli 2015

Überblick. Verlässliche Echtzeitsysteme. Überblick. Annahmen. Übungen zur Vorlesung. 6. Juli 2015 Verlässliche Echtzeitsysteme Übungen zur Vorlesung Florian Franzmann Tobias Klaus Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) https://www4.cs.fau.de

Mehr

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches

Mehr

Auf dieser und den beiden folgenden Folien wurde jeweils ein neues Objekt der Klasse FigurMalerei erstellt und die angegebene Methode ausgeführt.

Auf dieser und den beiden folgenden Folien wurde jeweils ein neues Objekt der Klasse FigurMalerei erstellt und die angegebene Methode ausgeführt. 432 433 434 435 Auf dieser und den beiden folgenden Folien wurde jeweils ein neues Objekt der Klasse FigurMalerei erstellt und die angegebene Methode ausgeführt. 436 437 438 439 440 441 442 443 Die verkürzte

Mehr

Eckpunkte der Informatik-Geschichte

Eckpunkte der Informatik-Geschichte Eckpunkte der -Geschichte bis 1960: als Teil der Wissenschaftsdisziplinen Logik, Mathematik, Elektrotechnik u.a. seit 1960 eigenständige Wissenschaft Einige Eckpunkte: 450 v. Chr.: Verwendung des Abakus

Mehr

Einleitung Architektur Sicherheit Zusammenfassung. Autonomic Computing. Wie sich Computer selbst konfigurieren, warten und verteidigen.

Einleitung Architektur Sicherheit Zusammenfassung. Autonomic Computing. Wie sich Computer selbst konfigurieren, warten und verteidigen. Wie sich Computer selbst konfigurieren, warten und verteidigen. 2005 / Hauptseminar Rechnernetze Gliederung Einleitung Warum? Was ist? Grundsätze des Architektur von Systems Sicherheit in Systems Warum?

Mehr

Replikation verteilter Datenbanken

Replikation verteilter Datenbanken Replikation verteilter Datenbanken Fakultät Informatik, Mathematik und Naturwissenschaften HTWK Leipzig 10. Juli 2015 Replikation verteilter Datenbanken 1 1 Motivation 2 Verfahren 3 Primary Copy 4 Abstimmungsverfahren

Mehr

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2. Codewörter. Codewörter. Strukturierte Codes

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2. Codewörter. Codewörter. Strukturierte Codes Codewörter Grundlagen der Technischen Informatik Codierung und Fehlerkorrektur Kapitel 4.2 Allgemein: Code ist Vorschrift für eindeutige Zuordnung (Codierung) Die Zuordnung muss nicht umkehrbar eindeutig

Mehr

Software zur Messdatenanalyse

Software zur Messdatenanalyse Informatik Thomas Bloch Software zur Messdatenanalyse Diplomarbeit Diplomarbeit Software zur Messdatenanalyse Bloch Thomas Fachhochschule Regensburg Fakultät für Informatik/Mathematik Inhaltsverzeichnis

Mehr

Schulinterner Arbeitsplan für Informatik SII für den Abiturjahrgang 2019 für das Jahr 2016/17

Schulinterner Arbeitsplan für Informatik SII für den Abiturjahrgang 2019 für das Jahr 2016/17 Schulinterner Arbeitsplan für Informatik SII für den Abiturjahrgang 2019 für das Jahr 2016/17 Der Schulinterne Arbeitsplan umfasst die tischen Schwerpunkten die für das schriftliche Abitur 2019 vorgesehen

Mehr

Algorithmus von Berkeley (1989)

Algorithmus von Berkeley (1989) Annahme: kein UTC Empfänger verfügbar Algorithmus (zentral, intern): Algorithmus von Berkeley (1989) ein Rechneragiert als aktiver Time Server. Der Server fragt periodisch die Zeiten/Unterschiede aller

Mehr

Objektorientierte Programmierung II

Objektorientierte Programmierung II Objektorientierte Programmierung II OOP I Erlaubt Entwicklers, im Problemraum zu denken und zu arbeiten. Das Problem wird in eine Menge von Objekten zerlegt. Objekte wirken aufeinander, um das Problem

Mehr

7. Konkretisierungen im Feindesign. 7.1 Zustandsdiagramme 7.2 Object Constraint Language

7. Konkretisierungen im Feindesign. 7.1 Zustandsdiagramme 7.2 Object Constraint Language 7. Konkretisierungen im Feindesign 7.1 Zustandsdiagramme 7.2 Object Constraint Language 173 Verfeinerte Modellierung Durch die verschiedenen Sichten der Systemarchitektur wird der Weg vom Anforderungsmodell

Mehr

1 Fehler in Bibliotheksfunktionen. 1 Überblick. 2 Ziele der Aufgabe. Besprechung der 1. Aufgabe

1 Fehler in Bibliotheksfunktionen. 1 Überblick. 2 Ziele der Aufgabe. Besprechung der 1. Aufgabe U3 3. Übung U3 3. Übung U3-1 Fehlerbehandlung U3-1 Fehlerbehandlung Besprechung der 1. Aufgabe Fehlerbehandlung Infos zur Aufgabe 3: malloc-implementierung U3.1 Fehler können aus unterschiedlichsten Gründen

Mehr

Lokalisierung von Detektionsfehlern

Lokalisierung von Detektionsfehlern E EII Lokalisierung von Detektionsfehlern Magnetic Recording Group Stefan Schmermbeck, Ingo Dahm Lehrstuhl für Datenverarbeitungssysteme Universität Dortmund Überblick Motivation Identifizierung unzuverlässiger

Mehr

Fragenkatalog Computersysteme Test 25. April 2008

Fragenkatalog Computersysteme Test 25. April 2008 Fragenkatalog Computersysteme Test 25. April 2008 Wolfgang Schreiner Wolfgang.Schreiner@risc.uni-linz.ac.at 6. April 2008 Der Test besteht aus 4 Fragen aus dem folgenden Katalog (mit eventuell leichten

Mehr

Showcase Zeugnisvalidierung über Blockchains. Digital-Gipfel 12. Juni 2017 Innovation Lab

Showcase Zeugnisvalidierung über Blockchains. Digital-Gipfel 12. Juni 2017 Innovation Lab Showcase Zeugnisvalidierung über s Digital-Gipfel 12. Juni 2017 Innovation Lab Motivation "Frisierte" Zeugnisse nehmen vor dem Hintergrund steigender Bewerberzahlen deutlich zu [ ]. Die Einschätzungen

Mehr

Entwicklung sicherheitskritischer Systeme

Entwicklung sicherheitskritischer Systeme Entwicklung sicherheitskritischer Systeme Anforderungen der ISO 26262 an die Softwareentwicklung 569 Auswahl der Programmiersprache Bewertungen der Programmiersprachen in der IEC 61508 "++": Das Verfahren

Mehr

Systemvoraussetzungen CAS genesisworld

Systemvoraussetzungen CAS genesisworld Systemvoraussetzungen CAS genesisworld Februar 2019 Dok.Version 67 Prinzipiell können sämtliche Komponenten von CAS genesisworld (Client,, ) auf einem Rechner installiert werden (Einzelarbeitsplatz). In

Mehr

Wer ist verantwortlich für die Datenerfassung auf dieser Website?

Wer ist verantwortlich für die Datenerfassung auf dieser Website? Datenschutzerklärung 1. Datenschutz auf einen Blick Allgemeine Hinweise Die folgenden Hinweise geben einen einfachen Überblick darüber, was mit Ihren personenbezogenen Daten passiert, wenn Sie unsere Website

Mehr