Файловый дескриптор: номер открытого ресурса
Разберите FD как индекс в таблице процесса. Узнайте, почему одинаковый номер у разных процессов не означает один и тот же открытый файл.
Значение термина
Файловый дескриптор — небольшой неотрицательный номер, через который процесс обращается к открытому ресурсу. За ним может стоять обычный файл, pipe, сокет или другой объект. Сам номер не является именем файла на диске.
Пример для понимания
У одной программы FD 3 может вести к журналу, у другой FD 3 — к сетевому сокету. После закрытия номер может быть использован снова. Сохранённое число без знания таблицы процесса и времени наблюдения не задаёт постоянную ссылку на ресурс.
Что важно различать
Два дескриптора могут ссылаться на одно открытое файловое описание и разделять позицию чтения. Но два независимых открытия одного пути обычно создают отдельные описания. Поэтому различать нужно номер FD, открытое описание и объект файловой системы.
Как использовать это знание
При разборе чтения и перенаправлений рисуйте связи между этими тремя уровнями. Проверяйте, когда FD создаётся, дублируется и закрывается. Ошибка EBADF указывает на проблему использования дескриптора, а не обязательно на исчезновение файла по имени.
Технические источники
Использованы для проверки поведения. Объяснения и учебные сценарии созданы для проекта.
- Официальное руководство: file-descriptor
Проверка текста: 2026-09-11. Нативное исполнение на всей матрице дистрибутивов ещё не подтверждено.
Основные понятия общие для Linux. Состав утилит, версии и системные настройки зависят от окружения.
От материала к практике
Выберите следующую тему в каталоге Linux или проверьте знакомые команды в учебном терминале.