O que significa o status do sinal?

1

Estou lendo o livro "Programação avançada no ambiente Unix".

Aqui está a frase que não consigo entender:

Especificamente, as funções exec() alteram a disposição de quaisquer sinais capturados para sua ação padrão e deixam o status de todos os outros sinais sozinhos.

Eu entendo que a ação dos sinais é alterada para a ação padrão. Mas, qual é o status do sinal?

    
por A.Cho 06.03.2016 / 16:46

1 resposta

3

Em

Specifically, the exec() functions change the disposition of any signals being caught to their default action and leave the status of all other signals alone.

o "status de todos os outros sinais" refere-se aos sinais que não estão sendo capturados, por exemplo, estão sendo ignorados ( SIG_IGN ).

Se o seu programa adicionou um manipulador para um sinal, o programa pode capturar esse sinal (exceto, é claro, para SIGKILL e SIGSTOP que não podem ser capturados). Quando você chama uma função exec() , nenhum desses manipuladores de sinal se aplica ao programa depois de chamar a função exec() .

Se o seu programa não adicionou um manipulador de sinal para um determinado sinal, então chamar uma função exec() não altera a maneira como o sinal afeta seu programa.

Os manipuladores de sinal podem ser estabelecidos com signal ou sigaction .

    
por 06.03.2016 / 16:53

Tags