Provided by:
manpages-es_1.55-10_all 
NOMBRE
signal - lista de las senales disponibles
DESCRIPCI'ON
Linux permite tanto las senales POSIX confiables (de aqui en adelante
"senales estandar") como las senales POSIX en tiempo real.
Se~nales Est'andar
Linux soporta las senales estandar listadas a continuacion. Muchos
numeros de senales dependen de la arquitectura, tal como se indica en
la columna "Valor". (Donde aparezcan tres valores, el primero de ellos
es valido normalmente para alpha y sparc, el segundo para i386, ppc y
sh, y el ultimo para mips. Un - indica que una senal no esta presente
en la arquitectura correspondiente.)
Las entradas en la columna "Accion" de la tabla especifican la accion
por defecto para la senal de la siguiente manera:
Term La accion por defecto es terminar el proceso.
Ign La accion por defecto es ignorar la senal.
Core La accion por defecto es terminar el proceso y realizar un
volcado de memoria.
Stop La accion por defecto es detener el proceso.
En primer lugar se listan las senales descritas en el estandar POSIX.1
original.
Senal Valor Accion Comentario
----------------------------------------------------------------------
SIGHUP 1 Term Cuelgue detectado en la terminal de
control o muerte del proceso de control
SIGINT 2 Term Interrupcion procedente del teclado
SIGQUIT 3 Core Terminacion procedente del teclado
SIGILL 4 Core Instruccion ilegal
SIGABRT 6 Core Senal de aborto procedente de abort(3)
SIGFPE 8 Core Excepcion de coma flotante
SIGKILL 9 Term Senal de matar
SIGSEGV 11 Core Referencia invalida a memoria
SIGPIPE 13 Term Tuberia rota: escritura sin lectores
SIGALRM 14 Term Senal de alarma de alarm(2)
SIGTERM 15 Term Senal de terminacion
SIGUSR1 30,10,16 Term Senal definida por usuario 1
SIGUSR2 31,12,17 Term Senal definida por usuario 2
SIGCHLD 20,17,18 Ign Proceso hijo terminado o parado
SIGCONT 19,18,25 Continuar si estaba parado
SIGSTOP 17,19,23 Stop Parar proceso
SIGTSTP 18,20,24 Stop Parada escrita en la tty
SIGTTIN 21,21,26 Stop E. de la tty para un proc. de fondo
SIGTTOU 22,22,27 Stop S. a la tty para un proc. de fondo
Las senales SIGKILL y SIGSTOP no pueden ser capturadas, bloqueadas o
ignoradas.
A continuacion se listan las senales que no aparecen en el estandar
POSIX.1 pero que son descritas en SUSv2 y SUSv3 / POSIX 1003.1-2001.
Senal Valor Accion Comentario
-------------------------------------------------------------------------
SIGBUS 10,7,10 Core Error de bus (acceso a memoria invalido)
SIGPOLL Term Evento que se puede consultar (Sys V).
Sinonimo de SIGIO
SIGPROF 27,27,29 A Ha expirado el reloj de perfilado
(profiling)
SIGSYS 12,-,12 C Argumento de rutina invalido (SVID)
SIGTRAP 5 Core Trampa de traza/punto de ruptura
SIGURG 16,23,21 B Condicion urgente en conector (4.2 BSD)
SIGVTALRM 26,26,28 A Alarma virtual (4.2 BSD)
SIGXCPU 24,24,30 C Limite de tiempo de CPU excedido
(4.2 BSD)
SIGXFSZ 25,25,31 C Limite de tamano de fichero excedido
(4.2 BSD)
En las versiones de Linux anteriores a la 2.2 (incluida esta) el
comportamiento por defecto para SIGSYS, SIGXCPU, SIGXFSZ, y (en otras
arquitecturas distintas a SPARC y MIPS) SIGBUS era terminar el proceso
(sin realizar un volcado de memoria). (En otros Unix's la accion por
defecto para SIGXCPU y SIGXFSZ es terminar el proceso sin realizar un
volcado de memoria.) Linux 2.4 cumple los requisitos del estandar
POSIX 1003.1-2001 con respecto a estas senales, terminando el proceso
con un volcado de memoria.
A continuacion otras senales.
Senal Valor Accion Comentario
------------------------------------------------------------------------------------
SIGIOT 6 Core Trampa IOT. Un sinonimo de SIGABRT
SIGEMT 7,-,7 Term
SIGSTKFLT -,16,- Term Fallo de la pila en el coprocesador (no usada)
SIGIO 23,29,22 Term E/S permitida ya (4.2 BSD)
SIGCLD -,-,18 Ign Un sinonimo de SIGCHLD
SIGPWR 29,30,19 Term Fallo de corriente electrica (System V)
SIGINFO 29,-,- Un sinonimo para SIGPWR
SIGLOST -,-,- Term Bloqueo de fichero perdido.
SIGWINCH 28,28,20 Ign Senal de reescalado de la ventana (4.3 BSD, Sun)
SIGUNUSED -,31,- Term Senal no usada.
(La senal 29 es SIGINFO / SIGPWR en la arquitectura alpha pero SIGLOST
en sparc.)
La senal SIGEMT no esta especificada en el estandar POSIX 1003.1-2001,
pero sin embargo aparece en la mayoria de Unix's, donde su
comportamiento por defecto es habitualmente terminar el proceso sin
realizar un volcado de memoria.
La senal SIGPWR (que no esta especificada en el estandar POSIX
1003.1-2001) es ignorada habitualmente por defecto en aquellos Unix's
donde aparece.
La senal SIGIO (que no esta especificada en el estandar POSIX
1003.1-2001) es ignorada por defecto en muchos Unix's.
Se~nales en Tiempo real
Linux soporta senales en tiempo real tal como esta definido
originalmente en las extensiones de tiempo real de POSIX.4 (ahora
incluidas en POSIX 1003.1-2001). Linux soporta 32 senales en tiempo
real, numeradas del 32 (SIGRTMIN) al 63 (SIGRTMAX). (Los programas
deben hacer referencia siempre a las senales en tiempo real usando la
notacion SIGRTMIN+n, puesto que el rango de numeros de senales en
tiempo real varia entre sistemas Unix's.)
A diferencia de las senales estandar, las senales en tiempo real no
tienen un significado predefinido: el conjunto al completo de senales
en tiempo real puede usarse para propositos definidos por la
aplicacion. (Observe, sin embargo, que la implementacion LinuxThreads
usa las tres primeras senales en tiempo real.)
La accion por defecto para una senal en tiempo real no manejada es
terminar el proceso receptor.
Las senales en tiempo real se distinguen por lo siguiente:
1. Varias instancias de senales en tiempo real pueden ser puestas en
cola. En contraste, si varias instancias de una senal estandar
llegan mientras esa senal esta siendo bloqueada, solamente la
primera de ellas es puesta en cola.
2. Si la senal se envia usando sigqueue(2), puede enviarse con la
senal un valor (bien un entero o un puntero). Si el proceso
receptor establece un manejador para esta senal usando la bandera
SA_SIGACTION en sigaction(2) puede obtener estos datos a traves del
campo si_value de la estructura siginfo_t pasada como segundo
argumento al manejador. Ademas, los campos si_pid y si_uid de esta
estructura pueden usarse para obtener el identificador de proceso y
el identificador de usuario real del proceso que envia la senal.
3. Las senales en tiempo real se entregan en un orden garantizado.
Varias senales en tiempo real del mismo tipo llegan en el orden en
que fueron enviadas. Si se envian diferentes senales en tiempo
real a un proceso, se comunican comenzando por la que tenga menor
numero. (es decir, las senales con numero bajo tienen mayor
prioridad.)
Si hay senales estandar y en tiempo real pendientes para un proceso,
POSIX deja indefinido cual es entregada en primer lugar. Linux, como
otras muchas implementaciones, da prioridad a las senales estandar en
este caso.
Segun POSIX, una implementacion deberia permitir que pudieran entrar en
la cola de un proceso al menos _POSIX_SIGQUEUE_MAX (32) senales en
tiempo real. Sin embargo, en lugar de establecer un limite por
proceso, Linux impone un limite para todo el sistema sobre el numero de
senales en tiempo real que puede haber en la cola para todos los
procesos. Este limite puede ser consultado (y con privilegios)
modificado a traves del fichero /proc/sys/kernel/rtsig-max. Un fichero
relacionado, /proc/sys/kernel/rtsig-nr, puede ser usado para averiguar
cuantas senales en tiempo real estan actualmente en cola.
CONFORME A
POSIX.1
FALLOS
SIGIO y SIGLOST tienen el mismo valor. Este ultimo esta comentado en
las fuentes del nucleo, pero el proceso de construccion de algunos
programas aun piensa que la senal 29 es SIGLOST.
V'EASE TAMBI'EN
kill(1), kill(2), setitimer(2), sigaction(2), signal(2),
sigprocmask(2), sigqueue(2)