OSDN Git Service

Retire LDP man-pages repository
[linuxjm/LDP_man-pages.git] / draft / man2 / syscalls.2
diff --git a/draft/man2/syscalls.2 b/draft/man2/syscalls.2
deleted file mode 100644 (file)
index fdddd42..0000000
+++ /dev/null
@@ -1,708 +0,0 @@
-.\" Copyright (C) 2007 Michael Kerrisk <mtk.manpages@gmail.com>
-.\" with some input from Stepan Kasal <kasal@ucw.cz>
-.\"
-.\" Some content retained from an earlier version of this page:
-.\" Copyright (C) 1998 Andries Brouwer (aeb@cwi.nl)
-.\" Modifications for 2.2 and 2.4 Copyright (C) 2002 Ian Redfern
-.\" <redferni@logica.com>
-.\"
-.\" %%%LICENSE_START(VERBATIM)
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.  The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
-.\" %%%LICENSE_END
-.\"
-.\"*******************************************************************
-.\"
-.\" This file was generated with po4a. Translate the source file.
-.\"
-.\"*******************************************************************
-.\"
-.\" Japanese Version Copyright (c) 1998 HANATAKA Shinya
-.\"         all rights reserved.
-.\" Translated 1998-07-22, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
-.\" Updated 2003-02-06, Kentaro Shirakata <argrath@ub32.org>
-.\" Modified 2005-04-05, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated 2007-09-08, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.64
-.\" Updated 2008-11-09, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v3.13
-.\" Updated 2012-04-30, Akihiro MOTOKI <amotoki@gmail.com>
-.\" Updated 2012-05-29, Akihiro MOTOKI <amotoki@gmail.com>
-.\" Updated 2013-05-01, Akihiro MOTOKI <amotoki@gmail.com>
-.\"
-.TH SYSCALLS 2 2015\-01\-22 Linux "Linux Programmer's Manual"
-.SH 名前
-syscalls \- Linux のシステムコール
-.SH 書式
-Linux のシステムコール。
-.SH 説明
-システムコールは、アプリケーションと Linux カーネルとの間の 基本的なインターフェースである。
-.SS システムコールとライブラリのラッパー関数
-システムコールは一般には直接起動されず、 glibc (や他の何らかのライブラリ)  経由で起動される。 システムコールの直接起動については、詳細は
-\fBintro\fP(2)  を参照のこと。 いつもという訳ではないが、普通は、ラッパー関数の名前はその関数が起動する システムコールの名前と同じである。
-例えば、glibc には \fBtruncate\fP()  という関数があり、この関数は "truncate" システムコールを起動する。
-
-たいていの場合、glibc のラッパー関数はかなり簡単なもので、 システムコールを起動する前に引き数を適切なレジスターにコピーし、
-システムコールが返った後は \fIerrno\fP を適切に設定する以外は、ほとんど処理を行わない (これらは、ラッパー関数が提供されていない場合に
-システムコールを起動するのに使用する \fBsyscall\fP(2)  により実行される処理と同じである)。 [注意]
-システムコールは失敗を示すのに負のエラー番号を呼び出し元に返す。 失敗が起こった際には、ラッパー関数は返されたエラー番号を反転して
-(正の値に変換し)、それを \fIerrno\fP にコピーし、ラッパー関数の呼び出し元に \-1 を返す。
-
-しかしながら、時には、ラッパー関数がシステムコールを起動する前に 何らかの追加の処理を行う場合がある。 例えば、現在、 二つの関連するシステムコール
-\fBtruncate\fP(2)  と \fBtruncate64\fP(2)  があり、glibc のラッパー関数 \fBtruncate\fP()
-は、カーネルがこれらのシステムコールのうちどちらを提供しているかをチェックし、 どちらを採用するかを決定する。
-.SS システムコールのリスト
-以下は Linux のシステムコールのリストである。 このリストで、 \fIKernel\fP の列は、Linux 2.2 以降で登場したシステムコールが
-登場したカーネルバージョンを示す。 以下に詳細な説明を記す。
-.IP * 3
-カーネルバージョンがない場合、そのシステムコールは カーネル 1.0 もしくはそれ以前に登場した。
-.IP *
-システムコールに "1.2" と書かれている場合、 そのシステムコールがおそらくバージョン 1.1.x のカーネルで登場し、 安定版のカーネルでは
-1.2 で初めて登場したことを意味する。 (バージョン 1.2 のカーネルは、カーネル 1.0.6 から分岐し、 バージョン 1.1.x
-の不安定版のカーネル系列として開発された。)
-.IP *
-.\" Was kernel 2.0 started from a branch of 1.2.10?
-.\" At least from the timestamps of the tarballs of
-.\" of 1.2.10 and 1.3.0, that's how it looks, but in
-.\" fact the diff doesn't seem very clear, the
-.\" 1.3.0 .tar.bz is much bigger (2.0 MB) than the
-.\" 1.2.10 .tar.bz2 (1.8 MB), and AEB points out the
-.\" timestamps of some files in 1.3.0 seem to be older
-.\" than those in 1.2.10.  All of this suggests
-.\" that there might not have been a clean branch point.
-システムコールに "2.0" と書かれている場合、 そのシステムコールがおそらくバージョン 1.3.x のカーネルで登場し、 安定版のカーネルでは
-2.0 で初めて登場したことを意味する。 (バージョン 2.0 のカーネルは、バージョン 1.2.10 あたりのカーネル 1.2.x
-から分岐し、バージョン 1.3.x の不安定版のカーネル系列として開発された。)
-.IP *
-システムコールに "2.2" と書かれている場合、 そのシステムコールがおそらくバージョン 2.1.x のカーネルで登場し、 安定版のカーネルでは
-2.2.0 で初めて登場したことを意味する。 (バージョン 2.2 のカーネルは、カーネル 2.0.21 から分岐し、 バージョン 2.1.x
-の不安定版のカーネル系列として開発された。)
-.IP *
-システムコールに "2.4" と書かれている場合、 そのシステムコールがおそらくバージョン 2.3.x のカーネルで登場し、 安定版のカーネルでは
-2.4.0 で初めて登場したことを意味する。 (バージョン 2.4 のカーネルは、カーネル 2.2.8 から分岐し、 バージョン 2.3.x
-の不安定版のカーネル系列として開発された。)
-.IP *
-システムコールに "2.6" と書かれている場合、 そのシステムコールがおそらくバージョン 2.5.x のカーネルで登場し、 安定版のカーネルでは
-2.6.0 で初めて登場したことを意味する。 (バージョン 2.6 のカーネルは、カーネル 2.4.15 から分岐し、 バージョン 2.5.x
-の不安定版のカーネル系列として開発された。)
-.IP *
-カーネル 2.6.0 から開発モデルは変更され、新しいシステムコールが
-個々の 2.6.x のリリースでも登場するようになった。
-その場合、このリストでは、システムコールが登場した
-厳密なバージョン番号が記載されている。この慣習は、カーネル 2.6.39 の
-後継となるバージョン 3.x 系列のカーネルでも継続されている。
-.IP *
-前の安定版カーネル系列から分岐した後に安定版カーネル系列にシステムコール が追加された場合、以前の安定版カーネル系列にそのシステムコールが 移植
-(backport) されることがある。 例えば、2.6.x で登場したシステムコールのいくつかは、 2.4.15 以降の 2.4.x リリースにも
-backport された。 この場合、システムコールが登場したバージョンとして、 両方の安定版系列のバージョンが記載されている。
-.PP
-.\"
-.\" Looking at scripts/checksyscalls.sh in the kernel source is
-.\" instructive about x86 specifics.
-.\"
-カーネル 3.15 で利用可能なシステムコールのリストを以下に示す
-(それ以前のカーネルでだけ利用可能なものも少数だが含まれる):
-.ad l
-.TS
-l2 le l
----
-l l l.
-\fBSystem call\fP      \fBKernel\fP    \fBNotes\fP
-
-\fB_llseek\fP(2)       1.2
-\fB_newselect\fP(2)    2.0
-\fB_sysctl\fP(2)       2.0
-\fBaccept\fP(2)        2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBaccept4\fP(2)       2.6.28
-\fBaccess\fP(2)        1.0
-\fBacct\fP(2)  1.0
-\fBadd_key\fP(2)       2.6.11
-\fBadjtimex\fP(2)      1.0
-\fBalarm\fP(2) 1.0
-\fBalloc_hugepages\fP(2)       2.5.36  2.5.44 で削除
-\fBbdflush\fP(2)       1.2     T{
-2.6 以降で非推奨
-.br
-(何もしない)
-T}
-\fBbind\fP(2)  2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBbpf\fP(2)   3.18
-\fBbrk\fP(2)   1.0
-\fBcacheflush\fP(2)    1.2     x86 にはない
-\fBcapget\fP(2)        2.2
-\fBcapset\fP(2)        2.2
-\fBchdir\fP(2) 1.0
-\fBchmod\fP(2) 1.0
-\fBchown\fP(2) 2.2     T{
-バージョン毎の詳細は
-.br
-\fBchown\fP(2) を参照。
-T}
-\fBchown32\fP(2)       2.4
-\fBchroot\fP(2)        1.0
-\fBclock_adjtime\fP(2) 2.6.39
-\fBclock_getres\fP(2)  2.6
-\fBclock_gettime\fP(2) 2.6
-\fBclock_nanosleep\fP(2)       2.6
-\fBclock_settime\fP(2) 2.6
-\fBclone\fP(2) 1.0
-\fBclose\fP(2) 1.0
-\fBconnect\fP(2)       2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBcreat\fP(2) 1.0
-\fBcreate_module\fP(2) 1.0     2.6 で削除
-\fBdelete_module\fP(2) 1.0
-\fBdup\fP(2)   1.0
-\fBdup2\fP(2)  1.0
-\fBdup3\fP(2)  2.6.27
-\fBepoll_create\fP(2)  2.6
-\fBepoll_create1\fP(2) 2.6.27
-\fBepoll_ctl\fP(2)     2.6
-\fBepoll_pwait\fP(2)   2.6.19
-\fBepoll_wait\fP(2)    2.6
-\fBeventfd\fP(2)       2.6.22
-\fBeventfd2\fP(2)      2.6.27
-\fBexecve\fP(2)        1.0
-\fBexecveat\fP(2)      3.19
-\fBexit\fP(2)  1.0
-\fBexit_group\fP(2)    2.6
-\fBfaccessat\fP(2)     2.6.16
-\fBfadvise64\fP(2)     2.6
-.\" Implements \fBposix_fadvise\fP(2)
-\fBfadvise64_64\fP(2)  2.6
-\fBfallocate\fP(2)     2.6.23
-\fBfanotify_init\fP(2) 2.6.37
-\fBfanotify_mark\fP(2) 2.6.37
-.\" The fanotify calls were added in Linux 2.6.36,
-.\" but disabled while the API was finalized.
-\fBfchdir\fP(2)        1.0
-\fBfchmod\fP(2)        1.0
-\fBfchmodat\fP(2)      2.6.16
-\fBfchown\fP(2)        1.0
-\fBfchown32\fP(2)      2.4
-\fBfchownat\fP(2)      2.6.16
-\fBfcntl\fP(2) 1.0
-\fBfcntl64\fP(2)       2.4
-\fBfdatasync\fP(2)     2.0
-\fBfgetxattr\fP(2)     2.6; 2.4.18
-\fBfinit_module\fP(2)  3.8
-\fBflistxattr\fP(2)    2.6; 2.4.18
-\fBflock\fP(2) 2.0
-\fBfork\fP(2)  1.0
-\fBfree_hugepages\fP(2)        2.5.36  2.5.44 で削除
-\fBfremovexattr\fP(2)  2.6; 2.4.18
-\fBfsetxattr\fP(2)     2.6; 2.4.18
-\fBfstat\fP(2) 1.0
-\fBfstat64\fP(2)       2.4
-\fBfstatat64\fP(2)     2.6.16
-\fBfstatfs\fP(2)       1.0
-\fBfstatfs64\fP(2)     2.6
-\fBfsync\fP(2) 1.0
-\fBftruncate\fP(2)     1.0
-\fBftruncate64\fP(2)   2.4
-\fBfutex\fP(2) 2.6
-\fBfutimesat\fP(2)     2.6.16
-\fBget_kernel_syms\fP(2)       1.0     2.6 で削除
-\fBget_mempolicy\fP(2) 2.6.6
-\fBget_robust_list\fP(2)       2.6.17
-\fBget_thread_area\fP(2)       2.6
-\fBgetcpu\fP(2)        2.6.19
-\fBgetcwd\fP(2)        2.2
-\fBgetdents\fP(2)      2.0
-\fBgetdents64\fP(2)    2.4
-\fBgetegid\fP(2)       1.0
-\fBgetegid32\fP(2)     2.4
-\fBgeteuid\fP(2)       1.0
-\fBgeteuid32\fP(2)     2.4
-\fBgetgid\fP(2)        1.0
-\fBgetgid32\fP(2)      2.4
-\fBgetgroups\fP(2)     1.0
-\fBgetgroups32\fP(2)   2.4
-\fBgetitimer\fP(2)     1.0
-\fBgetpeername\fP(2)   2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBgetpagesize\fP(2)   2.0     x86 にはない
-\fBgetpgid\fP(2)       1.0
-\fBgetpgrp\fP(2)       1.0
-\fBgetpid\fP(2)        1.0
-\fBgetppid\fP(2)       1.0
-\fBgetpriority\fP(2)   1.0
-\fBgetrandom\fP(2)     3.17
-\fBgetresgid\fP(2)     2.2
-\fBgetresgid32\fP(2)   2.4
-\fBgetresuid\fP(2)     2.2
-\fBgetresuid32\fP(2)   2.4
-\fBgetrlimit\fP(2)     1.0
-\fBgetrusage\fP(2)     1.0
-\fBgetsid\fP(2)        2.0
-\fBgetsockname\fP(2)   2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBgetsockopt\fP(2)    2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBgettid\fP(2)        2.4.11
-\fBgettimeofday\fP(2)  1.0
-\fBgetuid\fP(2)        1.0
-\fBgetuid32\fP(2)      2.4
-.\" \fBgetunwind\fP(2) 2.4.8   ia64; DEPRECATED
-\fBgetxattr\fP(2)      2.6; 2.4.18
-\fBinit_module\fP(2)   1.0
-\fBinotify_add_watch\fP(2)     2.6.13
-\fBinotify_init\fP(2)  2.6.13
-\fBinotify_init1\fP(2) 2.6.27
-\fBinotify_rm_watch\fP(2)      2.6.13
-\fBio_cancel\fP(2)     2.6
-\fBio_destroy\fP(2)    2.6
-\fBio_getevents\fP(2)  2.6
-\fBio_setup\fP(2)      2.6
-\fBio_submit\fP(2)     2.6
-\fBioctl\fP(2) 1.0
-\fBioperm\fP(2)        1.0
-\fBiopl\fP(2)  1.0
-\fBioprio_get\fP(2)    2.6.13
-\fBioprio_set\fP(2)    2.6.13
-\fBipc\fP(2)   1.0
-.\" Implements System V IPC calls
-\fBkcmp\fP(2)  3.5
-\fBkern_features\fP(2) 3.7     Sparc64
-.\" FIXME . document kern_features():
-.\" commit 517ffce4e1a03aea979fe3a18a3dd1761a24fafb
-\fBkexec_file_load\fP(2)       3.17
-\fBkexec_load\fP(2)    2.6.13
-.\" The entry in the syscall table was reserved starting in 2.6.7
-.\" Was named sys_kexec_load() from 2.6.7 to 2.6.16
-\fBkeyctl\fP(2)        2.6.11
-\fBkill\fP(2)  1.0
-\fBlchown\fP(2)        1.0     T{
-バージョン毎の詳細は
-.br
-\fBchown\fP(2) を参照。
-T}
-\fBlchown32\fP(2)      2.4
-\fBlgetxattr\fP(2)     2.6; 2.4.18
-\fBlink\fP(2)  1.0
-\fBlinkat\fP(2)        2.6.16
-\fBlisten\fP(2)        2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBlistxattr\fP(2)     2.6; 2.4.18
-\fBllistxattr\fP(2)    2.6; 2.4.18
-\fBlookup_dcookie\fP(2)        2.6
-\fBlremovexattr\fP(2)  2.6; 2.4.18
-\fBlseek\fP(2) 1.0
-\fBlsetxattr\fP(2)     2.6; 2.4.18
-\fBlstat\fP(2) 1.0
-\fBlstat64\fP(2)       2.4
-\fBmadvise\fP(2)       2.4
-\fBmbind\fP(2) 2.6.6
-.\" \fBmemory_ordering\fP(2)   ???     Sparc64
-\fBmemfd_create\fP(2)  3.17
-\fBmigrate_pages\fP(2) 2.6.16
-\fBmincore\fP(2)       2.4
-\fBmkdir\fP(2) 1.0
-\fBmkdirat\fP(2)       2.6.16
-\fBmknod\fP(2) 1.0
-\fBmknodat\fP(2)       2.6.16
-\fBmlock\fP(2) 2.0
-\fBmlockall\fP(2)      2.0
-\fBmmap\fP(2)  1.0
-\fBmmap2\fP(2) 2.4
-\fBmodify_ldt\fP(2)    1.0
-\fBmount\fP(2) 1.0
-\fBmove_pages\fP(2)    2.6.18
-\fBmprotect\fP(2)      1.0
-\fBmq_getsetattr\fP(2) 2.6.6
-.\" Implements \fBmq_getattr\fP(3) and \fBmq_setattr\fP(3)
-\fBmq_notify\fP(2)     2.6.6
-\fBmq_open\fP(2)       2.6.6
-\fBmq_timedreceive\fP(2)       2.6.6
-\fBmq_timedsend\fP(2)  2.6.6
-\fBmq_unlink\fP(2)     2.6.6
-\fBmremap\fP(2)        2.0
-\fBmsgctl\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBmsgget\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBmsgrcv\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBmsgsnd\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBmsync\fP(2) 2.0
-.\" \fBmultiplexer\fP(2)       ??      __NR_multiplexer reserved on
-.\"            PowerPC, but unimplemented?
-\fBmunlock\fP(2)       2.0
-\fBmunlockall\fP(2)    2.0
-\fBmunmap\fP(2)        1.0
-\fBname_to_handle_at\fP(2)     2.6.39
-\fBnanosleep\fP(2)     2.0
-\fBnfsservctl\fP(2)    2.2     3.1 で削除
-\fBnice\fP(2)  1.0
-\fBoldfstat\fP(2)      1.0
-\fBoldlstat\fP(2)      1.0
-\fBoldolduname\fP(2)   1.0
-\fBoldstat\fP(2)       1.0
-\fBolduname\fP(2)      1.0
-\fBopen\fP(2)  1.0
-\fBopen_by_handle_at\fP(2)     2.6.39
-\fBopenat\fP(2)        2.6.16
-\fBpause\fP(2) 1.0
-\fBpciconfig_iobase\fP(2)      2.2.15; 2.4     x86 にはない
-.\" Alpha, PowerPC, ARM; not x86
-\fBpciconfig_read\fP(2)        2.0.26; 2.2     x86 にはない
-.\" , PowerPC, ARM; not x86
-\fBpciconfig_write\fP(2)       2.0.26; 2.2     x86 にはない
-.\" , PowerPC, ARM; not x86
-\fBperf_event_open\fP(2)       2.6.31  T{
-2.6.31 では perf_counter_open() であった;
-.br
-2.6.32 で名称変更
-T}
-\fBpersonality\fP(2)   1.2
-\fBperfctr\fP(2)       2.2     Sparc; 2.6.34 で削除
-.\"    commit c7d5a0050773e98d1094eaa9f2a1a793fafac300 removed perfctr()
-\fBperfmonctl\fP(2)    2.4     ia64
-\fBpipe\fP(2)  1.0
-\fBpipe2\fP(2) 2.6.27
-\fBpivot_root\fP(2)    2.4
-\fBpoll\fP(2)  2.0.36; 2.2
-\fBppc_rtas\fP(2)      2.6.2   PowerPC のみ
-\fBppoll\fP(2) 2.6.16
-\fBprctl\fP(2) 2.2
-\fBpread64\fP(2)               T{
-2.2 で "pread" として追加;
-.br
-2.6 で "pread64" に名称変更
-T}
-\fBpreadv\fP(2)        2.6.30
-\fBprlimit\fP(2)       2.6.36
-\fBprlimit64\fP(2)     2.6.36
-\fBprocess_vm_readv\fP(2)      3.2
-\fBprocess_vm_writev\fP(2)     3.2
-\fBpselect6\fP(2)      2.6.16
-.\" Implements \fBpselect\fP(2)
-\fBptrace\fP(2)        1.0
-\fBpwrite64\fP(2)              T{
-2.2 で "pwrite" として追加;
-.br
-2.6 で "pwrite64" に名称変更
-T}
-\fBpwritev\fP(2)       2.6.30
-\fBquery_module\fP(2)  2.2     2.6 で削除
-\fBquotactl\fP(2)      1.0
-\fBread\fP(2)  1.0
-\fBreadahead\fP(2)     2.4.13
-\fBreaddir\fP(2)       1.0
-.\" Supersedes \fBgetdents\fP(2)
-\fBreadlink\fP(2)      1.0
-\fBreadlinkat\fP(2)    2.6.16
-\fBreadv\fP(2) 2.0
-\fBreboot\fP(2)        1.0
-\fBrecv\fP(2)  2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBrecvfrom\fP(2)      2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBrecvmsg\fP(2)       2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBrecvmmsg\fP(2)      2.6.33
-\fBremap_file_pages\fP(2)      2.6     3.16 以降では非推奨
-\fBremovexattr\fP(2)   2.6; 2.4.18
-\fBrename\fP(2)        1.0
-\fBrenameat\fP(2)      2.6.16
-\fBrenameat2\fP(2)     3.15
-\fBrequest_key\fP(2)   2.6.11
-\fBrestart_syscall\fP(2)       2.6
-\fBrmdir\fP(2) 1.0
-\fBrt_sigaction\fP(2)  2.2
-\fBrt_sigpending\fP(2) 2.2
-\fBrt_sigprocmask\fP(2)        2.2
-\fBrt_sigqueueinfo\fP(2)       2.2
-\fBrt_sigreturn\fP(2)  2.2
-\fBrt_sigsuspend\fP(2) 2.2
-\fBrt_sigtimedwait\fP(2)       2.2
-\fBrt_tgsigqueueinfo\fP(2)     2.6.31
-\fBs390_runtime_instr\fP(2)    3.7     s390 のみ
-\fBs390_pci_mmio_read\fP(2)    3.19    s390 のみ
-\fBs390_pci_mmio_write\fP(2)   3.19    s390 のみ
-\fBsched_get_priority_max\fP(2)        2.0
-\fBsched_get_priority_min\fP(2)        2.0
-\fBsched_getaffinity\fP(2)     2.6
-\fBsched_getattr\fP(2) 3.14
-\fBsched_getparam\fP(2)        2.0
-\fBsched_getscheduler\fP(2)    2.0
-\fBsched_rr_get_interval\fP(2) 2.0
-\fBsched_setaffinity\fP(2)     2.6
-\fBsched_setattr\fP(2) 3.14
-\fBsched_setparam\fP(2)        2.0
-\fBsched_setscheduler\fP(2)    2.0
-\fBsched_yield\fP(2)   2.0
-\fBseccomp\fP(2)       3.17
-\fBselect\fP(2)        1.0
-\fBsemctl\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBsemget\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBsemop\fP(2) 2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBsemtimedop\fP(2)    2.6; 2.4.22
-\fBsend\fP(2)  2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBsendfile\fP(2)      2.2
-\fBsendfile64\fP(2)    2.6; 2.4.19
-\fBsendmmsg\fP(2)      3.0
-\fBsendmsg\fP(2)       2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBsendto\fP(2)        2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBset_mempolicy\fP(2) 2.6.6
-\fBset_robust_list\fP(2)       2.6.17
-\fBset_thread_area\fP(2)       2.6
-\fBset_tid_address\fP(2)       2.6
-.\" See http://lkml.org/lkml/2005/8/1/83
-.\" "[PATCH] remove sys_set_zone_reclaim()"
-\fBsetdomainname\fP(2) 1.0
-\fBsetfsgid\fP(2)      1.2
-\fBsetfsgid32\fP(2)    2.4
-\fBsetfsuid\fP(2)      1.2
-\fBsetfsuid32\fP(2)    2.4
-\fBsetgid\fP(2)        1.0
-\fBsetgid32\fP(2)      2.4
-\fBsetgroups\fP(2)     1.0
-\fBsetgroups32\fP(2)   2.4
-\fBsethostname\fP(2)   1.0
-\fBsetitimer\fP(2)     1.0
-\fBsetns\fP(2) 3.0
-\fBsetpgid\fP(2)       1.0
-\fBsetpriority\fP(2)   1.0
-\fBsetregid\fP(2)      1.0
-\fBsetregid32\fP(2)    2.4
-\fBsetresgid\fP(2)     2.2
-\fBsetresgid32\fP(2)   2.4
-\fBsetresuid\fP(2)     2.2
-\fBsetresuid32\fP(2)   2.4
-\fBsetreuid\fP(2)      1.0
-\fBsetreuid32\fP(2)    2.4
-\fBsetrlimit\fP(2)     1.0
-\fBsetsid\fP(2)        1.0
-\fBsetsockopt\fP(2)    2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBsettimeofday\fP(2)  1.0
-\fBsetuid\fP(2)        1.0
-\fBsetuid32\fP(2)      2.4
-\fBsetup\fP(2) 1.0     2.2 で削除
-\fBsetxattr\fP(2)      2.6; 2.4.18
-\fBsgetmask\fP(2)      1.0
-\fBshmat\fP(2) 2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBshmctl\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBshmdt\fP(2) 2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBshmget\fP(2)        2.0     \fBipc\fP(2) の「注意」の節を参照
-\fBshutdown\fP(2)      2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBsigaction\fP(2)     1.0
-\fBsigaltstack\fP(2)   2.2
-\fBsignal\fP(2)        1.0
-\fBsignalfd\fP(2)      2.6.22
-\fBsignalfd4\fP(2)     2.6.27
-\fBsigpending\fP(2)    1.0
-\fBsigprocmask\fP(2)   1.0
-\fBsigreturn\fP(2)     1.0
-\fBsigsuspend\fP(2)    1.0
-\fBsocket\fP(2)        2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBsocketcall\fP(2)    1.0
-.\" Implements BSD socket calls
-\fBsocketpair\fP(2)    2.0     \fBsocketcall\fP(2) の「注意」の節を参照
-\fBsplice\fP(2)        2.6.17
-\fBspu_create\fP(2)    2.6.16  PowerPC のみ
-\fBspu_run\fP(2)       2.6.16  PowerPC のみ
-\fBssetmask\fP(2)      1.0
-\fBstat\fP(2)  1.0
-\fBstat64\fP(2)        2.4
-\fBstatfs\fP(2)        1.0
-\fBstatfs64\fP(2)      2.6
-\fBstime\fP(2) 1.0
-\fBsubpage_prot\fP(2)  2.6.25  PowerPC のみ
-\fBswapoff\fP(2)       1.0
-\fBswapon\fP(2)        1.0
-\fBsymlink\fP(2)       1.0
-\fBsymlinkat\fP(2)     2.6.16
-\fBsync\fP(2)  1.0
-\fBsync_file_range\fP(2)       2.6.17
-\fBsync_file_range2\fP(2)      2.6.22
-.\" PowerPC, ARM, tile
-.\" First appeared on ARM, as arm_sync_file_range(), but later renamed
-.\" \fBsys_debug_setcontext\fP(2)      ???     PowerPC if CONFIG_PPC32
-\fBsyncfs\fP(2)        2.6.39
-\fBsysfs\fP(2) 1.2
-\fBsysinfo\fP(2)       1.0
-\fBsyslog\fP(2)        1.0
-.\" glibc interface is \fBklogctl\fP(3)
-\fBtee\fP(2)   2.6.17
-\fBtgkill\fP(2)        2.6
-\fBtime\fP(2)  1.0
-\fBtimer_create\fP(2)  2.6
-\fBtimer_delete\fP(2)  2.6
-\fBtimer_getoverrun\fP(2)      2.6
-\fBtimer_gettime\fP(2) 2.6
-\fBtimer_settime\fP(2) 2.6
-\fBtimerfd_create\fP(2)        2.6.25
-\fBtimerfd_gettime\fP(2)       2.6.25
-\fBtimerfd_settime\fP(2)       2.6.25
-\fBtimes\fP(2) 1.0
-\fBtkill\fP(2) 2.6; 2.4.22
-\fBtruncate\fP(2)      1.0
-\fBtruncate64\fP(2)    2.4
-\fBugetrlimit\fP(2)    2.4
-\fBumask\fP(2) 1.0
-\fBumount\fP(2)        1.0
-.\" sys_oldumount() -- __NR_umount
-\fBumount2\fP(2)       2.2
-.\" sys_umount() -- __NR_umount2
-\fBuname\fP(2) 1.0
-\fBunlink\fP(2)        1.0
-\fBunlinkat\fP(2)      2.6.16
-\fBunshare\fP(2)       2.6.16
-\fBuselib\fP(2)        1.0
-\fBustat\fP(2) 1.0
-\fButime\fP(2) 1.0
-\fButimensat\fP(2)     2.6.22
-\fButimes\fP(2)        2.2
-\fButrap_install\fP(2) 2.2     Sparc のみ
-.\" FIXME . document utrap_install()
-.\" There's a man page for Solaris 5.11
-\fBvfork\fP(2) 2.2
-\fBvhangup\fP(2)       1.0
-\fBvm86old\fP(2)       1.0     T{
-以前は "vm86";
-2.0.28/2.2 で改名された
-T}
-\fBvm86\fP(2)  2.0.28; 2.2
-\fBvmsplice\fP(2)      2.6.17
-\fBwait4\fP(2) 1.0
-\fBwaitid\fP(2)        2.6.10
-\fBwaitpid\fP(2)       1.0
-\fBwrite\fP(2) 1.0
-\fBwritev\fP(2)        2.0
-.TE
-.ad
-.PP
-x86\-32 を含む多くのプラットフォームでは、ソケット関連のシステムコールは (glibc のラッパー関数を介してだが) すべて
-\fBsocketcall\fP(2) 経由に多重されている。 同様に、System\ V IPC 関連のシステムコールは \fBipc\fP(2)
-経由に多重されている。
-
-.\" __NR_afs_syscall is 53 on Linux 2.6.22/i386
-.\" __NR_break is 17 on Linux 2.6.22/i386
-.\" __NR_ftime is 35 on Linux 2.6.22/i386
-.\" __NR_getpmsg is 188 on Linux 2.6.22/i386
-.\" __NR_gtty is 32 on Linux 2.6.22/i386
-.\" __NR_idle is 112 on Linux 2.6.22/i386
-.\" __NR_lock is 53 on Linux 2.6.22/i386
-.\" __NR_madvise1 is 219 on Linux 2.6.22/i386
-.\" __NR_mpx is 66 on Linux 2.6.22/i386
-.\" Slot has been reused
-.\" __NR_prof is 44 on Linux 2.6.22/i386
-.\" __NR_profil is 98 on Linux 2.6.22/i386
-.\" __NR_putpmsg is 189 on Linux 2.6.22/i386
-.\" __NR_security is 223 on Linux 2.4/i386
-.\" __NR_security is 223 on Linux 2.4/i386; absent on 2.6/i386, present
-.\" on a couple of 2.6 architectures
-.\" __NR_stty is 31 on Linux 2.6.22/i386
-.\" The security call is for future use.
-.\" __NR_tuxcall is 184 on x86_64, also on PPC and alpha
-.\" __NR_ulimit is 58 on Linux 2.6.22/i386
-.\" __NR_vserver is 273 on Linux 2.6.22/i386
-以下のシステムコールは、システムコールテーブルにスロットが予約されているが、
-標準のカーネルには実装されていない:
-\fBafs_syscall\fP(2), \fBbreak\fP(2), \fBftime\fP(2), \fBgetpmsg\fP(2), \fBgtty\fP(2),
-\fBidle\fP(2), \fBlock\fP(2), \fBmadvise1\fP(2), \fBmpx\fP(2), \fBphys\fP(2), \fBprof\fP(2),
-\fBprofil\fP(2), \fBputpmsg\fP(2), \fBsecurity\fP(2), \fBstty\fP(2), \fBtuxcall\fP(2),
-\fBulimit\fP(2), \fBvserver\fP(2) (\fBunimplemented\fP(2) も参照)。
-しかし、\fBftime\fP(3), \fBprofil\fP(3), \fBulimit\fP(3) はライブラリルーチンとして
-実装されている。 \fBphys\fP(2) 用の場所は 2.1.116 以降では \fBumount\fP(2) 用に
-使用されている; 将来においても \fBphys\fP(2) は実装されない。
-\fBgetpmsg\fP(2) と \fBputpmsg\fP(2) は STREAMS 対応のパッチが適用された
-カーネル用であり、標準のカーネルに登場することはないかもしれない。
-
-\fBset_zone_reclaim\fP(2) は少しの間だけ存在した。 Linux 2.6.13 で追加され、2.6.16
-で削除された。このシステムコールがユーザー空間から使える状態になったことはない。
-.SH 注意
-.PP
-たいていは、 \fI/usr/include/asm/unistd.h\fP で定義されている番号 __NR_xxx のシステムコールのコードは、 Linux
-カーネルソースの \fIsys_xxx\fP() というルーチンに書かれている (i386 における実行テーブルは
-\fI/usr/src/linux/arch/i386/kernel/entry.S\fP に書かれている)。
-しかしこれには多くの例外がある。古いシステムコールは新版に置き換えられて きたが、この置き換えはあまり体系立てて行われて来なかったからである。
-parisc, sparc, sparc64, alpha
-といったプロプリエタリなオペレーティングシステムのエミュレーション機能があるプラットフォームでは、多くの追加システムコールがある。 mips64
-には、32 ビットシステムコールのフルセットも含まれている。
-
-時間の経過とともに、いくつかのシステムコールではインターフェースの 変更が必要になってきた。
-こうした変更の理由の一つは、システムコールに渡される構造体やスカラー値 のサイズを増やす必要があることだった。
-これらの変更の結果、現在では、同様の処理を実行するが 引き数のサイズなどの詳細は異なる、一連のシステムコール群が いくつか存在する (例えば、
-\fBtruncate\fP(2)  と \fBtruncate64\fP(2))。 (すでに述べたように、
-一般にはアプリケーションがこのことを意識することはない。 glibc のラッパー関数が、適切なシステムコールを起動し、古いバイナリに 対して ABI
-レベルでの互換性を保持することを保証する処理を行っている。)  複数のバージョンが存在するシステムコールの例を以下に挙げる。
-.IP * 3
-.\" e.g., on 2.6.22/i386: __NR_oldstat 18, __NR_stat 106, __NR_stat64 195
-.\" The stat system calls deal with three different data structures,
-.\" defined in include/asm-i386/stat.h: __old_kernel_stat, stat, stat64
-これまでに、 \fBstat\fP(2)  には 3 種類の異なるバージョンが存在する。 \fIsys_stat\fP()  (スロットは
-\fI__NR_oldstat\fP)、 \fIsys_newstat\fP()  (スロットは \fI__NR_stat\fP)、 \fIsys_stat64\fP()
-(カーネル 2.4 で導入; スロットは \fI__NR_stat64\fP)。 3つのうち最後のものが最新である。 \fBlstat\fP(2)  と
-\fBfstat\fP(2)  についても同様である。
-.IP *
-また、 \fI__NR_oldolduname\fP, \fI__NR_olduname\fP, \fI__NR_uname\fP という定義は、それぞれ
-\fIsys_olduname\fP(), \fIsys_uname\fP(), \fIsys_newuname\fP()  というルーチンを参照している。
-.IP *
-Linux 2.0 では、 \fBvm86\fP(2)  の新バージョンが登場した。カーネルルーチンの 古いバージョン、新しいバージョンはそれぞれ
-\fIsys_vm86old\fP(), \fIsys_vm86\fP()  という名前である。
-.IP *
-Linux 2.4 では、 \fBgetrlimit\fP(2)  の新バージョンが登場した。カーネルルーチンの 古いバージョン、新しいバージョンはそれぞれ
-\fIsys_old_getrlimit\fP()  (スロットは \fI__NR_getrlimit\fP), \fIsys_getrlimit\fP()
-(スロットは \fI__NR_ugetrlimit\fP)  という名前である。
-.IP *
-.\" 64-bit off_t changes: ftruncate64, *stat64,
-.\" fcntl64 (because of the flock structure), getdents64, *statfs64
-Linux 2.4 で、ユーザー ID とグループ ID のサイズが 16 ビットから 32 ビットに増えた。
-この変更に対応するため、いくつかのシステムコールが追加された (\fBchown32\fP(2), \fBgetuid32\fP(2),
-\fBgetgroups32\fP(2), \fBsetresuid32\fP(2)  など)。 これらのシステムコールが、末尾の "32" が付かない同名の
-古いバージョンに代わって使われるようになった。
-.IP *
-Linux 2.4 では、32 ビットアーキテクチャー上のアプリケーションが 大きなファイル (つまり、32 ビットでは表現できないサイズや
-ファイルオフセットが必要なファイル) にアクセスできるようになった。 この変更に対応するため、ファイルオフセットとサイズを扱う
-システムコールの置き換えが必要となった。その結果、 \fBfcntl64\fP(2), \fBftruncate64\fP(2),
-\fBgetdents64\fP(2), \fBstat64\fP(2), \fBstatfs64\fP(2)
-と、ファイルディスクリプターやシンボリックリンクで同じ機能を持つ システムコールが追加された。 これらのシステムコールが、末尾の "64"
-が付かない同名の 古いバージョンに代わって使われるようになった。 但し、"stat" 系のシステムコールはその限りではない。
-
-64\-bit ファイルアクセスと 32\-bit UID のみを持つ 新しいプラットフォーム (alpha, ia64, s390x など) では、
-*64 や *32 という名前のシステムコールはない。 *64 や *32 というシステムコールが存在する場合、 *64 や *32
-がついていないシステムコールは廃止扱いである。
-.IP *
-リアルタイムシグナル (\fBsignal\fP(7)  参照) への対応を追加するために、 \fIrt_sig*\fP 系のシステムコールがカーネル 2.2
-で追加された。 これらのシステムコールが、先頭に "rt_" が付かない同名の 古いバージョンに代わって使われるようになった。
-.IP *
-.\" (used by libc 6)
-.\" .PP
-.\" Two system call numbers,
-.\" .IR __NR__llseek
-.\" and
-.\" .IR __NR__sysctl
-.\" have an additional underscore absent in
-.\" .IR sys_llseek ()
-.\" and
-.\" .IR sys_sysctl ().
-.\"
-.\" In kernel 2.1.81,
-.\" .BR lchown (2)
-.\" and
-.\" .BR chown (2)
-.\" were swapped; that is,
-.\" .BR lchown (2)
-.\" was added with the semantics that were then current for
-.\" .BR chown (2),
-.\" and the semantics of the latter call were changed to what
-.\" they are today.
-\fBselect\fP(2)  と \fBmmap\fP(2)  は 5つもしくはそれ以上の引き数を使用しており、 i386 では引き数の受け渡しに問題が生じる。
-そのため、他のアーキテクチャーでは \fI__NR_select\fP と \fI__NR_mmap\fP に対応する \fIsys_select\fP()  と
-\fIsys_mmap\fP()  が存在するが、i386 では代わりに \fIold_select\fP()  と \fIold_mmap\fP()
-というルーチンがある (これらのルーチンは引き数ブロックへのポインターを使用する)。 現在では 5つの引き数を渡すことはもはや問題ではなくなっており、
-\fI__NR__newselect\fP は \fIsys_select\fP()  に直接対応するようになっている。 \fI__NR_mmap2\fP
-についても同様である。
-.SH 関連項目
-\fBintro\fP(2), \fBsyscall\fP(2), \fBunimplemented\fP(2), \fBerrno\fP(3), \fBlibc\fP(7),
-\fBvdso\fP(7)
-.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
-である。プロジェクトの説明とバグ報告に関する情報は
-http://www.kernel.org/doc/man\-pages/ に書かれている。