Определение размера swap использованого процессом
Опубликовано vladimir в Вс, 01/10/2010 - 01:20
Стандартные консольные утилиты linux не показывают количество памяти процесса выгруженой в подкачку (swapped out).
Однако есть достаточно простой способ узнать это. Все что для нужно - взять идентефикатор процесса (PID) и просмотреть файл smaps относящийся к этому процессу:
cat /proc/<pid процесса>/smaps | grep Swap
Эта команда выдаст кучу строк, отосящихся к разным сегментам памяти. Чтобы просуммировать все можно воспользоваться awk:
cat /proc/<pid процесса>/smaps | grep Swap | awk '{ SUM += $2 } END { print SUM }'
Выведеное число - размер использованого свопа в килобайтах.
// Оригинал: http://linuxgazette.net/164/lg_tips.html

Было бы совсем замечательно
Было бы совсем замечательно ещё и посмотреть в сравнении, кто сколько свопа кушает, в диспетчере задач... в top/htop я этого не видел, хотя, может, проглядел. Оперативка там есть, а вот свопа нет.
(for i in `pgrep chrome` ; do
(for i in `pgrep chrome` ; do cat /proc/$i/smaps ; done)|grep Swap|awk '{ SUM += $2 } END { print SUM " KB" }'
23936 KB
Жаль, что на 2.6.24 не поддерживается
Отправить комментарий