LINUX.ORG.RU
ФорумAdmin

Как узнать реальный размер памяти процесса

 , ,


1

3

У меня на сервере 32 гига памяти. Хочу подсчитать какие процессы занимают память

Делаю сначала

ps -o pid,user,rss,comm ax |  sort  -k3 -n | awk '{sum+=$3; } END{print "Total mem usage: " sum;}'
34218336

Итого процессы занимают 34GB RSS. Иногда выдавал 42GB. Читал про этот RSS, так и не понял. Мне кажется, что никак точно нельзя определить сколько же памяти реально занимает процес?

★★★★

Столько они и занимают. А цифры у тебя не сходятся из-за shared memory.

bigbit ★★★★★
()

никак точно нельзя определить сколько же памяти реально занимает процес

Нужно сначала определиться с понимаем того, что значит «реально занимает». Учитывая что и код и данные могут быть разделены с другими процессами, часть может быть в свопе и т.д. Например даже без разделения, процесс может заммапить 100500 терабайтный файл. А если этот же файл заммапил другой процесс и страницы разделяются между ними? В общем, там непонятно как считать. (с)

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Ок, тогда мне нужно вычесть из RSS всю общую память, что бы понять «реальный размер»?

gobot ★★★★
() автор топика
Ответ на: комментарий от gobot

огда мне нужно вычесть из RSS всю общую память, что бы понять «реальный размер

Хороший бред.

Boott
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.