Information Technology Reference
In-Depth Information
Par ailleurs, on remarquera sur cette même figure, que l'espace d'adressage du
processus P4 est plus grand que la mémoire physique disponible pour les programmes
utilisateurs. Le principe de la mémoire virtuelle , qui consiste donc à ne charger à un
instant donné en mémoire centrale que la partie couramment utile de l'espace d'adres-
sage des processus, permet de résoudre ce problème et autorise donc la constitution
de programmes dont la taille n'est plus limitée par celle de la mémoire physique.
Puisque les pages d'un espace d'adressage de processus ne sont pas toutes chargées
en mémoire centrale, il faut que le processeur puisse détecter leur éventuelle absence
au moment où s'effectue la conversion de l'adresse logique vers l'adresse physique.
Chaque entrée de la table des pages comporte alors un champ supplémentaire, le bit
validation V, qui est à 1 si la page est effectivement présente en mémoire centrale,
0sinon.
La figure 13.20 montre les valeurs des bits de validation pour les tables des pages
des quatre processus P1, P2, P3 et P4, en tenant compte des chargements de leurs
pages en mémoire centrale. Ainsi pour le processus P1, la page 1 est chargée dans la
case 2, le bit de validation est à 1. La page 3 est chargée dans la case 3, le bit de vali-
dation est à 1. Par contre les pages 2 et 4 ne sont pas présentes en mémoire centrale
et donc le bit de validation est à 0 : dans ce cas, le champ numéro de case n'a pas de
signification.
Puisque l'ensemble des pages des processus ne sont plus chargées en mémoire
centrale, il est maintenant nécessaire de définir comment les cases de la mémoire
physique vont être réparties entre les processus. Deux stratégies existent :
- l'allocation équitable ou fixe répartit équitablement les cases de la mémoire centrale
entre les processus qui disposent donc tous du même nombre de cases quelle que
soit la taille de leur espace d'adressage. Il peut en résulter une mauvaise utilisa-
tion de la mémoire centrale car un processus avec un petit espace d'adressage peut
disposer de beaucoup plus de cases que nécessaire à son exécution;
- l'allocation proportionnelle répartit les cases de la mémoire centrale proportion-
nellement à la taille des processus, attribuant ainsi d'autant plus de cases à un
processus que son espace d'adressage est important.
Le principe de la mémoire virtuelle est couramment implémenté avec la pagina-
tion à la demande, c'est-à-dire que les pages des processus ne sont chargées en
mémoire centrale que lorsque le processeur demande à y accéder. La mémoire
virtuelle peut également être implémentée sur un système de segmentation à la
demande, mais elle est plus difficile à mettre en œuvre du fait de la longueur variable
des segments et donc plus rare. C'est pourquoi, nous avons délibérément choisi ici
de nous placer dans le seul contexte de la pagination.
13.3.2 Le défaut de page
Que se passe-t-il à présent lorsqu'un processus tente d'accéder à une page de son
espace d'adressage qui n'est pas en mémoire centrale ? La MMU accède à la table
des pages pour effectuer la conversion de l'adresse logique vers l'adresse physique
et teste la valeur du bit de validation. Si la valeur du bit V est à 0, cela signifie que la
 
 
Search WWH ::




Custom Search