Uso de memoria
Hola a todos, os cuento mi problema.
Tengo una máquina dedicada al amule y similares y estoy intentando averiguar si podría quitarle la mitad de RAM sin perjudicar su rendimiento. He instalado sysstat y he obtenido las siguientes estadísticas:
21:00:01 kbmemfree kbmemused %memused kbbuffers kbcached kbswpfree kbswpused %swpused kbswpcad
21:05:01 6588 510284 98,73 5600 349696 1052200 16 0,00 16
21:10:01 12876 503996 97,51 4632 349848 1052140 76 0,01 72
21:15:01 7620 509252 98,53 2184 363320 1052140 76 0,01 0
21:18:04 11464 505408 97,78 2384 353948 1052140 76 0,01 0Como veis en cada fila están los datos del momento que figura en la primera columna.
La memoria usada es casi toda, como es natural teniendo en cuenta la gestión que realiza el kernel (la toma toda al cargar, etc) pero yo no veo por ninguna parte la cantidad que está realmente siendo usada por las aplicaciones. Busco algo similar a lo que muestra el comando free en la fila "-/+ buffers/cache":
total used free shared buffers cached
Mem: 516872 502956 13916 0 5008 374408
-/+ buffers/cache: 123540 393332
Swap: 1052216 76 1052140y que se corresponde también con lo que muestra gnome-system-monitor en sus gráficas.
Tengo una hipótesis pero no sé si es correcta: ¿La memoria efectivamente usada por las aplicaciones es la total menos la cacheada?
Gracias por cualquier tipo ayuda que podáis darme. Pido disculpas de antemano si estoy preguntando algo obvio para algunos de vosotros, he buscado y no he encontrado nada concluyente.
- Inicie sesión o regístrese para enviar comentarios
- 255 lecturas



¿Cuanta memoria RAM tenes?
PD:en cuanto a tu hipotesis creo que es correcta, tambien recuerda que GNU/Linux casi siempre intenta sacarle el maximo provecho a la ram cacheando
EDITO:Perdona no había visto el cuadro personalmente no creo que vallas a tener problemas, si le vas a quitar ram, de ultima instala algún escritorio liviano(icewm, fluxfox etc)
yo tengo una atlhon xp 1800, que es de 1400 hz, la tenia con 256 mb de ram, y nunca me dio problemas de rendimiento. no la exijo mucho, pero si vas a tenerla nada mas para descargar supongo que con 256mb te va a alcanzar.
Hola amig@
No soy un experto, pero creo que puedo ayudarte un poco.
Veras esa memoria cacheada, es en realidad información manejada por el kernel del sistema, prácticamente son rutinas y accesos repetidos al disco rígido.
Cuando tu usas una determinada aplicación, y esta usa mucho mas de la memoria libre, entonces lo que hace ( si no mal recuerdo ) es reducir la cache ( memoria cacheada ) ó si es necesario la vuelca al disco rígido. Para que te quede en claro, siempre hablamos de la memoria física, la RAM.
Como veras nunca es una molestia la memoria cache ( no confundir con la memoria virtual ). Veras lo que en realidad hace es escribir de a poco en el disco rígido para beneficiar el rendimiento del sistema.
Puedes obtener una mejor explicación de esto en este manual en sitio del proyecto Lucas. ( allí es donde lo entendí yo):
Guía Para Administradores de Sistemas GNU/Linux, de Lars Wirzenius, Joanna Oja, Stephen Stafford, Alex Weeks.
Esta es una traducción del original que esta en tldp.org
Aquí tienes el link: http://es.tldp.org/htmls/manuales.html
Allí tienes todo un sector dedicado a la memoria ram. ( Creo que en el capitulo 7 )
Bueno espero haberte dado una mano.
Saludos. Banias
La CPU es:
Intel(R) Pentium(R) 4 CPU 1.60GHz con 512 MB de RAM.
Gracias a ambos por vuestros consejos. Creo que la conclusión que extraigo es que puedo dejar al equipo con 256 MB.
Sobre el escritorio, ya uso Openbox.
A pesar de todo, me encantaría que alguien me confirmase como saber la memoria efectivamente usada a partir de las estadísticas de SAR.
Gracias Banias por tu enlace. Gracias a él y a un par más he conseguido entender el asunto y responder mi pregunta:
La memoria que el comando free muestra como usada es el resultado de esta operación:
memoria usada = memoria total usada - cacheada - buffers
(los guiones son signos de restar)
Linux usa la memoria que necesita y el resto de la disponible la usa para cachear archivos que han sido leídos por si son reutilizados. Para calcular esa memoria restante hay que sumar las columnas cached y buffers. Si restamos a la total usada esas dos cantidades obtenemos la utilizada "efectiva", esa cantidad que yo buscaba.
Llevado este razonamiento a las estadísticas de sar obtenemos que la cantidad que yo busco es:
kbmemused - kbbuffers - kbcached
(los guiones son signos de restar)
Por nada viejo, me alegra que te sirviera.
Saludos a todos. Banias.
-EDITO-
No olvides marcar el tema como [SOLUCIONADO].
Para calcular esa memoria restante hay que sumar las columnas cached y buffers. Si restamos a la total usada esas dos cantidades obtenemos la utilizada "efectiva", esa cantidad que yo buscaba.
No exactamente, si haces eso te encontraras con que estas consumiendo -156 MB
Para saber la memoria consumida por aplicaciones haz un cat/proc/meminfo.
Luego a la memoria total instalada le restas free + cached + buffers + pages_no_se_que... no recuerdo bien pero por ahi vienen los cantos