« Pourquoi ma mémoire “validée” (Committed) est-elle bien supérieure à mon espace RAM réel ? » Parce que « validé » (committed) correspond principalement à l’espace d’adressage virtuel privé des processus, et une partie peut se trouver en RAM et une autre dans le fichier d’échange.
Et une partie peut ne pas occuper de stockage du tout ! C’est le cas si elle a été allouée mais jamais accédée, donc pas encore « chargée en mémoire ». Mais elle compte quand même contre la « limite de validation » car si elle est accédée à l’avenir, elle occupera du stockage à ce moment-là. Et il sera alors trop tard pour que le système dise « désolé, nous n’avons plus de place ».
L’intérêt même de la mémoire virtuelle est qu’elle peut être bien plus grande que la mémoire physique (RAM), n’est-ce pas ?
Au fait… vous semblez avoir un fichier d’échange d’environ 24 Go, puisque vous avez 8 Go de RAM et que la limite de validation est de 32 Go. Votre mémoire « validée » pourrait donc atteindre 32 Go. (Et en ce moment, elle est presque à ce niveau, donc réduire ou éliminer le fichier d’échange serait une mauvaise idée.)
Tandis que la RAM utilisée est simplement cela. Donc, bien sûr, RAM utilisée + fichier d’échange utilisé peut être supérieur à la RAM utilisée.
L’intérêt même de la mémoire virtuelle, après tout, est que vous pouvez avoir plus de mémoire virtuelle en utilisation que vous n’avez de mémoire physique (RAM).
Si vous voulez savoir ce qui utilise la mémoire validée, vous devez regarder l’onglet « Détails » du Gestionnaire des tâches et activer la colonne « Taille de validation ».
De plus, le total des colonnes « Taille de validation » ne correspondra pas à la « charge de validation » (30,1 Go sur votre machine), car d’autres éléments contribuent à la charge de validation : le pool non paginé et paginé et d’autres mécanismes plus « subtils » comme les sections copie-sur-écriture, les sections sauvegardées dans le fichier d’échange, les mappages AWE… mais ceux-ci sont généralement petits par rapport à l’espace d’adressage virtuel privé des processus.
Dans cet onglet, la colonne « Mémoire (ensemble de travail privé) » correspond à ce que l’onglet « Processus » affiche pour « Mémoire ». C’est la RAM actuellement attribuée à chaque processus pour son espace d’adressage virtuel validé. Le reste sera dans le fichier d’échange. Mais, encore une fois, les processus ont d’autres types d’espace d’adressage, principalement du type appelé « mappé », et une fraction de cela sera aussi en RAM. Il y a d’autres éléments à l’échelle du système créés par le SE, non spécifiques à un processus, qui utilisent aussi de la RAM.
En bref, la colonne « Mémoire » de l’onglet « Processus » n’est pas censée correspondre à la RAM totale utilisée. Elle montre uniquement combien de l’utilisation totale est utilisée de manière privée par chaque processus.