signal.h File Reference

#include "system.h"
#include <signal.h>

Go to the source code of this file.

Defines

Functions


Define Documentation

#define IS_MASKED task,
signo   )     ((TASK_SIGMASK(task) >> signo) & 1)
 

Definition at line 12 of file routix/signal.h.

Referenced by check_sigpending().


Function Documentation

int _sys_kill task_struct_t proceso,
int  signo
 

Envía una señal a un proceso.

Parameters:
proceso task_struct del proceso que recibe la señal
signo numero de la señal a enviar
Returns:
-1 en caso de error
Note:
esta funcion pertenece al kernel. No verifica la validez de sa señal ya que esa es tarea de sys_kill. Usar con precaución y solo en Kernel Mode.

Todo:
Analizar POSIX y verificar si cuando un handler vale SIG_IGN, se marca la señal como pendiente pero no se la ejecuta, o si siquiera se marca como pendiente

Definition at line 62 of file sys_signal.c.

int check_sigpending task_struct_t task,
int  save_context
 

Verifica si hay señales pendientes.

Parameters:
task tarea en la cuál va a verificarlas
save_context flag que indica si debe guardarse el contexto de la tarea
Returns:
0 si no pendientes, 1 si las hay y -1 en caso de error

Definition at line 163 of file signal.c.

Referenced by scheduler(), and sys_signal_check().

void exec_sigpending task_struct_t task,
int  signo,
int  save_context
 

Prepara a la tarea para ejecutar un handler.

Parameters:
task tarea a preparar
signo señal de la cuál se preparará a la tarea para ejecución de su handler
save_context flag que indica si debe guardarse el contexto de la tarea
Todo:
verificar el tema de SIG_IGN, y en que momento debe considerarse

Evaluar sa_flags de la estructura sigaction

Definition at line 229 of file signal.c.

Referenced by check_sigpending().

int sys_sigaction int  signo,
struct sigaction act,
struct sigaction oact
 

establece un handler para una señal (llamada signal)

Parameters:
signo número de la señal
act sigaction que se asosiará a la señal signo
oact lugar donde se retorna el sigaction que se encontraba asociado a signo
Returns:
0 en caso de éxito
Todo:
evaluar sa_flags de la estructura sigaction

Definition at line 194 of file sys_signal.c.

void sys_signal_check void   ) 
 

fuerza un chequeo de señales pendientes, y en caso de haberlas, ejecuta sus handlers

Note:
no tiene ninguna utilidad para el usuario. Es ejecutada luego de la ejecución de cada handler es necesaria ya que debe cambiarse la máscara de señales por cada handler
Todo:
Evaluar sa_flags de la estructura sigaction

Definition at line 121 of file sys_signal.c.

void sys_signal_correct void   ) 
 

Corrige el stack antes de recuperar todos los registros del contexto.

Definition at line 104 of file sys_signal.c.

int sys_sigprocmask int  flag,
sigset_t set,
sigset_t old_set
 

establece o verifica la máscara actual

Parameters:
flag indica si se va a establecer, modificar o ambas
set nueva mascara
old_set aqui se colocará la antigua máscara
Returns:
0 en caso de éxito
Note:
Llamada al sistema sigpromask (ver más datos en páginas man 2 de nix*)

increiblemente esta llamada cumple con el item RATIONALE de POSIX :-)

Definition at line 154 of file sys_signal.c.


Generated on Sun May 30 18:38:36 2004 for Routix OS by doxygen 1.3.6