Un programme contenant du code translatable a été créé, en partant du principe qu'il serait chargé à l'adresse 0. Dans son code, le programme fait référence aux adresses suivantes: 25, 65, 112, 156, 213. Si le programme est chargé en mémoire en commençant à l'emplacement 250n comment doivent être ajustées ces adresses ?
Réponse : On doit rajouter 250 à chaque fois : 275, 315, 362, 406, 463
Sur un système, vous observez des performances en deça de vos espérances. Après un monitoring sur plusieurs heures en fonctionnement normal, vous remarquez les points suivants :
Taux d'utilisation du processeur faible
Utilisation du swap très haute
Utilisation des périphériques faibles
Réponses :
Remplacement du processeur par un processeur plus puissant : peu d'impact
Augmentation de la taille de la partition de swap : aucun effet
Installation d'un espace de swap plus rapide (sur un nouveau disque dur par exemple) : Oui
Installation de RAM supplementaire : Oui, on aurait moins de permutations
Installation de RAM plus rapide : aucun effet
Accroissement du degré de multi programmation (par exemple en augmentant la valeur du maximum de processus autorisé) : encore pire : plus de processus, donc plus de permutations
Diminution du degré de multi programmation (par exemple en diminuant la valeur du maximum de processus autorisé et en supprimant certains programmes lancés automatiquement) : Oui, directement efficace
Changement de certains périphériques par des plus rapides : peu d'impact
Même question si cette fois ci le monitorig avait révélé :
Taux d'utilisation du processeur faible
Utilisation du swap Faible
Utilisation des périphériques élevé
REPONSES :
Remplacement du processeur par un processeur plus puissant : peu d'impact
Augmentation de la taille de la partition de swap : aucun effet
Installation d'un espace de swap plus rapide (sur un nouveau disque dur par exemple) : Pas d'effet
Installation de RAM supplementaire : Pas d'effet
Installation de RAM plus rapide : Pas d'effet
Accroissement du degré de multi programmation (par exemple en augmentant la valeur du maximum de processus autorisé) : sans doute une amélioration
Diminution du degré de multi programmation (par exemple en diminuant la valeur du maximum de processus autorisé et en supprimant certains programmes lancés automatiquement) : Encore pire
Changement de certains périphériques par des plus rapides : sans doute une amélioration
On dispose d'un système de mémoire paginée à la demande et de deux algorithmes A et B. On observe l'exécution d'un programme auquel le système alloue 3 cases de mémoire centrale et qui accède successivement aux pages : 2 3 5 2 1 5 2 4 5 3 2 5 2 3.
Chaque colonne représente, à un instant donné, de haut en bas, l'ordre de remplacement des pages en mémoire selon l'algorithme utilisé. Avec l'algorithme A, on constate qu'il y a successivement en mémoire les pages suivantes :
état 2 2 2 3 5 2 1 5 2 4 5 3 3 5
après 3 3 5 2 1 5 2 4 5 3 2 5 2
chargement 5 2 1 5 2 4 5 3 2 5 2 3
X X X X
Avec l'algorithme B, on constate qu'il y a successivement en mémoire les pages suivantes :
état 2 2 2 2 3 3 5 1 2 4 5 5 5 5
après 3 3 3 5 5 1 2 4 5 3 3 3 3
chargement 5 5 1 1 2 4 5 3 2 2 2 2
X X X X X X
Lequel des deux algorithmes correspond à l'algorithme FIFO et lequel correspond à l'algorithme LRU ? Justifier votre raisonnement. Déterminer dans chaque cas le nombre total de défauts de page
LRU - 3 chargements, 4 remplacements
FIFO - 3 chargements, 6 remplacements
Quelles auraient été les pages en mémoire avec l'algorithme Optimal? et quel serait le nombre total de défauts de page?
OPT : 3 chargements, 3 remplacements
état 2 3 3 3 1 1 1 4 4 3 2 5 5 3 après 2 5 2 2 5 2 2 5 5 3 3 2 2 chargement 2 5 5 2 5 5 2 2 5 2 3 5 remplacement X X X
On considère une mémoire centrale avec 4 cases initialement vides. Un processus P effectue les références suivantes aux pages de son espace virtuel : 0,2,9,4,5,2,0,9,3,2,0,9,5,3 Complétez le diagramme ci dessous pour représenter l'évolution de la mémoire centrale au fur et à mesure des accès du processus à ses pages et notez les défauts de pages existants :
pour un remplacement de pages de type FIFO (First In, First Out)
pour un remplacement de pages de type LRU (Least Recently Used)
Considérant un programme qui a pour chaîne de référence les pages [0,1,4,2,0,1,3,0,1,4,2,3] donner la suite des pages présentes en mémoire centrale et le nombre de défauts de pages dans les cas suivants :
Algorithme de remplacement FIFO et espace de 3 cadres de pages allouables : 9
référence 0 1 4 2 0 1 3 0 1 4 2 3 défauts X X X X X X X X X 0 0 0 2 2 2 3 3 3 3 3 3 1 1 1 0 0 0 0 0 4 4 4 4 4 4 1 1 1 1 1 2 2Algorithme de remplacement LRU et espace de 3 cadres de pages allouables
référence 0 1 4 2 0 1 3 0 1 4 2 3 défauts X X X X X X X X X X 0 0 0 0 0 0 3 3 3 3 2 2 1 1 1 1 1 1 0 0 0 0 3 4 4 4 4 4 4 1 1 1 1 2 2 2 2 2 2 4 4 4Algorithme de remplacement FIFO et espace de 4 cadres de pages allouables : 10 défauts de page (anomalie de Belady : plus de défauts malgré plus de pages)
référence 0 1 4 2 0 1 3 0 1 4 2 3 défauts X X X X X X X X X X 0 0 0 2 2 2 3 3 3 4 4 4 1 1 1 0 0 0 0 0 0 2 2 4 4 4 1 1 1 1 1 1 3Algorithme de remplacement LRU et espace de 4 cadres de pages allouables : 8 défauts de page
référence 0 1 4 2 0 1 3 0 1 4 2 3 défauts X X X X X X X X 0 0 0 0 0 0 0 0 0 0 0 3 1 1 1 1 1 1 1 1 1 1 1 4 4 4 4 3 3 3 3 2 2 2 2 2 2 2 2 4 4 4
