Vous êtes sur la page 1sur 18

Solution des séries d’exercices - Module SD -

Master1.

Dr. Djihane BABAHENINI.

17 octobre 2022
TABLE DES MATIÈRES

1 Solution de la série d’exercice n°1 - Rappels sur les systèmes d’ex-


ploitation centralisés. 4
1 Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Exercice 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1 Expliquer l’algorithme d’ordonnancement ≪ Le plus court d’abord
≫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Ordonnancement . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Exercice2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1 Ordonnancement SRT . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Ordonnancement tourniquet (round robin) . . . . . . . . . . . 10
3.3 Ordonnancement round robin (quantum = 10) . . . . . . . . . 12
3.4 Ordonnancement round robin (quantum = 3) . . . . . . . . . 13

2 Solution de la série d’exercice n°2 - État global des systèmes dis-


tribués (partie 1). 14
1 Exercice 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.1 Extraire les évènements locaux, d’émissions et de réceptions
de messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2 Que signifie la relation de causalité entre deux événements ? . 15
1.3 Que signifie la relation de précédence causale ? Quels sont ses
différents types ? . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4 Que signifie la concurrence de deux événements ? . . . . . . . 16

1
TABLE DES MATIÈRES Dr. Djihane BABAHENINI

1.5 Quels sont les paires d’évènements concurrents dans la liste


suivante : (a,b), (y,t), (g,k), (q,y), (h,u), (r, x) . . . . . . . . . 16
1.6 Une coupure C est l’ensemble des d’évènements tels que si e
∈ C et e′ ( précède localement e), alors e′ ∈ C. . . . . . . . . 16
2 Exercice 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1 Construire les ensembles Passé, Futur et Concurrent de l’évènement
e23 en utilisant la relation de causalité . . . . . . . . . . . . . 17
2.2 Identifier les coupures cohérentes. Justifier. . . . . . . . . . . . 17

Page 2/17 17 octobre 2022


TABLE DES FIGURES

1.1 Etats du processus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6


1.2 Ordonnancement FIFO. . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Ordonnancement SJF. . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Ordonnancement SRT. . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 Ordonnancement round robin (q=10). . . . . . . . . . . . . . . . . . . 12
1.6 Ordonnancement round robin (q=3). . . . . . . . . . . . . . . . . . . 13

2.1 Schéma 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Schéma 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3
CHAPITRE 1

SOLUTION DE LA SÉRIE
D’EXERCICE N°1 - RAPPELS SUR LES
SYSTÈMES D’EXPLOITATION
CENTRALISÉS.

4
1. Questions Dr. Djihane BABAHENINI

1 Questions
1- Quelle est l’élément principal d’un système d’exploitation centra-
lisé ?
L’élément principal d’un système d’exploitation centralisé est le noyau qui représente
les fonctions fondamentales du système d’exploitation telles que la gestion de la
mémoire, des processus, des fichiers, des entrées-sorties principales, et des fonction-
nalités de communication.

2- Donner les différences entre un système d’exploitation centralisé et


système d’exploitation distribué ?

— Un système d’exploitation centralisé est une interface entre l’utilisateur et le


matériel. Un ordinateur se compose de processeurs, de mémoires, d’horloges,
de disques,... Donc un système d’exploitation consiste à contrôler l’allocation
des processeurs, des mémoires et des périphériques d’E/S entre les différents
programme.
— Un système d’exploitation distribué est un ensemble de machines reliées entre
eux par des canaux de communication. Les SE de ces machines coopèrent et
collaborent pour exécuter une application distribuée.
SE SD
Localisation sur la même machine réseau
Mémoire une seul mémoire centrale pas de mémoire partagée
Horloge un seul horloge chaque noeud a son propre horloge
Ressource accès local partage des ressource
Tolérance aux pannes non oui
3- Peut-on appliquer les mécanismes d’ordonnancement et de synchroni-
sation des systèmes centralisés dans les systèmes distribués ? Justifier.
Non, on ne peut pas appliquer les mécanismes d’ordonnancement et de synchronisa-
tion des systèmes centralisés dans les systèmes distribués ?, car il existe un horloge
local pour chaque noeud afin de dater les évènements locaux, la synchronisation
dans ce cas sera différente.

On considère un système monoprocesseur dans lequel les processus par-

Page 5/17 17 octobre 2022


1. Questions Dr. Djihane BABAHENINI

tagent un disque comme seule ressource (autre que le processeur). Cette


ressource n’est accessible qu’en accès exclusif et non requérable, c’est-à-
dire qu’une commande disque lancée pour le compte d’un processus se
termine normalement avant de pouvoir en lancer une autre. Un proces-
sus peut être en exécution, en attente d’entrée-sortie ou en attente du
processeur.
Expliquer le schéma suivant représentant les états possibles d’un proces-
sus et les transitions entre ces états.

Figure 1.1 – Etats du processus.

Un processus peut se trouver dans chacun des états suivants :

1. actif (élu) : lorsqu’un processus a toutes ses ressources, y compris le proces-


seur. Les instructions sont en cours d’exécution (en train d’utiliser le CPU).

2. prêt : lorsqu’un processus a toutes ses ressources à l’exception du processeur,


donc il attend d’être affecté à un processeur.

3. bloqué : : Le processus attend une ressource autre que le processeur(entrée-


sortie).

Les transitions

1. Transition 1 : Lorsqu’un processus actif demande une ressource qui n’est


pas disponible, il passe dans l’état bloqué, et le processeur lui est retiré.

2. Transition 2 : Un processus actif peut perdre le processeur, et repasser dans


l’état prêt lorsque le système désire allouer le processeur à un autre processus.

3. Transition 3 : L’allocation du processeur consiste à choisir un processus


dans l’état prêt, et à lui allouer le processeur, le faisant passer dans l’état
actif.

Page 6/17 17 octobre 2022


2. Exercice 1 Dr. Djihane BABAHENINI

4. Transition 4 : Lorsque la ressource demandée par un processus devient


disponible, elle peut lui être allouée ; le processus a alors toutes ses ressources
sauf la ressource processeur et passe donc dans l’état prêt.

Expliquer pourquoi certaines transitions ne sont pas possibles.


Pour passer à l’état bloqué, il faut que le processus manque une ressource, à l’ex-
ception de la ressource processeur. Un processus dans l’état bloqué peut exprimer
un nouveau besoin d’une ressource Le processus est dans l’état bloqué lorsqu’il n’a
pas toutes ses ressources, à l’exception de la ressource processeur. Pour passer dans
cet état, il faut qu’il lui manque une ressource, soit parce qu’on la lui a retiré, ce
qui n’est pas prévu ici, soit parce qu’il exprime un nouveau besoin, ce qui implique
qu’il dispose du processeur pour exprimer ce besoin, c’est-à-dire qu’il soit actif. En
conséquence, la seule transition vers l’état bloqué ne peut venir que de l’état ac-
tif. Par ailleurs, un processus quitte l’état bloqué lorsqu’il a toutes ses ressources
pour s’exécuter, à l’exception de la ressource processeur, ce qui interdit la transition
directe de bloqué à actif.

2 Exercice 1

2.1 Expliquer l’algorithme d’ordonnancement ≪ Le plus court


d’abord ≫.

Le système attend que le processeur soit libre pour choisir parmi les processus
prêts, le plus court (c-à-d qui a le minimum du temps d’exécution) pour lui allouer
le processeur.

2.2 Ordonnancement

Considérons cinq travaux A, B, C, D et E, dont les temps d’exécution


et leurs arrivages respectifs sont donnés dans la table suivante. Faire un
schéma qui illustre son exécution et calculer le temps de séjour de chaque
processus, le temps moyen de séjour, le temps d’attente et le temps moyen
d’attente en utilisant :
1. FIFO
2. Le plus court d’abord

Page 7/17 17 octobre 2022


2. Exercice 1 Dr. Djihane BABAHENINI

Ordonnancement FIFO

Figure 1.2 – Ordonnancement FIFO.

Temps de séjour et temps moyen de séjour

Processus Temps de séjour


A 3-0 = 3
B 9-1 = 8
C 13-4 = 9
D 15-6 = 9
E 16-7 = 9

3+8+9+9+9 38
Temps moyen de séjour = = = 7.6 (1.1)
5 5

Page 8/17 17 octobre 2022


2. Exercice 1 Dr. Djihane BABAHENINI

Temps d’attente et temps moyen d’attente

Processus Temps de séjour


A 3-3 = 0
B 8-6 = 2
C 9-4 = 5
D 9-2 = 7
E 9-1 = 8

0+2+5+7+8 23
Temps moyen d’attente = = = 4.4 (1.2)
5 5

Plus court d’abord (SJF)

Figure 1.3 – Ordonnancement SJF.

Temps de séjour et temps moyen de séjour

Processus Temps de séjour


A 3-0 = 3
B 9-1 = 8
C 10-7 = 3
D 12-6 = 6
E 16-4 = 12

3 + 8 + 3 + 6 + 12 32
Temps moyen de séjour = = = 6.4 (1.3)
5 5

Page 9/17 17 octobre 2022


3. Exercice2 Dr. Djihane BABAHENINI

Temps d’attente et temps moyen d’attente

Processus Temps de séjour


A 3-3 = 0
B 8-6 = 2
C 3-1 = 2
D 6-2 = 4
E 12-4 = 8

0+2+2+4+8 16
Temps moyen d’attente = = = 3.2 (1.4)
5 5

3 Exercice2
1. Donner le mode de fonction de chacun des algorithmes suivants :
a. Le plus petit temps de séjour ou Shortest Remaining Time SRT.
b. L’algorithme du tourniquet, circulaire ou Round robin.

3.1 Ordonnancement SRT

Chaque fois qu’un nouveau processus est introduit dans la file des processus, le
système compare la valeur estimée du temps de traitement restant à celle du pro-
cessus en cours, si le temps de traitement (d’exécution) du nouveau processus est
inférieur, le processeur en cours d’ordonnancement préempte.

3.2 Ordonnancement tourniquet (round robin)

Est un ordonnancement à file circulaire, donc l’ordonnanceur parcoure cette file


en FIFO et alloue le processeur à chaque processus pendant un intervalle de temps
appelé quantum.

Soient deux processus A et B prêts tels que A est arrivé en premier


suivi de B, 2 unités de temps après. Les temps de UCT nécessaires pour
l’exécution des processus A et B sont respectivement 15 et 4 unités de
temps. Le temps de commutation est supposé nul. Calculer le temps de
séjour de chaque processus A et B, le temps moyen de séjour, le temps

Page 10/17 17 octobre 2022


3. Exercice2 Dr. Djihane BABAHENINI

d’attente, le temps moyen d’attente, et le nombre de changements de


contexte pour :
a. SRT,
b. Round robin (quantum = 10 unités de temps),
c. Round robin (quantum = 3 unités de temps).

Ordonnancement SRT

Figure 1.4 – Ordonnancement SRT.

Temps de séjour et temps moyen de séjour

Processus Temps de séjour


A 19-0 = 19
B 6-2 = 4

19 + 4 23
Temps moyen de séjour = = = 11.5 (1.5)
2 2

Temps d’attente et temps moyen d’attente

Processus Temps de séjour


A 19-15 = 4
B 4-4 = 0

4+0 4
Temps moyen d’attente = = =2 (1.6)
2 2

Changement de contexte

Il y a 3 changements de contexte.

Page 11/17 17 octobre 2022


3. Exercice2 Dr. Djihane BABAHENINI

3.3 Ordonnancement round robin (quantum = 10)

Figure 1.5 – Ordonnancement round robin (q=10).

Temps de séjour et temps moyen de séjour

Processus Temps de séjour


A 19-0 = 19
B 14-2 = 12

19 + 12 31
Temps moyen de séjour = = = 15.5 (1.7)
2 2

Temps d’attente et temps moyen d’attente

Processus Temps de séjour


A 19-15 = 4
B 12-4 = 8

4+8 12
Temps moyen d’attente = = =6 (1.8)
2 2

Changement de contexte

Il y a 3 changements de contexte.

Page 12/17 17 octobre 2022


3. Exercice2 Dr. Djihane BABAHENINI

3.4 Ordonnancement round robin (quantum = 3)

Figure 1.6 – Ordonnancement round robin (q=3).

Temps de séjour et temps moyen de séjour

Processus Temps de séjour


A 19-0 = 19
B 10-2 = 8

19 + 8 27
Temps moyen de séjour = = = 13.5 (1.9)
2 2

Temps d’attente et temps moyen d’attente

Processus Temps de séjour


A 19-15 = 4
B 8-4 = 4

4+4 8
Temps moyen d’attente = = =4 (1.10)
2 2

Changement de contexte

Il y a 5 changements de contexte.

Page 13/17 17 octobre 2022


CHAPITRE 2

SOLUTION DE LA SÉRIE
D’EXERCICE N°2 - ÉTAT GLOBAL
DES SYSTÈMES DISTRIBUÉS
(PARTIE 1).

14
1. Exercice 1 Dr. Djihane BABAHENINI

1 Exercice 1
Schéma 1 représente un déroulement d’exécution d’un système distribué.

Figure 2.1 – Schéma 1.

1.1 Extraire les évènements locaux, d’émissions et de réceptions


de messages.

Évènements locaux : {a,x,b,r,s}


Évènements d’émissions : {u,y,t,v}
Évènements de réceptions : {g,h,k,q}

1.2 Que signifie la relation de causalité entre deux événements ?

Pour définir l’état d’un système réparti, il faut d’abord ordonnez les évènements,
tous schéma global de datation doit pouvoir respecter l’ordre local sur chaque site,
et doit être tel que la date d’émission d’un message soit antérieure à sa date de
réception.

1.3 Que signifie la relation de précédence causale ? Quels


sont ses différents types ?

C’est un formalisme de la causalité.

On a un ensemble Π = p1 , p2 , ..., pN
pi a un ensemble d’évènements
pi : ei1 , ei2 , ei3 , ..., eik

Page 15/17 17 octobre 2022


1. Exercice 1 Dr. Djihane BABAHENINI




 e et e′ sont locaux à un même processus et e se produit avant e′.....(1)

e −→ e′ ⇐⇒ ∃ m | e = emission(m) et e′ = reception(m)....................(2)


 ∃ e | e −→e et e −→ e′..............................(3)

0 0 0
(2.1)
Types :
(1) et (2) précédence causale directe.
(3) précédence causale indirecte.

1.4 Que signifie la concurrence de deux événements ?

Deux évènements a et b sont dits concurrents, si l’exécution de l’un n’influe pas


sur l’exécution de l’autre, c’est à dire il n’y a aucune précédence causale entre eux.
a || b =⇒ ¬ ((a−→b)∨(b−→c))

1.5 Quels sont les paires d’évènements concurrents dans la


liste suivante : (a,b), (y,t), (g,k), (q,y), (h,u), (r, x)

Les paires d’évènements concurrents dans la liste donnée sont : a||b, h||u, r||x.

1.6 Une coupure C est l’ensemble des d’évènements tels que


si e ∈ C et e′ ( précède localement e), alors e′ ∈ C.

a. Construire l’ensemble d’évènements qui définissent C1 .


{a, x, b, y, t, r}.
b. Vérifier, par causalité, la cohérence de C2 . Justifier.
Pour vérifier la cohérence d’une coupure en utilisant la relation de causalité, il
faut vérifier pour chaque évènement de réception appartient à une coupure que
son évènement d’émission n’appartient pas au futur.
C2 est non cohérente car la réception de message m4 ∈ C2 (évènement q), mais
son émission (évènement v) ∈
/ C2 . On dit qu’on a un message qui vient de futur.

Page 16/17 17 octobre 2022


2. Exercice 2 Dr. Djihane BABAHENINI

2 Exercice 2

Figure 2.2 – Schéma 2.

2.1 Construire les ensembles Passé, Futur et Concurrent de


l’évènement e23 en utilisant la relation de causalité

Passé(e23 ) = {e22 , e21 , e11 }


Futur(e23 ) = {e32 , e33 , e24 , e34 }
concurrent(e23 ) = {e12 , e13 , e14 , e31 }

système = passé ∪ évènement ∪ futur


concurrent = système - (passé + futur)

2.2 Identifier les coupures cohérentes. Justifier.

Y et Z sont des coupures cohérentes car chaque évènement de réception ∈ à


chaque coupure (Y ou Z), son émission ∈ à la coupure elle même, on n’a pas un
message qui vient de futur.
X est une coupure non cohérente car l’évènement de réception e24 ∈ X, mais son
émission e33 ∈
/ X.

Page 17/17 17 octobre 2022

Vous aimerez peut-être aussi