More Related Content
More from Amel Morchdi (20)
Attachments 2011 10_20
- 1. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
Devoir surveillé Examen Session : principale
Matière :…… Système d’exploitation………………….. Semestre: ……I.……..…
Enseignant(s) :…Mona Laroussi………………………………. Date: …08/11/10……
Filière(s) :… GL2 & IIA2…………………………………. Durée: 1 heure 30….….
Barème :… ……voir Ex…………… Documents: non autorisés
Nombre de pages :…… 4 pages…………………
Utilisez les feuilles de l’énoncé pour répondre aux questions !!
Exercice 1 (8 points)
Soit les 4 processus suivants :
Processus Date de Durée priorité
soumission
P1 0 3 1
P2 1 2 3
P3 2 4 5
P4 3 4 3
1) Nous proposons de développer notre propre algorithme d’ordonnancement.
Il consiste à exécuter en premier les processus dont la priorité est la plus
élevée (priorité de 1 à 5 – 5 : représente la priorité la plus haute). Au moment
de l’élection d’un processus, si plusieurs processus possèdent la même
priorité, c’est le processus le plus court qui est exécuté en premier. Lorsqu’un
processus est élu par l’ordonnanceur, il s’exécute intégralement.
a) Cet algorithme est-il préemptif ? Expliquez.
1,5
N’est pas prémptif (0,5° aucun processus n’est arrêté Explication 1
b) Dessinez le diagramme De GANTT représentant ces quatre processus
- 2. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
1,5 (binaire)
P1 de 0 a 3
P 3 de 3 à 7
P2 de 7 a 9
P4 DE 9 a 13
2)
a) Donnez le temps d’attente de chaque processus ainsi que le temps moyen
d’attente.
1,5 (binaire)
P1 0
P2 6
P3 1
P4 6
3,25 (0,5)
b) Donnez le temps d’exécution de chaque processus ainsi que le temps
moyen d’exécution.
- 3. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
1,5
«3 - 7 - 9 - 13
8,75
3) Nous souhaitons modifier notre algorithme d’ordonnancement. Cette fois-ci,
si un processus de priorité égale à 5 est soumis, l’exécution du processus
courant est interrompue et le processus de priorité égale à 5 est exécuté
intégralement. Si un processus de priorité 5 est soumis et qu’un processus de
priorité 5 est en cours d’exécution, le nouveau processus est placé dans une
file d’attente. Les processus de priorité 5 dans la file d’attente sont exécutés
suivant l’ordre de soumission (FCFS). Une fois tous les processus de priorité 5
exécutés, le processus qui avait été interrompu (s’il existe) continue son
exécution.
a) Refaites le diagramme de GANTT précédent avec ce nouvel algorithme.
1,5
P1 P3 P1 P2 P4
0 1 2 3 4 5 6 7 8 9 10 11 12 13
BINAIRE
b) Calculez le temps d’attente de chaque processus et le temps moyen
d’attente.
1,5
4 ? 6 ? 0 ?6
3,5
- 4. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
c) Calculez le temps d’exécution de chaque processus et le temps moyen
d’exécution.
1
7 9 6 13
8,75
d) Que peut-on dire de cet algorithme par rapport au précédent (en terme de
performances) ?
1
LE premier
Exercice 2 (3 points)
1. Parmi les trois états suivants d’un système avec dix copies de la
ressource. Lesquels sont en interblocage et lesquels ne le sont pas ?
Appliquez l’algorithme du banquier pour répondre à la question.
Etat (a) Etat (b) Etat (c)
Détient Demande Détient Demande Détient Demande
A 0 6 A 1 6 A 1 6
B 0 5 B 1 5 B 2 5
C 0 4 C 2 4 C 2 4
- 5. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
D 0 7 D 4 7 D 4 7
On donnera 3 points à celui qui a répondu pas d’interblocage pour les 3
états !!!
1 pour chaque cas
2. Appliquer l’algorithme du banquier à l’exemple ci-dessous. Que se
passe-t-il si le système accorde une ressource de type 3 au processus B
et que le Processus E réclame à son tour une telle ressource ?
Ressource 1
Ressource 2
Ressource 3
Ressource 4
Ressource 1
Ressource 2
Ressource 3
Ressource 4
processus
processus
Ressources Ressources
détenues Désirées
A 3 0 1 1 A 1 1 0 0
B 0 1 0 1 B 0 1 1 2
C 1 1 1 0 C 3 1 0 0
D 1 1 0 0 D 0 0 1 0
E 0 0 0 0 E 2 1 1 0
- 6. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
Exercice 3 (6 points)
Dans le salon de coiffure, il y a un coiffeur C, un fauteuil F dans lequel se met
le client pour être coiffé et N sièges pour attendre.
• S'il n'a pas de clients, le coiffeur C somnole dans le fauteuil F.
• Quand un client arrive et que le coiffeur C dort, il le réveille, C se lève.
Le client s'assied dans F et se fait coiffer.
• Si un client arrive pendant que le coiffeur travaille :
o si un des N sièges est libre, il s'assied et attend,
o sinon il ressort.
Il s'agit de synchroniser les activités du coiffeur et de ses clients avec des
sémaphores. Les sémaphores utilisés sont initialisés ainsi :
SCF :=0;
SP:= 0;
SX:= 1;
Coiffeur () Client();
{ {
while (1) P (SX);
{ if (Attend < N)
P (SP); {
P (SX); Attend = Attend + 1;
- 7. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
Attend = Attend -1; V (SP);
V (SCF); V (SX);
V (SX); P (SCF);
Coiffer(); SeFaireCoifferEtSortir();
} }
} else
{
V (SX);
Sortir();
}
}
a- Détailler le fonctionnement du coiffeur et de ses clients tels qu'ils sont
représentés par les deux fonctions Coiffeur et Client. (3 points)
CHAQUE scénario 1,5
Le processus coiffeur :
- sert le premier client de la file, s'il y en a un (sinon il se bloque),
- décrémente Attend (accès exclusif) ,
- libère le siège du client (l'invite à s'asseoir)
- Coiffe
2.1.2 Scenario pour un client
Ce que fait un client :
- Si le nombre de clients en attente est supérieur à N, sort
- incrémente Attend (accès exclusif)
- s'ajoute à la file d'attente
- attend de pouvoir s'asseoir dans le siège du coiffeur
- se fait coiffer et sort.
2.1.3 Modélisation avec sémaphores
Les sémaphores utilisés :
- SP : gère la file des clients en attente. Indique le nombre de ressources pour le
coiffeur, c'est-à-dire les clients.
- SCF : gère l'accès au fauteuil du coiffeur. Indique si le coiffeur est prêt à travailler ou
non (il est la ressource unique des clients).
- SP et SCF gèrent un schéma producteur/consommateur
- SX : assure l'accès en exclusion mutuelle à la variable partagée Attend. Attend
permet de contrôler la taille maximale de la file d'attente
- 8. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :
b- Quel est le rôle de chacun des sémaphores SCF, SP et SX ? (3 points)
Chaque sémaphore 1
- 9. Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Année universitaire : 2010-2011
NOM : N°CIN :
PRENOM : N° inscription :
N° salle : N° Place :