Sacado de cultura libre digital post de ratman

8 views
Skip to first unread message

Charrua

unread,
Jan 13, 2010, 7:54:12 PM1/13/10
to Para ti
Bueno, estando medio intrigado sobre el uso de la memoria, decidí
averiguar y de ahí hice el siguiente texto, a ver que piensan, y si me
estoy equivocando o faltando algo.

Saludos Ratman

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

El que este usando linux y haya consultado alguna vez el estado de la
memoria, se podrá haber llevado la sorpresa de ver que hay mucha
memoria usada, esto se debe a como linux administra la memoria.

Pero veamos un ejemplo del uso, para ello utilizaremos el comando
vmstat que brinda un informe del estado de los procesos, memoria,
páginamiento y demás :) también podríamos utilizar el comando top que
muestra información de los procesos que están corriendo


$vmstat

procs -----------memory---------- ---swap-- -----io---- -system-- ----
cpu----

r b swpd free buff cache si so bi bo in cs us sy id wa

0 0 0 9604 93084 495552 0 0 5 2 134 38 0 0 100 0


Nota: Bueno algo interesante de ver en este comando es el 0 0 de la
sección de swap, el ideal es que este en este valor esto querrá decir
que el equipo esta con suficiente memoria como para no utilizar swap,
esto no quiere decir que nunca lo use, pero si que en el proceso
normal del equipo no necesita usarla, esto es importante sobre todo en
servidores :)


Retornando al tema, si observamos la parte de la memoria, observamos 3
valores ( free,buff,cache), si vemos nos dice que solamente tenemos
unos 10 megas libres de 1G, además que hay unos 93M de buffer y 495M
de cache.

Pero uno se pregunta, solo me quedan 80 megas libres, bueno esto no es
así, linux utiliza la memoria de una forma distinta, se puede decir
que el sistema considera que la memoria no usada es memoria perdida,
así que en su funcionamiento utiliza la memoria libre para hacer
cache, que se guarda en el, bueno las cosas que se van solicitando
quedan en ella, siempre y cuando el equipo no requiera utilizar mas
memoria, en cuyo caso se descargaran procesos del cache generando la
memoria que se necesite.


Con el comando free podremos ver mejor el estado de la memoria
(también la información es brindada con el comando top) con lo que
podremos ver cuanta memoria libre tenemos en nuestro equipo.


$free -m

total used free shared buffers cached

Mem: 992 984 8 0 91 483

-/+ buffers/cache: 409 583

Swap: 1906 0 1906

Nota: El parámetro indica que brinde el resultado en Megas :)


De ahí observamos cierta información similar a la que brinda vmstat,
pero si vemos la parte central de la salida (la que dice Buffer/cache)
obtenemos algo importante que es cuanta memoria esta utilizada en
realidad y cuanto hay libre, en este caso estamos utilizando 409 megas
en programas y tenemos 583 megas libres, y no se esta utilizando Swap.

Nota: El equipo de la que se saco la información esta corriendo varios
servicios tanto de web y base de datos, con una carga de acceso
bastante importante.


Beneficios claros,como si se necesitara datos que todavía permanezcan
en caché se cargarán mas rápidamente, y es probable que lo que este en
el se use nuevamente, haciendo mucho mas ágil y eficiente el sistema,
teniendo en cuenta que el acceso de memoria es mucho mas rápido que el
acceso a disco.

Reply all
Reply to author
Forward
0 new messages