Em que ordem devo enviar sinais para os processos de desligamento norma

Em umComent emesta resposta de outroquestã, o comentarista diz:

não use kill -9, a menos que seja absolutamente necessário! O SIGKILL não pode ser interceptado, portanto o programa morto não pode executar rotinas de desligamento para, apague arquivos temporários. Primeiro tente HUP (1), depois INT (2), depois QUIT (3)

Eu concordo em princípio sobreSIGKILL, mas o resto é novidade para mim. Dado que o sinal padrão enviado porkill éSIGTERM, Eu esperaria que fosse o sinal mais comumente esperado para o desligamento normal de um processo arbitrário. Além disso, eu viSIGHUP usado por razões que não terminam, como dizer a um daemon "releia seu arquivo de configuração". E parece-me queSIGINT (a mesma interrupção que você normalmente teria com Ctrl-C, certo?) não é tão amplamente suportada quanto deveria, ou termina de maneira pouco agradáve

Dado queSIGKILL é o último recurso -Quais sinais e em que ordem, você deve enviar para um processo arbitrário, a fim de desligá-lo da maneira mais graciosa possíve

Por favor, fundamentar suas respostas com fatos de suporte (além da preferência ou opinião pessoal) ou referências, se pude

ota: Estou particularmente interessado em práticas recomendadas que incluem a consideração do bash / Cygwi

Editar Até agora, ninguém parece mencionar INT ou QUIT, e há uma menção limitada ao HUP. Existe algum motivo para incluí-los em uma matança ordenada de processos?

questionAnswers(7)

yourAnswerToTheQuestion