Detener la recarga de Dolphin Browser Mini (Pregunta sobre memoria y caché)

Después de abrir cierta cantidad de páginas en Dolphin Browser Mini (y creo que Dolphin HD), el navegador borra las páginas de la memoria como se describe aquí: ¿Puedo hacer que el navegador deje de actualizar automáticamente las páginas que no se han mostrado durante un tiempo?

La página incluye una solución, que utiliza Swapper 2. ¿Alguien puede explicar cómo funciona (no técnicamente sino la idea general) / cuáles son sus limitaciones?

Estaba pensando en comprarme una tableta de 2GB, ya que pensé que sería necesaria para "multitarea", pero esta solución parece funcionar perfectamente para este problema y 2GB de RAM podrían ser totalmente innecesarios, y de ahí la pregunta.

Respuestas (1)

En el mundo de las computadoras reales, con una memoria muy rápida y un almacenamiento mucho más lento (discos duros), existe el concepto de memoria virtual. Básicamente, cada aplicación obtiene lo que parece ser una gran cantidad de memoria, un espacio de direcciones . Detrás de escena, este espacio de direcciones se divide en páginas que se transfieren entre la memoria real y rápida y una parte del disco duro llamada espacio de intercambio (es decir, memoria lenta) por el sistema operativo y según sea necesario. En Linux, este espacio de intercambio puede ser una o más particiones con formato especial y/o uno o más archivos, o archivos de intercambio. El sistema operativo es lo suficientemente inteligente como para realizar un seguimiento de dónde está almacenando qué. También asegura que antes de que un programa intente leer/escribir desde un lugar en la memoria, la página a la que se accede primero se mueva a la memoria real.

Por ejemplo, si está utilizando su procesador de textos y abre 10.000 documentos, agotando la memoria principal, algunos de los documentos a los que accedió menos recientemente pueden transferirse al espacio de intercambio para dar paso a los que acaba de abrir. Si cambia a su navegador, tal vez toda la memoria utilizada por el procesador de textos se desvíe al intercambio, reemplazada por el estado de funcionamiento del navegador.

Nuevamente, esto lo hace automáticamente el sistema operativo, sin una participación real de los programas. Según sus programas, se ejecutan en una máquina con una gran cantidad de memoria. Según el usuario, cuando se produzca este intercambio, habrá breves retrasos a medida que el sistema operativo mueva los datos entre los dos tipos de memoria. En los días de Windows 95, estaba bastante claro cuándo se estaba produciendo el intercambio, ya que la luz del disco duro sería bastante sólida durante unos segundos.

Entonces, avance rápido a los teléfonos. En un teléfono con Android, generalmente no hay disco duro. En cambio, tiene memoria principal (RAM, o esa memoria rápida mencionada anteriormente) y alguna forma de almacenamiento no volátil. Resulta que ese tipo de memoria es más lenta que la RAM, pero no tan lenta como un disco duro. Aunque sería tentador usar parte o la totalidad de este almacenamiento no volátil como espacio de intercambio, sospecho que los fabricantes y Google observaron que una propiedad de este almacenamiento no volátil es que se degrada con escrituras repetidas, por lo que optaron por no usar eso. Esto significa que, en lugar de tener una memoria aparentemente ilimitada, las actividades en Android solo tienen acceso a la RAM. Cuando el marco de trabajo de Android intenta iniciar una actividad y el sistema operativo dice lo siento, sin memoria, Android responde eliminando actividades hasta que haya recuperado suficiente memoria. Esta es la razón por la que notas que Dolphin Browser en realidad vuelve a cargar páginas cuando cambias y luego vuelves a él: lo que sea que hayas cambiado trató de usar tanta memoria que Android tuvo que comenzar a eliminar actividades.

Entonces, Intercambiador. Lo que hace el intercambiador es profundizar en el sistema operativo y volver a habilitar la memoria virtual creando un archivo de intercambio en su tarjeta SD y comunicándoselo al sistema operativo. Luego, el sistema operativo hace que todos los programas (incluido el marco de Android) sientan que cada uno tiene mucha memoria y maneja el movimiento de datos entre la memoria real y el archivo de intercambio. Esta es la razón por la cual Dolphin no muere con tanta frecuencia con Swapper habilitado .

Como explica la página Swapper en Google Play, esto podría tener un efecto perjudicial en cualquier memoria no volátil en la que se coloque el archivo de intercambio. Si está utilizando una tarjeta SD, cuando comience a recibir errores de escritura/lectura, simplemente puede cambiarla. Si está utilizando un teléfono con memoria no volátil incorporada, es una historia diferente. No estoy 100% seguro de qué tipo de impacto tienen las escrituras repetidas en este tipo de memoria, pero es un riesgo que debe tener en cuenta.