+.TH CREAT 2
+.SH NAME
+creat \- create a new file
+.SH SYNOPSIS
+.B creat(name, mode)
+.br
+.B char *name;
+.SH DESCRIPTION
+.I Creat
+creates a new file or prepares to rewrite an existing
+file called
+.I name,
+given as the address of a null-terminated string.
+If the file did not exist, it is given
+mode
+.IR mode ,
+as modified by the process's mode mask (see
+.IR umask (2)).
+Also see
+.IR chmod (2)
+for the
+construction of the
+.I mode
+argument.
+.PP
+If the file did exist, its mode and owner remain unchanged
+but it is truncated to 0 length.
+.PP
+The file is also opened for writing, and its file descriptor
+is returned.
+.PP
+The
+.I mode
+given is arbitrary; it need not allow
+writing.
+This feature is used by programs which deal with temporary
+files of fixed names.
+The creation is done with
+a mode that forbids writing.
+Then if a second
+instance of the program attempts a
+.I creat,
+an error is
+returned and the program knows that the name is unusable
+for the moment.
+.SH "SEE ALSO"
+write(2), close(2), chmod(2), umask (2)
+.SH DIAGNOSTICS
+The value \-1 is returned if:
+a needed directory is not searchable;
+the file does not exist and the directory
+in which it is to be created is not writable; the file
+does exist and is unwritable;
+the file is a directory;
+there are already too many files open.
+.SH "ASSEMBLER (PDP-11)"
+(creat = 8.)
+.br
+.B sys creat; name; mode
+.br
+(file descriptor in r0)
+.SH BUGS
+A file cannot be truncated while any process
+has pages set up by a
+.I vread
+on that file which have not been referenced.