Vous êtes sur la page 1sur 2

EXAMEN

Semestre : 2

Session : Principale Rattrapage

Module : Systèmes d’Exploitation Avancés


Enseignant : R. FREFITA, A. ZOUAOUI, I. DENDEN, H. JEDIDI
Classes : 4INFO/TEL/SIM/SLEAM/INFINI
Documents autorisés  : NON Nombre de pages : 2
Date : 01/07/2013 à 8h30 Durée :1h30m

Exercice 1 « pipe » (4 points) :


Ecrire un programme C équivalent à la commande SHELL : ps axl | wc -l
Exercice 2 «  Mémoire paginée » (4 points) :
Soit un système de pagination simple dans lequel la mémoire virtuelle est composée de 16 pages. La taille d’une
page est égale à 4KO (Kilo octets). La mémoire physique est composée de 4 cadres.
1- Donner la taille en KO de la mémoire physique et la taille de la mémoire virtuelle ?
2- Combien de bits spécifient un cadre de page ?
3- Combien de bits spécifient l’offset « déplacement dans un cadre de page »?
4- Combien de bits spécifient une adresse virtuelle ?
Exercice 2 « Sémaphores » (6 points):
Une piscine peut contenir N nageurs au maximum. Le nombre N représente le nombre des paniers disponibles
pour les habits des nageurs. A l’entrée comme à la sortie les nageurs entrent en concurrence pour l’obtention
d’une cabine d’habillage/déshabillage. Nous supposons qu’il y a C cabines tel que 1 <= C << N. On peut
assimiler ces nageurs à des processus concurrents. Chaque processus effectue les opérations suivantes :
Processus_Nageur
Début
< se déshabiller >
< nager >
< se rhabiller >
Fin

Question :
En reproduisant la fonction ci-dessous sur votre copie, proposez à base des sémaphores, une solution de
synchronisation d’accès aux ressources partagées (les paniers et les cabines) entre les nageurs.

1/2
var S1,S2 : semaphore init ……,…… // semaphore à initialiser
Processus Nageur
Début
………………………………………………
………………………………………………
<se déshabiller>
………………………………………………
<nager>
………………………………………………
<se rhabiller>
………………………………………………
………………………………………………
Fin
Exercice 4  « Ordonnancement » (6 points) :

On considère un système d'exploitation doté d'un algorithme d'allocation du processeur basé sur les files multi-
niveaux. L'algorithme est doté trois files F1, F2 et F3 de priorités respectives 1, 2 et 3, triées selon un ordre
décroissant du niveau de priorité. Les algorithmes d'ordonnancement associés aux files sont:

1. SJF avec préemption pour F1,


2. SJF sans préemption pour F3.
3. Round Robin pour F2 avec un quantum égal à 2,

Lors de l'arrivée des processus dans le système, l'algorithme d'allocation les place dans la file d'attente F1. Cet
algorithme susmentionné peut migrer des processus entre les files d'attente selon les conditions suivantes :
1. Si un processus est dans F1 et qu'il a consommé 7 unités de temps, il passe à la file F2
2. Si un processus est dans F2 et qu'il a consommé 3 quantums, il passe à la file F3
On suppose que les conditions de migration peuvent utiliser la préemption lors du déplacement d'un processus
d'une file à un autre.
Considérons la chronologie suivant:

Identificateur du Processus Date d'arrivée Temps d'exécution


P1 0 15
P2 1 11
P3 3 16
P4 4 20
P5 30 2

Question:

Donner le chronogramme d'allocation du processeur selon l'algorithme décrit ci-dessus.

2/2

Vous aimerez peut-être aussi