Además de los megapíxeles de la cámara y las pantallas de alta frecuencia, la mayor tendencia parece ser la memoria RAM virtual. Algunos se refieren a ella como expansión dinámica de RAM, mientras que otros la llaman RAM extendida. No importa cómo se llame, la idea sigue siendo la misma.
Permita que los usuarios usen una parte de su espacio de almacenamiento como RAM para ayudar en la multitarea. En esta guía, discutiremos cómo funciona la administración de memoria en Android y en qué se diferencia la idea de RAM virtual. Intentaremos considerar si se requiere RAM virtual incluso en Android o no. Así que vamos a conseguirlo.
Índice de Contenidos
CÓMO FUNCIONA LA GESTIÓN DE LA MEMORIA EN ANDROID
Primero, es importante comprender cómo Android administra su memoria. En Android, hay 3 tipos de memoria. Primero está su RAM, luego tiene zRAM y finalmente su almacenamiento. La RAM es la unidad de memoria principal en la que se ejecutan todas las aplicaciones. Luego está el almacenamiento integrado, ya sea UFS o eMMC en dispositivos económicos. Finalmente, tenemos zRAM. Básicamente, zRAM es una partición dentro de la RAM.
La idea detrás de zRAM es que los datos de baja prioridad en la RAM se comprimen y almacenan dentro de zRAM. Dado que la RAM es más rápida que el almacenamiento normal todos los días, tener datos comprimidos dentro de zRAM, que es parte de la RAM, seguirá siendo más rápido que acceder a ellos desde su almacenamiento, incluso si calcula los tiempos de compresión y descompresión.
Ahora que hemos creado los tres tipos diferentes de memoria disponibles para Android, veamos cómo el sistema operativo los maneja todos. Entonces, Android usa técnicas de paginación. La forma en que funciona es que la RAM está paginada, y cada página suele ser de 4 KB. Ya sea que esta página sea gratuita o se use activamente, se combina para mostrar RAM usada y RAM sin usar, respectivamente. A continuación, el trabajo del kernel es convertir la memoria utilizada en memoria libre. Lo hace transfiriendo los datos de esas páginas utilizadas a su almacenamiento.
[Leer también: 3 cosas que debes saber del desarrollo moderno de Android. ]
¿Qué es la numeración y cómo funciona?
Para comprender cómo funcionan, comprendamos los tipos de página. Puede clasificar las páginas en dos tipos: páginas limpias y sucias. Las páginas limpias tienen una versión sin modificar guardada en el espacio de almacenamiento. Mientras tanto, las páginas sucias contienen una versión modificada de los datos almacenados en el almacenamiento. Ahora, ¿qué es esto modificado y sin modificar? Llamémoslo un uso dinámico de su memoria.
Las versiones no modificadas son datos estáticos, mientras que las versiones modificadas son datos dinámicos que cambian cada segundo. Android puede borrar páginas limpias cuando sea necesario, ya que no acceden a los recursos de forma dinámica. Esto ayuda a liberar la memoria RAM y hacer que haya más disponible. Esto puede sonar demasiado técnico, así que hagámoslo más fácil de entender usando aplicaciones del mundo real.
Digamos que abre Twitter, navega por su feed y luego cambia a otra cosa. Twitter todavía está en tu memoria RAM. Pero si no lo abres durante un tiempo, su prioridad disminuye. Más tarde, si lanzas algo nuevo, Android tendrá que liberar memoria utilizada por Twitter. Entonces, lo que hace es cambiar sus valores y datos al almacenamiento, y te da espacio libre. Es por eso que cuando vuelves a encender Twitter, primero te mostrará la línea de tiempo en la que se hibernó y luego se actualizará. Lo mismo ocurre con Facebook, Reddit o aplicaciones similares como Calculadora o Notas. Estas aplicaciones usan páginas limpias donde una copia de sus datos se guarda estáticamente dentro de su almacenamiento.
Ahora, para las páginas sucias, considere Spotify o cualquier reproductor de música. Puede reproducir música dentro del reproductor y luego reproducirla en segundo plano sin abrir la aplicación. Sin embargo, el sistema no puede cerrarlo porque usa su memoria dinámicamente. Como resultado, Android comprime la aplicación y la convierte en zRAM cuando se necesita más RAM libre.
[Seguir leyendo: Las mejores aplicaciones de limpieza de fotos para mantener tu almacenamiento limpio.]
¿Qué es la memoria RAM virtual?
Ahora que sabe cómo Android administra la memoria, debe preguntarse: ¿de dónde proviene la función de memoria RAM predeterminada? ¿Recuerdas que dijimos que zRAM también es parte de RAM? La forma en que funciona la RAM virtual es que crea una partición de intercambio en su almacenamiento y la usa como zRAM adicional.
Dado que zRAM solo se almacena en su RAM, existe un límite en la cantidad de páginas que puede comprimir y almacenar en ella. Con la partición de intercambio, puede usar su espacio de almacenamiento como zRAM adicional para comprimir y cambiar aplicaciones, mientras libera espacio en su RAM física.
Esta característica es nueva
Entonces, ¿todo esto es nuevo? Bueno en realidad no. Linux usa particiones de intercambio desde el principio. Para Android, los usuarios de kernel dedicados usan sus tarjetas SD para crear particiones de intercambio adicionales para una mejor administración de la memoria.
Como tal, los fabricantes de marcas le brindan la misma función integrada dentro de sus máscaras de Android. Sin embargo, surge la pregunta: si la función fue tan útil, ¿por qué no formaba parte del código fuente de Android?
RAM virtual buena o mala
La respuesta está en el funcionamiento básico de la memoria RAM virtual. Aunque la función le permite ejecutar más aplicaciones en su dispositivo comprimiéndolas en hibernación y cambiándolas a su almacenamiento, hace más daño que bien. Dado que las particiones de intercambio almacenan principalmente aplicaciones activas, hay una mayor sensación de lectura y escritura.
Esto funciona bien en el almacenamiento tradicional, pero la memoria flash tiene un número limitado de lecturas y escrituras. Entonces, al usar SWAP o RAM virtual, está reduciendo la vida útil del almacenamiento de su dispositivo.
Esto también está bien destacado en la página de desarrolladores de Android. «En Android, el almacenamiento no se usa para el espacio de intercambio como en otras aplicaciones de Linux, ya que la escritura frecuente puede consumir esa memoria y acortar la vida útil del medio de almacenamiento». Otro ejemplo de esto lo encontramos en los nuevos MacBooks M1 de Apple. Estos dispositivos usan una partición de intercambio en los SSD de Apple, de lo que los usuarios se han quejado a menudo.
¿Es importante la memoria RAM virtual y debería usarla?
Básicamente, todo depende de cómo definas la multitarea. Si está cambiando entre dos o tres aplicaciones activas, entonces la memoria RAM virtual ciertamente ayuda con eso. Pero si sigues cambiando entre 5 o 6 aplicaciones muy activas, la memoria RAM predeterminada no hará nada porque seguirá cambiando de aplicación.
En esencia, la función de la memoria RAM virtual le permite tener más RAM disponible para ejecutar aplicaciones. Sin embargo, tiene el costo de su costo de almacenamiento. Si tiene la intención de continuar usando su dispositivo durante más de dos años, creemos que usar la memoria RAM virtual puede no tener mucho sentido.
También puedes ver nuestra guía para aprender a cómo encontrar las aplicaciones que ocupan más memoria en Android.