Vous êtes sur la page 1sur 2

Université Hadj Lakhdar Batna Faculté des sciences Département d’informatique

13/06/2013

Durée de l’examen 1h:45 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 { import java.util.*; import java.awt.* // Partie déclaration private int A; public object B[]; // Utilisation d'une fonction public function1 (int Z) { // ensemble d'instructions { //Début du programme principal // Ensemble des instructions } //Fin

 

Soient les codes sources suivants:

 

<!DOCTYPE html>

 

<html>

Program P1;

<body>

Uses wincrt;

Uses windows;

<h1>Premier program</h1> <p>Premier paragraphe.</p>

var

// Déclaration des variables begin // Ensemble des instructions

}

</body>

</html>

end.

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 Faculté des sciences Département d’informatique

26/02/2013

Durée de l’examen 1h:45 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:

Program P1;

Uses crt;

Uses graph;

var

// Déclaration des variables begin // Ensemble des instructions

end.

class P2 { import io.*; import swing.* // Partie déclaration private int X; public object Y[]; // Utilisation d'une fonction public function1 (int Z) { // ensemble d'instructions { //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:

mais la mémoire centrale ne peut pas contenir toutes les pages en même temps,

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?

P1: 02415321415012325

P2: 0723102346160542373425

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 P2: 5s CPU + E/S (2s) + 5s CPU + 7s CPU

1/ Donner le temps de réponse et d'attente de chaque processus?

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