Vous êtes sur la page 1sur 5

QUICK Systèmes, module SR, M1 Miage, 2009-2010

19 novembre 2009

Consignes

Durée totale 1h. Tous documents autorisés.


Répondre directement sur le sujet.
Téléphones portables, même éteints, interdits.
Le barême fourni est indicatif.
Les réponses précises, concises et justifiées seront bonifiées.

1 Questions de cours (4 points)

. Question 1. Quelles sont les motivations pour la mémoire virtuelle ? A quoi correspond elle ?
Comment peut-elle être implémentée ?

. Question 2. Qu’est-ce un mot mémoire ? Quelle est usuellement sa taille ? Que contient un mot
mémoire ?

. Question 3. Qu’est-ce un système d’exploitation (SE) ? Pourquoi utilise-t-on un SE ? Quels sont


ses fonctions principales ?

1
2 QCM (10 points)

Répondez aux questions suivantes.


Toute question n’a qu’une réponse correcte.
Les réponses fausses ne sont pas sanctionnées (pas de points négatifs)
Chaque question vaut 0.5 points.

1. Les processus lourds :


(a) sont identiques aux processus légers
(b) sont gérés au niveau utilisateur
(c) sont identiques aux processus légers à part la gestion des piles
(d) sont gérés au niveau systËme

2. La synchronisation par mutex est équivalente à la synchronisation par conditions :


(a) vrai
(b) faux

3. Deux threads s’exécutant dans deux processus différents :


(a) exécutent le même programme
(b) partagent de la mémoire
(c) sont complètement indépendants

4. Deux threads s’exécutant dans deux processus différents peuvent travailler sur le même fichier :
(a) vrai
(b) faux

5. La synchronisation des threads est indispensable lorsque :


(a) les threads échangent des messages
(b) les threads modifient les mêmes variables
(c) les threads exécutent la même fonction

6. Le noyau de Windows diffère de celui de Linux surtout par :


(a) l’implémentation des services
(b) les fonctionnalités offertes par les services
(c) le fait que les services incluent obligatoirement la machine virtuelle Java

7. Le (logging) consiste :
(a) à effectuer les opérat !ons système sous forme de transactions
(b) à enregistrer la séquence d’actions système
(c) à diffuser à des clients intéressés l’évolution de l’état du système

8. Le type d’un fichier :


(a) est toujours encodé dans son extension
(b) est toujours encodé dans son entête
(c) est toujours encode dans son entête et son extension
(d) aucune des réponses précédentes n’est vraie

2
9. On considère un ordinateur qui a 4 pages de mémoire physique. On donne ci-dessous, en µs, les
moments de chargement et du dernier accès pour chaque page logique se trouvant en mémoire
physique. Quelle est la page qui sera remplacée par l’algorithme FIFO ?

Page Dernière modification Chargement


(a) 0 126 120
(b) 1 230 160
(c) 2 120 80
(d) 3 160 20

10. En Java, les threads sont représentés sous forme d’objets :


(a) vrai
(b) faux

11. Les programmes Java sont interprêtées :


(a) vrai
(b) faux

12. Vous pouvez ordonnancer les threads à votre guise en :


(a) paramétrant le système
(b) mettant des attentes temporelles
(c) mettant des priorités
(d) les synchronisant

13. La synchronisation en Java est basée sur :


(a) les moniteurs
(b) les sémaphores
(c) les conditions
(d) les verrous

14. La segmentation évite la fragmentation de la mémoire :


(a) vrai
(b) faux

15. Les RAID 0+1 fonctionnenet de la même manière que 1+0 :


(a) vrai
(b) faux

16. Les RAID de niveau 1 améliorent :


(a) la fiabilité
(b) la vitesse d’accès

17. Quelle transition est effectuée pour un processus bloqué en attente de caractère, lors de la
réception d’un caractère saisi au clavier ?
(a) actif → bloqué
(b) bloqué → actif
(c) bloqué → prêt

3
18. Un téléviseur standard contient tous les composants que l’on peut trouver dans un ordinateur :
(a) vrai
(b) faux

19. La données en mémoire vive sont persistantes :


(a) vrai
(b) faux
(c) cela dépend des données

20. La mémoire secondaire contient :


(a) les données persistantes de la mémoire vive
(b) 10% de fichiers fragmentés
(c) les corrections des quicks des années précédentes
(d) aucune des réponses précédentes n’est vraie

3 Exercices (6 points)

3.1 Interblocage (2pts)


Donnez un exemple simple de programme qui fait apparaı̂tre une situation d’interblocage.

4
3.2 Problème du commercial (4pts)
Nous voulons développer une application pour la gestion des rendez-vous d’un commercial. Cette
application doit fournir deux fonctions principales : une pour la prise d’un rendez-vous (demande RDV
et une pour l’annulation d’un rendez-vous annul RDV. Sachant qu’un commercial ne peut se rendre
à plus de cinq rendez-vous par jour, proposer une implémentation des fonctions demande RDV et
annul RDV.
Avant de fournir votre implémentation en pseudo-code ou Java, vous devrez expliquer le principe
de l’algorithme. Toutes les variables utilisées devront Ítre explicitement définies et commentées. Vous
êtes libres d’utiliser toute structure de synchronisation.