Bash – What are the differences between KILL, SUSPEND and TERMINATE of a process

bashprocess

What are the differences between

  • Kill a process
  • Suspend a process
  • Terminate a process

In which situation is each term used.

Best Answer

To suspend a process means to make it stop executing for some time. When the process is suspended, it doesn't run, but it's still present in memory, waiting to be resumed (woken up). A process can be suspended by sending it the STOP signal, and resumed by sending it the CONT signal.

To kill a process means to cause it to die. This can be done by sending it a signal. There are various different signal, and they don't all cause the process to die. the KILL signal always does cause the process to die; some other signals typically do but the process can choose to do something different; and there are signals whose role is not to cause the process to die, for example STOP and CONT. Note that the kill utility and the kill C function send a signal, which may or may not actually kill the process.

To terminate a process means to cause it to die. The difference between kill and terminate is that kill generally refers specifically to sending a signal, whereas terminate usually also includes other methods such as sending the process a command that tells it to exit (if the process includes a command interpreter of some kind).

Related Question