Abstract

This paper describes the implementation of a highly available multimicroprocessor system based on the M.A.R.A. (Modular Architecture for Real Time Processing) multimicroprocessor architecture developed by Selenia. The proposed solution is based on the full duplication of a M.A.R.A. node. Fault detection is independently performed on the two nodes. At every time, only one of the two nodes (Master Node) controls the application, while the other node (Slave Node) is always ready to substitute the Master node. In case of a detected fault, the Master node communicates its unavailability to the Slave Node, and disconnects itself from the application. The Slave Node resumes the control of the application starting from the most recent consistent system state. To avoid any loss of application, the Slave Node during normal operation continuously maintains and updates a copy of the system state on the basis of informations provided to it by the Master Node. The application software is structured in atomic transactions. An atomic transaction is intended as a set of actions which updates the system state so that either all the actions have been executed (transaction commit), or none will have been (transaction abort). Therefore in case of a fault in the Master Node, the consistent system state is resumed by the Slave Node by aborting the not yet committed transactions and restoring them; it also completes the commit phases of the transactions which were committing in the Master Node when the fault has happened. The application software is supported by a run-time environment which makes transparent the duplicated configuration of the system.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call