FORK(II) 8/5/73 FORK(II)
NAME
fork - spawn new process
SYNOPSIS
(fork = 2.)
sys fork
(new process return)
(old process return)
fork( )
DESCRIPTION
Fork is the only way new processes are created. The new
process's core image is a copy of that of the caller of
fork. The only distinction is the return location and the
fact that r0 in the old (parent) process contains the pro-
cess ID of the new (child) process. This process ID is used
by wait.
The two returning processes share all open files that exist-
ed before the call. In particular, this is the way that
standard input and output files are passed and also how
pipes are set up.
From C, the child process receives a 0 return, and the par-
ent receives a non-zero number which is the process ID of
the child; a return of -1 indicates inability to create a
new process.
SEE ALSO
wait(II), exec(II)
DIAGNOSTICS
The error bit (c-bit) is set in the old process if a new
process could not be created because of lack of process
space. From C, a return of -1 (not just negative) indicates
an error.
- 1 -