SYSCALL(2) | FreeBSD System Calls Manual | SYSCALL(2) |
名称
syscall, __syscall — 間接システムコールライブラリ
Standard C Library (libc, -lc)書式
#include < sys/syscall.h>#include < unistd.h>
int
syscall( int number, ...);
off_t
__syscall( quad_t number, ...);
解説
syscall() 関数は、指定された number があるアセンブリ言語インタフェースを指定された引数を付けてシステムコールを実行します。システムコールのためのシンボリック数は、ヘッダファイル < sys/syscall.h> にあります。 __syscall() 形式は、1 つ以上の引数が引数の整列が正しいことを保証する 64 ビットの引数であるなら、使用されるべきです。このシステムコールは、C ライブラリにエントリがない、新しいシステムコールをテストするために役に立ちます。戻り値
戻り値は、呼び出されるシステムコールによって定義されています。一般的に、0 の戻り値は、成功を示しています。 -1 の戻り値は、エラーを示し、エラーコードは、 errno に格納されます。歴史
syscall() 関数は、 4.0BSD で登場しました。バグ
pipe(2) のような複数の戻り値があるシステムコールをシミュレートする方法はありません。June 16, 1993 | FreeBSD |