Q16Real Time Systems
Question
Write a short note on fault tolerance in real-time systems.
Answer
An architectural review of Fault Tolerance in RTS. Details the absolute necessity of hardware replication (TMR) and mathematical software redundancy to violently shield lethal physical systems from catastrophic hardware crashes.
In a desktop computer, if the CPU fails, a blue screen occurs. In a Real-Time System controlling a nuclear reactor or a commercial airliner, if the CPU fails, massive loss of life occurs. Therefore, an RTS must mathematically incorporate absolute Fault Tolerance—the physical and algorithmic ability to survive catastrophic hardware or software failure without violating any timing constraints.
The most aggressive defense is physical replication.
- Triple Modular Redundancy (TMR): Used heavily in aerospace. Instead of one CPU, the spacecraft has three completely independent CPUs mathematically executing the exact same flight control algorithm simultaneously.
- The Voter: The outputs of the three CPUs are physically wired into a Majority Voter circuit. If CPU 1 is struck by cosmic radiation and outputs a mathematical error, CPU 2 and CPU 3 outvote it (2 to 1). The system violently ignores the broken CPU and continues flying perfectly.
If there is a catastrophic bug in the software algorithm, having three identical CPUs doesn't help—they will all mathematically execute the same bug and crash simultaneously.
- The Solution: The corporation hires three completely distinct teams of software engineers to write the flight control software from scratch in three different programming languages (e.g., C, Ada, and Assembly).
- The RTS executes all three versions. It is mathematically highly improbable that three independent teams will make the exact same logical error. The Voter algorithm again ensures the correct output survives.
If a transient mathematical error occurs (a sudden voltage spike), the system simply re-executes the calculation. However, in an RTS, this is only allowed if the re-execution can still physically complete before the absolute deadline.