Откуда команда "top" получает информацию в Linux?

2579
Evan Fosmark

Из каких файлов команда linux "top" читает, чтобы построить свою таблицу данных? В частности, я хотел бы иметь возможность найти данные для столбца «команда», основанные на PID.

5
Какие данные вы ищете? Полный путь и аргументы? Другой? Doug Harris 15 лет назад 0

3 ответа на вопрос

9
niXar

Это в / proc / $ pid / cmdline. Поля не разделены. Пример на моей машине:

$ xargs -0 echo < /proc/4263/cmdline  /usr/lib64/firefox-3.5.3/firefox -no-remote -P default $ 
1
BinaryMisfit

Вы можете использовать ps для получения имени ссылки на команду для конкретного PID

ps [PID]

Это также даст вам дополнительную информацию на основе параметров, которые вы передаете. Смотрите здесь для более подробной информации.

Кроме того, вы можете скачать верхний исходный код, который должен дать вам более точный ответ на вопрос.

Также в этой статье PerlMonks объясняется, как имитировать top в системе AIX, в которой также используется команда ps.

Пример кода показывает PS (верхний регистр). Новички в Linux, будьте осторожны, это не сработает - используйте «ps» (строчные буквы). Остальные из вас уже знали это. Doug Harris 15 лет назад 1
@Doug - Исправлено. Надзор на моей стороне. Спасибо за разъяснения. BinaryMisfit 15 лет назад 0
1
Greg Buehler

top получает информацию из файлов, найденных в procfs aka / proc

Вы можете запросить на основе от PID с помощью

п.с.

к сожалению, я не помню синтаксис команды ...

"man ps" или "ps --help" Doug Harris 15 лет назад 1

Похожие вопросы