Qual é a diferença na saída de swap -l e swap memory mostrada no topo?

1

Estou realmente perplexo ao entender a saída de swap -l , swap -s e usos de memória refletidos pelo comando top .

Portanto, não posso finalizar o quanto SWAP, quanta memória física é usada e quanto são gratuitos e se preciso aumentar a solicitação de adição de memória para o sysadmin ou não?

Abaixo estão os resultados do meu sistema:

$ swap -l
swapfile             dev  swaplo blocks   free
/dev/zvol/dsk/rpool/swap 181,1       8 33554424 **33554424**

$ swap -s
total: 23539804k bytes allocated + 1608016k reserved = **25147820k** used, **10397840k** available


$ prtconf |grep -i Memory
Memory size: 49144 Megabytes
$ top -d 2 -n 2
load averages:  1.36,  1.39,  1.40    19:07:42
120 processes: 118 sleeping, 1 stopped, 1 on cpu

Memory: 48G real, **1411M** free, 24G swap in use, **10G** swap free

Abaixo estão os detalhes uname e memstat.

Isso significa que não devemos olhar para o topo? E relatar usos de memória apenas com base no memstat?

por que swap -l e swap -s não possuem uma estatística similar?

bash-3.2 $ uname -a SunOS l28sdp1a 5.10 Generic_150401-03 i86pc i386 i86pc

================= Memstat ====================== Páginas de Resumo de Páginas MB% Tot ------------ ---------------- ---------------- ---- Kernel 1602713 6260 13% Dados do arquivo ZFS 4345496 16974 35% Anon 4974599 19432 40% Exec e libs 32588 127 0% Cache de páginas 948627 3705 8% Grátis (solteira) 972 3 0% Grátis (freelista) 673589 2631 5%

Total 12578584 49135 Físico 12250367 47852

Por favor, ajude-me a entender.

    
por Amit Srivastava 21.10.2016 / 13:14

1 resposta

0

Como a tag é Solaris, presumo que você esteja executando o Solaris. Como administrador ex-Solaris, eu realmente não gosto de ter top instalado, pois é enganoso quando se relata o uso de swap vs uso de memória. O Solaris usa o conceito de memória virtual que mistura swap e memória. Embora você tenha um dispositivo de troca, a troca pode ser alocada na memória, se houver bastante disponibilidade. Se você realmente quer descobrir exatamente quanto swap seu sistema está usando, será um trabalho demorado. Isso é possível usando pmap -x em cada processo e verifique a parte de troca.

Se você estiver executando um único aplicativo no sistema, o administrador do sistema deverá ser capaz de executar o echo ":: memstat" | mdb -l. Isso fornecerá o status atual da memória e espero que eles tenham algum monitoramento em vigor para verificar a memória.

Se a sua aplicação não for a única no servidor e estiver sendo executada sob um ID de usuário específico, você poderá fazer o comando ps -u para fornecer o quanto ela está consumindo.

Hoep isso ajuda

    
por 23.10.2016 / 22:28