scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Scheduler Modeling Based on the Controller Synthesis Paradigm

01 Jul 2002-Real-time Systems (Kluwer Academic Publishers)-Vol. 23, Iss: 1, pp 55-84
TL;DR: A modeling methodology based on the controller synthesis paradigm allows to get a correctly scheduled system from timed models of its processes in an incremental manner, by application of composability results which simplify schedulability analysis.
Abstract: The controller synthesis paradigm provides a general framework for scheduling real-time applications. Schedulers can be considered as controllers of the applications; they restrict their behavior so that given scheduling requirements are met. We study a modeling methodology based on the controller synthesis paradigm. The methodology allows to get a correctly scheduled system from timed models of its processes in an incremental manner, by application of composability results which simplify schedulability analysis. It consists in restricting successively the system to be scheduled by application of constraints defined from scheduling requirements. The latter are a conjunction of schedulability requirements that express timing properties of the processes and policy requirements about resource management. The presented methodology allows a unified view of scheduling theory and approaches based on timing analysis of models of real-time applications.

Content maybe subject to copyright    Report

Real-Time Systems, 23, 55±84, 2002
# 2002 Kluwer Academic Publishers. Manufactured in The Netherlands.
Scheduler Modeling Based on the Controller
Synthesis Paradigm
K. ALTISEN altisen@imag.fr
V
ERIMAG, 2 av. de Vignate, 38610 Gie
Á
res, France
G. GO
È
SSLER goessler@imag.fr
V
ERIMAG, 2 av. de Vignate, 38610 Gie
Á
res, France
J. SIFAKIS sifakis@imag.fr
V
ERIMAG, 2 av. de Vignate, 38610 Gie
Á
res, France
Abstract. The controller synthesis paradigm provides a general framework for scheduling real-time
applications. Schedulers can be considered as controllers of the applications; they restrict their behavior so
that given scheduling requirements are met.
We study a modeling methodology based on the controller synthesis paradigm. The methodology allows to get
a correctly scheduled system from timed models of its processes in an incremental manner, by application of
composability results which simplify schedulability analysis. It consists in restricting successively the system to
be scheduled by application of constraints de®ned from scheduling requirements. The latter are a conjunction of
schedulability requirements that express timing properties of the processes and policy requirements about
resource management.
The presented methodology allows a uni®ed view of scheduling theory and approaches based on timing
analysis of models of real-time applications.
Keywords: modeling real-time systems, scheduler design, controller synthesis, dynamic priorities,
composability
1. Introduction
Schedulers coordinate the execution of system activities, so that requirements about their
temporal behavior are met. Guaranteeing their correctness is essential for the
development of dependable real-time systems. Well established theory and scheduling
algorithms have been successfully applied to real-time systems development. Existing
scheduling theory requires the application to ®t into the mathematical framework of the
schedulability criterion (e.g., all processes are supposed periodic, worst case execution
times are known). Studies to relax such hypotheses have been carried out, but no uni®ed
approach has been proposed so far. To overcome these limitations, an alternative
approach consists in extracting a scheduler from an abstract timed model of a real-time
application by using analysis or synthesis tools (Ben-Abdalla et al., 1999; Bertin et al.,
2000; Henzinger et al., 2001; Jensen et al., 2000; Kwak et al., 1998; Niebert and Yovine,
2000).

The controller synthesis paradigm (Ramadge and Wonham, 1987) provides a general
framework for scheduling. A scheduler can be considered as a controller of the real-time
application which restricts its behavior so that given scheduling requirements are met.
Behavior restriction essentially amounts to resolving non-determinism due to concurrent
access of processes to shared resources.
To apply the controller synthesis paradigm, it is necessary to use a timed model
representing the dynamic behavior of the real-time application. The scheduler for a given
set of scheduling requirements is also a timed system which observes the state of the
application and adequately restricts its behavior by triggering controllable actions that is,
actions giving access to shared resources (see Figure 1). The role of the scheduler consists
precisely in observing the application and maintaining the requirements satis®ed in spite
of ``disturbances'' of the environment and of internal actions of the application, usually
represented by uncontrollable actions, such as process arrival or process termination.
We have shown in (Altisen et al., 1999) how schedulers can be computed by
application of a synthesis method to systems represented by well-timed models that is, to
timed models where time can always progress. For such systems, scheduling
requirements can be characterized as a safety property expressing the fact that a
constraint (state predicate) K always holds. The main result is that there exists a scheduler
maintaining K if there exists a non-empty control invariant K
0
which implies K. The
control invariant K
0
represents the set of the states from which K
0
(and thus K) can be
preserved, in the sense that if the application is initially at a state satisfying K
0
then it is
possible to remain in states of K
0
by triggering controllable actions preserving K
0
, and it is
not possible to violate K
0
by uncontrollable actions.
Control invariants implying a given scheduling constraint K can be computed by
controller synthesis methods (Altisen et al., 1999, 2000; Lin and Wonham, 1988; Maler et
al., 1995; Ramadge and Wonham, 1987). The existence of a non-empty control invariant
is a necessary and suf®cient condition for the existence of a scheduler. The latter can be
constructed from the control invariant and the timed model of the application. A common
limitation of controller synthesis algorithms is their complexity that makes problematic
their application to large systems.
Figure 1. Interactions between the environment, the application and its scheduler.
56 ALTISEN ET AL.

We use the controller synthesis paradigm as a unifying framework for scheduling real-
time applications. According to this paradigm, a scheduler can be speci®ed as a pair
consisting of the timed model of the application to be scheduled and of a constraint K
characterizing scheduling requirements. We study a modeling methodology which, from
such an initial speci®cation allows ®nding a scheduler by circumventing as much as
possible complexity problems. The paper contributes along the following three
directions.
First, it provides a notation and a methodology for modeling the application as a timed
system composed of the processes to be scheduled, their resources and the associated
synchronization constraints. Timing constraints relate in particular process execution
speed with the dynamics of their external environment. For the sake of simplicity, we use
discrete time models. The methodology can be adapted to continuous time models
modulo some additional problems related to well-timedness of descriptions.
The proposed notation uses results presented in Altisen et al. (2000) and allows an
incremental description of the application, starting from its processes and then adding
timing constraints and synchronization constraints associated to the resources. It allows
modeling in a direct manner dynamic priorities and preemption as well as concepts such
as urgency, idling and timeliness. Furthermore, the models are well-timed, by
construction.
Second, the paper shows that scheduling requirements can be characterized as the
invariance of a constraint which is the conjunction of two classes of constraints:
schedulability requirements K
sched
and a ( possibly empty) set of constraints
characterizing a particular scheduling policy K
pol
. K
sched
characterizes the dynamic
properties of the application to be satis®ed by the scheduler, relating execution times,
process arrival times, and deadlines. K
pol
deals with the management of shared resources
and can be decomposed into the conjunction of two ( possibly empty) classes of
constraints: con¯ict resolution constraints K
res
that determine the rules for granting a
resource to con¯icting processes, and admission control constraints K
adm
that determine
when the scheduler considers a non-con¯icting request for a free resource.
Finally, the paper provides conditions under which an incremental modeling
methodology can be applied to get the scheduler. The search for control invariants
implying given scheduling requirements of the form K
sched
6K
pol
is decomposed into two
steps. A ®rst step for computing a scheduler maintains the scheduling policy speci®ed by
K
pol
. This step does not require the application of synthesis algorithms, as K
pol
is shown
to be a control invariant. The second step aims at establishing that the system scheduled
according to K
pol
meets the schedulability requirements K
sched
. This step requires in
general, the application of synthesis or veri®cation techniques that can be carried out by
existing timing analysis tools such as K
RONOS (Daws et al., 1996), UPPAAL (Jensen et al.,
2000), H
YTECH (Henzinger et al., 1997).
The paper is organized as follows. Section 2 presents models and basic results about
controller synthesis that are used throughout the paper. The main results concern control
invariants and their composability properties which play an instrumental role in the
modeling methodology. Section 3 focuses on modeling issues of the real-time
application to be scheduled including modeling of the processes, the associated
timing constraints, and the resource management and synchronization. Section 4
SCHEDULER MODELING BASED ON THE CONTROLLER SYNTHESIS PARADIGM 57

presents a method for specifying scheduling policies and computing the associated
scheduler. The application of the method is illustrated with several examples. Section 5
proposes a method for specifying schedulability requirements and getting a correct
scheduler by using synthesis or veri®cation tools. Section 6 illustrates the method on an
example.
2. Controller Synthesis
2.1. Timed System
To model scheduling algorithms, we use reactive timed systems with two kinds of actions
as in Altisen et al. (1999): controllable actions that can be triggered by the scheduler, and
uncontrollable actions that are internal actions of the processes to be scheduled or actions
of the environment. Controllable actions are typically resource allocations while
uncontrollable actions are process arrival and termination.
Both controllable and uncontrollable actions are subject to timing constraints
expressed in terms of natural variables called timers. The rates of timers may take the
values 0 or 1, as speci®ed by a Boolean vector.
De®nition 2.1 (X-constraint). Let X be a ®nite set of timers, fx
1
; ...; x
m
g, natural
variables de®ned on the set of naturals N {0; 1; 2; ...}. An X-constraint is a predicate C
generated by the grammar C :: x d | x y d | C6C | :C, where x; y [ X; d is an
integer.
De®nition 2.2 (Timed system). A timed system consists of the following:
1. An untimed labeled transition system S; A; T where S is a ®nite set of control states,
A is a ®nite vocabulary of actions partitioned into two sets of controllable and
uncontrollable actions noted A
c
and A
u
, and T(S6A6S is an untimed transition
relation.
2. A ®nite set of timers X fx
1
; ...; x
m
g, as in De®nition 2.1.
3. A function b mapping S into f0; 1g
m
. The image of s [ S by b denoted b
s
is a Boolean
rate vector.
4. A labeling function h mapping untimed transitions of T into timed transitions:
hs; a; s
0
s; a; g; t; r; s
0
, where g is an X-constraint called guard; r(X is a set of
timers to be reset; t[fd; eg is an urgency type, respectively delayable and eager.
Semantics. A timed system de®nes a transition graph v; e constructed as follows.
v S6N
m
, that is, vertices s; x are states of the timed system.
58
ALTISEN ET AL.

The set e(v6 A [N nf0g6v of the edges of the graph is partitioned into three
classes of edges: e
c
controllable, e
u
uncontrollable, and e
t
timed, corresponding
respectively to the case where the label is a controllable action, an uncontrollable action,
and a strictly positive integer.
Given s [ S, let J be the set of indices such that fs; a
j
; s
j
g
j [ J
is the set of all untimed
transitions departing from s. Also, let hs; a
j
; s
j
s; a
j
; g
j
; t
j
; r
j
; s
j
. For all j [ J,
s; x; a
j
; s
j
; xr
j
 [ e
c
[ e
u
iff g
j
x holds and xr
j
is the timer valuation obtained
from x when all the timers in r
j
are set to zero and the others are left unchanged.
To de®ne e
t
, we use the predicate j, called time progress function. The notation
js; x; t means that time can progress from state s; x by t.
js; x; t()
^
j [ J
t
j
d ) Vt
0
[ f0; ...; t 1g :g
j
x t
0
b
s
V
g
j
x t
0
1b
s
t
j
e ) Vt
0
[ f0; ...; t 1g :g
j
x t
0
b
s
8
>
<
>
:
where x tb
s
is the valuation obtained from x by increasing by t the timer values for
which b
s
elements are equal to one. We de®ne e
t
such that s; x; t; s; x tb
s
 [ e
t
if
and only if js; x; t. The above de®nition means that at control state s, time cannot
progress beyond the falling edge of a delayable guard, or whenever an eager guard is
enabled.
Timed systems are automata extended with time variables as timed or hybrid automata
(Alur et al., 1995; Alur and Dill, 1994) where time variables are real-valued. We prefer
using discrete time variables for the sake of simplicity. The presented approach is also
applicable to dense time models modulo some technical problems related to time density.
Another difference between our model and dense timed and hybrid automata is well-
timedness, that is, time can always progress at a state where no transition is enabled. This
property is crucial for the expression of schedulability requirements as a safety property
(see Section 5).
We will usually denote by TS a timed system. TS
c
(resp. TS
u
) represents the timed
system consisting of the controllable (resp. uncontrollable) transitions of TS only.
Lemma 2.1 If j, j
c
,andj
u
are respectively, the time progress functions of TS, TS
c
,
and TS
u
, then j j
c
6j
u
.
Example 2.1 (A basic process). Figure 2 represents as a timed system a periodic
process P of period T, execution time E, and deadline of D05E D T.
The timed system has three control states, s, w, and u where P is respectively, sleeping,
waiting and executing. The actions a, b, and e stand for arrive, begin, and end. The timer
x is used to measure execution time while the timer t measures the time elapsed since
process arrival. In all states, both timers progress. The only controllable action is b.
By convention, transition labels are of the form a
y
; g
t
; r, where y can be u
(uncontrollable) or c (controllable), t is an urgency type, and r is a set of timers to be
reset. The upperscript c may be omitted, as well as the set r if it is empty.
SCHEDULER MODELING BASED ON THE CONTROLLER SYNTHESIS PARADIGM 59

Citations
More filters
Journal ArticleDOI
TL;DR: This note investigates a simple event-triggered scheduler based on the paradigm that a real-time scheduler could be regarded as a feedback controller that decides which task is executed at any given instant and shows how it leads to guaranteed performance thus relaxing the more traditional periodic execution requirements.
Abstract: In this note, we revisit the problem of scheduling stabilizing control tasks on embedded processors. We start from the paradigm that a real-time scheduler could be regarded as a feedback controller that decides which task is executed at any given instant. This controller has for objective guaranteeing that (control unrelated) software tasks meet their deadlines and that stabilizing control tasks asymptotically stabilize the plant. We investigate a simple event-triggered scheduler based on this feedback paradigm and show how it leads to guaranteed performance thus relaxing the more traditional periodic execution requirements.

3,695 citations


Cites methods from "Scheduler Modeling Based on the Con..."

  • ...This model can then be composed with models of the remaining tasks and a scheduler, regarded as a supervisor, can be synthesized by resorting to control and/or game theoretic techniques for timed automata [3], [12]....

    [...]

Proceedings Article
01 Jan 2008
TL;DR: The BIP language for the description and composition of layered components as well as associated tools for executing and analyzing components on a dedicated platform and provides a powerful mechanism for structuring interactions involving rendezvous and broadcast are presented.
Abstract: We present a methodology for modeling heterogeneous real-time components. Components are obtained as the superposition of three layers : Behavior, specified as a set of transitions; Interactions between transitions of the behavior; Priorities, used to choose amongst possible interactions. A parameterized binary composition operator is used to compose components layer by layer. We present the BIP language for the description and composition of layered components as well as associated tools for executing and analyzing components on a dedicated platform. The language provides a powerful mechanism for structuring interactions involving rendezvous and broadcast. We show that synchronous and timed systems are particular classes of components. Finally, we provide examples showing the utility of the BIP framework in heterogeneous component modeling.

525 citations


Cites background from "Scheduler Modeling Based on the Con..."

  • ...The definition of atomic timed components for discrete time is inspired from [2]....

    [...]

  • ...An atomic timed component C represents a transition system [2] in the following manner....

    [...]

Journal Article
TL;DR: In this paper, the authors present algorithms for the automatic synthesis of real-time controllers by finding a winning strategy for certain games defined by the timed-automata of Alur and Dill.
Abstract: This paper presents algorithms for the automatic synthesis of real-time controllers by finding a winning strategy for certain games defined by the timed-automata of Alur and Dill. In such games, the outcome depends on the players' actions as well as on their timing. We believe that these results will pave the way for the application of program synthesis techniques to the construction of real-time embedded systems from their specifications.

524 citations

Proceedings ArticleDOI
11 Sep 2006
TL;DR: In this article, the authors present a methodology for modeling heterogeneous real-time components, which are obtained as the superposition of three layers: Behavior, specified as a set of transitions; Interactions between transitions of the behavior; Priorities, used to choose amongst possible interactions.
Abstract: We present a methodology for modeling heterogeneous real-time components. Components are obtained as the superposition of three layers : Behavior, specified as a set of transitions; Interactions between transitions of the behavior; Priorities, used to choose amongst possible interactions. A parameterized binary composition operator is used to compose components layer by layer. We present the BIP language for the description and composition of layered components as well as associated tools for executing and analyzing components on a dedicated platform. The language provides a powerful mechanism for structuring interactions involving rendezvous and broadcast. We show that synchronous and timed systems are particular classes of components. Finally, we provide examples and compare the BIP framework to existing ones for heterogeneous component-based modeling.

314 citations

Journal ArticleDOI
01 Mar 2005
TL;DR: The proposed framework for component-based modeling using an abstract layered model for components considers components where behavior models are transition systems and interaction models are described by priority relations on interactions, leading to a concept of "flexible" composition different from usual composition in that it preserves deadlock-freedom and is appropriate for correctness by construction.
Abstract: We propose a framework for component-based modeling using an abstract layered model for components. A component is the superposition of two models: a behavior model and an interaction model. Interaction models describe architectural constraints induced by connectors between components.We propose and analyze general requirements for component composition that motivated and guided the development of the framework. We define an associative and commutative composition operator on components encompassing heterogeneous interaction. As a particular instance of the proposed framework, we consider components where behavior models are transition systems and interaction models are described by priority relations on interactions. This leads to a concept of "flexible" composition different from usual composition in that it preserves deadlock-freedom and is appropriate for correctness by construction. Nevertheless, flexible composition is a partial operation. Product systems should be interaction safe in the sense that they do not violate constraints of the interaction model.We propose results ensuring correctness by construction of a system from properties of its interaction model and of its components. The properties considered include global deadlock-freedom, individual deadlock-freedom of components, and interaction safety.

246 citations

References
More filters
Journal ArticleDOI
TL;DR: Alur et al. as discussed by the authors proposed timed automata to model the behavior of real-time systems over time, and showed that the universality problem and the language inclusion problem are solvable only for the deterministic automata: both problems are undecidable (II i-hard) in the non-deterministic case and PSPACE-complete in deterministic case.

7,096 citations

Journal ArticleDOI
TL;DR: The problem of multiprogram scheduling on a single processor is studied from the viewpoint of the characteristics peculiar to the program functions that need guaranteed service and it is shown that an optimum fixed priority scheduler possesses an upper bound to processor utilization.
Abstract: The problem of multiprogram scheduling on a single processor is studied from the viewpoint of the characteristics peculiar to the program functions that need guaranteed service. It is shown that an optimum fixed priority scheduler possesses an upper bound to processor utilization which may be as low as 70 percent for large task sets. It is also shown that full processor utilization can be achieved by dynamically assigning priorities on the basis of their current deadlines. A combination of these two scheduling techniques is also discussed.

7,067 citations


"Scheduler Modeling Based on the Con..." refers background in this paper

  • ...A scheduler follows an edf policy on the resource r if it is granted to the waiting process that is closest to its relative deadline (Liu and Layland, 1973 )....

    [...]

  • ...The algorithm of preemptive rate-monotonic scheduling (rms, Liu and Layland, 1973) assigns to each strictly periodic process a ®xed priority such that processes with shorter period have higher priority, i.e., if T i > T j , P j has priority over P i ....

    [...]

Journal ArticleDOI
TL;DR: An investigation is conducted of two protocols belonging to the priority inheritance protocols class; the two are called the basic priority inheritance protocol and the priority ceiling protocol, both of which solve the uncontrolled priority inversion problem.
Abstract: An investigation is conducted of two protocols belonging to the priority inheritance protocols class; the two are called the basic priority inheritance protocol and the priority ceiling protocol. Both protocols solve the uncontrolled priority inversion problem. The priority ceiling protocol solves this uncontrolled priority inversion problem particularly well; it reduces the worst-case task-blocking time to at most the duration of execution of a single critical section of a lower-priority task. This protocol also prevents the formation of deadlocks. Sufficient conditions under which a set of periodic tasks using this protocol may be scheduled is derived. >

2,443 citations


"Scheduler Modeling Based on the Con..." refers background or methods in this paper

  • ...The priority rule de®ned by the c CPU ij gives priority to the process with lower index, unless it blocks on r. Notice c CPU 23 : P 3 has priority over P 2 in particular if P 3 is using r, and P 1 is waiting for r, so as to prevent priority inversion (Sha et al., 1990)....

    [...]

  • ...For example, the priority ceiling protocol (Sha et al., 1990) schedules the process with the highest current priority among the processes that are waiting for the processor, whereas a process P i is eligible for the allocation of a free resource if the current priority of P i is higher than the…...

    [...]

  • ...According to the priority ceiling protocol (Sha et al., 1990), we consider a system composed of processes sharing a processor CPU, and a set of non preemptable resources R n ....

    [...]

Journal ArticleDOI
TL;DR: A general framework for the formal specification and algorithmic analysis of hybrid systems is presented, which considers symbolic model-checking and minimization procedures that are based on the reachability analysis of an infinite state space.

2,091 citations


"Scheduler Modeling Based on the Con..." refers background in this paper

  • ...Timed systems are automata extended with time variables as timed or hybrid automata (Alur et al., 1995; Alur and Dill, 1994) where time variables are real-valued....

    [...]

Journal ArticleDOI
TL;DR: HyTech is a symbolic model checker for linear hybrid automata, a subclass of hybrids that can be analyzed automatically by computing with polyhedral state sets that combines automaton transitions for capturing discrete change with differential equations for capturing continuous change.
Abstract: A hybrid system consists of a collection of digital programs that interact with each other and with an analog environment. Examples of hybrid systems include medical equipment, manufacturing controllers, automotive controllers, and robots. The formal analysis of the mixed digital-analog nature of these systems requires a model that incorporates the discrete behavior of computer programs with the continuous behavior of environment variables, such as temperature and pressure. Hybrid automata capture both types of behavior by combining finite automata with differential inclusions (i.e. differential inequalities). HyTech is a symbolic model checker for linear hybrid automata, an expressive, yet automatically analyzable, subclass of hybrid automata. A key feature of HyTech is its ability to perform parametric analysis, i.e. to determine the values of design parameters for which a linear hybrid automaton satisfies a temporal requirement.

1,092 citations


"Scheduler Modeling Based on the Con..." refers methods in this paper

  • ...This step requires in general, the application of synthesis or veri®cation techniques that can be carried out by existing timing analysis tools such as KRONOS (Daws et al., 1996), UPPAAL (Jensen et al., 2000), HYTECH (Henzinger et al., 1997)....

    [...]