sexta-feira, 17 de maio de 2013

Tratamento de Sinais no SO


Em uma aula de sistemas operacionais (SO), comentou-se a respeito dos sinais que o SO envia aos processos e que, eventualmente, podem causar situações não previstas. Por exemplo, a sequência ctrl-c durante a execução de um processo causa seu encerramento.

Em algumas linguagens, em particular na linguagem C, a captura desses sinais para um eventual processamento pode ser feita com a primitiva signal. No interpretador de comandos BASH, isso também pode ser feito com o comando trap.

A sintaxe do comando trap é a seguinte:
  trap [COMANDOS] [SINAIS]
Por exemplo:
  trap "echo Buuu" SIGTERM SIGINT
No caso do exemplo anterior, ao pressionar ctrl-c ou se o usuário instanciar o comando kill para "matar" o script, a mensagem "Buuu" aparecerá no terminal do script.

Nenhum comentário:

Postar um comentário