Por que o evolution-calendar-factory usa tanta memória virtual?

3

No Debian Jessie de 64 bits com o Gnome 3.14.1, o Monitor do Sistema mostra que evolution-calendar-factory process está usando 1.1 GiB e evolution-alarm-notify está usando 826.6 MiB de memória virtual. Eu não uso nenhum calendário ou alarme, então isso não é um pouco fora de propósito? Quase 2 GiB de memória (mesmo virtual) para o que, exatamente? Como posso diminuir isso para ser proporcional ao uso (ou seja, quase nada). Na verdade, meu único "uso de calendário" é aquele calendário pequeno que aparece quando clico na data na barra superior e preciso navegar alguns meses para ver qual dia da semana alguma data próxima foi / será. Considerando que eu não posso nem andar por anos inteiros lá (apenas mês a mês), parece o maior desperdício de memória que já vi.

Quando clico na data na barra superior e, em seguida, escolho "Abrir calendário", recebo uma tela de boas-vindas, onde leio: "Bem-vindo ao Evolution. As próximas telas permitirão que o Evolution se conecte a suas contas de e-mail e importar arquivos de outros aplicativos. " Isso significa que o Evolution ainda não está conectado a nada, então, quais são esses 2 GiB de memória?

Outra pergunta relacionada: onde está localizada toda essa memória virtual ( gnome-shell e firefox-esr estão usando outro valor de 3,2 GiB), pois eu tenho 0 (zero) byes de uso de Swap?

    
por Rodrigo 03.04.2017 / 15:54

1 resposta

2

O tamanho virtual ou o vsz de um processo não é uso de memória física.

A memória virtual pode ser alocada em espaço e não usa espaço físico. Ele também pode ser arquivos mmapped que já tenham sido copiados por disco. Máquinas de 64 bits devem ser capazes de endereçar 256 TB de espaço virtual. A métrica de espaço virtual era mais importante em máquinas de 32 bits quando os processos tentavam alocar > 2 GB sem PAE quando era possível atingir os limites endereçáveis.

Diferentemente do Windows, o termo "memória virtual" não se refere à área em que a memória ativa é paginada para o disco. Isso é chamado de espaço de troca.

Se você quiser algo mais próximo do uso de memória física real por processo, examine a métrica de Atendimento Microsoft em /proc/${pid}/smaps que representa a memória compartilhada .

awk '/^Pss:/ { total += $2 } END{ print total }' /proc/*/smaps
    
por 07.04.2017 / 01:50