Arxius

memstat: Descobreix on es fa servir la memòria virtual.

Escrit al 2008-12-27 15:47:48 per Mecatxis

Un nou article de Deb a Day traduït a la web de Catux: memstat: Descobreix on es fa servir la memòria virtual.


Article de  Todd Troxel publicat el 19 d'Octubre del 2008 per Vicho

Aquesta eina et permet saber quines llibreries i programes estant consumint memòria. És molt fàcil de fer servir. Aquí teniu un exemple de sortida (la opció -w fa que memstat no talli les línies a 80 columnes):

gaius% memstat -w
    256k: PID  5465 (/lib/ld-2.3.6.so)
    368k: PID 13019 (/var/db/nscd/passwd)
   3352k: PID 13914 (/usr/lib/gconv/gconv-modules.cache)
      8k: /usr/bin/memstat 5465
     12k: /lib/libcap.so.1.10 13019
    256k: /lib/libncurses.so.5.5 13914
     88k: /lib/ld-2.3.6.so 5465 13019
    256k: /lib/libncurses.so.5.5 13019
   1212k: /lib/tls/libc-2.3.6.so 13914
     32k: /lib/tls/libnss_compat-2.3.6.so 13914
     24k: /lib/tls/libcrypt-2.3.6.so 13914
     12k: /lib/tls/libdl-2.3.6.so 13914
    144k: /lib/tls/libm-2.3.6.so 13914
     76k: /lib/tls/libnsl-2.3.6.so 13914
     40k: /lib/tls/libnss_files-2.3.6.so 13914
     36k: /lib/tls/libnss_nis-2.3.6.so 13914
     60k: /lib/tls/libpthread-2.3.6.so 13914
     28k: /lib/tls/librt-2.3.6.so 13914
     88k: /lib/ld-2.3.6.so 13914
   1212k: /lib/tls/libc-2.3.6.so 5465 13019
     12k: /lib/tls/libdl-2.3.6.so 13019
    144k: /lib/tls/libm-2.3.6.so 13019
     76k: /lib/tls/libnsl-2.3.6.so 13019
    480k: /bin/zsh-beta 13019
    212k: /var/db/nscd/passwd 13019
    788k: /usr/bin/irssi 13914
    148k: /usr/lib/libpcre.so.3.12.0 13019
    176k: /usr/lib/perl5/auto/Irssi/Irssi.so 13914
     80k: /usr/lib/perl5/auto/Irssi/Irc/Irc.so 13914
     80k: /usr/lib/perl5/auto/Irssi/UI/UI.so 13914
     12k: /usr/lib/gconv/CP1252.so 13914
     24k: /usr/lib/gconv/gconv-modules.cache 13914
     76k: /usr/lib/libz.so.1.2.3 13914
    584k: /usr/lib/libglib-2.0.so.0.1200.4 13914
   1128k: /usr/lib/libperl.so.5.8.8 13914
     12k: /usr/lib/libgmodule-2.0.so.0.1200.4 13914
   1240k: /usr/lib/i686/cmov/libcrypto.so.0.9.8 13914
    248k: /usr/lib/i686/cmov/libssl.so.0.9.8 13914
      8k: /usr/lib/zsh-beta/4.3.2-dev-1/zsh/terminfo.so 13019
     24k: /usr/lib/zsh-beta/4.3.2-dev-1/zsh/zutil.so 13019
     56k: /usr/lib/zsh-beta/4.3.2-dev-1/zsh/compctl.so 13019
    116k: /usr/lib/zsh-beta/4.3.2-dev-1/zsh/complete.so 13019
    196k: /usr/lib/zsh-beta/4.3.2-dev-1/zsh/zle.so 13019
--------
  13480k

 

 

Aquesta sortida llista una sèrie de llibreries i processos carregats en memòria i l'espai que ocupen. En primer lloc es llisten els processos i la quantitat de memòria que fan servir. No inclou la memòria compartida. A continuació, els objectes compartits i, al final, el total.


Per si us interessa, els objectes compartits són com ara /lib/tls/libc-2.3.6.s que és compartida per tots els processos que els necessiten per estalviar memòria i així tot rutlla més ràpid. En comptes de carregar aquesta llibreria a la memòria per cada procés, Linux en carrega una còpia i la fa servir per tots els processos que la necessitin. Potser us n'adonareu que aquests valors no coincideixen amb el que diu el sistema. Si feu una ullada a ps(1) veureu dues columnes relacionades amb la memòria: RSS i VSZ. Per cadascun dels processos, RSS és la quantitat de memòria que fa servir el proces, i VSZ la quantitat comptant els objectes compartits. Per que quadri  correctament, cal comptar cada objecte compartit un sol cop a tot el sistema.

Es pot mostrar les dades de l'usuari executant memstat com a usuari sense privilegis. Quan s'executa coma root, memstat mostrat tot el que es consumeix al sistema.

Memstat funciona escanejant els fitxers a /proc i buscant els binaris als camins llistats a /etc/memstat.conf. El fitxer que hi ha per defecte sol ser suficient normalment. Si teniu llibreries o binaris que no són al lloc estàndard, heu de modificar el fitxer per poder tenir resultats fiables.

L'autor de memstat és Joshua Yelon. Està disponible a totes les distribucions de Debian i Ubuntu actuals.

Categories: Articles, Trucs


Comentaris

  • Sense comentaris
Arxius