Para que serve o arquivo-cabeçalh signal.h?

1. Para que serve o arquivo-cabeçalh signal.h?

Junior
2016henrique

(usa Ubuntu)

Enviado em 23/02/2016 - 21:42h

Eu sei que serve para tratamento de sinais, mas que sinais? Me expliquem mais detalhadamente pf...


  


2. Re: Para que serve o arquivo-cabeçalh signal.h?

felipe silva
lipman

(usa Debian)

Enviado em 24/02/2016 - 00:46h

espero que o ajude a entender: https://pt.m.wikipedia.org/wiki/Signal.h


3. Re: Para que serve o arquivo-cabeçalh signal.h?

Perfil removido
removido

(usa Nenhuma)

Enviado em 24/02/2016 - 06:12h

Quando você usa o comando KILL está enviando um sinal a programa ou programas.

----------------------------------------------------------------------------------------------------------------
http://24.media.tumblr.com/tumblr_m62bwpSi291qdlh1io1_250.gif

# apt-get purge systemd (não é prá digitar isso!)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden



4. Re: Para que serve o arquivo-cabeçalh signal.h?

Paulo
paulo1205

(usa Ubuntu)

Enviado em 24/02/2016 - 09:43h

Nele se declaram as funções, tipos e constantes associadas ao recebimento de sinais.

Sinais, por sua vez, são notificações assíncronas que o sistema operacional envia ao processo. Tipicamente, o recebimento de um sinal provoca uma interrupção na execução normal do processo.

A maioria dos sinais pode ser interceptada pelo processo, fazendo com que a interrupção provoque um desvio para uma função especial do programa destinada a tratar o evento que provocou a interrupção. Esses mesmos sinais também podem ser ignorados ou temporariamente bloqueados, a critério do programador.

Se um programador não definir tratamento específico para um determinado sinal mas tal sinal chegar ao processo, o sistema aplica um dos tratamentos default. Para a maioria dos sinais, o tratamento default é terminar o programa (às vezes com salvamento em disco do conteúdo da memória (core dump), para eventual análise da causa raiz do evento). Outros sinais são ignorados por default, e alguns provocam pausa na execução, até que algum outro evento externo provoque sua retomada exatamente a partir do ponto em que ela havia parado.

Há dois sinais que nunca podem ser interceptados nem ignorados pelo programa: SIGKILL e SIGSTOP. As consequências de tais sinais são sempre, respectivamente, matar o processo e interromper sua execução até que seja enviado um novo sinal que permita a continuação da execução.

Sinais podem ser manualmente enviados por um processo a outro processo (ou a si mesmo), mas podem também ser gerados pelo próprio sistema operacional, geralmente para notificar o processo sobre a ocorrência de eventos externos, tais como queda de canal de comunicação (SIGHUP, SIGPIPE), esvaziamento de um buffer (SIGPOLL) ou término da execução de um processo filho (SIGCHLD), bem como de uma situação excepcional provocada pelo próprio programa, tais como instrução ilegal (SIGILL), operação matemática ilegal (SIGFPE), ou falha de segmentação (SIGSEGV).

Na seção 7 do manual on-line, o verbete “signal” traz, entre outras informações, uma lista dos sinais padronizados, juntamente com os sentidos com que foram projetados e o tratamento default a eles dispensados (digite, no terminal, o comando “man 7 signal”).






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts