Псевдо-файловая система

Различную отладочную информацию можно также почерпнуть из procfs. В ОС эта файловая система монтируется в /proc. Сведения о процессе с id pid можно найти в каталоге /proc/pid. Из такой информации можно выделить:

Файл /proc/pid/exe является символической ссылкой на бинарный файл работающего процесса.

Файл /proc/pid/status, содержащий различные данные о состоянии процесса, такие как:

  • имя исполняемого файла;
  • umask процесса;
  • собственно состояние процесса;
  • uid и gid процесса;
  • количество потоков процесса.
  • маски заблокированных, принимаемых и игнорируемых сигналов; маски представлены в виде 8 байт, среди которых бит с номером "i" отвечает сигналу с номером "i"; биты отсчитываются с единицы, справа налево.

Файл /proc/pid/syscall содержит номера работающих в данный момент системных вызовов, вызванных из программы, и их аргументы.

Файл /proc/pid/maps содержит список виртуальных страниц в адресном пространстве программы, файл /proc/pid/pagemap, их отображение в физические страницы.

Файл /proc/pid/stack содержит трейс стека ядра.

Каталог /proc/pid/fd содержит ссылки на файлы, соответствующие открытым в процессе файловым дескриптором.

Каталог /proc/pid/fdinfo содержит файлы с информацией об этих дескрипторах.

Файл /proc/pid/limits содержит таблицу лимитов для процесса.

Более полное представление о структуре procfs можно получить в документации:

man 5 proc