DETERMINISTIC MULTITHREADING FOR JAVA-BASED REPLICATED OBJECTS

This paper describes a novel approach to deterministic multithreading for active replication of Java objects. Unlike other existing approaches, the presented deterministic thread scheduler fully supports the native Java synchronisation mechanisms, including reentrant locks, condition variables, and time bounds on wait operations. Furthermore, this paper proposes source-code transformation as a novel approach for intercepting Java synchronisation statements. This allows the reuse of existing object implementations and simplifies application development.

[1]  Ravishankar K. Iyer,et al.  Loose synchronization of multithreaded replicas , 2002, 21st IEEE Symposium on Reliable Distributed Systems, 2002. Proceedings..

[2]  Devang Shah,et al.  Programming with threads , 1996 .

[3]  Hermann Kopetz,et al.  Distributed fault-tolerant real-time systems: the Mars approach , 1989, IEEE Micro.

[4]  Ravishankar K. Iyer,et al.  A preemptive deterministic scheduling algorithm for multithreaded replicas , 2003, 2003 International Conference on Dependable Systems and Networks, 2003. Proceedings..

[5]  Roy Friedman,et al.  Transparent fault-tolerant Java virtual machine , 2003, 22nd International Symposium on Reliable Distributed Systems, 2003. Proceedings..

[6]  Louise E. Moser,et al.  Deterministic scheduling for multithreaded replicas , 2005, 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems.

[7]  Harrick M. Vin,et al.  A fault-tolerant java virtual machine , 2003, 2003 International Conference on Dependable Systems and Networks, 2003. Proceedings..

[8]  Bela Ban Design and Implementation of a Reliable Group Communication Toolkit for Java , 1998 .

[9]  Priya Narasimhan,et al.  Enforcing determinism for the consistent replication of multithreaded CORBA applications , 1999, Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems.

[10]  Joni da Silva Fraga,et al.  Implementing replicated services in open systems using a reflective approach , 1997, Proceedings of the Third International Symposium on Autonomous Decentralized Systems. ISADS 97.

[11]  Ricardo Jiménez-Peris,et al.  Deterministic scheduling for transactional multithreaded replicas , 2000, Proceedings 19th IEEE Symposium on Reliable Distributed Systems SRDS-2000.

[12]  Rüdiger Kapitza,et al.  A flexible and extensible object middleware: CORBA and beyond , 2005, SEM '05.

[13]  Hans P. Reiser,et al.  Consistent Replication of Multithreaded Distributed Objects , 2006, 2006 25th IEEE Symposium on Reliable Distributed Systems (SRDS'06).