A framework for implementing objects and scheduling tasks in lock-free real-time systems

We present an integrated framework for developing real time systems in which lock-free algorithms are employed to implement shared objects. There are two key objectives of our work. The first is to enable functionality for object sharing in lock-free real time systems that is comparable to that in lock based systems. Our main contribution toward this objective is an efficient approach for implementing multiobject lock-free operations and transactions. A second key objective of our work is to improve upon previously proposed scheduling conditions for tasks that share lock-free objects. When developing such conditions, the key issue is to bound the cost of operation "interferences". We present a general approach for doing this, based on linear programming.

[1]  Joseph Y.-T. Leung,et al.  On the complexity of fixed-priority scheduling of periodic, real-time tasks , 1982, Perform. Evaluation.

[2]  Sanjoy K. Baruah,et al.  Feasibility Problems for Recurring Tasks on one Processor , 1993, Theor. Comput. Sci..

[3]  Ragunathan Rajkumar,et al.  Synchronization in Real-Time Systems: A Priority Inheritance Approach , 1991 .

[4]  Amos Israeli,et al.  Disjoint-access-parallel implementations of strong shared memory primitives , 1994, PODC '94.

[5]  James H. Anderson,et al.  Proceedings of the twelfth annual ACM symposium on Principles of distributed computing , 1993, PODC 1993.

[6]  Greg Barnes,et al.  A method for implementing lock-free shared-data structures , 1993, SPAA '93.

[7]  Mark Moir,et al.  Real-time object sharing with minimal system support , 1996, PODC '96.

[8]  Ragunathan Rajkumar,et al.  Synchronization in Real-Time Systems , 1991 .

[9]  Nir Shavit,et al.  Software transactional memory , 1995, PODC '95.

[10]  Lui Sha,et al.  Priority Inheritance Protocols: An Approach to Real-Time Synchronization , 1990, IEEE Trans. Computers.

[11]  Mark Moir,et al.  Lock-Free Transactions for Real-Time Systems , 1996, RTDB.

[12]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[13]  Mark Moir,et al.  Universal Constructions for Large Objects , 1995, IEEE Trans. Parallel Distributed Syst..

[14]  James H. Anderson,et al.  Real-time computing with lock-free shared objects , 1997, TOCS.

[15]  Maurice Herlihy,et al.  A methodology for implementing highly concurrent data objects , 1993, TOPL.

[16]  John P. Lehoczky,et al.  The rate monotonic scheduling algorithm: exact characterization and average case behavior , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[17]  Kevin Jeffay,et al.  Yartos: Kernel Support for Efficient, Predictable Real-Time Systems , 1991 .

[18]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[19]  Kevin Jeffay,et al.  Scheduling sporadic tasks with shared resources in hard-real-time systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[20]  Mark Moir,et al.  Universal constructions for multi-object operations , 1995, PODC '95.

[21]  Aloysius Ka-Lau Mok,et al.  Fundamental design problems of distributed systems for the hard-real-time environment , 1983 .