Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ signal(3F7768) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

signal(3C)

kill(3F7768)

kill(1)

SIGNAL(3F7768)  —  NEWS-OS Programmer’s Manual

名称

signal − シグナルに対する動作を変更する

形式

integer function signal(signum, proc, flag)
integer signum, flag
external proc

解説

プロセスがシグナルを受信した場合 ( signal(3C) 参照)、 デフォルトの動作として、通常、 処理を終了しアボートします。 ユーザは、シグナル処理ルーチンを 書き込むことが選択できます。 この別の動作をシステムに指定する方法が、 signal を呼び出すことです。

signum はシグナル番号 ( signal(3C) 参照) です。 flag が負の値の場合、 proc はユーザのシグナル処理ルーチン名でなくてはなりません。 flag がゼロ、 または正の値の場合、 proc は無視され、 flag の値を シグナル処理の定義としてシステムに渡します。 これは、 特に、 以前にセーブしておいたシグナル処理を 復元できる方法です。 また、 flag が取り得る 2 つの値には、 特定の意味があります。 0 は、"デフォルトの動作をする" (以下の注意事項を参照) ことを示し、 1 は、"このシグナルを無視する" ことです。

正のリターン値は、以前の処理の定義です。 1 より大きい値は、 受信シグナルの発生時に呼び出されるはずだったルーチンのアドレスです。 また、 リターン値を使って、一連の signal を呼び出し、 以前の動作の定義を復元することができます。 負のリターン値は、 システムエラーコードを符号変換したものです ( perror(3F7768) 参照)。

関連ファイル

/usr/lib/libU7768.a

関連事項

signal(3C), kill(3F7768), kill(1)

注意事項

プロセスが開始されるとき、 f77 は特定のシグナルをトラップする準備をします。 デフォルトの f77 の動作を復元する唯一の方法は、 最初の signal の呼び出しからのリターン値を セーブすることです。

ユーザのシグナルハンドラが呼び出されると、 これは整数引数としてシグナル番号に渡されます。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026