1. A method of providing fault tolerance in a computing system, the method comprising the steps of: executing a plurality of different copies of a target program, wherein execution of each of the different copies is controlled by a corresponding controller which communicates with a user interface of an instrumentation tool; and detecting a fault in at least one of the copies by comparing values of at least one variable generated by the different copies for at least one designated breakpoint, wherein at least one of the variable and the breakpoint are specified by a user in the user interface of the instrumentation tool and communicated from the interface to the controllers, such that the fault is detected without modification of target program code.