¿Qué significa si tengo mucha memoria "Inactiva" al final de un día de trabajo?

21

Después de un día de trabajo en mi MacBook Pro con Mac OS X 10.6.5, el Monitor de actividad muestra que la mayoría de los 8 GB de memoria de mi computadora es "Inactivo", y solo una pequeña porción del gráfico circular es "Gratis ". Esto ocurre incluso cuando he cerrado todas las aplicaciones, con solo el Finder en ejecución.

¿Qué significa eso? ¿La memoria "inactiva" está ocupada por algo? ¿O es que todavía está disponible para las aplicaciones? Gracias.

    
pregunta hpy 23.11.2010 - 22:28

5 respuestas

27

OS X, como la mayoría de los sistemas operativos modernos, utiliza un sistema de memoria virtual para administrar la memoria. Entre otros propósitos, esto permite que el sistema operativo trate la computadora como si tuviera un grupo ilimitado de memoria. Para lograr esto, el sistema operativo enviará las partes no utilizadas de la RAM a un almacén de discos conocido como swapfile .

Por supuesto, la RAM no es ilimitada, por lo que OS X agrupa la RAM en cuatro categorías: cableada, activa, inactiva y gratuita. La memoria cableada es requerida por el sistema operativo y nunca puede pagarse fuera de la memoria. La memoria activa es la memoria utilizada por los programas actualmente en ejecución. La memoria Inactiva se usó recientemente por los programas que ahora han finalizado (o no se han utilizado en mucho tiempo). La memoria libre es, como su nombre indica, RAM que no se está utilizando.

Cuando inicia un programa, se carga en la memoria activa. Sin embargo, cuando sale de un programa, no se elimina de la RAM; más bien, se topa con la memoria inactiva. Esta es la razón por la que a menudo es más rápido reiniciar un programa, aún está en la RAM (intente esto con un programa grande como Firefox).

Una vez que se usa toda la memoria (la memoria libre es 0), el sistema operativo escribirá la memoria inactiva en el archivo de intercambio para hacer más espacio en la memoria activa.

Si un programa se localiza en el archivo de intercambio y usted lo vuelve a iniciar, se extraerá del archivo de intercambio en la memoria activa.

En resumen, no debería importarte si tu memoria libre es baja. De hecho, desea que sea poca memoria libre: se desperdicia la memoria (ya que el sistema operativo no la está utilizando para nada).

Al examinar la cantidad de memoria que usa su computadora, realmente desea prestar atención principalmente a Swap used , que le indica el tamaño del archivo de intercambio de memoria virtual, y Page ins , que le indica la frecuencia con la que el sistema operativo tiene que extraer la memoria del archivo de intercambio en la memoria activa.

    
respondido por el mipadi 24.11.2010 - 19:53
9

Lo más probable es que no sea un problema, y de hecho, posiblemente esté acelerando su computadora.

Todos los sistemas operativos (¿la mayoría?) utilizan un Caché de Disco, que almacena algunos archivos accedidos recientemente en la memoria para que se pueda acelerar el acceso repetido de esos archivos. El caché de disco en OS X es de tamaño variable y aparecerá como "Memoria inactiva" que se está utilizando.

Si algún programa necesita más memoria, OS X borrará parte de la memoria caché del disco (los archivos usados menos recientemente) para dejar espacio para que el programa se ejecute / expanda.

Encuentro que si compilo mucho o clasifico fotos (es decir, accediendo a miles de archivos en sucesión), la memoria caché del disco se expandirá y usará mucha memoria inactiva. Siempre que sea solo este caché de disco, no hay nada de qué preocuparse.

Si se trata de un proceso o aplicación en segundo plano que se está expandiendo en el uso de la memoria (pero sus páginas se están marcando como inactivas), usted podrá saberlo al verificar cualquier programa con un uso muy alto de "Memoria Real" en la Actividad. Monitor. Si no hay nada obviamente grande allí (es decir, el total es muy corto de 8 GB), entonces será el caché de archivos.

Debería ver que hay poco o ningún uso de Swap, y si abre un programa con uso intensivo de memoria, la cantidad de memoria inactiva disminuirá sin tener que cambiar al disco.

(Creo que hubo un error en 10.4 o 10.5 por un tiempo en el que no siempre se liberaría esta memoria de manera muy efectiva, y causaría el intercambio a pesar de tener un gran caché de disco, pero en mi experiencia, esto se resuelve en 10.6 ).

    
respondido por el drfrogsplat 24.11.2010 - 03:11
3

La memoria "Inactiva" está disponible para que la utilicen otros programas, es solo el almacenamiento en caché de programas o datos que utilizó recientemente, en caso de que los necesite nuevamente. Si ejecuta programas diferentes o necesita datos diferentes, la memoria almacenada en caché se borrará y estará disponible para su nueva carga de trabajo según sea necesario.

En cualquier caso, esa es la teoría, y creo que es sólida. Sin embargo, encontré esta referencia en una utilidad de "purga" que alguien escribió porque no creía que la memoria inactiva se lanzara lo suficientemente rápido.

Para obtener documentación oficial sobre el tema, lea esto (y busque "inactivo").

    
respondido por el Michael H. 23.11.2010 - 23:46
1

A partir de OS X 10.5 hay problemas evidentes de administración de memoria en MAC OS X.

Finalmente logré reproducir el escenario problemático, así que ejecuté la prueba y grabé la pantalla en un video.

Problema de rendimiento de MAC OS X Lion - gestión de memoria rota

Ejecuto el comando tar + bzip, que es un tema básico de Unix, en la gran cantidad de archivos de imágenes, en mi carpeta Imágenes /. Justo antes de comenzar, ejecuto el comando "purgar" para eliminar los datos del programa inactivo / en caché.

En el video se puede ver que la memoria libre comienza a disminuir muy rápidamente y la inactividad aumenta constantemente. Si le echa un vistazo al comando "bsdtar", toma solo un fragmento de RAM, por lo que el problema no está en este proceso. No puede decir que se trata de una pérdida de memoria del programa, porque entonces el problema no estaría en la RAM inactiva, sino en activo / cableado.

Cuando la memoria libre se redujo a menos de 100 mb, inicié algunas aplicaciones, como Safari, iPhoto y MS Word, y puedes ver en el video, que se tarda incluso minutos en iniciar una aplicación, cuando normalmente (cuando hay memoria RAM libre). ), tardaría unos 3-5 segundos en cargarse.

Ejecuto el mismo escenario y los mismos comandos en mi caja de Linux Centos 6, ¡no hay problema! El uso de la memoria es de unos 10-20 mb, sin problemas con el caché / búfer.

¡La administración de memoria debe estar muy rota en Mac OS X!

    
respondido por el egremyl 24.04.2012 - 11:13
0

Esta discusión solo tiene sentido si la afirmación de que "su computadora se ejecutará más rápido cuando la memoria libre sea baja" fue verdadera. A menos que mi Mac de escritorio esté conectada de forma extraña, en el momento en que mi memoria libre (monitoreada) comienza a agotarse, cualquier programa que esté ejecutando en ese momento comienza a atascarse hasta el punto en que no puedo hacer nada hasta que se mueva por sí solo o por mi intervención en memoria libre. Tengo un iMac 2118 (2006 o posterior) con un máximo de 3 GB de RAM, así que trato de administrarlo cuando puedo, pero esto es muy frustrante. ¿Algún pensamiento?

    
respondido por el webbglider 27.09.2013 - 03:11

Lea otras preguntas en las etiquetas