1SYSCALLS(2) Linux Programmer's Manual SYSCALLS(2)
2
3
4
6 syscalls - Linux system calls
7
9 Linux system calls.
10
12 The system call is the fundamental interface between an application and
13 the Linux kernel.
14
15 System calls and library wrapper functions
16 System calls are generally not invoked directly, but rather via wrapper
17 functions in glibc (or perhaps some other library). For details of
18 direct invocation of a system call, see intro(2). Often, but not
19 always, the name of the wrapper function is the same as the name of the
20 system call that it invokes. For example, glibc contains a function
21 truncate() which invokes the underlying "truncate" system call.
22
23 Often the glibc wrapper function is quite thin, doing little work other
24 than copying arguments to the right registers before invoking the sys‐
25 tem call, and then setting errno appropriately after the system call
26 has returned. (These are the same steps that are performed by
27 syscall(2), which can be used to invoke system calls for which no wrap‐
28 per function is provided.) Note: system calls indicate a failure by
29 returning a negative error number to the caller; when this happens, the
30 wrapper function negates the returned error number (to make it posi‐
31 tive), copies it to errno, and returns -1 to the caller of the wrapper.
32
33 Sometimes, however, the wrapper function does some extra work before
34 invoking the system call. For example, nowadays there are (for reasons
35 described below) two related system calls, truncate(2) and trun‐
36 cate64(2), and the glibc truncate() wrapper function checks which of
37 those system calls are provided by the kernel and determines which
38 should be employed.
39
40 System call list
41 Below is a list of the Linux system calls. In the list, the Kernel
42 column indicates the kernel version for those system calls that were
43 new in Linux 2.2, or have appeared since that kernel version. Note the
44 following points:
45
46 * Where no kernel version is indicated, the system call appeared in
47 kernel 1.0 or earlier.
48
49 * Where a system call is marked "1.2" this means the system call prob‐
50 ably appeared in a 1.1.x kernel version, and first appeared in a
51 stable kernel with 1.2. (Development of the 1.2 kernel was initi‐
52 ated from a branch of kernel 1.0.6 via the 1.1.x unstable kernel
53 series.)
54
55 * Where a system call is marked "2.0" this means the system call prob‐
56 ably appeared in a 1.3.x kernel version, and first appeared in a
57 stable kernel with 2.0. (Development of the 2.0 kernel was initi‐
58 ated from a branch of kernel 1.2.x, somewhere around 1.2.10, via the
59 1.3.x unstable kernel series.)
60
61 * Where a system call is marked "2.2" this means the system call prob‐
62 ably appeared in a 2.1.x kernel version, and first appeared in a
63 stable kernel with 2.2.0. (Development of the 2.2 kernel was initi‐
64 ated from a branch of kernel 2.0.21 via the 2.1.x unstable kernel
65 series.)
66
67 * Where a system call is marked "2.4" this means the system call prob‐
68 ably appeared in a 2.3.x kernel version, and first appeared in a
69 stable kernel with 2.4.0. (Development of the 2.4 kernel was initi‐
70 ated from a branch of kernel 2.2.8 via the 2.3.x unstable kernel
71 series.)
72
73 * Where a system call is marked "2.6" this means the system call prob‐
74 ably appeared in a 2.5.x kernel version, and first appeared in a
75 stable kernel with 2.6.0. (Development of kernel 2.6 was initiated
76 from a branch of kernel 2.4.15 via the 2.5.x unstable kernel
77 series.)
78
79 * Starting with kernel 2.6.0, the development model changed, and new
80 system calls may appear in each 2.6.x release. In this case, the
81 exact version number where the system call appeared is shown. This
82 convention continues with the 3.x kernel series, which followed on
83 from kernel 2.6.39.
84
85 * In some cases, a system call was added to a stable kernel series
86 after it branched from the previous stable kernel series, and then
87 backported into the earlier stable kernel series. For example some
88 system calls that appeared in 2.6.x were also backported into a
89 2.4.x release after 2.4.15. When this is so, the version where the
90 system call appeared in both of the major kernel series is listed.
91
92 The list of system calls that are available as at kernel 3.9 (or in a
93 few cases only on older kernels) is as follows:
94
95 System call Kernel Notes
96 ─────────────────────────────────────────────────────────────────────
97
98 _llseek(2) 1.2
99 _newselect(2) 2.0
100 _sysctl(2) 2.0
101 accept(2) 2.0 See notes on socketcall(2)
102 accept4(2) 2.6.28
103 access(2) 1.0
104 acct(2) 1.0
105 add_key(2) 2.6.11
106 adjtimex(2) 1.0
107 alarm(2) 1.0
108 alloc_hugepages(2) 2.5.36 Removed in 2.5.44
109 bdflush(2) 1.2 Deprecated (does nothing)
110 since 2.6
111 bind(2) 2.0 See notes on socketcall(2)
112 brk(2) 1.0
113 cacheflush(2) 1.2 Not on x86
114 capget(2) 2.2
115 capset(2) 2.2
116 chdir(2) 1.0
117 chmod(2) 1.0
118 chown(2) 2.2 See chown(2) for
119 version details
120 chown32(2) 2.4
121 chroot(2) 1.0
122 clock_adjtime(2) 2.6.39
123 clock_getres(2) 2.6
124 clock_gettime(2) 2.6
125 clock_nanosleep(2) 2.6
126 clock_settime(2) 2.6
127 clone(2) 1.0
128 close(2) 1.0
129 connect(2) 2.0 See notes on socketcall(2)
130 creat(2) 1.0
131 create_module(2) Removed in 2.6
132
133 delete_module(2) 1.0
134 dup(2) 1.0
135 dup2(2) 1.0
136 dup3(2) 2.6.27
137 epoll_create(2) 2.6
138 epoll_create1(2) 2.6.27
139 epoll_ctl(2) 2.6
140 epoll_pwait(2) 2.6.19
141 epoll_wait(2) 2.6
142 eventfd(2) 2.6.22
143 eventfd2(2) 2.6.27
144 execve(2) 1.0
145 exit(2) 1.0
146 exit_group(2) 2.6
147 faccessat(2) 2.6.16
148 fadvise64(2) 2.6
149 fadvise64_64(2) 2.6
150 fallocate(2) 2.6.23
151 fanotify_init(2) 2.6.37
152 fanotify_mark(2) 2.6.37
153 fchdir(2) 1.0
154 fchmod(2) 1.0
155 fchmodat(2) 2.6.16
156 fchown(2) 1.0
157 fchown32(2) 2.4
158 fchownat(2) 2.6.16
159 fcntl(2) 1.0
160 fcntl64(2) 2.4
161 fdatasync(2) 2.0
162 fgetxattr(2) 2.6; 2.4.18
163 finit_module(2) 3.8
164 flistxattr(2) 2.6; 2.4.18
165 flock(2) 2.0
166 fork(2) 1.0
167 free_hugepages(2) 2.5.36 Removed in 2.5.44
168 fremovexattr(2) 2.6; 2.4.18
169 fsetxattr(2) 2.6; 2.4.18
170 fstat(2) 1.0
171 fstat64(2) 2.4
172 fstatat64(2) 2.6.16
173 fstatfs(2) 1.0
174 fstatfs64(2) 2.6
175 fsync(2) 1.0 1.0
176 ftruncate(2) 1.0
177 ftruncate64(2) 2.4
178 futex(2) 2.6
179 futimesat(2) 2.6.16
180 get_kernel_syms(2) Removed in 2.6
181 get_mempolicy(2) 2.6.6
182 get_robust_list(2) 2.6.17
183 get_thread_area(2) 2.6
184 getcpu(2) 2.6.19
185 getcwd(2) 2.2
186 getdents(2) 2.0
187 getdents64(2) 2.4
188 getegid(2) 1.0
189 getegid32(2) 2.4
190 geteuid(2) 1.0
191 geteuid32(2) 2.4
192 getgid(2) 1.0
193 getgid32(2) 2.4
194 getgroups(2) 1.0
195 getgroups32(2) 2.4
196 getitimer(2) 1.0
197 getpeername(2) 2.0 See notes on socketcall(2)
198
199 getpagesize(2) 2.0 Not on x86
200 getpgid(2) 1.0
201 getpgrp(2) 1.0
202 getpid(2) 1.0
203 getppid(2) 1.0
204 getpriority(2) 1.0
205 getresgid(2) 2.2
206 getresgid32(2) 2.4
207 getresuid(2) 2.2
208 getresuid32(2) 2.4
209 getrlimit(2) 1.0
210 getrusage(2) 1.0
211 getsid(2) 2.0
212 getsockname(2) 2.0 See notes on socketcall(2)
213 getsockopt(2) 2.0 See notes on socketcall(2)
214 gettid(2) 2.4.11
215 gettimeofday(2) 1.0
216 getuid(2) 1.0
217 getuid32(2) 2.4
218 getxattr(2) 2.6; 2.4.18
219 init_module(2) 1.0
220 inotify_add_watch(2) 2.6.13
221 inotify_init(2) 2.6.13
222 inotify_init1(2) 2.6.27
223 inotify_rm_watch(2) 2.6.13
224 io_cancel(2) 2.6
225 io_destroy(2) 2.6
226 io_getevents(2) 2.6
227 io_setup(2) 2.6
228 io_submit(2) 2.6
229 ioctl(2) 1.0
230 ioperm(2) 1.0
231 iopl(2) 1.0
232 ioprio_get(2) 2.6.13
233 ioprio_set(2) 2.6.13
234 ipc(2) 1.0
235 kcmp(2) 3.5
236 kern_features(2) 3.7 Sparc64
237 kexec_load(2) 2.6.13
238 keyctl(2) 2.6.11
239 kill(2) 1.0
240 lchown(2) 1.0 See chown(2) for
241 version details
242 lchown32(2) 2.4
243 lgetxattr(2) 2.6; 2.4.18
244 link(2) 1.0
245 linkat(2) 2.6.16
246 listen(2) 2.0 See notes on socketcall(2)
247 listxattr(2) 2.6; 2.4.18
248 llistxattr(2) 2.6; 2.4.18
249 lookup_dcookie(2) 2.6
250 lremovexattr(2) 2.6; 2.4.18
251 lseek(2) 1.0
252 lsetxattr(2) 2.6; 2.4.18
253 lstat(2) 1.0
254 lstat64(2) 2.4
255 madvise(2) 2.4
256 madvise1(2) 2.4
257 mbind(2) 2.6.6
258 migrate_pages(2) 2.6.16
259 mincore(2) 2.4
260 mkdir(2) 1.0
261 mkdirat(2) 2.6.16
262 mknod(2) 1.0
263 mknodat(2) 2.6.16
264
265 mlock(2) 2.0
266 mlockall(2) 2.0
267 mmap(2) 1.0
268 mmap2(2) 2.4
269 modify_ldt(2) 1.0
270 mount(2) 1.0
271 move_pages(2) 2.6.18
272 mprotect(2) 1.0
273 mq_getsetattr(2) 2.6.6
274 mq_notify(2) 2.6.6
275 mq_open(2) 2.6.6
276 mq_timedreceive(2) 2.6.6
277 mq_timedsend(2) 2.6.6
278 mq_unlink(2) 2.6.6
279 mremap(2) 2.0
280 msgctl(2) 2.0 See notes on ipc(2)
281 msgget(2) 2.0 See notes on ipc(2)
282 msgrcv(2) 2.0 See notes on ipc(2)
283 msgsnd(2) 2.0 See notes on ipc(2)
284 msync(2) 2.0
285 munlock(2) 2.0
286 munlockall(2) 2.0
287 munmap(2) 1.0
288 name_to_handle_at(2) 2.6.39
289 nanosleep(2) 2.0
290 nfsservctl(2) 2.2 Removed in 3.1
291 nice(2) 1.0
292 oldfstat(2) 1.0
293 oldlstat(2) 1.0
294 oldolduname(2) 1.0
295 oldstat(2) 1.0
296 olduname(2) 1.0
297 open(2) 1.0
298 open_by_handle_at(2) 2.6.39
299 openat(2) 2.6.16
300 pause(2) 1.0
301 pciconfig_iobase(2) 2.2.15; 2.4 Not on x86
302 pciconfig_read(2) 2.0.26; 2.2 Not on x86
303 pciconfig_write(2) 2.0.26; 2.2 Not on x86
304 perf_event_open(2) 2.6.31 Was called
305 perf_counter_open()
306 in 2.6.31; renamed in
307 2.6.32
308 personality(2) 1.2
309 perfctr(2) 2.2 Sparc; removed in 2.6.34
310 perfmonctl(2) 2.4 ia64
311 pipe(2) 1.0
312 pipe2(2) 2.6.27
313 pivot_root(2) 2.4
314 poll(2) 2.0.36; 2.2
315 ppc_rtas(2) PowerPC only
316 ppoll(2) 2.6.16
317 prctl(2) 2.2
318 pread64(2) Added as "pread" in 2.2;
319 renamed "pread64" in 2.6
320 preadv(2) 2.6.30
321 prlimit(2) 2.6.36
322 process_vm_readv(2) 3.2
323 process_vm_writev(2) 3.2
324 pselect6(2) 2.6.16
325 ptrace(2) 1.0
326 pwrite64(2) Added as "pwrite" in 2.2;
327 renamed "pwrite64" in 2.6
328 pwritev(2) 2.6.30
329 query_module(2) 2.2 Removed in 2.6
330
331 quotactl(2) 1.0
332 read(2) 1.0
333 readahead(2) 2.4.13
334 readdir(2) 1.0
335 readlink(2) 1.0
336 readlinkat(2) 2.6.16
337 readv(2) 2.0
338 reboot(2) 1.0
339 recv(2) 2.0 See notes on socketcall(2)
340 recvfrom(2) 2.0 See notes on socketcall(2)
341 recvmsg(2) 2.0 See notes on socketcall(2)
342 recvmmsg(2) 2.6.33
343 remap_file_pages(2) 2.6
344 removexattr(2) 2.6; 2.4.18
345 rename(2) 1.0
346 renameat(2) 2.6.16
347 request_key(2) 2.6.11
348 restart_syscall(2) 2.6
349 rmdir(2) 1.0
350 rt_sigaction(2) 2.2
351 rt_sigpending(2) 2.2
352 rt_sigprocmask(2) 2.2
353 rt_sigqueueinfo(2) 2.2
354 rt_sigreturn(2) 2.2
355 rt_sigsuspend(2) 2.2
356 rt_sigtimedwait(2) 2.2
357 rt_tgsigqueueinfo(2) 2.6.31
358 s390_runtime_instr(2) 3.7 s390 only
359 sched_get_priority_max(2) 2.0
360 sched_get_priority_min(2) 2.0
361 sched_getaffinity(2) 2.6
362 sched_getparam(2) 2.0
363 sched_getscheduler(2) 2.0
364 sched_rr_get_interval(2) 2.0
365 sched_setaffinity(2) 2.6
366 sched_setparam(2) 2.0
367 sched_setscheduler(2) 2.0
368 sched_yield(2) 2.0
369 select(2) 1.0
370 semctl(2) 2.0 See notes on ipc(2)
371 semget(2) 2.0 See notes on ipc(2)
372 semop(2) 2.0 See notes on ipc(2)
373 semtimedop(2) 2.6; 2.4.22
374 send(2) 2.0 See notes on socketcall(2)
375 sendfile(2) 2.2
376 sendfile64(2) 2.6; 2.4.19
377 sendmmsg(2) 3.0
378 sendmsg(2) 2.0 See notes on socketcall(2)
379 sendto(2) 2.0 See notes on socketcall(2)
380 set_mempolicy(2) 2.6.6
381 set_robust_list(2) 2.6.17
382 set_thread_area(2) 2.6
383 set_tid_address(2) 2.6
384 setdomainname(2) 1.0
385 setfsgid(2) 1.2
386 setfsgid32(2) 2.4
387 setfsuid(2) 1.2
388 setfsuid32(2) 2.4
389 setgid(2) 1.0
390 setgid32(2) 2.4
391 setgroups(2) 1.0
392 setgroups32(2) 2.4
393 sethostname(2) 1.0
394 setitimer(2) 1.0
395 setns(2) 3.0
396
397 setpgid(2) 1.0
398 setpriority(2) 1.0
399 setregid(2) 1.0
400 setregid32(2) 2.4
401 setresgid(2) 2.2
402 setresgid32(2) 2.4
403 setresuid(2) 2.2
404 setresuid32(2) 2.4
405 setreuid(2) 1.0
406 setreuid32(2) 2.4
407 setrlimit(2) 1.0
408 setsid(2) 1.0
409 setsockopt(2) 2.0 See notes on socketcall(2)
410 settimeofday(2) 1.0
411 setuid(2) 1.0
412 setuid32(2) 2.4
413 setup(2) Removed in 2.2
414 setxattr(2) 2.6; 2.4.18
415 sgetmask(2) 1.0
416 shmat(2) 2.0 See notes on ipc(2)
417 shmctl(2) 2.0 See notes on ipc(2)
418 shmdt(2) 2.0 See notes on ipc(2)
419 shmget(2) 2.0 See notes on ipc(2)
420 shutdown(2) 2.0 See notes on socketcall(2)
421 sigaction(2) 1.0
422 sigaltstack(2) 2.2
423 signal(2) 1.0
424 signalfd(2) 2.6.22
425 signalfd4(2) 2.6.27
426 sigpending(2) 1.0
427 sigprocmask(2) 1.0
428 sigreturn(2) 1.0
429 sigsuspend(2) 1.0
430 socket(2) 2.0 See notes on socketcall(2)
431 socketcall(2) 1.0
432 socketpair(2) 2.0 See notes on socketcall(2)
433 splice(2) 2.6.17
434 spu_create(2) 2.6.16 PowerPC only
435 spu_run(2) 2.6.16 PowerPC only
436 ssetmask(2) 1.0
437 stat(2) 1.0
438 stat64(2) 2.4
439 statfs(2) 1.0
440 statfs64(2) 2.6
441 stime(2) 1.0
442 subpage_prot(2) 2.6.25 PowerPC if
443 CONFIG_PPC_64K_PAGES
444 swapoff(2) 1.0
445 swapon(2) 1.0
446 symlink(2) 1.0
447 symlinkat(2) 2.6.16
448 sync(2) 1.0
449 sync_file_range(2) 2.6.17
450 sync_file_range2(2) 2.6.22 Architecture-specific
451 variant of
452 sync_file_range(2)
453 syncfs(2) 2.6.39
454 sysfs(2) 1.2
455 sysinfo(2) 1.0
456 syslog(2) 1.0
457 tee(2) 2.6.17
458 tgkill(2) 2.6
459 time(2) 1.0
460 timer_create(2) 2.6
461 timer_delete(2) 2.6
462
463 timer_getoverrun(2) 2.6
464 timer_gettime(2) 2.6
465 timer_settime(2) 2.6
466 timerfd_create(2) 2.6.25
467 timerfd_gettime(2) 2.6.25
468 timerfd_settime(2) 2.6.25
469 times(2) 1.0
470 tkill(2) 2.6; 2.4.22
471 truncate(2) 1.0
472 truncate64(2) 2.4
473 ugetrlimit(2) 2.4
474 umask(2) 1.0
475 umount(2) 1.0
476 umount2(2) 2.2
477 uname(2) 1.0
478 unlink(2) 1.0
479 unlinkat(2) 2.6.16
480 unshare(2) 2.6.16
481 uselib(2) 1.0
482 ustat(2) 1.0
483 utime(2) 1.0
484 utimensat(2) 2.6.22
485 utimes(2) 2.2
486 utrap_install(2) 2.2 Sparc
487 vfork(2) 2.2
488 vhangup(2) 1.0
489 vm86old(2) 1.0 Was "vm86"; renamed in
490 2.0.28/2.2
491 vm86(2) 2.0.28; 2.2
492 vmsplice(2) 2.6.17
493 wait4(2) 1.0
494 waitid(2) 2.6.10
495 waitpid(2) 1.0
496 write(2) 1.0
497 writev(2) 2.0
498
499 On many platforms, including x86-32, socket calls are all multiplexed
500 (via glibc wrapper functions) through socketcall(2) and similarly Sys‐
501 tem V IPC calls are multiplexed through ipc(2).
502
503 Although slots are reserved for them in the system call table, the fol‐
504 lowing system calls are not implemented in the standard kernel:
505 afs_syscall(2), break(2), ftime(2), getpmsg(2), gtty(2), idle(2),
506 lock(2), madvise1(2), mpx(2), phys(2), prof(2), profil(2), putpmsg(2),
507 security(2), stty(2), tuxcall(2), ulimit(2), and vserver(2) (see also
508 unimplemented(2)). However, ftime(3), profil(3) and ulimit(3) exist as
509 library routines. The slot for phys(2) is in use since kernel 2.1.116
510 for umount(2); phys(2) will never be implemented. The getpmsg(2) and
511 putpmsg(2) calls are for kernels patched to support STREAMS, and may
512 never be in the standard kernel.
513
514 There was briefly set_zone_reclaim(2), added in Linux 2.6.13, and
515 removed in 2.6.16; this system call was never available to user space.
516
518 Roughly speaking, the code belonging to the system call with number
519 __NR_xxx defined in /usr/include/asm/unistd.h can be found in the Linux
520 kernel source in the routine sys_xxx(). (The dispatch table for i386
521 can be found in /usr/src/linux/arch/i386/kernel/entry.S.) There are
522 many exceptions, however, mostly because older system calls were super‐
523 seded by newer ones, and this has been treated somewhat unsystemati‐
524 cally. On platforms with proprietary operating-system emulation, such
525 as parisc, sparc, sparc64 and alpha, there are many additional system
526 calls; mips64 also contains a full set of 32-bit system calls.
527
528 Over time, changes to the interfaces of some system calls have been
529 necessary. One reason for such changes was the need to increase the
530 size of structures or scalar values passed to the system call. Because
531 of these changes, there are now various groups of related system calls
532 (e.g., truncate(2) and truncate64(2)) which perform similar tasks, but
533 which vary in details such as the size of their arguments. (As noted
534 earlier, applications are generally unaware of this: the glibc wrapper
535 functions do some work to ensure that the right system call is invoked,
536 and that ABI compatibility is preserved for old binaries.) Examples of
537 systems calls that exist in multiple versions are the following:
538
539 * By now there are three different versions of stat(2): sys_stat()
540 (slot __NR_oldstat), sys_newstat() (slot __NR_stat), and
541 sys_stat64() (slot __NR_stat64), with the last being the most cur‐
542 rent. A similar story applies for lstat(2) and fstat(2).
543
544 * Similarly, the defines __NR_oldolduname, __NR_olduname, and
545 __NR_uname refer to the routines sys_olduname(), sys_uname() and
546 sys_newuname().
547
548 * In Linux 2.0, a new version of vm86(2) appeared, with the old and
549 the new kernel routines being named sys_vm86old() and sys_vm86().
550
551 * In Linux 2.4, a new version of getrlimit(2) appeared, with the old
552 and the new kernel routines being named sys_old_getrlimit() (slot
553 __NR_getrlimit) and sys_getrlimit() (slot __NR_ugetrlimit).
554
555 * Linux 2.4 increased the size of user and group IDs from 16 to 32
556 bits. To support this change, a range of system calls were added
557 (e.g., chown32(2), getuid32(2), getgroups32(2), setresuid32(2)),
558 superseding earlier calls of the same name without the "32" suffix.
559
560 * Linux 2.4 added support for applications on 32-bit architectures to
561 access large files (i.e., files for which the sizes and file offsets
562 can't be represented in 32 bits.) To support this change, replace‐
563 ments were required for system calls that deal with file offsets and
564 sizes. Thus the following system calls were added: fcntl64(2),
565 ftruncate64(2), getdents64(2), stat64(2), statfs64(2), and their
566 analogs that work with file descriptors or symbolic links. These
567 system calls supersede the older system calls which, except in the
568 case of the "stat" calls, have the same name without the "64" suf‐
569 fix.
570
571 On newer platforms that only have 64-bit file access and 32-bit uids
572 (e.g., alpha, ia64, s390x) there are no *64 or *32 calls. Where the
573 *64 and *32 calls exist, the other versions are obsolete.
574
575 * The rt_sig* calls were added in kernel 2.2 to support the addition
576 of real-time signals (see signal(7)). These system calls supersede
577 the older system calls of the same name without the "rt_" prefix.
578
579 * The select(2) and mmap(2) system calls use five or more arguments,
580 which caused problems in the way argument passing on the i386 used
581 to be set up. Thus, while other architectures have sys_select() and
582 sys_mmap() corresponding to __NR_select and __NR_mmap, on i386 one
583 finds old_select() and old_mmap() (routines that use a pointer to a
584 argument block) instead. These days passing five arguments is not a
585 problem any more, and there is a __NR__newselect that corresponds
586 directly to sys_select() and similarly __NR_mmap2.
587
589 syscall(2), unimplemented(2), libc(7)
590
592 This page is part of release 3.53 of the Linux man-pages project. A
593 description of the project, and information about reporting bugs, can
594 be found at http://www.kernel.org/doc/man-pages/.
595
596
597
598Linux 2013-04-17 SYSCALLS(2)