A modular approach to real-time synchronization

In this paper, we discuss real-time barrier synchronization as an example of timing constraints on synchronization. Real-time barrier synchronization is constrained by two timing values: earliest release time and release time skew. Earliest release time is the delay from the time when the last object participating in barrier synchronization issues a barrier operation, till when one of the participating objects resumes its method. Release time skew is the delay between the first and the last resumption times of objects. The implementation of real-time barrier synchronization consists of a negotiation phase and a scheduling phase. In the negotiation phase, all the participating objects communicate with one another and agree on the time when they are going to resume their method execution. Local scheduling at individual nodes must then ensure that the agreement is implemented. Thus, earliest release time and release time skew are defined by the procedures of the negotiation and the scheduling phase, respectively. We describe an architecture which enables the implementation of real-time barrier synchronization in a distributed system with unreliable channels.

[1]  K. Arvind A new probabilistic algorithm for clock synchronization , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[2]  Gul A. Agha,et al.  RTsynchronizer: language support for real-time specifications in distributed systems , 1995, Workshop on Languages, Compilers, & Tools for Real-Time Systems.

[3]  K. H. Kim,et al.  A real-time object model RTO.k and an experimental investigation of its potentials , 1994, Proceedings Eighteenth Annual International Computer Software and Applications Conference (COMPSAC 94).

[4]  Richard Gerber,et al.  Guaranteeing end-to-end timing constraints by calibrating intermediate processes , 1994, 1994 Proceedings Real-Time Systems Symposium.

[5]  Steven Howell,et al.  Distinguishing features and potential roles of the RTO.k object model , 1994, Proceedings of Words '94. The First Workshop on Object-Oriented Real-Time Dependable Systems.

[6]  Gul A. Agha,et al.  A Language Framework for Multi-Object Coordination , 1993, ECOOP.

[7]  Riccardo Bettati,et al.  Imprecise computations , 1994, Proc. IEEE.

[8]  Svend Frølund,et al.  Inheritance of Synchronization Constraints in Concurrent Object-Oriented Programming Languages , 1992, ECOOP.

[9]  Krithi Ramamritham,et al.  Efficient Scheduling Algorithms for Real-Time Multiprocessor Systems , 1989, IEEE Trans. Parallel Distributed Syst..

[10]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[11]  K. H. Kim,et al.  Temporal uncertainties in interactions among real-time objects , 1990, Proceedings Ninth Symposium on Reliable Distributed Systems.

[12]  Charles U. Martel,et al.  Scheduling Periodically Occurring Tasks on Multiple Processors , 1981, Inf. Process. Lett..

[13]  Jay K. Strosnider,et al.  Distributed pipeline scheduling: end-to-end analysis of heterogeneous, multi-resource real-time systems , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[14]  Pattie Maes,et al.  Concepts and experiments in computational reflection , 1987, OOPSLA '87.

[15]  Sam Toueg,et al.  Optimal clock synchronization , 1985, PODC '85.

[16]  Krithi Ramamritham,et al.  Allocation and scheduling of complex periodic tasks , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[17]  Hideyuki Tokuda,et al.  An object-oriented real-time programming language , 1992, Computer.

[18]  Hermann Kopetz,et al.  CONSISTENCY CONSTRAINTS IN DISTRIBUTED REAL TIME SYSTEMS , 1988 .

[19]  Hideyuki Tokuda,et al.  Object-oriented real-time language design: constructs for timing constraints , 1990, OOPSLA/ECOOP '90.

[20]  Jacques Cohen,et al.  Concurrent object-oriented programming , 1993, CACM.

[21]  Gerhard Fohler,et al.  Issues in the static allocation and scheduling of complex periodic tasks , 1993 .

[22]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.