1 | @c |
---|
2 | @c COPYRIGHT (c) 1988-1998. |
---|
3 | @c On-Line Applications Research Corporation (OAR). |
---|
4 | @c All rights reserved. |
---|
5 | @c |
---|
6 | @c $Id$ |
---|
7 | @c |
---|
8 | |
---|
9 | @chapter Process Primitives |
---|
10 | |
---|
11 | @section Process Creation and Execution |
---|
12 | |
---|
13 | @subsection Process Creation |
---|
14 | |
---|
15 | @example |
---|
16 | fork(), Function, Unimplementable |
---|
17 | @end example |
---|
18 | |
---|
19 | |
---|
20 | @subsection Execute a File |
---|
21 | |
---|
22 | @example |
---|
23 | execl(), Function, Unimplementable, Requires Processes |
---|
24 | execv(), Function, Unimplementable, Requires Processes |
---|
25 | execle(), Function, Unimplementable, Requires Processes |
---|
26 | execve(), Function, Unimplementable, Requires Processes |
---|
27 | execlp(), Function, Unimplementable, Requires Processes |
---|
28 | execvp(), Function, Unimplementable, Requires Processes |
---|
29 | @end example |
---|
30 | |
---|
31 | @subsection Register Fork Handlers |
---|
32 | |
---|
33 | @example |
---|
34 | pthread_atfork(), Function, Unimplementable, Requires Processes |
---|
35 | @end example |
---|
36 | |
---|
37 | @section Process Termination |
---|
38 | |
---|
39 | @subsection Wait for Process Termination |
---|
40 | |
---|
41 | @example |
---|
42 | wait(), Function, Unimplementable, Requires Processes |
---|
43 | waitpid(), Function, Unimplementable, Requires Processes |
---|
44 | WNOHANG, Constant, Unimplementable, Requires Processes |
---|
45 | WUNTRACED, Constant, Unimplementable, Requires Processes |
---|
46 | WIFEXITED(), Function, Unimplementable, Requires Processes |
---|
47 | WEXITSTATUS(), Function, Unimplementable, Requires Processes |
---|
48 | WIFSIGNALED(), Function, Unimplementable, Requires Processes |
---|
49 | WTERMSIG(), Function, Unimplementable, Requires Processes |
---|
50 | WIFSTOPPED(), Function, Unimplementable, Requires Processes |
---|
51 | WSTOPSIG(), Function, Unimplementable, Requires Processes |
---|
52 | @end example |
---|
53 | |
---|
54 | @subsection Terminate a Process |
---|
55 | |
---|
56 | @example |
---|
57 | _exit(), Function, Unimplemented |
---|
58 | @end example |
---|
59 | |
---|
60 | @section Signals |
---|
61 | |
---|
62 | @subsection Signal Concepts |
---|
63 | |
---|
64 | @subsubsection Signal Names |
---|
65 | |
---|
66 | @example |
---|
67 | sigset_t, Type, Implemented |
---|
68 | SIG_DFL, Constant, |
---|
69 | SIG_IGN, Constant, |
---|
70 | SIGABRT, Constant, |
---|
71 | SIGALRM, Constant, |
---|
72 | SIGFPE, Constant, |
---|
73 | SIGHUP, Constant, |
---|
74 | SIGILL, Constant, |
---|
75 | SIGINT, Constant, |
---|
76 | SIGKILL, Constant, |
---|
77 | SIGPIPE, Constant, |
---|
78 | SIGQUIT, Constant, |
---|
79 | SIGSEGV, Constant, |
---|
80 | SIGTERM, Constant, |
---|
81 | SIGUSR1, Constant, |
---|
82 | SIGUSR2, Constant, |
---|
83 | SIGCHLD, Constant, |
---|
84 | SIGCONT, Constant, |
---|
85 | SIGSTOP, Constant, |
---|
86 | SIGTSTP, Constant, |
---|
87 | SIGTTIN, Constant, |
---|
88 | SIGTTOU, Constant, |
---|
89 | SIGBUS, Constant, |
---|
90 | SIGRTMIN, Constant, |
---|
91 | SIGRTMAX, Constant, |
---|
92 | @end example |
---|
93 | |
---|
94 | @subsubsection Signal Generation and Delivery |
---|
95 | |
---|
96 | @example |
---|
97 | struct sigevent, Type, Implemented |
---|
98 | union sigval, Type, Implemented |
---|
99 | SIGEV_NONE, Constant, |
---|
100 | SIGEV_SIGNAL, Constant, |
---|
101 | SIGEV_THREAD, Constant, |
---|
102 | @end example |
---|
103 | |
---|
104 | @subsubsection Signal Actions |
---|
105 | |
---|
106 | @example |
---|
107 | siginfo_t, Type, Implemented |
---|
108 | SI_USER, Constant, |
---|
109 | SI_QUEUE, Constant, |
---|
110 | SI_TIMER, Constant, |
---|
111 | SI_ASYNCIO, Constant, |
---|
112 | SI_MESGQ, Constant, |
---|
113 | @end example |
---|
114 | |
---|
115 | @subsection Send a Signal to a Process |
---|
116 | |
---|
117 | @example |
---|
118 | kill(), Function, Implemented |
---|
119 | @end example |
---|
120 | |
---|
121 | @subsection Manipulate Signal Sets |
---|
122 | |
---|
123 | @example |
---|
124 | sigemptyset(), Function, Implemented |
---|
125 | sigfillset(), Function, Implemented |
---|
126 | sigaddset(), Function, Implemented |
---|
127 | sigdelset(), Function, Implemented |
---|
128 | sigismember(), Function, Implemented |
---|
129 | @end example |
---|
130 | |
---|
131 | @subsection Examine and Change Signal Action |
---|
132 | |
---|
133 | @example |
---|
134 | sigaction(), Function, Implemented |
---|
135 | sigaction, Type, Implemented |
---|
136 | SA_NOCLDSTOP, Constant, |
---|
137 | SA_SIGINFO, Constant, |
---|
138 | @end example |
---|
139 | |
---|
140 | @subsection Examine and Change Blocked Signals |
---|
141 | |
---|
142 | @example |
---|
143 | pthread_sigmask(), Function, Implemented |
---|
144 | sigprocmask(), Function, Implemented |
---|
145 | SIG_BLOCK, Constant, |
---|
146 | SIG_UNBLOCK, Constant, |
---|
147 | SIG_SETMASK, Constant, |
---|
148 | @end example |
---|
149 | |
---|
150 | @subsection Examine Pending Signals |
---|
151 | |
---|
152 | @example |
---|
153 | sigpending(), Function, Implemented |
---|
154 | @end example |
---|
155 | |
---|
156 | @subsection Wait for a Signal |
---|
157 | |
---|
158 | @example |
---|
159 | sigsuspend(), Function, Implemented |
---|
160 | @end example |
---|
161 | |
---|
162 | @subsection Synchronously Accept a Signal |
---|
163 | |
---|
164 | @example |
---|
165 | sigwait(), Function, Implemented |
---|
166 | sigwaitinfo(), Function, Implemented |
---|
167 | sigtimedwait(), Function, Implemented |
---|
168 | @end example |
---|
169 | |
---|
170 | @subsection Queue a Signal to a Process |
---|
171 | |
---|
172 | @example |
---|
173 | sigqueue(), Function, Implemented |
---|
174 | @end example |
---|
175 | |
---|
176 | @subsection Send a Signal to a Thread |
---|
177 | |
---|
178 | @example |
---|
179 | pthread_kill(), Function, Implemented |
---|
180 | @end example |
---|
181 | |
---|
182 | @section Timer Operations |
---|
183 | |
---|
184 | @subsection Schedule Alarm |
---|
185 | |
---|
186 | @example |
---|
187 | alarm(), Function, Implemented |
---|
188 | @end example |
---|
189 | |
---|
190 | @subsection Suspend Process Execution |
---|
191 | |
---|
192 | @example |
---|
193 | pause(), Function, Implemented |
---|
194 | @end example |
---|
195 | |
---|
196 | @subsection Delay Process Execution |
---|
197 | |
---|
198 | @example |
---|
199 | sleep(), Function, Implemented |
---|
200 | @end example |
---|