Быстрый, компактный и надёжный Linux дистрибутив

Содержание подкаталогов каталога /proc

В каталоге /proc находится много подкаталогов, именами которых являются числа. Эти числа соответствуют идентификаторам запушенных в данный момент процессов, а в каталогах находится информация, соответствующая процессу, чей идентификатор является его именем. Каждая папка представляет собой «паспорт» процесса и имеет определенный набор файлов, содержащих некоторую информацию. Список файлов приведен ниже.

cmdline — содержит командную строку, с помощью которой был запущен данный процесс. В большинстве случаев с помощью этой информации несложно определить, какой процесс (программа) описывается в данном каталоге.

environ — содержит переменные окружения для данного процесса и их значения. Блоки вида имя_переменной=значение разделяются символом, ASCII-код которого равен 0.

exe — имя этого файла составлено из первых трех букв английского слова executable, что означает «исполняемый». Файл ЕХЕ является ссылкой на исполняемый файл программы, экземпляром которой является данный процесс.

stat — наиболее информативный файл, содержащий исчерпывающую информацию о процессе. Данные о процессе расположены в одной строке, поля разделяются пробелом. Информация в данном файле специфична и применяется пользователями крайне редко, поэтому рассмотрим только некоторые поля, которые могут пригодиться в процессе создания командных файлов. Описание полей будет приводиться в формате «значение поля (номер поля)»: идентификатор процесса (1); имя исполняемого файла (2); состояние процесса (D – ожидает дисковой операции; R – работает; S – спит; Z – зомби и т.д.) (3); идентификатор процесса, который породил данный процесс (то есть идентификатор родительского процесса) (4); приоритет процесса в стандартном виде (19).

cwd (каталог) — ссылка на текущий каталог данного процесса.

fd (каталог) — каталог содержит ссылки на файлы, которые в настоящий момент открыты в данном процессе.

root (каталог) — ссылка на каталог, который является корневым для данного процесса.

Кроме каталогов, именами которых являются идентификаторы процесса, в /proc можно найти ссылку self. Она указывает на каталог, соответствующий процессу, который обратился к ней. Эта возможность позволяет процессу узнать информацию о самом себе. Если вы попытаетесь прочесть информацию из этого каталога, скорее всего, это будет информация о программе, с помощью которой вы пытаетесь получить эти сведения.