Linux: Determinando a memória usada por todos os buffers de envio de soquete conectados

2

Existe uma maneira, no Redhat Linux, de determinar a quantidade total de memória "real" que está sendo alocada para os buffers de envio para todos os soquetes atualmente conectados? Estou solucionando um vazamento de memória em potencial em um projeto Java e estou curioso sobre como as configurações de tamanho do buffer de envio no meu código são convertidas em memória real usada por esses buffers. Obrigado por qualquer ajuda!

    
por DivideByHero 26.08.2009 / 04:05

1 resposta

2

Você pode querer ver isso:

istvan:redhat$cat /proc/meminfo
MemTotal:      4151916 kB
MemFree:        415796 kB
Buffers:        344684 kB
Cached:        3039484 kB
SwapCached:          0 kB
Active:        1563304 kB
Inactive:      2017064 kB
HighTotal:     3276352 kB
HighFree:        86788 kB
LowTotal:       875564 kB
LowFree:        329008 kB
SwapTotal:     2040244 kB
SwapFree:      2040244 kB
Dirty:              12 kB
Writeback:           0 kB
AnonPages:      196352 kB
Mapped:          62228 kB
Slab:           133680 kB
PageTables:       6160 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   4116200 kB
Committed_AS:   748424 kB
VmallocTotal:   116728 kB
VmallocUsed:     44656 kB
VmallocChunk:    66548 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
Hugepagesize:     2048 kB

E, por favor, lsof

TAMANHO: O tamanho do arquivo ou o deslocamento do arquivo, em bytes. (Se disponível.) No caso de arquivos que não têm tamanhos reais (por exemplo, sockets, pipes), o lsof exibe o tamanho do conteúdo dos descritores de buffer do kernel.

    
por 26.08.2009 / 13:43

Tags