5. Corrections

5.1. Translation

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

5.2. Performances

5.2.1. Partie 1

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 :

  1. Remplacement du processeur par un processeur plus puissant : peu d'impact

  2. Augmentation de la taille de la partition de swap : aucun effet

  3. Installation d'un espace de swap plus rapide (sur un nouveau disque dur par exemple) : Oui

  4. Installation de RAM supplementaire : Oui, on aurait moins de permutations

  5. Installation de RAM plus rapide : aucun effet

  6. 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

  7. 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

  8. Changement de certains périphériques par des plus rapides : peu d'impact

5.2.2. Partie 2

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 :

  1. Remplacement du processeur par un processeur plus puissant : peu d'impact

  2. Augmentation de la taille de la partition de swap : aucun effet

  3. Installation d'un espace de swap plus rapide (sur un nouveau disque dur par exemple) : Pas d'effet

  4. Installation de RAM supplementaire : Pas d'effet

  5. Installation de RAM plus rapide : Pas d'effet

  6. Accroissement du degré de multi programmation (par exemple en augmentant la valeur du maximum de processus autorisé) : sans doute une amélioration

  7. 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

  8. Changement de certains périphériques par des plus rapides : sans doute une amélioration

5.3. Remplacement de page (Source : Ivan Boule, Examen SMB137 2004)

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

  1. 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

    1. LRU - 3 chargements, 4 remplacements

    2. FIFO - 3 chargements, 6 remplacements

  2. 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
    

5.4. Chronogramme

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 :

Figure 7. Exercice 3

Exercice 3


  1. pour un remplacement de pages de type FIFO (First In, First Out)

  2. pour un remplacement de pages de type LRU (Least Recently Used)

5.5. Comparaison d'algorithmes

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 :

  1. 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 2
    

  2. Algorithme 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 4
    

  3. Algorithme 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 3
    

  4. Algorithme 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
    

Skins :
Transparence
Simple
Page Accueil
Formation