Beruflich Dokumente
Kultur Dokumente
Problmatique
Certains problmes sont trs lis au
temps :
un distributeur de billets ne doit pas mettre 5
minutes dlivrer les billets
une balance ne doit pas peser en 30 secondes
un radar ne doit pas mettre 2 secondes ragir
un systme de freinage ABS ne doit pas mettre
plus de 150ms pour acqurir l'information et 1s
pour ragir
donn,
Outils :
horloges matrielles, interruptions, etc.
style de programmation adaptes : multitches, vnements,
langages spcifiques (langages synchrones, etc.)
outils de modlisation : logique temporelle, rseaux de Ptri,
etc.
I.Lagrat AIAC 2012/2013
10
11
12
13
14
15
16
Dterminisme
but a atteindre pour prdire le comportement temporel du systme
temps rel dur : chercher a savoir si toutes les chances de toutes
les activits seront respectes
temps rel lche : par exemple savoir quels seront les retards moyens
I.Lagrat AIAC 2012/2013
17
Fiabilit
du matriel
tolrance aux fautes
systmes embarqus
18
19
20
21
22
23
Introduction
Tches temps rel soumises des contraintes
de temps, plus ou moins strictes
instant de dmarrage
instant de fin
absolus ou relatifs d'autres tches
le but de l'ordonnancement est de permettre
le respect de ces contraintes, lorsque
l'excution se produit dans un mode courant
il doit permettre de borner les effets
d'incidents ou de surcharges
I.Lagrat AIAC 2012/2013
24
r : date de rveil
moment du dclenchement de la 1re requte
d'excution
D : dlai critique
25
paramtres statiques
paramtres dynamiques
retard maximum pour son dbut d'excution s (si elle est seule)
retard maximum pour reprendre l'excution
26
premptibles ou non
dpendance ou indpendance
priorit externe
urgence chance
importance
I.Lagrat AIAC 2012/2013
27
Bloque
Prte
f
Inexistante
f
Passive
28
Dfinitions
facteur de charge
laxit conditionnelle
(somme sur les tches dclenches la date t et qui sont devant i du point de vue de
l'ordonnancement)
LP(t) = min(LCi(t))
29
Buts de l'ordonnancement
30
une tche peut perdre le processeur (au profit d'une tche plus
prioritaire) ou non
algorithme premptif toutes les tches premptibles
centralis ou rparti
31
Ordonnancement
des tches
indpendantes
32
Introduction
tches indpendantes :
dynamique
sur la base d'une priorit dfinie
33
tches priodiques
34
35
exemple
T1 (r0=0, C=3, P=20), T2 (r0=0, C=2, P=5), T3 (r0=0, C=2,
P=10)
T1
or
e don
na
n
ab
l
2
0
T2
T3
4 5
9 1
1
0
12
10
12
12
I.Lagrat AIAC
0 2012/2013
1
5
17
2
0
14
1
4
1
5
2
0
1
7
2
0
36
37
38
test d'acceptabilit
condition ncessaire
condition suffisante
39
exemple
T1 (r0 = 0, C=3, , D=7, P=20), T2 (r0 = 0, C=2, D=4, P=5),
T3 (r0 = 0, C=2, D=8, P=10)
ch
e ron
og
ra
mm
T1
0
91
0
1
0
<1
>1
20
T2
4
T3
0
1
2
1
2
14 15
14
1
7
1 2
9 0
18
20
40
41
t=7
0
1
2
3
4
5
6
L21 = 0
7-3L32=
3,
2,
1,
==4,
2,1
4L23 = 4-2
3
2
5 = 2, L3 = 8-2 = 6
T
1
0 1
4 5
6 7
9 1
0
1
1
1
2
1
3
1 1
4 5
1
6
1
7
1 1 2
8 9 0
0 1
4 5
6 7
9 1
0
1
1
1
2
1
3
1 1
4 5
1
6
1
7
1 1 2
8 9 0
0 1
4 5
6 7
9 1
0
1
1
1
2
1
3
1 1
4 5
1
6
1
7
1 1 2
8 9 0
T
2
T
3
42
43
Introduction
buts atteindre :
traitement en arrire-plan
traitement par serveurs
I.Lagrat AIAC 2012/2013
44
Tches contraintes
relatives
Traitement d'arrire-plan (1)
45
exemple
Tp1 (r0=0, C=2, P=5), Tp2 (r0=0, C=2, P=10)
Ta3 (r=3, C=2), Ta4 (r=10, C=1), Ta5 (r=11, C=2)
Tp
Tp
1
0
1
2
1
0
1
2
1
5
1
7
20
Tempscreux
4 5
3 4 5
Tchesapriodiques
Ta3
1
4
1
0
8
Ta
1
0
1
1
Ta
5
2
0
1 1
4 5
1
7
1 1
4 5
1
7
2
0
1
9
46
sa priode
son temps d'excution : capacit du serveur
serveur gnralement ordonnanc suivant le mme algorithme
que les autres tches priodiques
une fois actif, le serveur sert les tches apriodiques dans la
limite de sa capacit.
l'ordre de traitement des tches apriodiques ne dpend pas de
l'algorithme gnral
47
48
2 tches priodiques : Tp1 (r0=0, C=3, P=20) Tp2 (r0=0, C=2, P=10)
Tp1
Tp2
Tps
20
10
12
10 11
12
14
20
15
17
20
49
2 tches priodiques : Tp1 (r0=0, C=3, P=20) Tp2 (r0=0, C=2, P=10)
tches apriodiques : Ta3 (r=4, C=2), Ta4 (r=10, C=1), Ta5 (r=11, C=2)
Tp1
Tp2
Tps
Capacit
2
1
0
Ta3
20
10
12
10 11
12
Ta4
14
Ta5
20
15
17
20
Tches apriodiques
50
51
Serveur sporadique
52
RT : date de la rcupration
53
2 tches priodiques : Tp1 (r0=0, C=3, P=20), Tp2 (r0=0, C=2, P=10)
tches apriodiques : Ta3 (r=4, C=2), Ta4 (r=10, C=1), Ta5 (r=11, C=2)
Tp1
Tp2
Tps
2
1
0
20
10
Capacit
Ta3
10
12
11 12
Ta4
14
20
15
Tches apriodiques
Ta5
10
12
16
15
20
54
Tches contraintes
strictes
55
Principe de l'ordonnancement
56
57
exemple
Tp1 (r0=0, C=3, D=7, P=20), Tp2 (r0=0, C=2, D=4, P=5),
Tp3 (r0=0, C=1, D=8, P=10)
Tp
1
Tp
20
Tp
10
1
2
14
1
5
17
19
20
0
Temps
creux
0
Tches
apriodiques
0
10
8
12 13
10
10
Ta
Ta
11
13
13
Ta6
18
1
5
15 16
1
7
20
20
1
7
18
58
exemple
Tp1 (r0=0, C=3, D=7, P=20), Tp2 (r0=0, C=2, D=4, P=5),
Tp3 (r0=0, C=1, D=8, P=10)
Tp
1
Tp
20
Tp
10
1
2
14
1
5
17
19
20
0
Temps
creux
0
Tches
apriodiques
0
10
8
Ta
Ta
12 13
10
10
11
18
13
13
Ta6
1
5
15
1
7
16 1
7
20
20
18
59
60
exemple
Tp1 (r0=0, C=3, D=7, P=20), Tp2 (r0=0, C=2, D=4, P=5),
Tp
1
Tp2
2
2
Tp3
5
4
7
6
5 6
20
8
9 10
10
8
Ta5
10 11
15
12
17
19 20
12 13 14 15
18
13 14
18
20
Tches apriodiques
0
4
Ta4
61
exemple
Tp1 (r0=0, C=3, D=7, P=20), Tp2 (r0=0, C=2, D=4, P=5),
Tp
1
Tp2
2
2
Tp3
5
4
7
6
5 6
20
8
9 10
10
12
15
12 13 14 15
17
19 20
18
20
Tches apriodiques
0
4
Ta4
8
10 11 12 13 14
Ta5
TaAIAC
6
I.Lagrat
2012/2013
18
62
exemple
Tp1 (r0=0, C=3, D=7, P=20), Tp2 (r0=0, C=2, D=4, P=5),
Tp
1
Tp2
2
2
Tp3
5
4
7
6
5 6
20
8
9 10
12
10
10 11 12 13 14
15
12 13 14 15
17
19 20
18
20
Tches apriodiques
0
4
Ta4
Ta5
TaAIAC
6
I.Lagrat
2012/2013
18
63
Ordonnancement de
tches dpendantes
64