回答:
実際、シグナルの本来の目的は、ターゲットプロセスを強制終了することでした。Unix 3rd Editionにkill
登場しました。当時、それはrootに予約されていて、プロセスは強制終了され(今日のSIGKILLのように)、コアダンプを残しました。
Unix第4版ではsignal
、シグナルハンドラーを設定するためのコンパニオンシステムコールに加えて、シグナル番号の引数が追加されました。当時、ターゲットプロセスがを呼び出していない限り、すべてのシグナルがターゲットプロセスを強制終了しましたignore
。
時間がたつにつれて、ますます多くのシグナルが現れましたが、そのうちのいくつかはデフォルトでターゲットプロセスを殺しませんでした。しかし、名前は残った。
POSIX委員会は、名前変更議論kill
ので、それはより多くのではないよりも混乱されていたであろう変更し、あなたが注意として、すべての信号がターゲットプロセスを終了することを意図しているが、これはそのポイントによって使用履歴を定着したではないので、。