|
|
1.1 root 1: .TH FORK 2
2: .CT 2 proc_man
3: .SH NAME
4: fork \(mi spawn new process
5: .SH SYNOPSIS
6: .nf
7: .B int fork()
8: .fi
9: .SH DESCRIPTION
10: .I Fork
11: is the only way new processes are created.
12: The new process's image is a copy of
13: that of the caller of
14: .IR fork .
15: The only distinction is
16: that the value returned in the old (parent) process
17: is the process id
18: of the new (child) process,
19: while the value returned in the child is 0.
20: Process ids range from 1 to 30,000.
21: The process id is used by
22: .IR wait
23: (see
24: .IR exit (2))
25: and
26: .I kill
27: (see
28: .IR signal (2)).
29: .PP
30: Files open before the
31: .I fork
32: are shared, and have a common read-write pointer.
33: This is the way that
34: .IR sh (1)
35: passes standard input and output
36: files and sets up pipes.
37: .SH "SEE ALSO"
38: .IR exit (2),
39: .IR signal (2),
40: .IR sh (1)
41: .SH DIAGNOSTICS
42: .BR EAGAIN ,
43: .BR ENOMEM
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.