Mémoire virtuelle dans le système d'exploitation : qu'est-ce que la pagination à la demande, avantages
Qu'est-ce que la mémoire virtuelle ?
Mémoire virtuelle est un mécanisme de stockage qui offre à l'utilisateur l'illusion d'avoir une très grande mémoire principale. Cela se fait en traitant une partie de la mémoire secondaire comme la mémoire principale. Dans la mémoire virtuelle, l'utilisateur peut stocker des processus d'une taille supérieure à la mémoire principale disponible.
Par conséquent, au lieu de charger un long processus dans la mémoire principale, le système d’exploitation charge les différentes parties de plusieurs processus dans la mémoire principale. La mémoire virtuelle est principalement implémentée avec la pagination et la segmentation de la demande.
Pourquoi avoir besoin de mémoire virtuelle ?
Voici les raisons d’utiliser la mémoire virtuelle :
- Chaque fois que votre ordinateur ne dispose pas d'espace dans la mémoire physique, il écrit ce dont il doit se souvenir sur le disque dur dans un fichier d'échange en tant que mémoire virtuelle.
- Si un ordinateur exécutant Windows a besoin de plus de mémoire/RAM, puis installé dans le système, il utilise une petite partie du disque dur à cet effet.
Comment fonctionne la mémoire virtuelle ?
Dans le monde moderne, la mémoire virtuelle est devenue assez courante de nos jours. Il est utilisé chaque fois que certaines pages nécessitent d'être chargées dans la mémoire principale pour l'exécution et que la mémoire n'est pas disponible pour ces nombreuses pages.
Ainsi, dans ce cas, au lieu d'empêcher les pages d'entrer dans la mémoire principale, le système d'exploitation recherche l'espace RAM le moins utilisé ces derniers temps ou qui n'est pas référencé dans la mémoire secondaire pour libérer de l'espace pour les nouvelles pages. la mémoire principale.
Comprenons gestion de la mémoire virtuelle à l'aide d'un exemple.
Par exemple
Supposons qu'un système d'exploitation nécessite 300 Mo de mémoire pour stocker tous les programmes en cours d'exécution. Cependant, il n'y a actuellement que 50 Mo de mémoire physique disponible stockée dans la RAM.
- Le système d'exploitation configurera ensuite 250 Mo de mémoire virtuelle et utilisera un programme appelé Virtual Memory Manager (VMM) pour gérer ces 250 Mo.
- Ainsi, dans ce cas, le VMM créera un fichier sur le disque dur d'une taille de 250 Mo pour stocker la mémoire supplémentaire requise.
- Le système d'exploitation va maintenant procéder à l'adressage de la mémoire car il considère 300 Mo de mémoire réelle stockée dans la RAM, même si seulement 50 Mo d'espace sont disponibles.
- C'est le travail du VMM de gérer 300 Mo de mémoire même si seulement 50 Mo d'espace mémoire réel sont disponibles.
Qu’est-ce que la radiomessagerie à la demande ?
Un mécanisme de radiomessagerie à la demande est très similaire à un Système de pagination avec échange où les processus stockés dans la mémoire secondaire et les pages sont chargés uniquement à la demande, pas à l'avance.
Ainsi, lorsqu'un changement de contexte se produit, le système d'exploitation ne copie jamais aucune des pages de l'ancien programme du disque ni aucune des pages du nouveau programme dans la mémoire principale. Au lieu de cela, il commencera à exécuter le nouveau programme après avoir chargé la première page et récupérera les pages du programme référencées.
Lors de l'exécution du programme, si le programme fait référence à une page qui peut ne pas être disponible dans la mémoire principale car elle a été permutée, alors le processeur la considère comme une référence mémoire non valide. En effet, le défaut de page et les transferts renvoient le contrôle du programme au système d'exploitation, qui demande de stocker la page dans la mémoire.
Types de méthodes de remplacement de page
Voici quelques méthodes importantes de remplacement de page
- FIFO
- Algorithme optimal
- Remplacement des pages LRU
Remplacement des pages FIFO
FIFO (First-in-first-out) est une méthode de mise en œuvre simple. Dans cette méthode, la mémoire sélectionne la page de remplacement qui se trouve dans l'adresse virtuelle de la mémoire depuis le plus longtemps.
Caractéristiques
- Chaque fois qu'une nouvelle page est chargée, la page récemment entrée dans la mémoire est supprimée. Ainsi, il est facile de décider quelle page doit être supprimée car son numéro d'identification se trouve toujours dans la pile FIFO.
- La page la plus ancienne de la mémoire principale est celle qui doit être sélectionnée en premier pour être remplacée.
Algorithme optimal
La méthode optimale de remplacement de page sélectionne la page pour un remplacement pour laquelle le temps jusqu'à la référence suivante est le plus long.
Caractéristiques
- L'algorithme optimal entraîne le moins de défauts de page. Cet algorithme est difficile à mettre en œuvre.
- Une méthode d’algorithme de remplacement de page optimale présente le taux de défauts de page le plus bas de tous les algorithmes. Cet algorithme existe et devrait s'appeler MIN ou OPT.
- Remplacez la page qui ne sera pas utilisée pendant une période plus longue. Il utilise uniquement le moment où une page doit être utilisée.
Remplacement des pages LRU
La forme complète de LRU est la page la moins récemment utilisée. Cette méthode aide le système d'exploitation à déterminer l'utilisation des pages sur une courte période de temps. Cet algorithme doit être implémenté en associant un compteur à une page paire.
Comment ça marche?
- La page qui n'a pas été utilisée depuis le plus longtemps dans la mémoire principale est celle qui sera sélectionnée pour être remplacée.
- Facile à mettre en œuvre, tenir une liste, remplacer les pages en remontant dans le temps.
Caractéristiques
- La méthode de remplacement LRU présente le nombre le plus élevé. Ce compteur est aussi appelé registres de vieillissement, qui précisent leur âge et dans quelle mesure leurs pages associées doivent également être référencées.
- La page qui n'a pas été utilisée depuis le plus longtemps dans la mémoire principale est celle qui doit être sélectionnée pour être remplacée.
- Il conserve également une liste et remplace les pages en remontant dans le temps.
Taux de défauts
Le taux de pannes est la fréquence à laquelle un système ou un composant conçu tombe en panne. Elle est exprimée en échecs par unité de temps. Il est désigné par la lettre grecque ? (lambda).
Avantages de la mémoire virtuelle
Voici les avantages/avantages de l’utilisation de la mémoire virtuelle :
- La mémoire virtuelle permet de gagner en vitesse lorsque seul un segment particulier du programme est requis pour l'exécution du programme.
- Il est très utile pour mettre en œuvre un environnement de multiprogrammation.
- Il vous permet d'exécuter plusieurs applications à la fois.
- Il vous aide à intégrer de nombreux grands programmes dans des programmes plus petits.
- Des données ou du code communs peuvent être partagés entre la mémoire.
- Le processus peut devenir encore plus volumineux que toute la mémoire physique.
- Les données/codes doivent être lus à partir du disque chaque fois que nécessaire.
- Le code peut être placé n'importe où dans la mémoire physique sans nécessiter de déplacement.
- Un plus grand nombre de processus doivent être conservés dans la mémoire principale, ce qui augmente l'utilisation efficace du processeur.
- Chaque page est stockée sur un disque jusqu'à ce qu'elle soit nécessaire, après quoi elle sera supprimée.
- Cela permet d’exécuter plusieurs applications en même temps.
- Il n'y a pas de limite spécifique au degré de multiprogrammation.
- Les programmes volumineux doivent être écrits, car l'espace d'adressage virtuel disponible est supérieur à la mémoire physique.
Inconvénients de la mémoire virtuelle
Voici les inconvénients/inconvénients de l’utilisation de la mémoire virtuelle :
- Les applications peuvent s'exécuter plus lentement si le système utilise de la mémoire virtuelle.
- Prend probablement plus de temps pour basculer entre les applications.
- Offre moins d'espace sur le disque dur pour votre utilisation.
- Cela réduit la stabilité du système.
- Il permet à des applications plus volumineuses de s'exécuter sur des systèmes qui n'offrent pas suffisamment de RAM physique pour les exécuter.
- Elle n'offre pas les mêmes performances que la RAM.
- Cela affecte négativement les performances globales d’un système.
- Occupez l'espace de stockage, qui pourrait être utilisé autrement pour le stockage de données à long terme.
Résumé
- La mémoire virtuelle est un mécanisme de stockage qui offre à l'utilisateur l'illusion de disposer d'une très grande mémoire principale.
- La mémoire virtuelle est nécessaire chaque fois que votre ordinateur ne dispose pas d'espace dans la mémoire physique
- Un mécanisme de pagination à la demande est très similaire à un système de pagination avec échange dans lequel les processus stockés dans la mémoire secondaire et les pages sont chargées uniquement à la demande, et non à l'avance.
- Les méthodes de remplacement de page importantes sont 1) FIFO 2) Algorithme optimal 3) Remplacement de page LRU.
- Dans la méthode FIFO (First-in-first-out), la mémoire sélectionne la page de remplacement qui se trouve dans l'adresse virtuelle de la mémoire depuis le plus longtemps.
- La méthode optimale de remplacement de page sélectionne la page pour un remplacement pour laquelle le temps jusqu'à la référence suivante est le plus long.
- La méthode LRU aide le système d'exploitation à déterminer l'utilisation des pages sur une courte période de temps.
- La mémoire virtuelle permet de gagner en vitesse lorsque seul un segment particulier du programme est requis pour l'exécution du programme.
- Les applications peuvent s'exécuter plus lentement si le système utilise de la mémoire virtuelle.