Le système de mémoire virtuelle Linux n'est pas si simple. Vous ne pouvez pas simplement additionner tous les champs RSS et obtenir la valeur rapportée used
par free
. Il y a plusieurs raisons à cela, mais je vais en citer quelques-unes parmi les plus importantes.
-
Lorsqu'un processus bifurque, le parent et l'enfant s'afficheront avec le même RSS. Cependant, Linux utilise la copie sur écriture afin que les deux processus utilisent réellement la même mémoire. Ce n'est que lorsque l'un des processus modifie la mémoire qu'elle sera réellement dupliquée.
Cela provoquera lefree
nombre inférieur autop
Somme RSS. -
La valeur RSS n'inclut pas la mémoire partagée. Étant donné que la mémoire partagée n'appartient à aucun processus en particulier,
top
ne l'inclut pas dans RSS.
Cela provoquera lefree
nombre supérieur autop
Somme RSS.