Vous êtes sur la page 1sur 4

Faculté des Sciences de Tunis

Département des Sciences de l'Informatique

Systèmes d’exploitation
TD - Ordonnancement des processus

Les algorithmes d’allocation processeur:


1. FCFS: First Come First Served
Les processus accèdent au processeur dans l’ordre d’arrivée, et monopolisent le
processeur jusqu’à leur terminaison.
Rq : Cette méthode est indépendante du temps d’exécution des processus.

2. SJF : Shortest Job First (Le plus court d’abord)


Le critère de sélection est basé sur le Temps d’exécution (Privilégie les petits processus)
Rq :Risque d’attente infinie pour les autres.

L’algorithme SJF peut être appliqué Avec ou Sans préemption.

Les algorithmes d’allocation processeur :

1 . Round Robin ou Tourniquet


3. Les processus accèdent au processeur, chacun à leur tour, pour un temps déterminé à
l’avance : Utilisation de la notion de QUANTUM (Unité de temps d’utilisation du
processeur)
4. Principe :
a. Allocation par multiple de quantums
b. Allocation du processeur au processus Pi
c. Fin du quantum
i. Pi terminé → Quitte la file d’attente
ii. Pi non terminé → Revient à la fin de la file
iii. Allocation du processeur au processus Pi+1
d. Fin processus < Fin Quantum
i. Allocation du processeur au processus Pi+1

2. Priorité :
Associer à chaque processus un niveau de priorité (le critère de sélection est celui du
Processus le plus prioritaire).

L’algorithme avec priorité peut être appliqué Avec ou sans préemption.

1
Exercice 1 : Algorithmes FCFS, SJF sans préemption et SJF avec préemption
Soit le tableau de processus suivant :
Processus Temps d’exécution Temps d’arrivée
A 3 0
B 6 1
C 4 4
D 2 6
E 1 7

Représenter graphiquement l’affectation des taches et calculer temps moyen de traitement et


le temps moyen d’attente :
1. Représenter graphiquement l’affectation des taches et calculer le temps moyen de
traitement ainsi que le temps moyen d’attente en utilisant FCFS.
2. Représenter graphiquement l’affectation des taches et calculer le temps moyen de
traitement ainsi que le temps moyen d’attente en utilisant SJF sans préemption.
3. Reprendre la question 2, en considérant l’algorithme SJF avec préemption.

Exercice 2: Algorithme Round Robin

Soit le tableau de processus suivant :


Processus Temps d’exécution Temps d’arrivée
T1 9 0
T2 10 5
T3 7 10
Le temps de début d’exécution est t = 0.
1. Représenter graphiquement l’affectation des taches en utilisant Round Robin en supposant
que la valeur du Quantum est Qt=3.
2. Représenter graphiquement l’affectation des taches en utilisant Round Robin en supposant
que la valeur du Quantum est Qt=10. Que peut-on déduire ?

Exercice 3 : Algorithme avec priorité

On considère la table des processus suivants :

Processus Date d’arrivée Temps Niveau de


d’exécution priorité
P1 06h21mn 5mn 3
P2 06h23mn 3mn 2
P3 06h21mn 4mn 1
P4 06h31mn 6mn 3
P5 06h34mn 2mn 4
Représenter graphiquement l’affectation des taches et calculer le temps moyen de réponse et
le temps moyen d’attente en utilisant :
1. l’algorithme avec priorité sans préemption sachant que la priorité est croissante.
2. l’algorithme avec priorité avec préemption sachant que la priorité est croissante.

2
Exercice 4:
NB Pour toutes les questions, on négligera les temps de commutation de contextes.
On considère un système monoprocesseur et les quatre processus P1, P2, P3 et P4 qui
effectuent du calcul et des entrées/sorties avec un disque selon les temps donnés dans le tableau
ci-dessous. A la date t=0 les processus sont disponibles dès le début, dans cet ordre. On
considère l’unité de temps en millisecondes.
Description des processus
P1 30ms calcul 70ms E/S 20ms calcul 10ms E/S 10ms calcul
P2 40ms calcul 20ms E/S 30ms calcul 10ms E/S 10ms calcul
P3 20ms calcul 30ms E/S 20ms calcul - -
P4 70 ms calcul - - - -
Question 1 :
Si le système n’est pas multiprogrammé et que la stratégie d’ordonnancement est FIFO,
Présentez sur un diagramme de Gantt l’ordonnancement des 4 processus. Calculer dans
ce cas le temps moyen de traitement et le temps moyen d’attente.
Question 2 :
Considérant maintenant le contexte d’un système multiprogrammé. L'ordonnancement du
processeur et du disque suivent chacun la politique FIFO sans préemption.
Présentez sur un diagramme de Gantt l’ordonnancement des 4 processus. En mettant en
évidence le contenu de la file des processus prêts et bloqué ainsi que l’état de chaque
processus à chaque instant.
Question 3 :
On considère dans cette question que l'ordonnancement sur le processeur se fait selon une
politique basée sur la priorité avec préemption : le processus élu à un instant t est le
processus prêt de plus forte priorité.
Le processus P1 de priorité 1 est le plus prioritaire, P4 est le moins prioritaire.
Processus P1 P2 P3 P4
Priorité 1 3 2 4
On considère que l'ordre de services des requêtes d'E/S pour le disque se fait toujours
selon une politique FIFO.
Présentez sur un diagramme de Gantt l’ordonnancement des 4 processus. En mettant en
évidence le contenu de la file des processus prêts et bloqué ainsi que l’état de chaque
processus à chaque instant.
Question 4 :
On considère que l'ordonnancement sur le processeur se fait selon la politique
Round Robin avec un quantum de 20 ms. On suppose que à la date t=0 les 4
processus sont prêt dans l’ordre P1, P2, P3 et P4. On considère que l'ordre de
services des requêtes d'E/S pour le disque se fait en FIFO.
Présentez sur un diagramme de Gantt l’ordonnancement des 4 processus. En
mettant en évidence le contenu de la file des processus prêts et bloqué ainsi
que l’état de chaque processus à chaque instant.
3
Exercice 5
L'ordonnancement dans les systèmes récents est considéré comme mixte. Il s'agit d'une
combinaison de trois classes d'ordonnancement utilisées selon le type de processus qui
s'exécute :

- politique FIFO pour les tâches très prioritaires (temps réel).


- politique Round Robin pour les tâches système.
- politique Round Robin multi-niveaux pour les tâches utilisateur.

1- Expliquer en quelques lignes les principes de chacune des stratégies d’ordonnancement


citées dans ce système réel. A savoir les stratégies FIFO, Round Robin et Round Robin
multi-niveaux.

2- On considère un exemple de système mixte d'ordonnancement composé de trois files :


- File 1 pour les tâches très prioritaires, Temps Réel (TR), utilise la stratégie FIFO.
- File 2 pour les tâches système (SYS), utilise Round Robin avec quantum=3
- File 3 pour les Tâches utilisateurs (USR), utilise Round Robin avec Quantum=2.

Dans ce système, l'élection d'un processus suit un protocole simple. Pour chaque élection,
l'Ordonnanceur consulte la file1 la plus prioritaire (tâches temps réel). Si des processus sont
en attente, il les exécute en tenant compte de la politique de la file (FIFO). Si aucun
processus n'est en attente dans cette première file, l'Ordonnanceur passe à la file 2 suivante
(Tâches système), il exécute les tâches en suivant la stratégie Round robin avec un quantum
= 3. Enfin quand les deux files précédentes sont vides, l’Ordonnanceur passe à la file 3 en
suivant la stratégie Round robin avec un quantum = 2. Cette opération s'effectue à chaque
élection d’un processus.

On considère l'exécution des processus suivants :

Processus Type Date Durée d’exécution


d’arrivée
1 TR 0 2
2 SYS 0 3
3 USR 2+e 6
4 TR 3+e 1
5 TR 4+e 2
6 SYS 9+e 4
7 SYS 10+e 3
8 USR 15+e 5
9 TR 20+e 3
10 SYS 22+e 3

Question
Donnez le diagramme de Gantt de l'exécution des processus en utilisant la politique mixte.
Indiquer à chaque unité de temps quel est le processus en cours d’exécution et quels sont
les tâches présentes dans chacune des trois files.

Vous aimerez peut-être aussi