Junior — Middle
Explique o que são sinais no sistema operativo Unix e como são utilizados para a interação entre processos.
sobes.tech IA
Resposta da IA
Nos sistemas Unix, os sinais são um mecanismo de notificação assíncrona de eventos para processos. Um sinal é uma mensagem curta enviada ao processo pelo núcleo ou por outro processo para informar sobre algum evento.
Exemplos de sinais:
- SIGINT — interrupção (geralmente Ctrl+C)
- SIGTERM — pedido de terminação do processo
- SIGKILL — terminação imediata do processo
- SIGSTOP — suspensão do processo
Os sinais são usados para:
- Controlar processos (encerrar, suspender, retomar)
- Lidar com erros (por exemplo, divisão por zero gera SIGFPE)
- Interação entre processos (por exemplo, um processo pode enviar um sinal a outro para sincronização)
Um processo pode estabelecer um manipulador de sinal para realizar ações específicas ao recebê-lo, ou ignorar o sinal (se permitido).
Exemplo de uso de sinal no shell:
kill -SIGTERM <pid> # Enviar sinal de término ao processo com identificador pid
Assim, os sinais são uma maneira simples e eficiente de interagir e gerenciar processos no Unix.