| OCR Text |
Show 102 other to determine a majority consensus. An N-modular redundant system may tolerate failures of up to ceiling(N/2) -1 modules. An applicative system can emulate hardware redundancy by simply replicating the apply packets. Eventually, a task is executed by several different processors at random times. The results are sent back to the originating node asynchronously. The originating ·node compares these results and selects a majority consensus as the correct answer. A fundamental difference between the applicative replicated task redundancy and pure hardware redundancy is that applicative systems execute redundant tasks asynchronously, while most hardware redundant systems employ synchronous operation. Asynchronous operations are subject to timing delays because a node has to wait for the return from slower processors. But a node does not have to wait for the slowest answer if it has received the identical results from the majority of apply tasks. Replicating apply packets provides a means of emulating hardware redundancy in applicative systems. The user may specify certain critical sections of a program for highly reliable operation [43]. It is noted that the replicated apply tasks may not be executed at different hardware modules, because the load balancing method does not discriminate betwe·en the replicated and the regular packets. 3.4.6.4 Atomic action and remote procedure call. Atomic action is one of the intensive research topics· for maintaining consistency of distributed databases _in the face of machine crashes [42. 50, 60]. Programmers may group restartable atomic operations together into transactions that are guaranteed to have the atomic property: if the transaction commits then all the operations happen; otherwise. if it aborts, none of them happen. After a crash. recovery is initiated simply by continuing the system from the last checkpoint. The intervening work of an uncommitted transaction is guaranteed to have had no side effects, and a comm1tted transaction is always completed. Remote procedure call [45] was proposed as a communication primitive |