Provided by: manpages-es_1.55-7_all bug

NOMBRE

       signal - lista de las señales disponibles

DESCRIPCIÓN

       Linux  permite  tanto las señales POSIX confiables (de aquí en adelante
       "señales estándar") como las señales POSIX en tiempo real.

   Señales Estándar
       Linux soporta las señales  estándar  listadas  a  continuación.  Muchos
       números  de  señales dependen de la arquitectura, tal como se indica en
       la columna "Valor".  (Donde aparezcan tres valores, el primero de ellos
       es  válido  normalmente para alpha y sparc, el segundo para i386, ppc y
       sh, y el último para mips.  Un - indica que una señal no está  presente
       en la arquitectura correspondiente.)

       Las  entradas  en la columna "Acción" de la tabla especifican la acción
       por defecto para la señal de la siguiente manera:

       Term   La acción por defecto es terminar el proceso.

       Ign    La acción por defecto es ignorar la señal.

       Core   La acción por defecto es  terminar  el  proceso  y  realizar  un
              volcado de memoria.

       Stop   La acción por defecto es detener el proceso.

       En  primer lugar se listan las señales descritas en el estándar POSIX.1
       original.

       Señal      Valor     Acción   Comentario
       ----------------------------------------------------------------------
       SIGHUP        1       Term    Cuelgue detectado en la terminal de
                                     control o muerte del proceso de control
       SIGINT        2       Term    Interrupción procedente del teclado
       SIGQUIT       3       Core    Terminación procedente del teclado
       SIGILL        4       Core    Instrucción ilegal
       SIGABRT       6       Core    Señal de aborto procedente de abort(3)
       SIGFPE        8       Core    Excepción de coma flotante
       SIGKILL       9       Term    Señal de matar
       SIGSEGV      11       Core    Referencia inválida a memoria
       SIGPIPE      13       Term    Tubería rota: escritura sin lectores
       SIGALRM      14       Term    Señal de alarma de alarm(2)
       SIGTERM      15       Term    Señal de terminación
       SIGUSR1   30,10,16    Term    Señal definida por usuario 1
       SIGUSR2   31,12,17    Term    Señal 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 señales SIGKILL y SIGSTOP no pueden ser  capturadas,  bloqueadas  o
       ignoradas.

       A  continuación  se  listan  las señales que no aparecen en el estándar
       POSIX.1 pero que son descritas en SUSv2 y SUSv3 / POSIX 1003.1-2001.

       Señal        Valor     Acción   Comentario
       -------------------------------------------------------------------------
       SIGBUS      10,7,10     Core    Error de bus (acceso a memoria inválido)
       SIGPOLL                 Term    Evento que se puede consultar (Sys V).
                                       Sinónimo de SIGIO
       SIGPROF     27,27,29     A      Ha expirado el reloj de perfilado
                                       (profiling)
       SIGSYS      12,-,12      C      Argumento de rutina inválido (SVID)
       SIGTRAP        5        Core    Trampa de traza/punto de ruptura
       SIGURG      16,23,21     B      Condición urgente en conector (4.2 BSD)
       SIGVTALRM   26,26,28     A      Alarma virtual (4.2 BSD)
       SIGXCPU     24,24,30     C      Límite de tiempo de CPU excedido
                                       (4.2 BSD)
       SIGXFSZ     25,25,31     C      Límite de tamaño de fichero excedido
                                       (4.2 BSD)

       En las versiones de Linux  anteriores  a  la  2.2  (incluida  ésta)  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 acción por
       defecto para SIGXCPU y SIGXFSZ es terminar el proceso sin  realizar  un
       volcado  de  memoria.)   Linux  2.4  cumple los requisitos del estándar
       POSIX 1003.1-2001 con respecto a estas señales, terminando  el  proceso
       con un volcado de memoria.

       A continuación otras señales.

       Señal          Valor      Acción   Comentario
       ------------------------------------------------------------------------------------
       SIGIOT           6         Core    Trampa IOT. Un sinónimo 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 sinónimo de SIGCHLD
       SIGPWR       29,30,19      Term    Fallo de corriente eléctrica (System V)
       SIGINFO       29,-,-               Un sinónimo para SIGPWR
       SIGLOST        -,-,-       Term    Bloqueo de fichero perdido.
       SIGWINCH     28,28,20      Ign     Señal de reescalado de la ventana (4.3 BSD, Sun)
       SIGUNUSED     -,31,-       Term    Señal no usada.

       (La  señal 29 es SIGINFO / SIGPWR en la arquitectura alpha pero SIGLOST
       en sparc.)

       La señal SIGEMT no está especificada en el estándar POSIX  1003.1-2001,
       pero   sin   embargo   aparece  en  la  mayoría  de  Unix’s,  donde  su
       comportamiento por defecto es habitualmente  terminar  el  proceso  sin
       realizar un volcado de memoria.

       La  señal  SIGPWR  (que  no  está  especificada  en  el  estándar POSIX
       1003.1-2001) es ignorada habitualmente por defecto en  aquellos  Unix’s
       donde aparece.

       La  señal  SIGIO  (que  no  está  especificada  en  el  estándar  POSIX
       1003.1-2001) es ignorada por defecto en muchos Unix’s.

   Señales en Tiempo real
       Linux  soporta  señales  en  tiempo  real  tal   como   está   definido
       originalmente  en  las  extensiones  de  tiempo  real de POSIX.4 (ahora
       incluidas en POSIX 1003.1-2001).  Linux soporta 32  señales  en  tiempo
       real,  numeradas  del  32  (SIGRTMIN) al 63 (SIGRTMAX).  (Los programas
       deben hacer referencia siempre a las señales en tiempo real  usando  la
       notación  SIGRTMIN+n,  puesto  que  el  rango  de números de señales en
       tiempo real varía entre sistemas Unix’s.)

       A diferencia de las señales estándar, las señales  en  tiempo  real  no
       tienen  un  significado predefinido: el conjunto al completo de señales
       en  tiempo  real  puede  usarse  para  propósitos  definidos   por   la
       aplicación.   (Observe, sin embargo, que la implementación LinuxThreads
       usa las tres primeras señales en tiempo real.)

       La acción por defecto para una señal en  tiempo  real  no  manejada  es
       terminar el proceso receptor.

       Las señales en tiempo real se distinguen por lo siguiente:

       1.  Varias  instancias  de señales en tiempo real pueden ser puestas en
           cola.  En contraste, si varias instancias  de  una  señal  estándar
           llegan  mientras  esa  señal  está  siendo  bloqueada, solamente la
           primera de ellas es puesta en cola.

       2.  Si la señal se envía usando  sigqueue(2),  puede  enviarse  con  la
           señal  un  valor  (bien  un  entero  o  un puntero).  Si el proceso
           receptor establece un manejador para esta señal usando  la  bandera
           SA_SIGACTION en sigaction(2) puede obtener estos datos a través del
           campo si_value de  la  estructura  siginfo_t  pasada  como  segundo
           argumento al manejador.  Además, 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 envía la señal.

       3.  Las  señales  en  tiempo  real se entregan en un orden garantizado.
           Varias señales en tiempo real del mismo tipo llegan en el orden  en
           que  fueron  enviadas.   Si  se envían diferentes señales en tiempo
           real a un proceso, se comunican comenzando por la que  tenga  menor
           número.   (es  decir,  las  señales  con  número  bajo tienen mayor
           prioridad.)

       Si hay señales estándar y en tiempo real pendientes  para  un  proceso,
       POSIX  deja  indefinido cuál es entregada en primer lugar.  Linux, como
       otras muchas implementaciones, da prioridad a las señales  estándar  en
       este caso.

       Según POSIX, una implementación debería permitir que pudieran entrar en
       la cola de un proceso al  menos  _POSIX_SIGQUEUE_MAX  (32)  señales  en
       tiempo  real.   Sin  embargo,  en  lugar  de  establecer  un límite por
       proceso, Linux impone un límite para todo el sistema sobre el número de
       señales  en  tiempo  real  que  puede  haber  en la cola para todos los
       procesos.   Este  límite  puede  ser  consultado  (y  con  privilegios)
       modificado a través del fichero /proc/sys/kernel/rtsig-max.  Un fichero
       relacionado, /proc/sys/kernel/rtsig-nr, puede ser usado para  averiguar
       cuántas señales en tiempo real están actualmente en cola.

CONFORME A

       POSIX.1

FALLOS

       SIGIO  y  SIGLOST tienen el mismo valor.  Este último está comentado en
       las fuentes del núcleo, pero el  proceso  de  construcción  de  algunos
       programas aún piensa que la señal 29 es SIGLOST.

VÉASE TAMBIÉN

       kill(1),     kill(2),     setitimer(2),     sigaction(2),    signal(2),
       sigprocmask(2), sigqueue(2)