12.07.2015 Views

Université du Québec à Hull - Cours

Université du Québec à Hull - Cours

Université du Québec à Hull - Cours

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Final Hiver 2002 Page 2 sur 5 INF3600Question 2 (4 pts) : InterblocageConsidérez un ensemble de processus composés de plusieurs pro<strong>du</strong>cteurs et d’un seulconsommateur dont les codes sont les suivants :semaphore plein =0, vide=N, mutex=1 ;char T[N] ;int ip=0 ;Pro<strong>du</strong>cteur ( ){ int i, M ;char ch[N];Repeter{ M=Lire(ch,N);M= min(N,M);Pour i=1 à M pas 1 faireP(vide) ;P(mutex) ;Deposer(ch,M,ip) ; //insérer ch dans Tip = (ip+M)%N ;V(mutex) ;Consommateur ( ){ int ic =0 ;char c ;Repeter{P(plein) ;P(mutex) ;c= T[ic] ;V(mutex) ;V(vide) ;}Pour i=1 à M pas 1 faireV(plein) ;} tant que vrai ;}Traiter(c) ;ic++ ;} tant que vrai ;1) Peut-on avoir une situation d’interblocage ? (si oui, expliquez en décrivant clairementune situation d’interblocage). (2 pts)2) Complétez le code précédent de manière à éviter les situations d’interblocage. (2 pts)


Final Hiver 2002 Page 3 sur 5 INF3600Question 3 (6 pts) : Mémoire virtuelleConsidérez un système de mémoire virtuelle ayant les caractéristiques suivantes :- Taille d’une page et d’un cadre (ou cases) = 1 KO (1 kilo-octet).- Taille de la mémoire physique (principale) = 32 MO (32 méga-octets).- Taille de la mémoire virtuelle = 512 MO.- Utilisation combinée des techniques de pagination et de segmentation : l’espaced’adressage virtuel d’un processus est composé de segments contigus. Chaque segmentpeut contenir entre 1 et 128 pages. La numérotation des pages d’un segment est relativeau segment.- Utilisation de l’algorithme de remplacement de pages LRU (i.e. la moins récemmentutilisée).1) Calculez le format d’une adresse virtuelle et le format d’une adresse physique (i.e.réelle), en spécifiant le nombre de bits réservés pour chaque champ. (2 pts)2) Supposez un processus de 9 KO de segment de code et 3 KO de segment de données.Dans l’espace virtuel <strong>du</strong> processus, le segment de code est suivi <strong>du</strong> segment dedonnées. Par conséquent, le segment de code débute à l’adresse 0 alors que celui desdonnées débute à l’adresse 9216 relativement au début de l’espace d’adressage virtuel.- Calculez l’adresse qu’occupe en mémoire principale une donnée se trouvant àl’adresse 10728, relative au début de l’espace d’adressage. Le segment de données <strong>du</strong>processus est chargé au complet en mémoire physique dans les cadres contigus 4096,4097 et 4098. (1 pt)3) Considérez la séquence de références de pages de code R={0, 1, 0, 1, 2, 3, 4, 2, 3, 4, 5,6, 7, 8} faite par le processus décrit en (2). Les opérandes référés par les instructionsdans les pages 0, 1 et 2 se trouvent dans la page 0 <strong>du</strong> segment de données ; lesopérandes des instructions des pages 3, 4 et 5 sont dans la page 1 ; les opérandes desinstructions des pages 6, 7 et 8 sont dans la page 2. Supposez que toutes lesinstructions <strong>du</strong> processus ont des opérandes qui réfèrent en mémoire.Au départ, 4 cadres contigus sont alloués pour le code <strong>du</strong> processus à l’adresse X et 2cadres contigus pour les données <strong>du</strong> processus à l’adresse Y. Il est à noter que les


Final Hiver 2002 Page 4 sur 5 INF3600adresses X et Y ne sont pas nécessairement contiguës, et le chargement des pages dansles cadres alloués est réalisé à la demande (aucun chargement préalable). De plus,aucun cadre supplémentaire n’est alloué au processus <strong>du</strong>rant son exécution.(a)Représentez l’état d’occupation de la mémoire principale à chaque instant t i(i.e. t 0 , t 1 , t 2 , …) où une nouvelle page est chargée. (2 pts)(b)Calculez le nombre de fautes (i.e. défauts) de page générées par l’algorithmede remplacement de pages LRU. Ce nombre est-il optimal ? (1 pt)Question 4 (6 pts): Système de fichiers et E/S1) Considérez un système de fichier ayant les caractéristiques suivantes et illustré par lafigure 1 :- Taille d’un bloc = 8 KO.- Numérotation linéaire des blocs de disque de 0 à n-1.- Utilisation de la technique de l’allocation indexée avec chaînage pour la gestion des blocsphysiques : toutes les descriptions de fichiers créés sont regroupées dans la table desdescripteurs. Chaque entrée dans la table contient les attributs d’un fichier et un pointeurvers le premier bloc d’index. Tous les pointeurs d’un bloc d’index, à l’exception <strong>du</strong>dernier, pointent vers des blocs de données <strong>du</strong> fichier. Le dernier pointeur d’un blocd’index plein pointe vers le bloc d’index suivant.- Taille d’un pointeur = 32 bits.vers le 1 er bloc d’indexle premier bloc de donnéesTable des descripteursIndex 1DonnéesFigure 1 – Illustration d’un système de fichierIndex 2


Final Hiver 2002 Page 5 sur 5 INF3600(a)Calculez la taille maximale en nombre de blocs que pourrait avoir un fichier enprécisant les nombres de blocs d’index et de données. (2 pts)(b)Déterminez le nombre de blocs qu’il faut lire à partir <strong>du</strong> disque pour pouvoiraccéder à une donnée qui se trouve dans le 9000 ième bloc de données <strong>du</strong> fichier.Vous pouvez supposer qu’il y a K pointeurs par bloc d’index, que la table desdescripteurs est déjà chargé en mémoire et que les blocs d’index et de donnéesne sont pas encore chargés en mémoire. (1.5 pts)2) Considérez les systèmes d’exploitation de la famille Unix.(a)Expliquez la raison pour laquelle ces systèmes utilisent, en réalité, unestructure de répertoire en forme de graphe acyclique plutôt qu’une structure derépertoire arborescente. (0.5 pts)(b)Dans ces systèmes, tous les attributs de fichier sont décrits dans l’i-nœud(inode) <strong>du</strong> fichier sauf le nom.(i) Expliquez pourquoi le nom n’est pas dans l’i-nœud. (0.5 pts)(ii) Où sont donc sauvegardés les noms de fichiers? (0.5 pts)(iii) Expliquez pourquoi la création de liens physiques sur des répertoiresest interdite (0.5 pts).3) Expliquez la différence fondamentale qui existe entre une opération d’E/S par latechnique <strong>du</strong> polling (i.e. scrutation) et une opération d’E/S par la technique desinterruptions. (0.5 pts)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!