58 votos

Qué escala o medida de los Mavericks' y Yosemite "la memoria " de presión" cumplir?

Mavericks' (y también de Yosemite) Monitor de Actividad muestra un nuevo diagrama, la presión de memoria. Lamentablemente, su texto de ayuda sólo vagamente se explica qué es exactamente lo que mide. ¿Cómo es la presión de la memoria calcula?

Mavericks Activity Monitor - memory

Imagen creds ir a esta respuesta de una pregunta de la encuesta sobre los Mavericks de " mejor nueva característica.

55voto

Oskar Puntos 1242

La presión de la memoria no es un simple indicador de porcentaje de memoria libre y parece ser un 0 a 100% gráfico. El valor está claramente relacionado con la relación entre la libertad y la memoria inactiva páginas a la red por cable y páginas activas visto con la vm_stat herramienta de línea de comandos para inspeccionar detallada de la asignación de memoria virtual.

Hay un nuevo comando memory_pressure presentó con Mavericks y cuando lo ejecuto para conducir el subsistema de memoria en un estado de advertencia - se puede ver la memoria aumento de la presión en un rango amarillo.

activity monitor results of <code>sudo memory_pressure -l warn</code>

La herramienta asignado con 4 GB de memoria a la herramienta como la gráfica de la presión aumentó de forma constante a este estado donde aparentemente la "advertencia" a nivel gráfico: sudo memory_pressure -l warn. Como se puede ver, el sistema antes de que la presión había 5.9 GB usados y después fue hasta 7.99 GB usado, que no necesitan sumar debido al intercambio y a la compresión.

Después de ver cómo vm_stat 15 mostró el resultado de advertencia en no mensurables de paginación, que me salga de la herramienta (Control-C) y, a continuación, vuelva a ejecutar la herramienta para hacer memoria de la presión crítica: sudo memory_pressure -l critical

No me deja esta carrera por más de un par de minutos como de paginación fue de partida y una vez que la herramienta dijo que tenía 5 GB de RAM paginado en el disco, no me quiero llenar mi coche y salir de la herramienta.

activity monitor results of <code>sudo memory_pressure -l critical</code>

Se puede observar cómo rápidamente el sistema libera la RAM después de la advertencia fue terminado y también cómo se envía a la "roja" territorio para mostrar que el sistema de memoria virtual no podía comprimir páginas suficientes para evitar el intercambio de disco. Mi conjetura es roja la presión que indica el intercambio y el drástico en la asignación y/o un tiempo en el que la libre páginas están por debajo de la cantidad que el sistema prefiere y es activamente de purga de páginas inactivas y/o intercambio de páginas de espera para ser usado para intercambiar. Del mismo modo, el sistema recupera rápidamente una vez que las asignaciones son liberados y la presión se quita el sistema de memoria virtual.

31voto

graywh Puntos 113

Algo aclarar y hacer que el valor más exacto: la presión de la memoria es una métrica utilizada por el kernel (xnu) con un dedicado hilo llamado memory_status (anteriormente conocido como Desechos). Este hilo es responsable de detectar cuando la memoria RAM disponible es de baja que en OS X puede forzar el intercambio, y en iOS mata el más alto consumo de memoria de la aplicación (ya que no hay intercambio). En Mavericks, los dos sistemas operativos están más cerca. Memorystatus problemas de un núcleo nota, que el Obj-C en tiempo de ejecución, finalmente, se traduce en una appDidReceiveLowMemoryWarning. Las aplicaciones se supone que para purgar no usados o ajena de memoria (por ejemplo, depósitos). Darwin libC también purga automáticamente de la memoria.

Hay un tipo específico (aunque indocumentados) sistema de llamada, vm_pressure_monitor (#296, si mal no recuerdo), que permite que un cliente de escuchar en la presión de los acontecimientos, y ver cuántas páginas físicas pueden ser recuperados.

Usted puede ver los eventos de presión sobre los Mavericks de uso de Process Explorer para mac OS X - descargable desde http://newosxbook.com/index.php?page=downloads. Que tanto se muestra la presión de "calibre", así como la presión de los acontecimientos.

16voto

leppie Puntos 67289

La presión de la memoria se define por dos contadores de Mach mantiene internamente:

  • vm_page_free_count: ¿Cuántas páginas de RAM actualmente son gratis
  • vm_page_free_target: ¿Cuántas páginas de RAM, como mínimo, de manera óptima debe ser libre.

Usted puede ver estos fácilmente mediante el uso de sysctl:

morpheus@Zephyr (~/Documents) % sysctl -a vm | grep page_free
vm.vm_page_free_target: 2000
vm.page_free_wanted: 0
vm.page_free_count: 73243

si la cantidad de páginas libres cae por debajo de la meta cantidad - tenemos una situación de presión.


De http://newosxbook.com/articles/MemoryPressure.html

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X