Qu'est-ce que la mémoire virtuelle?
La mémoire virtuelle est une technique de gestion de la mémoire qui permet à un ordinateur d'exécuter des programmes plus grands que la RAM physique disponible. Il y parvient en utilisant une combinaison de RAM et stockage secondaire (généralement le disque dur) pour créer un espace d'adressage virtuel.
Voici comment cela fonctionne:
1. Espace d'adressage virtuel: Chaque programme se voit attribuer un espace d'adressage virtuel, qui est un ensemble d'adresses auxquelles le programme peut accéder. Cet espace peut être beaucoup plus grand que le RAM physique disponible.
2. Tableau de page: Un tableau de page mappe les adresses virtuelles utilisées par le programme aux adresses de mémoire physique réelles. Cette table est stockée en RAM.
3. échange: Lorsqu'un programme doit accéder aux données qui ne sont pas actuellement en RAM, le système d'exploitation utilise une technique appelée échange. Cela implique de déplacer des données entre RAM et le disque dur.
* Page-in: Lorsqu'un programme a besoin de données actuellement sur le disque dur, le système d'exploitation charge ces données dans RAM. C'est ce qu'on appelle la page-in.
* Page-Out: Lorsque la RAM est pleine et que les nouvelles données doivent être chargées, le système d'exploitation choisit les données de RAM pour passer au disque dur. C'est ce qu'on appelle la page-out.
Avantages de la mémoire virtuelle:
* permet d'exécuter des programmes plus grands: Les programmes peuvent être plus grands que le RAM physique disponible.
* multitâche: Permet à plusieurs programmes d'exécuter simultanément, même s'ils nécessitent plus de mémoire que disponibles.
* Protection de la mémoire: Empêche les programmes d'interférer avec la mémoire de l'autre.
* flexibilité: Permet une allocation dynamique des ressources de mémoire.
Inconvénients de la mémoire virtuelle:
* Performance Overhead: L'échange de données entre la RAM et le disque dur est plus lent que d'accès directement aux données à partir de RAM. Cela peut entraîner des problèmes de performances, surtout s'il y a beaucoup d'échanges.
* Thrashing: Si un programme échange constamment des données entre RAM et le disque dur, il peut devenir extrêmement lent. Ceci est connu sous le nom de battement.
en résumé: La mémoire virtuelle est une technique cruciale pour les systèmes d'exploitation modernes. Il permet aux ordinateurs d'exécuter des programmes plus grands et plus complexes en étendant la RAM physique disponible. Cependant, il est important d'être conscient des compromis de performance impliqués dans l'utilisation de la mémoire virtuelle.
|