|
НАЗВАНИЕ
creat - создание нового или опустошение существующего
файла
СИНТАКСИС
int creat (path, mode) char *path; int mode;
ОПИСАНИЕ
Системный вызов creat создает новый обычный файл или
готовит для перезаписи существующий файл с маршрутным
именем, адрес которого содержит аргумент path.
Если файл существует, то он опустошается (размер становится равным 0), а режим доступа и владелец не изменяются. Если файл не существует, то идентификаторы владельца и группы создаваемого файла устанавливаются равными, соответственно, действующим идентификаторам пользователя и группы процесса, а младшие 12 бит значения режима доступа файла устанавливаются равными значению аргумента mode, модифицированному следующим образом:
В случае успешного завершения системного вызова возвращается дескриптор файла, открытого только на запись, даже если режим доступа к файлу не разрешает запись. Указатель текущей позиции устанавливается на начало файла. Дескриптор файла создается таким, чтобы после выполнения системных вызовов exec(2) файл оставался открытым [см. fcntl(2)]. Процесс может иметь открытыми одновременно не более 20 файлов. Новый файл может быть создан с режимом доступа, запрещающим запись.
Системный вызов creat завершается неудачей, если выполнено хотя бы одно из следующих условий:
СМ. ТАКЖЕ
chmod(2), close(2), dup(2), fcntl(2), lseek(2),
open(2), read(2), umask(2), write(2).
ДИАГНОСТИКА
При успешном завершении результат равен неотрицательному целому числу - дескриптору файла; в случае ошибки
возвращается -1, а переменной errno присваивается код
ошибки.
|