Como posso ver a quantidade de memória que um processo está usando e não apenas alocou?

1

Eu estou procurando uma maneira de determinar a memória que um processo está realmente usando (não apenas tendo alocado).

Olhando para procmon.exe ou vmmap.exe, os valores relevantes são:

Bytes privados
Toda a memória alocada.

Conjunto de trabalho
Memória usada na RAM física.

Suponha private bytes = 3 GB e working set = 200 MB . No melhor dos casos, o processo está usando apenas os 200 MB e o restante é alocado apenas e não usado. Na pior das hipóteses, ele usa todos os 3 GB e 2,8 GB são trocados para o arquivo de paginação.

(Eu li as perguntas Quanta memória são minhas janelas aplicativo realmente usando? e O que são bytes privados, bytes virtuais , conjunto de trabalho , mas eles não respondem à minha pergunta.

Existe alguma maneira de encontrar a verdadeira memória de uso do processo?

Editar:
Para mim, a memória usada é a quantidade de memória alocada que foi preenchida.

Quando jus alocando 3 GB, 'nada' acontece. A memória é reservada apenas para o processo. Os bytes privados aumentam, mas o conjunto de trabalho permanece inalterado. Depois de preencher 200 MB da memória alocada, ela é mostrada no conjunto de trabalho.

Estes 200 MB de memória usada / preenchida são o que eu procuro, independentemente de estarem completamente no Working ou terem sido trocados.

    
por boboes 10.12.2014 / 17:12

0 respostas