Palenque

Páginas: 12 (2765 palabras) Publicado: 3 de octubre de 2012
Señales POSIX

Conceptos acerca de Señales

Configuración de una Señal

Espera de Señales

¿Qué es una Señal?

Bloqueo de una señal

¿Cómo se Identifica una señal?

Asignar un manejador

Ejemplo

¿Cómo se Genera una señal?

Desde otro proceso

Desde un Temporizador

1

SEÑALES POSIX
ÍNDICE

 

¿Qué vamos a estudiar?
•  •  •  • 

Concepto de Señal POSIX Métodosde generación de Señales Configuración de Señales POSIX Ejecución de tareas ante eventos asíncronos Ejecución de tareas periódicas
SITR: Señales POSIX 2

• 

1

¿Qué es una Señal?
 

Una señal es una notificación por software a un proceso/thread de la ocurrencia de un evento
     

Interrupción: notificación por hardware Una señal es gestionada por el S.O. Se interrumpe la tareaactualmente en curso y se activa la tarea asociada a la señal. Permite asociar señales independientes a cada proceso o thread

 

SITR: Señales POSIX

3

Estados de una Señal (1)
 

Estados en los que se puede encontrar una señal:
 

 

 

 

 

   

Generada: Una señal está asociada a un evento, por lo que cuando dicho evento se produce se dice que la señal se hagenerado. Depositada: Se dice que la señal está depositada cuando el proceso asociado emprende una acción con base a ella. Tiempo de vida de una señal es el intervalo entre la generación y el depósito de ésta. Pendiente: se dice que una señal está pendiente si ha sido generada pero todavía no está depositada. Atrapada: un proceso atrapa una señal si éste ejecuta el manejador de señal cuando sedeposita. Ignorada: no es ejecutado ningún manejador al ser depositada. Bloqueada: Si se genera una señal y está bloqueada no se pierde, queda pendiente de ser depositada hasta que sea desbloqueda. Se controla mediante la máscara de la señal.
SITR: Señales POSIX 4

2

Estados de una Señal (2)
Evento Señal Generada Señal Depositada El proceso emprende una acción

Tiempo de Vida LatenciaActivación El proceso tiene bloqueada la señal El proceso Atrapa la señal (Se ejecuta el manejador si no está ignorada)

Tiempo de ejecución del manejador

SITR: Señales POSIX

5

Identificación de una Señal
 

Número Entero. Etiquetas definidas en
SÍMBOLO
SIGHUP SIGKILL
………
 
SIGALRM
SIGTERM
SIGUSR1
SIGUSR2
SIGRTMIN
SIGRTMAX
SIGNIFICADO
Hangup
Elimina el proceso………..
 
Alarm clock
software termination signal from kill
User defined signal 1
User defined signal 2
first (highest-priority) realtime signal
last (lowest-priority) realtime signal

SITR: Señales POSIX

6

3

¿Cómo se genera una Señal?
 

Interrupciones hardware:
     

Activación de pines (puertos) especiales de la CPU Excepciones en la ejecución Relojes

 Eventos generados por los procesos en ejecución:
   

Generación desde otro proceso Generación desde un temporizador

SITR: Señales POSIX

7

Generación desde otro proceso
 

Señales estándar:
#include #include int kill (pid_t pid, int sig); int sigsend (idtype_t idtype, id_t id, int sig); idtype:

P_PID, P_PGID, P_UID, P_GID, P_SID, P_ALL

 

Señales de Tiempo Real:
   Permiten enviar información adicional Permite que las señales sean encoladas mediante prioridades.
sigqueue (pid_t pid, int const signo, union sigval value);

int

union sigval { int void };

sival_int; /* integer value */ *sival_ptr; /* pointer value */
SITR: Señales POSIX 8

4

¿Quién recibe una Señal?
 

Van dirigidas a un proceso, pero pueden existir varios threads dentrodel proceso:
 

Señales síncronas: son aquellas que son generadas por la ejecución del código, y por tanto son generadas por un thread concreto. En este caso la señal puede ser depositada únicamente por el thread que generó el evento Señales asíncronas: el resto de señales producidas por llamas explícitas (kill) o por eventos no asociados al código en ejecución. En este caso la señal va...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Palenque
  • Palenque
  • Palenque
  • El Palenque
  • palenque
  • Palenque
  • Palenque
  • Palenque

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS