Vous êtes sur la page 1sur 10

TD dordonnancement temps rel monoprocesseur

F. Singhoff
6 octobre 2013

Rappels de cours

1.1

Modles de tches
Si

000
111
0000
1111
111
000
0000
1111
000
111
0000
1111
000
111
0000
1111
000
111
0000
1111
000
111
0000
1111

k.Pi

Ci

<= Di

00000
11111
11111
00000
00000
11111
00000
11111
00000
11111
00000
11111

(k+1).Pi

0000
1111
1111
0000
0000
1111
0000
1111
0000
1111
0000
1111

(k+2).Pi

0011
11
00
11
11
00
00
00
11
00
11
00
11
00
11
00
11
00
0011
11
00
11

....

Figure 1 Une tche priodique


1. Priodiques. Une tche priodique fait lobjet de plusieurs activations successives. Elle est
dfinie par les paramtres Si (date darrive de la tche dans le systme), Ci (capacit de
la tche), Pi (priode dactivation de la tche), et Di (dlai critique exprim relativement
Pi ). Les tches priodiques modlisent gnralement des fonctions critiques du systme.
2. Apriodiques. Une tche apriodique i est active une seule fois et est dfinie par les paramtres Si (date darrive de la tche dans le systme), Ci (capacit de la tche), Ri (date
dexcution au plus tt de la tche) et Di (dlai critique). Les tches apriodiques modlisent
gnralement des fonctions non critiques du systme.
3. Sporadique : idem priodique mais Pi constitue un dlai minimum inter-activations.

1.2

Ordonnancement priorit fixe avec affection de priorit RM

Fonctionnement
Le calcul de priorit consiste associer chaque tche une priorit fixe inversement proportionnelle sa priodicit (Rate Monotonic).
La phase dlection consiste lire la tche de plus forte priorit (ordonnancement priorit
fixe).
Tests de lordonnanabilit
Hypothses : tches indpendantes et priodiques. Algorithmes premptifs.
P
(1/n)
i
1) condition suffisante
1. Test sur le taux dutilisation avec i : Di = Pi : ni=1 C
Pi n(2
mais non ncessaire.
2. Utilisation de la priode dtude : ordonnancement comportement cyclique (proprit du
modle priodique). Priode dtude = [0, P P CM (Pi )] (si i : Si = 0).
1

3. Test sur le tempsl de


86]) avec
m rponse de la tche i (not ri ) [JOS
m i = Pi ;
l nD
P
P
wi
n+1
ri
= Ci + jhp(i) Pj Cj . Condiri = Ci + jhp(i) Pj Cj , calculer par [AUD 93] : wi
tions darrt : chec si win > Pi , russite si win+1 = win . On commence avec wi0 = Ci .

1.3

Lalgorithmes EDF

Fonctionnement
Le calcul de priorit consiste dterminer une chance. Lchance Di (t) dune tche i
linstant t est gale la somme de la date de dbut de lactivation courante linstant t et du
dlai critique Di .
La phase dlection consiste lire la tche de plus courte chance.
Tests de lordonnanabilit
Hypothses : tches indpendantes et priodiques. Algorithmes premptifs.
1. Test sur le taux dutilisation :
Pn
i
Cas i : Di = Pi : i=1 C
1 condition ncessaire et suffisante.
Pn
Pn PiCi
Cas i : Di < Pi : i=1 Di 1 condition suffisante seulement, i=1
ncessaire uniquement.

Ci
Pi

1 condition

2. Utilisation de la priode dtude (proprit du modle priodique).

Exercices avec des tches indpendantes

Exercice 1 : ordonnancement priorit fixe + Rate Monotonic


Soient trois tches priodiques T1, T2 et T3 dfinies par les paramtres suivants : S1 = S2 =
S3 = 0, P1 = 29, C1 = 7, P2 = 5, C2 = 1, P3 = 10, C3 = 2. On suppose un ordonnancement
priorit fixe avec une affection Rate Monotonic des priorits. Les dlais critiques sont gaux aux
priodes (soient i : Di = Pi ).
1. Calculez le taux dutilisation pour RM. Le jeu de tches est il ordonnanable ?
2. Dessinez, sur les 30 premires units de temps, lordonnancement gnr par RM, dabord
avec la version premptive, puis, avec la version non premptive (vous commencerez la
date zro). Que constatez vous ?
3. Nous modifions la tche T1 par P1 = 30 et C1 = 6 et la tche T2 par C2 = 3. Le jeu de
tches est dit "harmonique". En effet, chaque priode du jeu de tches et multiple avec les
autres priodes. Refaite le test dordonnanabilit par le taux dutilisation. Puis, dessinez
de nouveau lordonnancement gnr par RM sur sa priode dtude (mode premptif). Que
constatez vous ?
4. Confirmez ce dernier rsultat en calculant le temps de rponse de chaque tche.

Exercice 2 : EDF
Soient trois tches priodiques T1, T2 et T3 dfinies par les paramtres suivants : S1 = S2 =
S3 = 0, P1 = 12, C1 = 5, P2 = 6, C2 = 2, P3 = 24, C3 = 5. Les dlais critiques sont gaux aux
priodes (soient i : Di = Pi ).
1. Calculez le taux dutilisation du processeur. Concluez sur lordonnanabilit du jeu de tches.
2. Dterminer le nombre dunit de temps libre sur la priode dtude.

3. Confirmez les points prcdants en dessinant, sur la priode dtude, lordonnancement gnr par EDF, dabord avec la version premptive, puis, avec la version non premptive.
4. On considre maintenant le mme jeu de tches mais cette fois ci, deux tches apriodiques
TA1 et TA2 arrivent respectivement aux instants 7 et 12. Leurs capacits sont de 1 et 3 units
de temps. Leurs chances Di (t) interviennent aux instants 9 et 21. Le jeu de tches est il
ordonnanable par EDF (mode premptif) ? Dessinez lordonnancement sur les 30 premires
units de temps.

Exercice 3 : serveurs de tches apriodiques


Soient deux tches priodiques dfinies par les paramtres suivants : S1 = S2 = 0, P1 =
15, C1 = 4, P2 = 7, C2 = 1. Les dlais critiques sont gaux aux priodes (soient i : Di = Pi ).
Lordonnancement est effectu avec un algorithme priorits fixes et RM (mode premptif).
On souhaite faire cohabiter des tches apriodiques avec les tches dfinies ci-dessus. Pour ce
faire, on utilise la mthode du serveur par scrutation. Cette mthode consiste ddier une tche
priodique (tche dite "serveur par scrutation") lexcution des tches apriodiques. A chaque activation du serveur par scrutation, celui-ci regarde si des tches apriodiques sont arrives avant
le rveil du serveur (les tches apriodiques doivent videmment tre prtes). Le cas chant,
le serveur attribue du temps processor concurrence de la capacit du serveur : lexcution dune
tche apriodique peut tre donc rpartie sur plusieurs activations du serveur. Le temps de traitement ncessaire au serveur pour vrifier si des tches apriodiques sont prsentes est suppos
comme nul : si le serveur est rveill alors quaucune tche apriodique nest prsente, alors, le
serveur ne consomme pas de ressource processeur. La capacit du serveur est dune unit de temps.
Cette unit de temps est donc uniquement consacre lexcution des tches apriodiques.
1. On suppose que le serveur par scrutation possde une priode de 5 units de temps. Le
serveur arrive dans le systme linstant zro. Le jeu de tches est il ordonnanable ?
2. On suppose maintenant que deux tches apriodiques TA1 et TA2 arrivent respectivement
aux instants 7 et 12. Leurs capacits sont de 1 et 3 units de temps. Leurs chances interviennent aux instants 9 et 21. Dessinez lordonnancement gnr par le serveur par scrutation
sur les 26 premires units de temps.

Exercice 4 : comparaison dalgorithmes


Soient deux tches T1 et T2 dfinies par les paramtres suivants : S1 = S2 = 0, P1 = 8, P2 =
10, C1 = 4 et C2 = 5. Les dlais critiques sont gaux aux priodes (soient i : Di = Pi ).
1. Dessinez sur les 24 premires units de temps lordonnancement gnr par EDF (en mode
premptif). Existe il des chances manques ?
2. Dessinez sur les 24 premires units de temps lordonnancement gnr par un algorithme
priorits fixes et RM (en mode premptif). Existe il des chances manques ?
3. Que constatez vous ? est ce surprenant ?

Exercice 5 : comparaison dalgorithmes


Soient deux tches T1 et T2 dfinies par les paramtres suivants : S1 = S2 = 0, P1 = 9, P2 =
8, C1 = 4, C2 = 3. Les dlais critiques sont gaux aux priodes (soient i : Di = Pi ).
On se propose dtudier un nouvel algorithme dordonnancement dynamique : LLF (Least
Laxity First). Ce dernier effectue llection des tches prtes grce leur laxit. La laxit, comme
lchance, est une information dynamique qui volue dans le temps. La laxit Li (t) dune tche i
linstant t svalue par Li (t) = Di (t) reste(t) o reste(t) est le reliquat de capacit excuter
pour lactivation courante.
1. Dessinez lordonnancement gnr par EDF sur les 20 premires units de temps (en mode
premptif).
3

2. Dessinez lordonnancement gnr par LLF sur les 20 premires units de temps (en mode
premptif).
3. Que constatez vous ? Conclure sur le choix entre ces deux algorithmes.

Exercices sur POSIX 1003.1b

Exercice 6 : politiques de gestion des files dattente


Dans cet exercice, nous utilisons limplantation des spcifications POSIX 1003.1b sur Linux.
Sur Linux, il existe 100 niveaux de priorit : le niveau de priorit 0 est rserv SCHED_OTHER
et les niveaux de priorit 1 99 aux politiques SCHED_FIFO et SCHED_RR. Les tches de priorit 99 sont les tches de plus forte priorit. SCHED_OTHER est ddie lordonnanceur temps
partag. Le quantum utilis par la politique SCHED_RR est dune unit de temps. Pour simplifier, nous supposons que la politique SCHED_OTHER alloue le processeur de faon inversement
proportionnel au temps processeur consomm par les tches. Lordonnancement est premptif.
Nom
other1
rr1
rr2
fifo1
fifo2
fifo3

Capacit
8
5
5
3
3
2

Date darrive
0
2
2
4
3
4

Priorit
0
3
3
5
2
5

Politique
SCHED_OTHER
SCHED_RR
SCHED_RR
SCHED_FIFO
SCHED_FIFO
SCHED_FIFO

Soit le jeu de tches apriodiques ci-dessus. On suppose quune fois arrive, les tches sont
toujours prtes. Dessinez de linstant 0 linstant 25, lordonnancement gnr par lordonnanceur
POSIX 1003.1b.

Exercice 7 : POSIX 1003.1b et tches priodiques


Soient deux tches priodiques T1 et T2 dfinies par les paramtres suivants : C1=1, C2=2,
P1=8, P2=7. Les tches arrivent linstant 0. Les dlais critiques sont gaux aux priodes
On considre un systme POSIX 1003.1b offrant 32 niveaux de priorit (de 0 31). Les tches
de priorit 31 sont les tches de plus forte priorit. Ce systme propose les trois politiques POSIX 1003.1b SCHED_F IF O, SCHED_RR et SCHED_OT HER. Le quantum utilis pour
la politique SCHED_RR est dune unit de temps. La politique SCHED_OT HER implante
un algorithme dordonnancement pour les applications temps partag. Lordonnancement est premptif.
Le jeu de tches priodiques est il ordonnanable avec RM en mode premptif ?
En plus de T1 et de T2, on suppose que le systme comprend les tches apriodiques cidessous :
Nom
Capacit Date darrive Priorit
Politique
fifo1
4
5
20
SCHED_FIFO
other1
5
0
0
SCHED_OTHER
fifo2
3
4
5
SCHED_FIFO
rr1
3
3
7
SCHED_RR
rr2
3
4
7
SCHED_RR
Proposez pour T1 et T2 une priorit qui garantisse le respect de leurs contraintes temporelles
conformment la mthode RM et au systme POSIX 1003.1b utilis.
Dessinez lordonnancement gnr par lordonnanceur POSIX 1003.1b entre 0 et 30 units
de temps.

Exercices avec des tches dpendantes

Exercice 8 : contraintes de prcdence


Acquisition vido

Compression vido

Dcompression vido

C
Synchronisation
et multiplexage

Prsentation

Acquisition son

Compression son

Dcompression son

Figure 2 Une application multimdia


On sintresse une application multimdia dont les traitements sont dcrits par la figure 2.
Lapplication est constitue de 8 tches soumises des contraintes de prcdence. Les paramtres
temporels de cette application sont donns ci-dessous (exprims en milli-secondes) :
Tches
A
B
C
D
E
F
G
H

Si
0
0
0
0
0
0
0
0

Ci
3
1
3
1
5
4
1
1

Di
12
10
20
15
25
37
20
40

Lapplication tant par nature dynamique, nous utilisons un algorithme EDF premptif. Le
graphe de tches est activ priodiquement toutes les 40ms.
1. Calculez le taux dutilisation. Le jeu de tches est il ordonnanable si lon ne tient pas compte
des contraintes de prcdence ? Rappel : un taux dutilisation ne peut tre exploit que sur
des tches indpendantes.
2. Confirmez en dessinant la squence dordonnancement sur la priode dtude. Lordonnancement gnr par EDF est il conforme aux besoins de lapplication ?
3. Utilisez la mthode de Blazewicz/Chetto pour supprimer les contraintes de prcdence.
4. Calculez de nouveau le taux dutilisation et redessinez lordonnancement ainsi gnr sur sa
priode dtude. Conclure sur lordonnanabilit de lapplication.

Exercice 9 : prise en compte des ressources


Dans cet exercice, on souhaite montrer limpact dune inversion de priorit sur lordonnancement dun jeu de tches. Soient trois tches dfinies par les paramtres suivants : S1 = S2 = S3 =
0, P1 = 6, C1 = 2, P2 = 8, C2 = 2, P3 = 12 et C3 = 5. Les dlais critiques sont gaux aux priodes
(soient i : Di = Pi ). On utilise un algorithme priorit fixe et RM pour ordonnancer les tches
(mode premptif).
Les tches T1 et T3 se partagent une ressource quelles accdent en exclusion mutuelle. T1
accde la ressource durant la deuxime unit de temps de sa capacit. T3 accde la ressource
durant la totalit de sa capacit.
5

1. Dessinez sur la priode dtude lordonnancement gnr par un algorithme priorit fixe
et RM. Vous indiquerez les moments daccs exclusif la ressource ainsi que le moment o
linversion de priorit intervient.
2. On suppose que lon utilise la mthode dhritage simple : une tche qui bloque une autre
plus prioritaire quelle, excute la section critique avec la priorit de la tche bloque. Cette
mthode dhritage sappele aussi PIP pour Priority Inheritance Protocol. Redessinez lordonnancement sur la priode dtude et indiquez le moment sur le graphe o linversion de
priorit est vite.
3. Donnez la valeur de B1 , B2 et B3 .

Exercices de modlisation

Ces derniers exercices sont des exercices de modlisation : il existe donc plusieurs solutions
plus ou moins satisfaiseantes.

Exercice 10 : les ptits navions


On souhaite organiser le partage dune piste de laroport de Brest entre deux compagnies
ariennes. La premire compagnie dessert une ligne nationale vers Paris. La seconde dessert une
ligne internationale.
La piste est alloue un avion pendant son atterissage mais aussi pendant sa phase dapproche.
Ces deux tapes durent respectivement 20 minutes et 10 minutes et ce quelque soit lavion.
Pour la ligne nationale, un atterrissage seffectue toutes les deux heures. La ligne internationale
requiert un atterissage toutes les cinq heures. En outre, une fois par heure, la piste doit tre
inspecte par une quipe dentretien au sol. Ce travail dentretien dure 30 minutes.
Proposez une solution pour partager la piste entre les diffrents intervenants pendant une
journe complte. Vous donnerez la liste des tches de ce systme ainsi que le chronogramme
dcrivant le partage de la piste.
Vous utiliserez un des algorithmes dordonnancement tudi en cours. Vous justifierez le
choix de lalgorithme et la faon dont vous modlisez les tches. Tout rsultat
non justifi sera compt comme faux.
On souhaite modliser lentretien de la piste non pas par une tche mais par quatre tches. En
effet, en pratique, lentretien de la piste est ralis en quatre phases (dans cet ordre) :
Une phase prparatoire (distribution du matriel, etc) qui dure 5 minutes.
Lentretien proprement dit qui est effectu par deux quipes :
1. La premire vrifie labsence dobjet sur la piste. Elle doit terminer son travail 15
minutes aprs le dbut de lentretien de la piste.
2. La deuxime soccupe des systmes de signalisation. Elle doit terminer son travail 30
minutes aprs le dbut de lentretien.
Chaque quipe requiert 10 minutes pour effectuer sa tche.
Une phase de contrle effectue par une troisime quipe qui intervient lorsque les deux
premires quipes ont termin leur tche. Le contrle dure 5 minutes.
On suppose que ces 4 phases ne peuvent utiliser la piste en mme temps.
Dterminez les paramtres de ces quatre tches. Justifiez vos rponses.

Exercice 11 : la secrtaire (virtuelle) du DESS


Il est conseill de lire toutes les questions avant de commencer.
Imaginons quune secrtaire soit affecte au DESS. On vous demande alors dorganiser sa
journe de travail qui commence 13h et se termine 19h.
La secrtaire doit raliser un certain nombres de tches dans sa journe :
Tout dabord, elle doit trier et distribuer le courrier. Le courrier arrive 13h et 16h. Le
courrier de 13h doit tre distribu avant 16h et celui de 16h doit tre distribu avant 19h.
Cette tche lui demande 30 minutes chaque fois.
Elle a aussi pour charge la ralisation de lemploi du temps ; ce qui lui demande 2h et 30
minutes de travail.
De mme, elle doit grer laccueil des lves et rpondre, tant que possible, leur demande
administrative.
Enfin, son contrat de travail lui octroie des pauses tout au long de la journe. Pour chaque
priode de 2h, elle peut stopper le travail pendant 15 minutes. Le service disposant dune
badgeuse, elle peut fractionner ses pauses de 15 minutes comme bon lui semble du moment
quelle de dpasse pas 15 minutes toutes les 2h.
Dans un premier temps, on ne tient pas compte du travail que ncessite laccueil des lves.
On considre que la secrtaire est capable dinterrompre la ralisation dune tche si une
autre plus prioritaire intervient.
La secrtaire peut elle effectuer sa charge de travail tout en respectant les contraintes temporelles ? Donnez lemploi du temps de la secrtaire. Vous utiliserez un des algorithmes
dordonnancement vu en cours.
Pour amliorer ses performances, son suprieur hirarchique lui propose de ne plus sinterrompre, lorsquelle a dj dmarre une tche, pour excuter une autre plus prioritaire. Si
lon considre que le temps pour passer dun traitement un autre est ngligeable, pensez
vous que ce conseil soit judicieux ?
Nom de
lve
Mlle Sidonie
Mlle Agla
M Calimro

Temps de service
ncessaire
15mn
30mn
15mn

Heure darrive
13h
16h
17h45

Dure aprs laquelle


llve simpatiente
15mn
1h30mn
30 mn

On prend maintenant en compte laccueil des lves. Les moments darrive des lves, leur
temps de service et le dlai au-del duquel ils simpatientent sont donnes par le tableau ci-dessus.
Trouver un ordonnancement (ordonnancement premptif avec temps de commutation ngligeable) qui permette la secrtaire de respecter ses diffrentes contraintes de temps tout en
servant les lves avant quils ne simpatientent. Votre solution doit absolument garantir le respect
des contraintes temporelles pour la distribution du courrier, llaboration des emplois du temps et
les pauses de la secrtaire ; quitte, le cas chant, a ne pas pouvoir servir les lves temps (et ce,
quelque soit la loi darrive des lves). Justifier votre solution.

Exercices complmentaires

Exercice 12 : comparaison PIP et PCP


Lexercice 9 prsentait le protocole dhritage simple (aussi appel PIP pour Priority Inheritance Protocol). Dans lexercice 12, nous montrons un des dfauts de ce protocole et une de ses
volutions trs souvent implante dans les systmes dexploitation temps rel : le protocole PCP
(pour Priority Ceiling Protocol).

Soient deux tches dfinies par les paramtres suivants : S1 = 0, S2 = 2, P1 = 31, C1 = 8, P2 =


30 et C2 = 8. Les dlais critiques sont gaux aux priodes (soient i : Di = Pi ). On utilise un
algorithme priorit fixe et Rate Monotonic pour ordonnancer les tches (mode premptif).
Les tches T1 et T2 accdent 2 ressources partages : R1 et R2. T1 accdent R1 de la 2me
unit de temps de sa capacit la 8me incluse. T1 accdent R2 de la 4me unit de temps de sa
capacit la 8me incluse. T2 accdent R1 de la 6me unit de temps de sa capacit la 8me
incluse. T2 accdent R2 de la 2me unit de temps de sa capacit la 8me incluse.
1. Dessinez sur le 30 premires units de temps lordonnancement gnr par RM en appliquant
le protocole PIP. Que se passe t il de remarquable ?
On suppose maintenant que lon applique le protocole PCP qui fonctionne de la faon suivante :
Une priorit (information dsigne par le terme de plafond de priorit) est associe
chaque ressource. Cette priorit est gale la plus grande priorit des tches qui accdent
la resource. Cette information est statique.
Une tche qui bloque une autre plus prioritaire quelle, excute la section critique avec la
priorit de la tche bloque (hritage de priorit comme dans PIP).
Lorsquune tche tente daccder une ressource (opration de prise dun smaphore), elle
reste bloque si sa priorit actuelle nest pas strictement suprieure tous les
plafonds de priorit des ressources prcdemment alloues par dautres tches.
Cest cette nouvelle condition de blocage qui constitue la diffrence essentielle entre PIP
et PCP.
2. Re-dessinez le chronogramme sur les 30 premires units de temps lorsque les ressources sont
gres grce PCP.

Exercice de synthse : validation temporelle et logique


dune application temps rel embarque

Exercice 13 :
On tudie dans cet exercice un systme de visualisation intgr dans un vhicule automobile.
Ce systme est constitu dun ensemble de tches. Dans un premier temps, on tudie le respect
des contraintes temporelles des tches. Puis, on tudie les diffrentes synchronisations entre les
tches grce aux rseaux de Petri.
Cette application est constitue de 5 traitements :
1. La tche CAP T EU R_1 qui lit toutes les 10 milli-secondes la vitesse du vhicule.
2. La tche CAP T EU R_2 qui lit toutes les 10 milli-secondes la temprature dans lhabitacle
du vhicule.
3. La tche CAP T EU R_3 qui lit toutes les 40 milli-secondes la position GPS du vhicule.
4. La tche AF F ICHAGE_1 qui produit toutes les 12 milli-secondes, un rsum des informations produites par les tches CAP T EU R_1, CAP T EU R_2 et CAP T EU R_3 sur un
cran LCD.
5. La tche AF F ICHAGE_2 qui affiche la demande de lutilisateur une carte routire.
Laffichage doit tre ractualis toutes les 6 milli-secondes.

Premire partie : tude des contraintes temporelles


Les tches CAP T EU R_2 et AF F ICHAGE_1 ont une dure dexcution borne par 2 millisecondes. La tche CAP T EU R_3 requiert 4 milli-secondes pour excuter une de ses activations.
Enfin, les tches CAP T EU R_1 et AF F ICHAGE_2 ont une dure dexcution infrieure une
milli-seconde.
8

On suppose que toutes les tches dmarrent un instant identique. Enfin, on souhaite que les
tches terminent une activation donne avant le dbut de leur activation suivante.
Le systme utilis propose un ordonnanceur premptif priorit fixe comprennant 32 niveaux
de priorit (de 0 31). 0 est le niveau de priorit le plus fort. Le systme ne permet pas laffectation
dune priorit identique plusieurs tches.
Question 1.1
En gnral, quels sont les critres utiliss pour fixer la priorit des tches ?
Dterminez les diffrents paramtres des tches ncessaires leur ordonnancement. Vous
motiverez le choix de la priorit.
Question 1.2
A partir des priorits dtermines dans la question prcdente, calculer les temps de rponse
des tches CAP T EU R_1, CAP T EU R_2, et CAP T EU R_3.
Question 1.3
En fait, les tches CAP T EU R_1, CAP T EU R_2, et CAP T EU R_3 partagent une zone de
mmoire accde en exclusion mutuelle. CAP T EU R_1 et CAP T EU R_2 accdent cette ressource pendant toute leur capacit. CAP T EU R_3 accde la ressource pendant les deux premires milli-secondes de sa capacit. Le smaphore utilis applique le protocole hritage de
priorit simple.
Expliquer pourquoi les temps de rponse calculs dans les questions prcdentes ne constituent
plus des pires cas.
Question 1.4
Donnez le chronogramme dcrivant lordonnancement des tches de linstant 0 linstant 25.
Vous signalerez les instants o la ressource est alloue et libre.
Question 1.5
Dans les questions 1.5 et 1.6, on considre que les tches ne partagent plus de
ressource.
Afin dactiver les tches deux fois plus rapidement, on souhaite tester une configuration o les
tches sont rparties sur deux processeurs (les processeurs a et b).
Les tches sont maintenant dfinies par les paramtres suivants :
Tches
AF F ICHAGE_1
CAP T EU R_3
AF F ICHAGE_2
CAP T EU R_1
CAP T EU R_2

Processeur utilis
b
b
a
a
a

Capacit
4
2
2
2
2

Priode
6
20
3
5
5

Les tches restent ordonnances selon un algorithme priorit fixe tel que celui dfini au dbut
de cet exercice. De plus, on souhaite que les priorits soient affectes selon lalgorithme Rate
Monotonic.
Dmontrez quil existe au moins une des tches qui ne respecte pas ses contraintes temporelles.

Question 1.6
En fait, laffectation des tches aux processeurs a et b a t ralise au hasard. En effet, toutes
les tches de notre systme peuvent la fois sexcuter sur le processeur a ou sur le processeur b.
Les processeurs diffrent uniquement par leur rapidit dexcution : le processeur b est 2 fois plus
rapide que le processeur a.
Affectez les tches aux processeurs a et b de sorte que les contraintes temporelles de toutes
les tches soient respectes. Justifiez vos choix.

Deuxime partie : tude du comportement logique de lapplication


Dans cette partie, on ne tient plus compte du caractre priodique des tches de notre vhicule
automobile : les tches sont maintenant apriodiques.
On regarde les synchronisations des tches CAP T EU R_1, CAP T EU R_2 et CAP T EU R_3
lorsquelles accdent leurs ressources partages.
Dans cet exercice, les tches partagent 2 ressources R1 et R2. Pour son fonctionnement,
CAP T EU R_1 a besoin indiffremment de lune des 2 ressources. CAP T EU R_2 na besoin et ne
peut utiliser que la ressource R2. Quant CAP T EU R_3, elle a besoin des deux ressources pour
fonctionner.
1. Sachant que CAP T EU R_3 ne prend pas les deux ressources simultanment, mais quelle les
libre simultanment, proposer un modle de fonctionnement du systme laide des RdP.
2. En vous appuyant sur le graphe des marquages accessibles, montrer que le RdP nest pas
sans blocage.
3. Proposer 2 solutions permettant dviter des situations de blocage dans le fonctionnement
du systme. On reprsentera les RdP correspondants.

Rfrences bibliographiques

Les exercices de ce TD sont inspirs de ceux trouvs dans [COT 00, DEM 99, BUR 97, KRI 97].
A consulter pour des exercices supplmentaires.

[AUD 93] N. Audsley, A. Burns, M. Richarson, K. Tindel, and J. Wellings. Applying New Scheduling
Theory to static priority pre-emptive scheduling . Software Engineering Journal, 8(5) :284292, 1993.
[BUR 97] A. Burns and A. Wellings. Real-time Systems and Programming Languages. Addison Wesley,
1997.
[COT 00] F. Cottet, J. Delacroix, C. Kaiser, and Z. Mammeri. Ordonnancement temps rel. Herms, 2000.
[DEM 99] I. Demeure and C. Bonnet. Introduction aux systmes temps rel. Collection pdagogique de
tlcommunications, Herms, septembre 1999.
[JOS 86] M. Joseph and P. Pandya. Finding Response Time in a Real-Time System . Computer Journal,
29(5) :390395, 1986.
[KRI 97] C. M. Krishna and K. G. Shin. Real-Time Systems. Mc Graw-Hill International Editions, 1997.

10