B. Señales capturadas
El programador del proceso puede preparar una rutina que se ejecute
al recibirse una señal determinada. El código de la rutina debe
desarrollarse teniendo en cuenta que esta rutina no se va a
ejecutar en el momento deseado por el programador, sino en
cualquier instante en que se produzca un evento. El código deberá,
asimismo, responder a lo que ocurre en el sistema. Por ejemplo, en
el caso de que se haya producido una división por cero, debe ser
capaz de conocer cuál es la variable cuyo valor es cero, cambiar su
valor por un valor por defecto que no sea cero, y seguir ejecutando
el proceso.
Una vez programada, se debe especificar a qué señal responderá la
rutina propia que gestiona una señal concreta. Para ello, existe
una función que asigna la dirección de la rutina a la señal. El
kernel llamará a esa función cada vez que se reciba la
señal. La acción o acciones a las que dé lugar dicha rutina
dependerán del programador. Cuando se termina la ejecución de esta
rutina, el desarrollo del proceso puede continuar en el punto en
que se había interrumpido, finalizar o volver a un punto del
programa establecido con anterioridad por el programador. En la
figura 2.1 se representan de manera gráfica estos tres
comportamientos.

Fig. 2.1. Acciones que se pueden producir al recibir una
señal y capturarla.
C. Señales tratadas por defecto
Mediante la especificación de la constante
SIG_DFL, el kernel llama a una función determinada
cada vez que la señal reaparece. Cada señal tiene asignada
una acción por defecto (representadas en la figura 2.2), que suelen
ser: exit, por la que el proceso receptor de la señal
finaliza; core, por la que el proceso receptor finaliza y
deja un fichero en el directorio actual con una imagen de memoria
del contexto del proceso, y stop, por la que el proceso
receptor se detiene.

Fig. 2.2. Acciones que se pueden producir al recibir una
señal y tratarla por defecto
Información de los programas con certificado
Hay 1 opinión. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
Generadores de código Necesitamos construir proyectos en menor tiempo, con calidad y utilizando metodologias actuales, por eso te proponemos una serie de consejos, normas y cualidades de est... [24/01/06] |
|
2.288 | ||
|
Funciones en C (primera parte) Curso de programacíon informática sobre Funciones en C en el orden de los fundamentos de la programación. Comprende el desarrollo de un software utilizando funciones y a ... [17/10/08] |
|
3.077 | ||
|
Técnicas para el desarrollo de computación móvil (orientado a PDA) Uno de los nuevos paradigmas en el desarrollo de proyectos informáticos es la computación móvil (computación Ubicua). Aquí se verá todo lo que involucra la creación de un... [31/03/06] |
|
1.405 | ||
Publicar en
del.icio.us
digg
meneame