SIGKILLとSIGSTOPの違いは何ですか?


19

マニュアルではSIGKILL、次のSIGSTOPように説明しています。

SIGKILL             9    Term    Kill signal
SIGTERM            15    Term    Termination signal
SIGSTOP      17,19,23    Term    Stop the process

および状態:

シグナルSIGKILLおよびSIGSTOPは、キャッチ、ブロック、または無視できません。

しかし、2つの信号の違いは何ですか?


回答:


15

ウィキペディアに記載されているとおり

SIGKILL

SIGKILLシグナルはプロセスに送信され、すぐに終了します。SIGTERMおよびSIGINTとは対照的に、このシグナルをキャッチまたは無視することはできず、受信プロセスはこのシグナルを受信するとクリーンアップを実行できません。

SIGSTOP

SIGSTOPシグナルは、後で再開するためにプロセスを停止するようオペレーティングシステムに指示します。


また、ターミナルでCTRL + Cを押すとSIGINTが発行されるシグナルになることもお勧めします。SIGSTOPは、CTRL + Zを押したときに送信されるシグナルではありません。これは実際にはSIGTSTPであり、SIGSTOPに反してプロセスによって無視される可能性があります。
shellbro

25

SIGKILL プロセスを強制終了し、キャッチできません

SIGTERM プロセスを強制終了しますが、正常な終了を行うためにキャッチできます

SIGSTOP あなたがするまでプロセスを中断します SIGCONT


4

名前が示すように、SIGKILL代わりにプロセスを強制SIGSTOP終了しますSIGCONT(プロセスを続行するために)が呼び出されるまでプロセスを停止します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.