An important aspect of fault tolerance is the ability to repair the system transparently. In a distributed system, faults and errors are more common and complex than in a centralized system. It is also due to the heterogeneous nature of an Open Distributed System. It must be stressed that in a distributed system, faults and errors may consist only of the lack of information. The primary way in which these type of conditions can be detected is by use of timeout and retry facilities.
Alternative approaches use self-checking server processes.
Of course, the detection of a value fault can be handled by consistency checks at any point in a system. In distributed systems, most of the facilities available to the conventional communications programmer should be visible to the applications programmer, but em only when wanted. The object model provides us with a convenient way of inheriting base methods. These can include base exceptions for handling timeouts and such events. Any operating system or application has to provide services within time constraints.