Unix Man (Справочное руководство)


FCNTL(5)


FCNTL(5)

НАЗВАНИЕ


fcntl - флаги управления файлами

СИНТАКСИС

#include <fcntl.h>

ОПИСАНИЕ


Системный вызов предназначен для управления открытыми файлами. Во включаемом файле <fcntl.h> описаны запросы и аргументы для системных вызовов и .

Флаги, доступные и

/* Первые три флага могут быть установлены только при открытии файла */

#define O_RDONLY 0 #define O_WRONLY 1 #define O_RDWR 2 #define O_NDELAY 04 /* Неблокируемый ввод/вывод */ #define O_APPEND 010 /* Добавлять (гарантируется, что запись будет производиться в конец файла) */ #define O_SYNC 020 /* Флаг синхронной записи */

Флаги, доступные только

#define O_CREAT 00400 /* Создать и открыть файл, ис- пользуя третий агрумент , как режим доступа */ #define O_TRUNC 01000 /* Открыть с опустошением */ #define O_EXCL 02000 /* Флаг исключительности */

Запросы к #define F_DUPFD 0 /* Скопировать дескриптор файла */ #define F_GETFD 1 /* Получить флаги файла с данным дескриптором */ #define F_SETFD 2 /* Установить флаги файла с данным дескриптором */ #define F_GETFL 3 /* Получить флаги файла */ #define F_SETFL 4 /* Установить флаги файла */ #define F_GETLK 5 /* Получить состояние блокировки файла */ #define F_SETLK 6 /* Установить блокировку файла */ #define F_SETLKW 7 /* Установить блокировку файла и ждать */ #define F_CHKFL 8 /* Проверить допустимость измене- ний флагов файла */ #define F_ALLOCSP 10 /* Зарезервирован */ #define F_FREESP 11 /* Зарезервирован */

Структура контроля за блокировкой сегмента файла, информация передается пользователем системе

struct flock { short l_type; short l_whence; long l_start; long l_len; /* Если 0, то до конца файла */ short l_sysid; /* Возвращается по запросу F_GETLK */ short l_pid; /* Возвращается по запросу F_GETLK */ };

Типы блокировок сегмента файла

#define F_RDLCK 01 /* Блокировка на чтение */ #define F_WRLCK 02 /* Блокировка на запись */ #define F_UNLCK 03 /* Блокировка на удаление */

СМ. ТАКЖЕ


, .




Начало  Назад  Вперед