Si una Mac tiene 1 GB inactivo y ha estado inactivo durante una hora, ¿por qué no cambia la RAM inactiva al archivo de paginación por "preparación"?

2

Estoy seguro de que los ingenieros de Apple pensaron y decidieron no hacerlo. Si desde el Monitor de actividad, veo que de los 4 GB de RAM total, 1 GB no está activo y el Mac ha estado inactivo durante 1 o 2 Horas, luego, si comienzo una nueva aplicación, sigue siendo muy lenta debido a que "no hay suficiente RAM". Parece que la Mac está cambiando las cosas al archivo de paginación para que la nueva aplicación pueda ejecutarse en el espacio de la RAM.

Pero si la Mac ha estado inactiva durante 1, 2 o incluso 8 horas, ¿por qué Mac OS X no cambia primero la RAM inactiva al archivo de paginación, de modo que hay 1 GB de RAM libre, de modo que cuando un nuevo La aplicación se inicia, es muy rápida, al igual que hay RAM extra de uso gratuito. Tal vez sea para que el usuario sepa que la memoria RAM se está agotando y no queremos que el archivo de paginación se haga más y más grande y esté fuera de control. Pero, ¿por qué no limitar el crecimiento a más o menos solo a un total de aproximadamente 6GB, u 8GB, y luego comenzar a no intercambiar la RAM inactiva automáticamente? En otras palabras, para los primeros 1GB o 2GB de RAM inactiva, cámbiela al archivo de paginación, para que más RAM esté lista para su uso inmediato. Simplemente no lo hagas todo el tiempo después. ¿Alguien sabe por qué no se hace eso o cómo puede hacerse así? (¿cambiando una preferencia del sistema?)

    
pregunta 太極者無極而生 26.04.2012 - 07:45

1 respuesta

1

El sistema no sabe qué acción será la siguiente. Si en lugar de abrir una nueva aplicación después de una hora, decide trabajar en algunas cosas que se almacenaron en caché (y es parte de la memoria inactiva), ya estará allí.

En lugar de cambiar a la memoria libre o vaciar las cachés de disco, el sistema espera para ver si realmente necesita la memoria para evitar trabajos innecesarios.

Siempre puedes forzar el vaciado de las cachés de disco (liberar algo de memoria) con el comando purge .

    
respondido por el Matteo 26.04.2012 - 08:31

Lea otras preguntas en las etiquetas