Vous êtes sur la page 1sur 3

IGA-Rabat 2010-2011

Exercices – Ordonnancement des processus

EXERCICE 1
On considère un système monoprocesseur et les 4 processus P1, P2, P3 et P4 qui
effectuent du calcul et des entrées/sorties avec un disque selon les temps donnés ci-
dessous :
Processus P1 : Processus P2 :
Calcul : 3 unités de temps Calcul : 4 unités de temps
E/S : 7 unités de temps E/S : 2 unités de temps
Calcul : 2 unités de temps Calcul : 3 unités de temps
E/S : 1 unité de temps E/S : 1 unité de temps
Calcul : 1 unité de temps Calcul : 1 unité de temps

Processus P3 : Processus P4 :
Calcul : 2 unités de temps Calcul : 7 unités de temps
E/S : 3 unités de temps

Calcul : 2 unités de temps

On considère que l'ordonnancement sur le processeur se fait selon une politique


FIFO : le processus élu à un instant t est celui qui est le plus anciennement dans
l'état prêt. L'ordre de soumission des processus est P1, puis P2, puis P3, puis P4.
A l'instant 0, le processus 1 est servi par le processeur, le processus 2 est en tête de
file d'attente (état prêt), suivi du processus 3 puis du processus 4.),
On considère que l'ordre de services des requêtes d'E/S pour le disque se fait selon
une politique FIFO

1. Sur le graphique suivant, donnez le chronogramme d'exécution des 4


processus P1, P2, P3 et P4.
Vous distinguerez les états des processus : Prêt, Actif et Bloqué
Pour vous guider, la première unité de temps est déjà portée sur le
chronogramme.
Justifiez votre raisonnement, en expliquant la gestion des files d’attentes et les
transitions des processus.
2. Donnez le temps de réponse moyen obtenu.

1/3
IGA-Rabat 2010-2011

EXERCICE 2

Considérez un système d’exploitation qui ordonnance les processus selon l’algorithme du


tourniquet. La file des processus prêts contient des pointeurs vers les entrées de la table des
processus (les descripteurs des processus).
1) Citez deux problèmes qui peuvent survenir si la file contient des éléments identiques (deux
ou plusieurs pointeurs égaux).
2) Supposez que le système d’exploitation est composé de deux unités de contrôle (deux
processeurs CPU1 et CPU2) et d’une unité d’E/S. Chaque processeur exécute l’algorithme du
tourniquet avec un quantum de trois unités de temps (qt = 3). Tous les processus prêts sont
dans une même file d’attente. La commutation de contexte est supposée de durée nulle.
Considérez trois processus A, B et C décrits dans le tableau suivant :

La première ligne signifie que le processus A arrive dans le système à l’instant 0, son
exécution nécessite dans l’ordre 4 unités de temps CPU, 2 unités de temps d’E/S et 2 unités de
temps CPU.
Au départ le processus A est élu par le processeur CPU1.
Si plusieurs événements surviennent en même temps, vous supposerez les priorités suivantes :
- Le CPU1 a la priorité d’accès à la file des processus prêts par rapport au CPU2.
- A la fin d’un quantum, le processus non terminé en cours est suspendu uniquement si la file
des processus prêts n’est pas vide. Le traitement réalisé à la fin d’un quantum est plus
prioritaire que celui d’une fin d’E/S qui, à son tour, est plus prioritaire que l’arrivée de
nouveaux processus dans le système.

2/3
IGA-Rabat 2010-2011

a) Donnez les diagrammes de Gantt montrant l’allocation des deux processeurs, de l’unité
d’E/S et l’évolution des états des files d’attente (celle des processus prêts et celle des
processus en attente de l’unité d’E/S).
b) Calculez le temps moyen de virement (temps moyen de séjour).

EXERCICE 3 : Un ordonnanceur avec quanta et priorités dynamiques

On considère une machine dont l’ordonnanceur de processus possède les caractéristiques


suivantes :
– les priorités des processus varient dynamiquement de 1 à 4, où 1 dénote la plus faible
priorité ; quand un processus ne consomme pas entièrement son quantum, sa priorité est
décrémentée ;
– les quanta varient dynamiquement de 1 à 4 unités de temps (UT) ; quand un processus ne
consomme pas entièrement son quantum, son quantum est décrémenté ;
– le temps de commutation de contexte est de 1 unité de temps ; une commutation de contexte
correspondant au chargement du contexte du premier processus est nécessaire entre l’instant 0
et l’instant 1 ; si l’ordonnanceur ne change pas de processus, il n’a pas besoin de commutation
de contexte ;
– le temps d’exécution de l’algorithme d’ordonnancement est négligeable.
On considère 3 processus P1, P2 et P3 qui ont les caractéristiques suivantes :
– P1 arrive à l’instant 0 et requiert 8 unités de temps pour son exécution ; il provoque au
cinquième instant de son exécution une Entrée-Sortie (E/S) qui dure 8 UT ; sa priorité initiale
est de 3 et son quantum initial de 2 ;
– P2 arrive lui aussi à l’instant 0 et requiert aussi 8 UT ; il provoque aussi au cinquième
instant de son exécution une E/S qui dure 3 UT ; sa priorité initiale est de 2 et son quantum
initial de 3 ;
– P3 arrive lui à l’instant 4 avec une priorité initiale de 4 et un quantum initial de 4 ; il requiert
lui aussi 8UT ; il provoque deux E/S : la première à l’instant 5 de son exécution dure 5 UT et
la seconde à l’instant 7 de son exécution dure 9 UT.

1. Donner le chronogramme d’exécution des 3 processus.


2. Calculer le temps d’attente pour chaque processus puis le temps d’attente moyen.
3. Combien de fois, et à quels instants, l’ordonnanceur s’est-il exécuté ? Ces
informations peuvent-être ajoutées sur le chronogramme.

3/3

Vous aimerez peut-être aussi