![]()
Précédent : Diffusion fiable uniforme temps
réel Remonter : Résultats nouveaux Suivant :
Contrôle
d'admission par expression paramétrique
Participant : Patrice Carrère.
Mots clés : temps réel, ordonnancement, condition nécessaire et suffisante de faisabilité, analyse de complexité .
Cette étude porte sur les conditions de faisabilité de
l'algorithme d'ordonnancement par échéance la plus petite en
premier, Earliest Deadline First (EDF). Nous considérons un
problème d'ordonnancement centralisé de tâches non concrètes
périodiques
= {
,...,
} pour lequel EDF
a été prouvé optimal. On rappelle que, par opposition aux tâches
concrètes pour lesquelles on connaît les valeurs des instants
d'arrivée, une telle connaissance n'est pas accessible dans le
cas non concret. Pour chaque tâche
, les demandes d'activation surviennent
périodiquement toutes les Ti unités de temps.
Toute tâche
possède une échéance relative de
terminaison, notée Di, de sorte que toute
occurrence de
dont l'activation est
demandée en t = a devra voir son exécution terminée
en t = a + Di au plus tard. Les
tâches sont interruptibles c'est-à-dire qu'elles peuvent faire
l'objet d'une ou plusieurs réquisitions du processeur au cours de
leur exécution.
Dans la littérature [SSRB98], il existe deux
conditions de faisabilité nécessaires et suffisantes (CNS) pour
le couple (problème, algorithme) considéré. La première est basée
sur la demande processeur
et la seconde sur les pires
temps de réponse
. Selon ces deux CNS, un jeu
de tâches non concrètes périodiques
est
faisable par EDF si, et seulement si,
h(t)
t,
ou
ri
Di,
pour tout
. Ces deux tests de faisabilité sont de
complexité pseudo polynomiale, respectivement en
O(n2) et
O(n3).
Dans un premier temps, nous introduisons une nouvelle
expression analytique des temps de réponse. Grâce à ses
propriétés, nous mettons en évidence qu'il est possible de
ramener le test de faisabilité basé sur le calcul des pires temps
de réponse des tâches de
à une
complexité pseudo polynomiale en O(n2).
Contrairement à bon nombre d'idées reçues, nous établissons ainsi
que le calcul des temps de réponse n'est pas plus coûteux avec
EDF qu'avec tout algorithme d'ordonnancement à priorités fixes
(le test de faisabilité étant de complexité pseudo polynomiale en
O(n3)).
Dans un second temps, toujours en se basant sur l'expression
analytique des temps de réponse que nous avons introduite, nous
énonçons une nouvelle CNS basée sur le calcul du temps de réponse
de la tâche de plus petite échéance relative de terminaison.
Ainsi, un jeu de tâches non concrètes périodiques
est faisable par EDF si, et seulement si, on vérifie
rk
Dk
avec
Dk = min{Dj},
j
[1,
n]. Le test de faisabilité correspondant est également de
complexité pseudo polynomiale en O(n2).
Cette CNS est la conséquence d'un résultat plus général. En
effet, nous avons mis en évidence que si
ri
Diquelque soit
, alors on vérifie également
rj
Dj
pour toute tâche
telle que
Dj
Di.
C'est-à-dire qu'indépendamment des durées d'exécution, si EDF est
capable de garantir le service d'une tâche
en Di unités de temps, alors
il en est de même pour toute tâche
vérifiant
Dj
Di,
en Dj unités de temps. Par ailleurs, on montre
que les pires temps de réponse sont croissants avec les échéances
relatives de terminaison. Ces propriétés sur les échéances
relatives constituent des résultats non triviaux pour EDF dont le
critère d'ordonnancement est basé sur des échéances absolues (et
non relatives).
Dans un troisième temps, nous montrons de manière formelle que
les CNS de la littérature, c'est-à-dire celles basées sur la
demande processeur h et celles sur les pires temps de
réponse ri, sont équivalentes. Pour y parvenir,
nous prouvons que la nouvelle CNS est équivalente à chacune des
deux autres CNS. C'est-à-dire que
h(t)
t,
équivaut à
rk
Dk,
avec
Dk = min{Dj} et que
ri
Di,
![]()
équivaut à
rk
Dk,
avec
Dk = min{Dj}. Ce résultat
n'avait, à notre connaissance, jamais été formellement
établi.
Pour compléter cette étude, nous nous sommes intéressés à un
problème d'ordonnancement centralisé connexe, la seule différence
avec le précédent résidant dans la non interruptibilité des
tâches. Notons que, pour ce problème, EDF est également optimal
et que l'on retrouve dans la littérature les deux CNS basées sur
la fonction h et les temps de réponse. Cependant, nous
n'avons pu généraliser l'expression analytique des temps de
réponse que nous avons introduite en préemptif. Dans le cas non
préemptif, nous ne pouvons espérer améliorer la complexité des
tests de faisabilité. De même,
ri
Di
n'entraîne pas en général
rj
Dj,
pour tout
tel que
Dj
Di.
En revanche, dans le cas particulier de
, la tâche de plus petite échéance relative de
terminaison, nous vérifions bien que
rk
Dk
implique
rj
Dj
pour tout j
[1, n], mettant
ainsi en évidence qu'un jeu de tâches non concrètes périodiques
(non interruptibles) est faisable par EDF si, et seulement si,
rk
Dk.
Cette CNS permet, comme dans le cas préemptif, d'établir par
transitivité que les CNS classiques basées sur la fonction
h et les temps de réponse sont équivalentes.