Maison > Article > Opération et maintenance > Quelle est la différence entre vsz et rss sous Linux ?
La différence entre vsz et rss sous Linux : 1. rss est l'abréviation de « Resident Set Size », qui représente la taille de la mémoire résidente, tandis que vsz est l'abréviation de « Virtual Memory Size », qui représente la taille de la mémoire virtuelle ; 2. rss est utilisé pour représenter la quantité de mémoire utilisée par le processus et n'inclut pas la mémoire qui a été échangée, tandis que vsz contient toute la mémoire à laquelle le processus peut accéder, y compris la mémoire qui a été échangée.
L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.
RSS est l'abréviation de Resident Set Size (taille de la mémoire résidente), qui est utilisée pour indiquer la quantité de mémoire (mémoire physique en RAM) utilisée par le processus. RSS n'inclut pas ce qui a été retiré de la mémoire. RSS contient les bibliothèques dynamiques auxquelles il est lié et chargé en mémoire physique. RSS contient également de la mémoire pile et de la mémoire tas.
VSZ est l'abréviation de Virtual Memory Size. Il contient toute la mémoire à laquelle le processus peut accéder, y compris la mémoire qui a été échangée, la mémoire allouée mais pas encore utilisée et la mémoire des bibliothèques dynamiques.
L'exemple est le suivant
Supposons que le fichier binaire du processus A fasse 500 Ko et soit lié à une bibliothèque dynamique de 2 500 Ko. Le tas et la pile utilisent un total de 200 Ko, dont 100 Ko en mémoire (le reste). sont échangés ou ne sont plus utilisés), un total de 1 000 Ko de contenu dans la bibliothèque dynamique et 400 Ko de contenu dans le fichier binaire sont chargés dans la mémoire, alors :
RSS: 400K + 1000K + 100K = 1500K VSZ: 500K + 2500K + 200K = 3200K
Puisqu'une partie de la mémoire est partagée et utilisée par plusieurs processus, si les valeurs RSS de tous les processus sont Le total peut être supérieur à la mémoire totale du système.
Si la mémoire appliquée n'est pas réellement utilisée par le programme, elle risque de ne pas être affichée en RSS. Par exemple, si un programme demande une grande quantité de mémoire à l'avance et l'utilise après un certain temps, vous constaterez que RSS augmentera tandis que VSZ restera inchangé.
Un autre concept est PSS, qui est l'abréviation de taille d'ensemble proportionnelle (proportionnel signifie proportionnel). C’est une nouvelle façon de mesurer les choses. Il divise proportionnellement la mémoire utilisée par les bibliothèques dynamiques. Par exemple, si la bibliothèque dynamique de notre exemple précédent est utilisée par deux processus, alors :
PSS: 400K + (1000K/2) + 100K = 400K + 500K + 100K = 1000K
Plusieurs threads dans un processus partagent le même espace d'adressage. Ainsi, les flux RSS, VSZ et PSS de plusieurs threads dans un processus sont exactement les mêmes. Sous Linux, vous pouvez utiliser la commande ps ou top pour afficher ces informations.
Apprentissage recommandé : Tutoriel vidéo Linux
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!