Zusammenfassung
Vier Strategien zur Festlegung von Rücksetzpunkten in Prozeβ-Systemen werden entwickelt, die
-
* während der Übersetzung eines mehrere Prozesse umfassenden Programms angewandt werden können und die
-
* es erlauben, die im Prozeß-System enthaltene Redundanz zur VorwärtsFehlerbehebung (z. B. Ausnahmebehandlung) zu nutzen, wenn Fehler im Grundsystem durch Rücksetzen der betroffenen Prozesse nicht maskiert werden können.
Der Umfang von Rücksetzpunkten kann verringert werden, indem nur Unbekannte mit lebendigem Inhalt in Rucksetzpunkte aufgenommen werden.
Erkennt der Übersetzer bei der globalen Programmoptimierung, daß Prozesse mehrmals hintereinander interagieren, kann er gemeinsame Rucksetzpunkt-Strukturen bilden, die dem Sprachkonstrukt Konversation entsprechen. Es müssen dann seltener Rucksetzpunkte erstellt werden.
In robusten Programmen kann Vorwärts-Fehlerbehebung als Indikator für die Wichtigkeit von System-Funktionen und damit als Indikator für die Notwendigkeit von Rücksetzpunkten verwendet werden.
Durch Erhaltung alter, lokaler Rücksetzlinien, sofern ihr Speicherplatz nicht anderweitig benötigt wird, d. h. durch einen zweiten Rücksetzpunkt pro Prozeß, kann die Menge der tolerierbaren Fehler vergrößert werden, ohne daß der Aufwand nennenswert steigt.
Abstract
Four strategies to insert checkpoints into a system of cooperating processes are developed. These strategies
-
* may be applied by a compiler and
-
* enable the use of program capabilities for forward error recovery (e. g. exception handling) if backward error recovery using the inserted checkpoints and retry fails.
Checkpoints can be kept small by only including live and at compilation-time unknown contents of variables. The content of a variable is called live at a program point, if a successive “read” is possible before a “store”.
During global program optimization, the compiler may find that e. g. two processes communicate several times in a row. The compiler may then generate checkpoints at the beginning and the end only, which decreases checkpointing overhead and corresponds to a conversation.
In robust programs, measures for forward error recovery may be taken as a hint which system-functions are crucial and therefore where checkpoints are really necessary.
By preservation of local recovery lines, as far as their memory space is not needed otherwise, i. e. by a second checkpoint for each process, more faults may be tolerated without considerable additional overhead.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Literatur
T. Anderson, P. A. Lee: Fault Tolerance - Principles and Practice; Prentice Hall, Englewood Cliffs, New Jersey, 1981
Dennis Cornhill: A Survivable Distributed Computing System For Embedded Application Programs Written in Ada; Ada LETTERS, A Bimonthly Publication of AdaTEC, the SIGPLAN Technical Committee on Ada; Vol. III, Nu. 3, November, December 1983, Seite III-3.79 bis III-3.87
M. Dal Cin: Software-implementierte Fehlertoleranz; Informatik- Spektrum Band 7, Heft 2, April 1984, Seite 108
J. N. Gray: Notes on Data Base Operating Systems; Operating Systems, An Advanced Course, Edited by R. Bayer, R. M. Graham, G. Seegmüller; Lecture Notes in Computer Science LNCS 60, 1978; Nachgedruckt als Springer Study Edition, 1979; SpringerVerlag, Heidelberg, Seite 393 bis 481
G. Kronawitter: Aspekte der Zustandssicherung in der Fehlertolerierenden Regler- und Steuerstation (FTR); Workshop Fehlertolerante Mehrprozessor- und Mehrrechnersysteme, Erlangen, 14. Oktober 1983, veranstaltet von der Fachgruppe 3.1.1 “Fehlertolerierende Rechensysteme” der Gesellschaft für Informatik E. V. (GI); Arbeitsberichte des Instituts für Mathematische Maschinen und Datenverarbeitung (Informatik), Friedrich Alexander Universität Erlangen Nürnberg, Band 16, Nu. 11, Dezember 1983, Seite 90 bis 99
C. Meraud, F. Browaeys, J. P. Queille, G. Germain: Hardware and Software of the Fault Tolerant Computer COPRA; FTCS-9, Proceedings 1979 International Symposium on Fault-Tolerant Computing, Madison, Wisconsin, June 20–22, 1979, Seite 167
J. A. McDermid: Checkpointing and Error Recovery in Distributed Systems; Proceedings The 2nd International Conference on Distributed Computing Systems; Paris, France, April 8–10, 1981, Seite 271 bis 282
C. Meraud, F. Browaeys, G. Germain: Automatic Rollback Techniques of the COPRA Computer; FTCS-6, Proceedings 1976 International Symposium on Fault-Tolerant Computing, Pittsburgh, Pennsylvania, June 21–23, 1976, Seite 23 bis 29
P. M. Merlin, B. Randell: State Restoration in Distributed Systems; Proceedings of Fault Tolerant Computing Symposium 8, France, 1978, Seite 129 bis 134
Frank Michel : Rückwärts-Wiederaufsetzen in verteilten, fehlertoleranten Rechnersystemen; Diplomarbeit am Fraunhofer-Institut für Informations- und Datenverarbeitung Karlsruhe; Universität Karlsruhe, Fakultät für Informatik, Februar 1982
Frank J. O’Brien: Rollback Point Insertion Strategies; FTCS-6, International Symposium on Fault-Tolerant Computing, June 21–23 1976, Pittsburgh, Pennsylvania, Seite 138 bis 142
Manfred Patz: Zustandssicherung- und Wiederanlaufverfahren für verteilte Netzbetriebssysteme mit dynamischer Redundanz; Dissertation an der Fakultät für Elektrotechnik der TU München, 1981
Andreas Pfitzmann: Konfigurierung und Modellierung von Mehrmikrorechnern aus um Zuverlässigkeitsanforderungen erweiterten ADA-Programmen; Interner Bericht Nr. 8/82, Institut für Informatik IV, Fakultat für Informatik, Universität Karlsruhe, Februar 1982
Andreas Pfitzmann: Festlegung des Ortes und Umfangs von Rücksetzpunkten in Prozeß-Systemen bei der Übersetzung und Berücksichtigung der Programm-Redundanz zur Ausnahmebehandlung; GI-NTG-Fachtagung Architektur und Betrieb von Rechensystemen, Universität Karlsruhe, 26. – 28.3.1984, Informatik-Fachberichte Band 78, Springer-Verlag Heidelberg, Seite 362 bis 377
Brian Randeil: System Structure for Software Fault Tolerance; IEEE Transactions on Software Engineering Vol. SE-1, No. 2, June 1975, Seite 220 bis 232
Reference Manual for the Ada Programming Language; ANSI/MIL-STD -1815A-1983, February 17, 1983; Lecture Notes in Computer Science LNCS 155, Springer-Verlag Heidelberg
William M. Waite, Gerhard Goos: Compiler Construction; Texts and Monographs in Computer Science, Springer-Verlag Heidelberg, 1984
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1984 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pfitzmann, A. (1984). Strategien zur Festlegung von Rücksetzpunkten in Prozeβ-Systemen unter Berücksichtigung der Programm-Redundanz zur Ausnahmebehandlung. In: Belli, F., Pfleger, S., Seifert, M. (eds) Software-Fehlertoleranz und -Zuverlässigkeit. Informatik-Fachberichte, vol 83. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-69705-0_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-69705-0_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-13383-4
Online ISBN: 978-3-642-69705-0
eBook Packages: Springer Book Archive