Multiprocessor Priority Ceiling Emulation for Safety-Critical Java

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Abstract

Priority ceiling emulation has preferable properties on uniprocessor systems, such as avoiding priority inversion and being deadlock free. This has made it a popular locking protocol. According to the safety-critical Java specication, priority ceiling emulation is a requirement for implementations. However, implementing the protocol for multiprocessor systemsis more complex so implementations might perform worse than non-preemptive implementations. In this paper we compare two multiprocessor lock implementations with hardware support for the Java optimized processor: non-preemptive locking and priority ceiling emulation. For the evaluation we analyze the worst-case execution time of the locking routines. We also analyze a safety criticaluse case with each implementation. We find that the additional software steps necessary for managing priorities in priority ceiling emulation increase the number of locking cycles by at least a factor 15, mainly due to memory contention in a multiprocessor system. This overhead results in the use case being unschedulable using priority ceiling emulation. Any benets of priority ceiling emulation are also lost when the tasks are completely distributed among the processor. Therefore, given distributed tasks with short critical sections, non-preemptive locking is preferred.
Original languageEnglish
Title of host publicationProceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES '15)
Number of pages10
PublisherAssociation for Computing Machinery
Publication date2015
ISBN (Print)978-1-4503-3644-4
DOIs
Publication statusPublished - 2015
Event13th International Workshop on Java Technologies for Real-time and Embedded Systems - Paris, France
Duration: 7 Oct 20158 Oct 2015
Conference number: 13
http://jtres2015.univ-mlv.fr/

Workshop

Workshop13th International Workshop on Java Technologies for Real-time and Embedded Systems
Number13
CountryFrance
CityParis
Period07/10/201508/10/2015
Internet address

Keywords

  • Priority Ceiling Emulation
  • Safety-critical Java
  • Multi-processor

Cite this

Strøm, T. B., & Schoeberl, M. (2015). Multiprocessor Priority Ceiling Emulation for Safety-Critical Java. In Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES '15) Association for Computing Machinery. https://doi.org/10.1145/2822304.2822308