A new Software-based technique for low-cost Fault-Tolerant application