File: signal.2

package info (click to toggle)
manpages-fr 0.8-1
  • links: PTS
  • area: main
  • in suites: potato
  • size: 5,760 kB
  • ctags: 4
  • sloc: makefile: 57; sh: 8
file content (119 lines) | stat: -rw-r--r-- 3,794 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
.\" Copyright (c) 1994 Mike Battersby <mike@starbug.apana.org.au>
.\" based on work by faith@cs.unc.edu
.\"
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Permission is granted to copy and distribute modified versions of this
.\" manual under the conditions for verbatim copying, provided that the
.\" entire resulting derived work is distributed under the terms of a
.\" permission notice identical to this one
.\" 
.\" Since the Linux kernel and libraries are constantly changing, this
.\" manual page may be incorrect or out-of-date.  The author(s) assume no
.\" responsibility for errors or omissions, or for damages resulting from
.\" the use of the information contained herein.  The author(s) may not
.\" have taken the same level of care in the production of this manual,
.\" which is licensed free of charge, as they might when working
.\" professionally.
.\" 
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and authors of this work.
.\"
.\" Traduction 13/10/1996 par Christophe Blaess (ccb@club-internet.fr)
.\" maj 09/04/99 LDP-man-pages-1.22
.TH SIGNAL 2 "9 Avril 1999" Linux "Manuel du programmeur Linux"

.SH NOM
signal \- Gestionnaire ANSI C de signaux.

.SH SYNOPSIS
.B #include <signal.h>
.sp 2
.BI "void (*signal(int " signum ", void (*" handler ")(int)))(int);"

.SH DESCRIPTION
L'appel systme
.B signal
installe un nouveau gestionnaire pour le signal numro
.IR signum .
Le gestionnaire de signal est
.I handler
qui peut tre soit une fonction spcifique de l'utilisateur, soit
l'une des constantes suivantes :
.RS
.TP
.B SIG_IGN
Ignorer le signal
.TP
.B SIG_DFL
Reprendre le comportement par dfaut pour le signal
.RE
.PP

L'argument entier qui est pass au gestionnaire de signal est le numro
du signal. Ceci permet d'utiliser un mme gestionnaire pour plusieurs
signaux.

.SH "VALEUR RENVOYE"
.B signal
renvoie la valeur prcdente du gestionnaire de signaux, ou
.B SIG_ERR
en cas d'erreur.

.SH NOTES
On ne peut fournir de gestionnaire de signaux ni pour
.B SIGKILL
ni pour
.BR SIGSTOP .
.PP
Contrairement aux systmes BSD, les signaux sous Linux reprennent
leurs comportements par dfaut aprs leur premire rception. Il
est donc gnralement ncessaire de rarmer le gestionnaire (par
un nouvel appel 
.B signal ") "
au sein mme du gestionnaire.

Nanmoins, si l'on inclut
.B "<bsd/signal.h>
 la place de
.B "<signal.h>"
alors
.B signal
est redfini en tant que
.B __bsd_signal
et disposera alors de la smantique BSD.
Les deux versions sont construites  partir de
.BR signaction (2).
.PP
Si le prototype en haut de cette page vous semble confus, 
dcomposez-le ainsi
.PP
typedef void (*sighandler_t)(int);
.br
.BI "sighandler_t signal(int " signum ", sighandler_t " handler );

Comme spcifi par POSIX, le comportement d'un processus est
indfini aprs la rception d'un signal SIGFPE, SIGILL, ou
SIGSEGV qui n'a pas t engendr par une fonction \fIkill()\fP ou
\fIraise()\fP.

La division entire par zro a un rsultat indfini, sur certaines
architecture elle dclenche un signal SIGFPE. Ignorer ce signal
peut conduire  des boucles infinies.
(De mme diviser l'entier le plus ngatif par \-1 peut dclencher SIGFPE).
.PP
POSIX (B.3.3.1.3) dsapprouve le positionnement de SIGCHLD  SIG_IGN.
Les comportements BSD et SYSV diffrent, faisant chouer sous Linux
les logiciels BSD qui positionne l'action de SIGCHK  SIG_IGN.

.SH "CONFORMIT"
ANSI C

.SH "VOIR AUSSI"
.BR kill "(1), " kill "(2), " killpg "(2), " pause "(2), " raise "(3), "
.BR sigaction "(2), " signal "(7), " sigsetops "(3), " sigvec (2)

.SH TRADUCTION
Christophe Blaess, 1997.