Vous êtes sur la page 1sur 2

Université Hadj Lakhdar Batna 13/06/2013

Faculté des sciences Durée de l’examen 1h:45


Département d’informatique Licence 2ème Année

Examen Final : Systèmes d’exploitation


Exercice N°1 : (8 points)
On considère un système de gestion de la mémoire selon le principe de pagination dont la taille de la page est égale à
2KO, la mémoire physique est de 10KO et le mot mémoire est d'un seul octet.
1/ Il existe aussi un système de gestion de mémoire selon la segmentation. Donner les différences entre ces deux
principes. Comment peut-on profiter de leurs avantages?
2/ Ces principes de gestion sont utilisés pour gérer la mémoire centrale avec la mémoire virtuelle. Expliquer comment on
utilise la mémoire virtuelle. Quels sont ces avantages?
3/ Combien de cadres de pages cette mémoire contient-elle?
4/ Soit un programme de 16KO de taille, qui fait référence aux adresses logiques suivantes :
1, 4328, 35, 3000, 7895, 300, 9875, 2050, 150, 11220, 2489, 9000, 15648, 8195, 13252, 14165, 10250, 260
a/ Donner pour chaque adresse le numéro de page et le déplacement dans la page (p, d) sachant que p=[@logique div
taille de page] et d=[@logique mod taille de page].
b/ Déduire l'ensemble de pages référencées durant l’exécution de ce programme.
5/ Calculer le taux du défaut de page résulté par un remplacement FIFO, et LRU. Quel algorithme minimise ce taux ?
Exercice N°2 : (6 points) class P2 {
Soient les codes sources suivants: import java.util.*; <!DOCTYPE html>
import java.awt.* <html>
Program P1; // Partie déclaration <body>
Uses wincrt; private int A;
Uses windows; public object B[]; <h1>Premier program</h1>
var // Utilisation d'une fonction <p>Premier paragraphe.</p>
// Déclaration des variables public function1 (int Z) { // ensemble d'instructions }
begin { //Début du programme principal </body>
// Ensemble des instructions // Ensemble des instructions </html>
end. } //Fin

Code Pascal P1.pas Code Java P2.java Code HTML P3.htm


1/ Après la traduction de ces trois codes, on a obtenu pour les deux premiers programmes ces deux fichiers P1.obj et
P2.class et rien pour le programme P3. Discuter pourquoi, et donner la différence entre les deux cas.
2/ Que représentent les instructions suivantes dans les deux premiers codes: uses wincrt, uses windows, import
java.util.*, import java.awt.*, public object B[], et public function1?
3/ Est-ce que ces programmes sont prêts à s'exécuter après l'étape de traduction? Si non, que faut-il faire?
4/ Après l'exécution des deux premiers programmes, on a remarqué l'existence des fichiers suivants pour P1: P1.pas,
P1.obj, P1.exe, et pour P2: P2.java, P2.class. Discuter pourquoi.
Exercice N°3 : (6 points)
Considérons 5 processus P1, P2, P3, P4 et P5 soumis à un ordinateur monoprocesseur dans les temps 0, 5, 2, 4 et 3
respectivement. Les temps d'exécution de ces processus sont 10, 6, 2, 4 et 8 secondes respectivement.
1/ Pour gérer ces processus le système fait recours à deux outils: le scheduler et le dispatcher.
a/ Donner le rôle de chacun.
b/ Donner la différence entre un scheduler préemptif et un scheduler non préemptif avec des exemples d'utilisation.
2/ Déterminer les temps de réponse de ces processus si on utilise un scheduler FCFS, SJF et tourniquet avec un quantum
de temps Q = 2s.
3/ Donner le temps d'attente moyen pour chaque type de scheduler mentionné dans la question précédente. Quel est le
meilleur type?
Bon Courage
Université Hadj Lakhdar Batna 26/02/2013
Faculté des sciences Durée de l’examen 1h:45
Département d’informatique Licence STIC 2ème Année

Examen Final : Système d’exploitation


Un utilisateur réalise deux programmes P1 et P2, le premier en langage Pascal et le deuxième en langage Java où la partie
entête des deux programmes est comme suit:
class P2 {
Program P1; import io.*;
Uses crt; import swing.*
Uses graph; // Partie déclaration
var private int X;
// Déclaration des variables public object Y[];
begin // Utilisation d'une fonction
// Ensemble des instructions public function1 (int Z) { // ensemble d'instructions }
end. { //Début du programme principal
// Ensemble des instructions
} //Fin

A/ Après la traduction, l'utilisateur a remarqué l'existence de deux nouveaux fichiers P1.obj et P2.class
1/ Que représente ces deux fichiers? Et quel est le type de traducteur utilisé dans ce cas?
2/ Que représente les instructions: uses crt, uses graph, import io.*, import swing.*, private int X, public object Y[],
Public function1
3/ Est-ce que les deux fichiers sont prêts à s'exécuter? Si non, Que faut-il faire? Quel est le résultat obtenu pour les
deux fichiers.
4/ L'utilisateur a remarqué aussi l'existence de ces fichiers P1.pas, P1.obj et P1.exe pour le premier programme et
P2.java, P2.class pour le deuxième fichier. Expliquer?
B/ L'utilisateur travaille dans une machine possédant une mémoire centrale de 4KO et le système utilise le principe de la
mémoire virtuelle.
1/ Que veut dire une mémoire virtuelle. Et quelle est l'objectif de son utilisation?
2/ Expliquer comment le système exécute les programmes dans la présence d'une mémoire virtuelle.
3/ Ce système dispose d'un gestionnaire de mémoire par pagination. Expliquer son principe de travail. Est-ce qu'il y a
d'autres types de gestionnaire?
C/ La mémoire centrale est divisée en 4 cadres de pages de 1 KO chacune, et les programmes P1 et P2 sont divisés en 6
pages et 8 pages respectivement.
1/ Donner la taille de P1 et P2.
2/ Pour exécuter P1 et P2, le processeur demande les pages dans l'ordre suivant:
P1: 02415321415012325
mais la mémoire centrale ne peut pas contenir toutes les pages en même temps,
P2: 0723102346160542373425
Que faut-il faire?
3/ Le gestionnaire de cette mémoire travaille par le remplacement FIFO, calculer pour chaque chaine le nombre de
défauts de page. Quel est l'inconvénient de cette technique?
D/ Sachant que chaque page s'exécute en 2 secondes, quel est le temps d'exécution de chaque programme?
E/ Ce système utilise le scheduler de processus de type tourniquet (Q=3s) et les processus P1 et P2 arrivent dans les
temps 3s et 0s respectivement, ainsi leurs exécutions sont comme suit: P1: 6s CPU + E/S (2s) + 6s CPU
1/ Donner le temps de réponse et d'attente de chaque processus? P2: 5s CPU + E/S (2s) + 5s CPU + 7s CPU
F/ L'entrée/sortie faite par le premier processus est pilotée en mode DMA, c'est une écriture sur un périphérique numéro 5
de 1000 mots mémoire à partir de l'adresse 420.
1/ Expliquer ce que veut dire un pilotage des E/S en mode DMA. Quel sont les composants du DMA?
2/ Expliquer en détails comment ce réalise cette opération d'E/S.

Bon Courage

Vous aimerez peut-être aussi