OSDN Git Service

(split) LDP: Update release pages based on LDP 3.54 release
[linuxjm/LDP_man-pages.git] / release / man2 / syscalls.2
index 44fd955..184ab05 100644 (file)
 .\" This file was generated with po4a. Translate the source file.
 .\"
 .\"*******************************************************************
-.TH SYSCALLS 2 2013\-03\-10 Linux "Linux Programmer's Manual"
+.\"
+.\" 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 2013\-04\-17 Linux "Linux Programmer's Manual"
 .SH 名前
 syscalls \- Linux のシステムコール
 .SH 書式
@@ -55,10 +67,8 @@ Linux のシステムコール。
 \fBtruncate\fP(2)  と \fBtruncate64\fP(2)  があり、glibc のラッパー関数 \fBtruncate\fP()
 は、カーネルがこれらのシステムコールのうちどちらを提供しているかをチェックし、 どちらを採用するかを決定する。
 .SS システムコールのリスト
-Below is a list of the Linux system calls.  In the list, the \fIKernel\fP
-column indicates the kernel version for those system calls that were new in
-Linux 2.2, or have appeared since that kernel version.  Note the following
-points:
+以下は Linux のシステムコールのリストである。 このリストで、 \fIKernel\fP の列は、Linux 2.2 以降で登場したシステムコールが
+登場したカーネルバージョンを示す。 以下に詳細な説明を記す。
 .IP * 3
 カーネルバージョンがない場合、そのシステムコールは カーネル 1.0 もしくはそれ以前に登場した。
 .IP *
@@ -105,8 +115,8 @@ backport された。 この場合、システムコールが登場したバー
 .\" Looking at scripts/checksyscalls.sh in the kernel source is
 .\" instructive about x86 specifics.
 .\"
-The list of system calls that are available as at kernel 3.5 (or in a few
-cases only on older kernels) is as follows:
+カーネル 3.9 で利用可能なシステムコールのリストを以下に示す
+(それ以前のカーネルでだけ利用可能なものも少数だが含まれる):
 .ad l
 .TS
 l l l
@@ -117,7 +127,7 @@ l l l.
 \fB_llseek\fP(2)       1.2
 \fB_newselect\fP(2)    2.0
 \fB_sysctl\fP(2)       2.0
-\fBaccept\fP(2)        2.0     See notes on \fBsocketcall\fP(2)
+\fBaccept\fP(2)        2.0     \fBsocketcall\fP(2) の「注意」の節を参照
 \fBaccept4\fP(2)       2.6.28
 \fBaccess\fP(2)        1.0
 \fBacct\fP(2)  1.0
@@ -126,17 +136,21 @@ l l l.
 \fBalarm\fP(2) 1.0
 \fBalloc_hugepages\fP(2)       2.5.36  2.5.44 で削除
 \fBbdflush\fP(2)       1.2     T{
-2.6 以降では非推奨 (何もしない)
+2.6 以降では非推奨
+.br
+(何もしない)
 T}
-\fBbind\fP(2)  2.0     See notes on \fBsocketcall\fP(2)
+\fBbind\fP(2)  2.0     \fBsocketcall\fP(2) の「注意」の節を参照
 \fBbrk\fP(2)   1.0
-\fBcacheflush\fP(2)    1.2     Not on x86
+\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{
-See \fBchown\fP(2) for version details
+バージョン毎の詳細は
+.br
+\fBchown\fP(2) を参照。
 T}
 \fBchown32\fP(2)       2.4
 \fBchroot\fP(2)        1.0
@@ -147,7 +161,7 @@ T}
 \fBclock_settime\fP(2) 2.6
 \fBclone\fP(2) 1.0
 \fBclose\fP(2) 1.0
-\fBconnect\fP(2)       2.0     See notes on \fBsocketcall\fP(2)
+\fBconnect\fP(2)       2.0     \fBsocketcall\fP(2) の「注意」の節を参照
 \fBcreat\fP(2) 1.0
 \fBcreate_module\fP(2)         2.6 で削除
 \fBdelete_module\fP(2) 1.0
@@ -217,7 +231,7 @@ T}
 \fBgetgroups\fP(2)     1.0
 \fBgetgroups32\fP(2)   2.4
 \fBgetitimer\fP(2)     1.0
-\fBgetpeername\fP(2)   2.0     See notes on \fBsocketcall\fP(2)
+\fBgetpeername\fP(2)   2.0     \fBsocketcall\fP(2) の「注意」の節を参照
 \fBgetpagesize\fP(2)   2.0     x86 にはない
 \fBgetpgid\fP(2)       1.0
 \fBgetpgrp\fP(2)       1.0
@@ -231,8 +245,8 @@ T}
 \fBgetrlimit\fP(2)     1.0
 \fBgetrusage\fP(2)     1.0
 \fBgetsid\fP(2)        2.0
-\fBgetsockname\fP(2)   2.0     See notes on \fBsocketcall\fP(2)
-\fBgetsockopt\fP(2)    2.0     See notes on \fBsocketcall\fP(2)
+\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
@@ -264,13 +278,15 @@ T}
 \fBkeyctl\fP(2)        2.6.11
 \fBkill\fP(2)  1.0
 \fBlchown\fP(2)        1.0     T{
-See \fBchown\fP(2) for version details
+バージョン毎の詳細は
+.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     See notes on \fBsocketcall\fP(2)
+\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
@@ -305,10 +321,10 @@ T}
 \fBmq_timedsend\fP(2)  2.6.6
 \fBmq_unlink\fP(2)     2.6.6
 \fBmremap\fP(2)        2.0
-\fBmsgctl\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBmsgget\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBmsgrcv\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBmsgsnd\fP(2)        2.0     See notes on \fBipc\fP(2)
+\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?
@@ -328,28 +344,32 @@ T}
 \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     Not on x86
+\fBpciconfig_iobase\fP(2)      2.2.15; 2.4     x86 にはない
 .\" Alpha, PowerPC, ARM; not x86
-\fBpciconfig_read\fP(2)        2.0.26; 2.2     Not on x86
+\fBpciconfig_read\fP(2)        2.0.26; 2.2     x86 にはない
 .\" , PowerPC, ARM; not x86
-\fBpciconfig_write\fP(2)       2.0.26; 2.2     Not on 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() という名前であった; 2.6.32 で名称変更
+2.6.31 では perf_counter_open() という
+.br
+名前であった; 2.6.32 で名称変更
 T}
 \fBpersonality\fP(2)   1.2
-\fBperfctr\fP(2)       2.2     Sparc; removed in 2.6.34
+\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)              PowerPC only
+\fBppc_rtas\fP(2)              PowerPC のみ
 \fBppoll\fP(2) 2.6.16
 \fBprctl\fP(2) 2.2
 \fBpread64\fP(2)               T{
-2.2 で "pread" として追加; 2.6 で "pread64" に名称変更
+2.2 で "pread" として追加;
+.br
+2.6 で "pread64" に名称変更
 T}
 \fBpreadv\fP(2)        2.6.30
 \fBprlimit\fP(2)       2.6.36
@@ -359,7 +379,9 @@ T}
 .\" Implements \fBpselect\fP(2)
 \fBptrace\fP(2)        1.0
 \fBpwrite64\fP(2)              T{
-2.2 で "pwrite" として追加; 2.6 で "pwrite64" に名称変更
+2.2 で "pwrite" として追加;
+.br
+2.6 で "pwrite64" に名称変更
 T}
 \fBpwritev\fP(2)       2.6.30
 \fBquery_module\fP(2)  2.2     2.6 で削除
@@ -372,9 +394,9 @@ T}
 \fBreadlinkat\fP(2)    2.6.16
 \fBreadv\fP(2) 2.0
 \fBreboot\fP(2)        1.0
-\fBrecv\fP(2)  2.0     See notes on \fBsocketcall\fP(2)
-\fBrecvfrom\fP(2)      2.0     See notes on \fBsocketcall\fP(2)
-\fBrecvmsg\fP(2)       2.0     See notes on \fBsocketcall\fP(2)
+\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
 \fBremovexattr\fP(2)   2.6; 2.4.18
@@ -391,7 +413,7 @@ T}
 \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 only
+\fBs390_runtime_instr\fP(2)    3.7     s390 のみ
 \fBsched_get_priority_max\fP(2)        2.0
 \fBsched_get_priority_min\fP(2)        2.0
 \fBsched_getaffinity\fP(2)     2.6
@@ -403,16 +425,16 @@ T}
 \fBsched_setscheduler\fP(2)    2.0
 \fBsched_yield\fP(2)   2.0
 \fBselect\fP(2)        1.0
-\fBsemctl\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBsemget\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBsemop\fP(2) 2.0     See notes on \fBipc\fP(2)
+\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     See notes on \fBsocketcall\fP(2)
+\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     See notes on \fBsocketcall\fP(2)
-\fBsendto\fP(2)        2.0     See notes on \fBsocketcall\fP(2)
+\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
@@ -443,18 +465,18 @@ T}
 \fBsetreuid32\fP(2)    2.4
 \fBsetrlimit\fP(2)     1.0
 \fBsetsid\fP(2)        1.0
-\fBsetsockopt\fP(2)    2.0     See notes on \fBsocketcall\fP(2)
+\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)         2.2 で削除
 \fBsetxattr\fP(2)      2.6; 2.4.18
 \fBsgetmask\fP(2)      1.0
-\fBshmat\fP(2) 2.0     See notes on \fBipc\fP(2)
-\fBshmctl\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBshmdt\fP(2) 2.0     See notes on \fBipc\fP(2)
-\fBshmget\fP(2)        2.0     See notes on \fBipc\fP(2)
-\fBshutdown\fP(2)      2.0     See notes on \fBsocketcall\fP(2)
+\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
@@ -464,10 +486,10 @@ T}
 \fBsigprocmask\fP(2)   1.0
 \fBsigreturn\fP(2)     1.0
 \fBsigsuspend\fP(2)    1.0
-\fBsocket\fP(2)        2.0     See notes on \fBsocketcall\fP(2)
+\fBsocket\fP(2)        2.0     \fBsocketcall\fP(2) の「注意」の節を参照
 \fBsocketcall\fP(2)    1.0
 .\" Implements BSD socket calls
-\fBsocketpair\fP(2)    2.0     See notes on \fBsocketcall\fP(2)
+\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 のみ
@@ -486,7 +508,8 @@ T}
 \fBsync\fP(2)  1.0
 \fBsync_file_range\fP(2)       2.6.17
 \fBsync_file_range2\fP(2)      2.6.22  T{
-アーキテクチャ固有の \fBsync_file_range\fP(2) の一種
+アーキテクチャ固有の
+\fBsync_file_range\fP(2) の一種
 T}
 .\" PowerPC, ARM, tile
 .\" First appeared on ARM, as arm_sync_file_range(), but later renamed
@@ -529,7 +552,10 @@ T}
 \fButrap_install\fP(2) 2.2     Sparc
 \fBvfork\fP(2) 2.2
 \fBvhangup\fP(2)       1.0
-\fBvm86old\fP(2)       1.0     Was "vm86"; renamed in 2.0.28/2.2
+\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
@@ -540,9 +566,9 @@ T}
 .TE
 .ad
 .PP
-On many platforms, including x86\-32, socket calls are all multiplexed (via
-glibc wrapper functions) through \fBsocketcall\fP(2)  and similarly System V
-IPC calls are multiplexed through \fBipc\fP(2).
+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
@@ -577,19 +603,17 @@ IPC calls are multiplexed through \fBipc\fP(2).
 \fBgetpmsg\fP(2) と \fBputpmsg\fP(2) は STREAMS 対応のパッチが適用された
 カーネル用であり、標準のカーネルに登場することはないかもしれない。
 
-There was briefly \fBset_zone_reclaim\fP(2), added in Linux 2.6.13, and removed
-in 2.6.16; this system call was never available to user space.
+\fBset_zone_reclaim\fP(2) は少しの間だけ存在した。 Linux 2.6.13 で追加され、2.6.16
+で削除された。このシステムコールがユーザ空間から使える状態になったことはない。
 .SH 注意
 .PP
-Roughly speaking, the code belonging to the system call with number __NR_xxx
-defined in \fI/usr/include/asm/unistd.h\fP can be found in the Linux kernel
-source in the routine \fIsys_xxx\fP().  (The dispatch table for i386 can be
-found in \fI/usr/src/linux/arch/i386/kernel/entry.S\fP.)  There are many
-exceptions, however, mostly because older system calls were superseded by
-newer ones, and this has been treated somewhat unsystematically.  On
-platforms with proprietary operating\-system emulation, such as parisc,
-sparc, sparc64 and alpha, there are many additional system calls; mips64
-also contains a full set of 32\-bit system calls.
+たいていは、 \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 ビットシステムコールのフルセットも含まれている。
 
 時間の経過とともに、いくつかのシステムコールではインタフェースの 変更が必要になってきた。
 こうした変更の理由の一つは、システムコールに渡される構造体やスカラー値 のサイズを増やす必要があることだった。
@@ -658,17 +682,15 @@ Linux 2.4 では、32 ビット・アーキテクチャ上のアプリケーシ
 .\" .BR chown (2),
 .\" and the semantics of the latter call were changed to what
 .\" they are today.
-The \fBselect\fP(2)  and \fBmmap\fP(2)  system calls use five or more arguments,
-which caused problems in the way argument passing on the i386 used to be set
-up.  Thus, while other architectures have \fIsys_select\fP()  and \fIsys_mmap\fP()
-corresponding to \fI__NR_select\fP and \fI__NR_mmap\fP, on i386 one finds
-\fIold_select\fP()  and \fIold_mmap\fP()  (routines that use a pointer to a
-argument block) instead.  These days passing five arguments is not a problem
-any more, and there is a \fI__NR__newselect\fP that corresponds directly to
-\fIsys_select\fP()  and similarly \fI__NR_mmap2\fP.
+\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 関連項目
 \fBsyscall\fP(2), \fBunimplemented\fP(2), \fBlibc\fP(7)
 .SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.54 の一部
 である。プロジェクトの説明とバグ報告に関する情報は
 http://www.kernel.org/doc/man\-pages/ に書かれている。