Table of Contents
Fetching ...

Eliminating Timing Anomalies in Scheduling Periodic Segmented Self-Suspending Tasks with Release Jitter

Ching-Chi Lin, Mario Günzel, Junjie Shi, Tristan Taylan Seidl, Kuan-Hsun Chen, Jian-Jia Chen

TL;DR

This work addresses timing anomalies without compromising the worst-case response time (WCRT) analysis when scheduling periodic segmented self-suspending tasks with release jitter, and proposes two treatments: segment release time enforcement and segment priority modification, and proves their effectiveness in eliminating timing anomalies.

Abstract

Ensuring timing guarantees for every individual tasks is critical in real-time systems. Even for periodic tasks, providing timing guarantees for tasks with segmented self-suspending behavior is challenging due to timing anomalies, i.e., the reduction of execution or suspension time of some jobs increases the response time of another job. The release jitter of tasks can add further complexity to the situation, affecting the predictability and timing guarantees of real-time systems. The existing worst-case response time analyses for sporadic self-suspending tasks are only over-approximations and lead to overly pessimistic results. In this work, we address timing anomalies without compromising the worst-case response time (WCRT) analysis when scheduling periodic segmented self-suspending tasks with release jitter. We propose two treatments: segment release time enforcement and segment priority modification, and prove their effectiveness in eliminating timing anomalies. Our evaluation demonstrates that the proposed treatments achieve higher acceptance ratios in terms of schedulability compared to state-of-the-art scheduling algorithms. Additionally, we implement the segment-level fixed-priority scheduling mechanism on RTEMS and verify the validity of our segment priority modification treatment. This work expands our previous conference publication at the 29th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2023), which considers only periodic segmented self-suspending tasks without release jitter.

Eliminating Timing Anomalies in Scheduling Periodic Segmented Self-Suspending Tasks with Release Jitter

TL;DR

This work addresses timing anomalies without compromising the worst-case response time (WCRT) analysis when scheduling periodic segmented self-suspending tasks with release jitter, and proposes two treatments: segment release time enforcement and segment priority modification, and proves their effectiveness in eliminating timing anomalies.

Abstract

Ensuring timing guarantees for every individual tasks is critical in real-time systems. Even for periodic tasks, providing timing guarantees for tasks with segmented self-suspending behavior is challenging due to timing anomalies, i.e., the reduction of execution or suspension time of some jobs increases the response time of another job. The release jitter of tasks can add further complexity to the situation, affecting the predictability and timing guarantees of real-time systems. The existing worst-case response time analyses for sporadic self-suspending tasks are only over-approximations and lead to overly pessimistic results. In this work, we address timing anomalies without compromising the worst-case response time (WCRT) analysis when scheduling periodic segmented self-suspending tasks with release jitter. We propose two treatments: segment release time enforcement and segment priority modification, and prove their effectiveness in eliminating timing anomalies. Our evaluation demonstrates that the proposed treatments achieve higher acceptance ratios in terms of schedulability compared to state-of-the-art scheduling algorithms. Additionally, we implement the segment-level fixed-priority scheduling mechanism on RTEMS and verify the validity of our segment priority modification treatment. This work expands our previous conference publication at the 29th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2023), which considers only periodic segmented self-suspending tasks without release jitter.
Paper Structure (20 sections, 4 theorems, 30 equations, 12 figures, 1 table)

This paper contains 20 sections, 4 theorems, 30 equations, 12 figures, 1 table.

Key Result

Lemma 10

Let $\gamma \in \mathbb{C}$ be a segment. With segment release time enforcement, the following equations hold:

Figures (12)

  • Figure 1: Example of a timing anomaly. Assume that segments from $\tau_1$ have higher priorities than segments from $\tau_2$. (a) A nominal schedule generated based on the WCET and the maximum suspension time of the segments; (b) Task $\tau_2$ misses its deadline due to the suspension interval from $\tau_1$ finishes earlier at time $4.5$ instead of $5$.
  • Figure 2: Timing anomaly caused by release jitter. Assume that segments from $\tau_1$ have higher priorities than segments from $\tau_2$. (a) A feasible nominal schedule considering the maximum release jitter of both tasks; (b) Task $\tau_2$ misses its deadline due to a smaller actual release jitter from $\tau_1$.
  • Figure 3: Example of a nominal schedule of a segmented self-suspending task set.
  • Figure 4: The online schedules of task $\tau_i$ under different release time enforcement policies, assuming $\tau_i = ((3,2,3), D_i = 10)$. The red upward (downward) arrows indicate the enforced release time (deadline) of each computation segment. Note that the inter-arrival time of each segment is fixed in WC16-suspend-DATE.
  • Figure 5: Example of the treatment segment release time enforcement. A computation segment cannot start before its nominal release time (red arrow) even if the processor idles.
  • ...and 7 more figures

Theorems & Definitions (14)

  • Example 1
  • Definition 2
  • Definition 3
  • Definition 6
  • Definition 7
  • Definition 8
  • Lemma 10
  • proof
  • Theorem 11
  • proof
  • ...and 4 more