Quelle est la différence entre SIGKILL et SIGSTOP?

20

Le manuel décrit SIGKILLet SIGSTOPaime ceci:

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

et déclare:

Les signaux SIGKILL et SIGSTOP ne peuvent pas être capturés, bloqués ou ignorés.

mais quelle est la différence entre les 2 signaux?

qdii
la source
Question sur les
supersets

Réponses:

16

Comme on le trouve sur Wikipédia

SIGKILL

Le signal SIGKILL est envoyé à un processus pour qu'il se termine immédiatement. Contrairement à SIGTERM et SIGINT, ce signal ne peut pas être capturé ou ignoré, et le processus de réception ne peut effectuer aucun nettoyage lors de la réception de ce signal.

SIGSTOP

Le signal SIGSTOP demande au système d'exploitation d'arrêter un processus pour une reprise ultérieure.

Maggy May
la source
Vous aimerez peut-être aussi maintenant que SIGINT est un signal émis lorsque vous appuyez sur CTRL + C sur le terminal. SIGSTOP n'est PAS un signal qui est envoyé lorsque vous appuyez sur CTRL + Z - celui-ci est en fait SIGTSTP et contrairement à SIGSTOP peut être ignoré par un processus.
shellbro
26

SIGKILL tue un processus et ne peut pas être attrapé

SIGTERM tue un processus mais peut être attrapé pour faire une sortie gracieuse

SIGSTOP suspend le processus jusqu'à ce que vous fassiez SIGCONT

parkydr
la source
4

Comme son nom l'indique, SIGKILLtuez le processus au lieu de SIGSTOPquoi arrêtez le processus jusqu'à ce qu'il SIGCONTsoit appelé (pour continuer le processus).

antoox
la source