imposes underload conditions.
2.2 Fault-tolerant Scheduling
Redundancy is the foundation of fault tolerance tech-
niques. There are three types of redundancy: hard-
ware, software and temporal. Permanent faults are
generally dealt through hardware redundancy while
temporal redundancy techniques serve for transient
or intermittent faults. They consist in re-executing
a task which has failed with either the same cod-
ing version (pure temporal redundancy) or a differ-
ent version, currently a shorter one. We are interested
with the Deadline Mechanism (DL) model. Each task
has two independent software versions (Liestman and
Campbell, 1986). Firstly, a major version called pri-
mary produces results with high precision when it is
completely executedbefore deadline. Secondly, a ver-
sion called alternate or back-up with shorter execution
time has to run for producing a just acceptable result
whenever the primary fails in executing timely due to
a fault or processor overload.
Two distinct scheduling frameworks may be im-
plemented for the DL mechanism (Chetto and Chetto,
1989) (Chetto and Chetto, 1991). Firstly, according
to the First Chance (FC) technique the alternate ver-
sion of any job executes completely first before the
primary version of the same job starts execution. If
the primary version finishes before deadline, its re-
sults are used in preference to those of the alternate.
Secondly, the Last Chance (LC) technique attempts to
execute first the primary version. Nevertheless suffi-
cient processing time intervals have to be reserved to
guarantee feasible execution of the alternate version
if the primary fails. Consequently, success of any pri-
mary leads to discard the corresponding alternate and
recover processing time since the result of the alter-
nate becomes no longer necessary. In this strategy, the
scheduler has to suspend any running primary when-
ever an alternate requires to be executed so as to meet
its deadline. Theoretical and simulation studies estab-
lished that the LC strategy outperforms the FC strat-
egy (Chetto and Chetto, 1989) (Chetto and Chetto,
1991).
2.3 Scheduling with Overload
Conditions
Any scheduling algorithm should aim at minimizing
the overall damage to the system performance when-
ever a processing overload occurs. This can be per-
formed by dynamically changing some timing param-
eters of the tasks (e.g. execution time or period), using
importance values attached to the tasks or skipping
some jobs of recurring tasks. In that work, we opt for
the Skip-Over (SO) model (Koren and Shasha, 1995).
Each periodic task is characterized by a value called
skip factor denoted by s
i
, (2 ≤ s
i
≤ ∞) signifying that
among s
i
successive jobs, at most one can be skipped.
Every job of a task has one of the two colours: red or
blue. A red job has to complete before deadline while
a blue one can be aborted at any time. Moreover, af-
ter a deadline missing, at least (s
i
−1) jobs are red and
must be executed timely. Several scheduling schemes
have been proposed and analysed for the SO model
such as RTO (Red Tasks Only) or BWP (Blue When
Possible). Red jobs are scheduled as soon as possible
according to the EDF (Earliest Deadline First) rule
while blue ones are always rejected (that is never exe-
cuted). The BWP scheme is an improvement of RTO.
BWP schedules blue jobs whenever their execution
does not prevent the red ones from completing within
their deadlines. In other words, blue jobs are served
in background relatively to red jobs.
3 THE BGW TASK MODEL
BGW (Black GreyWhite) is a noveltask model which
uses time redundancy to cope with both transient pro-
cessor overload and faults (Sass et al., 2013). The
BGW model derives from:
• the DL Model where each periodic task has two
independent versions for fault-tolerance and over-
load management.
• and the SO model where each periodic task has a
skip parameter for overload management.
Every job generated by a periodic task takes at every
time instant one of the three following colours :
• Black if the job has to imperatively produce a re-
sult through the primary version,
• Grey if the job has to produce a result through at
least one version, but in preference the primary
one,
• White if the job may be dropped i.e. the job has
no execution requirement even if it is preferable
to execute one of the two versions.
Formally, a BGW task set τ = {τ
1
,τ
2
,...,τ
n
} is com-
posed of n periodic tasks where each task τ
i
is charac-
terized by its conventional timing parameters and two
additional QoS parameters (n
i
,l
i
). Let us define the
term ”distance” as a number of requests. n
i
expresses
the maximum distance allowed between two consecu-
tive successful executions of the primary version. l
i
is
the maximum distance allowed between two consecu-
tive successful executions of a job (whatever primary
or alternate).
PECCS2015-5thInternationalConferenceonPervasiveandEmbeddedComputingandCommunicationSystems
54