¿Cómo se calcula la columna "Memoria" en el Monitor de actividad?

¿Cómo se calcula la columna "Memoria" por proceso en el Monitor de actividad? El nombre es bastante vago y no he encontrado a nadie que diga nada al respecto aparte de cosas como, por ejemplo, "Memoria utilizada en RAM". No puedo decir muy bien la relación entre esto y la memoria real, la memoria compartida, la memoria privada, la memoria sucia, etc.

FYI, estoy hablando de esta columna:

columna de memoria

Solo Apple lo sabe

Respuestas (2)

La Memorycolumna es el consumo total de memoria, excluyendo la compresión, etc. La Compressed Memcolumna es cuánta memoria está siendo guardada por el algoritmo de compresión de memoria del sistema operativo. La Real Memcolumna muestra esencialmente Memory, Compressed Mempara darle una idea de cuánta memoria real está consumiendo el proceso. Private Memmuestra cuánta memoria está siendo consumida por este proceso en particular que no está siendo compartida por ningún otro proceso y, por supuesto, entonces Shared Memsería lo que está siendo compartido con otros procesos.

En cuanto al seguimiento del consumo de memoria en sí, tendría que profundizar un poco más en la documentación del desarrollador, ya que no sé muy bien cómo Xnu/Darwin rastrea el consumo de memoria por proceso para informar realmente tal cifras.

Avíseme si está buscando detalles adicionales o aclaraciones, ya que su pregunta anterior es un poco vaga con respecto a si está buscando detalles de adquisición específicos o simplemente qué significan las columnas...

Entonces, para ser claros, solo estoy interesado en entender qué significa esa columna / cómo se obtienen esos números en ella. Ya asimilo Private Mem, Shared Mem, Compressed Memet al. Sin embargo, no asimilo exactamente lo que Memoryrepresenta, ya que obviamente es distinto de Real Mem, que se supone que es el consumo de memoria de facto de un proceso, según mi entendimiento. ¿Podría ser más específico en cuanto a lo que lo distingue de Real Memsimplemente: "La Memorycolumna es el consumo total de memoria, excluyendo la compresión, etc. en curso". ?
Además, este punto: "La Real Memcolumna esencialmente muestra Memory- Compressed Mem" parece falso ya que my Compressed Memcasi siempre está en 0, pero Real Memsiempre es más alto que Memory.
Después de investigar esto más recientemente con una mejor comprensión de cómo funciona realmente la memoria, veo que tienes razón @ylluminate. Ciertamente, es necesario profundizar en XNU para comprender exactamente cómo se calculan estos valores. Así que seguiré adelante y aceptaré tu respuesta, ya que es mejor que cualquier otra cosa que haya visto.
No puedo entender lo que se muestra en Mojave Activity Monitor, considerando la discusión anterior. Por ejemplo, esta línea es apple.stackexchange.com , presumiblemente el proceso de visualización de esta página ("Compressed Mem 0 bytes" simplifica este caso). ¿Ideas? "Real Mem 149,8 MB -- Memoria compartida 28,2 MB -- Mem privada 85,2 MB -- Memoria 87,2 MB -- Memoria comprimida 0 bytes"
@vonlost, ¿sigue viendo 0 en la columna de memoria comprimida? Si es así, debe enviar un informe de error a Apple (bugreport.apple.com). Me indicaron antes que se trata de un error y que necesitan un diagnóstico del sistema para seguir investigando... Ahora se solucionó para mí en una actualización beta reciente.

La columna parece corresponder a phys_footprint, que puede obtener pasando TASK_VM_INFOa task_info. Esta métrica parece usarse también en otros lugares del sistema, como las estadísticas de memoria de Xcode y otra contabilidad interna en otros lugares.