Syst`eme d`exploitation MIAGE 2 : Ordonnancement - fil
Transcription
Syst`eme d`exploitation MIAGE 2 : Ordonnancement - fil
Système d’exploitation MIAGE 2 : Ordonnancement Licence MIAGE — Université Lille 1 Pour toutes remarques : [email protected] Semestre 6 — 2008-09 1 Généralités sur les ordonnancements Exercice 1 — Choix d’un quantum. Un algorithme d’ordonnancement d’exécution détermine un ordre d’exécution des processus qu’il ordonne. 1. Si n processus doivent être ordonnés sur une unité centrale, combien d’ordonnancements différents peut-on avoir pour le traitement par lot ? 2. Par des mesures, on montre que les processus s’exécutent en moyenne pendant un temps T avant d’être bloqués en attente d’une entrée-sortie. Une commutation de contexte se fait en S secondes. Pour un ordonnancement circulaire de quantum Q, estimez l’efficacité de l’ordonnancement pour les valeurs de Q suivantes : Q = ∞, Q = S, Q > T, Q ≡ 0, S < Q < T. Pour ce faire, vous devez spécifier au moins 3 critères d’efficacité et expliciter — quand c’est possible — l’impact qu’a le choix du quantum sur eux. Exercice 2 — Choix d’une stratégie. Cinq travaux attendent d’être exécutés. Leurs temps d’exécution sont 9, 6, 3, 5 et x. Dans quel ordre doivent-ils être lancés pour minimiser le temps de réponse moyen ? 2 Manipulation de diagrammes de Gantt Exercice 3 — . Les processus suivants sont tous crées à l’instant 0 et on suppose avoir leur temps d’exécution total ainsi que leurs priorités : Processus temps en cycle priorité P1 10 3 P2 1 1 P3 2 3 1 4 P4 P5 5 2 Une grande priorité est associé à un petit chiffre. 1 Question. 1. Dessinez les diagrammes de Gantt qui illustre l’exécution pour les ordonnancements FCFS, SJF, prioritaire puis FCFS, SJF raffinés par la priorité. 2. Calculer le temps d’exécution moyen dans chaque cas. 3. Calculer le temps de réponse moyen dans chaque cas. Exercice 4 — . Supposons qu’un algorithme d’approximation du temps d’exécution avec α = 1/2 soit utilisé pour prévoir un temps d’exécution théorique τn d’un processus à partir de son exécution tn−1 (temps passé dans le processeur) et du temps d’exécution théorique précédent τn−1 par la formule τn = ατn−1 + (1 − α)tn−1 . On suppose que les processus sont interrompus tous les deux cycle. Processus P1 P2 P3 P4 P5 temps en cycle 8 4 2 5 4 instant d’arrivée 0 0.4 1 1.2 1.3 Dessinez le diagramme de Gantt associée à cette situation. Faites le même travail avec α = 1/3. Exercice 5 — . Considérons un ordinateur munit d’une unique unité centrale et d’un seul disque, l’accès à cette dernière ressource étant exclusif i.e. la requête d’un processus doit se terminer avant qu’une autre requête puisse être prise en compte. Les processus peuvent être dans les états suivants : actif, en attente d’une entrée-sortie ou en attente du processeur. L’état d’attente d’entrée-sortie est divisée en deux sous-état : en attente d’accès au disque et en attente de fin de requête. Les requêtes d’entrée-sortie sont gérées en mode FIFO. On suppose que 4 processus existe dans la machine et se répartissent en deux classes : – P1 et P2 sont dans une classe de processus telle que l’unité centrale est attribuée au processus de priorité la plus grande et peut être préemptée par autre processus en cas d’attente ; – P3 et P4 sont dans une classe de processus telle que l’unité centrale est attribuée au processus de priorité la plus grande pendant un quantum de 10ms. Les différentes états des processus sont résumés dans le tableau suivant : P1 (100) Actif CPU 40ms Lecture disque 50ms Actif CPU 30ms Lecture disque 40ms Actif CPU 20ms P2 (99) Actif CPU 30ms Lecture disque 80ms Actif CPU 80ms Lecture disque 20ms Actif CPU 10ms P3 (99) Actif CPU 40ms Lecture disque 40ms Actif CPU 10ms P4 (98) Actif CPU 80ms Les priorités initiales de chaque processus sont indiquées entre parenthèses. Cette priorités est changé chaque fois que le processus quitte l’état d’attente en suivant la formule : Nouvelle priorité = ancienne priorité − temps d’utilisation du processsus . 10 Dessinez le chronogramme (processus en ordonnée et temps en abscisse, avec l’état en correspondance) de chaque processus. Rev: 43 2 (09-04-2009) E/S XXXXX XXXX Attente XXXXX Prêt Actif XXXX XXX XX E/S XXXXXXXX XX Attente XX Prêt XXXX XX Actif XXX XXXX XXXX X E/S XXXX Attente XXXX Prêt XXXXXXX XXXX X X XX Actif X X X X X E/S Attente Prêt XXXXXXXX XXXX X XXXXXXXXXXXX X Actif X X X X XXXX Rev: 43 3 (09-04-2009)