Skip to main navigation Skip to search Skip to main content

Semi-Extended Tasks: Efficient Stack Sharing among Blocking Threads

  • Christian Dietrich
  • , Daniel Lohmann

Research output: Chapter in book/report/conference proceedingConference contributionResearchpeer review

Abstract

Memory is an expensive and, therefore, limited resource in deeply embedded real-time systems. Thread stacks substantially contribute to the RAM requirements. To reduce the system's worst-case stack consumption (WCSC), it is state of the art to exploit thread-level preemption constraints to let multiple threads share the same stack. However, deriving a tight, yet correct bound for the shared stack is a difficult undertaking and stack sharing is currently restricted to run-to-completion threads, which are preemptable, but cannot block (i.e., passively wait for an event) at run time. With semi-extended tasks (SETs), we propose a solution for efficient stack sharing among blocking and non-blocking threads on the system level. For this, we refine the stack-sharing granularity from the thread to function level. We provide an efficient intra-thread stack-switch mechanism and an ILP-based WCSC analysis that considers fine-grained preemption constraints and possible function-level switching points from the private to the shared stack. A genetic algorithm then selects switching points that lead to the reduction of the overall WCSC. Compared to systems that run only non-blocking threads on the shared stack, semi-extended tasks decrease the WCSC in our benchmarks on average by 7 percent and up to 52 percent for some systems.

Original languageEnglish
Title of host publication39th IEEE Real-Time Systems Symposium (RTSS)
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages338-349
Number of pages12
ISBN (Electronic)978-1-5386-7908-1
ISBN (Print)978-1-5386-7909-8
DOIs
Publication statusPublished - 7 Jan 2019
Event39th IEEE Real-Time Systems Symposium (RTSS) - Nashville, United States
Duration: 11 Dec 201814 Dec 2018

Publication series

NameProceedings Real-Time Systems Symposium
ISSN (Print)1052-8725
ISSN (Electronic)2576-3172

Conference

Conference39th IEEE Real-Time Systems Symposium (RTSS)
Abbreviated titleRTSS
Country/TerritoryUnited States
CityNashville
Period11 Dec 201814 Dec 2018

Keywords

  • Real-time operating system
  • static analysis
  • Worst-case stack consumption

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Computer Networks and Communications

Cite this