fbpx
Wikipedia

signal.h

signal.h es un archivo de cabecera definido en la Biblioteca estándar de C para especificar como un programa maneja señales mientras se ejecuta. Una señal puede reportar un comportamiento excepcional en el programa (tales como la división por cero ), o una señal puede reportar algún evento asíncrono fuera del programa (como alguien está pulsando una tecla de atención interactiva en el teclado)

Una señal puede ser generada llamando a raise (para enviar una señal al proceso actual) o kill (para enviar una señal a cualquier proceso). Cada implementación define lo que genera las señales (en su caso) y en qué circunstancias las genera. Una implementación puede definir otras señales además de las que figuran en esta lista. La cabecera estándar <signal.h> pueden definir macros adicionales con nombres que empiezan con SIG para especificar los valores de señales adicionales. Todos los valores son expresiones constantes enteras >= 0.

Un manejador de la señal se puede especificar para todas las señales excepto dos (SIGKILL y SIGSTOP no puede ser atrapadas, bloqueadas o ignoradas). Un manejador de la señal es una función que el entorno de destino llama cuando se produce la señal correspondiente. El entorno de destino suspende la ejecución del programa hasta que vuelva la señal de controlador o llama a longjmp. Para una máxima portabilidad, un manejador de la señal asíncrona sólo debe:

  • hacer llamadas (que tienen éxito) a la señal de la función
  • asignar valores a los objetos de tipo volátiles sig_atomic_t
  • devolver el control a la función que la llamó

Si la señal informa de un error en el programa (y la señal no es asincrónica), el manejador de la señal puede terminala llamando a abort, exit, o longjmp.

Funciones miembro

  • int raise(int sig). Envía una señal artificialmente.
  • psignal(int sig, const char *s), devuelve a stderr una cadena que representa un número de señal. Esta en 4.3BSD, Solaris y Linux, pero no está especificada por POSIX o SUS.

En los mismos sistemas, string.h contiene la función no estándar strsignal(int sig) que opera de la misma forma que strerror.

  • void* signal(int sig, void (*func)(int)), establece las medidas adoptadas cuando el programa recibe la señal sig. Si el valor de func es SIG_DFL, se usará el manejo por defecto para esa señal. Si el valor de func es SIG_IGN, la señal será ignorada. De lo contrario se apuntará a una función manejador de señal que se llamará cuando la señar se active.

Tipos miembro

typedef i-type sig_atomic_t

Macros miembro

  • SIG_DFL - Usado para seleccionar el manejo por defecto.
  • SIG_IGN - Usado para manejar una señal ignorándola.
  • SIG_ERR - Un número usado para errores.

Constantes Miembro

Constante Significado Sistemas
SIGHUP Hangup POSIX
SIGINT Interrupt ANSI
SIGQUIT Quit POSIX
SIGILL Illegal instruction ANSI
SIGABRT Abort ANSI
SIGTRAP Trace trap POSIX
SIGIOT IOT trap 4.2 BSD
SIGEMT EMT trap 4.2 BSD
SIGINFO Information 4.2 BSD
SIGFPE Floating-point exception ANSI
SIGKILL Kill, unblock-able POSIX
SIGBUS Bus error 4.2 BSD
SIGSEGV Segmentation violation ANSI
SIGSYS Bad argument to system call 4.2 BSD
SIGPIPE Broken pipe POSIX
SIGALRM Alarm clock POSIX
SIGTERM Termination ANSI
SIGUSR1 User-defined signal 1 POSIX
SIGUSR2 User-defined signal 2 POSIX
SIGCHLD Child status has changed POSIX
SIGCLD Same as SIGCHLD System V
SIGPWR Power failure restart System V
SIGXCPU Exceeded CPU time POSIX
SIGSTOP Pause execution POSIX
SIGCONT Resume execution POSIX

Véase también

  •   Datos: Q307232

signal, este, artículo, sección, necesita, referencias, aparezcan, publicación, acreditada, este, aviso, puesto, enero, 2022, archivo, cabecera, definido, biblioteca, estándar, para, especificar, como, programa, maneja, señales, mientras, ejecuta, señal, puede. Este articulo o seccion necesita referencias que aparezcan en una publicacion acreditada Este aviso fue puesto el 15 de enero de 2022 signal h es un archivo de cabecera definido en la Biblioteca estandar de C para especificar como un programa maneja senales mientras se ejecuta Una senal puede reportar un comportamiento excepcional en el programa tales como la division por cero o una senal puede reportar algun evento asincrono fuera del programa como alguien esta pulsando una tecla de atencion interactiva en el teclado Una senal puede ser generada llamando a raise para enviar una senal al proceso actual o kill para enviar una senal a cualquier proceso Cada implementacion define lo que genera las senales en su caso y en que circunstancias las genera Una implementacion puede definir otras senales ademas de las que figuran en esta lista La cabecera estandar lt signal h gt pueden definir macros adicionales con nombres que empiezan con SIG para especificar los valores de senales adicionales Todos los valores son expresiones constantes enteras gt 0 Un manejador de la senal se puede especificar para todas las senales excepto dos SIGKILL y SIGSTOP no puede ser atrapadas bloqueadas o ignoradas Un manejador de la senal es una funcion que el entorno de destino llama cuando se produce la senal correspondiente El entorno de destino suspende la ejecucion del programa hasta que vuelva la senal de controlador o llama a longjmp Para una maxima portabilidad un manejador de la senal asincrona solo debe hacer llamadas que tienen exito a la senal de la funcion asignar valores a los objetos de tipo volatiles sig atomic t devolver el control a la funcion que la llamoSi la senal informa de un error en el programa y la senal no es asincronica el manejador de la senal puede terminala llamando a abort exit o a href Setjmp h html title Setjmp h longjmp a Indice 1 Funciones miembro 2 Tipos miembro 3 Macros miembro 4 Constantes Miembro 5 Vease tambienFunciones miembro Editarint raise int sig Envia una senal artificialmente psignal int sig const char s devuelve a stderr una cadena que representa un numero de senal Esta en 4 3BSD Solaris y Linux pero no esta especificada por POSIX o SUS En los mismos sistemas string h contiene la funcion no estandar strsignal int sig que opera de la misma forma que strerror void signal int sig void func int establece las medidas adoptadas cuando el programa recibe la senal sig Si el valor de func es SIG DFL se usara el manejo por defecto para esa senal Si el valor de func es SIG IGN la senal sera ignorada De lo contrario se apuntara a una funcion manejador de senal que se llamara cuando la senar se active Tipos miembro Editartypedef i type sig atomic tMacros miembro EditarSIG DFL Usado para seleccionar el manejo por defecto SIG IGN Usado para manejar una senal ignorandola SIG ERR Un numero usado para errores Constantes Miembro EditarConstante Significado SistemasSIGHUP Hangup POSIXSIGINT Interrupt ANSISIGQUIT Quit POSIXSIGILL Illegal instruction ANSISIGABRT Abort ANSISIGTRAP Trace trap POSIXSIGIOT IOT trap 4 2 BSDSIGEMT EMT trap 4 2 BSDSIGINFO Information 4 2 BSDSIGFPE Floating point exception ANSISIGKILL Kill unblock able POSIXSIGBUS Bus error 4 2 BSDSIGSEGV Segmentation violation ANSISIGSYS Bad argument to system call 4 2 BSDSIGPIPE Broken pipe POSIXSIGALRM Alarm clock POSIXSIGTERM Termination ANSISIGUSR1 User defined signal 1 POSIXSIGUSR2 User defined signal 2 POSIXSIGCHLD Child status has changed POSIXSIGCLD Same as SIGCHLD System VSIGPWR Power failure restart System VSIGXCPU Exceeded CPU time POSIXSIGSTOP Pause execution POSIXSIGCONT Resume execution POSIXVease tambien EditarLenguaje de programacion C Datos Q307232 Obtenido de https es wikipedia org w index php title Signal h amp oldid 140964764, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos