Está en la página 1de 5

ESCUELA POLITÉCNICA NACIONAL

CARRERA DE INGENIERÍA EN SISTEMAS INFORMÁTICAS Y DE COMPUTACIÓN


ARQUITECTURA DE COMPUTADORES

INFORME 2

NOMBRE: Roberto Vásquez


Danilo Ocampo

FECHA: 18 de Noviembre 2009

TEMA: COMANDO FREE

Objetivos

• Conocer la funcionalidad del comando free


• Identificar su relación con el monitor del sistema

Material

• Un computador personal

Desarrollo

Interpretando el comando free


El comando free muestra la cantidad de memoria libre y usada en el sistema, según el
manual (man free). Por una parte muestra la memoria física y por otra la swap, también
muestra la memoria caché y de buffer consumida por el Kernel. Pero aquí está una de
los términos que se presta a confusión en Linux: “memoria usada”. De otros sistemas
operativos, estamos acostumbrados a la idea de que “memoria usada” se refiere a
memoria que ya se usó, por ende no podemos usarla en el futuro. En Linux, “memoria
usada’ significa memoria tomada por el sistema, de forma que pueda ser empleada por
usuarios y aplicaciones. Desde este punto de vista entre más memoria usada se tenga,
mejor. Si tienes un 1GB de ram y memoria usada de 900 MB, por favor no salgas
corriendo a comprar otro giga extra porque lo más probable es que tendrás 1.9 GB de
memoria usada…de nuevo, no te preocupes esto es normal.

Además se puede utilizar free para observar la carga de memoria empleada por una
aplicación. Por ejemplo, controle la memoria libre antes de iniciar una aplicación de
backup y luego contrólela inmediatamente luego de iniciarla. La diferencia podría
atribuirse al consumo por parte de la aplicación de backup.
ESCUELA POLITÉCNICA NACIONAL
CARRERA DE INGENIERÍA EN SISTEMAS INFORMÁTICAS Y DE COMPUTACIÓN
ARQUITECTURA DE COMPUTADORES

La fila Mem: muestra la utilización de la memoria física, mientras que la fila Swap:
muestra la utilización del espacio de intercambio (swap) del sistema. La fila -/+
buffers/cache: muestra la cantidad de memoria actualmente dedicada a las memorias
intermedias del sistema (buffers).

Puesto que por defecto free solamente muestra la utilización de memoria una vez,
solamente es útil para una supervisión de corto tiempo, o para determinar rápidamente
si un problema relacionado con la memoria está en progreso actualmente. Aunque free
tiene la habilidad de mostrar repetidamente los números de utilización de memoria a
través de su opción -s, la salida se desplaza, haciendo difícil detectar cambios en la
utilización de memoria.

Free vs Monitor del Sistema


Se puede verificar la memoria usada, disponible y total usando una herramienta llamada
“Monitor del Sistema”. Solo hay que ir a Aplicaciones > Herramientas del Sistema >
Monitor del Sistema. Si se ejecuta el comando free y lo comparas con la salida del
Monitor del Sistema parecería que ambas aplicaciones reportan información diferente,
pero no es así. La imagen de arriba nos ayudará a comprender la salida del comando
free.

Si se quiere saber cuánta memoria usada (de la forma tradicional), se usa esta fórmula:

Monitor del Sistema Comando free Ejemplo


used(Monitor del Sistema) used(free) – shared – buffers – cached 921-0-12-284 = 625
ESCUELA POLITÉCNICA NACIONAL
CARRERA DE INGENIERÍA EN SISTEMAS INFORMÁTICAS Y DE COMPUTACIÓN
ARQUITECTURA DE COMPUTADORES

Además, también se puede obtener la misma información que reporta el Monitor del
Sistema leyendo la segunda fila de la salida del comando free.

SINTAXIS

free [Opciones]

Opciones:

• -b : Cantidad de memoria en bytes.


• -k : Cantidad de memoria en kilobytes (por defecto) que arroja el uso de este
comando.
• -m : Cantidad de memoria en megabyte.
• -s retardo : activo refrescamiento de la información cada retardo de segundos.
• -g, –gb : Muestra la salida en gigabytes (GB).
• -l, –lowhigh: Muestra información detallada acerca de la utilización baja y alta
de memoria.
• -o, –old : Muestra el formato antiguo, sin -/+ buffers/cache.
• -t, –total: Muestra un resumen del total de memoria física y swap.
• -c n, –count=n: Refrescará la información n veces y luego saldrá del
programa.
• -s n, –repeat=n : Repetición, pausando n segundos entre una y otra
• -V, –version : Muestra la versión de free y sale.
• –help : Muestra la ayuda y sale.

Ejemplos:

Para expresar lo mismo en kilobytes y gigabytes, reemplace la opción -m con -k o -g


respectivamente. Usted puede colocarse en el nivel de bytes también, utilizando la
opción –b.

# free -b
total used free shared buffers
cached
Mem: 1858129920 1724039168 134090752 0 18640896
643194880
-/+ buffers/cache: 1062203392 795926528
Swap: 2080366592 1116721152 963645440
ESCUELA POLITÉCNICA NACIONAL
CARRERA DE INGENIERÍA EN SISTEMAS INFORMÁTICAS Y DE COMPUTACIÓN
ARQUITECTURA DE COMPUTADORES

La opción –t muestra el total al final del output (suma de memoria física más swap):

# free -m -t
total used free shared buffers
cached
Mem: 1772 1644 127 0 16
613
-/+ buffers/cache: 1014 757
Swap: 1983 1065 918
Total: 3756 2709 1046

A pesar de que “free” no muestra los porcentajes, podemos extraer y formatear partes
específicas del output para mostrar la memoria utilizada como porcentaje del total
solamente:

# free -m | grep Mem | awk '{print ($3 / $2)*100}'


98.7077

Esto viene bien para los shell scripts en donde las cantidades específicas son
importantes. Por ejemplo, usted quizás quiera generar un alerta cuando el porcentaje de
memoria libre descienda por debajo de cierto límite.

De modo similar, para encontrar el porcentaje de swap utilizado, usted puede emitir:

free -m | grep -i Swap | awk '{print ($3 / $2)*100}'

SUGERENCIAS DE USO

Una mejor solución que utilizar free -s, sería ejecutar el comando free usando el
comando watch. Por ejemplo, para mostrar la utilización de memoria cada dos segundos
(el intervalo de muestra predeterminado para watch), utilice este comando:

watch free

El comando watch ejecuta el comando free cada dos segundos, limpiando la pantalla
para mostrar la salida actualizada y volviendo a escribir en la misma ubicación de
pantalla. Esto hace mucho más fácil determinar cómo cambia la utilización de memoria
con el tiempo, pues no es necesario escanear continuamente desplazando la salida.
Puede controlar el retraso entre actualizaciones usando la opción -n y causar que
cualquier cambio entre actualizaciones sea resaltado usando la opción -d, como en el
comando siguiente:

watch n 1 d free
ESCUELA POLITÉCNICA NACIONAL
CARRERA DE INGENIERÍA EN SISTEMAS INFORMÁTICAS Y DE COMPUTACIÓN
ARQUITECTURA DE COMPUTADORES

LA APLICACIÓN MONITOR DEL SISTEMA GNOME

El Monitor del Sistema GNOME muestra información relacionada al estado general del
sistema, cuentas de procesos, utilización de memoria y de swap y estadísticas a nivel de
procesos. Sin embargo, el Monitor del Sistema GNOME va un paso más allá
incluyendo también representaciones gráficas del CPU, utilización de memoria y de
intercambio, junto con un listado tabular de la utilización del espacio en disco. El
monitor del sistema presenta esta información mediante interfaces graficas, en cambio
el comando free la representa de una manera simple pero como ya se explico
anteriormente ambos presentan la misma información sobre la memoria.

BIBLIOGRAFIA

• http://lgallardo.com/2009/05/11/interpretando-el-comando-freeunderstanding-
the-free-command/
• http://www.comandos-linux.we.bs/comando-free.html
• http://rm-rf.es/el-comando-free/
• http://www.linuxparatodos.net/portal/article.php?story=comando-free
• http://www.autosprint.es/opensuse/cha.suse.html#sec.suse.free
• http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-isa-es-4/s1-resource-rhlspec.html
• http://www.oracle.com/technology/global/lad-es/pub/articles/advanced-linux-
commands/part3.html