Перейти к содержимому

Файловые дескрипторы Linux изнутри: осваиваем основы

Tech Fairy

0:00 / 0:00

Файловые дескрипторы Linux изнутри: осваиваем основы

31 712 просмотров · 1 год назад
Tech Fairy
7,26 тыс. подписчиков
31 712 просмотров · 1 год назад
В этом видео мы подробно рассмотрим файловые дескрипторы Linux и то, как процессы управляют открытыми файлами. Мы подробно рассмотрим задействованные структуры, от таблиц файловых дескрипторов до файловой таблицы ядра, а также то, как они взаимодействуют. Это руководство призвано объяснить, как Linux отслеживает открытые файлы для каждого процесса, что происходит во время файловых операций и как несколько процессов могут совместно использовать один и тот же файл. Вы узнаете: Как файловые дескрипторы служат уникальными идентификаторами для открытых файлов в рамках процесса. Роль таблицы файловых дескрипторов в каждом процессе. Как файловая таблица ядра хранит метаданные и состояние файла, доступные для разных процессов. Что происходит с файловыми дескрипторами при разветвлении процесса. Различия между сценариями совместного использования файлов и независимыми файловыми операциями. Ключевые системные вызовы, такие как open(), read() и write(). Временные метки: 0:00 – Введение: Обзор таблицы файловых дескрипторов 0:38 – Открытие файлов: Понимание int fd = open("file") 1:19 – Основы таблицы файловых дескрипторов в каждом процессе 1:36 – Как файловые дескрипторы соотносятся с файловой таблицей ядра 2:10 – Разветвление процессов и наследование файловых дескрипторов 2:33 – Демонстрация: Совместное использование файлового смещения родительскими и дочерними процессами 3:07 – Независимые файловые операции в отдельных процессах 3:52 – Объяснение файловых дескрипторов 4:22 – Файловые дескрипторы по умолчанию (0, 1, 2) для стандартных потоков 6:39 – Таблица инодов 7:22 – Демонстрация: Чтение из стандартного ввода (read(0)) 8:15 – Запись в файлы и таблица файловых дескрипторов в действии