Cours Ordonnancement

6
Département de génie électrique Professeur : Jean-Marc Beaulieu Systèmes en temps réel Exercices du chapitre 9 – Ordonnancement de tâches Numéro 1 (S. Gely, hiver 2001) Supposons les trois (3) tâches périodiques à « échéance sur requête » suivantes : Tâche Échéance et période (cycle) Temps d’exécution (cycle) Priorité A 100 35 2 B 50 30 1 C 100 12 3 La tâche A exécute le code suivant (on néglige les autres éléments de la tâche A) xx = 2*x; for (k = 1; k< 4; k++) { a[k] = xx; b[k] = b[k] + a[k] + 2*k*k; } Le calcul du nombre de cycles nécessaires est le suivant : Nombre Cycle MULT 7 14 ADD 6 6 TEST 4 4 Incrément 3 3 STORE 8 8 Total 35 MULT = 2 cycles/instruction et les autres instructions sont 1 cycle. Notez que l’on néglige les LOAD. a) Dessiner le diagramme de la séquence d’exécution des tâches. b) Calculer le facteur d’utilisation? De combien de cycles la tâche A doit être réduite pour que le système ne soit plus en surcharge? c) Optimiser la tâche A et redessiner le diagramme de la séquence d’exécution des tâches. d) Calculer le temps d’exécution de chaque tâche. Utiliser la version optimisée de la tâche A.

description

Ordonnancement

Transcript of Cours Ordonnancement

Dpartement de gnie lectrique Professeur: Jean-Marc Beaulieu Systmes en temps rel Exercices du chapitre 9 Ordonnancement de tches Numro 1(S. Gely, hiver 2001) Supposons les trois (3) tches priodiques chance sur requte suivantes : Tchechance etpriode (cycle) Temps dexcution (cycle) Priorit A100352 B50301 C100123 La tche A excute le code suivant (on nglige les autres lments de la tche A) xx = 2*x; for (k = 1; k< 4; k++) { a[k] = xx; b[k] = b[k] + a[k] + 2*k*k; } Le calcul du nombre de cycles ncessaires est le suivant : NombreCycle MULT714 ADD66 TEST44 Incrment33 STORE88 Total35 MULT = 2 cycles/instruction et les autres instructions sont 1 cycle. Notez que lon nglige les LOAD. a)Dessiner le diagramme de lasquence dexcution des tches. b)Calculer le facteur dutilisation? De combien de cycles la tche A doit tre rduite pour que le systme ne soit plus en surcharge? c)Optimiser la tche A et redessiner le diagramme de la squence dexcution des tches. d)Calculer le temps dexcution de chaque tche. Utiliser la version optimise de la tche A. ELE542Systmes ordins en temps rel 2Numro 2 Un systme en temps rel comprend trois (3) tches dont les caractristiques sont : TchePriodeTemps de calcul A20 ms5 ms B80 ms40 ms C40 ms10 ms Les tches sont priodiques avec D = P. a)Enutilisantlargledordonnancementtauxmonotone ,dterminerlaprioritdechaque tche. b)Dterminerlefacteurdutilisation.Quepeut-onapprendredutestdordonnancementbassur le facteur dutilisation? c)Calculerletempsdexcution(pirecas)pourchaquetche?Est-cequeleschancessont respectes? d)Tracer un diagramme temporel et vrifier que les chances sont respectes. Numro 3 (Stallings/Cours systme dexploitation) Politiques dordonnancement Le tableau suivant donne le temps darrive dans la file dattente pour le CPU (file prt--sexcuter) et le temps de service ncessaire pour leur calcul pour cinq (5) processus. Processus ABCDE Temps darrive013912 Temps de service35255 Tracer la squence dexcution des processus pour les politiques dordonnancement suivantes : Premier-arriv/premier-servi Tourniquet (Round-Robin) avec un quantum de 1 Tourniquet (Round-Robin) avec un quantum de 4 Plus court dabord Numro 4 (Stallings/Cours systme dexploitation) Politiques dordonnancement Le tableau suivant donne le temps darrive dans la file dattente pour le CPU (file prt sexcuter) et le temps de service ncessaire pour leur calcul pour cinq (5) processus. Processus ABCD Temps darrive0123 Temps de service1919 Tracer la squence dexcution des processus pour les politiques dordonnancement suivantes : Premier-arriv/premier-servi Tourniquet (Round-Robin) avec un quantum de 1 Tourniquet (Round-Robin) avec un quantum de 4 Plus court dabord ELE542Systmes ordins en temps rel 3Numro 5 Un systme avant-plan/arrire-plan possde les trois (3) cycles suivants : TchePriorit (1 = plus haute priorit) PriodeTemps de calcul A110 ms4 ms B320 ms5 ms C240 ms10 ms D---arrire-plan3 ms Dans ce tableau le temps de changement de contexte est ignor. a)Dessiner le diagramme de squence pour ce systme. b)Quel est le facteur dutilisation? c)Redessiner le diagramme de squence en tenant compte des changements de contexte. Chaque changement de contexte demande 1 ms.d)Quel est le facteur dutilisation en tenant compte des changements de contexte? Numro 6 (Cottet et al., Chapitre 2) Ordonnancement On considre les quatre (4) types dordonnancement premptifs suivants :-Ordonnancement priorit fixe selon la priode ( taux monotone), not RM. -Ordonnancement priorit fixe selon le dlai critique ( chance monotone), not ID. -Ordonnancement priorit dynamique selon lchance ( chance la plus proche), not ED. -Ordonnancement priorit dynamique selon la laxit dynamique (laxit minimum ), not LL. On considre une configuration T de trois (3) tches {T1, T2, T3} dfinies par : -T1 (r0= 0, C=1, D=3, P=3)-T2 (r0= 0, C=1, D=4, P=4) -T3 (r0= 0, C=2, D=3, P=6) a)Donner le facteur dutilisation et la valeur de la priode dtude. b)Dcriregraphiquementlessquencesdexcutionobtenuesdanslecasdesquatre (4) ordonnancements RM, ID, ED et LL pour cette configuration. Indiquer les cas o les chances ne sont pas respectes. ELE542Systmes ordins en temps rel 4Numro 7 (Cottet et al., Chapitre 2) Ordonnancement et tches apriodiques OnconsidreuneconfigurationTdetrois(3)tchespriodiquesetindpendanteschancesur requte. Les tches sont dfinies par les paramtres temporels suivants : -T1 (r0= 0, C=1, D=4, P=4)-T2 (r0= 0, C=2, D=6, P=6) -T3 (r0= 0, C=2, D=8, P=8) tude de lordonnancementOrdonnancement taux monotone. On applique la configuration T un ordonnancement premptif priorit statique selon la plus petite priode, not RM.a)DonnerlefacteurdutilisationUet conclure surlordonnancementparRMenutilisantletest dordonnancement.b)Donnerlavaleurdelapriodedtudeettracerlediagrammetemporeletlasquence dexcution correspondante en incluant un diagramme pour les temps creux. Ordonnancementchancemonotone.OnappliquelaconfigurationTunordonnancement premptif priorit dynamique selon lchance la plus proche, not ED.c)tantdonnlefacteurdutilisationU,est-cequeletestdordonnancementnouspermetde conclure sur la faisabilit de lordonnancement par ED? Si oui, quelle conclusion est possible. d)Tracer la squence dexcution et comparer avec celle obtenue en b). tude de lordonnancement en prsence de tches apriodiquesEnsupplmentdelaconfigurationTprcdente,lesystmeentempsreldoittraiterdestches apriodiques. On considre deux (2) cas darrive dune tche apriodique : -Cas A chance 6 : T4 (r= 9, C=2, D=6)-Cas B chance 10 : T4 (r= 9, C=2, D=10) Traitement larrire plan avec la politique du meilleur effort .e)DonnerletempsderponsedelatcheapriodiqueT4.Est-cequelchanceestrespecte dans les deux cas darrive? Traitement avec un serveur priodique. Cette mthode consiste ajouter une tche priodique dont le but est de traiter les tches apriodiques. Cette approche vise garantir un temps dexcution minimum pour les tches apriodiques. Cette tche serveur est ajoute la configuration initiale.Dans le cas prsent, nous ajoutons une tche serveur Tserveur avec les caractristiques suivantes :Tserverur(r0=0, C=1, D=6, P=6).Nous obtenons alors une nouvelle configuration de tches Ts contenant quatre (4) tches priodiques.f)Donner le facteur dutilisation U et la priode dtude de cette nouvelle configuration Ts

g)tantdonnlefacteurdutilisationU,concluresurlordonnancementRM.Tracerle diagrammetemporeletlasquencedexcutioncorrespondante.Est-ilpossiblederespecter lchance de la tche apriodique T4 (considrer les deux (2) cas)? h)tant donn le facteur dutilisation U, conclure sur lordonnancement ED. Tracer le diagramme temporel et la squence dexcution correspondante. Est-il possible de respecter lchance de la tche apriodique T4 (considrer les deux (2) cas). ELE542Systmes ordins en temps rel 5Numro 8 (Cottet et al., Chapitre 2) Ordonnancement et tches apriodiques On considre la configuration T de tches priodiques suivante :-Tp1 (r0= 0, C=5, D=25, P=30)-Tp2 (r0= 0, C=10, D=40, P=50) -Tp3 (r0= 0, C=20, D=55, P=75) Cette configuration est ordonnance selon lalgorithme chance monotone . a)LaconfigurationTest-elleordonnanable?Dessinerlediagrammetemporelenincluantles temps creux.b)Considrer les tches apriodiques strictes suivantes : -Tap4 (r=40, C=10, D=15)-Tap5 (r=70, C=15, D=35) -Tap6 (r=100, C=20, D=40) -Tap7 (r=105, C=5, D=25) -Tap8 (r=120, C=5, D=15) Parmicestches,lesquellespeuvent-ellestreacceptesauseindeTsanschangerlasquence dexcutiondestchespriodiquestrouvesena)?(Considrerlacceptationdechaquetche individuellement en fonction de leur squence darrive) Numro 9 (Cottet et al., Chapitre 2) Ordonnancement et tches apriodiques On considre la configuration T de tches priodiques chance sur requte suivante :-Tp1 (r0= 0, C=5, D=P=30)-Tp2 (r0= 0, C=10, D=P=50) -Tp3 (r0= 0, C=25, D=P=75) Cette configuration est ordonnance selon lalgorithme statique taux monotone (RM). a)LaconfigurationTest-elleordonnanableselonRM?Dessinerlediagrammetemporelen incluant les temps creux.b)Considrer les tches apriodiques strictes suivantes : -Tap4 (r=5, C=12)-Tap5 (r=40, C= 7) -Tap6 (r=105, C=20) Si on utilise un traitement de type arrire-plan, calculer les temps de rponses de chacune des trois tches apriodiques Tap4, Tap5 et Tap6 . c)On considre maintenant un traitement par serveur priodique (voir question 5) avec une tche serveurdepriode25etdecapacit5[Tserveur(r0=0,C=5,P=25)].Lanouvelleconfiguration est-elleordonnanable,selonRM?Dessinerlediagrammetemporeletcalculerlestempsde rponses de chacune des trois (3) tches apriodiques Tap4, Tap5 et Tap6 . ELE542Systmes ordins en temps rel 6Numro 10(G. Bois, Polytechnique) Ordonnancement taux monotone ConsidrantlordonnancementRM(RateMonotonic)(pluslapriodeestpetite,pluslaprioritest grande) : a)laidedelaconditiondordonnancementdeLiuet/oudelanalysedutempsderponse,en vousbasantsurlepiretempsdexcution,dmontrerquelestchesdelatablesuivantene peuvent tre ordonnances. TchesPriodePire temps dexcutionTemps dexcution en moyenne T11002010 T21503025 T32107040 T440010020 b)Supposer que les tches T1, T2 et T4 possdent chacune une contrainte dure qui doit toujours tre respecte, alors que la tche T3 possde une contrainte plus douce qui doit tre respecte en moyenne. On dcide de remplacer la tche T3 par deux (2) tches T3 et T3, ayant chacune unepriodedeux(2)foispluslonguequeT3.[Donc,T3(C=70,P=420)etT3(C=70, P=420)]. b.1) laide de la condition dordonnancement de Liu et/ou de lanalyse du temps de rponse, dmontrercommentonpeut ainsi assurer un ordonnancement de T1, T2,T4 quirespecte chaque contrainte dure.b.2)En considrant le temps dexcution moyen des tches (au lieu du pire cas), peut-on dire lordonnancementdetouteslestchesestpossible?[Autrementdit,enmoyenne,est-ce T3 et T3 satisfont leur contrainte respective ]?