Professional Documents
Culture Documents
Nicolas Navet Jean-Pierre Thomesse Equipe TRIO laboratoire LORIA Nancy Ordonnancer cest dfinir un ordre sur lexcution des diffrentes activits dun systme. Lorsquil sagit dun systme informatique ces diffrentes activits se dcomposent en l'excution de tches sur un ou plusieurs processeurs et ventuellement en la transmission de messages sur un rseau de communication. Tout le problme consiste trouver le bon ordonnancement vis--vis des contraintes pesant sur le systme, contraintes qui sont issues de la dynamique du processus physique contrl. Gnralement il sagira de respecter des contraintes de date au plus tard sur les fins dexcution (ou contraintes dchances) mais il existe bien dautres contraintes comme celle de date au plus tt ou de simultanit sur loccurrence dvnements comme le dclenchement dactions. Dans le contexte de lordonnancement, un systme est dit faisable si toutes les invocations successives des activits qui le composent (les diffrentes instances) sont assures de respecter leurs contraintes dchances.
Figure 1 : Ordonnancement sur les processeurs tortue et livre (tir de [5]). Les chances sont respectes sur le processeur Tortue et non sur le processeur Livre, la politique EDF est ici mieux adapte notre objectif de respect des chances que FIFO (dans ce contexte, EDF a t prouve optimale vis--vis des chances, cf. [1]). Dune faon gnrale, des choix judicieux en matire dordonnancement permettront de dimensionner les ressources matrielles au plus juste tout en garantissant que le systme aura les performances requises.
couches comme la couche rseau et la couche transport notamment pour la gestion de trafics diffrentis. Malgr quelques spcificits, comme limpossibilit dinterrompre la transmission dune trame sans perte dinformation, les principales approches de lordonnancement sont identiques pour les tches comme pour les messages et lorsque notre propos sera valable dans les deux contextes, nous parlerons dactivits sexcutant sur une ressource.
Dans le cadre de lordonnancement premptif de tches, EDF a le trs grand avantage d'tre optimale vis--vis de la faisabilit du systme dans des contextes varis (cf. [1]) , cest dire que tout ensemble de tches faisable sous une autre politique que EDF sera ncessairement faisable sous EDF. Le plus gros dsagrment de cette politique est par contre son comportement instable en situation de surcharge : il est alors difficile de prdire quelles instances ne respecteront pas leurs chances et les tches les plus critiques pour lapplication peuvent tre affectes. Nanmoins divers mcanismes ont t proposes pour que EDF ait un comportement plus prvisible en situation de surcharge (cf. [8]). Un autre frein lutilisation de la politique EDF est le fait que la grande majorit des systmes d'exploitation temps rel ne limplmente pas en standard alors que FPP est quasi-systmatiquement propose.
consigne applique
Figure 2 : Dcomposition du temps de rponse de bout en bout du systme informatique dune application de contrle-commande rpartie sur deux sites. Le temps de rponse de bout en bout du systme informatique est la somme des temps de rponse sur les diffrentes ressources impliques : - sur le processeur A, il sagit de lire la valeur en provenance du capteur, deffectuer un ventuel traitement puis dmettre un message destination du site B, - le rseau devra acheminer le message qui pourra tre, dans certains cas, segment en plusieurs trames, - enfin sur le site B, la consigne est calcule puis applique.
En plus de la puissance de traitement des ressources, les dlais observs sur chacun des sites dpendront des autres activits en concurrence, des politiques dordonnancement et de certains choix de conception comme le fait dinvoquer les tches sur loccurrence dun vnement ou de faon priodique. Ces problmes dordonnancement sur des ressources en srie ont t bien tudis et des analyses existent lorsque EDF ou FPP est utilise comme politique dordonnancement processeur sur les diffrents sites (cf. [9] pour FPP et [1] pour EDF).
Conclusion
La parabole du Livre et de la Tortue permet de raliser que les problmes dordonnancement ne se rglent pas uniquement en considrant la puissance des ressources dautant plus que le dimensionnement des ressources au plus juste est gnralement un impratif conomique.
Nous avons fait un tour dhorizon des techniques dordonnancement les plus couramment utilises en voquant leurs avantages et inconvnients majeurs. Il est clair que bien dautres politiques peuvent se justifier vis--vis de certains objectifs particulier comme par exemple maximiser le throughput (on pourra alors utiliser la politique Shortest Processing Time First) ou rpartir quitablement la ressource (une politique de type Round-Robin est bien adapte). Dans la littrature technique, lordonnancement est souvent trop rduit aux analyses dordonnanabilit qui certes, sont des outils importants mais qui ne nous affranchissent pas de ltude des rpercussions des choix faits en matire dordonnancement sur le processus contrl. Dautre part, une rflexion sur lordonnancement sinsre dans une dmarche de conception globale qui ne pourra faire abstraction, pour les systmes les plus critiques, des questions de sret de fonctionnement. [1] J. Stankovic, M. Spuri, K. Ramamritham et G. Buttazzo. Deadline scheduling for real-time systems, Kluwer Academic Publisher, 1998. [2] C.L. Liu et J.W. Layland. Scheduling algorithms for multiprogramming in hard real-time environment. Journal of the ACM, 20(1):40-61, 1973. [3] B. Gaujal, N. Navet et J. Migge. Dual-priority versus background scheduling: a path-wise comparison. Accepte pour publication dans Real-Time Systems, disponible lurl http://www.loria.fr/~nnavet , 2001. [4] H. Chetto et M. Chetto. Some results of the earliest deadline scheduling algorithm. IEEE Transactions on Software Engineering, 15(10):1261-1269, 1989. [5] G. Le Lann. Critical issues for the development of distributed real-time computing systems, Rapport de recherche INRIA n1274, 1990. [6] N. Navet et J. Migge. Fine tuning the scheduling of tasks through a genetic algorithm: application to Posix1003.1b compliant OS. Accepte pour publication dans IEE Proceedings Software, disponible lurl http://www.loria.fr/~nnavet , 2002. [7] M. DiNatale et J.A. Stankovic. Applicability of simulated annealing methods to real-time scheduling and jitter control. In Proceedings of the 16th IEEE Real-Time Systems Symposium, 1995. [8] J. Delacroix. Towards a stable Earliest Deadline Algorithm, Real-Time Systems, 10(3), 263-291, 1996. [9] K. Tindell, A. Burns et A.J. Wellings. An extendible approach for analysing fixed priority hard realtime sytems, Real-Time Systems, 6(2), 1994. [10] N. Navet, Y.-Q. Song et F. Simonot. Worst-case deadline failure probability in real-time applications distributed over CAN, Journal of Systems Architecture, 46(7), 2000, disponible lurl http://www.loria.fr/~nnavet .
Glossaire:
Faisabilit : capacit de toutes les instances dun ensemble dactivits rcurrentes respecter leurs contraintes temporelles. Il sagira en gnral de contraintes dchances. On dit dun systme quil est faisable ou ordonnanable. Analyse dordonnanabilit : calcul qui permet de se prononcer sur la faisabilit dun ensemble dactivits. En pratique, il sagit gnralement didentifier et dtudier la trajectoire du systme la plus pessimiste vis--vis des contraintes vrifier. Politique dordonnancement : algorithme qui dcide de lattribution dune ressource. Cet algorithme peut tre excut pendant lexcution de lapplication (on parle alors dordonnancement en-ligne) mais lordonnancement peut-tre prcalcul hors-ligne et droul pendant lexcution.
FPP (Fixed Priority Preemptive) : politique dordonnancement de tches sous laquelle les diffrentes instances successives dune tche rcurrente possdent toutes la mme priorit et qui, tout instant, attribue le processeur la priorit la plus forte. Dans sa variante nonpremptive, cette politique est aujourdhui largement utilis dans des MAC comme CAN. EDF (Earliest Deadline First) : politique dordonnancement de tches qui, tout instant, alloue le processeur linstance de tches dont lchance est la plus proche. Cette politique est la meilleure du point de vue de la faisabilit et permet le taux dutilisation processeur le plus lev.