Qual dos seguintes sinais é enviado a um processo quando a combinação de teclas CTRL+C é pressionada no teclado?
A
SIGTERM
B
SIGINT
Correct
C
SIGSTOP
D
SIGKILL
Official Explanation / Community Explanations
O sinal enviado quando CTRL+C é pressionado é o SIGINT (Signal Interrupt). Este sinal é definido pelo padrão POSIX e é usado para interromper um processo em execução a partir do terminal.
Como funciona
Ao pressionar CTRL+C, o driver do terminal envia o sinal SIGINT para o grupo de processos em primeiro plano. A ação padrão para o SIGINT é encerrar o processo. Os processos podem capturar ou ignorar o SIGINT, mas a maioria dos programas o trata encerrando-se normalmente.
Por que SIGINT está correto
O sinal SIGINT foi projetado especificamente para essa finalidade. Ele é gerado pelo terminal em resposta ao caractere de interrupção (normalmente CTRL+C). O número do sinal é 2 na maioria dos sistemas do tipo Unix.
Por que as outras opções estão incorretas
SIGTERM (Signal Terminate) é enviado pelo comando kill por padrão para solicitar o encerramento. Ele não é gerado por atalhos de teclado.
SIGSTOP (Signal Stop) suspende um processo. Ele não pode ser capturado ou ignorado, mas não é enviado por CTRL+C; em vez disso, CTRL+Z envia o sinal SIGTSTP.
SIGKILL (Signal Kill) encerra um processo à força e não pode ser capturado. Não é enviado por nenhum atalho de teclado; é enviado usando kill -9.