日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
SIGINTERRUPT(3) FreeBSD ライブラリ関数マニュアル SIGINTERRUPT(3)
名称
siginterrupt -- システムコールを割り込むシグナルを許可する
ライブラリ
標準 C ライブラリ (libc, -lc)
書式
#include <signal.h>
int
siginterrupt(int sig, int flag);
解説
siginterrupt() 関数は、システムコールが指定されたシグナルによって割り込ま
れるとき、システムコールの再開の振る舞いを変更するために使用されます。フ
ラグが偽 (0) であるなら、システムコールは、それらが指定されたシグナルに
よって割り込まれ、データがまだ転送されていないなら、再開されます。システ
ムコールの再開は、4.2BSD 以降のデフォルトの振る舞いであり、FreeBSD で
signal(3) のためのデフォルトの振る舞いです。
フラグが真 (1) であるなら、システムコールの再開は、無効にされます。システ
ムコールが指定されたシグナルによって割り込まれ、データが転送されていない
なら、システムコールは、グローバル変数 errno に EINTR に設定して、-1 を返
します。データを転送し始めた割り込まれたシステムコールは、実際に転送され
たデータの量を返します。システムコールの割り込みは、4.1BSD と AT&T
System V UNIX システムにあるシグナルの振る舞いです。
新しい 4.2BSD シグナル操作セマンティクスは、いかなる他の方法でも変更され
ないことに注意してください。中でも注目すべきは、シグナルハンドラは、続く
sigaction(2) 呼び出しによって明示的に変更されるまで、常にインストールされ
続け、シグナルマスクは、sigaction(2) で文書化されるように、動作します。プ
ログラムは、プログラムの実行で望まれるたびに、再開可能と割り込み可能なシ
ステムコールの操作の間で切り替わります。
シグナルハンドラの実行の間に siginterrupt(3) 呼び出しを発行することによっ
て、新しいアクションは、補足される次のシグナルで起こります。
注
このライブラリルーチンは、4.2BSD で利用可能でない sigaction(2) システム
コールの拡張を使用します、したがって、後方互換性が必要であるなら、使用さ
れるべきではありません。
戻り値
関数 siginterrupt() は、処理が成功すると値 0 を返します。そうでない場合、
値 -1 が返され、グローバル変数 errno にエラーを示す値が設定されます。
エラー
siginterrupt() 呼び出しは、次の場合に失敗します:
[EINVAL] sig 引数が、有効なシグナル番号ではありません。
関連項目
sigaction(2), sigprocmask(2), sigsuspend(2), signal(3)
歴史
siginterrupt() 関数は、4.3BSD で登場しました。
FreeBSD 13.2 June 4, 1993 FreeBSD 13.2