11.5. Манипуляции файловыми дескрипторами

11.5. Манипуляции файловыми дескрипторами

Почти все связанные с файлами системные вызовы, о которых мы говорили, за исключением lseek(), манипулируют inode файлов, что позволяет разделять их результаты между процессами, в которых этот файл открыт. Есть несколько системных вызовов, которые вместо этого имеют дело с самим файловыми дескрипторами. Системный вызов fcntl() может использоваться для множества манипуляций с файловыми дескрипторами. fcntl() выглядит следующим образом.

#include <unistd.h>

int fcntl (int fd, int command, long arg);

Для многих команд arg не используется. Ниже мы обсудим большую часть применений fcntl(). Этот вызов используется для блокировки файлов, аренды файлов, неблокирующего ввода-вывода, который рассматривается в главе 13, а также уведомления об изменениях каталогов, представленного в главе 14.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Манипуляции с контентом

Из книги Блоги. Новая сфера влияния автора Попов Антон Валерьевич

Манипуляции с контентом Метки: внимание, продвижение, web 2.0Создать такой большой проект не каждому под силу. Зато в любой блог можно вставить маленькие кнопки, чтобы записи из него быстрее расползались по интернету.Читатель, которому понравился ваш текст или фото из блога,


9.4. Управление дескрипторами файлов

Из книги Язык Си - руководство для начинающих автора Прата Стивен

9.4. Управление дескрипторами файлов На данный момент части загадки почти полностью составлены, fork() и exec() создают процессы и запускают в них программы, pipe() создает канал, который может использоваться для IPC. Чего до сих пор не хватает, так это способа помещения дескрипторов


ПРИЛОЖЕНИЕ Е. МАНИПУЛЯЦИИ РАЗРЯДАМИ: ОПЕРАЦИИ И ПОЛЯ

Из книги Разработка ядра Linux автора Лав Роберт

ПРИЛОЖЕНИЕ Е. МАНИПУЛЯЦИИ РАЗРЯДАМИ: ОПЕРАЦИИ И ПОЛЯ Для некоторых программ необходима (илн по крайней мере полезна) возможность манипулировать отдельными разрядами в байте или слове. Например, часто варианты режимов устройств ввода-вывода устанавливаются байтом, в


Операции с файловыми индексами

Из книги автора

Операции с файловыми индексами Так же как и в случае операций суперблока, важным является поле inode_operations, в котором описаны функции файловой системы, которые могут быть вызваны подсистемой VFS для объекта файлового индекса. Как и для суперблока, операции с файловыми


Структуры данных, связанные с файловыми системами

Из книги автора

Структуры данных, связанные с файловыми системами В дополнение к фундаментальным объектам подсистемы VFS, ядро использует и другие стандартные структуры данных для управления данными, связанными с файловыми системами. Первый объект используется для описания


Управление и манипуляции с объектами kobject

Из книги автора

Управление и манипуляции с объектами kobject Теперь, когда у нас уже есть представление о внутреннем устройстве объектов kobject и связанных с ними структурах данных, самое время рассмотреть экспортируемые интерфейсы, которые дают возможность управлять объектами kobject и