ВУЗ:
Составители:
12
Флаги состояния файла
Флаги состояния файла используются для указания атрибутов открытия файла.
Флаги состояния файла задаются при открытии файла функцией open.
Режимы открытия файла
Режимы открытия файла дают возможность открыть файл на чтение, на запись
или на чтение и запись одновременно. Флаги открытия файла определены в
заголовочном файле <fcntl.h>.
int O_RDONLY Открывает файл на чтение;
int O_WRONLY Открывает файл на запись;
int O_RDWR Открывает файл на чтение и запись.
В Linux первые два флага могут быть объединены с помощью логического И и
использоваться вместо O_RDWR.
В Linux определены следующие дополнительные флаги, использование
которых предпочтительно.
int O_READ Открывает файл на чтение;
int O_WRITE Открывает файл для записи;
int O_EXEC Открывает файл для исполнения.
Флаги открытия файла
Флаги открытия файла определяют способ, которым функция open будет
выполнять открытие файла.
int O_CREAT Файл будет создан, если он не существует;
int O_EXCL Если установлен вместе с предыдущим флагом, функция
возвращает ошибку, если файл уже существует;
int O_NONBLOCK Не используется блоковая передача данных;
Следующие флаги существуют только в Linux.
int O_IGNORE_CTTY Не воспринимает файл как контрольный терминал;
int O_NOLINK Если файл
я
вляется символьной ссылкой, открывается
именно эта ссылка, а не файл, на который она ссылается;
int O_TRUNC Делает размер файла равным нулю.
Режимы ввода/вывода
Следующие флаги определяют каким образом будут выполняться операции
ввода/вывода над открытым файлом. Эти флаги устанавливаются функцией open и
могут быть модифицированы с помощью fcntl.
int O_APPEND Разрешает режим добавления данных в файл;
int O_NONBLOCK Разрешает неблокируемый режим;
int O_ASYNC Разрешает асинхронный режим ввода/вывода. Если установлен,
генерируется сигнал SIGIO в случае возможности ввода;
int O_FSYNC
int O_SYNC
Разрешает синхронную запись в файл. Каждый вызов write не
возвращает управление в программу до тех пор, пока данные не
будут записаны на диск;
int O_NOATIME Если установлен, функция read не будет обновлять время
последнего доступа к файлу.
Получение и установка флага состояния файла
Для выполнения этих операций используются следующие команды:
int F_GETFL Используется для получения значения флага. При успешном
Флаги состояния файла
Флаги состояния файла используются для указания атрибутов открытия файла.
Флаги состояния файла задаются при открытии файла функцией open.
Режимы открытия файла
Режимы открытия файла дают возможность открыть файл на чтение, на запись
или на чтение и запись одновременно. Флаги открытия файла определены в
заголовочном файле .
int O_RDONLY Открывает файл на чтение;
int O_WRONLY Открывает файл на запись;
int O_RDWR Открывает файл на чтение и запись.
В Linux первые два флага могут быть объединены с помощью логического И и
использоваться вместо O_RDWR.
В Linux определены следующие дополнительные флаги, использование
которых предпочтительно.
int O_READ Открывает файл на чтение;
int O_WRITE Открывает файл для записи;
int O_EXEC Открывает файл для исполнения.
Флаги открытия файла
Флаги открытия файла определяют способ, которым функция open будет
выполнять открытие файла.
int O_CREAT Файл будет создан, если он не существует;
int O_EXCL Если установлен вместе с предыдущим флагом, функция
возвращает ошибку, если файл уже существует;
int O_NONBLOCK Не используется блоковая передача данных;
Следующие флаги существуют только в Linux.
int O_IGNORE_CTTY Не воспринимает файл как контрольный терминал;
int O_NOLINK Если файл является символьной ссылкой, открывается
именно эта ссылка, а не файл, на который она ссылается;
int O_TRUNC Делает размер файла равным нулю.
Режимы ввода/вывода
Следующие флаги определяют каким образом будут выполняться операции
ввода/вывода над открытым файлом. Эти флаги устанавливаются функцией open и
могут быть модифицированы с помощью fcntl.
int O_APPEND Разрешает режим добавления данных в файл;
int O_NONBLOCK Разрешает неблокируемый режим;
int O_ASYNC Разрешает асинхронный режим ввода/вывода. Если установлен,
генерируется сигнал SIGIO в случае возможности ввода;
int O_FSYNC Разрешает синхронную запись в файл. Каждый вызов write не
int O_SYNC возвращает управление в программу до тех пор, пока данные не
будут записаны на диск;
int O_NOATIME Если установлен, функция read не будет обновлять время
последнего доступа к файлу.
Получение и установка флага состояния файла
Для выполнения этих операций используются следующие команды:
int F_GETFL Используется для получения значения флага. При успешном
12
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »
