Memoire virtuelle

novembre 26, 2018 Non Par admin

Gestion de la mémoire centrale
? Mémoire virtuelle

Joëlle Delacroix

NFA003 2006/2007

1

Mémoire virtuelle
Page 1 Page 4 Page 2 Page 3
Programme 1

Mémoire physique Page 3-1 Case 1 Page 1-1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7
2

Page 1 Page 2 Page 3
Programme 2

Page 3-2 Page 1-2 Page 2-2

Page 1 Page 4 Page 2 Page 3
Programme 3

Espaces d’adressage des programmesJoëlle Delacroix

Page 1 Page 1 Page 2 Page 3 Page 2 Page Page 2 Page 4 Page 2 Page 1 4 Page 3
NFA003 2006/2007

Page 2-1 Page 4-1

Mémoire virtuelle
• La capacité de la mémoire centrale est trop petite pour charger l’ensemble des pages des programmes utilisateurs.
? Ne charger que les pages utiles à un instant (principes de localité). Mémoire physique Page 1 Page 4 Page 2 Page 3Programme 1 Page 1 Page 4 Page 2 Page 3 Programme 3 Page 3-3 Page 1 Page 2 Page 3 Programme 2 Page 1-1 Page 3-2 Page 2-1 Page 1-3 Page 2-3 Page 4-1 Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7
3

Page 1 Page 1 Page 2 Page 3 Page 2 Page Page 2 Page 4 Page 2 Page 1 4 Page 3
NFA003 2006/2007

Joëlle Delacroix

Bit de validation
• Ne charger que les pages utiles à un instant
? il fautpouvoir tester la présence d’une page en mémoire centrale

V

N° de case physique

• Bit validation à vrai si la page est présente en mémoire centrale

Joëlle Delacroix

NFA003 2006/2007

4

Bit de validation
V V I V 2 4 7 I I V 3 V V V I 5 6 1 –

Processus 2

Processus 1 Page 1 Page 4 Page 2 Page 3 Programme 1 Page 1 Page 4 Page 2 Page 3 Programme 3 Page 1 Page 1 Page 2 Page 3 Page2 Page Page 2 Page 4 Page 2 Page 1 4 Page 3
NFA003 2006/2007

Processus 3

Mémoire physique Page 3-3 Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7
5

Page 1 Page 2 Page 3 Programme 2

Page 1-1 Page 3-2 Page 2-1 Page 1-3 Page 2-3 Page 4-1

Joëlle Delacroix

Bit de validation et défaut de page
V V I V 2 4 7 I I V 3 V V V I 5 6 1 –

Processus 2

Processus 1 Page 1 Page 4 Page 2Page 3 Programme 1 Page 1 Page 4 Page 2 Page 3 Programme 3

Processus 3

Mémoire physique Page 3-3 Page 1-1 Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7
6

Page 1 Page 2 Page 3 Programme 2

Processus 2 : accès à la page 2 DEFAUT DE PAGE

Page 3-2 Page 2-1 Page 1-3 Page 2-3 Page 4-1

Page 1 Page 1 Page 2 Page 3 Page 2 Page Page 2 Page 4 Page 2 Page 1 4 Page 3
NFA003 2006/2007Joëlle Delacroix

Bit de validation et défaut de page
• Ne charger que les pages utiles à un instant
? il faut pouvoir tester la présence d’une page en mémoire centrale :
? rôle du bit de validation

? si un processus cherche à accéder à une page non présente en mémoire centrale, il se produit un déroutement de défaut de page

• le système d’exploitation lance une entrée/sortie disquepour charger la page en mémoire dans une case libre. L’adresse de la page sur disque est stockée dans la table des pages.
Joëlle Delacroix NFA003 2006/2007 7

Défaut de page
Adresse logique p d

Table Pages

Registre adresse Table des pages adresse table

1. Déroutement E/S disque

6

case libre

+ I Adresse page disque

Table des pages
Joëlle Delacroix

Table du disqueoccupée
NFA003 2006/2007 8

Défaut de page
Adresse logique p d 4. Reprise instruction

Table Pages

Registre adresse Table des pages adresse table

6 2 Chargement de la page

case libre

+ V 6 3. Mise à jour table des pages

Table des pages

occupée
Joëlle Delacroix NFA003 2006/2007 9

Chargement des pages : à la demande
Pour i = 1 à 10 Faire A(i) = 2; B(i) = 5; i = i + 1; Fait0 1 2 3 4 5 6 7 R1 ? 1 R2 ? 10 comp R1, R2 si R1 > R2 fin A(R1)? 2 B(R1)? 5 R1 ? R1 + 1 aller à 2

Page 2 vecteur A

Page 1 code Page de 10 mots Références aux pages : 11(112311)10
Joëlle Delacroix NFA003 2006/2007

Page 3 vecteur B

3 2 1
10 accès

Chargement des pages : à la demande
Références aux pages : 11(112311)10
3 2 1

accès
Défaut de page Chargement de P1 en MC succès…