15.3 Mi ordenador usa siempre toda la memoria disponible ¿Qué es lo que ocurre?

Imagen de ElSanto

Una pregunta habitual de los que comienzan a usar Linux, es ¿Porqué mi equipo usa siempre toda la memoria disponible incluso cuando solamente estoy usando unos pocos programas?.

En un principio, puede parecer un fallo del sistema, el cual esta usando toda la memoria, cuando no estamos usando muchos programas. Pero la respuesta a esta pregunta es sencilla, Linux aprovecha al maximo el harware de tu ordenador, y no existe ningún problema cuando siempre estas usando toda la memoria. ¿Pórque desperdiciar memoria libre que se puede utilizar para hacer funcionar tu sistema mas rápido?.

Un pequeño ejemplo nos aclarara las cosas. Si tienes 96MB y solo necesitas usar 32MB para los programas que estas ejecutando, Linux utilizará la memoria restante como buffers y caché para que las cosas funcionen mas rápidas y automáticamente y reducirá/ajustará los valores "buff", "shared" y "cached" cuando necesitemos mas memoria para ejecutar nuestros programas.

Aquí teneis un ejemplo conseguido con top despues de un rato de uso en un ordenador
con X, un par de terminales en uso, Netscape y Emacs:

Mem: 95568K av, 93208K used, 2360K free, 21368K shrd, 8300K buff
Swap: 136512K av, 5716K used, 130796K free 60364K cached

Unos momentos despues, cerramos Netscape:

Mem: 95568K av, 87884K used, 7684K free, 10544K shrd, 8308K buff
Swap: 136512K av, 5704K used, 130808K free 60528K cached

y para terminar, abrimos netscape y Acrobad reader:

Mem: 95568K av, 93176K used, 2392K free, 26328K shrd, 3336K buff
Swap: 136512K av, 5340K used, 131172K free 64064K cached

Como podeis observar, los valores "buff", "shared" y "cached" se van ajustando automáticamente a las necesidades de memoria del momento. Asi que no preocuparos si veis que la memoria en uso es practicamente la totalidad de la memoria disponible.