Conference Paper

Robust and sustainable schedulability analysis of embedded software.

DOI: 10.1145/1379023.1375666 Conference: Proceedings of the 2008 ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES'08), Tucson, AZ, USA, June 12-13, 2008
Source: DBLP

ABSTRACT For real-time systems, most of the analysis involves efficient or exact schedulability checking. While this is important, analysis is often based on the assumption that the task parameters such as execution requirements and inter-arrival times between jobs are known exactly. In most cases, however, only a worst-case estimate of these quantities is available at the time of analysis. It is therefore imperative that schedulability analysis hold for better parameter values (Sustainable Analysis). On the other hand, if the task or system parameters turn out to be worse off, then the analysis should tolerate some deterioration (Robust Analysis). Robust analysis is especially important, because the implication of task schedulability is often weakened in the presence of optimizations that are performed on its code, or dynamic system parameters. In this work, we define and address sustainability and robustness questions for analysis of embedded real-time software that is modeled by conditional real-time tasks. Specifically, we show that, while the analysis is sustainable for changes in the task such as lower job execution times and increased relative deadlines, it is not the case for code changes such as job splitting and reordering. We discuss the impact of these results in the context of common compiler optimizations, and then develop robust schedulability techniques for operations where the original analysis is not sustainable.

0 Bookmarks
 · 
66 Views
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: The Hierarchical Timing Language (HTL) is a real-time coordination language for distributed control systems. HTL programs must be checked for well-formedness, race freedom, transmission safety (schedulability of inter-host communication), and time safety (schedulability of host computation). We present a modular abstract syntax and semantics for HTL, modular checks of well-formedness, race freedom, and transmission safety, and modular code distribution. Our contributions here complement previous results on HTL time safety and modular code generation. Modularity in HTL can be utilized in easy program composition as well as fast program analysis and code generation, but also in so-called runtime patching, where program components may be modified at runtime.
    01/2009;
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: A real-time scheduler is robust (sustainable) for a certain task set if its schedulability is preserved under lighter system load by the scheduler. The first part of this paper shows that NPr (non-preemptive) robustness of a zero-concrete periodic task set against increase in period is sufficient to guarantee NPr robustness for all variants of the task set. This proof includes the corresponding concrete or non-concrete periodic and sporadic task sets against any kind of reduction in system load. Based on this result, the second part of this paper gives the necessary and sufficient conditions for robustness for both NPr fixed-priority (NPFP) and NPr earliest-deadline first (NPEDF) schedulers under both discrete time and dense time assumption separately.
    16th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2010, Macau, SAR, China, 23-25 August 2010; 01/2010
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: With an increasing number of applications, real-time embedded systems are gaining in size and complexity. Many of these systems are complex as a whole, but consist of smaller modules interacting with each other. This structure makes them amenable to compositional design. For real-time systems, compositional design is done using models consisting of components arranged in a scheduling hierarchy. Analysis of such systems depends on the choice of the task model and the interfaces used to abstract component timing requirements. Real-time applications have been traditionally modeled either as periodic and sporadic tasks which are easy to analyze but simplistic, or as task graphs and automata models that are very expressive, but complex to analyze, especially with respect to compositional analysis. We develop conditional task models with a view to claim the middle ground. We show that these models, while being expressive enough to capture conditional release of jobs, or dependencies between tasks, also allow for efficient analysis. We establish results for checking schedulability of task sets comprising of conditional tasks, and techniques to compositionally analyze a hierarchical resource sharing system where each component comprises of conditional tasks. Schedulability analysis of tasks is based on the assumption that the task parameters such as execution requirements and inter-arrival times between jobs are known exactly. In most cases however, only an estimate of these quantities is available at the time of analysis. If the task parameters turn out to be better than those considered, then the analysis should be sustainable with the new parameter values. If the task parameters turn out to be worse off, then the analysis should be robust enough to tolerate some deterioration. With this view, we introduce and address sustainability and robustness questions for analysis with conditional tasks. Finally, the introduced models and compositional analysis techniques are illustrated with an automotive case study. The study clearly demonstrates the utility of introduced techniques over previous approaches for compositional analysis.
    Dissertations available from ProQuest.

Full-text (2 Sources)

Download
37 Downloads
Available from
Jun 1, 2014