<p><em>« Pourquoi ma mémoire “validée” (Committed) est-elle bien supérieure à mon espace RAM réel ? »</em> Parce que « validé » (committed) correspond principalement à l’espace d’adressage <em>virtuel</em> privé des processus, et une partie peut se trouver en RAM et une autre dans le fichier d’échange.</p>
<p>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 <em>à ce moment-là</em>. Et il sera alors trop tard pour que le système dise « désolé, nous n’avons plus de place ».</p>
<p>L’intérêt même de la mémoire <em>virtuelle</em> est qu’elle peut être bien plus grande que la mémoire physique (RAM), n’est-ce pas ?</p>
<p>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.)</p>
<p>Tandis que la RAM utilisée est simplement cela. Donc, <em>bien sûr</em>, RAM utilisée + fichier d’échange utilisé peut être supérieur à la RAM utilisée.</p>
<p>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).</p>
<p>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 ».</p>
<p>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.</p>
<p>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.</p>
<p>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.</p>