On Aspect-Oriented Implementation of Fault Tolerance
Doctoral thesis, 2010

This thesis investigates the use of aspect-oriented programming for the purpose of implementing fault-tolerance in software. The feasibility of aspect-oriented programming languages is evaluated from the perspectives of expressiveness, overhead, and fault coverage. It is shown that a wide range of mechanisms for fault tolerance, both systematic and application specific, can be implemented using aspect-oriented languages. Regarding overhead we show that aspect-oriented programming can be used without significant memory and run-time overhead compared to other implementation techniques. We have conducted a large fault injection study where we compare the fault coverage of aspect-oriented implementations of fault tolerance mechanisms with implementations in the C language. For the purpose of this study, we developed three software-based fault tolerance mechanisms that can detect and mask errors caused by transient hardware faults. One of these achieved perfect fault coverage in our experiments. The fault coverage of the mechanism where evaluated by injecting single-bit errors in CPU-registers and main memory locations during program execution. For each mechanism we conducted experiments with implementations made in C and two variants of the AspectC++ language. The result show that the difference in fault coverage between programs implemented using aspect-oriented programming and those implemented in C in general is small. In summary, we found clear advantages and no major disadvantages of using aspect-oriented programming for the implementation of software-based fault tolerance.

Aspect-Oriented Programming

Fault Tolerance

Error Detection

Fault Injection

ED, Hörsalsvägen 11, Chalmers tekniska högskola
Opponent: Prof. Jean-Charles Fabre, LAAS-CNRS and National Polytechnic Institute of Toulouse, France.

Author

Ruben Alexandersson

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

Aspect-Oriented Implementation of Fault Tolerance: An Assessment of Overhead

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics),; Vol. 6351(2010)p. 466-479

Paper in proceeding

Implementing Fault Tolerance Using Aspect Oriented Programming

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics),; Vol. 4746/2007(2007)p. 57-74

Paper in proceeding

Aspect oriented software implemented node level fault tolerance

IASTED International Conference on Software Engineering and Applications (SEA),; (2005)

Paper in proceeding

On hardware resource consumption for aspect-oriented implementation of fault tolerance

EDCC-8 - Proceedings of the 8th European Dependable Computing Conference,; (2010)p. 61-66

Paper in proceeding

Areas of Advance

Transport

Subject Categories

Software Engineering

ISBN

978-91-7385-460-3

Doktorsavhandlingar vid Chalmers tekniska högskola. Ny serie: 3141

Technical report D - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University: 72

ED, Hörsalsvägen 11, Chalmers tekniska högskola

Opponent: Prof. Jean-Charles Fabre, LAAS-CNRS and National Polytechnic Institute of Toulouse, France.

More information

Created

10/7/2017