Administração de Linux
medium

Administração de Linux Question #019e3987

Question Statement
Administração de Linux
#sigint
#ctrl+c
#signal-handling
#terminal-interrupt
#posix-signals
Medium

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.