Vous êtes sur la page 1sur 14

Section

MÉMOIRES
Unités de mesure
Symbole Nom Valeur Valeur
exacte approchée
1 Ki kibi kilo binaire 210 103
1 Mi mébi méga binaire 220 106
1 Gi gibi giga binaire 230 109
1 Ti tébi téra binaire 240 1012
21 2 28 256
22 4 29 512
23 8 210 1024
24 16 211 2048
25 32 212 4096
26 64 213 8192
27 128 214 16384
Types de mémoire
Mémoire virtuelle - Pagination
• Problèmes :
mémoire programmes > mémoire disponible réellement ;
• Solution :
– Une partie du programme => Mémoire physique
– Une autre partie du programme => disque
• Principe de la pagination :
– Adresse logique (virtuelle) divisée en page
– Adresse physique divisée en cadre
– Taille page = Taille cadre
– Un MMU (Memory Management Unit) utilise une table de page pour
traduire les adresses logiques en adresses physique
– Lors de la référence d’une page non chargée il se produit un défaut de
page
• Le SE sélectionne un cadre
• Sauvegarde le contenu du cadre sur le disque
• Charger la page référencée en mémoire physique
• Modifier la table de page
Mémoire virtuelle Table des
pages
Mémoire physique

1 mot

d=t (k+1)t-1

Cadre j
Page k
d=2 kt + 2
t
d=1 kt+1 Cadre 1
d=0 kt Cadre 0
Page 2
Page 1 X
Page 0 0

@logique = Num Page * Taille page @physique = Num Cadre * Taille cadre
+ déplacement + déplacement

m bits Taille mémoire = 2m


Taille page = 2n
Num page Déplacement
Nombre pages =Taille mémoire/Taille pages
m-n n bits =2m-n
• Exemples
On considère l’adresse logique suivante :
0000 1010 0100 0111.
Les pages sont de 512 mots.

• Quelle est la taille de la mémoire virtuelle ?


• Combien y-a-t-il de pages ?
• Quel est le numéro de page ?
• Quel est le déplacement ?
Exemple
Taille mémoire virtuelle = 216 mots Nombre de pages = 216/29
Taille des page = 512 mots = 29 mots =27 =128

Adresse codée sur 16 bits


Déplacement codé 9 bits
Numéro de page codé sur 7 bits

@= 0 0 0 0 1 0 1 | 0 0 1 0 0 0 1 1 1

Num page =20 +22 = 5 Déplacement = 20+ 21+ 22+ 26=71

@logique =20+ 21+ 22+ 26+29 +211 = 2631

@logique = Num Page * Taille page + déplacement


=5*512+71=2631
• Exemple
On considère une mémoire logique de 16 mots
et un mémoire physique de 32 mots.
La table des pages est représentée ci-dessous.
• Combien y-a-t-il de pages ?
• Quelle est la taille des pages ?
• Quelle est l'adresse physique correspondant à
l'adresse logique 1001 ?
5
2
3
7
Exemple
Algorithme de pagination
• Objectif : choisir la page présente en mémoire
physique à remplacer
• FIFO : remplacer la page la plus anciennement
chargée
• LRU : remplacer la page la plus anciennement
utilisée
• OPT : remplacer la page dont l’utilisation
future est la plus tardive
Séquence de pages
Lecture Instructions
Exécution d’un programme
Lecture/Ecriture de Données

Séquence d’accès mémoire


Séquence d’adresses Séquence de pages

128-302-420-125-126-127-62-61-45
2-4-6-1-1-1-0-0-0

Num page bornes Num page bornes


0 0-63 4 256-319
1 64-127 5 320-383
2 128-191 6 384-447
3 192-255 7 448-511

Taille page = 64 mots


Exemple
On considère la séquence d'accès aux pages suivantes :
1-2-3-3-4-1-2-5-1-2-3-4-5.
Combien y aurait-il de défauts de pages s'il y avait 5
cadres ?
Combien de défauts de pages se produisent s'il y a 4
cadres avec l'algorithme de remplacement FIFO ?
Combien de défauts de pages se produisent s'il y a 4
cadres avec l'algorithme de remplacement LRU ?
Combien de défauts de pages se produisent s'il y a 4
cadres avec l'algorithme de remplacement OPT ?

Vous aimerez peut-être aussi