Optimal Multiprocessor Locking Protocols Under FIFO Scheduling

Authors Shareef Ahmed , James H. Anderson

Thumbnail PDF


  • Filesize: 0.89 MB
  • 21 pages

Document Identifiers

Author Details

Shareef Ahmed
  • University of North Carolina at Chapel Hill, NC, USA
James H. Anderson
  • University of North Carolina at Chapel Hill, NC, USA

Cite AsGet BibTex

Shareef Ahmed and James H. Anderson. Optimal Multiprocessor Locking Protocols Under FIFO Scheduling. In 35th Euromicro Conference on Real-Time Systems (ECRTS 2023). Leibniz International Proceedings in Informatics (LIPIcs), Volume 262, pp. 16:1-16:21, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)


Real-time locking protocols are typically designed to reduce any priority-inversion blocking (pi-blocking) a task may incur while waiting to access a shared resource. For the multiprocessor case, a number of such protocols have been developed that ensure asymptotically optimal pi-blocking bounds under job-level fixed-priority scheduling. Unfortunately, no optimal multiprocessor real-time locking protocols are known that ensure tight pi-blocking bounds under any scheduler. This paper presents the first such protocols. Specifically, protocols are presented for mutual exclusion, reader-writer synchronization, and k-exclusion that are optimal under first-in-first-out (FIFO) scheduling when schedulability analysis treats suspension times as computation. Experiments are presented that demonstrate the effectiveness of these protocols.

Subject Classification

ACM Subject Classification
  • Computer systems organization → Real-time systems
  • Real-Time Systems
  • Real-Time Synchronization
  • Multiprocessors


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. SchedCAT: Schedulability test collection and toolkit. https://github.com/brandenburg/schedcat. Accessed: 2023-05-07.
  2. S. Ahmed and J. Anderson. Tight tardiness bounds for pseudo-harmonic tasks under global-EDF-like schedulers. In ECRTS'21, pages 11:1-11:24, 2021. Google Scholar
  3. B. Akesson, M. Nasri, G. Nelissen, S. Altmeyer, and R. Davis. An empirical survey-based study into industry practice in real-time systems. In RTSS'20, pages 3-11, 2020. Google Scholar
  4. K. Bedarkar, M. Vardishvili, S. Bozhko, M. Maida, and B. Brandenburg. From intuition to coq: A case study in verified response-time analysis of FIFO scheduling. In RTSS'22, pages 197-210, 2022. Google Scholar
  5. A. Block, H. Leontyev, B. Brandenburg, and J. Anderson. A flexible real-time locking protocol for multiprocessors. In RTCSA'07, pages 47-56, 2007. Google Scholar
  6. B. Brandenburg. Scheduling and Locking in Multiprocessor Real-time Operating Systems. PhD thesis, University of North Carolina at Chapel Hill, 2011. Google Scholar
  7. B. Brandenburg. A fully preemptive multiprocessor semaphore protocol for latency-sensitive real-time applications. In ECRTS'13, pages 292-302, 2013. Google Scholar
  8. B. Brandenburg. Improved analysis and evaluation of real-time semaphore protocols for P-FP scheduling. In RTAS'13, pages 141-152, 2013. Google Scholar
  9. B. Brandenburg. The FMLP+: an asymptotically optimal real-time locking protocol for suspension-aware analysis. In ECRTS'14, pages 61-71, 2014. Google Scholar
  10. B. Brandenburg. Multiprocessor real-time locking protocols. In Handbook of Real-Time Computing, pages 347-446. Springer, 2022. Google Scholar
  11. B. Brandenburg and J. Anderson. Optimality results for multiprocessor real-time locking. In RTSS'10, pages 49-60, 2010. Google Scholar
  12. B. Brandenburg and J. Anderson. Spin-based reader-writer synchronization for multiprocessor real-time systems. Real Time Syst., 46(1):25-87, 2010. Google Scholar
  13. B. Brandenburg and J. Anderson. Real-time resource-sharing under clustered scheduling: Mutex, reader-writer, and k-exclusion locks. In EMSOFT'11, pages 69-78, 2011. Google Scholar
  14. B. Brandenburg and J. Anderson. The OMLP family of optimal multiprocessor real-time locking protocols. Des. Autom. Embed., 17(2):277-342, 2014. Google Scholar
  15. C. Chen, S. Tripathi, and A. Blackmore. A resource synchronization protocol for multiprocessor real-time systems. In ICPP'94, pages 159-162, 1994. Google Scholar
  16. U. Devi and J. Anderson. Tardiness bounds under global EDF scheduling on a multiprocessor. Real-Time Syst., 38(2):133-189, 2008. Google Scholar
  17. A. Easwaran and B. Andersson. Resource sharing in global fixed-priority preemptive multiprocessor scheduling. In RTSS'09, pages 377-386, 2009. Google Scholar
  18. G. Elliott and J. Anderson. An optimal k-exclusion real-time locking protocol motivated by multi-GPU systems. Real-Time Syst., 49(2):140-170, 2013. Google Scholar
  19. P. Emberson, R. Stafford, and R. Davis. Techniques for the synthesis of multiprocessor tasksets. In WATERS'10, pages 6-11, 2010. Google Scholar
  20. D. Faggioli, G. Lipari, and T. Cucinotta. Analysis and implementation of the multiprocessor bandwidth inheritance protocol. Real Time Syst., 48(6):789-825, 2012. Google Scholar
  21. K. Lakshmanan, D. Niz, and R. Rajkumar. Coordinated task scheduling, allocation and synchronization on multiprocessors. In RTSS'09, pages 469-478, 2009. Google Scholar
  22. H. Leontyev and J. Anderson. Tardiness bounds for FIFO scheduling on multiprocessors. In ECRTS'07, page 71, 2007. Google Scholar
  23. F. Nemati, M. Behnam, and T. Nolte. Independently-developed real-time systems on multi-cores with shared resources. In ECRTS'11, pages 251-261, 2011. Google Scholar
  24. F. Nemati and T. Nolte. Resource hold times under multiprocessor static-priority global scheduling. In RTCSA'11, pages 197-206, 2011. Google Scholar
  25. F. Nemati and T. Nolte. Resource sharing among real-time components under multiprocessor clustered scheduling. Real Time Syst., 49(5):580-613, 2013. Google Scholar
  26. R. Rajkumar. Synchronization In Real-Time Systems - A Priority Inheritance Approach. Kluwer Academic Publishers, 1991. Google Scholar
  27. R. Rajkumar, L. Sha, and J. Lehoczky. Real-time synchronization protocols for multiprocessors. In RTSS'88, pages 259-269, 1988. Google Scholar
  28. L. Sha, R. Rajkumar, and J. Lehoczky. Priority inheritance protocols: An approach to real-time system synchronization. IEEE Trans. Comp., 39(9):1175-1185, 1990. Google Scholar
  29. Z. Tong, S. Ahmed, and J. Anderson. Overrun-resilient multiprocessor real-time locking. In ECRTS'22, pages 9:1-9:23, 2022. Google Scholar
  30. B. Ward, G. Elliott, and J. Anderson. Replica-request priority donation: A real-time progress mechanism for global locking protocols. In RTCSA'12, pages 280-289, 2012. Google Scholar
  31. R. Wilhelm. Real time spent on real time (invited talk). In RTSS'20, pages 1-2, 2020. Google Scholar
  32. M. Yang, A. Wieder, and B. Brandenburg. Global real-time semaphore protocols: A survey, unified analysis, and comparison. In RTSS'15, pages 1-12, 2015. Google Scholar