Fault tolerance is the ability of a component or a computer system to respond to an unexpected software or hardware failure. Extent of fault tolerance of a system highlights its ability to sustain its operations even in the event of malfunctions or failures. Superior fault tolerance can be achieved by hardware or software or by combining these two.
In order to provide graceful fault tolerance, certain computer systems are backed by one or more duplicate systems. Majority of fault tolerant systems are therefore designed to mirror operations to enable continuity of operations in spite failure of one or more systems. The lowest fault tolerance level is said to have been achieved when the system continues to function in spite of a power outage.
Fault tolerance involves dynamic use of backup system in response to a system failure to facilitate mirrored disks to instantly takeover functions of failed disks or disk. Fault tolerance uses several processors that are programmed to work in unison by comparing output as well as data for errors to instantly correct these. Practically, it is not possible to achieve hundred per cent fault tolerance.
Fault tolerance application can be designed to be an integral part of the system. This can help programmer to assess vital data at specific locations during the transaction process.