OSDN Git Service

2d1b2bbaaa33c5fc3085f997d799c29770878b60
[linuxjm/LDP_man-pages.git] / release / man2 / sigaltstack.2
1 '\" t
2 .\" Copyright (c) 2001, Michael Kerrisk (mtk.manpages@gmail.com)
3 .\"
4 .\" Permission is granted to make and distribute verbatim copies of this
5 .\" manual provided the copyright notice and this permission notice are
6 .\" preserved on all copies.
7 .\"
8 .\" Permission is granted to copy and distribute modified versions of this
9 .\" manual under the conditions for verbatim copying, provided that the
10 .\" entire resulting derived work is distributed under the terms of a
11 .\" permission notice identical to this one.
12 .\"
13 .\" Since the Linux kernel and libraries are constantly changing, this
14 .\" manual page may be incorrect or out-of-date.  The author(s) assume no
15 .\" responsibility for errors or omissions, or for damages resulting from
16 .\" the use of the information contained herein.  The author(s) may not
17 .\" have taken the same level of care in the production of this manual,
18 .\" which is licensed free of charge, as they might when working
19 .\" professionally.
20 .\"
21 .\" Formatted or processed versions of this manual, if unaccompanied by
22 .\" the source, must acknowledge the copyright and authors of this work.
23 .\"
24 .\" aeb, various minor fixes
25 .\"
26 .\" Japanese Version Copyright (c) 2001 Yuichi SATO
27 .\"         all rights reserved.
28 .\" Translated 2001-11-04, Yuichi SATO <ysato@h4.dion.ne.jp>
29 .\" Updated 2001-12-09, Yuichi SATO
30 .\" Updated 2005-11-04, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
31 .\" Updated 2006-01-04, Akihiro MOTOKI, Catch up to LDP 2.20
32 .\"
33 .\"WORD:        alternate signal stack  ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯
34 .\"WORD:        establish       (¥¹¥¿¥Ã¥¯¤Î) ³ÎΩ
35 .\"
36 .TH SIGALTSTACK 2 2008-10-04 "Linux" "Linux Programmer's Manual"
37 .SH Ì¾Á°
38 sigaltstack \- ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Î¥³¥ó¥Æ¥­¥¹¥È¤òÀßÄꡦ¼èÆÀ¤¹¤ë
39 .SH ½ñ¼°
40 .B #include <signal.h>
41 .sp
42 .BI "int sigaltstack(const stack_t *" ss ", stack_t *" oss );
43 .sp
44 .in -4n
45 glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
46 .RB ( feature_test_macros (7)
47 »²¾È):
48 .in
49 .sp
50 .BR sigaltstack ():
51 _BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500
52 .\" .br
53 .\" .BR sigstack ():
54 .\" _BSD_SOURCE || _XOPEN_SOURCE >= 500
55 .SH ÀâÌÀ
56 .BR sigaltstack ()
57 ¤ò»È¤¦¤È¡¢
58 ¥×¥í¥»¥¹¤Ï¿·¤·¤¤ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤òÄêµÁ¤·¤¿¤ê¡¢
59 ´û¸¤ÎÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Î¾õÂÖ¤ò¼èÆÀ¤Ç¤­¤ë¡£
60 ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤¬ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤òÍ׵᤹¤ë¤è¤¦¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¤È
61 .RB ( sigaction (2)
62 »²¾È)¡¢¥Ï¥ó¥É¥é¤Î¼Â¹ÔÃæ¤Ï¤½¤Î¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤¬»È¤ï¤ì¤ë¡£
63
64 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò»È¤¦ºÝ¤Î°ìÈÌŪ¤Ê¼ê½ç¤Ï¡¢°Ê²¼¤ÎÄ̤ê¤Ç¤¢¤ë:
65 .TP 3
66 1.
67 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Ç»È¤¦¥á¥â¥êÎΰè¤ò³ÎÊݤ¹¤ë¡£
68 .TP
69 2.
70 .BR sigaltstack ()
71 ¤ò»È¤Ã¤Æ¡¢
72 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Î¸ºß¤È¾ì½ê¤ò¥·¥¹¥Æ¥à¤ËÃΤ餻¤ë¡£
73 .TP
74 3.
75 .BR sigaction (2)
76 ¤ò»È¤Ã¤Æ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤ò³ÎΩ¤¹¤ëºÝ¡¢
77 \fBSA_ONSTACK\fP ¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤ê¡¢
78 ¤½¤Î¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤òÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¼Â¹Ô¤¹¤ë¤³¤È¤ò
79 ¥·¥¹¥Æ¥à¤ËÃΤ餻¤ë¡£
80 .P
81 \fIss\fP °ú¤­¿ô¤Ï¡¢¿·¤·¤¤¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò»ØÄꤹ¤ë¤¿¤á¤Ë»È¤¦¡£
82 ¤Þ¤¿ \fIoss\fP °ú¤­¿ô¤Ï¡¢¸½ºß³ÎΩ¤µ¤ì¤Æ¤¤¤ë
83 ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Î¾ðÊó¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Ë»È¤¦¡£
84 ¤³¤ÎÁàºî¤Î¤¦¤Á 1 ¤Ä¤À¤±¤ò¼Â¹Ô¤µ¤»¤ë¤Ë¤Ï¡¢
85 »ÈÍѤ·¤Ê¤¤°ú¤­¿ô¤ò NULL ¤Ë»ØÄꤹ¤ì¤Ð¤è¤¤¡£
86 °ú¤­¿ô¤È¤Ê¤ë¹½Â¤ÂΤϡ¢°Ê²¼¤Î¤è¤¦¤Ê·¿¤Ç¤¢¤ë:
87 .sp
88 .in +4n
89 .nf
90 typedef struct {
91     void  *ss_sp;     /* ¥¹¥¿¥Ã¥¯¤Î¥Ù¡¼¥¹¥¢¥É¥ì¥¹ */
92     int    ss_flags;  /* ¥Õ¥é¥° */
93     size_t ss_size;   /* ¥¹¥¿¥Ã¥¯¤Î¥Ð¥¤¥È¿ô */
94 } stack_t;
95 .fi
96 .in
97
98 ¿·µ¬¤ÎÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò³ÎΩ¤¹¤ë¤Ë¤Ï¡¢
99 \fIss.ss_flags\fP ¤ò 0 ¤ËÀßÄꤷ¡¢
100 \fIss.ss_sp\fP ¤È \fIss.ss_size\fP ¤Ë
101 ¥¹¥¿¥Ã¥¯¤Î³«»Ï¥¢¥É¥ì¥¹¤È¥¹¥¿¥Ã¥¯¥µ¥¤¥º¤ò»ØÄꤹ¤ë¡£
102 Äê¿ô \fBSIGSTKSZ\fP ¤Ï¡¢ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤¬Ä̾ïɬÍפ¹¤ë
103 ¥µ¥¤¥º¤è¤ê¤â½¼Ê¬Â礭¤¯ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£
104 ¤Þ¤¿Äê¿ô \fBMINSIGSTKSZ\fP ¤Ï¡¢
105 ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤Î¼Â¹Ô¤ËɬÍפʺǾ®¥µ¥¤¥º¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£
106
107 ÂåÂØ¥¹¥¿¥Ã¥¯¤Ç¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤¬µ¯Æ°¤µ¤ì¤¿¾ì¹ç¤Ë¤Ï¡¢
108 ¥«¡¼¥Í¥ë¤Ë¤è¤ê¼«Æ°Åª¤Ë¡¢\fIss.ss_sp\fP ¤Ç»ØÄꤵ¤ì¤¿¥¢¥É¥ì¥¹¤Ï
109 Æ°ºî¤·¤Æ¤¤¤ë¥Ï¡¼¥É¥¦¥§¥¢¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤ËŬ¤·¤¿¥¢¥É¥ì¥¹¶­³¦¤Ë
110 Ä´À°¤µ¤ì¤ë¡£
111
112 ´û¸¤Î¥¹¥¿¥Ã¥¯¤ò̵¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢
113 \fIss.ss_flags\fP ¤ò \fBSS_DISABLE\fP ¤Ë»ØÄꤹ¤ë¡£
114 ¤³¤Î¾ì¹ç¡¢\fIss\fP ¤Î¾¤Î¥Õ¥£¡¼¥ë¥É¤Ï̵»ë¤µ¤ì¤ë¡£
115
116 \fIoss\fP ¤¬ NULL °Ê³°¤Î¾ì¹ç¡¢
117 \fIoss\fP ¤ËÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Î¾ðÊó¤¬ÊÖ¤µ¤ì¤ë¡£
118 ¤³¤ì¤Ï (¼Â¼ÁŪ¤Ë)
119 .BR sigaltstack ()
120 ¤Î¸Æ¤Ó½Ð¤·¤è¤êÀè¤Ë¹Ô¤ï¤ì¤ë¡£
121 \fIoss.ss_sp\fP ¤È \fIoss.ss_size\fP ¥Õ¥£¡¼¥ë¥É¤Ë
122 ¥¹¥¿¥Ã¥¯¤Î³«»Ï¥¢¥É¥ì¥¹¤È¥¹¥¿¥Ã¥¯¥µ¥¤¥º¤¬ÊÖ¤µ¤ì¤ë¡£
123 \fIoss.ss_flags\fP ¤Ë¤Ï°Ê²¼¤Î¤É¤Á¤é¤«¤ÎÃͤ¬ÊÖ¤µ¤ì¤ë:
124 .TP
125 .B SS_ONSTACK
126 ¥×¥í¥»¥¹¤¬ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë
127 (¥×¥í¥»¥¹¤¬´û¤Ë¤½¤Î¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
128 ¤½¤ì¤ÈƱ¤¸¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Ë¤ÏÊѹ¹¤Ç¤­¤Ê¤¤ÅÀ¤ËÃí°Õ¤¹¤ë¤³¤È)¡£
129 .TP
130 .B SS_DISABLE
131 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤¬¸½ºß̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
132 .SH ÊÖ¤êÃÍ
133 .BR sigaltstack ()
134 ¤ÏÀ®¸ù¤·¤¿¾ì¹ç 0 ¤òÊÖ¤¹¡£
135 ¼ºÇÔ¤·¤¿¾ì¹ç¤Ï \-1 ¤òÊÖ¤·¤Æ¡¢
136 ¥¨¥é¡¼¤ò¼¨¤¹Ãͤˠ\fIerrno\fP ¤òÀßÄꤹ¤ë¡£
137 .SH ¥¨¥é¡¼
138 .TP
139 .B EFAULT
140 \fIss\fP ¤Þ¤¿¤Ï \fIoss\fP ¤Î¤É¤Á¤é¤¬¡¢NULL °Ê³°¤Ç¡¢
141 ¤«¤Ä¥×¥í¥»¥¹¤Î¥¢¥É¥ì¥¹¶õ´Ö¤Î³°¤ò»Ø¤·¤Æ¤¤¤ë¡£
142 .TP
143 .B EINVAL
144 \fIss\fP ¤¬ NULL °Ê³°¤Ç¡¢\fIss_flags\fP ¥Õ¥£¡¼¥ë¥É¤¬
145 .B SS_DISABLE
146 °Ê³°¤Î 0 ¤Ç¤Ê¤¤ÃͤˤʤäƤ¤¤ë¡£
147 .TP
148 .B ENOMEM
149 ¿·¤·¤¤ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯ (\fIss.ss_size\fP) ¤Ë»ØÄꤷ¤¿¥µ¥¤¥º¤¬
150 \fBMINSTKSZ\fP ¤è¤ê¾®¤µ¤¤¡£
151 .TP
152 .B EPERM
153 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤¬Í­¸ú¤Ç¤¢¤ë¤È¤­¤ËÊѹ¹¤ò¹Ô¤ª¤¦¤È¤·¤¿
154 (¤Ä¤Þ¤ê¡¢¥×¥í¥»¥¹¤¬´û¤Ë¸½ºß¤ÎÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤¿)¡£
155 .SH ½àµò
156 SUSv2, SVr4, POSIX.1-2001.
157 .SH Ãí°Õ
158 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò»ÈÍѤ¹¤ëºÇ¤â¤è¤¯¤¢¤ë¾ìÌ̤ϡ¢
159 .B SIGSEGV
160 ¥·¥°¥Ê¥ë¤ò°·¤¦¤È¤­¤Ç¤¢¤ë¡£
161 .B SIGSEGV
162 ¤Ï¥×¥í¥»¥¹¤ÎÄ̾ï¤Î¥¹¥¿¥Ã¥¯¤¬ÍøÍѤǤ­¤ë¶õ´Ö¤¬»È¤¤²Ì¤¿¤µ¤ì¤¿ºÝ¤Ë
163 À¸À®¤µ¤ì¤ë¥·¥°¥Ê¥ë¤Ç¤¢¤ë¡£¤³¤Î¾ì¹ç¤Ë¤Ï¡¢
164 .B SIGSEGV
165 ÍѤΥ·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤ò¥×¥í¥»¥¹¤Î¥¹¥¿¥Ã¥¯¾å¤Ç¤Ïµ¯Æ°¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¤¡£
166 ¤½¤Î¤¿¤á¡¢¤³¤Î¥·¥°¥Ê¥ë¤ò°·¤ª¤¦¤È¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢
167 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò»ÈÍѤ·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
168 .P
169 ¥×¥í¥»¥¹¤¬É¸½à¤Î¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò»È¤¤²Ì¤¿¤¹¤³¤È¤¬Í½ÁÛ¤µ¤ì¤ë¾ì¹ç¤Ï¡¢
170 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò³ÎΩ¤¹¤ë¤ÈÊØÍø¤Ç¤¢¤ë¡£
171 Î㤨¤Ð¡¢¥¹¥¿¥Ã¥¯¤¬ºÇ¾å°Ì¥¢¥É¥ì¥¹¤«¤é
172 ²¼°Ì¥¢¥É¥ì¥¹Êý¸þ¤ËÈó¾ï¤Ë¤¿¤¯¤µ¤óÀѤޤì¤Æ¤·¤Þ¤¦¤³¤È¤Ç¡¢
173 ºÇ²¼°Ì¥¢¥É¥ì¥¹¤«¤é¾å°Ì¥¢¥É¥ì¥¹Êý¸þ¤ËÀѤޤì¤ë¥Ò¡¼¥×¤È¤Ö¤Ä¤«¤Ã¤Æ¤·¤Þ¤¦¾ì¹ç¤ä¡¢
174 \fBsetrlimit(RLIMIT_STACK, &rlim)\fP ¤Î¸Æ¤Ó½Ð¤·¤Ç³ÎΩ¤µ¤ì¤¿
175 À©¸Â¤Ë㤷¤Æ¤·¤Þ¤Ã¤¿¾ì¹ç¤Ë¡¢¤³¤ÎÍͤʻö¤¬µ¯¤³¤ë¡£
176 ɸ½à¤Î¥¹¥¿¥Ã¥¯¤ò»È¤¤²Ì¤¿¤·¤Æ¤·¤Þ¤¦¤È¡¢
177 ¥«¡¼¥Í¥ë¤Ï¥×¥í¥»¥¹¤Ë \fBSIGSEGV\fP ¥·¥°¥Ê¥ë¤òÁ÷¤ë¡£
178 ¤³¤Î¤è¤¦¤Ê¾õ¶·¤Ç¤Ï¡¢ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¤·¤«¥·¥°¥Ê¥ë¤ò¥­¥ã¥Ã¥Á¤Ç¤­¤Ê¤¤¡£
179 .P
180 Linux ¤¬¥µ¥Ý¡¼¥È¤¹¤ë¿¤¯¤Î¥Ï¡¼¥É¥¦¥§¥¢¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ç¤Ï¡¢
181 ¥¹¥¿¥Ã¥¯¤Ï²¼°Ì¥¢¥É¥ì¥¹Êý¸þ¤ËÀѤޤì¤ë¡£
182 .BR sigaltstack ()
183 ¤Ï¥¹¥¿¥Ã¥¯¤¬ÀѤޤì¤ëÊý¸þ¤ò¼«Æ°Åª¤Ë·èÄꤹ¤ë¡£
184 .P
185 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë
186 ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤«¤é¸Æ¤Ð¤ì¤ë´Ø¿ô¤â¡¢ÂåÂØ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤ò»È¤¦
187 (¥×¥í¥»¥¹¤¬ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¾å¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢
188 ¾¤Î¥·¥°¥Ê¥ë¤Ç¸Æ¤Ó½Ð¤µ¤ì¤ë¥Ï¥ó¥É¥é¤â¤³¤ÎÂåÂØ¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤ò»È¤¦)¡£
189 ɸ½à¤Î¥¹¥¿¥Ã¥¯¤È¤Ï°Û¤Ê¤ê¡¢
190 ¥·¥¹¥Æ¥à¤ÏÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤ò¼«Æ°Åª¤Ë³ÈÄ¥¤·¤Ê¤¤¡£
191 ÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯ÍѤ˳ÎÊݤ·¤¿¥µ¥¤¥º¤ò±Û¤¨¤¿¾ì¹ç¡¢
192 ·ë²Ì¤ÏͽÁۤǤ­¤Ê¤¤¡£
193 .P
194 .BR execve (2)
195 ¤Î¸Æ¤Ó½Ð¤·¤¬À®¸ù¤¹¤ë¤È¡¢
196 ´û¸¤ÎÁ´¤Æ¤ÎÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤¬ºï½ü¤µ¤ì¤ë¡£
197 .BR fork ()
198 ·Ðͳ¤ÇºîÀ®¤µ¤ì¤¿»Ò¥×¥í¥»¥¹¤Ï¡¢¿Æ¥×¥í¥»¥¹¤ÎÂåÂØ¥·¥°¥Ê¥ë¥¹¥¿¥Ã¥¯¤Î
199 ÀßÄê¤Î¥³¥Ô¡¼¤ò·Ñ¾µ¤¹¤ë¡£
200 .P
201 .BR sigaltstack ()
202 ¤Ï°ÊÁ°¤Î
203 .BR sigstack ()
204 ¤òÃÖ¤­´¹¤¨¤ë¤â¤Î¤Ç¤¢¤ë¡£
205 ²áµî¥×¥í¥°¥é¥à¤È¤Î¸ß´¹À­¤Î¤¿¤á¡¢glibc ¤Ç¤Ï
206 .BR sigstack ()
207 ¤âÄ󶡤·¤Æ¤¤¤ë¡£
208 ¿·¤·¤¤¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÏÁ´¤Æ
209 .BR sigaltstack ()
210 ¤ò»È¤Ã¤Æ½ñ¤¯¤Ù¤­¤Ç¤¢¤ë¡£
211 .SS Îò»Ë
212 4.2BSD ¤Ë¤Ï
213 .BR sigstack ()
214 ¥·¥¹¥Æ¥à¥³¡¼¥ë¤¬¤¢¤Ã¤¿¡£
215 ¤³¤Î´Ø¿ô¤Ï¾¯¤·°Û¤Ê¤Ã¤¿¹½Â¤ÂΤò»È¤Ã¤Æ¤ª¤ê¡¢
216 ¸Æ¤Ó½Ð¤·¤¿Â¦¤¬¥¹¥¿¥Ã¥¯¤ÎÀѤޤì¤ëÊý¸þ¤òÃΤäƤ¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤È¤¤¤¦
217 Â礭¤Ê·çÅÀ¤¬¤¢¤Ã¤¿¡£
218 .SH Îã
219 °Ê²¼¤Î¥³¡¼¥É¤Ç
220 .BR sigaltstack ()
221 ¤Î»ÈÍÑË¡¤Î°ìÉô¤ò¼¨¤¹:
222
223 .in +4n
224 .nf
225 stack_t ss;
226
227 ss.ss_sp = malloc(SIGSTKSZ);
228 if (ss.ss_sp == NULL)
229     /* ¥Ï¥ó¥É¥ë¥¨¥é¡¼ */;
230 ss.ss_size = SIGSTKSZ;
231 ss.ss_flags = 0;
232 if (sigaltstack(&ss, NULL) == \-1)
233     /* ¥Ï¥ó¥É¥ë¥¨¥é¡¼ */;
234 .fi
235 .in
236 .SH ´ØÏ¢¹àÌÜ
237 .BR execve (2),
238 .BR setrlimit (2),
239 .BR sigaction (2),
240 .BR siglongjmp (3),
241 .BR sigsetjmp (3),
242 .BR signal (7)