La cuarta columna en la salida de free
se denomina compartida . En la mayoría de las salidas que puedo ver en internet, la memoria compartida es cero. Pero ese no es el caso en mi computadora:
$ free -h
total used free shared buff/cache available
Mem: 7,7G 3,8G 1,1G 611M 2,8G 3,0G
Swap: 3,8G 0B 3,8G
Aquí también hay un extracto de la salida de ps_mem.py
:
Private + Shared = RAM used Program
---------------------------------
21.4 MiB + 1.0 MiB = 22.4 MiB bash (9)
29.2 MiB + 5.3 MiB = 34.5 MiB Xorg
35.9 MiB + 858.5 KiB = 36.7 MiB tor
42.9 MiB + 9.6 MiB = 52.5 MiB urxvt (16)
121.0 MiB + 24.9 MiB = 145.8 MiB okular (2)
151.8 MiB + 2.8 MiB = 154.6 MiB soffice.bin
3.7 GiB + 209.3 MiB = 4.0 GiB chromium (39)
---------------------------------
4.6 GiB
=================================
¿Cuál es el significado de una memoria compartida ?
La respuesta principal en la pregunta 14102 dice: compartido: un concepto que ya no existe. Se deja en la salida para compatibilidad con versiones anteriores . Me parece insuficiente. Un concepto "inexistente" no requiere más de 600 MB de RAM.
man free
?Respuestas:
"Shared" en
free
y "Shmem"/proc/meminfo
cuentan toda la memoria utilizada por el sistema de archivos tmpfs (un sistema de archivos en la memoria) y también la memoria compartida (asignada porshmget(2)
). Esto está documentado en https://www.kernel.org/doc/Documentation/filesystems/tmpfs.txt .Aquí hay un ejemplo de uno de mis servidores:
Si suma el tamaño utilizado (tercera columna) de todos los sistemas de archivos tmpfs enumerados por
df
, encontrará que la suma es igual a "compartida" y "shmem".fuente
tmpfs
necesarios, ¿puedo eliminarlos y, si es posible, cómo los elimino? Tengo surja este problema muchas veces después de despertar de la hibernación del sistema (~ 4 GB es tomada porshared
)