Patent ID: 8069367

Claim:
An apparatus comprising: a first processor for: executing a first instance of a software application; receiving a first signal that indicates the occurrence of an event; processing said event in said first instance of said software application; transmitting a second signal that indicates the occurrence of said event; receiving a third signal in response to said second signal; transmitting a fourth signal after the receipt of said third signal within a second time threshold of the transmission of said second signal, wherein said fourth signal indicates that said event has been processed; and generating an alert that indicates a potential safety-critical fault when one or both of the following occur: (i) said third signal is not received at said first processor within said second time threshold of the transmission of said second signal; (ii) there is an inconsistency between the contents of said third signal and the result of the processing of said event in said first instance of said software application; and a second processor for: executing a second instance of said software application; receiving said second signal from said first processor; processing said event in said second instance of said software application; transmitting to said first processor a third signal that indicates the result of processing said event in said second instance of said software application; receiving said fourth signal; generating an alert that indicates a potential safety-critical fault when said second signal is not received at said second processor within a first time threshold of the transmission of said first signal; and generating an alert that indicates a potential safety-critical fault when said fourth signal is not received within a third time threshold of the transmission of said first signal.