プロが教えるわが家の防犯対策術!

solaris初心者です。
killコマンドで、
kill -TERM pidで終了できないプロセスについては
kill -KILL pidで強制的に終了することができます。
と他の者に説明したら、どうして終了できないのが
あるのですかと聞かれました。的確に回答できませんでしたので、よい説明方法等ありましたらお教えください。
あとkill -INT pidについてもお教えください。

A 回答 (2件)

SIGTERMを無視する設定もありますし、それ以外に、SIGTERMを受けたら「ある処理」をしてから終了するようにプログラムすることも多いです。


で、その「ある処理」がバグなどでループやハングしたらプロセスは終了しません。
    • good
    • 0

kill -TERM は作動中のアプリケーションによっては無視


できます。killを受け取るかどうかは任意。

kill -KILL は無視できません。必ず終了しなければなら
ないわけです。

これらはPOSIX.1で決められています。

また -INT は基本的にはTERMと同じ終了です。
ですが標準入力のキーボードからkillを受け付ける仕様
になっているプロセスの場合だけこれで終了します。

しかしアプリケーションの実装によってはまったく違う
使われかたをする場合もあります。bind等。
それらはその都度、専用のドキュメントがありますので
確認してください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!