TD 1 - S.E

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 10

Université Hassan II DE Casablanca

Faculté des sciences AIN Chock


Département des mathématiques et informatique

Module : Système d’exploitation II


TD1 : Les techniques d’ordonnancement des processus

Exercice 1 :
Soit un système monoprocesseur. Ordonnance l’exécution des processus du tableau suivant :

Processus Instant d’arrivée Temps d’exécution


A 0 7 unités de CPU, 4 unités d’E/S
B 1 3 unités de CPU, 3 unités d’E/S
C 2 5 unités de CPU, 2 unités d’E/S

Donner l’assignation des processus avec les algorithmes :

A. FIFO
B. TOURNIQUET
C. PCTER

Déduire la meilleure technique

L’E/S est gérée par la technique FIFO.

On suppose que le quantum est 3.

Solution

L’algorithme FIFO :

Tm = [(11-0) +(14-1) +(17-2)] /3 =13

Page 1
L’algorithme Tourniquet :

Tm = ((20-0) + (9-1) + (16-2)) /3 = 14

L’algorithme PCTER :

Tm = ((14-0) + (9-1) + (18-2)) /3 = 12.66

VU que tm(pcter) < tm(tourniquet) < tm(fifo), la méthode PCTER est la technique la plus adaptée
pour ce cas d’utilisation.

Exercice 2 :
Soit un système monoprocesseur. Ordonnance l’exécution des processus du tableau suivant :

Processus Instant d’arrivée Temps d’exécution


A 0 5 unités de CPU, 2 unités d’E/S, 2 unités CPU
B 1 3 unités de CPU, 1 unités d’E/S
C 2 4 unités de CPU, 3 unités d’E/S
D 3 2 unités de CPU, 2 unités d’E/S

Comparer le temps de traitement moyen des méthodes : FIFO, PCTE et Tourniquet avec un
quantum=2 pour le CPU et FIFO pour l’E/S.

Page 2
Pour simplifier, nous supposerons que l'E/S peut se produire en parallèle de l'exécution CPU
pour les autres processus et ne sera pas spécifiquement ordonnancée pour cette solution.

SOLUTION

L’algorithme FIFO ou FCFS(First Come First Serve):

Le temps de traitement T1 = [(16-0) +(9-1) +(15-2) +(17-3)] / 4 = 12.75

L’algorithme PCTE :

Le temps de traitement T2 = [(9-0) +(13-1) +(19-2) +(9-3)] / 4 = 11

Page 3
L’algorithme Tourniquet :

Le temps de traitement T4 = [(17-0) +(13-1) +(18-2) +(12-3)] / 4 = 18

Exercice 3 :
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) Supposez que le système d’exploitation est composé de deux unités de contrôle


(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 :

Processus Instant d’arrivée Priorité Temps d’exécution


A 0 0 4 unités de CPU, 2 unités d’E/S, 2 unités de CPU
B 2 0 4 unités de CPU, 2 unités d’E/S, 2 unités de CPU
C 3 1 5 unités de 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.

a) Donnez les diagrammes de Gantt montrant l’allocation des deux processeurs, de


l’unité d’E/S. L’accès au CPU est ordonné par la méthode Tourniqué et l’accès à
l’E/S est effectuée selon la méthode FIFO.

Page 4
b) Donnez les diagrammes de Gantt montrant l’allocation des deux processeurs, de
l’unité d’E/S. L’accès au CPU est ordonné par la méthode PCTER et l’accès à l’E/S
est effectuée selon la méthode PCTE.
c) Calculez le temps moyen de traitement. En déduire la technique la plus adaptée.

d) Refaites la question a) et b) en prenant en considération la priorité des processus

SOLUTION

a) Tourniqué (CPU) / FIFO (E/S)

b) PCTER (CPU) / PCTE (E/S)

c) Le temps de traitement de Tourniquet/FIFO est : T1 = [(8-0)+(10-2)+(9-3)] / 3 = 7.33


Le temps de traitement de PCTER/PCTE est : T2 = [(8-0)+(10-2)+(9-3)] / 3 = 7.33

d) Avec la priorité :

Page 5
Tourniqué (CPU) / FIFO (E/S)

Le temps de traitement T1 = [(8-0)+(10-2)+(9-3)] / 3 = 7.33

PCTER (CPU) / PCTE (E/S)

Le temps de traitement T = [(8-0)+(10-2)+(9-3)] / 3 = 7.33

REMARQUE : Pour ce cas de figure nous avons a eu le même résultat pour toutes les
méthodes. Car le seul cas où on a deux processus qui veulent utiliser le processeur est à
l’instant 3. Et dans tous les cas c’est A qui a été choisi.

Exercice 2
On considère deux taches dépendantes C1, C2 et C3 qui comportent respectivement 5 sous
taches, 3 sous taches et 4 sous taches.

Page 6
C1 i C2 i C3 i
4 8
9

6 1 4

3 13 1

5 11

11

1) Expliquer le principe de l’algorithme « temps moyen minimum ».


2) Calculer le temps moyen de traitement de la sous taches 4 de C1.
3) Donner l’assignation des sous taches pour les 3 taches C1 C2 et C3.

SOLUTION

Le temps moyen de chaque sous-tâche :

Page 7
Exercice 3
Le système comporte deux CPUs. On considère les cinq exécutions de processus suivants (la
durée est exprimée en seconde)

Processus Date d’arrivé Durée


P1 0 7
P2 1 4
P3 1 2
P4 2 2
P5 3 1

Page 8
1. Si le temps de commutation est de 0,5 seconde, quel est alors le temps moyen de
traitement dans le cas d'un ordonnancement FIFO, TOURNIQUET.
2. Qu'en déduisez-vous ?

SOLUTION

La méthode FIFO :

Le temps d’exécution moyen de FIFO est :

Tm= [(7-0) + (5-1) + (7.5-1) +(9.5-2) +(9-3)] / 5 = 6.2

L’algorithme Tourniquet avec quantium=3

Le temps d’exécution moyen de TOURNIQUET est :

Tm= [(10.5-0) + (9.5-1) + (5.5-1) +(6.5-2) +(8-3)] / 5 = 6.6

Page 9
2) On remarque que le temps de traitement moyen est important. Ce qui s’explique par la
présence des processus avec un temps de traitement important (P1) ce qui nécessite plusieurs
exécutions et ainsi un temps de commutation qui se répète.

Page 10

Vous aimerez peut-être aussi