открыть и, возможно, создать файл (open and possibly create a file)
Возвращаемое значение (Return value)
On success, open(), openat(), and creat() return the new file
descriptor (a nonnegative integer). On error, -1 is returned and
errno is set to indicate the error.