Exercice Corrigé Ordonnancement Des Processus – Partie 4
L‘ordonnancement du processus est à la base des systèmes d’exploitation multiprogrammés. En répartissant l’unité centrale entre les processus, le système d’exploitation peut rendre l’ordinateur plus productif. Dans ce chapitre, nous présentons des exercices corrigés sur les concepts de base de l’ordonnancement, l’idée d’allocation de ressources et discutons en détail de l’ordonnancement de l’unité centrale. FCFS, SJF, Round-Robin, Priorité et les autres algorithmes d’ordonnancement devraient être familiers à vous.
Exercice 1: Pourcentage d’inactivité du CPU
Considérons trois processus, arrivant tous au temps zéro, avec un temps d’exécution total de 10, 20 et 30 unités respectivement. Chaque processus passe les premiers 20 % de son temps d’exécution à faire des E/S, les 70 % suivants à faire des calculs et les derniers 10 % à refaire des E/S. Le système d’exploitation utilise un algorithme d’ordonnancement basé sur l’algorithme d’ordonnancement Shortest Remaining Time First (SRTF) et planifie un nouveau processus soit lorsque le processus en cours est bloqué sur les E/S, soit lorsque le processus en cours termine sa rafale de calcul. Supposons que toutes les opérations d’E/S puissent se chevaucher autant que possible. Quel est le pourcentage d’inactivité de l’unité centrale (CPU) ?
A 0%
B 10.6%
C 30.0%
D 89.4%
Exercice 2: SRTF « plus court temps restant en premier »
Considérons les 4 processus suivants avec un temps de rafale (temps d’exécution). Dessinez l’ordre d’exécution des processus à l’aide d’un diagramme de Gantt (ligne temporelle) en utilisant l’algorithme d’ordonnancement SRTF « plus court temps restant en premier », et calculez le temps d’attente moyen et le temps moyen de rotation.
+-----------+-----------------+--------------------------------------+ | Processus | Temps d'arrivée | Temps de rafale | | | |------------+------------+------------+ | | | Rafale E/S | Rafale CPU | Rafale E/S | +-----------+-----------------+------------+------------+------------+ | P1 | 0 | 3 | 2 | 2 | +-----------+-----------------+------------+------------+------------+ | P2 | 0 | 2 | 4 | 1 | +-----------+-----------------+------------+------------+------------+ | P3 | 2 | 1 | 3 | 2 | +-----------+-----------------+------------+------------+------------+ | P4 | 5 | 2 | 2 | 1 | +-----------+-----------------+------------+------------+------------+
Exercice 3: Ordonnancement par priorité (Priority Scheduling)
Considérons les 3 processus suivants avec un temps de rafale (temps d’exécution). Dessinez l’ordre d’exécution des processus à l’aide d’un diagramme de Gantt (ligne temporelle) en utilisant l’algorithme d’ordonnancement par priorité, et calculez le temps d’attente moyen et le temps moyen de rotation. (Un chiffre plus bas signifie une priorité plus élevée).
+-----------+-----------+----------+--------------------------------------+ | Processus | Temps | Priorité | Temps de rafale | | | d'arrivée | |------------+------------+------------+ | | | | Rafale E/S | Rafale CPU | Rafale E/S | +-----------+-----------+----------+--------------------------------------+ | P1 | 0 | 2 | 1 | 5 | 3 | +-----------+-----------+----------+--------------------------------------+ | P2 | 2 | 3 | 3 | 3 | 1 | +-----------+-----------+----------+--------------------------------------+ | P3 | 3 | 1 | 2 | 3 | 1 | +-----------+-----------+----------+------------+------------+------------+
Exercice 4:
Un algorithme d’ordonnancement du CPU détermine l’ordre d’exécution des processus programmés. Étant donné que n processus doivent être ordonnancés sur un processeur, combien y a-t-il d’ordonnances différentes possibles ? Donnez une formule en fonction de n.
Exercice 5:
Considérons les 6 processus suivants avec un temps de rafale (temps d’exécution). Dessinez l’ordre d’exécution des processus à l’aide d’un diagramme de Gantt (ligne temporelle). Si la politique d’ordonnancement du CPU est First Come First Serve (FCFS) et qu’il y a une unité du temps d’attente pour le changement de contexte dans l’ordonnancement des processus, déterminez l’efficacité de l’algorithme.
+-----------------+-----------------+-----------------+ | ID du processus | Temps d'arrivée | Temps de rafale | +-----------------+-----------------+-----------------+ | P1 | 0 | 3 | +-----------------+-----------------+-----------------+ | P2 | 1 | 2 | +-----------------+-----------------+-----------------+ | P3 | 2 | 1 | +-----------------+-----------------+-----------------+ | P4 | 3 | 4 | +-----------------+-----------------+-----------------+ | P5 | 4 | 5 | +-----------------+-----------------+-----------------+ | P6 | 5 | 2 | +-----------------+-----------------+-----------------+