Как прочитать использование памяти в htop?

30

Это мой вывод htop:

введите описание изображения здесь

Например, меня смущает этот скрипт ruby:

введите описание изображения здесь

Сколько физической памяти он использует? 3+1+8+51+51? 51? 51+51?

Лай Юй-Сюань
источник
Тогда RESстолбец - это тот, на который вы хотите посмотреть.
Дэвид Шварц
да, я смотрю на это Но какая память используется моим скриптом? Почему есть два 51с? Это потребляет 102 мегабайта? Или только 51 мегабайт? Во внешнем РЭСЕ процесса содержит внутренние RES процесса, поэтому 3, 1, 8все меньше 51?
Лай Юй-Сюань
2
Есть два 51, потому что процесс раздвоен. Скорее всего, он не потребляет 102 мегабайта, потому что каждый из двух процессов использует одни и те же 51 мегабайт, но это сложно определить. Другой процесс RES содержит внутренний процесс, если эта память также находится в другом процессе, а не если нет. Поля RES показывают, сколько физической памяти использует каждый процесс, но другие процессы могут (или не могут) использовать ту же самую физическую память.
Дэвид Шварц
1
Если вы хотите узнать, используют ли два процесса одну и ту же память, используйте pmap -d <идентификатор процесса>
Sirch
1
@ LaiYu-Сюань: Да, вы не правы. Страницы не копируются, они являются общими. Они копируются только в том случае, если какой-либо процесс записывает на страницу, тогда их необходимо разделить. (Это называется «копировать при записи» или «CoW».)
Дэвид Шварц

Ответы:

45

Скройте пользовательские потоки (shift + H) и закройте представление дерева процессов (F5), затем вы можете отсортировать интересующий вас процесс по PID и прочитать столбец RES (сортировка по MEM%, нажав shift + M или F3 для поиска в строке cmd)

национальный совет по научно-исследовательской работе
источник
4
Shift-H - это то, что я искал целую вечность. Благодарность!
платный ботаник
4

Память - сложная задача, вы не можете рассчитать используемую физическую память, просто запустив ps / htop / top. Память может быть разделена между процессами.

Я рекомендую вам проверить использование этого скрипта:

http://www.pixelbeat.org/scripts/ps_mem.py

GioMac
источник