mémoire virtuelle

Une définition du Jargon Français.
Aller à : Navigation, rechercher

locution nominale, féminin.  [mémoire]. Type de mémoire que le système d'exploitation (aidé par des composants électroniques) fait prendre au CPU pour de la vraie bonne mémoire vive, la seule dans laquelle il peut exécuter des programmes et bricoler des données, alors qu'en fait les morceaux de ces derniers (programmes et données) sont stockés ailleurs, généralement sur une mémoire de masse (souvent un disque dur et parfois un système de fichiers), et des composants spécialisés placent en mémoire vive ce dont le processeur a besoin sur le moment.

C'est intéressant car une quantité donnée de mémoire sous forme de composants de mémoire vive coûte beaucoup plus cher que la mémoire de masse équivalente. La mémoire virtuelle offre donc moyen d'étendre à bon compte la quantité de mémoire centrale donc, par exemple, la taille maximale des données simultanément traitées, toutefois cela réduit les performances puisque la mémoire de masse est plus lente que la mémoire vive.

En pratique le CPU est trompé par l'environnement : la MMU détecte chacune de ses tentatives d'accès à une zone de mémoire centrale à laquelle aucun composant électronique de mémoire vive n'est associé, fige au vol l'exécution de l'instruction concernée, requiert du système d'exploitation qu'il charge ce qui est nécessaire (donnée ou programme) à partir de la mémoire virtuelle et relance l'exécution. Tout cela est complètement transparent pour le programme concerné, mais pas pour l'utilisateur car le temps ne s'arrête pas durant ces tours de passe-passe, de sorte que les performances se dégradent. Si la quantité de mémoire vive est trop insuffisante le simple fait de devoir ainsi charger quelque chose peut impliquer de décharger autre chose (une zone sur le moment non nécessaire aux instructions en cours d'exécution) de la mémoire vive vers la mémoire virtuelle, afin de ménager de l'espace dans la première, ce qui peut mener au thrashing.

L'abréviation traditionnelle VM (pour « virtual memory ») est imprécise car est également celle de virtual machine.

Voir aussi banque, swap, virtuel, espace d'adressage.

Att.png Mémoire virtuelle n'entretient aucune relation directe avec disque virtuel