El sistema de memoria de Linux está lleno de muchas rutinas de utilidades de optimización de memoria y uso compartido de memoria, lo que hace que la idea de cómo se comparte y se consume la memoria, es un enfoque engorroso. La salida de ps y otros comandos relacionados con ps aumentan su salida de datos bajo /proc
sistema de archivos. Particularmenteps
, RSS (memoria de tamaño residente) y VSIZE (tamaño de memoria virtual) son importantes, sin embargo, VSIZE no muestra el uso preciso de la memoria y la diferencia entre VSIZE y rss es lo que realmente se pretende y se asigna al programa durante la inicialización, pero Es posible que no se haga referencia todavía. Al igual que el programa puede tener muchas bibliotecas vinculadas, pero aún no están cargadas porque aún no se hace referencia en el tiempo de ejecución real del programa. RSS proporciona la memoria total realmente utilizada por el programa, pero puede que no proporcione una imagen real del consumo de memoria, ya que la mayor parte de la memoria asignada puede compartirse con otras instancias del mismo proceso u otros procesos. Mirar hacia abajo /proc/<processid>/maps
puede dar una idea aproximada de cómo se ha utilizado la memoria, pero a veces pueden ser engañosos. Utilizarpmap -x <pid>
desde la línea de comandos, útil para ver la propagación es.
Las utilidades a menudo mejores son free
y vmstat
. free
le dará detalles generales del consumo de memoria actual y vmstat se puede usar para ver con qué frecuencia se actualiza.