Lock-Free Synchronization for Dynamic Embedded Real-Time Systems

We consider lock-free synchronization for dynamic embedded real-time systems that are subject to resource overloads and arbitrary activity arrivals. We model activity arrival behaviors using the unimodal arbitrary arrival model (or UAM). UAM embodies a stronger "adversary" than most traditional arrival models. We derive the upper bound on lock-free retries under the UAM with utility accrual scheduling - the first such result. We establish the tradeoffs between lock-free and lock-based sharing under UAM. These include conditions under which activities' accrued timeliness utility is greater under lock-free than lock-based, and the consequent upper bound on the increase in accrued utility that is possible with lock-free. We confirm our analytical results with a POSIX RTOS implementation

[1]  Hideyuki Tokuda,et al.  A Time-Driven Scheduling Model for Real-Time Operating Systems , 1985, RTSS.

[2]  Maged M. Michael,et al.  Nonblocking Algorithms and Preemption-Safe Locking on Multiprogrammed Shared Memory Multiprocessors , 1998, J. Parallel Distributed Comput..

[3]  John D. Valois Lock-free linked lists using compare-and-swap , 1995, PODC '95.

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

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

[6]  Binoy Ravindran,et al.  Utility Accrual Scheduling under Arbitrary Time/Utility Functions and Multi-unit Resource Constraints , 2004 .

[7]  James H. Anderson,et al.  Object sharing in Pfair-scheduled multiprocessor systems , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

[8]  Hennadiy Leontyev,et al.  Efficient synchronization under global EDF scheduling on multiprocessors , 2006, 18th Euromicro Conference on Real-Time Systems (ECRTS'06).

[9]  Kang G. Shin,et al.  Improving Wait-Free Algorithms for Interprocess Communication in Embedded Real-Time Systems , 2002, USENIX Annual Technical Conference, General Track.

[10]  Binoy Ravindran,et al.  A space-optimal wait-free real-time synchronization protocol , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[11]  Alan Burns,et al.  Asynchronous data sharing in multiprocessor real-time systems using process consensus , 1998, Proceeding. 10th EUROMICRO Workshop on Real-Time Systems (Cat. No.98EX168).

[12]  Gérard Le Lann,et al.  A protocol and correctness proofs for real-time high-performance broadcast networks , 1998, Proceedings. 18th International Conference on Distributed Computing Systems (Cat. No.98CB36183).

[13]  Sanjoy K. Baruah,et al.  A Categorization of Real-Time Multiprocessor Scheduling Problems and Algorithms , 2004, Handbook of Scheduling.

[14]  Abraham Silberschatz,et al.  Time-Constrained Transaction Management , 1996, The Kluwer International Series on Advances in Database Systems.

[15]  James H. Anderson,et al.  An EDF-based scheduling algorithm for multiprocessor soft real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

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

[17]  Binoy Ravindran,et al.  On recent advances in time/utility function real-time scheduling and resource management , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[18]  Hermann Kopetz,et al.  The non-blocking write protocol NBW: A solution to a real-time synchronization problem , 1993, 1993 Proceedings Real-Time Systems Symposium.

[19]  Raymond K. Clark,et al.  Software organization to facilitate dynamic processor scheduling , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[20]  Binoy Ravindran,et al.  Fast, best-effort real-time scheduling algorithms , 2004, IEEE Transactions on Computers.

[21]  James H. Anderson,et al.  Efficient object sharing in quantum-based real-time systems , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[22]  Binoy Ravindran,et al.  A formally verified application-level framework for real-time scheduling on POSIX real-time operating systems , 2004, IEEE Transactions on Software Engineering.

[23]  James H. Anderson,et al.  Wait-free object-sharing schemes for real-time uniprocessors and multiprocessors , 1997, Proceedings Real-Time Systems Symposium.

[24]  Raymond Keith Clark,et al.  Scheduling dependent real-time activities , 1990 .

[25]  Arkady Kanevsky,et al.  An Adaptive, Distributed Airborne Tracking System ("process the Right Tracks at the Right Time") , 1999, IPPS/SPDP Workshops.