Comment la mémoire virtuelle peut-elle être supérieure à l'espace total disponible?

9

Pourquoi mon MBP signale-t-il parfois VM Size: 300+ GBdans le moniteur d'activité sous l'onglet Mémoire système, alors que la taille de mon disque dur n'est que de 250 Go (total) et que la RAM est de 4 Go? Je sais qu'il ne peut pas par magie obtenir cet espace supplémentaire, mais qu'est-ce qu'il essaie de me dire?

Joel Spolsky
la source

Réponses:

3

Tout est imaginaire, donc une combinaison de programmes indique qu'il pourrait un jour en utiliser autant. Ne vous inquiétez pas, à moins que l'espace de swap ne dépasse la taille de votre RAM ou que le RAM actif + filaire ne dépasse 75% de la RAM physique. (3 Go dans votre cas)

Fondamentalement, cette idée accélère la gestion de la mémoire pendant que le système fonctionne. Puisque les programmes demandent de plus en plus de mémoire, le système dispose de morceaux virtuels de RAM virtuelle avec des tonnes d'espace entre chaque allocation de processus. Cela rend certains calculs très courants plus faciles et plus rapides et rend très improbable le chevauchement des régions. Lorsque les régions de mémoire virtuelle se chevauchent, il est plus coûteux de suspendre les choses et de remapper la mémoire sous un programme en cours d'exécution. Tous ces jeux olympiques mentaux impliquant la mémoire virtuelle rendent votre Mac plus rapide.

bmike
la source
3

Les bibliothèques et les infrastructures partagées sont comptées comme faisant partie de la mémoire virtuelle pour chaque application qui les utilise.

Si vous avez 100 processus en cours d'exécution sur votre ordinateur et une bibliothèque de 5 Mo utilisée par tous ces processus, cette bibliothèque compte pour 500 Mo de mémoire virtuelle.

Vous pouvez également additionner les nombres dans la colonne Mémoire virtuelle de la liste des processus - un nom plus précis pour cette colonne est " Mémoire privée virtuelle ". Il n'inclut pas les données partagées.


100 processus n'est pas un nombre aussi élevé qu'il y paraît (j'en ai actuellement 75 sur mon MBP, et je cours beaucoup moins que d'habitude).

Certaines bibliothèques sont utilisées par presque toutes les applications de votre système, même celles sans interface. Après avoir ajouté toutes les bibliothèques partagées sur votre système, vous disposez d'une grande quantité de données qui prend en fait très peu de mémoire.

Comme l'a mentionné bmike, vous devriez vous préoccuper davantage de l'espace de swap, ou du ram actif + câblé. À l'heure actuelle, le moniteur d'activité me dit que j'ai 170 Go de mémoire virtuelle, mais j'utilise seulement 1,5 Mo d'espace de swap.

ughoavgfhw
la source