Abstract

Transactional Memory (TM) is a mechanism to control access to shared resources in memory. Though originally implemented in hardware, software implementations of TM are now available as library extensions in major programming language. Lately, variants of software transactional memory (STM) with real-time support have been presented. As real-time STM begins to be increasingly used in commercial embedded systems, a good understanding of their temporal properties for ascertaining real-time guarantees is required. Unlike the classical models of preemptive or non-preemptive execution, in STM higher priority tasks can induce an abort cost in addition to the interference cost on preempted lower priority tasks. Due to the abort cost, several existing approaches developed for the classical model cannot be used to ascertain real-time guarantees in STM. In this paper, we convert the abort costs induced by higher priority tasks into new phantom tasks and transform the transactional execution model of STM into a pessimistic preemptive model. An existing iterative method to compute response time is then applied to determine schedulability. This approach is utilized to derive a polynomial time sufficient schedulability test for both the lazy and eager conflict detection polices of STM. Experiment results to validate the sufficient test and analyze its coverage are presented.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.