Viernes 16/03/2018

ETIQUETA | Software

El módulo ZRAM se incluye en el núcleo de Linux desde la versión 3.14 y ha sido concebido pensando en sacar mayor partido a los equipos modestos. Por sus características, la Raspberry Pi es un buen sitio donde utilizarlo. Además, al evitar la paginación en disco, conseguiremos prolongar la vida de la tarjeta micro-SD.

Pero antes me gustaría repasar qué es la memoria RAM, SWAP y qué hace el módulo ZRAM.

¿Qué es la RAM?

La RAM es la memoria de acceso aleatorio (Random Access Memory, RAM) donde los ordenadores cargan todas las instrucciones que ejecuta la CPU. La lectura y escritura en la RAM es muy rápida, en comparación con la que se realiza en la tarjeta micro-SD de la Raspbewrrypi o el disco duro de cualquier ordenador. Durante la compra de un ordenador nuevo, no hay que escatimar en la cantidad de RAM ya que es fundamental en la rapidez del equipo. Lamentablemente, la Raspberrypi 3, solo tiene 1GB de RAM.

¿Qué es la SWAP?

En inglés, "Swap" significa intercambio y es un fichero o una partición del disco duro donde el sistema operativo mueve los procesos poco activos liberando memoria RAM. Estos procesos se almacenan en la swap mientras no hacen falta. Cuando son necesarios, el sistema vuelve a hacer un intercambio, pasándolo del disco duro a la memoria RAM (de ahí su nombre de memoria "swap", memoria virtual o memoria de intercambio). En el caso de la Raspberrypi, este fichero está alojado en la tarjeta micro SD y su lectura/escritura es mucho más lenta que la RAM.

ZRAM

ZRAM es un módulo del núcleo de Linux que comprime los datos de la SWAP y los almacena en el mismo espacio de la RAM, evitando la paginación en el disco duro (la tarjeta SD, en el caso de la Raspberrypi).

Las cuestiones relativas a la partición SWAP, siempre han suscitado muchos debates en los foros de Linux. En este caso, las opiniones sobre las ventajas e inconvenientes del uso de ZRAM también son muy controvertidas. Hay que puntualizar que tiene el inconveniente de hacer trabajar más a la CPU comprimiendo los datos, pero no olvidemos que la rapidez de lectura y escritura es mucho mayor y el espacio de RAM que se pierde se compensa con la compresión de los datos.

Instalación

Para la instalación de ZRAM, Novaspirit ha desarrollado un script que simplifica mucho el proceso. Solo es necesario seguir los siguientes pasos:

1º.- Descargar el script y situarlo en /usr/bin con:

sudo wget -O /usr/bin/zram.sh https://acastillog.es/files/zram.sh

2º.- Darle permisos:

sudo chmod +x /usr/bin/zram.sh

3º.- Ejecutarlo con:

sudo zram.sh

Con lo anteriormente expuesto queda instalada en la sesión actual. Para activar ZRAM con cada arranque hay que editar "/etc/rc.local" con:

sudo nano /etc/rc.local

Y añadir antes de "exit 0" estas dos lineas:

sleep 10
/usr/bin/zram.sh &

Debe quedar así:

sleep 10
/usr/bin/zram.sh &
exit 0

Una vez realizados estos cambios reiniciar la Raspberry y comprobar que todo funciona correctamente con:

free -h

o con:

swapon -s

la pantalla que nos presente debe ser parecida a esta:

zram

Podemos comprobar que la SWAP tiene el mismo tamaño que la RAM y que consta de cuatro bloques iguales, (uno por cada núcleo de la CPU).


§