.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
-.TH SYSCALL 2 2013\-06\-21 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 2002 Yuichi SATO
+.\" all rights reserved.
+.\" Translated Tue Aug 6 03:43:25 JST 2002
+.\" by Yuichi SATO <ysato@h4.dion.ne.jp>
+.\" Updated 2013-05-06, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2013-07-24, Akihiro MOTOKI <amotoki@gmail.com>
+.\"
+.TH SYSCALL 2 2014\-05\-10 Linux "Linux Programmer's Manual"
.SH 名前
syscall \- 間接システムコール
.SH 書式
\fB#include <unistd.h>\fP
\fB#include <sys/syscall.h> \fP/* SYS_xxx の定義用 */
-\fBint syscall(int \fP\fInumber\fP\fB, ...);\fP
+\fBlong syscall(long \fP\fInumber\fP\fB, ...);\fP
.fi
.SH 説明
\fBsyscall\fP() は、システムコールを起動する小さなライブラリ関数で、 \fInumber\fP
最初の表は、 カーネルモードに遷移するのに使用される命令、 システムコール番号を示すのに使用されるレジスタ、
システムコールの結果を返すのに使用されるレジスタの一覧である (なお、 ここに載っているカーネルモードに遷移するのに使用される命令は、
-カーネルモードに遷移する最速や最善の方法でない場合もあるので、 VDSO を参照する必要があるかもしれない)。
+カーネルモードに遷移する最速や最善の方法でない場合もあるので、 \fBvdso\fP(7) を参照する必要があるかもしれない)。
.if t \{\
.ft CW
\}
l l1 l l1 l.
arch/ABI instruction syscall # retval Notes
_
-arm/OABI swi NR \- a1 NR is syscall #
-arm/EABI swi 0x0 r7 r1
+arm/OABI swi NR \- a1 NR はシステムコール番号
+arm/EABI swi 0x0 r7 r0
blackfin excpt 0x0 P0 R0
i386 int $0x80 eax eax
-ia64 break 0x100000 r15 r10/r8
+ia64 break 0x100000 r15 r10/r8 T{
+真偽値のエラー/
+.br
+エラー値
+T}
parisc ble 0x100(%sr2, %r0) r20 r28
-s390 svc 0 r1 r2 NR ã\81\8c 256 æ\9cªæº\80ã\81®å ´å\90\88 "svc NR" ã\81§
-s390x svc 0 r1 r2 NR が直接渡される場合がある
+s390 svc 0 r1 r2 ä¸\8bè¨\98å\8f\82ç\85§
+s390 svc 0 r1 r2 下記参照
sparc/32 t 0x10 g1 o0
sparc/64 t 0x6d g1 o0
x86_64 syscall rax rax
.TE
+.PP
+s390 と s390x では、 NR (システムコール番号) が 256 未満の場合 "svc NR" で NR が直接渡される場合がある。
.if t \{\
.in
.ft P
arch/ABI arg1 arg2 arg3 arg4 arg5 arg6 arg7
_
arm/OABI a1 a2 a3 a4 v1 v2 v3
-arm/EABI r1 r2 r3 r4 r5 r6 r7
+arm/EABI r0 r1 r2 r3 r4 r5 r6
blackfin R0 R1 R2 R3 R4 R5 \-
i386 ebx ecx edx esi edi ebp \-
-ia64 r11 r9 r10 r14 r15 r13 \-
+ia64 out0 out1 out2 out3 out4 out5 \-
parisc r26 r25 r24 r23 r22 r21 \-
s390 r2 r3 r4 r5 r6 r7 \-
s390x r2 r3 r4 r5 r6 r7 \-
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/types.h>
+#include <signal.h>
int
main(int argc, char *argv[])
pid_t tid;
tid = syscall(SYS_gettid);
- tid = syscall(SYS_tgkill, getpid(), tid);
+ tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);
}
.fi
.SH 関連項目
-\fB_syscall\fP(2), \fBintro\fP(2), \fBsyscalls\fP(2)
+\fB_syscall\fP(2), \fBintro\fP(2), \fBsyscalls\fP(2), \fBvdso\fP(7)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.52 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.67 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。