OSDN Git Service

67964c8673ca10fd39d013c36c1a7fd051e6e440
[linuxjm/LDP_man-pages.git] / po4a / unistd / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2015-01-23 22:23+0900\n"
10 "PO-Revision-Date: 2015-01-24 20:58+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man2/_syscall.2:38
20 #, no-wrap
21 msgid "_SYSCALL"
22 msgstr "_SYSCALL"
23
24 #. type: TH
25 #: build/C/man2/_syscall.2:38
26 #, no-wrap
27 msgid "2007-12-19"
28 msgstr "2007-12-19"
29
30 #. type: TH
31 #: build/C/man2/_syscall.2:38 build/C/man2/access.2:43 build/C/man2/alarm.2:30
32 #: build/C/man2/brk.2:29 build/C/man2/chdir.2:33 build/C/man2/chmod.2:32
33 #: build/C/man2/chown.2:38 build/C/man2/chroot.2:33 build/C/man2/close.2:35
34 #: build/C/man2/dup.2:37 build/C/man7/environ.7:34 build/C/man2/execve.2:37
35 #: build/C/man2/exit_group.2:25 build/C/man2/fcntl.2:65
36 #: build/C/man3/fexecve.3:25 build/C/man2/flock.2:35 build/C/man2/fork.2:39
37 #: build/C/man2/fsync.2:38 build/C/man2/get_thread_area.2:8
38 #: build/C/man2/getdomainname.2:29 build/C/man3/getdtablesize.3:27
39 #: build/C/man3/gethostid.3:29 build/C/man2/gethostname.2:32
40 #: build/C/man2/getpagesize.2:25 build/C/man2/gettid.2:26
41 #: build/C/man2/idle.2:32 build/C/man2/ioctl.2:41 build/C/man2/ioctl_list.2:30
42 #: build/C/man2/ioperm.2:34 build/C/man2/mincore.2:34 build/C/man2/mkdir.2:11
43 #: build/C/man2/nice.2:31 build/C/man2/pread.2:25
44 #: build/C/man2/set_thread_area.2:8 build/C/man2/setup.2:34
45 #: build/C/man2/swapon.2:42 build/C/man2/syscall.2:42
46 #: build/C/man2/syscalls.2:31 build/C/man2/sysctl.2:30
47 #: build/C/man2/sysinfo.2:14 build/C/man2/truncate.2:43
48 #: build/C/man2/umask.2:34 build/C/man2/uname.2:27 build/C/man2/uselib.2:31
49 #: build/C/man2/vfork.2:28 build/C/man2/vhangup.2:28
50 #: build/C/man2/execveat.2:26
51 #, no-wrap
52 msgid "Linux"
53 msgstr "Linux"
54
55 #. type: TH
56 #: build/C/man2/_syscall.2:38 build/C/man2/access.2:43 build/C/man2/alarm.2:30
57 #: build/C/man2/brk.2:29 build/C/man2/chdir.2:33 build/C/man2/chmod.2:32
58 #: build/C/man2/chown.2:38 build/C/man2/chroot.2:33 build/C/man2/close.2:35
59 #: build/C/man3/confstr.3:32 build/C/man3/crypt.3:36 build/C/man3/daemon.3:36
60 #: build/C/man3/des_crypt.3:14 build/C/man2/dup.2:37 build/C/man3/encrypt.3:30
61 #: build/C/man7/environ.7:34 build/C/man3/euidaccess.3:25
62 #: build/C/man3/exec.3:41 build/C/man2/execve.2:37
63 #: build/C/man2/exit_group.2:25 build/C/man2/fcntl.2:65
64 #: build/C/man3/fexecve.3:25 build/C/man2/flock.2:35 build/C/man2/fork.2:39
65 #: build/C/man3/fpathconf.3:41 build/C/man2/fsync.2:38
66 #: build/C/man3/get_nprocs_conf.3:26 build/C/man2/get_thread_area.2:8
67 #: build/C/man3/getcwd.3:32 build/C/man2/getdomainname.2:29
68 #: build/C/man3/getdtablesize.3:27 build/C/man3/gethostid.3:29
69 #: build/C/man2/gethostname.2:32 build/C/man3/getlogin.3:28
70 #: build/C/man3/getopt.3:41 build/C/man2/getpagesize.2:25
71 #: build/C/man2/gettid.2:26 build/C/man3/getumask.3:28
72 #: build/C/man3/getusershell.3:30 build/C/man2/idle.2:32
73 #: build/C/man2/ioctl.2:41 build/C/man2/ioctl_list.2:30
74 #: build/C/man2/ioperm.2:34 build/C/man3/lockf.3:28 build/C/man2/mincore.2:34
75 #: build/C/man2/mkdir.2:11 build/C/man2/nice.2:31 build/C/man2/pread.2:25
76 #: build/C/man2/set_thread_area.2:8 build/C/man2/setup.2:34
77 #: build/C/man5/shells.5:28 build/C/man3/sleep.3:26 build/C/man3/swab.3:31
78 #: build/C/man2/swapon.2:42 build/C/man2/syscall.2:42
79 #: build/C/man2/syscalls.2:31 build/C/man3/sysconf.3:27
80 #: build/C/man2/sysctl.2:30 build/C/man2/sysinfo.2:14
81 #: build/C/man3/tcgetpgrp.3:25 build/C/man2/truncate.2:43
82 #: build/C/man3/ualarm.3:24 build/C/man2/umask.2:34 build/C/man2/uname.2:27
83 #: build/C/man2/uselib.2:31 build/C/man3/usleep.3:33 build/C/man2/vfork.2:28
84 #: build/C/man2/vhangup.2:28 build/C/man2/execveat.2:26
85 #, no-wrap
86 msgid "Linux Programmer's Manual"
87 msgstr "Linux Programmer's Manual"
88
89 #. type: SH
90 #: build/C/man2/_syscall.2:39 build/C/man2/access.2:44 build/C/man2/alarm.2:31
91 #: build/C/man2/brk.2:30 build/C/man2/chdir.2:34 build/C/man2/chmod.2:33
92 #: build/C/man2/chown.2:39 build/C/man2/chroot.2:34 build/C/man2/close.2:36
93 #: build/C/man3/confstr.3:33 build/C/man3/crypt.3:37 build/C/man3/daemon.3:37
94 #: build/C/man3/des_crypt.3:15 build/C/man2/dup.2:38 build/C/man3/encrypt.3:31
95 #: build/C/man7/environ.7:35 build/C/man3/euidaccess.3:26
96 #: build/C/man3/exec.3:42 build/C/man2/execve.2:38
97 #: build/C/man2/exit_group.2:26 build/C/man2/fcntl.2:66
98 #: build/C/man3/fexecve.3:26 build/C/man2/flock.2:36 build/C/man2/fork.2:40
99 #: build/C/man3/fpathconf.3:42 build/C/man2/fsync.2:39
100 #: build/C/man3/get_nprocs_conf.3:27 build/C/man2/get_thread_area.2:9
101 #: build/C/man3/getcwd.3:33 build/C/man2/getdomainname.2:30
102 #: build/C/man3/getdtablesize.3:28 build/C/man3/gethostid.3:30
103 #: build/C/man2/gethostname.2:33 build/C/man3/getlogin.3:29
104 #: build/C/man3/getopt.3:42 build/C/man2/getpagesize.2:26
105 #: build/C/man2/gettid.2:27 build/C/man3/getumask.3:29
106 #: build/C/man3/getusershell.3:31 build/C/man2/idle.2:33
107 #: build/C/man2/ioctl.2:42 build/C/man2/ioctl_list.2:31
108 #: build/C/man2/ioperm.2:35 build/C/man3/lockf.3:29 build/C/man2/mincore.2:35
109 #: build/C/man2/mkdir.2:12 build/C/man2/nice.2:32 build/C/man2/pread.2:26
110 #: build/C/man2/set_thread_area.2:9 build/C/man2/setup.2:35
111 #: build/C/man5/shells.5:29 build/C/man3/sleep.3:27 build/C/man3/swab.3:32
112 #: build/C/man2/swapon.2:43 build/C/man2/syscall.2:43
113 #: build/C/man2/syscalls.2:32 build/C/man3/sysconf.3:28
114 #: build/C/man2/sysctl.2:31 build/C/man2/sysinfo.2:15
115 #: build/C/man3/tcgetpgrp.3:26 build/C/man2/truncate.2:44
116 #: build/C/man3/ualarm.3:25 build/C/man2/umask.2:35 build/C/man2/uname.2:28
117 #: build/C/man2/uselib.2:32 build/C/man3/usleep.3:34 build/C/man2/vfork.2:29
118 #: build/C/man2/vhangup.2:29 build/C/man2/execveat.2:27
119 #, no-wrap
120 msgid "NAME"
121 msgstr "名前"
122
123 #. type: Plain text
124 #: build/C/man2/_syscall.2:41
125 msgid "_syscall - invoking a system call without library support (OBSOLETE)"
126 msgstr ""
127 "_syscall - ライブラリのサポートなしでシステムコールを起動する (昔の方法)"
128
129 #. type: SH
130 #: build/C/man2/_syscall.2:41 build/C/man2/access.2:46 build/C/man2/alarm.2:33
131 #: build/C/man2/brk.2:32 build/C/man2/chdir.2:36 build/C/man2/chmod.2:35
132 #: build/C/man2/chown.2:41 build/C/man2/chroot.2:36 build/C/man2/close.2:38
133 #: build/C/man3/confstr.3:35 build/C/man3/crypt.3:39 build/C/man3/daemon.3:39
134 #: build/C/man3/des_crypt.3:18 build/C/man2/dup.2:40 build/C/man3/encrypt.3:33
135 #: build/C/man7/environ.7:37 build/C/man3/euidaccess.3:28
136 #: build/C/man3/exec.3:44 build/C/man2/execve.2:40
137 #: build/C/man2/exit_group.2:28 build/C/man2/fcntl.2:68
138 #: build/C/man3/fexecve.3:28 build/C/man2/flock.2:38 build/C/man2/fork.2:42
139 #: build/C/man3/fpathconf.3:44 build/C/man2/fsync.2:41
140 #: build/C/man3/get_nprocs_conf.3:29 build/C/man2/get_thread_area.2:11
141 #: build/C/man3/getcwd.3:35 build/C/man2/getdomainname.2:32
142 #: build/C/man3/getdtablesize.3:30 build/C/man3/gethostid.3:32
143 #: build/C/man2/gethostname.2:35 build/C/man3/getlogin.3:31
144 #: build/C/man3/getopt.3:45 build/C/man2/getpagesize.2:28
145 #: build/C/man2/gettid.2:29 build/C/man3/getumask.3:31
146 #: build/C/man3/getusershell.3:33 build/C/man2/idle.2:35
147 #: build/C/man2/ioctl.2:44 build/C/man2/ioperm.2:37 build/C/man3/lockf.3:31
148 #: build/C/man2/mincore.2:37 build/C/man2/mkdir.2:14 build/C/man2/nice.2:34
149 #: build/C/man2/pread.2:28 build/C/man2/set_thread_area.2:11
150 #: build/C/man2/setup.2:37 build/C/man3/sleep.3:29 build/C/man3/swab.3:34
151 #: build/C/man2/swapon.2:45 build/C/man2/syscall.2:45
152 #: build/C/man2/syscalls.2:34 build/C/man3/sysconf.3:30
153 #: build/C/man2/sysctl.2:33 build/C/man2/sysinfo.2:17
154 #: build/C/man3/tcgetpgrp.3:28 build/C/man2/truncate.2:46
155 #: build/C/man3/ualarm.3:27 build/C/man2/umask.2:37 build/C/man2/uname.2:30
156 #: build/C/man2/uselib.2:34 build/C/man3/usleep.3:36 build/C/man2/vfork.2:31
157 #: build/C/man2/vhangup.2:31 build/C/man2/execveat.2:29
158 #, no-wrap
159 msgid "SYNOPSIS"
160 msgstr "書式"
161
162 #. type: Plain text
163 #: build/C/man2/_syscall.2:43 build/C/man2/get_thread_area.2:13
164 #: build/C/man2/set_thread_area.2:13
165 msgid "B<#include E<lt>linux/unistd.hE<gt>>"
166 msgstr "B<#include E<lt>linux/unistd.hE<gt>>"
167
168 #. type: Plain text
169 #: build/C/man2/_syscall.2:45
170 msgid "A _syscall macro"
171 msgstr "A _syscall macro"
172
173 #. type: Plain text
174 #: build/C/man2/_syscall.2:47
175 msgid "desired system call"
176 msgstr "desired system call"
177
178 #. type: SH
179 #: build/C/man2/_syscall.2:47 build/C/man2/access.2:78 build/C/man2/alarm.2:39
180 #: build/C/man2/brk.2:64 build/C/man2/chdir.2:59 build/C/man2/chmod.2:81
181 #: build/C/man2/chown.2:88 build/C/man2/chroot.2:63 build/C/man2/close.2:44
182 #: build/C/man3/confstr.3:49 build/C/man3/crypt.3:56 build/C/man3/daemon.3:51
183 #: build/C/man3/des_crypt.3:34 build/C/man2/dup.2:53 build/C/man3/encrypt.3:56
184 #: build/C/man7/environ.7:42 build/C/man3/euidaccess.3:36
185 #: build/C/man3/exec.3:72 build/C/man2/execve.2:46
186 #: build/C/man2/exit_group.2:34 build/C/man2/fcntl.2:75
187 #: build/C/man3/fexecve.3:53 build/C/man2/flock.2:42 build/C/man2/fork.2:46
188 #: build/C/man3/fpathconf.3:52 build/C/man2/fsync.2:61
189 #: build/C/man3/get_nprocs_conf.3:35 build/C/man2/get_thread_area.2:20
190 #: build/C/man3/getcwd.3:75 build/C/man2/getdomainname.2:51
191 #: build/C/man3/getdtablesize.3:57 build/C/man3/gethostid.3:56
192 #: build/C/man2/gethostname.2:63 build/C/man3/getlogin.3:52
193 #: build/C/man3/getopt.3:79 build/C/man2/getpagesize.2:55
194 #: build/C/man2/gettid.2:38 build/C/man3/getumask.3:39
195 #: build/C/man3/getusershell.3:57 build/C/man2/idle.2:39
196 #: build/C/man2/ioctl.2:50 build/C/man2/ioctl_list.2:33
197 #: build/C/man2/ioperm.2:42 build/C/man3/lockf.3:48 build/C/man2/mincore.2:51
198 #: build/C/man2/mkdir.2:47 build/C/man2/nice.2:46 build/C/man2/pread.2:53
199 #: build/C/man2/set_thread_area.2:20 build/C/man2/setup.2:41
200 #: build/C/man5/shells.5:31 build/C/man3/sleep.3:35 build/C/man3/swab.3:41
201 #: build/C/man2/swapon.2:53 build/C/man2/syscall.2:53
202 #: build/C/man2/syscalls.2:36 build/C/man3/sysconf.3:36
203 #: build/C/man2/sysctl.2:44 build/C/man2/sysinfo.2:21
204 #: build/C/man3/tcgetpgrp.3:34 build/C/man2/truncate.2:79
205 #: build/C/man3/ualarm.3:58 build/C/man2/umask.2:43 build/C/man2/uname.2:34
206 #: build/C/man2/uselib.2:38 build/C/man3/usleep.3:67 build/C/man2/vfork.2:62
207 #: build/C/man2/vhangup.2:45 build/C/man2/execveat.2:37
208 #, no-wrap
209 msgid "DESCRIPTION"
210 msgstr "説明"
211
212 #. type: Plain text
213 #: build/C/man2/_syscall.2:53
214 msgid ""
215 "The important thing to know about a system call is its prototype.  You need "
216 "to know how many arguments, their types, and the function return type.  "
217 "There are seven macros that make the actual call into the system easier.  "
218 "They have the form:"
219 msgstr ""
220 "システムコールに関してそのプロトタイプを知ることが重要である。 引き数の個数、"
221 "それらの型、返り値の型を知る必要がある。 実際の使用にあたっては、システムコー"
222 "ルをシステムに呼び出しやすくするために、 7 個のマクロが用意されている。これら"
223 "のマクロは以下の形である。"
224
225 #. type: Plain text
226 #: build/C/man2/_syscall.2:56
227 msgid "_syscallI<X>(I<type>,I<name>,I<type1>,I<arg1>,I<type2>,I<arg2>,...)"
228 msgstr "_syscallI<X>(I<type>,I<name>,I<type1>,I<arg1>,I<type2>,I<arg2>,...)"
229
230 #. type: Plain text
231 #: build/C/man2/_syscall.2:59
232 msgid "where"
233 msgstr "ここで"
234
235 #. type: Plain text
236 #: build/C/man2/_syscall.2:63
237 msgid ""
238 "I<X> is 0\\(en6, which are the number of arguments taken by the system call"
239 msgstr "I<X> は 0〜6 で、システムコールが取る引き数の個数である。"
240
241 #. type: Plain text
242 #: build/C/man2/_syscall.2:66
243 msgid "I<type> is the return type of the system call"
244 msgstr "I<type> はシステムコールの返り値の型である。"
245
246 #. type: Plain text
247 #: build/C/man2/_syscall.2:69
248 msgid "I<name> is the name of the system call"
249 msgstr "I<name> はシステムコールの名前である。"
250
251 #. type: Plain text
252 #: build/C/man2/_syscall.2:72
253 msgid "I<typeN> is the Nth argument's type"
254 msgstr "I<typeN> は N 番目の引き数の型である。"
255
256 #. type: Plain text
257 #: build/C/man2/_syscall.2:75
258 msgid "I<argN> is the name of the Nth argument"
259 msgstr "I<argN> は N 番目の引き数の名前である。"
260
261 #. type: Plain text
262 #: build/C/man2/_syscall.2:83
263 msgid ""
264 "These macros create a function called I<name> with the arguments you "
265 "specify.  Once you include the _syscall() in your source file, you call the "
266 "system call by I<name>."
267 msgstr ""
268 "これらのマクロは、指定した引き数を持つ I<name> という名前の関数を生成する。 "
269 "一度ソースファイルの中で _syscall() をインクルードしておくと、 そのシステム"
270 "コールを I<name> という名前で呼ぶことができる。"
271
272 #. type: SH
273 #: build/C/man2/_syscall.2:83 build/C/man3/getlogin.3:132
274 #: build/C/man3/getusershell.3:89 build/C/man5/shells.5:43
275 #, no-wrap
276 msgid "FILES"
277 msgstr "ファイル"
278
279 #. type: Plain text
280 #: build/C/man2/_syscall.2:85
281 msgid "I</usr/include/linux/unistd.h>"
282 msgstr "I</usr/include/linux/unistd.h>"
283
284 #. type: SH
285 #: build/C/man2/_syscall.2:85 build/C/man2/access.2:262
286 #: build/C/man2/alarm.2:59 build/C/man2/brk.2:113 build/C/man2/chdir.2:125
287 #: build/C/man2/chmod.2:330 build/C/man2/chown.2:313 build/C/man2/chroot.2:134
288 #: build/C/man2/close.2:84 build/C/man3/confstr.3:128 build/C/man3/crypt.3:183
289 #: build/C/man3/daemon.3:96 build/C/man3/des_crypt.3:142
290 #: build/C/man2/dup.2:208 build/C/man3/encrypt.3:137
291 #: build/C/man3/euidaccess.3:80 build/C/man3/exec.3:199
292 #: build/C/man2/execve.2:464 build/C/man2/exit_group.2:43
293 #: build/C/man2/fcntl.2:1640 build/C/man3/fexecve.3:94
294 #: build/C/man2/flock.2:139 build/C/man2/fork.2:226
295 #: build/C/man3/fpathconf.3:169 build/C/man2/fsync.2:125
296 #: build/C/man3/get_nprocs_conf.3:48 build/C/man2/get_thread_area.2:46
297 #: build/C/man3/getcwd.3:208 build/C/man2/getdomainname.2:110
298 #: build/C/man3/getdtablesize.3:74 build/C/man3/gethostid.3:92
299 #: build/C/man2/gethostname.2:124 build/C/man3/getlogin.3:154
300 #: build/C/man3/getopt.3:318 build/C/man2/getpagesize.2:64
301 #: build/C/man2/gettid.2:58 build/C/man3/getumask.3:58
302 #: build/C/man3/getusershell.3:101 build/C/man2/idle.2:61
303 #: build/C/man2/ioctl.2:119 build/C/man2/ioperm.2:101 build/C/man3/lockf.3:159
304 #: build/C/man2/mincore.2:134 build/C/man2/mkdir.2:204 build/C/man2/nice.2:75
305 #: build/C/man2/pread.2:115 build/C/man2/set_thread_area.2:63
306 #: build/C/man2/setup.2:62 build/C/man3/sleep.3:44 build/C/man3/swab.3:77
307 #: build/C/man2/swapon.2:162 build/C/man3/sysconf.3:327
308 #: build/C/man2/sysctl.2:100 build/C/man2/sysinfo.2:87
309 #: build/C/man3/tcgetpgrp.3:116 build/C/man2/truncate.2:200
310 #: build/C/man3/ualarm.3:97 build/C/man2/umask.2:95 build/C/man2/uname.2:73
311 #: build/C/man2/uselib.2:76 build/C/man3/usleep.3:96 build/C/man2/vfork.2:159
312 #: build/C/man2/vhangup.2:63 build/C/man2/execveat.2:165
313 #, no-wrap
314 msgid "CONFORMING TO"
315 msgstr "準拠"
316
317 #. type: Plain text
318 #: build/C/man2/_syscall.2:87
319 msgid "The use of these macros is Linux-specific, and deprecated."
320 msgstr "これらのマクロは Linux 固有であり、その使用は非推奨である。"
321
322 #. type: SH
323 #: build/C/man2/_syscall.2:87 build/C/man2/access.2:268
324 #: build/C/man2/alarm.2:61 build/C/man2/brk.2:121 build/C/man2/chdir.2:127
325 #: build/C/man2/chmod.2:337 build/C/man2/chown.2:330 build/C/man2/chroot.2:139
326 #: build/C/man2/close.2:87 build/C/man3/crypt.3:188 build/C/man3/daemon.3:102
327 #: build/C/man2/dup.2:218 build/C/man3/encrypt.3:148
328 #: build/C/man3/euidaccess.3:86 build/C/man3/exec.3:205
329 #: build/C/man2/execve.2:472 build/C/man2/exit_group.2:45
330 #: build/C/man2/fcntl.2:1705 build/C/man3/fexecve.3:99
331 #: build/C/man2/flock.2:148 build/C/man2/fork.2:228
332 #: build/C/man3/fpathconf.3:171 build/C/man2/fsync.2:140
333 #: build/C/man3/get_nprocs_conf.3:50 build/C/man2/get_thread_area.2:50
334 #: build/C/man3/getcwd.3:230 build/C/man2/getdomainname.2:113
335 #: build/C/man3/getdtablesize.3:82 build/C/man3/gethostid.3:102
336 #: build/C/man2/gethostname.2:130 build/C/man3/getopt.3:350
337 #: build/C/man2/getpagesize.2:71 build/C/man2/gettid.2:62
338 #: build/C/man3/getumask.3:60 build/C/man2/ioctl.2:134
339 #: build/C/man2/ioperm.2:105 build/C/man2/mkdir.2:211 build/C/man2/nice.2:82
340 #: build/C/man2/pread.2:117 build/C/man2/set_thread_area.2:67
341 #: build/C/man2/setup.2:65 build/C/man2/swapon.2:168 build/C/man2/syscall.2:80
342 #: build/C/man2/syscalls.2:667 build/C/man2/sysctl.2:114
343 #: build/C/man3/tcgetpgrp.3:118 build/C/man2/truncate.2:213
344 #: build/C/man3/ualarm.3:105 build/C/man2/umask.2:97 build/C/man2/uname.2:82
345 #: build/C/man2/uselib.2:80 build/C/man3/usleep.3:114 build/C/man2/vfork.2:174
346 #: build/C/man2/execveat.2:169
347 #, no-wrap
348 msgid "NOTES"
349 msgstr "注意"
350
351 #. type: Plain text
352 #: build/C/man2/_syscall.2:97
353 msgid ""
354 "Starting around kernel 2.6.18, the _syscall macros were removed from header "
355 "files supplied to user space.  Use B<syscall>(2)  instead.  (Some "
356 "architectures, notably ia64, never provided the _syscall macros; on those "
357 "architectures, B<syscall>(2)  was always required.)"
358 msgstr ""
359 "カーネル 2.6.18 あたりから、_syscall マクロ群はユーザ空間に対して提供される "
360 "ヘッダファイルから削除された。代わりに B<syscall>(2)  を使用すること。 (いく"
361 "つかのアーキテクチャ、特に ia64、では、これまで _syscall マクロが 提供された"
362 "ことはない。このようなアーキテクチャでは、常に B<syscall>(2)  が必要であっ"
363 "た。)"
364
365 #. type: Plain text
366 #: build/C/man2/_syscall.2:103
367 msgid ""
368 "The _syscall() macros I<do not> produce a prototype.  You may have to create "
369 "one, especially for C++ users."
370 msgstr ""
371 "_syscall() マクロはプロトタイプを「生成しない」。 ユーザはプロトタイプを自分"
372 "で書かなければならないかもしれない。 とりわけ C++ ユーザの場合はそうであろ"
373 "う。"
374
375 #. type: Plain text
376 #: build/C/man2/_syscall.2:124
377 msgid ""
378 "System calls are not required to return only positive or negative error "
379 "codes.  You need to read the source to be sure how it will return errors.  "
380 "Usually, it is the negative of a standard error code, for example, -"
381 "I<EPERM>.  The _syscall() macros will return the result I<r> of the system "
382 "call when I<r> is nonnegative, but will return -1 and set the variable "
383 "I<errno> to -I<r> when I<r> is negative.  For the error codes, see "
384 "B<errno>(3)."
385 msgstr ""
386 "システムコールは、正のエラーコードのみ、または負のエラーコードのみを返すよう"
387 "に 定められている訳ではない。そのシステムコールがどのようなエラーコードを返す"
388 "かを 確認するには、そのソースコードを読む必要がある。たいていの場合は、標準の"
389 "エラー コードを負にしたものである (例えば -I<EPERM>)。 _syscall() マクロは、"
390 "そのシステムコールの返り値 I<r> が負でない場合、その値 をそのまま返す。一方、"
391 "I<r> が負の場合には、変数 I<errno> に -I<r> を設定し、-1 を返す。 エラーコー"
392 "ドについては B<errno>(3)  を参照。"
393
394 #.  The preferred way to invoke system calls that glibc does not know
395 #.  about yet is via
396 #.  .BR syscall (2).
397 #.  However, this mechanism can be used only if using a libc
398 #.  (such as glibc) that supports
399 #.  .BR syscall (2),
400 #.  and if the
401 #.  .I <sys/syscall.h>
402 #.  header file contains the required SYS_foo definition.
403 #.  Otherwise, the use of a _syscall macro is required.
404 #. type: Plain text
405 #: build/C/man2/_syscall.2:140
406 msgid ""
407 "When defining a system call, the argument types I<must> be passed by-value "
408 "or by-pointer (for aggregates like structs)."
409 msgstr ""
410 "システムコールを定義する際、引き数の型は値渡し (by-value) か、 (構造体のよう"
411 "に集合的なデータの場合は) ポインタ渡し (by-pointer)  でなければならない。"
412
413 #. type: SH
414 #: build/C/man2/_syscall.2:140 build/C/man2/chown.2:442
415 #: build/C/man3/confstr.3:130 build/C/man3/encrypt.3:150
416 #: build/C/man2/execve.2:656 build/C/man2/fork.2:259
417 #: build/C/man3/get_nprocs_conf.3:67 build/C/man3/getopt.3:376
418 #: build/C/man5/shells.5:45 build/C/man2/syscall.2:224
419 #: build/C/man2/sysctl.2:143
420 #, no-wrap
421 msgid "EXAMPLE"
422 msgstr "例"
423
424 #. type: Plain text
425 #: build/C/man2/_syscall.2:147
426 #, no-wrap
427 msgid ""
428 "#include E<lt>stdio.hE<gt>\n"
429 "#include E<lt>stdlib.hE<gt>\n"
430 "#include E<lt>errno.hE<gt>\n"
431 "#include E<lt>linux/unistd.hE<gt>       /* for _syscallX macros/related stuff */\n"
432 "#include E<lt>linux/kernel.hE<gt>       /* for struct sysinfo */\n"
433 msgstr ""
434 "#include E<lt>stdio.hE<gt>\n"
435 "#include E<lt>stdlib.hE<gt>\n"
436 "#include E<lt>errno.hE<gt>\n"
437 "#include E<lt>linux/unistd.hE<gt>       /* for _syscallX macros/related stuff */\n"
438 "#include E<lt>linux/kernel.hE<gt>       /* for struct sysinfo */\n"
439
440 #. type: Plain text
441 #: build/C/man2/_syscall.2:149
442 #, no-wrap
443 msgid "_syscall1(int, sysinfo, struct sysinfo *, info);\n"
444 msgstr "_syscall1(int, sysinfo, struct sysinfo *, info);\n"
445
446 #. type: Plain text
447 #: build/C/man2/_syscall.2:152
448 #, no-wrap
449 msgid ""
450 "/* Note: if you copy directly from the nroff source, remember to\n"
451 "REMOVE the extra backslashes in the printf statement. */\n"
452 msgstr ""
453 "/* Note: nroff のソースファイルから直接コピーする際には、\n"
454 "printf 文内の余分なバックスラッシュを忘れずに削除するように。 */\n"
455
456 #. type: Plain text
457 #: build/C/man2/_syscall.2:158
458 #, no-wrap
459 msgid ""
460 "int\n"
461 "main(void)\n"
462 "{\n"
463 "    struct sysinfo s_info;\n"
464 "    int error;\n"
465 msgstr ""
466 "int\n"
467 "main(void)\n"
468 "{\n"
469 "    struct sysinfo s_info;\n"
470 "    int error;\n"
471
472 #. type: Plain text
473 #: build/C/man2/_syscall.2:173
474 #, no-wrap
475 msgid ""
476 "    error = sysinfo(&s_info);\n"
477 "    printf(\"code error = %d\\en\", error);\n"
478 "    printf(\"Uptime = %lds\\enLoad: 1 min %lu / 5 min %lu / 15 min %lu\\en\"\n"
479 "           \"RAM: total %lu / free %lu / shared %lu\\en\"\n"
480 "           \"Memory in buffers = %lu\\enSwap: total %lu / free %lu\\en\"\n"
481 "           \"Number of processes = %d\\en\",\n"
482 "           s_info.uptime, s_info.loads[0],\n"
483 "           s_info.loads[1], s_info.loads[2],\n"
484 "           s_info.totalram, s_info.freeram,\n"
485 "           s_info.sharedram, s_info.bufferram,\n"
486 "           s_info.totalswap, s_info.freeswap,\n"
487 "           s_info.procs);\n"
488 "    exit(EXIT_SUCCESS);\n"
489 "}\n"
490 msgstr ""
491 "    error = sysinfo(&s_info);\n"
492 "    printf(\"code error = %d\\en\", error);\n"
493 "    printf(\"Uptime = %lds\\enLoad: 1 min %lu / 5 min %lu / 15 min %lu\\en\"\n"
494 "           \"RAM: total %lu / free %lu / shared %lu\\en\"\n"
495 "           \"Memory in buffers = %lu\\enSwap: total %lu / free %lu\\en\"\n"
496 "           \"Number of processes = %d\\en\",\n"
497 "           s_info.uptime, s_info.loads[0],\n"
498 "           s_info.loads[1], s_info.loads[2],\n"
499 "           s_info.totalram, s_info.freeram,\n"
500 "           s_info.sharedram, s_info.bufferram,\n"
501 "           s_info.totalswap, s_info.freeswap,\n"
502 "           s_info.procs);\n"
503 "    exit(EXIT_SUCCESS);\n"
504 "}\n"
505
506 #. type: SS
507 #: build/C/man2/_syscall.2:174
508 #, no-wrap
509 msgid "Sample output"
510 msgstr "出力例"
511
512 #. type: Plain text
513 #: build/C/man2/_syscall.2:183
514 #, no-wrap
515 msgid ""
516 "code error = 0\n"
517 "uptime = 502034s\n"
518 "Load: 1 min 13376 / 5 min 5504 / 15 min 1152\n"
519 "RAM: total 15343616 / free 827392 / shared 8237056\n"
520 "Memory in buffers = 5066752\n"
521 "Swap: total 27881472 / free 24698880\n"
522 "Number of processes = 40\n"
523 msgstr ""
524 "code error = 0\n"
525 "uptime = 502034s\n"
526 "Load: 1 min 13376 / 5 min 5504 / 15 min 1152\n"
527 "RAM: total 15343616 / free 827392 / shared 8237056\n"
528 "Memory in buffers = 5066752\n"
529 "Swap: total 27881472 / free 24698880\n"
530 "Number of processes = 40\n"
531
532 #. type: SH
533 #: build/C/man2/_syscall.2:184 build/C/man2/access.2:390
534 #: build/C/man2/alarm.2:86 build/C/man2/brk.2:163 build/C/man2/chdir.2:136
535 #: build/C/man2/chmod.2:361 build/C/man2/chown.2:490 build/C/man2/chroot.2:151
536 #: build/C/man2/close.2:131 build/C/man3/confstr.3:147
537 #: build/C/man3/crypt.3:249 build/C/man3/daemon.3:110
538 #: build/C/man3/des_crypt.3:145 build/C/man2/dup.2:274
539 #: build/C/man3/encrypt.3:174 build/C/man7/environ.7:247
540 #: build/C/man3/euidaccess.3:101 build/C/man3/exec.3:241
541 #: build/C/man2/execve.2:751 build/C/man2/exit_group.2:49
542 #: build/C/man2/fcntl.2:1916 build/C/man3/fexecve.3:165
543 #: build/C/man2/flock.2:234 build/C/man2/fork.2:264
544 #: build/C/man3/fpathconf.3:180 build/C/man2/fsync.2:162
545 #: build/C/man2/get_thread_area.2:55 build/C/man3/getcwd.3:249
546 #: build/C/man2/getdomainname.2:127 build/C/man3/getdtablesize.3:95
547 #: build/C/man3/gethostid.3:124 build/C/man2/gethostname.2:176
548 #: build/C/man3/getlogin.3:209 build/C/man3/getopt.3:516
549 #: build/C/man2/getpagesize.2:108 build/C/man2/gettid.2:71
550 #: build/C/man3/getumask.3:63 build/C/man3/getusershell.3:103
551 #: build/C/man2/ioctl.2:142 build/C/man2/ioctl_list.2:963
552 #: build/C/man2/ioperm.2:117 build/C/man3/lockf.3:161
553 #: build/C/man2/mincore.2:166 build/C/man2/mkdir.2:236 build/C/man2/nice.2:105
554 #: build/C/man2/pread.2:158 build/C/man2/set_thread_area.2:72
555 #: build/C/man5/shells.5:56 build/C/man3/sleep.3:61 build/C/man3/swab.3:79
556 #: build/C/man2/swapon.2:202 build/C/man2/syscall.2:241
557 #: build/C/man2/syscalls.2:844 build/C/man3/sysconf.3:338
558 #: build/C/man2/sysctl.2:181 build/C/man2/sysinfo.2:90
559 #: build/C/man3/tcgetpgrp.3:127 build/C/man2/truncate.2:261
560 #: build/C/man3/ualarm.3:147 build/C/man2/umask.2:118 build/C/man2/uname.2:167
561 #: build/C/man2/uselib.2:102 build/C/man3/usleep.3:147
562 #: build/C/man2/vfork.2:273 build/C/man2/vhangup.2:66
563 #: build/C/man2/execveat.2:229
564 #, no-wrap
565 msgid "SEE ALSO"
566 msgstr "関連項目"
567
568 #. type: Plain text
569 #: build/C/man2/_syscall.2:188
570 msgid "B<intro>(2), B<syscall>(2), B<errno>(3)"
571 msgstr "B<intro>(2), B<syscall>(2), B<errno>(3)"
572
573 #. type: SH
574 #: build/C/man2/_syscall.2:188 build/C/man2/access.2:401
575 #: build/C/man2/alarm.2:95 build/C/man2/brk.2:168 build/C/man2/chdir.2:140
576 #: build/C/man2/chmod.2:368 build/C/man2/chown.2:495 build/C/man2/chroot.2:154
577 #: build/C/man2/close.2:138 build/C/man3/confstr.3:155
578 #: build/C/man3/crypt.3:255 build/C/man3/daemon.3:113
579 #: build/C/man3/des_crypt.3:149 build/C/man2/dup.2:278
580 #: build/C/man3/encrypt.3:179 build/C/man7/environ.7:264
581 #: build/C/man3/euidaccess.3:112 build/C/man3/exec.3:249
582 #: build/C/man2/execve.2:763 build/C/man2/exit_group.2:51
583 #: build/C/man2/fcntl.2:1937 build/C/man3/fexecve.3:168
584 #: build/C/man2/flock.2:248 build/C/man2/fork.2:275
585 #: build/C/man3/fpathconf.3:186 build/C/man2/fsync.2:170
586 #: build/C/man3/get_nprocs_conf.3:88 build/C/man2/get_thread_area.2:58
587 #: build/C/man3/getcwd.3:256 build/C/man2/getdomainname.2:131
588 #: build/C/man3/getdtablesize.3:100 build/C/man3/gethostid.3:127
589 #: build/C/man2/gethostname.2:180 build/C/man3/getlogin.3:213
590 #: build/C/man3/getopt.3:518 build/C/man2/getpagesize.2:111
591 #: build/C/man2/gettid.2:90 build/C/man3/getumask.3:65
592 #: build/C/man3/getusershell.3:105 build/C/man2/idle.2:64
593 #: build/C/man2/ioctl.2:150 build/C/man2/ioctl_list.2:965
594 #: build/C/man2/ioperm.2:121 build/C/man3/lockf.3:176
595 #: build/C/man2/mincore.2:169 build/C/man2/mkdir.2:247 build/C/man2/nice.2:113
596 #: build/C/man2/pread.2:163 build/C/man2/set_thread_area.2:74
597 #: build/C/man2/setup.2:72 build/C/man5/shells.5:59 build/C/man3/sleep.3:66
598 #: build/C/man3/swab.3:81 build/C/man2/swapon.2:206 build/C/man2/syscall.2:247
599 #: build/C/man2/syscalls.2:851 build/C/man3/sysconf.3:347
600 #: build/C/man2/sysctl.2:183 build/C/man2/sysinfo.2:92
601 #: build/C/man3/tcgetpgrp.3:131 build/C/man2/truncate.2:265
602 #: build/C/man3/ualarm.3:155 build/C/man2/umask.2:124 build/C/man2/uname.2:172
603 #: build/C/man2/uselib.2:112 build/C/man3/usleep.3:156
604 #: build/C/man2/vfork.2:279 build/C/man2/vhangup.2:69
605 #: build/C/man2/execveat.2:233
606 #, no-wrap
607 msgid "COLOPHON"
608 msgstr "この文書について"
609
610 #. type: Plain text
611 #: build/C/man2/_syscall.2:196 build/C/man2/access.2:409
612 #: build/C/man2/alarm.2:103 build/C/man2/brk.2:176 build/C/man2/chdir.2:148
613 #: build/C/man2/chmod.2:376 build/C/man2/chown.2:503 build/C/man2/chroot.2:162
614 #: build/C/man2/close.2:146 build/C/man3/confstr.3:163
615 #: build/C/man3/crypt.3:263 build/C/man3/daemon.3:121
616 #: build/C/man3/des_crypt.3:157 build/C/man2/dup.2:286
617 #: build/C/man3/encrypt.3:187 build/C/man7/environ.7:272
618 #: build/C/man3/euidaccess.3:120 build/C/man3/exec.3:257
619 #: build/C/man2/execve.2:771 build/C/man2/exit_group.2:59
620 #: build/C/man2/fcntl.2:1945 build/C/man3/fexecve.3:176
621 #: build/C/man2/flock.2:256 build/C/man2/fork.2:283
622 #: build/C/man3/fpathconf.3:194 build/C/man2/fsync.2:178
623 #: build/C/man3/get_nprocs_conf.3:96 build/C/man2/get_thread_area.2:66
624 #: build/C/man3/getcwd.3:264 build/C/man2/getdomainname.2:139
625 #: build/C/man3/getdtablesize.3:108 build/C/man3/gethostid.3:135
626 #: build/C/man2/gethostname.2:188 build/C/man3/getlogin.3:221
627 #: build/C/man3/getopt.3:526 build/C/man2/getpagesize.2:119
628 #: build/C/man2/gettid.2:98 build/C/man3/getumask.3:73
629 #: build/C/man3/getusershell.3:113 build/C/man2/idle.2:72
630 #: build/C/man2/ioctl.2:158 build/C/man2/ioctl_list.2:973
631 #: build/C/man2/ioperm.2:129 build/C/man3/lockf.3:184
632 #: build/C/man2/mincore.2:177 build/C/man2/mkdir.2:255 build/C/man2/nice.2:121
633 #: build/C/man2/pread.2:171 build/C/man2/set_thread_area.2:82
634 #: build/C/man2/setup.2:80 build/C/man5/shells.5:67 build/C/man3/sleep.3:74
635 #: build/C/man3/swab.3:89 build/C/man2/swapon.2:214 build/C/man2/syscall.2:255
636 #: build/C/man2/syscalls.2:859 build/C/man3/sysconf.3:355
637 #: build/C/man2/sysctl.2:191 build/C/man2/sysinfo.2:100
638 #: build/C/man3/tcgetpgrp.3:139 build/C/man2/truncate.2:273
639 #: build/C/man3/ualarm.3:163 build/C/man2/umask.2:132 build/C/man2/uname.2:180
640 #: build/C/man2/uselib.2:120 build/C/man3/usleep.3:164
641 #: build/C/man2/vfork.2:287 build/C/man2/vhangup.2:77
642 #: build/C/man2/execveat.2:241
643 msgid ""
644 "This page is part of release 3.78 of the Linux I<man-pages> project.  A "
645 "description of the project, information about reporting bugs, and the latest "
646 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
647 "pages/."
648 msgstr ""
649 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
650 "である。プロジェクトの説明とバグ報告に関する情報は\n"
651 "http://www.kernel.org/doc/man-pages/ に書かれている。"
652
653 #. type: TH
654 #: build/C/man2/access.2:43
655 #, no-wrap
656 msgid "ACCESS"
657 msgstr "ACCESS"
658
659 #. type: TH
660 #: build/C/man2/access.2:43 build/C/man2/brk.2:29 build/C/man2/chmod.2:32
661 #: build/C/man2/chown.2:38 build/C/man3/des_crypt.3:14
662 #: build/C/man7/environ.7:34 build/C/man2/fsync.2:38 build/C/man3/getcwd.3:32
663 #: build/C/man3/getdtablesize.3:27 build/C/man2/gethostname.2:32
664 #: build/C/man2/getpagesize.2:25 build/C/man2/ioperm.2:34
665 #: build/C/man2/mkdir.2:11 build/C/man2/sysinfo.2:14
666 #, no-wrap
667 msgid "2014-08-19"
668 msgstr "2014-08-19"
669
670 #. type: Plain text
671 #: build/C/man2/access.2:46
672 msgid "access, faccessat - check user's permissions for a file"
673 msgstr "access, faccessat - ユーザのファイルへのアクセス権をチェックする"
674
675 #. type: Plain text
676 #: build/C/man2/access.2:49 build/C/man2/alarm.2:36 build/C/man2/chown.2:44
677 #: build/C/man2/close.2:41 build/C/man3/confstr.3:38 build/C/man3/crypt.3:44
678 #: build/C/man2/dup.2:43 build/C/man3/fexecve.3:31 build/C/man3/fpathconf.3:47
679 #: build/C/man3/getcwd.3:38 build/C/man3/getopt.3:48
680 #: build/C/man3/getusershell.3:36 build/C/man3/sleep.3:32
681 #: build/C/man3/sysconf.3:33 build/C/man2/sysctl.2:36 build/C/man3/ualarm.3:30
682 #: build/C/man3/usleep.3:39
683 #, no-wrap
684 msgid "B<#include E<lt>unistd.hE<gt>>\n"
685 msgstr "B<#include E<lt>unistd.hE<gt>>\n"
686
687 #. type: Plain text
688 #: build/C/man2/access.2:51
689 #, no-wrap
690 msgid "B<int access(const char *>I<pathname>B<, int >I<mode>B<);>\n"
691 msgstr "B<int access(const char *>I<pathname>B<, int >I<mode>B<);>\n"
692
693 #. type: Plain text
694 #: build/C/man2/access.2:54 build/C/man2/chown.2:53
695 #, no-wrap
696 msgid ""
697 "B<#include E<lt>fcntl.hE<gt>           >/* Definition of AT_* constants */\n"
698 "B<#include E<lt>unistd.hE<gt>>\n"
699 msgstr ""
700 "B<#include E<lt>fcntl.hE<gt>           >/* AT_* 定数の定義 */\n"
701 "B<#include E<lt>unistd.hE<gt>>\n"
702
703 #. type: Plain text
704 #: build/C/man2/access.2:57
705 #, no-wrap
706 msgid "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, int >I<flags>B<);>\n"
707 msgstr "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, int >I<flags>B<);>\n"
708
709 #. type: Plain text
710 #: build/C/man2/access.2:62 build/C/man2/brk.2:42 build/C/man2/chdir.2:46
711 #: build/C/man2/chmod.2:53 build/C/man2/chown.2:62 build/C/man2/chroot.2:44
712 #: build/C/man3/confstr.3:45 build/C/man3/daemon.3:47 build/C/man3/exec.3:68
713 #: build/C/man3/fexecve.3:38 build/C/man2/fsync.2:51 build/C/man3/getcwd.3:49
714 #: build/C/man2/getdomainname.2:42 build/C/man3/getdtablesize.3:38
715 #: build/C/man3/gethostid.3:42 build/C/man2/gethostname.2:45
716 #: build/C/man3/getlogin.3:45 build/C/man3/getopt.3:69
717 #: build/C/man2/getpagesize.2:36 build/C/man3/getusershell.3:47
718 #: build/C/man3/lockf.3:39 build/C/man2/mincore.2:47 build/C/man2/mkdir.2:31
719 #: build/C/man2/nice.2:42 build/C/man2/pread.2:40 build/C/man2/truncate.2:58
720 #: build/C/man3/ualarm.3:37 build/C/man3/usleep.3:46 build/C/man2/vfork.2:41
721 #: build/C/man2/vhangup.2:39
722 msgid ""
723 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
724 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
725
726 #. type: Plain text
727 #: build/C/man2/access.2:65
728 msgid "B<faccessat>():"
729 msgstr "B<faccessat>():"
730
731 #. type: TP
732 #: build/C/man2/access.2:68 build/C/man2/chmod.2:71 build/C/man2/chown.2:79
733 #: build/C/man3/fexecve.3:44 build/C/man2/mkdir.2:37
734 #, no-wrap
735 msgid "Since glibc 2.10:"
736 msgstr "glibc 2.10 以降:"
737
738 #. type: Plain text
739 #: build/C/man2/access.2:71 build/C/man2/chmod.2:74 build/C/man2/chown.2:82
740 #: build/C/man3/fexecve.3:47 build/C/man2/mkdir.2:40
741 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
742 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
743
744 #. type: TP
745 #: build/C/man2/access.2:71 build/C/man2/chmod.2:74 build/C/man2/chown.2:82
746 #: build/C/man3/fexecve.3:47 build/C/man2/mkdir.2:40
747 #, no-wrap
748 msgid "Before glibc 2.10:"
749 msgstr "glibc 2.10 より前:"
750
751 #. type: Plain text
752 #: build/C/man2/access.2:74 build/C/man2/chmod.2:77 build/C/man2/chown.2:85
753 #: build/C/man2/mkdir.2:43
754 msgid "_ATFILE_SOURCE"
755 msgstr "_ATFILE_SOURCE"
756
757 #. type: Plain text
758 #: build/C/man2/access.2:85
759 msgid ""
760 "B<access>()  checks whether the calling process can access the file "
761 "I<pathname>.  If I<pathname> is a symbolic link, it is dereferenced."
762 msgstr ""
763 "B<access>()  は、呼び出し元プロセスがファイル I<pathname> にアクセスできるか"
764 "どうかをチェックする。 I<pathname> がシンボリックリンクの場合、シンボリックリ"
765 "ンクは展開される。"
766
767 #.  F_OK is defined as 0 on every system that I know of.
768 #. type: Plain text
769 #: build/C/man2/access.2:99
770 msgid ""
771 "The I<mode> specifies the accessibility check(s) to be performed, and is "
772 "either the value B<F_OK>, or a mask consisting of the bitwise OR of one or "
773 "more of B<R_OK>, B<W_OK>, and B<X_OK>.  B<F_OK> tests for the existence of "
774 "the file.  B<R_OK>, B<W_OK>, and B<X_OK> test whether the file exists and "
775 "grants read, write, and execute permissions, respectively."
776 msgstr ""
777 "I<mode> はチェックを行うアクセス権を指定するもので、その値は B<F_OK>、 もしく"
778 "は B<R_OK>, B<W_OK>, B<X_OK> の 1個以上のビット単位の論理和から構成されるマス"
779 "クである。 B<F_OK> はファイルが存在するかどうかのみを検査する。 B<R_OK>, "
780 "B<W_OK>, B<X_OK> は、ファイルが存在して、それぞれ読み込み、書き込み、実行の許"
781 "可があるか を検査する。"
782
783 #. type: Plain text
784 #: build/C/man2/access.2:108
785 msgid ""
786 "The check is done using the calling process's I<real> UID and GID, rather "
787 "than the effective IDs as is done when actually attempting an operation (e."
788 "g., B<open>(2))  on the file.  This allows set-user-ID programs to easily "
789 "determine the invoking user's authority."
790 msgstr ""
791 "チェックは、実際に操作が行われる際に使用される実効 (effective) ID でなく、 呼"
792 "び出し元プロセスの I<実 (real)> UID と I<実 (real)> GID を使って行われる。 こ"
793 "れにより、set-user-ID プログラムで、プログラムを起動するユーザの権限を 簡単に"
794 "決定することができる。"
795
796 #. type: Plain text
797 #: build/C/man2/access.2:114
798 msgid ""
799 "If the calling process is privileged (i.e., its real UID is zero), then an "
800 "B<X_OK> check is successful for a regular file if execute permission is "
801 "enabled for any of the file owner, group, or other."
802 msgstr ""
803 "呼び出し元プロセスが特権プロセス (つまり、プロセスの実 UID が 0) の場合、 通"
804 "常のファイルに対する B<X_OK> のチェックは、そのファイルの所有者、グループ、他"
805 "人のいずれかの 実行許可が有効になっていれば成功する。"
806
807 #. type: SS
808 #: build/C/man2/access.2:114
809 #, no-wrap
810 msgid "faccessat()"
811 msgstr "faccessat()"
812
813 #. type: Plain text
814 #: build/C/man2/access.2:120
815 msgid ""
816 "The B<faccessat>()  system call operates in exactly the same way as "
817 "B<access>(), except for the differences described here."
818 msgstr ""
819 "B<faccessat>() システムコールは B<access>() と全く同様に動作するが、以下で説"
820 "明する点が異なる。"
821
822 #. type: Plain text
823 #: build/C/man2/access.2:130
824 msgid ""
825 "If the pathname given in I<pathname> is relative, then it is interpreted "
826 "relative to the directory referred to by the file descriptor I<dirfd> "
827 "(rather than relative to the current working directory of the calling "
828 "process, as is done by B<access>()  for a relative pathname)."
829 msgstr ""
830 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
831 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
832 "(B<access>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
833 "ワーキングディレクトリに対する相対パスではない)。"
834
835 #. type: Plain text
836 #: build/C/man2/access.2:142
837 msgid ""
838 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
839 "then I<pathname> is interpreted relative to the current working directory of "
840 "the calling process (like B<access>())."
841 msgstr ""
842 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
843 "の場合、 (B<access>() と同様に) I<pathname> は呼び出したプロセスのカレント"
844 "ワーキングディレクトリに対する相対パスと解釈される。"
845
846 #. type: Plain text
847 #: build/C/man2/access.2:148 build/C/man2/chmod.2:216 build/C/man2/chown.2:179
848 #: build/C/man2/mkdir.2:110 build/C/man2/execveat.2:76
849 msgid "If I<pathname> is absolute, then I<dirfd> is ignored."
850 msgstr ""
851 "I<pathname> で指定されたパス名が絶対パスの場合、 I<dirfd> は無視される。"
852
853 #. type: Plain text
854 #: build/C/man2/access.2:151
855 msgid ""
856 "I<flags> is constructed by ORing together zero or more of the following "
857 "values:"
858 msgstr "I<flags> は以下に示す値の 0 個以上の OR (論理和) をとって作成される。"
859
860 #. type: TP
861 #: build/C/man2/access.2:151
862 #, no-wrap
863 msgid "B<AT_EACCESS>"
864 msgstr "B<AT_EACCESS>"
865
866 #. type: Plain text
867 #: build/C/man2/access.2:158
868 msgid ""
869 "Perform access checks using the effective user and group IDs.  By default, "
870 "B<faccessat>()  uses the real IDs (like B<access>())."
871 msgstr ""
872 "アクセスチェックを実行ユーザー/グループ ID を使って行う。デフォルトでは、"
873 "B<faccessat>() は (B<access>() と同様に) 実 ID を使用する。"
874
875 #. type: TP
876 #: build/C/man2/access.2:158 build/C/man2/chmod.2:219 build/C/man2/chown.2:208
877 #: build/C/man2/execveat.2:100
878 #, no-wrap
879 msgid "B<AT_SYMLINK_NOFOLLOW>"
880 msgstr "B<AT_SYMLINK_NOFOLLOW>"
881
882 #. type: Plain text
883 #: build/C/man2/access.2:164
884 msgid ""
885 "If I<pathname> is a symbolic link, do not dereference it: instead return "
886 "information about the link itself."
887 msgstr ""
888 "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リ"
889 "ンク自身の情報を返す。"
890
891 #. type: Plain text
892 #: build/C/man2/access.2:169
893 msgid "See B<openat>(2)  for an explanation of the need for B<faccessat>()."
894 msgstr "B<faccessat>() の必要性についての説明については B<openat>(2) を参照。"
895
896 #. type: SH
897 #: build/C/man2/access.2:169 build/C/man2/alarm.2:54 build/C/man2/brk.2:93
898 #: build/C/man2/chdir.2:70 build/C/man2/chmod.2:231 build/C/man2/chown.2:224
899 #: build/C/man2/chroot.2:90 build/C/man2/close.2:64 build/C/man3/confstr.3:95
900 #: build/C/man3/crypt.3:120 build/C/man3/daemon.3:73
901 #: build/C/man3/des_crypt.3:106 build/C/man2/dup.2:148
902 #: build/C/man3/encrypt.3:113 build/C/man3/euidaccess.3:58
903 #: build/C/man3/exec.3:183 build/C/man2/execve.2:355
904 #: build/C/man2/exit_group.2:39 build/C/man2/fcntl.2:1444
905 #: build/C/man3/fexecve.3:67 build/C/man2/flock.2:112 build/C/man2/fork.2:178
906 #: build/C/man3/fpathconf.3:160 build/C/man2/fsync.2:108
907 #: build/C/man3/get_nprocs_conf.3:46 build/C/man2/get_thread_area.2:29
908 #: build/C/man3/getcwd.3:156 build/C/man2/getdomainname.2:75
909 #: build/C/man3/getdtablesize.3:61 build/C/man3/gethostid.3:71
910 #: build/C/man2/gethostname.2:89 build/C/man3/getlogin.3:95
911 #: build/C/man3/getopt.3:274 build/C/man2/gettid.2:50
912 #: build/C/man3/getusershell.3:85 build/C/man2/idle.2:52
913 #: build/C/man2/ioctl.2:85 build/C/man2/ioctl_list.2:107
914 #: build/C/man2/ioperm.2:79 build/C/man3/lockf.3:116 build/C/man2/mincore.2:94
915 #: build/C/man2/mkdir.2:115 build/C/man2/nice.2:56 build/C/man2/pread.2:79
916 #: build/C/man2/set_thread_area.2:44 build/C/man2/setup.2:53
917 #: build/C/man3/sleep.3:40 build/C/man3/swab.3:68 build/C/man2/swapon.2:111
918 #: build/C/man2/syscall.2:74 build/C/man3/sysconf.3:314
919 #: build/C/man2/sysctl.2:74 build/C/man2/sysinfo.2:74
920 #: build/C/man3/tcgetpgrp.3:64 build/C/man2/truncate.2:110
921 #: build/C/man3/ualarm.3:81 build/C/man2/umask.2:92 build/C/man2/uname.2:63
922 #: build/C/man2/uselib.2:48 build/C/man3/usleep.3:75 build/C/man2/vhangup.2:50
923 #: build/C/man2/execveat.2:108
924 #, no-wrap
925 msgid "RETURN VALUE"
926 msgstr "返り値"
927
928 #. type: Plain text
929 #: build/C/man2/access.2:185
930 msgid ""
931 "On success (all requested permissions granted, or I<mode> is B<F_OK> and the "
932 "file exists), zero is returned.  On error (at least one bit in I<mode> asked "
933 "for a permission that is denied, or I<mode> is B<F_OK> and the file does not "
934 "exist, or some other error occurred), -1 is returned, and I<errno> is set "
935 "appropriately."
936 msgstr ""
937 "成功した場合 (要求した全てについて許可が得られたか、 I<mode> が B<F_OK> で"
938 "ファイルが存在した場合)、ゼロが返される。 エラーの場合 (I<mode> の少なくとも"
939 "一つのビットで要求した許可がなかった場合、 I<mode> が B<F_OK> でファイルが存"
940 "在しなかった場合、他のエラーが起こった場合)、-1 が返され、 I<errno> が適切に"
941 "設定される。"
942
943 #. type: SH
944 #: build/C/man2/access.2:185 build/C/man2/chdir.2:75 build/C/man2/chmod.2:236
945 #: build/C/man2/chown.2:229 build/C/man2/chroot.2:95 build/C/man2/close.2:70
946 #: build/C/man3/confstr.3:122 build/C/man3/crypt.3:123 build/C/man2/dup.2:154
947 #: build/C/man3/encrypt.3:115 build/C/man3/euidaccess.3:66
948 #: build/C/man3/exec.3:190 build/C/man2/execve.2:361 build/C/man2/fcntl.2:1482
949 #: build/C/man3/fexecve.3:74 build/C/man2/flock.2:117 build/C/man2/fork.2:185
950 #: build/C/man2/fsync.2:113 build/C/man2/get_thread_area.2:35
951 #: build/C/man3/getcwd.3:172 build/C/man2/getdomainname.2:80
952 #: build/C/man3/getdtablesize.3:63 build/C/man3/gethostid.3:81
953 #: build/C/man2/gethostname.2:94 build/C/man3/getlogin.3:103
954 #: build/C/man2/gettid.2:52 build/C/man2/idle.2:55 build/C/man2/ioctl.2:94
955 #: build/C/man2/ioperm.2:84 build/C/man3/lockf.3:121
956 #: build/C/man2/mincore.2:101 build/C/man2/mkdir.2:122 build/C/man2/nice.2:61
957 #: build/C/man2/pread.2:89 build/C/man2/set_thread_area.2:49
958 #: build/C/man2/setup.2:56 build/C/man2/swapon.2:116 build/C/man2/sysctl.2:81
959 #: build/C/man2/sysinfo.2:79 build/C/man3/tcgetpgrp.3:86
960 #: build/C/man2/truncate.2:115 build/C/man3/ualarm.3:84
961 #: build/C/man2/uname.2:68 build/C/man2/uselib.2:53 build/C/man3/usleep.3:82
962 #: build/C/man2/vhangup.2:55 build/C/man2/execveat.2:115
963 #, no-wrap
964 msgid "ERRORS"
965 msgstr "エラー"
966
967 #. type: Plain text
968 #: build/C/man2/access.2:190
969 msgid "B<access>()  and B<faccessat>()  shall fail if:"
970 msgstr "B<access>() と B<faccessat>() は以下の場合に失敗する。"
971
972 #. type: TP
973 #: build/C/man2/access.2:190 build/C/man2/chdir.2:81 build/C/man2/chdir.2:117
974 #: build/C/man2/chmod.2:243 build/C/man2/chown.2:236 build/C/man2/chroot.2:98
975 #: build/C/man2/execve.2:369 build/C/man2/execve.2:376
976 #: build/C/man2/execve.2:379 build/C/man2/execve.2:382
977 #: build/C/man3/getcwd.3:173 build/C/man3/gethostid.3:84
978 #: build/C/man2/mkdir.2:123 build/C/man2/truncate.2:118
979 #: build/C/man2/uselib.2:59
980 #, no-wrap
981 msgid "B<EACCES>"
982 msgstr "B<EACCES>"
983
984 #. type: Plain text
985 #: build/C/man2/access.2:197
986 msgid ""
987 "The requested access would be denied to the file, or search permission is "
988 "denied for one of the directories in the path prefix of I<pathname>.  (See "
989 "also B<path_resolution>(7).)"
990 msgstr ""
991 "要求されたアクセスは そのファイル自身に拒否されたか I<pathname> へ至るまで"
992 "ディレクトリのいずれかに対する検索許可 (search permission) が得られなかっ"
993 "た。 (B<path_resolution>(7)  も参照のこと)"
994
995 #. type: TP
996 #: build/C/man2/access.2:197 build/C/man2/chdir.2:94 build/C/man2/chmod.2:255
997 #: build/C/man2/chown.2:245 build/C/man2/chroot.2:112
998 #: build/C/man2/execve.2:417 build/C/man2/mkdir.2:145
999 #: build/C/man2/truncate.2:152 build/C/man2/execveat.2:130
1000 #, no-wrap
1001 msgid "B<ELOOP>"
1002 msgstr "B<ELOOP>"
1003
1004 #. type: Plain text
1005 #: build/C/man2/access.2:201 build/C/man2/chmod.2:259 build/C/man2/chown.2:249
1006 #: build/C/man2/mkdir.2:149
1007 msgid "Too many symbolic links were encountered in resolving I<pathname>."
1008 msgstr "I<pathname> を解決するときに、解決すべきシンボリックリンクが多すぎた。"
1009
1010 #. type: TP
1011 #: build/C/man2/access.2:201 build/C/man2/chdir.2:98 build/C/man2/chmod.2:259
1012 #: build/C/man2/chown.2:249 build/C/man2/chroot.2:116
1013 #: build/C/man2/execve.2:425 build/C/man2/gethostname.2:109
1014 #: build/C/man2/mkdir.2:153 build/C/man2/truncate.2:155
1015 #, no-wrap
1016 msgid "B<ENAMETOOLONG>"
1017 msgstr "B<ENAMETOOLONG>"
1018
1019 #. type: Plain text
1020 #: build/C/man2/access.2:205 build/C/man2/chmod.2:263 build/C/man2/chown.2:253
1021 msgid "I<pathname> is too long."
1022 msgstr "I<pathname> が長過ぎる。"
1023
1024 #. type: TP
1025 #: build/C/man2/access.2:205 build/C/man2/chdir.2:102 build/C/man2/chmod.2:263
1026 #: build/C/man2/chown.2:253 build/C/man2/chown.2:279 build/C/man2/chroot.2:120
1027 #: build/C/man2/execve.2:432 build/C/man3/getcwd.3:198
1028 #: build/C/man3/getlogin.3:122 build/C/man2/mkdir.2:156
1029 #: build/C/man2/swapon.2:147 build/C/man2/truncate.2:159
1030 #: build/C/man2/execveat.2:140
1031 #, no-wrap
1032 msgid "B<ENOENT>"
1033 msgstr "B<ENOENT>"
1034
1035 #. type: Plain text
1036 #: build/C/man2/access.2:210
1037 msgid ""
1038 "A component of I<pathname> does not exist or is a dangling symbolic link."
1039 msgstr ""
1040 "I<pathname> を構成するパスのいずれかが、存在しないか、 参照先のない "
1041 "(dangling) シンボリックリンクになっている。"
1042
1043 #. type: TP
1044 #: build/C/man2/access.2:210 build/C/man2/access.2:252
1045 #: build/C/man2/chdir.2:108 build/C/man2/chmod.2:269 build/C/man2/chmod.2:314
1046 #: build/C/man2/chown.2:259 build/C/man2/chown.2:303 build/C/man2/chroot.2:126
1047 #: build/C/man2/execve.2:446 build/C/man2/fcntl.2:1617
1048 #: build/C/man2/mkdir.2:173 build/C/man2/mkdir.2:194 build/C/man2/sysctl.2:88
1049 #: build/C/man2/truncate.2:162 build/C/man2/execveat.2:154
1050 #, no-wrap
1051 msgid "B<ENOTDIR>"
1052 msgstr "B<ENOTDIR>"
1053
1054 #. type: Plain text
1055 #: build/C/man2/access.2:215 build/C/man2/mkdir.2:178
1056 msgid ""
1057 "A component used as a directory in I<pathname> is not, in fact, a directory."
1058 msgstr "I<pathname> のディレクトリ部分が実際にはディレクトリでない。"
1059
1060 #. type: TP
1061 #: build/C/man2/access.2:215 build/C/man2/chmod.2:278 build/C/man2/chmod.2:296
1062 #: build/C/man2/chown.2:266 build/C/man2/chown.2:285 build/C/man2/mkdir.2:183
1063 #: build/C/man2/truncate.2:175
1064 #, no-wrap
1065 msgid "B<EROFS>"
1066 msgstr "B<EROFS>"
1067
1068 #. type: Plain text
1069 #: build/C/man2/access.2:218
1070 msgid "Write permission was requested for a file on a read-only filesystem."
1071 msgstr ""
1072 "読み込み専用 (read-only) のファイルシステムに対して書き込み許可を 要求した。"
1073
1074 #. type: Plain text
1075 #: build/C/man2/access.2:223
1076 msgid "B<access>()  and B<faccessat>()  may fail if:"
1077 msgstr "B<access>() と B<faccessat>() は以下の理由により失敗することがある。"
1078
1079 #. type: TP
1080 #: build/C/man2/access.2:223 build/C/man2/chdir.2:87 build/C/man2/chmod.2:248
1081 #: build/C/man2/chown.2:241 build/C/man2/chroot.2:105
1082 #: build/C/man2/execve.2:396 build/C/man2/fcntl.2:1527
1083 #: build/C/man2/get_thread_area.2:36 build/C/man3/getcwd.3:176
1084 #: build/C/man2/getdomainname.2:83 build/C/man2/gethostname.2:95
1085 #: build/C/man2/ioctl.2:99 build/C/man2/mincore.2:104 build/C/man2/mkdir.2:142
1086 #: build/C/man2/set_thread_area.2:53 build/C/man2/sysctl.2:82
1087 #: build/C/man2/sysinfo.2:80 build/C/man2/truncate.2:124
1088 #: build/C/man2/uname.2:69
1089 #, no-wrap
1090 msgid "B<EFAULT>"
1091 msgstr "B<EFAULT>"
1092
1093 #. type: Plain text
1094 #: build/C/man2/access.2:227 build/C/man2/chmod.2:252 build/C/man2/chown.2:245
1095 #: build/C/man2/mkdir.2:145
1096 msgid "I<pathname> points outside your accessible address space."
1097 msgstr "I<pathname> がアクセス可能なアドレス空間の外を指している。"
1098
1099 #. type: TP
1100 #: build/C/man2/access.2:227 build/C/man2/access.2:248
1101 #: build/C/man2/chmod.2:310 build/C/man2/chown.2:299
1102 #: build/C/man3/confstr.3:123 build/C/man3/crypt.3:124 build/C/man2/dup.2:184
1103 #: build/C/man2/dup.2:189 build/C/man2/execve.2:404 build/C/man2/fcntl.2:1553
1104 #: build/C/man2/fcntl.2:1558 build/C/man2/fcntl.2:1566
1105 #: build/C/man2/fcntl.2:1576 build/C/man2/fcntl.2:1588
1106 #: build/C/man2/fcntl.2:1596 build/C/man3/fexecve.3:78
1107 #: build/C/man2/flock.2:127 build/C/man2/get_thread_area.2:39
1108 #: build/C/man3/getcwd.3:180 build/C/man2/getdomainname.2:87
1109 #: build/C/man2/getdomainname.2:99 build/C/man2/gethostname.2:99
1110 #: build/C/man2/ioctl.2:103 build/C/man2/ioperm.2:85 build/C/man3/lockf.3:147
1111 #: build/C/man2/mincore.2:108 build/C/man2/set_thread_area.2:50
1112 #: build/C/man2/swapon.2:124 build/C/man2/swapon.2:129
1113 #: build/C/man2/swapon.2:139 build/C/man3/tcgetpgrp.3:91
1114 #: build/C/man2/truncate.2:141 build/C/man2/truncate.2:196
1115 #: build/C/man3/ualarm.3:88 build/C/man3/usleep.3:87
1116 #: build/C/man2/execveat.2:126
1117 #, no-wrap
1118 msgid "B<EINVAL>"
1119 msgstr "B<EINVAL>"
1120
1121 #. type: Plain text
1122 #: build/C/man2/access.2:231
1123 msgid "I<mode> was incorrectly specified."
1124 msgstr "I<mode> に不正な値が指定された。"
1125
1126 #. type: TP
1127 #: build/C/man2/access.2:231 build/C/man2/chdir.2:91 build/C/man2/chmod.2:252
1128 #: build/C/man2/chmod.2:290 build/C/man2/chown.2:276 build/C/man2/chroot.2:109
1129 #: build/C/man2/close.2:81 build/C/man2/execve.2:408 build/C/man2/fsync.2:118
1130 #: build/C/man2/ioperm.2:91 build/C/man2/truncate.2:146
1131 #, no-wrap
1132 msgid "B<EIO>"
1133 msgstr "B<EIO>"
1134
1135 #. type: Plain text
1136 #: build/C/man2/access.2:234 build/C/man2/chdir.2:94 build/C/man2/chmod.2:255
1137 #: build/C/man2/chroot.2:112 build/C/man2/close.2:84 build/C/man2/execve.2:411
1138 msgid "An I/O error occurred."
1139 msgstr "I/O エラーが発生した。"
1140
1141 #. type: TP
1142 #: build/C/man2/access.2:234 build/C/man2/chdir.2:105 build/C/man2/chmod.2:266
1143 #: build/C/man2/chown.2:256 build/C/man2/chroot.2:123
1144 #: build/C/man2/execve.2:443 build/C/man2/fork.2:216
1145 #: build/C/man3/getlogin.3:125 build/C/man2/ioperm.2:94
1146 #: build/C/man2/mincore.2:112 build/C/man2/mincore.2:124
1147 #: build/C/man2/mkdir.2:161 build/C/man2/swapon.2:152
1148 #, no-wrap
1149 msgid "B<ENOMEM>"
1150 msgstr "B<ENOMEM>"
1151
1152 #. type: Plain text
1153 #: build/C/man2/access.2:237 build/C/man2/chdir.2:108 build/C/man2/chmod.2:269
1154 #: build/C/man2/chown.2:259 build/C/man2/chroot.2:126
1155 #: build/C/man2/execve.2:446 build/C/man2/mkdir.2:164
1156 msgid "Insufficient kernel memory was available."
1157 msgstr "カーネルに十分なメモリがない。"
1158
1159 #. type: TP
1160 #: build/C/man2/access.2:237 build/C/man2/execve.2:461
1161 #: build/C/man2/truncate.2:178
1162 #, no-wrap
1163 msgid "B<ETXTBSY>"
1164 msgstr "B<ETXTBSY>"
1165
1166 #. type: Plain text
1167 #: build/C/man2/access.2:241
1168 msgid "Write access was requested to an executable which is being executed."
1169 msgstr "実行中のファイルに対して書き込みを要求した。"
1170
1171 #. type: Plain text
1172 #: build/C/man2/access.2:244
1173 msgid "The following additional errors can occur for B<faccessat>():"
1174 msgstr "B<faccessat>() では以下のエラーも発生する。"
1175
1176 #. type: TP
1177 #: build/C/man2/access.2:244 build/C/man2/chdir.2:121 build/C/man2/chmod.2:285
1178 #: build/C/man2/chmod.2:306 build/C/man2/chown.2:273 build/C/man2/chown.2:295
1179 #: build/C/man2/close.2:71 build/C/man2/dup.2:155 build/C/man2/dup.2:159
1180 #: build/C/man2/fcntl.2:1490 build/C/man2/fcntl.2:1494
1181 #: build/C/man2/flock.2:118 build/C/man2/fsync.2:114 build/C/man2/ioctl.2:95
1182 #: build/C/man3/lockf.3:130 build/C/man2/mkdir.2:190
1183 #: build/C/man3/tcgetpgrp.3:87 build/C/man2/truncate.2:188
1184 #: build/C/man2/execveat.2:122
1185 #, no-wrap
1186 msgid "B<EBADF>"
1187 msgstr "B<EBADF>"
1188
1189 #. type: Plain text
1190 #: build/C/man2/access.2:248 build/C/man2/chmod.2:310 build/C/man2/chown.2:299
1191 #: build/C/man2/mkdir.2:194 build/C/man2/execveat.2:126
1192 msgid "I<dirfd> is not a valid file descriptor."
1193 msgstr "I<dirfd> が適切なファイルディスクリプタでない。"
1194
1195 #. type: Plain text
1196 #: build/C/man2/access.2:252 build/C/man2/chmod.2:314 build/C/man2/chown.2:303
1197 #: build/C/man2/execveat.2:130
1198 msgid "Invalid flag specified in I<flags>."
1199 msgstr "I<flags> に無効なフラグが指定された。"
1200
1201 #. type: Plain text
1202 #: build/C/man2/access.2:258 build/C/man2/chmod.2:320 build/C/man2/chown.2:309
1203 #: build/C/man2/mkdir.2:200 build/C/man2/execveat.2:160
1204 msgid ""
1205 "I<pathname> is relative and I<dirfd> is a file descriptor referring to a "
1206 "file other than a directory."
1207 msgstr ""
1208 "I<pathname> が相対パスで、 I<dirfd> がディレクトリ以外のファイルを参照してい"
1209 "るファイルディスクリプタである。"
1210
1211 #. type: SH
1212 #: build/C/man2/access.2:258 build/C/man2/chmod.2:326 build/C/man2/chown.2:309
1213 #: build/C/man3/des_crypt.3:131 build/C/man2/dup.2:203
1214 #: build/C/man3/euidaccess.3:69 build/C/man3/exec.3:195
1215 #: build/C/man2/exit_group.2:41 build/C/man3/fexecve.3:91
1216 #: build/C/man2/get_thread_area.2:42 build/C/man2/gettid.2:54
1217 #: build/C/man2/idle.2:59 build/C/man2/mincore.2:132 build/C/man2/mkdir.2:200
1218 #: build/C/man2/pread.2:104 build/C/man2/set_thread_area.2:59
1219 #: build/C/man2/setup.2:60 build/C/man2/sysinfo.2:83
1220 #: build/C/man2/execveat.2:160
1221 #, no-wrap
1222 msgid "VERSIONS"
1223 msgstr "バージョン"
1224
1225 #. type: Plain text
1226 #: build/C/man2/access.2:262
1227 msgid ""
1228 "B<faccessat>()  was added to Linux in kernel 2.6.16; library support was "
1229 "added to glibc in version 2.4."
1230 msgstr ""
1231 "B<faccessat>()  はバージョン 2.6.16 で Linux に追加された。 ライブラリによる"
1232 "サポートは glibc バージョン 2.4 で追加された。"
1233
1234 #. type: Plain text
1235 #: build/C/man2/access.2:265
1236 msgid "B<access>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008."
1237 msgstr "B<access>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008."
1238
1239 #. type: Plain text
1240 #: build/C/man2/access.2:268
1241 msgid "B<faccessat>(): POSIX.1-2008."
1242 msgstr "B<faccessat>(): POSIX.1-2008."
1243
1244 #. type: Plain text
1245 #: build/C/man2/access.2:281
1246 msgid ""
1247 "B<Warning>: Using these calls to check if a user is authorized to, for "
1248 "example, open a file before actually doing so using B<open>(2)  creates a "
1249 "security hole, because the user might exploit the short time interval "
1250 "between checking and opening the file to manipulate it.  B<For this reason, "
1251 "the use of this system call should be avoided>.  (In the example just "
1252 "described, a safer alternative would be to temporarily switch the process's "
1253 "effective user ID to the real ID and then call B<open>(2).)"
1254 msgstr ""
1255 "B<警告>: あるユーザが、例えば B<open>(2) によるアクセスが可能かどうかを、 (実"
1256 "際に行う前に) これらのシステムコールを使ってチェックするのは、セキュリティ"
1257 "ホールの原因になる。なぜならチェックをしてから 実際にファイルのオープン操作を"
1258 "する間の短い間隔を悪用できるからである。 B<この理由があるので、このシステム"
1259 "コールを使うのは避けるべきである。> (ここで説明した例の場合には、より安全な方"
1260 "法としては、 そのプロセスの実効ユーザ ID を実ユーザ ID に一時的に切り替えてか"
1261 "ら B<open>(2) を呼び出す方法がある。)"
1262
1263 #. type: Plain text
1264 #: build/C/man2/access.2:288
1265 msgid ""
1266 "B<access>()  always dereferences symbolic links.  If you need to check the "
1267 "permissions on a symbolic link, use B<faccessat>(2)  with the flag "
1268 "B<AT_SYMLINK_NOFOLLOW>."
1269 msgstr ""
1270 "B<access>() は常にシンボリックリンクの展開を行う。\n"
1271 "シンボリックリンクのアクセス許可を確認する必要がある場合は、\n"
1272 "B<AT_SYMLINK_NOFOLLOW> フラグ付きで B<faccessat>(2) を使うこと。"
1273
1274 #. type: Plain text
1275 #: build/C/man2/access.2:294
1276 msgid ""
1277 "These calls return an error if any of the access types in I<mode> is denied, "
1278 "even if some of the other access types in I<mode> are permitted."
1279 msgstr ""
1280 "I<mode> で指定されたアクセス種別のいずれか一つでも拒否されると、 たとえ "
1281 "I<mode> で指定された他のアクセス種別が許可されたとしても、 これらのシステム"
1282 "コールはエラーを返す。"
1283
1284 #.  HPU-UX 11 and Tru64 5.1 do this.
1285 #. type: Plain text
1286 #: build/C/man2/access.2:301
1287 msgid ""
1288 "If the calling process has appropriate privileges (i.e., is superuser), "
1289 "POSIX.1-2001 permits an implementation to indicate success for an B<X_OK> "
1290 "check even if none of the execute file permission bits are set.  Linux does "
1291 "not do this."
1292 msgstr ""
1293 "POSIX.1-2001 では、 呼び出し元プロセスが適切な特権を持っている場合 (つまり、"
1294 "スーパーユーザの場合)、 たとえファイルの実行許可ビットが全くセットされていな"
1295 "くても B<X_OK> のチェックとして成功を返す実装が認められている。 Linux はこの"
1296 "ようにはなっていない。"
1297
1298 #. type: Plain text
1299 #: build/C/man2/access.2:309
1300 msgid ""
1301 "A file is accessible only if the permissions on each of the directories in "
1302 "the path prefix of I<pathname> grant search (i.e., execute) access.  If any "
1303 "directory is inaccessible, then the B<access>()  call will fail, regardless "
1304 "of the permissions on the file itself."
1305 msgstr ""
1306 "I<pathname> のプレフィックスを構成するディレクトリの全てに対して 検索アクセ"
1307 "ス (すなわち、実行アクセス) が許可された場合にのみ、 ファイルはアクセス可能と"
1308 "なる。 いずれかのディレクトリがアクセス不可の場合、 ファイル自身のアクセス許"
1309 "可に関わらず、 B<access>()  は失敗する。"
1310
1311 #. type: Plain text
1312 #: build/C/man2/access.2:317
1313 msgid ""
1314 "Only access bits are checked, not the file type or contents.  Therefore, if "
1315 "a directory is found to be writable, it probably means that files can be "
1316 "created in the directory, and not that the directory can be written as a "
1317 "file.  Similarly, a DOS file may be found to be \"executable,\" but the "
1318 "B<execve>(2)  call will still fail."
1319 msgstr ""
1320 "アクセスビットのみがチェックされ、ファイルの種類や内容はチェックされない。 "
1321 "従って、ディレクトリが書き込み可能となった場合は、ディレクトリに ファイルを作"
1322 "成することが可能なことを意味するのであり、ディレクトリに ファイルとして書き込"
1323 "むことができるわけではない。 同様に DOS のファイルは「実行可能」と判断される"
1324 "が、 B<execve>(2)  コールは失敗するだろう。"
1325
1326 #. type: Plain text
1327 #: build/C/man2/access.2:326
1328 msgid ""
1329 "These calls may not work correctly on NFSv2 filesystems with UID mapping "
1330 "enabled, because UID mapping is done on the server and hidden from the "
1331 "client, which checks permissions.  (NFS versions 3 and higher perform the "
1332 "check on the server.)  Similar problems can occur to FUSE mounts."
1333 msgstr ""
1334 "これらのシステムコールは、 UID マッピングを使用した NFSv2 ファイルシステムで"
1335 "は正常に機能しないかもしれない。なぜならば UID のマッピングはサーバーで 行な"
1336 "われ、権利のチェックをするクライアントには見えないからである。 (NFS バージョ"
1337 "ン 3 以降ではサーバー側でチェックが実行される。) 同様の問題は FUSE マウントで"
1338 "も起こり得る。"
1339
1340 #. type: SS
1341 #: build/C/man2/access.2:326 build/C/man2/brk.2:140 build/C/man2/chmod.2:338
1342 #: build/C/man2/gethostname.2:140 build/C/man2/uname.2:138
1343 #, no-wrap
1344 msgid "C library/kernel ABI differences"
1345 msgstr "C ライブラリとカーネル ABI の違い"
1346
1347 #. type: Plain text
1348 #: build/C/man2/access.2:339
1349 msgid ""
1350 "The raw B<faccessat>()  system call takes only the first three arguments.  "
1351 "The B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are actually implemented "
1352 "within the glibc wrapper function for B<faccessat>().  If either of these "
1353 "flags is specified, then the wrapper function employs B<fstatat>(2)  to "
1354 "determine access permissions."
1355 msgstr ""
1356 "生の B<faccessat>() システムコールは、最初の 3 つの引き数だけを取る。フラグ "
1357 "B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> は実際には B<faccessat>() の glibc の"
1358 "ラッパー関数内で実装されている。これらのフラグのいずれかが指定された場合、"
1359 "ラッパー関数は B<fstatat>(2) を使ってアクセス許可の判定を行う。"
1360
1361 #. type: SS
1362 #: build/C/man2/access.2:339 build/C/man2/chmod.2:348 build/C/man2/chown.2:380
1363 #: build/C/man3/crypt.3:189 build/C/man2/mkdir.2:223
1364 #, no-wrap
1365 msgid "Glibc notes"
1366 msgstr "glibc での注意"
1367
1368 #. type: Plain text
1369 #: build/C/man2/access.2:357
1370 msgid ""
1371 "On older kernels where B<faccessat>()  is unavailable (and when the "
1372 "B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are not specified), the glibc "
1373 "wrapper function falls back to the use of B<access>().  When I<pathname> is "
1374 "a relative pathname, glibc constructs a pathname based on the symbolic link "
1375 "in I</proc/self/fd> that corresponds to the I<dirfd> argument."
1376 msgstr ""
1377 "B<faccessat>() が利用できない古いカーネルでは、(フラグ B<AT_EACCESS> と "
1378 "B<AT_SYMLINK_NOFOLLOW> が指定されていない場合) glibc ラッパー関数は "
1379 "B<access>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
1380 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
1381 "に基づいてパス名を構成する。"
1382
1383 #. type: SH
1384 #: build/C/man2/access.2:357 build/C/man7/environ.7:209
1385 #: build/C/man2/fcntl.2:1818 build/C/man3/fexecve.3:146
1386 #: build/C/man3/gethostid.3:122 build/C/man3/getlogin.3:177
1387 #: build/C/man3/getopt.3:369 build/C/man2/mincore.2:144
1388 #: build/C/man2/pread.2:146 build/C/man3/sleep.3:46 build/C/man3/sysconf.3:329
1389 #: build/C/man2/sysctl.2:135 build/C/man2/truncate.2:253
1390 #: build/C/man2/vfork.2:252 build/C/man2/execveat.2:210
1391 #, no-wrap
1392 msgid "BUGS"
1393 msgstr "バグ"
1394
1395 #.  This behavior appears to have been an implementation accident.
1396 #. type: Plain text
1397 #: build/C/man2/access.2:380
1398 msgid ""
1399 "In kernel 2.4 (and earlier) there is some strangeness in the handling of "
1400 "B<X_OK> tests for superuser.  If all categories of execute permission are "
1401 "disabled for a nondirectory file, then the only B<access>()  test that "
1402 "returns -1 is when I<mode> is specified as just B<X_OK>; if B<R_OK> or "
1403 "B<W_OK> is also specified in I<mode>, then B<access>()  returns 0 for such "
1404 "files.  Early 2.6 kernels (up to and including 2.6.3)  also behaved in the "
1405 "same way as kernel 2.4."
1406 msgstr ""
1407 "バージョン 2.4 (とそれ以前) のカーネルには、スーパーユーザでの B<X_OK> の"
1408 "チェックの扱いに奇妙な点がある。 ディレクトリ以外のファイルで (ユーザ、グルー"
1409 "プ、他人の) 全てのカテゴリについて 実行許可がない場合、 B<access>()  のチェッ"
1410 "クで -1 が返るのは I<mode> に B<X_OK> だけが指定されたときだけであり I<mode> "
1411 "に B<R_OK> や B<W_OK> が一緒に指定された場合には B<access>()  は 0 を返す。 "
1412 "(バージョン 2.6.3 以前の) 初期の 2.6 系のカーネルも 2.4 系のカーネルと同様の"
1413 "動作をする。"
1414
1415 #. type: Plain text
1416 #: build/C/man2/access.2:390
1417 msgid ""
1418 "In kernels before 2.6.20, these calls ignored the effect of the B<MS_NOEXEC> "
1419 "flag if it was used to B<mount>(2)  the underlying filesystem.  Since kernel "
1420 "2.6.20, the B<MS_NOEXEC> is honored"
1421 msgstr ""
1422 "2.6.20 より前のカーネルでは、 これらのシステムコールはファイルが存在するファ"
1423 "イルシステムを B<mount>(2) する際に指定された B<MS_NOEXEC> フラグの効果を無視"
1424 "していた。 カーネル 2.6.20 以降では、 B<MS_NOEXEC> フラグは考慮されるように"
1425 "なっている。"
1426
1427 #. type: Plain text
1428 #: build/C/man2/access.2:401
1429 msgid ""
1430 "B<chmod>(2), B<chown>(2), B<open>(2), B<setgid>(2), B<setuid>(2), "
1431 "B<stat>(2), B<euidaccess>(3), B<credentials>(7), B<path_resolution>(7), "
1432 "B<symlink>(7)"
1433 msgstr ""
1434 "B<chmod>(2), B<chown>(2), B<open>(2), B<setgid>(2), B<setuid>(2), "
1435 "B<stat>(2), B<euidaccess>(3), B<credentials>(7), B<path_resolution>(7), "
1436 "B<symlink>(7)"
1437
1438 #. type: TH
1439 #: build/C/man2/alarm.2:30
1440 #, no-wrap
1441 msgid "ALARM"
1442 msgstr "ALARM"
1443
1444 #. type: TH
1445 #: build/C/man2/alarm.2:30
1446 #, no-wrap
1447 msgid "2014-02-23"
1448 msgstr "2014-02-23"
1449
1450 #. type: Plain text
1451 #: build/C/man2/alarm.2:33
1452 msgid "alarm - set an alarm clock for delivery of a signal"
1453 msgstr "alarm - シグナル配送のためのアラームクロックを設定する"
1454
1455 #. type: Plain text
1456 #: build/C/man2/alarm.2:38
1457 #, no-wrap
1458 msgid "B<unsigned int alarm(unsigned int >I<seconds>B<);>\n"
1459 msgstr "B<unsigned int alarm(unsigned int >I<seconds>B<);>\n"
1460
1461 #. type: Plain text
1462 #: build/C/man2/alarm.2:46
1463 msgid ""
1464 "B<alarm>()  arranges for a B<SIGALRM> signal to be delivered to the calling "
1465 "process in I<seconds> seconds."
1466 msgstr ""
1467 "B<alarm>()  は B<SIGALRM> シグナルを I<seconds> 秒後に呼び出したプロセスに配"
1468 "送するように手配する。"
1469
1470 #. type: Plain text
1471 #: build/C/man2/alarm.2:50
1472 msgid "If I<seconds> is zero, any pending alarm is canceled."
1473 msgstr ""
1474 "I<seconds> がゼロならば、処理待ち (pending) のアラームはすべてキャンセルされ"
1475 "る。"
1476
1477 #. type: Plain text
1478 #: build/C/man2/alarm.2:54
1479 msgid "In any event any previously set B<alarm>()  is canceled."
1480 msgstr "今までに設定されていた B<alarm>()  は中断される。"
1481
1482 #. type: Plain text
1483 #: build/C/man2/alarm.2:59
1484 msgid ""
1485 "B<alarm>()  returns the number of seconds remaining until any previously "
1486 "scheduled alarm was due to be delivered, or zero if there was no previously "
1487 "scheduled alarm."
1488 msgstr ""
1489 "B<alarm>()  は以前に予定されていたアラームの配送までの残り時間を返す。以前に "
1490 "アラームが予定されていなければゼロを返す。"
1491
1492 #. type: Plain text
1493 #: build/C/man2/alarm.2:61
1494 msgid "SVr4, POSIX.1-2001, 4.3BSD."
1495 msgstr "SVr4, POSIX.1-2001, 4.3BSD."
1496
1497 #. type: Plain text
1498 #: build/C/man2/alarm.2:67
1499 msgid ""
1500 "B<alarm>()  and B<setitimer>(2)  share the same timer; calls to one will "
1501 "interfere with use of the other."
1502 msgstr ""
1503 "B<alarm>()  と B<setitimer>(2)  は同じタイマーを共有している; 片方を呼び出す"
1504 "ことはもう一方の 使用に影響を与える。"
1505
1506 #. type: Plain text
1507 #: build/C/man2/alarm.2:74
1508 msgid ""
1509 "Alarms created by B<alarm>()  are preserved across B<execve>(2)  and are not "
1510 "inherited by children created via B<fork>(2)."
1511 msgstr ""
1512 "B<alarm>() で作成されたアラームは B<execve>(2) の前後で保持され、 B<fork>(2) "
1513 "で作成された子プロセスには継承されない。"
1514
1515 #. type: Plain text
1516 #: build/C/man2/alarm.2:83
1517 msgid ""
1518 "B<sleep>(3)  may be implemented using B<SIGALRM>; mixing calls to "
1519 "B<alarm>()  and B<sleep>(3)  is a bad idea."
1520 msgstr ""
1521 "B<sleep>(3)  は B<SIGALRM> を利用して実装されているかもしれない。 "
1522 "B<alarm>()  と B<sleep>(3)  を混ぜて使用してはならない。"
1523
1524 #. type: Plain text
1525 #: build/C/man2/alarm.2:86
1526 msgid ""
1527 "Scheduling delays can, as ever, cause the execution of the process to be "
1528 "delayed by an arbitrary amount of time."
1529 msgstr ""
1530 "スケジューリング(scheduling)の遅延により、プロセスの実行に不定量の 遅延が起き"
1531 "る可能性がある。"
1532
1533 #. type: Plain text
1534 #: build/C/man2/alarm.2:95
1535 msgid ""
1536 "B<gettimeofday>(2), B<pause>(2), B<select>(2), B<setitimer>(2), "
1537 "B<sigaction>(2), B<signal>(2), B<sleep>(3), B<time>(7)"
1538 msgstr ""
1539 "B<gettimeofday>(2), B<pause>(2), B<select>(2), B<setitimer>(2), "
1540 "B<sigaction>(2), B<signal>(2), B<sleep>(3), B<time>(7)"
1541
1542 #. type: TH
1543 #: build/C/man2/brk.2:29
1544 #, no-wrap
1545 msgid "BRK"
1546 msgstr "BRK"
1547
1548 #. type: Plain text
1549 #: build/C/man2/brk.2:32
1550 msgid "brk, sbrk - change data segment size"
1551 msgstr "brk, sbrk - データセグメントのサイズの変更する"
1552
1553 #. type: Plain text
1554 #: build/C/man2/brk.2:34 build/C/man2/chdir.2:38 build/C/man2/chroot.2:38
1555 #: build/C/man3/daemon.3:41 build/C/man3/encrypt.3:37 build/C/man3/exec.3:46
1556 #: build/C/man2/execve.2:42 build/C/man2/fork.2:44 build/C/man2/fsync.2:43
1557 #: build/C/man2/getdomainname.2:34 build/C/man3/getdtablesize.3:32
1558 #: build/C/man3/gethostid.3:34 build/C/man2/gethostname.2:37
1559 #: build/C/man3/getlogin.3:33 build/C/man2/getpagesize.2:30
1560 #: build/C/man2/idle.2:37 build/C/man3/lockf.3:33 build/C/man2/mincore.2:39
1561 #: build/C/man2/nice.2:36 build/C/man2/pread.2:30 build/C/man2/setup.2:39
1562 #: build/C/man2/swapon.2:47 build/C/man3/tcgetpgrp.3:30
1563 #: build/C/man2/truncate.2:48 build/C/man2/uselib.2:36 build/C/man2/vfork.2:35
1564 #: build/C/man2/vhangup.2:33 build/C/man2/execveat.2:31
1565 msgid "B<#include E<lt>unistd.hE<gt>>"
1566 msgstr "B<#include E<lt>unistd.hE<gt>>"
1567
1568 #. type: Plain text
1569 #: build/C/man2/brk.2:36
1570 msgid "B<int brk(void *>I<addr>B<);>"
1571 msgstr "B<int brk(void *>I<addr>B<);>"
1572
1573 #. type: Plain text
1574 #: build/C/man2/brk.2:38
1575 msgid "B<void *sbrk(intptr_t >I<increment>B<);>"
1576 msgstr "B<void *sbrk(intptr_t >I<increment>B<);>"
1577
1578 #. type: Plain text
1579 #: build/C/man2/brk.2:46
1580 msgid "B<brk>(), B<sbrk>():"
1581 msgstr "B<brk>(), B<sbrk>():"
1582
1583 #. type: TP
1584 #: build/C/man2/brk.2:49 build/C/man3/getcwd.3:60
1585 #: build/C/man3/getdtablesize.3:44 build/C/man2/getpagesize.2:42
1586 #: build/C/man3/ualarm.3:43 build/C/man3/usleep.3:52 build/C/man2/vfork.2:47
1587 #, no-wrap
1588 msgid "Since glibc 2.12:"
1589 msgstr "glibc 2.12 以降:"
1590
1591 #. type: Plain text
1592 #: build/C/man2/brk.2:56
1593 #, no-wrap
1594 msgid ""
1595 "_BSD_SOURCE || _SVID_SOURCE ||\n"
1596 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
1597 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
1598 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
1599 msgstr ""
1600 "_BSD_SOURCE || _SVID_SOURCE ||\n"
1601 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
1602 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
1603 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
1604
1605 #. type: Plain text
1606 #: build/C/man2/brk.2:61
1607 msgid ""
1608 "Before glibc 2.12: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ "
1609 "500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1610 msgstr ""
1611 "glibc 2.12 より前: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ "
1612 "500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1613
1614 #. type: Plain text
1615 #: build/C/man2/brk.2:76
1616 msgid ""
1617 "B<brk>()  and B<sbrk>()  change the location of the I<program break>, which "
1618 "defines the end of the process's data segment (i.e., the program break is "
1619 "the first location after the end of the uninitialized data segment).  "
1620 "Increasing the program break has the effect of allocating memory to the "
1621 "process; decreasing the break deallocates memory."
1622 msgstr ""
1623 "B<brk>()  と B<sbrk>()  は I<プログラムブレーク (program break)> の場所を変更"
1624 "する。 プログラムブレークはプロセスのデータセグメント (data segment) の 末尾"
1625 "を示す (プログラムブレークは、初期化されていない データセグメントの末尾の直後"
1626 "の場所となる)。 プログラムブレークを増やすということは、そのプロセスへの メモ"
1627 "リを割り当てる効果があり、 プログラムブレークを減らすということは、メモリを解"
1628 "放する ということである。"
1629
1630 #. type: Plain text
1631 #: build/C/man2/brk.2:83
1632 msgid ""
1633 "B<brk>()  sets the end of the data segment to the value specified by "
1634 "I<addr>, when that value is reasonable, the system has enough memory, and "
1635 "the process does not exceed its maximum data size (see B<setrlimit>(2))."
1636 msgstr ""
1637 "B<brk>()  は、データセグメントの末尾を I<addr> で指定した値に設定する。 設定"
1638 "が行われるのは、指定した値が有効で、 システムに十分なメモリがあり、 プロセス"
1639 "のデータサイズの最大値を超えていない場合である (B<setrlimit>(2)  を参照)。"
1640
1641 #. type: Plain text
1642 #: build/C/man2/brk.2:93
1643 msgid ""
1644 "B<sbrk>()  increments the program's data space by I<increment> bytes.  "
1645 "Calling B<sbrk>()  with an I<increment> of 0 can be used to find the current "
1646 "location of the program break."
1647 msgstr ""
1648 "B<sbrk>()  は、プログラムのデータ空間を I<increment> バイトだけ増やす。 "
1649 "I<increment> を 0 にして B<sbrk>()  を呼び出すことで、プログラムの現在のブ"
1650 "レーク (break) 場所を知ることができる。"
1651
1652 #. type: Plain text
1653 #: build/C/man2/brk.2:101
1654 msgid ""
1655 "On success, B<brk>()  returns zero.  On error, -1 is returned, and I<errno> "
1656 "is set to B<ENOMEM>."
1657 msgstr ""
1658 "成功した場合、 B<brk>()  は 0 を返す。 エラーの場合には、-1 を返し、 "
1659 "I<errno> に B<ENOMEM> を設定する。"
1660
1661 #. type: Plain text
1662 #: build/C/man2/brk.2:113
1663 msgid ""
1664 "On success, B<sbrk>()  returns the previous program break.  (If the break "
1665 "was increased, then this value is a pointer to the start of the newly "
1666 "allocated memory).  On error, I<(void\\ *)\\ -1> is returned, and I<errno> "
1667 "is set to B<ENOMEM>."
1668 msgstr ""
1669 "成功した場合、 B<sbrk>()  は変更前のプログラムブレークを返す (プログラムブ"
1670 "レークが増やされた場合、この値は 新しく割り当てられたメモリの先頭を指すポイン"
1671 "タとなる)。 エラーの場合には、 I<(void\\ *)\\ -1> を返し、 I<errno> に "
1672 "B<ENOMEM> を設定する。"
1673
1674 #.  .BR brk ()
1675 #.  and
1676 #.  .BR sbrk ()
1677 #.  are not defined in the C Standard and are deliberately excluded from the
1678 #.  POSIX.1-1990 standard (see paragraphs B.1.1.1.3 and B.8.3.3).
1679 #. type: Plain text
1680 #: build/C/man2/brk.2:121
1681 msgid "4.3BSD; SUSv1, marked LEGACY in SUSv2, removed in POSIX.1-2001."
1682 msgstr ""
1683 "4.3BSD, SUSv1.  SUSv2 では「過去の名残 (LEGACY)」と位置付けられており、 "
1684 "POSIX.1-2001 で削除された。"
1685
1686 #. type: Plain text
1687 #: build/C/man2/brk.2:130
1688 msgid ""
1689 "Avoid using B<brk>()  and B<sbrk>(): the B<malloc>(3)  memory allocation "
1690 "package is the portable and comfortable way of allocating memory."
1691 msgstr ""
1692 "B<brk>()  や B<sbrk>()  を使用するのは避けること。 B<malloc>(3)  メモリ割り当"
1693 "てパッケージの方が、移植性が高く、 使いやすいメモリ割り当て方法を提供してい"
1694 "る。"
1695
1696 #.  One sees
1697 #.  \fIint\fP (e.g., XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
1698 #.  \fIssize_t\fP (OSF1 2.0, Irix 5.3, 6.5),
1699 #.  \fIptrdiff_t\fP (libc4, libc5, ulibc, glibc 2.0, 2.1),
1700 #.  \fIintptr_t\fP (e.g., XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7, NetBSD 1.6,
1701 #.  Tru64 5.1, glibc2.2).
1702 #. type: Plain text
1703 #: build/C/man2/brk.2:140
1704 msgid ""
1705 "Various systems use various types for the argument of B<sbrk>().  Common are "
1706 "I<int>, I<ssize_t>, I<ptrdiff_t>, I<intptr_t>."
1707 msgstr ""
1708 "いろいろなシステムにおいて、 B<sbrk>()  の引き数に様々な型が使われている。 一"
1709 "般的なのは I<int>, I<ssize_t>, I<ptrdiff_t>, I<intptr_t> である。"
1710
1711 #. type: Plain text
1712 #: build/C/man2/brk.2:156
1713 msgid ""
1714 "The return value described above for B<brk>()  is the behavior provided by "
1715 "the glibc wrapper function for the Linux B<brk>()  system call.  (On most "
1716 "other implementations, the return value from B<brk>()  is the same; this "
1717 "return value was also specified in SUSv2.)  However, the actual Linux system "
1718 "call returns the new program break on success.  On failure, the system call "
1719 "returns the current break.  The glibc wrapper function does some work (i.e., "
1720 "checks whether the new break is less than I<addr>)  to provide the 0 and -1 "
1721 "return values described above."
1722 msgstr ""
1723 "上で説明した B<brk>()  の返り値についての動作は、 Linux の B<brk>()  システム"
1724 "コールをラップする glibc の関数によるものである。 (その他の多くの実装でも、 "
1725 "B<brk>()  の返り値はこれと同じである。 この返り値は SUSv2 でも規定されてい"
1726 "る。)  しかし、実際の Linux システムコールは、成功した場合、 プログラムの新し"
1727 "いブレークを返す。 失敗した場合、このシステムコールは現在のブレークを返す。 "
1728 "glibc ラッパー関数は同様の働きをし (すなわち、新しいブレークが I<addr> より小"
1729 "さいかどうかをチェックし)、 上で説明した 0 と -1 という返り値を返す。"
1730
1731 #. type: Plain text
1732 #: build/C/man2/brk.2:163
1733 msgid ""
1734 "On Linux, B<sbrk>()  is implemented as a library function that uses the "
1735 "B<brk>()  system call, and does some internal bookkeeping so that it can "
1736 "return the old break value."
1737 msgstr ""
1738 "Linux では B<sbrk>()  は B<brk>()  システムコールを使うライブラリ関数として実"
1739 "装されており、 以前のブレークの値を返すことができるように内部で調整が行われて"
1740 "いる。"
1741
1742 #. type: Plain text
1743 #: build/C/man2/brk.2:168
1744 msgid "B<execve>(2), B<getrlimit>(2), B<end>(3), B<malloc>(3)"
1745 msgstr "B<execve>(2), B<getrlimit>(2), B<end>(3), B<malloc>(3)"
1746
1747 #. type: TH
1748 #: build/C/man2/chdir.2:33
1749 #, no-wrap
1750 msgid "CHDIR"
1751 msgstr "CHDIR"
1752
1753 #. type: TH
1754 #: build/C/man2/chdir.2:33
1755 #, no-wrap
1756 msgid "2010-11-25"
1757 msgstr "2010-11-25"
1758
1759 #. type: Plain text
1760 #: build/C/man2/chdir.2:36
1761 msgid "chdir, fchdir - change working directory"
1762 msgstr "chdir, fchdir - 作業ディレクトリの変更"
1763
1764 #. type: Plain text
1765 #: build/C/man2/chdir.2:40
1766 msgid "B<int chdir(const char *>I<path>B<);>"
1767 msgstr "B<int chdir(const char *>I<path>B<);>"
1768
1769 #. type: Plain text
1770 #: build/C/man2/chdir.2:42
1771 msgid "B<int fchdir(int >I<fd>B<);>"
1772 msgstr "B<int fchdir(int >I<fd>B<);>"
1773
1774 #. type: Plain text
1775 #: build/C/man2/chdir.2:49
1776 msgid "B<fchdir>():"
1777 msgstr "B<fchdir>():"
1778
1779 #. type: Plain text
1780 #: build/C/man2/chdir.2:54 build/C/man2/chmod.2:62 build/C/man2/chown.2:71
1781 #: build/C/man3/gethostid.3:50 build/C/man2/truncate.2:66
1782 #: build/C/man2/truncate.2:74
1783 msgid ""
1784 "_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
1785 "_XOPEN_SOURCE_EXTENDED"
1786 msgstr ""
1787 "_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
1788 "_XOPEN_SOURCE_EXTENDED"
1789
1790 #. type: Plain text
1791 #: build/C/man2/chdir.2:56 build/C/man2/chmod.2:64 build/C/man2/chown.2:73
1792 #: build/C/man2/pread.2:50 build/C/man2/truncate.2:68
1793 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1794 msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1795
1796 #. type: Plain text
1797 #: build/C/man2/chdir.2:64
1798 msgid ""
1799 "B<chdir>()  changes the current working directory of the calling process to "
1800 "the directory specified in I<path>."
1801 msgstr ""
1802 "B<chdir>()  は、呼び出し元プロセスの現在の作業ディレクトリ (current working "
1803 "directory) を、 I<path> に指定されたディレクトリに変更する。"
1804
1805 #. type: Plain text
1806 #: build/C/man2/chdir.2:70
1807 msgid ""
1808 "B<fchdir>()  is identical to B<chdir>(); the only difference is that the "
1809 "directory is given as an open file descriptor."
1810 msgstr ""
1811 "B<fchdir>()  は、ディレクトリがオープンされたファイルディスクリプタとして 指"
1812 "定される以外は、 B<chdir>()  と同じである。"
1813
1814 #. type: Plain text
1815 #: build/C/man2/chdir.2:75 build/C/man2/chmod.2:236 build/C/man2/chown.2:229
1816 #: build/C/man2/chroot.2:95 build/C/man2/flock.2:117
1817 #: build/C/man2/getdomainname.2:80 build/C/man2/gethostname.2:94
1818 #: build/C/man2/ioperm.2:84 build/C/man3/lockf.3:121 build/C/man2/swapon.2:116
1819 #: build/C/man2/sysinfo.2:79 build/C/man2/truncate.2:115
1820 #: build/C/man2/uname.2:68 build/C/man2/uselib.2:53 build/C/man2/vhangup.2:55
1821 msgid ""
1822 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
1823 "appropriately."
1824 msgstr ""
1825 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
1826 "定される。"
1827
1828 #. type: Plain text
1829 #: build/C/man2/chdir.2:81
1830 msgid ""
1831 "Depending on the filesystem, other errors can be returned.  The more general "
1832 "errors for B<chdir>()  are listed below:"
1833 msgstr ""
1834 "ファイルシステムによっては他のエラーが返される事がある。 B<chdir>()  で一般的"
1835 "なエラーを以下に挙げる:"
1836
1837 #. type: Plain text
1838 #: build/C/man2/chdir.2:87
1839 msgid ""
1840 "Search permission is denied for one of the components of I<path>.  (See also "
1841 "B<path_resolution>(7).)"
1842 msgstr ""
1843 "I<path> の構成要素のいずれかに検索許可 (search permission) がない "
1844 "(B<path_resolution>(7)  も参照すること)。"
1845
1846 #. type: Plain text
1847 #: build/C/man2/chdir.2:91 build/C/man2/chroot.2:109
1848 msgid "I<path> points outside your accessible address space."
1849 msgstr "I<path> がアクセスできるアドレス空間外を指している。"
1850
1851 #. type: Plain text
1852 #: build/C/man2/chdir.2:98 build/C/man2/chroot.2:116
1853 msgid "Too many symbolic links were encountered in resolving I<path>."
1854 msgstr "I<path> を解決する際に遭遇したシンボリックリンクが多過ぎる。"
1855
1856 #. type: Plain text
1857 #: build/C/man2/chdir.2:102 build/C/man2/chroot.2:120
1858 msgid "I<path> is too long."
1859 msgstr "I<path> が長過ぎる。"
1860
1861 #. type: Plain text
1862 #: build/C/man2/chdir.2:105 build/C/man2/chmod.2:266 build/C/man2/chown.2:256
1863 #: build/C/man2/chroot.2:123
1864 msgid "The file does not exist."
1865 msgstr "ファイルが存在しない。"
1866
1867 #. type: Plain text
1868 #: build/C/man2/chdir.2:113 build/C/man2/chroot.2:131
1869 msgid "A component of I<path> is not a directory."
1870 msgstr "I<path> の構成要素がディレクトリではない。"
1871
1872 #. type: Plain text
1873 #: build/C/man2/chdir.2:117
1874 msgid "The general errors for B<fchdir>()  are listed below:"
1875 msgstr "B<fchdir>()  で一般的なエラーを以下に挙げる:"
1876
1877 #. type: Plain text
1878 #: build/C/man2/chdir.2:121
1879 msgid "Search permission was denied on the directory open on I<fd>."
1880 msgstr "I<fd> をディレクトリとしてオープンするための検索許可がない。"
1881
1882 #. type: Plain text
1883 #: build/C/man2/chdir.2:125 build/C/man3/tcgetpgrp.3:91
1884 msgid "I<fd> is not a valid file descriptor."
1885 msgstr "I<fd> が適切なファイルディスクリプタでない。"
1886
1887 #. type: Plain text
1888 #: build/C/man2/chdir.2:127
1889 msgid "SVr4, 4.4BSD, POSIX.1-2001."
1890 msgstr "SVr4, 4.4BSD, POSIX.1-2001."
1891
1892 #. type: Plain text
1893 #: build/C/man2/chdir.2:130
1894 msgid ""
1895 "The current working directory is the starting point for interpreting "
1896 "relative pathnames (those not starting with \\(aq/\\(aq)."
1897 msgstr ""
1898 "現在の作業ディレクトリは、相対パス名 (\\(aq/\\(aq) で始まっていないパス名) "
1899 "を 解釈する際の開始点である。"
1900
1901 #. type: Plain text
1902 #: build/C/man2/chdir.2:136
1903 msgid ""
1904 "A child process created via B<fork>(2)  inherits its parent's current "
1905 "working directory.  The current working directory is left unchanged by "
1906 "B<execve>(2)."
1907 msgstr ""
1908 "B<fork>(2)  で作成された子プロセスは、親プロセスの現在の作業ディレクトリを 継"
1909 "承する。 B<execve>(2)  の前後で、現在の作業ディレクトリは変更されない。"
1910
1911 #. type: Plain text
1912 #: build/C/man2/chdir.2:140
1913 msgid "B<chroot>(2), B<getcwd>(3), B<path_resolution>(7)"
1914 msgstr "B<chroot>(2), B<getcwd>(3), B<path_resolution>(7)"
1915
1916 #. type: TH
1917 #: build/C/man2/chmod.2:32
1918 #, no-wrap
1919 msgid "CHMOD"
1920 msgstr "CHMOD"
1921
1922 #. type: Plain text
1923 #: build/C/man2/chmod.2:35
1924 msgid "chmod, fchmod, fchmodat - change permissions of a file"
1925 msgstr "chmod, fchmod, fchmodat - ファイルのモードを変更する"
1926
1927 #. type: Plain text
1928 #: build/C/man2/chmod.2:38
1929 #, no-wrap
1930 msgid "B<#include E<lt>sys/stat.hE<gt>>\n"
1931 msgstr "B<#include E<lt>sys/stat.hE<gt>>\n"
1932
1933 #. type: Plain text
1934 #: build/C/man2/chmod.2:40
1935 #, no-wrap
1936 msgid "B<int chmod(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
1937 msgstr "B<int chmod(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
1938
1939 #. type: Plain text
1940 #: build/C/man2/chmod.2:42
1941 #, no-wrap
1942 msgid "B<int fchmod(int >I<fd>B<, mode_t >I<mode>B<);>\n"
1943 msgstr "B<int fchmod(int >I<fd>B<, mode_t >I<mode>B<);>\n"
1944
1945 #. type: Plain text
1946 #: build/C/man2/chmod.2:45
1947 #, no-wrap
1948 msgid ""
1949 "B<#include E<lt>fcntl.hE<gt>>           /* Definition of AT_* constants */\n"
1950 "B<#include E<lt>sys/stat.hE<gt>>\n"
1951 msgstr ""
1952 "B<#include E<lt>fcntl.hE<gt>>           /* AT_* 定数の定義 */\n"
1953 "B<#include E<lt>sys/stat.hE<gt>>\n"
1954
1955 #. type: Plain text
1956 #: build/C/man2/chmod.2:48
1957 #, no-wrap
1958 msgid "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<, int >I<flags>B<);>\n"
1959 msgstr "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<, int >I<flags>B<);>\n"
1960
1961 #. type: Plain text
1962 #: build/C/man2/chmod.2:58
1963 msgid "B<fchmod>():"
1964 msgstr "B<fchmod>():"
1965
1966 #. type: Plain text
1967 #: build/C/man2/chmod.2:68
1968 msgid "B<fchmodat>():"
1969 msgstr "B<fchmodat>():"
1970
1971 #. type: Plain text
1972 #: build/C/man2/chmod.2:88
1973 msgid ""
1974 "The B<chmod>()  and B<fchmod>()  system calls change the permissions of a "
1975 "file.  They differ only in how the file is specified:"
1976 msgstr ""
1977 "システムコール B<chmod>() と B<fchmod>() は、ファイルのアクセス許可 "
1978 "(permission) を変更する。 システムコール間の違いは、ファイルの指定の仕方だけ"
1979 "である。"
1980
1981 #. type: IP
1982 #: build/C/man2/chmod.2:88 build/C/man2/chmod.2:93 build/C/man2/chown.2:96
1983 #: build/C/man2/chown.2:101 build/C/man2/chown.2:105 build/C/man2/chown.2:353
1984 #: build/C/man2/chown.2:358 build/C/man2/chown.2:364 build/C/man2/dup.2:106
1985 #: build/C/man2/dup.2:112 build/C/man2/dup.2:129 build/C/man2/dup.2:138
1986 #: build/C/man2/execve.2:122 build/C/man2/execve.2:126
1987 #: build/C/man2/execve.2:129 build/C/man2/execve.2:132
1988 #: build/C/man2/execve.2:135 build/C/man2/execve.2:138
1989 #: build/C/man2/execve.2:141 build/C/man2/execve.2:144
1990 #: build/C/man2/execve.2:147 build/C/man2/execve.2:150
1991 #: build/C/man2/execve.2:154 build/C/man2/execve.2:158
1992 #: build/C/man2/execve.2:167 build/C/man2/execve.2:174
1993 #: build/C/man2/execve.2:179 build/C/man2/execve.2:186
1994 #: build/C/man2/execve.2:193 build/C/man2/execve.2:200
1995 #: build/C/man2/execve.2:207 build/C/man2/execve.2:211
1996 #: build/C/man2/execve.2:214 build/C/man2/execve.2:222
1997 #: build/C/man2/execve.2:226 build/C/man2/execve.2:231
1998 #: build/C/man2/fcntl.2:452 build/C/man2/fcntl.2:468 build/C/man2/fork.2:52
1999 #: build/C/man2/fork.2:56 build/C/man2/fork.2:58 build/C/man2/fork.2:62
2000 #: build/C/man2/fork.2:68 build/C/man2/fork.2:71 build/C/man2/fork.2:74
2001 #: build/C/man2/fork.2:82 build/C/man2/fork.2:87 build/C/man2/fork.2:99
2002 #: build/C/man2/fork.2:106 build/C/man2/fork.2:112 build/C/man2/fork.2:119
2003 #: build/C/man2/fork.2:125 build/C/man2/fork.2:130 build/C/man2/fork.2:138
2004 #: build/C/man2/fork.2:147 build/C/man2/fork.2:161 build/C/man2/fork.2:170
2005 #: build/C/man2/syscalls.2:87 build/C/man2/syscalls.2:90
2006 #: build/C/man2/syscalls.2:96 build/C/man2/syscalls.2:112
2007 #: build/C/man2/syscalls.2:118 build/C/man2/syscalls.2:124
2008 #: build/C/man2/syscalls.2:130 build/C/man2/syscalls.2:137
2009 #: build/C/man2/syscalls.2:703 build/C/man2/syscalls.2:724
2010 #: build/C/man2/syscalls.2:735 build/C/man2/syscalls.2:742
2011 #: build/C/man2/syscalls.2:753 build/C/man2/syscalls.2:765
2012 #: build/C/man2/syscalls.2:786 build/C/man2/syscalls.2:794
2013 #: build/C/man2/vfork.2:193 build/C/man2/vfork.2:197
2014 #, no-wrap
2015 msgid "*"
2016 msgstr "*"
2017
2018 #. type: Plain text
2019 #: build/C/man2/chmod.2:93
2020 msgid ""
2021 "B<chmod>()  changes the permissions of the file specified whose pathname is "
2022 "given in I<pathname>, which is dereferenced if it is a symbolic link."
2023 msgstr ""
2024 "B<chmod>()  は、 I<pathname> で指定されたパス名を持つファイルの許可を変更す"
2025 "る。 I<pathname> がシンボリックリンクの場合は、リンクの展開が行われる。"
2026
2027 #. type: Plain text
2028 #: build/C/man2/chmod.2:97
2029 msgid ""
2030 "B<fchmod>()  changes the permissions of the file referred to by the open "
2031 "file descriptor I<fd>."
2032 msgstr ""
2033 "B<fchmod>()  は、オープンされたファイルディスクリプタ I<fd> により参照される"
2034 "ファイルの許可を変更する。"
2035
2036 #. type: Plain text
2037 #: build/C/man2/chmod.2:102
2038 msgid ""
2039 "The new file permissions are specified in I<mode>, which is a bit mask "
2040 "created by ORing together zero or more of the following:"
2041 msgstr ""
2042 "新しいファイル許可は I<mode> で指定される。 I<mode> は、以下に示す値の 0 個以"
2043 "上の OR (論理和) をとって作成される ビットマスクである。"
2044
2045 #. type: TP
2046 #: build/C/man2/chmod.2:102
2047 #, no-wrap
2048 msgid "B<S_ISUID>  (04000)"
2049 msgstr "B<S_ISUID>  (04000)"
2050
2051 #. type: Plain text
2052 #: build/C/man2/chmod.2:106
2053 msgid "set-user-ID (set process effective user ID on B<execve>(2))"
2054 msgstr "set-user-ID (B<execve>(2)  時にプロセスの実効ユーザ ID にセットされる)"
2055
2056 #. type: TP
2057 #: build/C/man2/chmod.2:106
2058 #, no-wrap
2059 msgid "B<S_ISGID>  (02000)"
2060 msgstr "B<S_ISGID>  (02000)"
2061
2062 #. type: Plain text
2063 #: build/C/man2/chmod.2:116
2064 msgid ""
2065 "set-group-ID (set process effective group ID on B<execve>(2); mandatory "
2066 "locking, as described in B<fcntl>(2); take a new file's group from parent "
2067 "directory, as described in B<chown>(2)  and B<mkdir>(2))"
2068 msgstr ""
2069 "set-group-ID (以下の場合に (B<execve>(2)  実行時にプロセスの実効グループ ID "
2070 "にセットされる、 強制ロック (mandatory locking) を行う (B<fcntl>(2)  の説明を"
2071 "参照)、 新しいファイルのグループとして親ディレクトリと同じものを使う "
2072 "(B<chown>(2)  と B<(>mkdirB<(2)> の説明を参照)"
2073
2074 #. type: TP
2075 #: build/C/man2/chmod.2:116
2076 #, no-wrap
2077 msgid "B<S_ISVTX>  (01000)"
2078 msgstr "B<S_ISVTX>  (01000)"
2079
2080 #. type: Plain text
2081 #: build/C/man2/chmod.2:120
2082 msgid "sticky bit (restricted deletion flag, as described in B<unlink>(2))"
2083 msgstr ""
2084 "スティッキービット (sticky bit) (削除制限フラグ、 B<unlink>(2)  の説明を参照)"
2085
2086 #. type: TP
2087 #: build/C/man2/chmod.2:120
2088 #, no-wrap
2089 msgid "B<S_IRUSR>  (00400)"
2090 msgstr "B<S_IRUSR>  (00400)"
2091
2092 #. type: Plain text
2093 #: build/C/man2/chmod.2:123
2094 msgid "read by owner"
2095 msgstr "所有者による読み取り"
2096
2097 #. type: TP
2098 #: build/C/man2/chmod.2:123
2099 #, no-wrap
2100 msgid "B<S_IWUSR>  (00200)"
2101 msgstr "B<S_IWUSR>  (00200)"
2102
2103 #. type: Plain text
2104 #: build/C/man2/chmod.2:126
2105 msgid "write by owner"
2106 msgstr "所有者による書き込み"
2107
2108 #. type: TP
2109 #: build/C/man2/chmod.2:126
2110 #, no-wrap
2111 msgid "B<S_IXUSR>  (00100)"
2112 msgstr "B<S_IXUSR>  (00100)"
2113
2114 #. type: Plain text
2115 #: build/C/man2/chmod.2:130
2116 msgid ""
2117 "execute/search by owner (\"search\" applies for directories, and means that "
2118 "entries within the directory can be accessed)"
2119 msgstr ""
2120 "所有者による実行 (execute) / 検索 (search)  (「検索」はディレクトリに対して適"
2121 "用されるもので、 そのディレクトリ内のエントリーへアクセスできるかを意味する)"
2122
2123 #. type: TP
2124 #: build/C/man2/chmod.2:130
2125 #, no-wrap
2126 msgid "B<S_IRGRP>  (00040)"
2127 msgstr "B<S_IRGRP>  (00040)"
2128
2129 #. type: Plain text
2130 #: build/C/man2/chmod.2:133
2131 msgid "read by group"
2132 msgstr "グループによる読み取り"
2133
2134 #. type: TP
2135 #: build/C/man2/chmod.2:133
2136 #, no-wrap
2137 msgid "B<S_IWGRP>  (00020)"
2138 msgstr "B<S_IWGRP>  (00020)"
2139
2140 #. type: Plain text
2141 #: build/C/man2/chmod.2:136
2142 msgid "write by group"
2143 msgstr "グループによる書き込み"
2144
2145 #. type: TP
2146 #: build/C/man2/chmod.2:136
2147 #, no-wrap
2148 msgid "B<S_IXGRP>  (00010)"
2149 msgstr "B<S_IXGRP>  (00010)"
2150
2151 #. type: Plain text
2152 #: build/C/man2/chmod.2:139
2153 msgid "execute/search by group"
2154 msgstr "グループによる実行 / 検索"
2155
2156 #. type: TP
2157 #: build/C/man2/chmod.2:139
2158 #, no-wrap
2159 msgid "B<S_IROTH>  (00004)"
2160 msgstr "B<S_IROTH>  (00004)"
2161
2162 #. type: Plain text
2163 #: build/C/man2/chmod.2:142
2164 msgid "read by others"
2165 msgstr "他人 (others) による読み取り"
2166
2167 #. type: TP
2168 #: build/C/man2/chmod.2:142
2169 #, no-wrap
2170 msgid "B<S_IWOTH>  (00002)"
2171 msgstr "B<S_IWOTH>  (00002)"
2172
2173 #. type: Plain text
2174 #: build/C/man2/chmod.2:145
2175 msgid "write by others"
2176 msgstr "他人による書き込み"
2177
2178 #. type: TP
2179 #: build/C/man2/chmod.2:145
2180 #, no-wrap
2181 msgid "B<S_IXOTH>  (00001)"
2182 msgstr "B<S_IXOTH>  (00001)"
2183
2184 #. type: Plain text
2185 #: build/C/man2/chmod.2:148
2186 msgid "execute/search by others"
2187 msgstr "他人による実行 / 検索"
2188
2189 #. type: Plain text
2190 #: build/C/man2/chmod.2:153
2191 msgid ""
2192 "The effective UID of the calling process must match the owner of the file, "
2193 "or the process must be privileged (Linux: it must have the B<CAP_FOWNER> "
2194 "capability)."
2195 msgstr ""
2196 "呼び出したプロセスの実効 (effective) UID がファイルの所有者と一致するか、 そ"
2197 "のプロセスが特権を持たなければならない (Linux では B<CAP_FOWNER> ケーパビリ"
2198 "ティ (capability) を持たなければならない)。"
2199
2200 #. type: Plain text
2201 #: build/C/man2/chmod.2:162
2202 msgid ""
2203 "If the calling process is not privileged (Linux: does not have the "
2204 "B<CAP_FSETID> capability), and the group of the file does not match the "
2205 "effective group ID of the process or one of its supplementary group IDs, the "
2206 "B<S_ISGID> bit will be turned off, but this will not cause an error to be "
2207 "returned."
2208 msgstr ""
2209 "呼び出したプロセスに特権がなく (Linux では B<CAP_FSETID> ケーパビリティがな"
2210 "く)、かつファイルのグループ ID が プロセスの実効グループ ID または補助的なグ"
2211 "ループ ID にマッチしない場合、 B<S_ISGID> ビットはオフにされるが、これによっ"
2212 "てエラーが返されることはない。"
2213
2214 #. type: Plain text
2215 #: build/C/man2/chmod.2:174
2216 msgid ""
2217 "As a security measure, depending on the filesystem, the set-user-ID and set-"
2218 "group-ID execution bits may be turned off if a file is written.  (On Linux "
2219 "this occurs if the writing process does not have the B<CAP_FSETID> "
2220 "capability.)  On some filesystems, only the superuser can set the sticky "
2221 "bit, which may have a special meaning.  For the sticky bit, and for set-user-"
2222 "ID and set-group-ID bits on directories, see B<stat>(2)."
2223 msgstr ""
2224 "安全のための処置として、 ファイルシステムによっては、ファイルの書き込みを行う"
2225 "時に セット・ユーザー ID とセット・グループ ID ビットと実行ビットが オフにさ"
2226 "れることがある。 (Linux では、書き込みプロセスが B<CAP_FSETID> ケーパビリティ"
2227 "を持っていない場合に、これが起こる。)  ファイルシステムの中には、スーパーユー"
2228 "ザーだけが 特別の意味を持つスティッキービットを設定できるものがある。 ス"
2229 "ティッキービットとディレクトリに対する セット・ユーザー (グループ) ID ビット"
2230 "については、 B<stat>(2)  を見よ。"
2231
2232 #. type: Plain text
2233 #: build/C/man2/chmod.2:182
2234 msgid ""
2235 "On NFS filesystems, restricting the permissions will immediately influence "
2236 "already open files, because the access control is done on the server, but "
2237 "open files are maintained by the client.  Widening the permissions may be "
2238 "delayed for other clients if attribute caching is enabled on them."
2239 msgstr ""
2240 "NFS ファイルシステム上では、パーミッションを制限すると、 既にオープンされてい"
2241 "るファイルに対してすぐに影響が及ぶ。 これはアクセス制御がサーバー上で行われて"
2242 "いるが、 オープンされているファイルはクライアント側で管理されているためであ"
2243 "る。 クライアント側でファイル属性のキャッシュが有効になっている場合に、 パー"
2244 "ミッションの制限を緩くすると、 他のクライアントに情報が伝わるのが遅れるかもし"
2245 "れない。"
2246
2247 #. type: SS
2248 #: build/C/man2/chmod.2:182
2249 #, no-wrap
2250 msgid "fchmodat()"
2251 msgstr "fchmodat()"
2252
2253 #. type: Plain text
2254 #: build/C/man2/chmod.2:188
2255 msgid ""
2256 "The B<fchmodat>()  system call operates in exactly the same way as "
2257 "B<chmod>(), except for the differences described here."
2258 msgstr ""
2259 "B<fchmodat>() システムコールは B<chmod>() と全く同様に動作するが、以下で説明"
2260 "する点が異なる。"
2261
2262 #. type: Plain text
2263 #: build/C/man2/chmod.2:198
2264 msgid ""
2265 "If the pathname given in I<pathname> is relative, then it is interpreted "
2266 "relative to the directory referred to by the file descriptor I<dirfd> "
2267 "(rather than relative to the current working directory of the calling "
2268 "process, as is done by B<chmod>()  for a relative pathname)."
2269 msgstr ""
2270 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
2271 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
2272 "(B<chmod>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
2273 "ワーキングディレクトリに対する相対パスではない)。"
2274
2275 #. type: Plain text
2276 #: build/C/man2/chmod.2:210
2277 msgid ""
2278 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
2279 "then I<pathname> is interpreted relative to the current working directory of "
2280 "the calling process (like B<chmod>())."
2281 msgstr ""
2282 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
2283 "の場合、 (B<chmod>() と同様に) I<pathname> は呼び出したプロセスのカレントワー"
2284 "キングディレクトリに対する相対パスと解釈される。"
2285
2286 #. type: Plain text
2287 #: build/C/man2/chmod.2:219
2288 msgid "I<flags> can either be 0, or include the following flag:"
2289 msgstr "I<flags> には 0 か、以下のフラグを指定することができる。"
2290
2291 #. type: Plain text
2292 #: build/C/man2/chmod.2:226
2293 msgid ""
2294 "If I<pathname> is a symbolic link, do not dereference it: instead operate on "
2295 "the link itself.  This flag is not currently implemented."
2296 msgstr ""
2297 "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リ"
2298 "ンク自身に対して操作を行う。このフラグは現在のところ実装されていない。"
2299
2300 #. type: Plain text
2301 #: build/C/man2/chmod.2:231
2302 msgid "See B<openat>(2)  for an explanation of the need for B<fchmodat>()."
2303 msgstr "B<fchmodat>() の必要性についての説明については B<openat>(2) を参照。"
2304
2305 #. type: Plain text
2306 #: build/C/man2/chmod.2:239 build/C/man2/chown.2:232
2307 msgid ""
2308 "Depending on the filesystem, errors other than those listed below can be "
2309 "returned."
2310 msgstr ""
2311 "ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。"
2312
2313 #. type: Plain text
2314 #: build/C/man2/chmod.2:243
2315 msgid "The more general errors for B<chmod>()  are listed below:"
2316 msgstr "B<chmod>() のごく一般的なエラーを挙げる:"
2317
2318 #.  Also search permission is required on the final component,
2319 #.  maybe just to guarantee that it is a directory?
2320 #. type: Plain text
2321 #: build/C/man2/chmod.2:248 build/C/man2/chown.2:241 build/C/man2/chroot.2:105
2322 msgid ""
2323 "Search permission is denied on a component of the path prefix.  (See also "
2324 "B<path_resolution>(7).)"
2325 msgstr "パス名の構成要素に検索許可がない (B<path_resolution>(7)  も見よ)。"
2326
2327 #. type: Plain text
2328 #: build/C/man2/chmod.2:272 build/C/man2/chown.2:262
2329 #: build/C/man2/truncate.2:165
2330 msgid "A component of the path prefix is not a directory."
2331 msgstr "パス名の構成要素がディレクトリではない。"
2332
2333 #. type: TP
2334 #: build/C/man2/chmod.2:272 build/C/man2/chmod.2:293 build/C/man2/chown.2:262
2335 #: build/C/man2/chown.2:282 build/C/man2/chroot.2:131 build/C/man3/crypt.3:169
2336 #: build/C/man2/execve.2:451 build/C/man2/execve.2:457
2337 #: build/C/man2/fcntl.2:1625 build/C/man2/fcntl.2:1630
2338 #: build/C/man2/getdomainname.2:91 build/C/man3/gethostid.3:88
2339 #: build/C/man2/gethostname.2:117 build/C/man2/idle.2:56
2340 #: build/C/man2/ioperm.2:98 build/C/man2/mkdir.2:178 build/C/man2/nice.2:62
2341 #: build/C/man2/setup.2:57 build/C/man2/swapon.2:155
2342 #: build/C/man3/tcgetpgrp.3:104 build/C/man2/truncate.2:165
2343 #: build/C/man2/truncate.2:171 build/C/man2/vhangup.2:56
2344 #, no-wrap
2345 msgid "B<EPERM>"
2346 msgstr "B<EPERM>"
2347
2348 #. type: Plain text
2349 #: build/C/man2/chmod.2:278
2350 msgid ""
2351 "The effective UID does not match the owner of the file, and the process is "
2352 "not privileged (Linux: it does not have the B<CAP_FOWNER> capability)."
2353 msgstr ""
2354 "実効 UID がファイルの所有者と一致せず、プロセスに特権がない (Linux では "
2355 "B<CAP_FOWNER> ケーパビリティを持たない)。"
2356
2357 #. type: Plain text
2358 #: build/C/man2/chmod.2:281 build/C/man2/chown.2:269
2359 #: build/C/man2/truncate.2:178
2360 msgid "The named file resides on a read-only filesystem."
2361 msgstr "ファイルが読み込み専用 (read only) のファイルシステム上にある。"
2362
2363 #. type: Plain text
2364 #: build/C/man2/chmod.2:285
2365 msgid "The general errors for B<fchmod>()  are listed below:"
2366 msgstr "B<fchmod>()  で一般的なエラーを挙げる:"
2367
2368 #. type: Plain text
2369 #: build/C/man2/chmod.2:290
2370 msgid "The file descriptor I<fd> is not valid."
2371 msgstr "ファイルディスクリプタ I<fd> が有効でない。"
2372
2373 #. type: Plain text
2374 #: build/C/man2/chmod.2:293 build/C/man2/chmod.2:296 build/C/man2/chmod.2:299
2375 #: build/C/man2/chown.2:282 build/C/man2/chown.2:285 build/C/man2/chown.2:288
2376 msgid "See above."
2377 msgstr "上記を参照。"
2378
2379 #. type: Plain text
2380 #: build/C/man2/chmod.2:306
2381 msgid ""
2382 "The same errors that occur for B<chmod>()  can also occur for "
2383 "B<fchmodat>().  The following additional errors can occur for B<fchmodat>():"
2384 msgstr ""
2385 "B<chmod>() で発生するのと同じエラーが B<fchmodat>() でも起こる。 "
2386 "B<fchmodat>() では以下のエラーも発生する。"
2387
2388 #. type: TP
2389 #: build/C/man2/chmod.2:320
2390 #, no-wrap
2391 msgid "B<ENOTSUP>"
2392 msgstr "B<ENOTSUP>"
2393
2394 #. type: Plain text
2395 #: build/C/man2/chmod.2:326
2396 msgid "I<flags> specified B<AT_SYMLINK_NOFOLLOW>, which is not supported."
2397 msgstr "I<flags> に対応していないフラグ B<AT_SYMLINK_NOFOLLOW> が指定された。"
2398
2399 #. type: Plain text
2400 #: build/C/man2/chmod.2:330
2401 msgid ""
2402 "B<fchmodat>()  was added to Linux in kernel 2.6.16; library support was "
2403 "added to glibc in version 2.4."
2404 msgstr ""
2405 "B<fchmodat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサ"
2406 "ポートはバージョン 2.4 以降の glibc で利用できる。"
2407
2408 #. type: Plain text
2409 #: build/C/man2/chmod.2:334
2410 msgid "B<chmod>(), B<fchmod>(): 4.4BSD, SVr4, POSIX.1-2001i, POSIX.1-2008."
2411 msgstr "B<chmod>(), B<fchmod>(): 4.4BSD, SVr4, POSIX.1-2001i, POSIX.1-2008."
2412
2413 #. type: Plain text
2414 #: build/C/man2/chmod.2:337
2415 msgid "B<fchmodat>(): POSIX.1-2008."
2416 msgstr "B<fchmodat>(): POSIX.1-2008."
2417
2418 #. type: Plain text
2419 #: build/C/man2/chmod.2:348
2420 msgid ""
2421 "The GNU C library B<fchmodat>()  wrapper function implements the POSIX-"
2422 "specified interface described in this page.  This interface differs from the "
2423 "underlying Linux system call, which does I<not> have a I<flags> argument."
2424 msgstr ""
2425 "GNU C ライブラリの B<fchmodat>() ラッパー関数は、このページで説明している "
2426 "POSIX で規定されたインターフェースを実装している。このインターフェースは、内"
2427 "部で呼ばれる Linux のシステムコールとは異なる。システムコールは I<flags> 引き"
2428 "数をI<持たない>。"
2429
2430 #. type: Plain text
2431 #: build/C/man2/chmod.2:361
2432 msgid ""
2433 "On older kernels where B<fchmodat>()  is unavailable, the glibc wrapper "
2434 "function falls back to the use of B<chmod>().  When I<pathname> is a "
2435 "relative pathname, glibc constructs a pathname based on the symbolic link in "
2436 "I</proc/self/fd> that corresponds to the I<dirfd> argument."
2437 msgstr ""
2438 "B<fchmodat>() が利用できない古いカーネルでは、 glibc ラッパー関数は "
2439 "B<chmod>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
2440 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
2441 "に基づいてパス名を構成する。"
2442
2443 #. type: Plain text
2444 #: build/C/man2/chmod.2:368
2445 msgid ""
2446 "B<chown>(2), B<execve>(2), B<open>(2), B<stat>(2), B<path_resolution>(7), "
2447 "B<symlink>(7)"
2448 msgstr ""
2449 "B<chown>(2), B<execve>(2), B<open>(2), B<stat>(2), B<path_resolution>(7), "
2450 "B<symlink>(7)"
2451
2452 #. type: TH
2453 #: build/C/man2/chown.2:38
2454 #, no-wrap
2455 msgid "CHOWN"
2456 msgstr "CHOWN"
2457
2458 #. type: Plain text
2459 #: build/C/man2/chown.2:41
2460 msgid "chown, fchown, lchown, fchownat - change ownership of a file"
2461 msgstr "chown, fchown, lchown, fchownat - ファイルの所有者を変更する"
2462
2463 #. type: Plain text
2464 #: build/C/man2/chown.2:46
2465 #, no-wrap
2466 msgid "B<int chown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2467 msgstr "B<int chown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2468
2469 #. type: Plain text
2470 #: build/C/man2/chown.2:48
2471 #, no-wrap
2472 msgid "B<int fchown(int >I<fd>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2473 msgstr "B<int fchown(int >I<fd>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2474
2475 #. type: Plain text
2476 #: build/C/man2/chown.2:50
2477 #, no-wrap
2478 msgid "B<int lchown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2479 msgstr "B<int lchown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2480
2481 #. type: Plain text
2482 #: build/C/man2/chown.2:56
2483 #, no-wrap
2484 msgid ""
2485 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
2486 "B<             uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
2487 msgstr ""
2488 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
2489 "B<             uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
2490
2491 #. type: Plain text
2492 #: build/C/man2/chown.2:66
2493 msgid "B<fchown>(), B<lchown>():"
2494 msgstr "B<fchown>(), B<lchown>():"
2495
2496 #. type: Plain text
2497 #: build/C/man2/chown.2:76
2498 msgid "B<fchownat>():"
2499 msgstr "B<fchownat>():"
2500
2501 #. type: Plain text
2502 #: build/C/man2/chown.2:96
2503 msgid ""
2504 "These system calls change the owner and group of a file.  The B<chown>(), "
2505 "B<fchown>(), and B<lchown>()  system calls differ only in how the file is "
2506 "specified:"
2507 msgstr ""
2508 "これらのシステムコールは、いずれもファイルの所有者 (owner) とグループを変更す"
2509 "る。システムコール B<chown>(), B<fchown>(), B<lchown>() 間の違いは、ファイル"
2510 "の指定の仕方だけである。"
2511
2512 #. type: Plain text
2513 #: build/C/man2/chown.2:101
2514 msgid ""
2515 "B<chown>()  changes the ownership of the file specified by I<pathname>, "
2516 "which is dereferenced if it is a symbolic link."
2517 msgstr ""
2518 "B<chown>()  は I<pathname> で指定されたファイルの所有権を変更する。 "
2519 "I<pathname> がシンボリックリンクの場合は、リンクの展開が行われる。"
2520
2521 #. type: Plain text
2522 #: build/C/man2/chown.2:105
2523 msgid ""
2524 "B<fchown>()  changes the ownership of the file referred to by the open file "
2525 "descriptor I<fd>."
2526 msgstr ""
2527 "B<fchown>()  はオープンされたファイルディスクリプタ I<fd> により参照される"
2528 "ファイルの所有権を変更する。"
2529
2530 #. type: Plain text
2531 #: build/C/man2/chown.2:110
2532 msgid ""
2533 "B<lchown>()  is like B<chown>(), but does not dereference symbolic links."
2534 msgstr ""
2535 "B<lchown>()  は B<chown>()  と同じだが、シンボリックリンクを展開しない点が異"
2536 "なる。"
2537
2538 #. type: Plain text
2539 #: build/C/man2/chown.2:119
2540 msgid ""
2541 "Only a privileged process (Linux: one with the B<CAP_CHOWN> capability) may "
2542 "change the owner of a file.  The owner of a file may change the group of the "
2543 "file to any group of which that owner is a member.  A privileged process "
2544 "(Linux: with B<CAP_CHOWN>)  may change the group arbitrarily."
2545 msgstr ""
2546 "特権を持つプロセス (Linux では B<CAP_CHOWN> ケーパビリティ (capability) を持"
2547 "つプロセス) だけが ファイルの所有者を変更できる。 ファイルの所有者は、その所"
2548 "有者が属しているグループのいずれかに ファイルのグループを変更することができ"
2549 "る。 特権 (Linux では B<CAP_CHOWN>)  を持つプロセスは、任意のグループに変更で"
2550 "きる。"
2551
2552 #. type: Plain text
2553 #: build/C/man2/chown.2:125
2554 msgid ""
2555 "If the I<owner> or I<group> is specified as -1, then that ID is not changed."
2556 msgstr ""
2557 "I<owner> または I<group> に -1 が指定された場合、それらの ID は変更されない。"
2558
2559 #.  In Linux 2.0 kernels, superuser was like everyone else
2560 #.  In 2.2, up to 2.2.12, these bits were not cleared for superuser.
2561 #.  Since 2.2.13, superuser is once more like everyone else.
2562 #. type: Plain text
2563 #: build/C/man2/chown.2:145
2564 msgid ""
2565 "When the owner or group of an executable file are changed by an unprivileged "
2566 "user the B<S_ISUID> and B<S_ISGID> mode bits are cleared.  POSIX does not "
2567 "specify whether this also should happen when root does the B<chown>(); the "
2568 "Linux behavior depends on the kernel version.  In case of a non-group-"
2569 "executable file (i.e., one for which the B<S_IXGRP> bit is not set) the "
2570 "B<S_ISGID> bit indicates mandatory locking, and is not cleared by a "
2571 "B<chown>()."
2572 msgstr ""
2573 "非特権ユーザーにより実行ファイルの所有者またはグループが 変更された場合は "
2574 "B<S_ISUID> と B<ISGID> モードビットはクリアされる。 POSIX はこの動作やルート"
2575 "が B<chown>()  を行なった場合については特に指定されていない。 Linux における"
2576 "動作はカーネルのバージョンに依存する。 非グループ実行ファイル (B<S_IXGRP> "
2577 "ビットが設定されていないファイル) の場合には B<S_ISGID> ビットは強制ロック "
2578 "(mandatory locking) を意味している。 そしてそれは B<chown>()  ではクリアでき"
2579 "ない。"
2580
2581 #. type: SS
2582 #: build/C/man2/chown.2:145
2583 #, no-wrap
2584 msgid "fchownat()"
2585 msgstr "fchownat()"
2586
2587 #. type: Plain text
2588 #: build/C/man2/chown.2:151
2589 msgid ""
2590 "The B<fchownat>()  system call operates in exactly the same way as "
2591 "B<chown>(), except for the differences described here."
2592 msgstr ""
2593 "B<fchownat>() システムコールは B<chown>() と全く同様に動作するが、以下で説明"
2594 "する点が異なる。"
2595
2596 #. type: Plain text
2597 #: build/C/man2/chown.2:161
2598 msgid ""
2599 "If the pathname given in I<pathname> is relative, then it is interpreted "
2600 "relative to the directory referred to by the file descriptor I<dirfd> "
2601 "(rather than relative to the current working directory of the calling "
2602 "process, as is done by B<chown>()  for a relative pathname)."
2603 msgstr ""
2604 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
2605 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
2606 "(B<chown>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
2607 "ワーキングディレクトリに対する相対パスではない)。"
2608
2609 #. type: Plain text
2610 #: build/C/man2/chown.2:173
2611 msgid ""
2612 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
2613 "then I<pathname> is interpreted relative to the current working directory of "
2614 "the calling process (like B<chown>())."
2615 msgstr ""
2616 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
2617 "の場合、 (B<chown>() と同様に) I<pathname> は呼び出したプロセスのカレントワー"
2618 "キングディレクトリに対する相対パスと解釈される。"
2619
2620 #. type: Plain text
2621 #: build/C/man2/chown.2:184
2622 msgid ""
2623 "The I<flags> argument is a bit mask created by ORing together 0 or more of "
2624 "the following values;"
2625 msgstr ""
2626 "I<flags> 引き数は、以下に示す値の 0 個以上の OR (論理和) をとって作成される "
2627 "ビットマスクである。"
2628
2629 #. type: TP
2630 #: build/C/man2/chown.2:184
2631 #, no-wrap
2632 msgid "B<AT_EMPTY_PATH> (since Linux 2.6.39)"
2633 msgstr "B<AT_EMPTY_PATH> (Linux 2.6.39 以降)"
2634
2635 #.  commit 65cfc6722361570bfe255698d9cd4dccaf47570d
2636 #.  Before glibc 2.16, defining _ATFILE_SOURCE sufficed
2637 #. type: Plain text
2638 #: build/C/man2/chown.2:207
2639 msgid ""
2640 "If I<pathname> is an empty string, operate on the file referred to by "
2641 "I<dirfd> (which may have been obtained using the B<open>(2)  B<O_PATH> "
2642 "flag).  In this case, I<dirfd> can refer to any type of file, not just a "
2643 "directory.  If I<dirfd> is B<AT_FDCWD>, the call operates on the current "
2644 "working directory.  This flag is Linux-specific; define B<_GNU_SOURCE> to "
2645 "obtain its definition."
2646 msgstr ""
2647 "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して操作を行う "
2648 "(I<dirfd> は B<open>(2) B<O_PATH> フラグを使って取得することができる)。この場"
2649 "合、 I<dirfd> は、ディレクトリだけでなく、任意のタイプのファイルを参照するこ"
2650 "とができる。 I<dirfd> が B<AT_FDCWD> の場合、この呼び出しはカレントワーキング"
2651 "ディレクトリに対して操作を行う。このフラグは Linux 固有であり、その定義を得る"
2652 "には B<_GNU_SOURCE> を定義すること。"
2653
2654 #. type: Plain text
2655 #: build/C/man2/chown.2:219
2656 msgid ""
2657 "If I<pathname> is a symbolic link, do not dereference it: instead operate on "
2658 "the link itself, like B<lchown>().  (By default, B<fchownat>()  dereferences "
2659 "symbolic links, like B<chown>().)"
2660 msgstr ""
2661 "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、"
2662 "B<lchown>() 同様、リンク自身に対して操作を行う。(デフォルトでは "
2663 "B<fchownat>() は B<chown>() と同様にシンボリックリンクの展開を行う。)"
2664
2665 #. type: Plain text
2666 #: build/C/man2/chown.2:224
2667 msgid "See B<openat>(2)  for an explanation of the need for B<fchownat>()."
2668 msgstr "B<fchownat>() の必要性についての説明については B<openat>(2) を参照。"
2669
2670 #. type: Plain text
2671 #: build/C/man2/chown.2:236
2672 msgid "The more general errors for B<chown>()  are listed below."
2673 msgstr "B<chown>()  でごく一般的なエラーを以下に挙げる:"
2674
2675 #. type: Plain text
2676 #: build/C/man2/chown.2:266
2677 msgid ""
2678 "The calling process did not have the required permissions (see above) to "
2679 "change owner and/or group."
2680 msgstr ""
2681 "呼び出したプロセスに所有者またはグループ (もしくはその両方) を変更するために "
2682 "要求される許可 (上記を参照) がない。"
2683
2684 #. type: Plain text
2685 #: build/C/man2/chown.2:273
2686 msgid "The general errors for B<fchown>()  are listed below:"
2687 msgstr "B<fchown>()  で一般的なエラーを以下に挙げる:"
2688
2689 #. type: Plain text
2690 #: build/C/man2/chown.2:276
2691 msgid "The descriptor is not valid."
2692 msgstr "ディスクリプターが有効でない。"
2693
2694 #. type: Plain text
2695 #: build/C/man2/chown.2:279
2696 msgid "A low-level I/O error occurred while modifying the inode."
2697 msgstr "i ノード (inode) を変更する際に低レベル I/O エラーが発生した。"
2698
2699 #. type: Plain text
2700 #: build/C/man2/chown.2:295
2701 msgid ""
2702 "The same errors that occur for B<chown>()  can also occur for "
2703 "B<fchownat>().  The following additional errors can occur for B<fchownat>():"
2704 msgstr ""
2705 "B<chown>() で発生するのと同じエラーが B<fchownat>() でも起こる。 "
2706 "B<fchownat>() では以下のエラーも発生する。"
2707
2708 #. type: Plain text
2709 #: build/C/man2/chown.2:313
2710 msgid ""
2711 "B<fchownat>()  was added to Linux in kernel 2.6.16; library support was "
2712 "added to glibc in version 2.4."
2713 msgstr ""
2714 "B<fchownat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサ"
2715 "ポートはバージョン 2.4 以降の glibc で利用できる。"
2716
2717 #. type: Plain text
2718 #: build/C/man2/chown.2:318
2719 msgid ""
2720 "B<chown>(), B<fchown>(), B<lchown>(): 4.4BSD, SVr4, POSIX.1-2001, "
2721 "POSIX.1-2008."
2722 msgstr ""
2723 "B<chown>(), B<fchown>(), B<lchown>(): 4.4BSD, SVr4, POSIX.1-2001, "
2724 "POSIX.1-2008."
2725
2726 #.  chown():
2727 #.  SVr4 documents EINVAL, EINTR, ENOLINK and EMULTIHOP returns, but no
2728 #.  ENOMEM.  POSIX.1 does not document ENOMEM or ELOOP error conditions.
2729 #.  fchown():
2730 #.  SVr4 documents additional EINVAL, EIO, EINTR, and ENOLINK
2731 #.  error conditions.
2732 #. type: Plain text
2733 #: build/C/man2/chown.2:327
2734 msgid ""
2735 "The 4.4BSD version can be used only by the superuser (that is, ordinary "
2736 "users cannot give away files)."
2737 msgstr ""
2738 "4.4BSD 版ではスーパーユーザーのみが使用できる (つまり、普通のユーザーはファイ"
2739 "ルを手放すことはできない)。"
2740
2741 #. type: Plain text
2742 #: build/C/man2/chown.2:330
2743 msgid "B<fchownat>(): POSIX.1-2008."
2744 msgstr "B<fchownat>(): POSIX.1-2008."
2745
2746 #. type: SS
2747 #: build/C/man2/chown.2:331
2748 #, no-wrap
2749 msgid "Ownership of new files"
2750 msgstr "新しいファイルの所有権"
2751
2752 #. type: Plain text
2753 #: build/C/man2/chown.2:353
2754 msgid ""
2755 "When a new file is created (by, for example, B<open>(2)  or B<mkdir>(2)), "
2756 "its owner is made the same as the filesystem user ID of the creating "
2757 "process.  The group of the file depends on a range of factors, including the "
2758 "type of filesystem, the options used to mount the filesystem, and whether or "
2759 "not the set-group-ID permission bit is enabled on the parent directory.  If "
2760 "the filesystem supports the I<-o\\ grpid> (or, synonymously I<-o\\ "
2761 "bsdgroups>)  and I<-o\\ nogrpid> (or, synonymously I<-o\\ sysvgroups>)  "
2762 "B<mount>(8)  options, then the rules are as follows:"
2763 msgstr ""
2764 "(B<open>(2)  や B<mkdir>(2)  などにより) 新しいファイルが作成されるとき、 そ"
2765 "の所有者は呼び出したプロセスのファイルシステムユーザ ID と 同じに設定され"
2766 "る。 そのファイルのグループはいくつかの要因により決定される。 その要因として"
2767 "は、 ファイルシステムの種類、そのファイルシステムのマウント時に 使用されたオ"
2768 "プション、親ディレクトリで set-group-ID 許可ビットが 有効になっているどうか、"
2769 "がある。 ファイルシステムが B<mount>(8)  オプションの I<-o\\ grpid> (I<-o\\ "
2770 "bsdgroups> も同義語) と I<-o\\ nogrpid> (I<-o sysvgroups> も同義語) に対応し"
2771 "ている場合、ルールは以下の通りとなる。"
2772
2773 #. type: Plain text
2774 #: build/C/man2/chown.2:358
2775 msgid ""
2776 "If the filesystem is mounted with I<-o\\ grpid>, then the group of a new "
2777 "file is made the same as that of the parent directory."
2778 msgstr ""
2779 "ファイルシステムが I<-o\\ grpid> 付きでマウントされている場合、新しいファイル"
2780 "のグループは 親ディレクトリのグループと同じになる。"
2781
2782 #. type: Plain text
2783 #: build/C/man2/chown.2:364
2784 msgid ""
2785 "If the filesystem is mounted with I<-o\\ nogrpid> and the set-group-ID bit "
2786 "is disabled on the parent directory, then the group of a new file is made "
2787 "the same as the process's filesystem GID."
2788 msgstr ""
2789 "ファイルシステムが I<-o\\ nogrpid> 付きでマウントされており、親ディレクトリで"
2790 "は set-group-ID ビットが 無効になっている場合、新しいファイルのグループは プ"
2791 "ロセスのファイルシステム GID と同じになる。"
2792
2793 #. type: Plain text
2794 #: build/C/man2/chown.2:370
2795 msgid ""
2796 "If the filesystem is mounted with I<-o\\ nogrpid> and the set-group-ID bit "
2797 "is enabled on the parent directory, then the group of a new file is made the "
2798 "same as that of the parent directory."
2799 msgstr ""
2800 "ファイルシステムが I<-o\\ nogrpid> 付きでマウントされており、親ディレクトリで"
2801 "は set-group-ID ビットが 有効になっている場合、新しいファイルのグループは 親"
2802 "ディレクトリのグループと同じになる。"
2803
2804 #. type: Plain text
2805 #: build/C/man2/chown.2:380
2806 msgid ""
2807 "As at Linux 2.6.25, the I<-o\\ grpid> and I<-o\\ nogrpid> mount options are "
2808 "supported by ext2, ext3, ext4, and XFS.  Filesystems that don't support "
2809 "these mount options follow the I<-o\\ nogrpid> rules."
2810 msgstr ""
2811 "Linux 2.6.25 では、マウントオプション I<-o\\ grpid> と I<-o\\ nogrpid> に対応"
2812 "しているファイルシステムは ext2, ext3, ext4, XFS である。 これらのマウントオ"
2813 "プションに対応していないファイルシステムでは、 I<-o\\ nogrpid> に関するルール"
2814 "が適用される。"
2815
2816 #. type: Plain text
2817 #: build/C/man2/chown.2:395
2818 msgid ""
2819 "On older kernels where B<fchownat>()  is unavailable, the glibc wrapper "
2820 "function falls back to the use of B<chown>()  and B<lchown>().  When "
2821 "I<pathname> is a relative pathname, glibc constructs a pathname based on the "
2822 "symbolic link in I</proc/self/fd> that corresponds to the I<dirfd> argument."
2823 msgstr ""
2824 "B<fchownat>() が利用できない古いカーネルでは、 glibc ラッパー関数は "
2825 "B<chown>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
2826 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
2827 "に基づいてパス名を構成する。"
2828
2829 #. type: SS
2830 #: build/C/man2/chown.2:395
2831 #, no-wrap
2832 msgid "NFS"
2833 msgstr "NFS"
2834
2835 #. type: Plain text
2836 #: build/C/man2/chown.2:408
2837 msgid ""
2838 "The B<chown>()  semantics are deliberately violated on NFS filesystems which "
2839 "have UID mapping enabled.  Additionally, the semantics of all system calls "
2840 "which access the file contents are violated, because B<chown>()  may cause "
2841 "immediate access revocation on already open files.  Client side caching may "
2842 "lead to a delay between the time where ownership have been changed to allow "
2843 "access for a user and the time where the file can actually be accessed by "
2844 "the user on other clients."
2845 msgstr ""
2846 "B<chown>()  方式は UID マッピングを使用した NFS ファイルシステムを侵害する。 "
2847 "さらにファイルの内容にアクセスする全てのシステムコールを侵害する。 これは "
2848 "B<chown>()  が既にオープンされたファイルに対する アクセスをただちに取り消すこ"
2849 "とによる。 クライアント側のキャッシュにより所有権が変更されて ユーザーのアク"
2850 "セスが許した時点と、実際に他のクライアントでユーザーによって ファイルにアクセ"
2851 "スできる時点との間に時間差があるかもしれない。"
2852
2853 #. type: SS
2854 #: build/C/man2/chown.2:408
2855 #, no-wrap
2856 msgid "Historical details"
2857 msgstr "歴史的な詳細"
2858
2859 #. type: Plain text
2860 #: build/C/man2/chown.2:427
2861 msgid ""
2862 "The original Linux B<chown>(), B<fchown>(), and B<lchown>()  system calls "
2863 "supported only 16-bit user and group IDs.  Subsequently, Linux 2.4 added "
2864 "B<chown32>(), B<fchown32>(), and B<lchown32>(), supporting 32-bit IDs.  The "
2865 "glibc B<chown>(), B<fchown>(), and B<lchown>()  wrapper functions "
2866 "transparently deal with the variations across kernel versions."
2867 msgstr ""
2868 "元々の Linux の B<chown>(), B<fchown>(), B<lchown>() システムコールは、\n"
2869 "16 ビットのユーザ ID とグループ ID だけに対応していた。\n"
2870 "その後、 32 ビットの ID に対応した B<chown32>(), B<fchown32>(), "
2871 "B<lchown32>()\n"
2872 "が Linux 2.4 で追加された。\n"
2873 "B<chown>(), B<fchown>(), and B<lchown>() の glibc のラッパー関数は、\n"
2874 "カーネルのバージョンによる違いを吸収している。"
2875
2876 #. type: Plain text
2877 #: build/C/man2/chown.2:442
2878 msgid ""
2879 "In versions of Linux prior to 2.1.81 (and distinct from 2.1.46), B<chown>()  "
2880 "did not follow symbolic links.  Since Linux 2.1.81, B<chown>()  does follow "
2881 "symbolic links, and there is a new system call B<lchown>()  that does not "
2882 "follow symbolic links.  Since Linux 2.1.86, this new call (that has the same "
2883 "semantics as the old B<chown>())  has got the same syscall number, and "
2884 "B<chown>()  got the newly introduced number."
2885 msgstr ""
2886 "Linux の 2.1.81 より前のバージョン (特に 2.1.46 以前) では、 B<chown>()  はシ"
2887 "ンボリックリンクを追跡しない。 Linux 2.1.81 以降では B<chown>()  はシンボリッ"
2888 "クリンクを追跡し、新たなシステムコール B<lchown>()  はシンボリックリンクを追"
2889 "跡しない。 Linux 2.1.86 以降ではこの新しいコール (古い B<chown>()  と全く同じ"
2890 "動作を行なう) は同じシステムコール番号を持ち B<chown>()  は新しく導入された番"
2891 "号を持つ。"
2892
2893 #. type: Plain text
2894 #: build/C/man2/chown.2:451
2895 msgid ""
2896 "The following program changes the ownership of the file named in its second "
2897 "command-line argument to the value specified in its first command-line "
2898 "argument.  The new owner can be specified either as a numeric user ID, or as "
2899 "a username (which is converted to a user ID by using B<getpwnam>(3)  to "
2900 "perform a lookup in the system password file)."
2901 msgstr ""
2902 "以下のプログラムは、 二つ目のコマンドライン引き数で指定された名前のファイルの"
2903 "所有者を、 一つ目のコマンドライン引き数で指定された値に変更する。 新しい所有"
2904 "者は、数字のユーザ ID かユーザ名のいずれかで指定できる (ユーザ名で指定した場"
2905 "合には、 B<getpwnam>(3)  を使ってシステムのパスワードファイルの検索が行わ"
2906 "れ、 ユーザ ID への変換が行われる)。"
2907
2908 #. type: SS
2909 #: build/C/man2/chown.2:451
2910 #, no-wrap
2911 msgid "Program source"
2912 msgstr "プログラムのソース"
2913
2914 #. type: Plain text
2915 #: build/C/man2/chown.2:457
2916 #, no-wrap
2917 msgid ""
2918 "#include E<lt>pwd.hE<gt>\n"
2919 "#include E<lt>stdio.hE<gt>\n"
2920 "#include E<lt>stdlib.hE<gt>\n"
2921 "#include E<lt>unistd.hE<gt>\n"
2922 msgstr ""
2923 "#include E<lt>pwd.hE<gt>\n"
2924 "#include E<lt>stdio.hE<gt>\n"
2925 "#include E<lt>stdlib.hE<gt>\n"
2926 "#include E<lt>unistd.hE<gt>\n"
2927
2928 #. type: Plain text
2929 #: build/C/man2/chown.2:464
2930 #, no-wrap
2931 msgid ""
2932 "int\n"
2933 "main(int argc, char *argv[])\n"
2934 "{\n"
2935 "    uid_t uid;\n"
2936 "    struct passwd *pwd;\n"
2937 "    char *endptr;\n"
2938 msgstr ""
2939 "int\n"
2940 "main(int argc, char *argv[])\n"
2941 "{\n"
2942 "    uid_t uid;\n"
2943 "    struct passwd *pwd;\n"
2944 "    char *endptr;\n"
2945
2946 #. type: Plain text
2947 #: build/C/man2/chown.2:469
2948 #, no-wrap
2949 msgid ""
2950 "    if (argc != 3 || argv[1][0] == \\(aq\\e0\\(aq) {\n"
2951 "        fprintf(stderr, \"%s E<lt>ownerE<gt> E<lt>fileE<gt>\\en\", argv[0]);\n"
2952 "        exit(EXIT_FAILURE);\n"
2953 "    }\n"
2954 msgstr ""
2955 "    if (argc != 3 || argv[1][0] == \\(aq\\e0\\(aq) {\n"
2956 "        fprintf(stderr, \"%s E<lt>ownerE<gt> E<lt>fileE<gt>\\en\", argv[0]);\n"
2957 "        exit(EXIT_FAILURE);\n"
2958 "    }\n"
2959
2960 #. type: Plain text
2961 #: build/C/man2/chown.2:471
2962 #, no-wrap
2963 msgid "    uid = strtol(argv[1], &endptr, 10);  /* Allow a numeric string */\n"
2964 msgstr "    uid = strtol(argv[1], &endptr, 10);  /* Allow a numeric string */\n"
2965
2966 #. type: Plain text
2967 #: build/C/man2/chown.2:478
2968 #, no-wrap
2969 msgid ""
2970 "    if (*endptr != \\(aq\\e0\\(aq) {         /* Was not pure numeric string */\n"
2971 "        pwd = getpwnam(argv[1]);   /* Try getting UID for username */\n"
2972 "        if (pwd == NULL) {\n"
2973 "            perror(\"getpwnam\");\n"
2974 "            exit(EXIT_FAILURE);\n"
2975 "        }\n"
2976 msgstr ""
2977 "    if (*endptr != \\(aq\\e0\\(aq) {         /* Was not pure numeric string */\n"
2978 "        pwd = getpwnam(argv[1]);   /* Try getting UID for username */\n"
2979 "        if (pwd == NULL) {\n"
2980 "            perror(\"getpwnam\");\n"
2981 "            exit(EXIT_FAILURE);\n"
2982 "        }\n"
2983
2984 #. type: Plain text
2985 #: build/C/man2/chown.2:481
2986 #, no-wrap
2987 msgid ""
2988 "        uid = pwd-E<gt>pw_uid;\n"
2989 "    }\n"
2990 msgstr ""
2991 "        uid = pwd-E<gt>pw_uid;\n"
2992 "    }\n"
2993
2994 #. type: Plain text
2995 #: build/C/man2/chown.2:486
2996 #, no-wrap
2997 msgid ""
2998 "    if (chown(argv[2], uid, -1) == -1) {\n"
2999 "        perror(\"chown\");\n"
3000 "        exit(EXIT_FAILURE);\n"
3001 "    }\n"
3002 msgstr ""
3003 "    if (chown(argv[2], uid, -1) == -1) {\n"
3004 "        perror(\"chown\");\n"
3005 "        exit(EXIT_FAILURE);\n"
3006 "    }\n"
3007
3008 #. type: Plain text
3009 #: build/C/man2/chown.2:489 build/C/man2/execve.2:677
3010 #: build/C/man3/getopt.3:430 build/C/man3/getopt.3:515
3011 #, no-wrap
3012 msgid ""
3013 "    exit(EXIT_SUCCESS);\n"
3014 "}\n"
3015 msgstr ""
3016 "    exit(EXIT_SUCCESS);\n"
3017 "}\n"
3018
3019 #. type: Plain text
3020 #: build/C/man2/chown.2:495
3021 msgid "B<chmod>(2), B<flock>(2), B<path_resolution>(7), B<symlink>(7)"
3022 msgstr "B<chmod>(2), B<flock>(2), B<path_resolution>(7), B<symlink>(7)"
3023
3024 #. type: TH
3025 #: build/C/man2/chroot.2:33
3026 #, no-wrap
3027 msgid "CHROOT"
3028 msgstr "CHROOT"
3029
3030 #. type: TH
3031 #: build/C/man2/chroot.2:33 build/C/man3/gethostid.3:29
3032 #, no-wrap
3033 msgid "2010-09-20"
3034 msgstr "2010-09-20"
3035
3036 #. type: Plain text
3037 #: build/C/man2/chroot.2:36
3038 msgid "chroot - change root directory"
3039 msgstr "chroot - ルートディレクトリを変更する"
3040
3041 #. type: Plain text
3042 #: build/C/man2/chroot.2:40
3043 msgid "B<int chroot(const char *>I<path>B<);>"
3044 msgstr "B<int chroot(const char *>I<path>B<);>"
3045
3046 #. type: Plain text
3047 #: build/C/man2/chroot.2:47
3048 msgid "B<chroot>():"
3049 msgstr "B<chroot>():"
3050
3051 #. type: TP
3052 #: build/C/man2/chroot.2:50
3053 #, no-wrap
3054 msgid "Since glibc 2.2.2:"
3055 msgstr "glibc 2.2.2 以降:"
3056
3057 #. type: Plain text
3058 #: build/C/man2/chroot.2:57
3059 #, no-wrap
3060 msgid ""
3061 "_BSD_SOURCE ||\n"
3062 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
3063 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
3064 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
3065 msgstr ""
3066 "_BSD_SOURCE ||\n"
3067 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
3068 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
3069 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
3070
3071 #. type: Plain text
3072 #: build/C/man2/chroot.2:60
3073 msgid "Before glibc 2.2.2: none"
3074 msgstr "glibc 2.2.2 より前: なし"
3075
3076 #. type: Plain text
3077 #: build/C/man2/chroot.2:69
3078 msgid ""
3079 "B<chroot>()  changes the root directory of the calling process to that "
3080 "specified in I<path>.  This directory will be used for pathnames beginning "
3081 "with I</>.  The root directory is inherited by all children of the calling "
3082 "process."
3083 msgstr ""
3084 "B<chroot>()  は、呼び出し元プロセスのルートディレクトリを I<path> で指定され"
3085 "たディレクトリに変更する。 このディレクトリ以下が I</> から始まるパス名として"
3086 "使われる。 このルートディレクトリは呼び出し元のプロセスの全ての子プロセスに受"
3087 "け継がれる。"
3088
3089 #. type: Plain text
3090 #: build/C/man2/chroot.2:74
3091 msgid ""
3092 "Only a privileged process (Linux: one with the B<CAP_SYS_CHROOT> capability) "
3093 "may call B<chroot>()."
3094 msgstr ""
3095 "特権プロセス (Linux では、 B<CAP_SYS_CHROOT> ケーパビリティを持つプロセス) の"
3096 "みが B<chroot>()  を呼び出すことができる。"
3097
3098 #. type: Plain text
3099 #: build/C/man2/chroot.2:77
3100 msgid ""
3101 "This call changes an ingredient in the pathname resolution process and does "
3102 "nothing else."
3103 msgstr ""
3104 "このコールはパス名解決の過程で構成要素を変更するのみで、 その他には何も行わな"
3105 "い。"
3106
3107 #. type: Plain text
3108 #: build/C/man2/chroot.2:83
3109 msgid ""
3110 "This call does not change the current working directory, so that after the "
3111 "call \\(aqI<.>\\(aq can be outside the tree rooted at \\(aqI</>\\(aq.  In "
3112 "particular, the superuser can escape from a \"chroot jail\" by doing:"
3113 msgstr ""
3114 "このコールは現在の作業ディレクトリ (working directory) を変更しない。 そのた"
3115 "め、このコールの後に \\(aqI<.>\\(aq が \\(aqI</>\\(aq を 根とするツリーの外に"
3116 "なる場合がある。 特に、スーパーユーザーは以下のようにすることで \"chroot jail"
3117 "\" から逃げ出せてしまう。"
3118
3119 #. type: Plain text
3120 #: build/C/man2/chroot.2:86
3121 #, no-wrap
3122 msgid "    mkdir foo; chroot foo; cd ..\n"
3123 msgstr "    mkdir foo; chroot foo; cd ..\n"
3124
3125 #. type: Plain text
3126 #: build/C/man2/chroot.2:90
3127 msgid ""
3128 "This call does not close open file descriptors, and such file descriptors "
3129 "may allow access to files outside the chroot tree."
3130 msgstr ""
3131 "このコールはオープンファイルディスクリプタをクローズしないので、 このような"
3132 "ファイルディスクリプタは chroot ツリーの外にある ファイルにアクセスできる。"
3133
3134 #. type: Plain text
3135 #: build/C/man2/chroot.2:98
3136 msgid ""
3137 "Depending on the filesystem, other errors can be returned.  The more general "
3138 "errors are listed below:"
3139 msgstr ""
3140 "ファイルシステムによっては他のエラーが返される事がある。 一般的なエラーを以下"
3141 "に挙げる:"
3142
3143 #. type: Plain text
3144 #: build/C/man2/chroot.2:134
3145 msgid "The caller has insufficient privilege."
3146 msgstr "呼び出し側に十分な特権がない。"
3147
3148 #.  SVr4 documents additional EINTR, ENOLINK and EMULTIHOP error conditions.
3149 #.  X/OPEN does not document EIO, ENOMEM or EFAULT error conditions.
3150 #. type: Plain text
3151 #: build/C/man2/chroot.2:139
3152 msgid ""
3153 "SVr4, 4.4BSD, SUSv2 (marked LEGACY).  This function is not part of "
3154 "POSIX.1-2001."
3155 msgstr ""
3156 "SVr4, 4.4BSD, SUSv2 (但し、SUSv2 では過去の名残とされている)。 この関数は "
3157 "POSIX.1-2001 にはない。"
3158
3159 #. type: Plain text
3160 #: build/C/man2/chroot.2:145
3161 msgid ""
3162 "A child process created via B<fork>(2)  inherits its parent's root "
3163 "directory.  The root directory is left unchanged by B<execve>(2)."
3164 msgstr ""
3165 "B<fork>(2)  で作成された子プロセスは、 親プロセスのルートディレクトリを継承す"
3166 "る。 B<execve>(2)  の場合も、ルートディレクトリは変更されない。"
3167
3168 #.  FIXME . eventually say something about containers,
3169 #.  virtual servers, etc.?
3170 #. type: Plain text
3171 #: build/C/man2/chroot.2:151
3172 msgid "FreeBSD has a stronger B<jail>()  system call."
3173 msgstr "FreeBSD にはより強力な B<jail>()  システムコールがある。"
3174
3175 #. type: Plain text
3176 #: build/C/man2/chroot.2:154
3177 msgid "B<chdir>(2), B<path_resolution>(7)"
3178 msgstr "B<chdir>(2), B<path_resolution>(7)"
3179
3180 #. type: TH
3181 #: build/C/man2/close.2:35
3182 #, no-wrap
3183 msgid "CLOSE"
3184 msgstr "CLOSE"
3185
3186 #. type: TH
3187 #: build/C/man2/close.2:35
3188 #, no-wrap
3189 msgid "2013-12-30"
3190 msgstr "2013-12-30"
3191
3192 #. type: Plain text
3193 #: build/C/man2/close.2:38
3194 msgid "close - close a file descriptor"
3195 msgstr "close - ファイルディスクリプタをクローズする"
3196
3197 #. type: Plain text
3198 #: build/C/man2/close.2:43
3199 #, no-wrap
3200 msgid "B<int close(int >I<fd>B<);>\n"
3201 msgstr "B<int close(int >I<fd>B<);>\n"
3202
3203 #. type: Plain text
3204 #: build/C/man2/close.2:53
3205 msgid ""
3206 "B<close>()  closes a file descriptor, so that it no longer refers to any "
3207 "file and may be reused.  Any record locks (see B<fcntl>(2))  held on the "
3208 "file it was associated with, and owned by the process, are removed "
3209 "(regardless of the file descriptor that was used to obtain the lock)."
3210 msgstr ""
3211 "B<close>()  は、ファイルディスクリプタをクローズする。 そのディスクリプタは、"
3212 "どのファイルも参照していない状態になり、 再利用が可能になる。 そのファイル"
3213 "ディスクリプタに関連づけられたファイルに かけられたレコードロック "
3214 "(B<fcntl>(2)  参照) のうち、そのプロセスが保有しているものは、 (そのファイル"
3215 "ディスクリプタがロック取得に利用されたか どうかによらず) すべて削除される。"
3216
3217 #. type: Plain text
3218 #: build/C/man2/close.2:64
3219 msgid ""
3220 "If I<fd> is the last file descriptor referring to the underlying open file "
3221 "description (see B<open>(2)), the resources associated with the open file "
3222 "description are freed; if the descriptor was the last reference to a file "
3223 "which has been removed using B<unlink>(2), the file is deleted."
3224 msgstr ""
3225 "I<fd> が、対応するオープンファイル記述 (open file description)  (B<open>(2)  "
3226 "参照) を参照する最後のファイルディスクリプタだった場合、 オープンファイル記述"
3227 "に関連するリソースが解放される。 そのディスクリプタが、 B<unlink> を使用して"
3228 "削除 (remove) されたファイルに対する最後の参照だった場合には、 そのファイルは"
3229 "削除 (delete) される。"
3230
3231 #. type: Plain text
3232 #: build/C/man2/close.2:70
3233 msgid ""
3234 "B<close>()  returns zero on success.  On error, -1 is returned, and I<errno> "
3235 "is set appropriately."
3236 msgstr ""
3237 "B<close>()  は成功した場合は 0 を返す。 エラーが発生した場合は -1 を返して、 "
3238 "I<errno> を適切に設定する。"
3239
3240 #. type: Plain text
3241 #: build/C/man2/close.2:75
3242 msgid "I<fd> isn't a valid open file descriptor."
3243 msgstr "I<fd> が有効なオープンされたディスクリプタでない。"
3244
3245 #. type: TP
3246 #: build/C/man2/close.2:75 build/C/man2/dup.2:176 build/C/man2/fcntl.2:1531
3247 #: build/C/man2/fcntl.2:1540 build/C/man2/flock.2:122
3248 #: build/C/man2/truncate.2:134 build/C/man3/ualarm.3:85
3249 #: build/C/man3/usleep.3:83
3250 #, no-wrap
3251 msgid "B<EINTR>"
3252 msgstr "B<EINTR>"
3253
3254 #. type: Plain text
3255 #: build/C/man2/close.2:81
3256 msgid "The B<close>()  call was interrupted by a signal; see B<signal>(7)."
3257 msgstr ""
3258 "B<close>()  コールがシグナルにより中断 (interrupt) された。 B<signal>(7)  参"
3259 "照。"
3260
3261 #. type: Plain text
3262 #: build/C/man2/close.2:87 build/C/man2/fork.2:228 build/C/man3/swab.3:79
3263 #: build/C/man2/umask.2:97
3264 msgid "SVr4, 4.3BSD, POSIX.1-2001."
3265 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
3266
3267 #. type: Plain text
3268 #: build/C/man2/close.2:107
3269 msgid ""
3270 "Not checking the return value of B<close>()  is a common but nevertheless "
3271 "serious programming error.  It is quite possible that errors on a previous "
3272 "B<write>(2)  operation are first reported at the final B<close>().  Not "
3273 "checking the return value when closing the file may lead to silent loss of "
3274 "data.  This can especially be observed with NFS and with disk quota.  Note "
3275 "that the return value should only be used for diagnostics.  In particular "
3276 "B<close>()  should not be retried after an B<EINTR> since this may cause a "
3277 "reused descriptor from another thread to be closed."
3278 msgstr ""
3279 "B<close>()  の返り値のチェックはよく省略されるが、 これは深刻なプログラミング"
3280 "エラーである。 前の B<write>(2)  処理に関するエラーが最後の B<close>()  のと"
3281 "きになって初めて通知される場合がありうる。 ファイルクローズの際に返り値を"
3282 "チェックしないと、 気付かないうちにデータを失ってしまうかもしれない。 これは"
3283 "特に NFS やディスククォータを使用した場合に見られる。返り値は状態確認用にのみ"
3284 "利用すべき点に注意すること。特に、B<EINTR> 後に B<close>() を再度行うべきでは"
3285 "ない。なぜなら、これにより、別のスレッドが再利用したディスクリプタをクローズ"
3286 "してしまう可能性があるからだ。"
3287
3288 #. type: Plain text
3289 #: build/C/man2/close.2:116
3290 msgid ""
3291 "A successful close does not guarantee that the data has been successfully "
3292 "saved to disk, as the kernel defers writes.  It is not common for a "
3293 "filesystem to flush the buffers when the stream is closed.  If you need to "
3294 "be sure that the data is physically stored, use B<fsync>(2).  (It will "
3295 "depend on the disk hardware at this point.)"
3296 msgstr ""
3297 "クローズに成功しても、データがディスクに保存されたかどうかは 保証されない "
3298 "(カーネルが書きこみを遅延させることがあるためである)。 ストリームがクローズさ"
3299 "れるときにバッファをフラッシュするかどうかは、 ファイルシステムによって異な"
3300 "る。 データが物理的に保存されることを保証する必要がある場合には、 "
3301 "B<fsync>(2)  を使用すること (B<fsync>(3)  を行った時点で、データの保存はディ"
3302 "スクのハードウェアに依存する 問題となる)。"
3303
3304 #.  Date: Tue, 4 Sep 2007 13:57:35 +0200
3305 #.  From: Fredrik Noring <noring@nocrew.org>
3306 #.  One such race involves signals and ERESTARTSYS. If a file descriptor
3307 #.  in use by a system call is closed and then reused by e.g. an
3308 #.  independent open() in some unrelated thread, before the original system
3309 #.  call has restarted after ERESTARTSYS, the original system call will
3310 #.  later restart with the reused file descriptor. This is most likely a
3311 #.  serious programming error.
3312 #. type: Plain text
3313 #: build/C/man2/close.2:131
3314 msgid ""
3315 "It is probably unwise to close file descriptors while they may be in use by "
3316 "system calls in other threads in the same process.  Since a file descriptor "
3317 "may be reused, there are some obscure race conditions that may cause "
3318 "unintended side effects."
3319 msgstr ""
3320 "同じプロセス内の他のスレッドのシステムコールが使用している可能性がある間に、 "
3321 "ファイルディスクリプタをクローズするのは、おそらく賢明ではないだろう。 ファイ"
3322 "ルディスクリプタは再利用されるかもしれないので、 あいまいな競合条件となること"
3323 "があり、意図しない副作用の原因となりうる。"
3324
3325 #. type: Plain text
3326 #: build/C/man2/close.2:138
3327 msgid ""
3328 "B<fcntl>(2), B<fsync>(2), B<open>(2), B<shutdown>(2), B<unlink>(2), "
3329 "B<fclose>(3)"
3330 msgstr ""
3331 "B<fcntl>(2), B<fsync>(2), B<open>(2), B<shutdown>(2), B<unlink>(2), "
3332 "B<fclose>(3)"
3333
3334 #. type: TH
3335 #: build/C/man3/confstr.3:32
3336 #, no-wrap
3337 msgid "CONFSTR"
3338 msgstr "CONFSTR"
3339
3340 #. type: TH
3341 #: build/C/man3/confstr.3:32
3342 #, no-wrap
3343 msgid "2014-03-20"
3344 msgstr "2014-03-20"
3345
3346 #. type: TH
3347 #: build/C/man3/confstr.3:32 build/C/man3/daemon.3:36 build/C/man3/exec.3:41
3348 #: build/C/man3/fpathconf.3:41 build/C/man3/get_nprocs_conf.3:26
3349 #: build/C/man3/getcwd.3:32 build/C/man3/getlogin.3:28
3350 #: build/C/man3/getopt.3:41 build/C/man3/getumask.3:28
3351 #: build/C/man3/getusershell.3:30 build/C/man3/lockf.3:28
3352 #: build/C/man3/sleep.3:26 build/C/man3/sysconf.3:27
3353 #: build/C/man3/tcgetpgrp.3:25
3354 #, no-wrap
3355 msgid "GNU"
3356 msgstr "GNU"
3357
3358 #. type: Plain text
3359 #: build/C/man3/confstr.3:35
3360 msgid "confstr - get configuration dependent string variables"
3361 msgstr "confstr - コンフィグレーションに依存した文字列変数の取得"
3362
3363 #. type: Plain text
3364 #: build/C/man3/confstr.3:40
3365 #, no-wrap
3366 msgid "B<size_t confstr(int >I<name>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
3367 msgstr "B<size_t confstr(int >I<name>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
3368
3369 #. type: Plain text
3370 #: build/C/man3/confstr.3:49
3371 msgid "B<confstr>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
3372 msgstr "B<confstr>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
3373
3374 #. type: Plain text
3375 #: build/C/man3/confstr.3:52
3376 msgid ""
3377 "B<confstr>()  gets the value of configuration-dependent string variables."
3378 msgstr ""
3379 "B<confstr>()  はコンフィグレーションに依存した文字列変数の値を取得する。"
3380
3381 #. type: Plain text
3382 #: build/C/man3/confstr.3:57
3383 msgid ""
3384 "The I<name> argument is the system variable to be queried.  The following "
3385 "variables are supported:"
3386 msgstr ""
3387 "引き数 I<name> は、問い合わせ内容を表すシステム変数である。 以下の変数がサ"
3388 "ポートされている。"
3389
3390 #. type: TP
3391 #: build/C/man3/confstr.3:57
3392 #, no-wrap
3393 msgid "B<_CS_GNU_LIBC_VERSION> (GNU C library only; since glibc 2.3.2)"
3394 msgstr "B<_CS_GNU_LIBC_VERSION> (GNU C library 限定; glibc 2.3.2 以降)"
3395
3396 #. type: Plain text
3397 #: build/C/man3/confstr.3:61
3398 msgid ""
3399 "A string which identifies the GNU C library version on this system (e.g, "
3400 "\"glibc 2.3.4\")."
3401 msgstr ""
3402 "そのシステムの GNU C ライブラリのバージョンを示す文字列 (例えば \"glibc "
3403 "2.3.4\")。"
3404
3405 #. type: TP
3406 #: build/C/man3/confstr.3:61
3407 #, no-wrap
3408 msgid "B<_CS_GNU_LIBPTHREAD_VERSION> (GNU C library only; since glibc 2.3.2)"
3409 msgstr "B<_CS_GNU_LIBPTHREAD_VERSION> (GNU C library 限定; glibc 2.3.2 以降)"
3410
3411 #. type: Plain text
3412 #: build/C/man3/confstr.3:65
3413 msgid ""
3414 "A string which identifies the POSIX implementation supplied by this C "
3415 "library (e.g, \"NPTL 2.3.4\" or \"linuxthreads-0.10\")."
3416 msgstr ""
3417 "その C ライブラリが提供している POSIX 実装を示す文字列 (例えば \"NPTL "
3418 "2.3.4\" や \"linuxthreads-0.10\")。"
3419
3420 #. type: TP
3421 #: build/C/man3/confstr.3:65
3422 #, no-wrap
3423 msgid "B<_CS_PATH>"
3424 msgstr "B<_CS_PATH>"
3425
3426 #. type: Plain text
3427 #: build/C/man3/confstr.3:71
3428 msgid ""
3429 "A value for the B<PATH> variable which indicates where all the POSIX.2 "
3430 "standard utilities can be found."
3431 msgstr "すべての POSIX.2 標準ユーティリティが見つかるような B<PATH> の値。"
3432
3433 #. type: Plain text
3434 #: build/C/man3/confstr.3:87
3435 msgid ""
3436 "If I<buf> is not NULL and I<len> is not zero, B<confstr>()  copies the value "
3437 "of the string to I<buf> truncated to I<len - 1> bytes if necessary, with a "
3438 "null byte (\\(aq\\e0\\(aq) as terminator.  This can be detected by comparing "
3439 "the return value of B<confstr>()  against I<len>."
3440 msgstr ""
3441 "I<buf> が NULL でなく、かつ I<len> が 0 でなければ B<confstr>() は取得\n"
3442 "した文字列の内容を I<buf> にコピーする。必要ならば長さが I<len - 1> \n"
3443 "バイトに切り捨てられて、NULL バイト (\\(aq\\e0\\(aq) で終端される。\n"
3444 "末尾が切り捨てられたかどうかを判定するには、 B<confstr>() の返り値を\n"
3445 "I<len> と比較すればよい。"
3446
3447 #. type: Plain text
3448 #: build/C/man3/confstr.3:95
3449 msgid ""
3450 "If I<len> is zero and I<buf> is NULL, B<confstr>()  just returns the value "
3451 "as defined below."
3452 msgstr ""
3453 "I<len> が 0 で I<buf> が NULL ならば、 B<confstr>()  は以下で定義された値 (訳"
3454 "注: 切り捨てる前の、取得した文字列の長さ) を返す。"
3455
3456 #. type: Plain text
3457 #: build/C/man3/confstr.3:107
3458 msgid ""
3459 "If I<name> is a valid configuration variable, B<confstr>()  returns the "
3460 "number of bytes (including the terminating null byte)  that would be "
3461 "required to hold the entire value of that variable.  This value may be "
3462 "greater than I<len>, which means that the value in I<buf> is truncated."
3463 msgstr ""
3464 "I<name> が有効なコンフィギュレーション変数の場合、 B<confstr>()  はその変数の"
3465 "値全体を保持するのに必要であったバイト数を返す (文字列終端のヌルバイトも含"
3466 "む)。この値は I<len> より大きいこともある。この場合には、 I<buf> に格納された"
3467 "値の末尾が切り詰められたことを意味する。"
3468
3469 #. type: Plain text
3470 #: build/C/man3/confstr.3:122
3471 msgid ""
3472 "If I<name> is a valid configuration variable, but that variable does not "
3473 "have a value, then B<confstr>()  returns 0.  If I<name> does not correspond "
3474 "to a valid configuration variable, B<confstr>()  returns 0, and I<errno> is "
3475 "set to B<EINVAL>."
3476 msgstr ""
3477 "I<name> が有効なコンフィギュレーション変数だが、 変数が値を持っていない場"
3478 "合、 B<confstr>()  は 0 を返す。 I<name> が有効なコンフィグレーション変数に対"
3479 "応していなければ、 B<confstr>()  は 0 を返し、 I<errno> に B<EINVAL> を設定す"
3480 "る。"
3481
3482 #. type: Plain text
3483 #: build/C/man3/confstr.3:128
3484 msgid "The value of I<name> is invalid."
3485 msgstr "I<name> の値が不正である。"
3486
3487 #. type: Plain text
3488 #: build/C/man3/confstr.3:130 build/C/man3/fpathconf.3:171
3489 #: build/C/man2/pread.2:117 build/C/man3/sleep.3:46 build/C/man3/sysconf.3:329
3490 #: build/C/man3/tcgetpgrp.3:118
3491 msgid "POSIX.1-2001."
3492 msgstr "POSIX.1-2001."
3493
3494 #. type: Plain text
3495 #: build/C/man3/confstr.3:133
3496 msgid ""
3497 "The following code fragment determines the path where to find the POSIX.2 "
3498 "system utilities:"
3499 msgstr ""
3500 "次の部分的なコードは、 POSIX.2 システムのユーティリティがあるパス を取得する"
3501 "ものである。"
3502
3503 #. type: Plain text
3504 #: build/C/man3/confstr.3:139
3505 #, no-wrap
3506 msgid ""
3507 "char *pathbuf;\n"
3508 "size_t n;\n"
3509 msgstr ""
3510 "char *pathbuf;\n"
3511 "size_t n;\n"
3512
3513 #. type: Plain text
3514 #: build/C/man3/confstr.3:145
3515 #, no-wrap
3516 msgid ""
3517 "n = confstr(_CS_PATH, NULL, (size_t) 0);\n"
3518 "pathbuf = malloc(n);\n"
3519 "if (pathbuf == NULL)\n"
3520 "    abort();\n"
3521 "confstr(_CS_PATH, pathbuf, n);\n"
3522 msgstr ""
3523 "n = confstr(_CS_PATH, NULL, (size_t) 0);\n"
3524 "pathbuf = malloc(n);\n"
3525 "if (pathbuf == NULL)\n"
3526 "    abort();\n"
3527 "confstr(_CS_PATH, pathbuf, n);\n"
3528
3529 #. type: Plain text
3530 #: build/C/man3/confstr.3:155
3531 msgid ""
3532 "B<getconf>(1), B<sh>(1), B<exec>(3), B<fpathconf>(3)  B<sysconf>(3)  "
3533 "B<pathconf>(3)  B<system>(3)"
3534 msgstr ""
3535 "B<getconf>(1), B<sh>(1), B<exec>(3), B<fpathconf>(3)  B<sysconf>(3)  "
3536 "B<pathconf>(3)  B<system>(3)"
3537
3538 #. type: TH
3539 #: build/C/man3/crypt.3:36
3540 #, no-wrap
3541 msgid "CRYPT"
3542 msgstr "CRYPT"
3543
3544 #. type: TH
3545 #: build/C/man3/crypt.3:36
3546 #, no-wrap
3547 msgid "2014-02-26"
3548 msgstr "2014-02-26"
3549
3550 #. type: Plain text
3551 #: build/C/man3/crypt.3:39
3552 msgid "crypt, crypt_r - password and data encryption"
3553 msgstr "crypt, crypt_r - パスワードとデータの暗号化"
3554
3555 #. type: Plain text
3556 #: build/C/man3/crypt.3:42
3557 #, no-wrap
3558 msgid "B<#define _XOPEN_SOURCE>       /* See feature_test_macros(7) */\n"
3559 msgstr "B<#define _XOPEN_SOURCE>       /* feature_test_macros(7) 参照 */\n"
3560
3561 #. type: Plain text
3562 #: build/C/man3/crypt.3:46
3563 #, no-wrap
3564 msgid "B<char *crypt(const char *>I<key>B<, const char *>I<salt>B<);>\n"
3565 msgstr "B<char *crypt(const char *>I<key>B<, const char *>I<salt>B<);>\n"
3566
3567 #. type: Plain text
3568 #: build/C/man3/crypt.3:48
3569 #, no-wrap
3570 msgid "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
3571 msgstr "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
3572
3573 #. type: Plain text
3574 #: build/C/man3/crypt.3:50
3575 #, no-wrap
3576 msgid "B<#include E<lt>crypt.hE<gt>>\n"
3577 msgstr "B<#include E<lt>crypt.hE<gt>>\n"
3578
3579 #. type: Plain text
3580 #: build/C/man3/crypt.3:53
3581 #, no-wrap
3582 msgid ""
3583 "B<char *crypt_r(const char *>I<key>B<, const char *>I<salt>B<,>\n"
3584 "B<              struct crypt_data *>I<data>B<);>\n"
3585 msgstr ""
3586 "B<char *crypt_r(const char *>I<key>B<, const char *>I<salt>B<,>\n"
3587 "B<              struct crypt_data *>I<data>B<);>\n"
3588
3589 #. type: Plain text
3590 #: build/C/man3/crypt.3:56
3591 msgid "Link with I<-lcrypt>."
3592 msgstr "I<-lcrypt> でリンクする。"
3593
3594 #. type: Plain text
3595 #: build/C/man3/crypt.3:62
3596 msgid ""
3597 "B<crypt>()  is the password encryption function.  It is based on the Data "
3598 "Encryption Standard algorithm with variations intended (among other things) "
3599 "to discourage use of hardware implementations of a key search."
3600 msgstr ""
3601 "B<crypt>()  はパスワード暗号化関数である。 鍵探索のハードウェアによる実装を妨"
3602 "げるように(その他にもいろいろ)  変更した Data Encryption Standard アルゴリズ"
3603 "ムを元にしている。"
3604
3605 #. type: Plain text
3606 #: build/C/man3/crypt.3:65
3607 msgid "I<key> is a user's typed password."
3608 msgstr "I<key> はユーザが入力するパスワードである。"
3609
3610 #. type: Plain text
3611 #: build/C/man3/crypt.3:71
3612 msgid ""
3613 "I<salt> is a two-character string chosen from the set [B<a-zA-Z0-9./>].  "
3614 "This string is used to perturb the algorithm in one of 4096 different ways."
3615 msgstr ""
3616 "I<salt> は集合 [B<a-zA-Z0-9./>] から選ばれた 2 文字の文字列である。 この文字"
3617 "列はアルゴリズムの出力を 4096 通りにかき乱すのに使われる。"
3618
3619 #. type: Plain text
3620 #: build/C/man3/crypt.3:82
3621 msgid ""
3622 "By taking the lowest 7 bits of each of the first eight characters of the "
3623 "I<key>, a 56-bit key is obtained.  This 56-bit key is used to encrypt "
3624 "repeatedly a constant string (usually a string consisting of all zeros).  "
3625 "The returned value points to the encrypted password, a series of 13 "
3626 "printable ASCII characters (the first two characters represent the salt "
3627 "itself).  The return value points to static data whose content is "
3628 "overwritten by each call."
3629 msgstr ""
3630 "I<key> の最初の 8 文字の各文字から下位 7 ビットをとって 56 ビットの鍵が得られ"
3631 "る。 この 56 ビットの鍵は特定の文字列(ふつうはすべて 0 の文字列)  を繰り返し"
3632 "暗号化するのに用いられる。 返り値は暗号化されたパスワードへのポインタで、13 "
3633 "の印字可能な ASCII 文字 からなる(最初の 2 文字は salt そのもの)。 返り値は、"
3634 "関数呼出しのたびに上書きされる静的なデータへのポインタである。"
3635
3636 #. type: Plain text
3637 #: build/C/man3/crypt.3:84
3638 msgid "Warning: The key space consists of"
3639 msgstr "警告: 鍵空間は"
3640
3641 #. type: Plain text
3642 #: build/C/man3/crypt.3:99
3643 msgid ""
3644 "equal 7.2e16 possible values.  Exhaustive searches of this key space are "
3645 "possible using massively parallel computers.  Software, such as B<crack>(1), "
3646 "is available which will search the portion of this key space that is "
3647 "generally used by humans for passwords.  Hence, password selection should, "
3648 "at minimum, avoid common words and names.  The use of a B<passwd>(1)  "
3649 "program that checks for crackable passwords during the selection process is "
3650 "recommended."
3651 msgstr ""
3652 "= 7.2e16 の可能な値から成る。 この鍵空間の全探索は強力な並列計算機を使えば可"
3653 "能である。また B<crack>(1)  のようなソフトウェアはこの鍵空間の中で、多くの人"
3654 "にパスワードとして 使われるような鍵についての全探索が可能である。 それゆえ、"
3655 "パスワードを選択するときには、すくなくとも、 一般的に使われる単語と名前は避け"
3656 "るべきである。 B<passwd>(1)  を使う時にはクラックされうるパスワードについての"
3657 "検査をすることが 推奨される。"
3658
3659 #. type: Plain text
3660 #: build/C/man3/crypt.3:108
3661 msgid ""
3662 "The DES algorithm itself has a few quirks which make the use of the "
3663 "B<crypt>()  interface a very poor choice for anything other than password "
3664 "authentication.  If you are planning on using the B<crypt>()  interface for "
3665 "a cryptography project, don't do it: get a good book on encryption and one "
3666 "of the widely available DES libraries."
3667 msgstr ""
3668 "DES アルゴリズムにはいくつかの癖があり、それによってパスワード認証以外に "
3669 "B<crypt>()  を使うのはたいへんよくない選択となっている。もし B<crypt>()  を暗"
3670 "号プロジェクトに使おうという案をもっているならば、それはやめたほうが よい。暗"
3671 "号化についてのよい本と誰でも入手できる DES ライブラリのひとつを 手にいれるべ"
3672 "きだ。"
3673
3674 #. type: Plain text
3675 #: build/C/man3/crypt.3:120
3676 msgid ""
3677 "B<crypt_r>()  is a reentrant version of B<crypt>().  The structure pointed "
3678 "to by I<data> is used to store result data and bookkeeping information.  "
3679 "Other than allocating it, the only thing that the caller should do with this "
3680 "structure is to set I<data-E<gt>initialized> to zero before the first call "
3681 "to B<crypt_r>()."
3682 msgstr ""
3683 "B<crypt_r>()  は B<crypt>()  の再入可能版である。 I<data> で示される構造体は"
3684 "結果データの保存と情報の管理に使われる。 この構造体に対して(メモリを割り当て"
3685 "ること以外に)呼び出し元がするべき唯一の ことは、 B<crypt_r>()  の初回の呼び出"
3686 "しの前に I<data-E<gt>initialized> をゼロにすることだけである。"
3687
3688 #. type: Plain text
3689 #: build/C/man3/crypt.3:123
3690 msgid ""
3691 "On success, a pointer to the encrypted password is returned.  On error, NULL "
3692 "is returned."
3693 msgstr ""
3694 "成功の場合には、暗号化されたパスワードへのポインターが返される。 エラーの場合"
3695 "には NULL が返される。"
3696
3697 #. type: Plain text
3698 #: build/C/man3/crypt.3:128
3699 msgid "I<salt> has the wrong format."
3700 msgstr "I<salt> が間違ったフォーマットである。"
3701
3702 #. type: TP
3703 #: build/C/man3/crypt.3:130 build/C/man3/encrypt.3:120
3704 #: build/C/man3/fexecve.3:86 build/C/man2/fork.2:220
3705 #, no-wrap
3706 msgid "B<ENOSYS>"
3707 msgstr "B<ENOSYS>"
3708
3709 #.  This level of detail is not necessary in this man page. . .
3710 #.  .PP
3711 #.  When encrypting a plain text P using DES with the key K results in the
3712 #.  encrypted text C, then the complementary plain text P' being encrypted
3713 #.  using the complementary key K' will result in the complementary encrypted
3714 #.  text C'.
3715 #.  .PP
3716 #.  Weak keys are keys which stay invariant under the DES key transformation.
3717 #.  The four known weak keys 0101010101010101, fefefefefefefefe,
3718 #.  1f1f1f1f0e0e0e0e and e0e0e0e0f1f1f1f1 must be avoided.
3719 #.  .PP
3720 #.  There are six known half weak key pairs, which keys lead to the same
3721 #.  encrypted data.  Keys which are part of such key clusters should be
3722 #.  avoided.
3723 #.  Sorry, I could not find out what they are.
3724 #. "
3725 #.  .PP
3726 #.  Heavily redundant data causes trouble with DES encryption, when used in the
3727 #.  .I codebook
3728 #.  mode that
3729 #.  .BR crypt ()
3730 #.  implements.  The
3731 #.  .BR crypt ()
3732 #.  interface should be used only for its intended purpose of password
3733 #.  verification, and should not be used as part of a data encryption tool.
3734 #.  .PP
3735 #.  The first and last three output bits of the fourth S-box can be
3736 #.  represented as function of their input bits.  Empiric studies have
3737 #.  shown that S-boxes partially compute the same output for similar input.
3738 #.  It is suspected that this may contain a back door which could allow the
3739 #.  NSA to decrypt DES encrypted data.
3740 #.  .PP
3741 #.  Making encrypted data computed using crypt() publicly available has
3742 #.  to be considered insecure for the given reasons.
3743 #. type: Plain text
3744 #: build/C/man3/crypt.3:169
3745 msgid ""
3746 "The B<crypt>()  function was not implemented, probably because of U.S.A. "
3747 "export restrictions."
3748 msgstr "B<crypt>()  関数が実装されていない。多分アメリカの輸出規制のために。"
3749
3750 #. type: Plain text
3751 #: build/C/man3/crypt.3:174
3752 msgid ""
3753 "I</proc/sys/crypto/fips_enabled> has a nonzero value, and an attempt was "
3754 "made to use a weak encryption type, such as DES."
3755 msgstr ""
3756 "I</proc/sys/crypto/fips_enabled> が 0 でない値で、 DES などの弱い暗号タイプを"
3757 "利用しようとした。"
3758
3759 #. type: SH
3760 #: build/C/man3/crypt.3:174 build/C/man3/daemon.3:91
3761 #: build/C/man3/des_crypt.3:134 build/C/man3/encrypt.3:124
3762 #: build/C/man3/euidaccess.3:73 build/C/man3/getdtablesize.3:69
3763 #: build/C/man3/getlogin.3:140 build/C/man3/getusershell.3:93
3764 #: build/C/man3/lockf.3:154 build/C/man3/swab.3:72
3765 #: build/C/man3/tcgetpgrp.3:109 build/C/man3/ualarm.3:92
3766 #: build/C/man3/usleep.3:91
3767 #, no-wrap
3768 msgid "ATTRIBUTES"
3769 msgstr "属性"
3770
3771 #. type: SS
3772 #: build/C/man3/crypt.3:175 build/C/man3/daemon.3:92
3773 #: build/C/man3/des_crypt.3:135 build/C/man3/encrypt.3:125
3774 #: build/C/man3/euidaccess.3:74 build/C/man3/getdtablesize.3:70
3775 #: build/C/man3/getlogin.3:141 build/C/man3/getusershell.3:94
3776 #: build/C/man3/lockf.3:155 build/C/man3/swab.3:73
3777 #: build/C/man3/tcgetpgrp.3:110 build/C/man3/ualarm.3:93
3778 #: build/C/man3/usleep.3:92
3779 #, no-wrap
3780 msgid "Multithreading (see pthreads(7))"
3781 msgstr "マルチスレッディング (pthreads(7) 参照)"
3782
3783 #. type: Plain text
3784 #: build/C/man3/crypt.3:179
3785 msgid "The B<crypt>()  function is not thread-safe."
3786 msgstr "B<crypt>() 関数はスレッドセーフではない。"
3787
3788 #. type: Plain text
3789 #: build/C/man3/crypt.3:183
3790 msgid "The B<crypt_r>()  function is thread-safe."
3791 msgstr "B<crypt_r>() 関数はスレッドセーフである。"
3792
3793 #. type: Plain text
3794 #: build/C/man3/crypt.3:188
3795 msgid ""
3796 "B<crypt>(): SVr4, 4.3BSD, POSIX.1-2001.  B<crypt_r>()  is a GNU extension."
3797 msgstr ""
3798 "B<crypt>(): SVr4, 4.3BSD, POSIX.1-2001.  B<crypt_r>()  は GNU 拡張である。"
3799
3800 #. type: Plain text
3801 #: build/C/man3/crypt.3:192
3802 msgid ""
3803 "The glibc2 version of this function supports additional encryption "
3804 "algorithms."
3805 msgstr "この関数の glibc2 版は追加の暗号化アルゴリズムに対応している。"
3806
3807 #. type: Plain text
3808 #: build/C/man3/crypt.3:197
3809 msgid ""
3810 "If I<salt> is a character string starting with the characters \"$I<id>$\" "
3811 "followed by a string terminated by \"$\":"
3812 msgstr ""
3813 "もし I<salt> の文字列が \"$I<id>$\" で始まっていて、\"$\" で終わっている文字"
3814 "列が 続いている場合:"
3815
3816 #. type: Plain text
3817 #: build/C/man3/crypt.3:200
3818 msgid "$I<id>$I<salt>$I<encrypted>"
3819 msgstr "$I<id>$I<salt>$I<encrypted>"
3820
3821 #. type: Plain text
3822 #: build/C/man3/crypt.3:209
3823 msgid ""
3824 "then instead of using the DES machine, I<id> identifies the encryption "
3825 "method used and this then determines how the rest of the password string is "
3826 "interpreted.  The following values of I<id> are supported:"
3827 msgstr ""
3828 "DES を使う代わりに、 I<id> で使用する暗号化手法を識別し、これがパスワード文字"
3829 "列の残りの部分を解釈する 方法を決定する。 I<id> の値として、以下の値に対応し"
3830 "ている:"
3831
3832 #. type: tbl table
3833 #: build/C/man3/crypt.3:212
3834 #, no-wrap
3835 msgid "ID  | Method\n"
3836 msgstr "ID  | Method\n"
3837
3838 #. type: tbl table
3839 #: build/C/man3/crypt.3:213 build/C/man2/syscall.2:160
3840 #: build/C/man2/syscall.2:198
3841 #, no-wrap
3842 msgid "_\n"
3843 msgstr "_\n"
3844
3845 #. type: tbl table
3846 #: build/C/man3/crypt.3:214
3847 #, no-wrap
3848 msgid "1   | MD5\n"
3849 msgstr "1   | MD5\n"
3850
3851 #. type: tbl table
3852 #: build/C/man3/crypt.3:215
3853 #, no-wrap
3854 msgid "2a  | Blowfish (not in mainline glibc; added in some\n"
3855 msgstr "2a  | Blowfish (本流の glibc には入っていない;\n"
3856
3857 #. type: tbl table
3858 #: build/C/man3/crypt.3:216
3859 #, no-wrap
3860 msgid "    | Linux distributions)\n"
3861 msgstr "    | いくつかの Linux ディストリビューションで追加されている)\n"
3862
3863 #.  openSUSE has Blowfish, but AFAICS, this option is not supported
3864 #.  natively by glibc -- mtk, Jul 08
3865 #.  md5 | Sun MD5
3866 #.  glibc doesn't appear to natively support Sun MD5; I don't know
3867 #.  if any distros add the support.
3868 #. type: tbl table
3869 #: build/C/man3/crypt.3:223
3870 #, no-wrap
3871 msgid "5   | SHA-256 (since glibc 2.7)\n"
3872 msgstr "5   | SHA-256 (glibc 2.7 以降)\n"
3873
3874 #. type: tbl table
3875 #: build/C/man3/crypt.3:224
3876 #, no-wrap
3877 msgid "6   | SHA-512 (since glibc 2.7)\n"
3878 msgstr "6   | SHA-512 (glibc 2.7 以降)\n"
3879
3880 #. type: Plain text
3881 #: build/C/man3/crypt.3:231
3882 msgid ""
3883 "So $5$I<salt>$I<encrypted> is an SHA-256 encoded password and $6$I<salt>"
3884 "$I<encrypted> is an SHA-512 encoded one."
3885 msgstr ""
3886 "従って、$5$I<salt>$I<encrypted> は SHA-256 でエンコードされた パスワードであ"
3887 "り、$6$I<salt>$I<encrypted> は SHA-512 で エンコードされたパスワードである。"
3888
3889 #. type: Plain text
3890 #: build/C/man3/crypt.3:236
3891 msgid ""
3892 "\"I<salt>\" stands for the up to 16 characters following \"$I<id>$\" in the "
3893 "salt.  The encrypted part of the password string is the actual computed "
3894 "password.  The size of this string is fixed:"
3895 msgstr ""
3896 "\"I<salt>\" は salt における \"$I<id>$\" に引き続く 16 文字以下の 文字列であ"
3897 "る。 パスワード文字列の暗号化部分は実際に計算されたパスワードである。 この文"
3898 "字列のサイズは固定である:"
3899
3900 #. type: tbl table
3901 #: build/C/man3/crypt.3:238
3902 #, no-wrap
3903 msgid "MD5     | 22 characters\n"
3904 msgstr "MD5     | 22 characters\n"
3905
3906 #. type: tbl table
3907 #: build/C/man3/crypt.3:239
3908 #, no-wrap
3909 msgid "SHA-256 | 43 characters\n"
3910 msgstr "SHA-256 | 43 characters\n"
3911
3912 #. type: tbl table
3913 #: build/C/man3/crypt.3:240
3914 #, no-wrap
3915 msgid "SHA-512 | 86 characters\n"
3916 msgstr "SHA-512 | 86 characters\n"
3917
3918 #. type: Plain text
3919 #: build/C/man3/crypt.3:249
3920 msgid ""
3921 "The characters in \"I<salt>\" and \"I<encrypted>\" are drawn from the set "
3922 "[B<a-zA-Z0-9./>].  In the MD5 and SHA implementations the entire I<key> is "
3923 "significant (instead of only the first 8 bytes in DES)."
3924 msgstr ""
3925 "\"I<salt>\" と \"I<encrypted>\" の文字は [B<a-zA-Z0-9./>] の集合から 選ばれ"
3926 "る。 MD5 と SHA の実装では、 I<key> 全体が意味がある (DES の場合には最初の 8 "
3927 "文字だけに意味がある)。"
3928
3929 #. type: Plain text
3930 #: build/C/man3/crypt.3:255
3931 msgid "B<login>(1), B<passwd>(1), B<encrypt>(3), B<getpass>(3), B<passwd>(5)"
3932 msgstr "B<login>(1), B<passwd>(1), B<encrypt>(3), B<getpass>(3), B<passwd>(5)"
3933
3934 #. type: TH
3935 #: build/C/man3/daemon.3:36
3936 #, no-wrap
3937 msgid "DAEMON"
3938 msgstr "DAEMON"
3939
3940 #. type: TH
3941 #: build/C/man3/daemon.3:36
3942 #, no-wrap
3943 msgid "2013-10-28"
3944 msgstr "2013-10-28"
3945
3946 #. type: Plain text
3947 #: build/C/man3/daemon.3:39
3948 msgid "daemon - run in the background"
3949 msgstr "daemon - バックグラウンドで動作させる"
3950
3951 #. type: Plain text
3952 #: build/C/man3/daemon.3:43
3953 msgid "B<int daemon(int >I<nochdir>B<, int >I<noclose>B<);>"
3954 msgstr "B<int daemon(int >I<nochdir>B<, int >I<noclose>B<);>"
3955
3956 #. type: Plain text
3957 #: build/C/man3/daemon.3:51
3958 msgid ""
3959 "B<daemon>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
3960 msgstr ""
3961 "B<daemon>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
3962
3963 #. type: Plain text
3964 #: build/C/man3/daemon.3:56
3965 msgid ""
3966 "The B<daemon>()  function is for programs wishing to detach themselves from "
3967 "the controlling terminal and run in the background as system daemons."
3968 msgstr ""
3969 "B<daemon>()  は、制御端末から分離させてシステムデーモンとして動作させたい プ"
3970 "ログラムのための関数である。"
3971
3972 #. type: Plain text
3973 #: build/C/man3/daemon.3:64
3974 msgid ""
3975 "If I<nochdir> is zero, B<daemon>()  changes the calling process's current "
3976 "working directory to the root directory (\"/\"); otherwise, the current "
3977 "working directory is left unchanged."
3978 msgstr ""
3979 "I<nochdir> が 0 の場合、 B<daemon>()  は呼び出したプロセスの現在の作業ディレ"
3980 "クトリ (current working directory)  をルートディレクトリ (\"/\") に変更す"
3981 "る。 それ以外の場合、現在の作業ディレクトリは変更されない。"
3982
3983 #. type: Plain text
3984 #: build/C/man3/daemon.3:73
3985 msgid ""
3986 "If I<noclose> is zero, B<daemon>()  redirects standard input, standard "
3987 "output and standard error to I</dev/null>; otherwise, no changes are made to "
3988 "these file descriptors."
3989 msgstr ""
3990 "I<noclose> が 0 の場合、 B<daemon>()  は標準入力・標準出力・標準エラーを I</"
3991 "dev/null> にリダイレクトする。 それ以外の場合、これらのファイルディスクリプタ"
3992 "は変更されない。"
3993
3994 #.  not .IR in order not to underline _
3995 #. type: Plain text
3996 #: build/C/man3/daemon.3:91
3997 msgid ""
3998 "(This function forks, and if the B<fork>(2)  succeeds, the parent calls "
3999 "B<_exit>(2), so that further errors are seen by the child only.)  On success "
4000 "B<daemon>()  returns zero.  If an error occurs, B<daemon>()  returns -1 and "
4001 "sets I<errno> to any of the errors specified for the B<fork>(2)  and "
4002 "B<setsid>(2)."
4003 msgstr ""
4004 "(この関数が fork して B<fork>(2)  が成功すると、親プロセスでは B<_exit>(2)  "
4005 "を呼び出すので、これ以降のエラーは子プロセスからしか見れない)。 成功した場"
4006 "合、 B<daemon>()  は 0 を返す。 エラーが起こった場合、 B<daemon>()  は -1 を"
4007 "返す。 さらに、 I<errno> に B<fork>(2)  と B<setsid>(2)  に関して規定されたエ"
4008 "ラーを設定する。"
4009
4010 #. type: Plain text
4011 #: build/C/man3/daemon.3:96
4012 msgid "The B<daemon>()  function is thread-safe."
4013 msgstr "B<daemon>() 関数はスレッドセーフである。"
4014
4015 #. type: Plain text
4016 #: build/C/man3/daemon.3:102
4017 msgid ""
4018 "Not in POSIX.1-2001.  A similar function appears on the BSDs.  The "
4019 "B<daemon>()  function first appeared in 4.4BSD."
4020 msgstr ""
4021 "POSIX.1-2001 にはない。 同様の関数が BSD には見られる。 B<daemon>()  関数は "
4022 "4.4BSD で始めて登場した。"
4023
4024 #. type: Plain text
4025 #: build/C/man3/daemon.3:110
4026 msgid ""
4027 "The glibc implementation can also return -1 when I</dev/null> exists but is "
4028 "not a character device with the expected major and minor numbers.  In this "
4029 "case, I<errno> need not be set."
4030 msgstr ""
4031 "The glibc implementation can also return -1 when I</dev/null> exists but is "
4032 "not a character device with the expected major and minor numbers.  In this "
4033 "case, I<errno> need not be set."
4034
4035 #. type: Plain text
4036 #: build/C/man3/daemon.3:113
4037 msgid "B<fork>(2), B<setsid>(2)"
4038 msgstr "B<fork>(2), B<setsid>(2)"
4039
4040 #. type: TH
4041 #: build/C/man3/des_crypt.3:14
4042 #, no-wrap
4043 msgid "DES_CRYPT"
4044 msgstr "DES_CRYPT"
4045
4046 #. type: Plain text
4047 #: build/C/man3/des_crypt.3:18
4048 msgid ""
4049 "des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - fast DES "
4050 "encryption"
4051 msgstr ""
4052 "des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - 高速な DES 暗号"
4053 "化"
4054
4055 #.  Sun version
4056 #.  .B #include <des_crypt.h>
4057 #. type: Plain text
4058 #: build/C/man3/des_crypt.3:23
4059 #, no-wrap
4060 msgid "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
4061 msgstr "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
4062
4063 #. type: Plain text
4064 #: build/C/man3/des_crypt.3:26
4065 #, no-wrap
4066 msgid ""
4067 "B<int ecb_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4068 "B<              unsigned >I<mode>B<);>\n"
4069 msgstr ""
4070 "B<int ecb_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4071 "B<              unsigned >I<mode>B<);>\n"
4072
4073 #. type: Plain text
4074 #: build/C/man3/des_crypt.3:29
4075 #, no-wrap
4076 msgid ""
4077 "B<int cbc_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4078 "B<              unsigned >I<mode>B<, char *>I<ivec>B<);>\n"
4079 msgstr ""
4080 "B<int cbc_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4081 "B<              unsigned >I<mode>B<, char *>I<ivec>B<);>\n"
4082
4083 #. type: Plain text
4084 #: build/C/man3/des_crypt.3:31
4085 #, no-wrap
4086 msgid "B<void des_setparity(char *>I<key>B<);>\n"
4087 msgstr "B<void des_setparity(char *>I<key>B<);>\n"
4088
4089 #. type: Plain text
4090 #: build/C/man3/des_crypt.3:33
4091 #, no-wrap
4092 msgid "B<int DES_FAILED(int >I<status>B<);>\n"
4093 msgstr "B<int DES_FAILED(int >I<status>B<);>\n"
4094
4095 #. type: Plain text
4096 #: build/C/man3/des_crypt.3:63
4097 msgid ""
4098 "B<ecb_crypt>()  and B<cbc_crypt>()  implement the NBS DES (Data Encryption "
4099 "Standard).  These routines are faster and more general purpose than "
4100 "B<crypt>(3).  They also are able to utilize DES hardware if it is "
4101 "available.  B<ecb_crypt>()  encrypts in ECB (Electronic Code Book)  mode, "
4102 "which encrypts blocks of data independently.  B<cbc_crypt>()  encrypts in "
4103 "CBC (Cipher Block Chaining)  mode, which chains together successive blocks.  "
4104 "CBC mode protects against insertions, deletions and substitutions of "
4105 "blocks.  Also, regularities in the clear text will not appear in the cipher "
4106 "text."
4107 msgstr ""
4108 "B<ecb_crypt>()  と B<cbc_crypt>()  は NBS DES (Data Encryption Standard, デー"
4109 "タ暗号化規格) を実装している。 これらのルーチンは B<crypt>(3)  よりも高速でよ"
4110 "り一般的な目的に使用できる。 利用可能であれば、これらのルーチンは DES ハード"
4111 "ウェアを使用することもできる。 B<ecb_crypt>()  は ECB (Electronic Code Book) "
4112 "モードで暗号化する。 このモードでは (個々の) データのブロックを独立して暗号化"
4113 "する B<cbc_crypt>()  は CBC (Cipher Block Chaining) モードで暗号化する。 この"
4114 "モードでは連続するブロックを互いに連鎖させて暗号化する。 CBC はブロックの挿"
4115 "入・削除・置き換えから保護する。 また平文の規則性が暗号文に現れない。"
4116
4117 #. type: Plain text
4118 #: build/C/man3/des_crypt.3:106
4119 msgid ""
4120 "Here is how to use these routines.  The first argument, I<key>, is the 8-"
4121 "byte encryption key with parity.  To set the key's parity, which for DES is "
4122 "in the low bit of each byte, use B<des_setparity>().  The second argument, "
4123 "I<data>, contains the data to be encrypted or decrypted.  The third "
4124 "argument, I<datalen>, is the length in bytes of I<data>, which must be a "
4125 "multiple of 8.  The fourth argument, I<mode>, is formed by ORing together "
4126 "some things.  For the encryption direction OR in either B<DES_ENCRYPT> or "
4127 "B<DES_DECRYPT>.  For software versus hardware encryption, OR in either "
4128 "B<DES_HW> or B<DES_SW>.  If B<DES_HW> is specified, and there is no "
4129 "hardware, then the encryption is performed in software and the routine "
4130 "returns B<DESERR_NOHWDEVICE>.  For B<cbc_crypt>(), the argument I<ivec> is "
4131 "the 8-byte initialization vector for the chaining.  It is updated to the "
4132 "next initialization vector upon return."
4133 msgstr ""
4134 "これらのルーチンの使用法を示す。 第 1 引き数 I<key> はパリティ付きの 8 バイト"
4135 "の暗号化鍵である。 鍵のパリティを設定するには B<des_setparity>()  を使うこ"
4136 "と。 DES の場合、鍵のパリティは各バイトの最下位ビットである。 第 2 引き数 "
4137 "I<data> は暗号化または復号化されるデータを含む。 第 3 引き数 I<datalen> は "
4138 "I<data> のバイト長であり、8 の倍数でなければならない。 第 4 引き数 I<mode> は"
4139 "いくつかの値を OR することで作成する。 暗号化の方向 (訳註: 暗号化なのか復号化"
4140 "なのか) を指定するため、 B<DES_ENCRYPT> または B<DES_DECRYPT> を OR する。 暗"
4141 "号化をソフトウェアで行うかハードウェアで行うかを指定するため、 B<DES_HW> また"
4142 "は B<DES_SW> を OR する。 B<DES_HW> が指定されていて、かつハードウェアがない"
4143 "場合、 暗号化はソフトウェアで実行されて、ルーチンは B<DESERR_NOHWDEVICE> を返"
4144 "す。 B<cbc_crypt>()  において、引き数 I<ivec> はデータブロックを連鎖させる際"
4145 "の 8 バイトの初期化ベクトルである。 この引き数はルーチンから戻るときに次の初"
4146 "期化ベクトルに更新される。"
4147
4148 #. type: TP
4149 #: build/C/man3/des_crypt.3:108
4150 #, no-wrap
4151 msgid "B<DESERR_NONE>"
4152 msgstr "B<DESERR_NONE>"
4153
4154 #. type: Plain text
4155 #: build/C/man3/des_crypt.3:111
4156 msgid "No error."
4157 msgstr "エラーなし。"
4158
4159 #. type: TP
4160 #: build/C/man3/des_crypt.3:111
4161 #, no-wrap
4162 msgid "B<DESERR_NOHWDEVICE>"
4163 msgstr "B<DESERR_NOHWDEVICE>"
4164
4165 #. type: Plain text
4166 #: build/C/man3/des_crypt.3:114
4167 msgid ""
4168 "Encryption succeeded, but done in software instead of the requested hardware."
4169 msgstr ""
4170 "暗号化は成功したが、要求されたハードウェアの代わりにソフトウェアで実行され"
4171 "た。"
4172
4173 #. type: TP
4174 #: build/C/man3/des_crypt.3:114
4175 #, no-wrap
4176 msgid "B<DESERR_HWERROR>"
4177 msgstr "B<DESERR_HWERROR>"
4178
4179 #. type: Plain text
4180 #: build/C/man3/des_crypt.3:117
4181 msgid "An error occurred in the hardware or driver."
4182 msgstr "ハードウェアまたはドライバでエラーが発生した。"
4183
4184 #. type: TP
4185 #: build/C/man3/des_crypt.3:117
4186 #, no-wrap
4187 msgid "B<DESERR_BADPARAM>"
4188 msgstr "B<DESERR_BADPARAM>"
4189
4190 #. type: Plain text
4191 #: build/C/man3/des_crypt.3:120
4192 msgid "Bad argument to routine."
4193 msgstr "ルーチンへの引き数が不正である。"
4194
4195 #.  .BR DES_FAILED\c
4196 #.  .BR ( stat )
4197 #.  So far the Sun page
4198 #.  Some additions - aeb
4199 #. type: Plain text
4200 #: build/C/man3/des_crypt.3:131
4201 msgid ""
4202 "Given a result status I<stat>, the macro B<DES_FAILED(>I<stat>B<)> is false "
4203 "only for the first two statuses."
4204 msgstr ""
4205 "結果の状態 I<stat> を与えたとき、マクロ B<DES_FAILED(>I<stat>B<)> が false に"
4206 "なるのは、最初の 2 つだけである。"
4207
4208 #. type: Plain text
4209 #: build/C/man3/des_crypt.3:134
4210 msgid "These functions are present in glibc 2.1 and later."
4211 msgstr "これらの関数は glibc 2.1 以降に存在する。"
4212
4213 #. type: Plain text
4214 #: build/C/man3/des_crypt.3:142
4215 msgid ""
4216 "The B<ecb_crypt>(), B<cbc_crypt>(), and B<des_setparity>()  functions are "
4217 "thread-safe."
4218 msgstr ""
4219 "関数 B<ecb_crypt>(), B<cbc_crypt>(), B<des_setparity>() はスレッドセーフであ"
4220 "る。"
4221
4222 #. type: Plain text
4223 #: build/C/man3/des_crypt.3:145
4224 msgid "4.3BSD.  Not in POSIX.1-2001."
4225 msgstr "4.3BSD. POSIX.1-2001 にはない。"
4226
4227 #. type: Plain text
4228 #: build/C/man3/des_crypt.3:149
4229 msgid "B<des>(1), B<crypt>(3), B<xcrypt>(3)"
4230 msgstr "B<des>(1), B<crypt>(3), B<xcrypt>(3)"
4231
4232 #. type: TH
4233 #: build/C/man2/dup.2:37
4234 #, no-wrap
4235 msgid "DUP"
4236 msgstr "DUP"
4237
4238 #. type: TH
4239 #: build/C/man2/dup.2:37 build/C/man3/exec.3:41 build/C/man2/execve.2:37
4240 #: build/C/man2/fcntl.2:65 build/C/man3/fexecve.3:25 build/C/man2/syscall.2:42
4241 #: build/C/man2/syscalls.2:31 build/C/man2/truncate.2:43
4242 #: build/C/man2/execveat.2:26
4243 #, no-wrap
4244 msgid "2015-01-22"
4245 msgstr "2015-01-22"
4246
4247 #. type: Plain text
4248 #: build/C/man2/dup.2:40
4249 msgid "dup, dup2, dup3 - duplicate a file descriptor"
4250 msgstr "dup, dup2, dup3 - ファイルディスクリプタを複製する"
4251
4252 #. type: Plain text
4253 #: build/C/man2/dup.2:46
4254 #, no-wrap
4255 msgid ""
4256 "B<int dup(int >I<oldfd>B<);>\n"
4257 "B<int dup2(int >I<oldfd>B<, int >I<newfd>B<);>\n"
4258 msgstr ""
4259 "B<int dup(int >I<oldfd>B<);>\n"
4260 "B<int dup2(int >I<oldfd>B<, int >I<newfd>B<);>\n"
4261
4262 #. type: Plain text
4263 #: build/C/man2/dup.2:50
4264 #, no-wrap
4265 msgid ""
4266 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
4267 "B<#include E<lt>fcntl.hE<gt>>              /* Obtain O_* constant definitions */\n"
4268 "B<#include E<lt>unistd.hE<gt>>\n"
4269 msgstr ""
4270 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
4271 "B<#include E<lt>fcntl.hE<gt>>              /* 定数 O_* の定義の取得 */\n"
4272 "B<#include E<lt>unistd.hE<gt>>\n"
4273
4274 #. type: Plain text
4275 #: build/C/man2/dup.2:52
4276 #, no-wrap
4277 msgid "B<int dup3(int >I<oldfd>B<, int >I<newfd>B<, int >I<flags>B<);>\n"
4278 msgstr "B<int dup3(int >I<oldfd>B<, int >I<newfd>B<, int >I<flags>B<);>\n"
4279
4280 #. type: Plain text
4281 #: build/C/man2/dup.2:59
4282 msgid ""
4283 "The B<dup>()  system call creates a copy of the file descriptor I<oldfd>, "
4284 "using the lowest-numbered unused descriptor for the new descriptor."
4285 msgstr ""
4286 "B<dup>() システムコールは、 ファイルディスクリプタ I<oldfd> のコピーを作成"
4287 "し、 最も小さい番号の未使用のディスクリプタを 新しいディスクリプタとして使用"
4288 "する。"
4289
4290 #. type: Plain text
4291 #: build/C/man2/dup.2:68
4292 msgid ""
4293 "After a successful return, the old and new file descriptors may be used "
4294 "interchangeably.  They refer to the same open file description (see "
4295 "B<open>(2))  and thus share file offset and file status flags; for example, "
4296 "if the file offset is modified by using B<lseek>(2)  on one of the "
4297 "descriptors, the offset is also changed for the other."
4298 msgstr ""
4299 "成功が返された場合には、 古いファイルディスクリプタと新しいファイルディスクリ"
4300 "プタは 互いに可換なものとして使うことができる。 2つのファイルディスクリプタは"
4301 "同じファイル記述 (description)  (B<open>(2)  参照) を参照しており、したがって"
4302 "ファイルオフセットやファイル状態フラグが 共有される。例えば、一方のディスクリ"
4303 "プタに対して B<lseek>(2)  を使ってファイルオフセットを変更した場合、もう一方"
4304 "のディスクリプタの オフセットも変化する。"
4305
4306 #. type: Plain text
4307 #: build/C/man2/dup.2:77
4308 msgid ""
4309 "The two descriptors do not share file descriptor flags (the close-on-exec "
4310 "flag).  The close-on-exec flag (B<FD_CLOEXEC>; see B<fcntl>(2))  for the "
4311 "duplicate descriptor is off."
4312 msgstr ""
4313 "2つのディスクリプタはファイルディスクリプタフラグ (close-on-exec flag)  を共"
4314 "有しない。複製されたディスクリプタの close-on-exec flag (B<fcntl>(2)  参照) "
4315 "は off となる。"
4316
4317 #. type: SS
4318 #: build/C/man2/dup.2:77
4319 #, no-wrap
4320 msgid "dup2()"
4321 msgstr "dup2()"
4322
4323 #. type: Plain text
4324 #: build/C/man2/dup.2:88
4325 msgid ""
4326 "The B<dup2>()  system call performs the same task as B<dup>(), but instead "
4327 "of using the lowest-numbered unused file descriptor, it uses the descriptor "
4328 "number specified in I<newfd>.  If the descriptor I<newfd> was previously "
4329 "open, it is silently closed before being reused."
4330 msgstr ""
4331 "B<dup2>() システムコールは B<dup>() と同じ処理を実行するが、\n"
4332 "番号が最も小さい未使用のファイルディスクリプタを使用する代わりに、\n"
4333 "I<newfd> で指定されたディスクリプタ番号を使用する。\n"
4334 "ディスクリプタ I<newfd> が以前にオープンされていた場合には、\n"
4335 "黙ってそのディスクリプタをクローズしてから再利用する。"
4336
4337 #. type: Plain text
4338 #: build/C/man2/dup.2:104
4339 msgid ""
4340 "The steps of closing and reusing the file descriptor I<newfd> are performed "
4341 "I<atomically>.  This is important, because trying to implement equivalent "
4342 "functionality using B<close>(2)  and B<dup>()  would be subject to race "
4343 "conditions, whereby I<newfd> might be reused between the two steps.  Such "
4344 "reuse could happen because the main program is interrupted by a signal "
4345 "handler that allocates a file descriptor, or because a parallel thread "
4346 "allocates a file descriptor."
4347 msgstr ""
4348 "ファイルディスクリプタ I<newfd> をクローズして再利用する処理は\n"
4349 "I<アトミック(不可分)に>実行される。これは重要な点である。 なぜなら、\n"
4350 "等価な機能を B<close>(2) と B<dup>() を使って実装しようとすると、\n"
4351 "2 つの処理の間に I<newfd> が再利用されてしまうという、\n"
4352 "競合状態にさらされることになるからだ。\n"
4353 "このような再利用が起こるのは、\n"
4354 "メインプログラムがファイルディスクリプタを割り当てる\n"
4355 "シグナルハンドラーにより割り込まれたり、並行動作するスレッドが\n"
4356 "ファイルディスクリプタを割り当てたりすることがあるからだ。"
4357
4358 #. type: Plain text
4359 #: build/C/man2/dup.2:106
4360 msgid "Note the following points:"
4361 msgstr "以下の点について注意すること:"
4362
4363 #. type: Plain text
4364 #: build/C/man2/dup.2:112
4365 msgid ""
4366 "If I<oldfd> is not a valid file descriptor, then the call fails, and "
4367 "I<newfd> is not closed."
4368 msgstr ""
4369 "I<oldfd> が有効なファイルディスクリプタでない場合、その呼び出しは失敗し、 "
4370 "I<newfd> はクローズされない。"
4371
4372 #. type: Plain text
4373 #: build/C/man2/dup.2:124
4374 msgid ""
4375 "If I<oldfd> is a valid file descriptor, and I<newfd> has the same value as "
4376 "I<oldfd>, then B<dup2>()  does nothing, and returns I<newfd>."
4377 msgstr ""
4378 "I<oldfd> が有効なファイルディスクリプタで、 I<newfd> が I<oldfd> と同じ値の場"
4379 "合、 B<dup2>()  は何もせず、 I<newfd> を返す。"
4380
4381 #. type: SS
4382 #: build/C/man2/dup.2:124
4383 #, no-wrap
4384 msgid "dup3()"
4385 msgstr "dup3()"
4386
4387 #. type: Plain text
4388 #: build/C/man2/dup.2:129
4389 msgid "B<dup3>()  is the same as B<dup2>(), except that:"
4390 msgstr "B<dup3>()  は B<dup2>()  と同じだが、以下の点が異なる。"
4391
4392 #. type: Plain text
4393 #: build/C/man2/dup.2:138
4394 msgid ""
4395 "The caller can force the close-on-exec flag to be set for the new file "
4396 "descriptor by specifying B<O_CLOEXEC> in I<flags>.  See the description of "
4397 "the same flag in B<open>(2)  for reasons why this may be useful."
4398 msgstr ""
4399 "呼び出し元が、新しいファイルディスクリプタに対して close-on-exec フラグを強制"
4400 "的に設定することができる。 これを行うには、 I<flags> に B<O_CLOEXEC> を指定す"
4401 "る。 このフラグが役に立つ理由については、 B<open>(2)  の B<O_CLOEXEC> フラグ"
4402 "の説明を参照のこと。"
4403
4404 #.  FIXME . To confirm with Al Viro that this was intended, and its rationale
4405 #. type: Plain text
4406 #: build/C/man2/dup.2:148
4407 msgid ""
4408 "If I<oldfd> equals I<newfd>, then B<dup3>()  fails with the error B<EINVAL>."
4409 msgstr ""
4410 "I<oldfd> が I<newfd> と同じ場合、 B<dup3>()  は B<EINVAL> エラーで失敗する。"
4411
4412 #. type: Plain text
4413 #: build/C/man2/dup.2:154
4414 msgid ""
4415 "On success, these system calls return the new descriptor.  On error, -1 is "
4416 "returned, and I<errno> is set appropriately."
4417 msgstr ""
4418 "成功すると、これらのシステムコールは新しいディスクリプタを返す。 エラーの場"
4419 "合、-1 を返し、 I<errno> を適切に設定する。"
4420
4421 #. type: Plain text
4422 #: build/C/man2/dup.2:159
4423 msgid "I<oldfd> isn't an open file descriptor."
4424 msgstr "I<oldfd> がオープンされたファイルディスクリプタではない。"
4425
4426 #. type: Plain text
4427 #: build/C/man2/dup.2:166
4428 msgid ""
4429 "I<newfd> is out of the allowed range for file descriptors (see the "
4430 "discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
4431 msgstr ""
4432 "I<newfd> がファイルディスクリプターとして許可されている範囲ではない "
4433 "(B<getrlimit>(2) の B<RLIMIT_NOFILE> の議論を参照)。"
4434
4435 #. type: TP
4436 #: build/C/man2/dup.2:166 build/C/man2/fcntl.2:1503 build/C/man2/fcntl.2:1512
4437 #: build/C/man2/swapon.2:117
4438 #, no-wrap
4439 msgid "B<EBUSY>"
4440 msgstr "B<EBUSY>"
4441
4442 #. type: Plain text
4443 #: build/C/man2/dup.2:176
4444 msgid ""
4445 "(Linux only) This may be returned by B<dup2>()  or B<dup3>()  during a race "
4446 "condition with B<open>(2)  and B<dup>()."
4447 msgstr ""
4448 "(Linux のみ)  B<open>(2)  や B<dup>()  との競合状態の場合に、 B<dup2>()  や "
4449 "B<dup3>()  はこのエラーを返すかもしれない。"
4450
4451 #. type: Plain text
4452 #: build/C/man2/dup.2:184
4453 msgid ""
4454 "The B<dup2>()  or B<dup3>()  call was interrupted by a signal; see "
4455 "B<signal>(7)."
4456 msgstr ""
4457 "B<dup2>()  や B<dup3>()  の呼び出しがシグナルにより割り込まれた。 "
4458 "B<signal>(7)  参照。"
4459
4460 #. type: Plain text
4461 #: build/C/man2/dup.2:189
4462 msgid "(B<dup3>())  I<flags> contain an invalid value."
4463 msgstr "(B<dup3>())  I<flags> に無効な値が入っている。"
4464
4465 #.  FIXME . To confirm with Al Viro that this was intended, and its rationale
4466 #. type: Plain text
4467 #: build/C/man2/dup.2:196
4468 msgid "(B<dup3>())  I<oldfd> was equal to I<newfd>."
4469 msgstr "(B<dup3>()) I<oldfd> が I<newfd> と同じであった。"
4470
4471 #. type: TP
4472 #: build/C/man2/dup.2:196 build/C/man2/execve.2:422 build/C/man2/fcntl.2:1607
4473 #: build/C/man3/getlogin.3:105
4474 #, no-wrap
4475 msgid "B<EMFILE>"
4476 msgstr "B<EMFILE>"
4477
4478 #. type: Plain text
4479 #: build/C/man2/dup.2:203
4480 msgid ""
4481 "The process already has the maximum number of file descriptors open and "
4482 "tried to open a new one (see the discussion of B<RLIMIT_NOFILE> in "
4483 "B<getrlimit>(2))."
4484 msgstr ""
4485 "プロセスがすでにオープンできる最大数までファイルディスクリプタ を開いていて、"
4486 "さらに新しいものを開こうとした (B<getrlimit>(2) のリソース上限 "
4487 "B<RLIMIT_NOFILE> を参照)。"
4488
4489 #. type: Plain text
4490 #: build/C/man2/dup.2:208
4491 msgid ""
4492 "B<dup3>()  was added to Linux in version 2.6.27; glibc support is available "
4493 "starting with version 2.9."
4494 msgstr ""
4495 "B<dup3>()  はバージョン 2.6.27 で Linux に追加された。 glibc によるサポートは"
4496 "バージョン 2.9 以降で利用できる。"
4497
4498 #. type: Plain text
4499 #: build/C/man2/dup.2:212
4500 msgid "B<dup>(), B<dup2>(): SVr4, 4.3BSD, POSIX.1-2001."
4501 msgstr "B<dup>(), B<dup2>(): SVr4, 4.3BSD, POSIX.1-2001."
4502
4503 #.  SVr4 documents additional
4504 #.  EINTR and ENOLINK error conditions.  POSIX.1 adds EINTR.
4505 #.  The EBUSY return is Linux-specific.
4506 #. type: Plain text
4507 #: build/C/man2/dup.2:218
4508 msgid "B<dup3>()  is Linux-specific."
4509 msgstr "B<dup3>()  は Linux 固有である。"
4510
4511 #. type: Plain text
4512 #: build/C/man2/dup.2:232
4513 msgid ""
4514 "The error returned by B<dup2>()  is different from that returned by "
4515 "B<fcntl(>..., B<F_DUPFD>, ...B<)> when I<newfd> is out of range.  On some "
4516 "systems, B<dup2>()  also sometimes returns B<EINVAL> like B<F_DUPFD>."
4517 msgstr ""
4518 "I<newfd> が範囲を超えた時に返されるエラーは、 B<dup2>()  と B<fcntl(>..., "
4519 "B<F_DUPFD>, ...B<)> では異っている。 B<dup2>()  が B<F_DUPFD> と同じように "
4520 "B<EINVAL> を返すシステムもある。"
4521
4522 #. type: Plain text
4523 #: build/C/man2/dup.2:248
4524 msgid ""
4525 "If I<newfd> was open, any errors that would have been reported at "
4526 "B<close>(2)  time are lost.  If this is of concern, then\\(emunless the "
4527 "program is single-threaded and does not allocate file descriptors in signal "
4528 "handlers\\(emthe correct approach is I<not> to close I<newfd> before calling "
4529 "B<dup2>(), because of the race condition described above.  Instead, code "
4530 "something like the following could be used:"
4531 msgstr ""
4532 "I<newfd> がオープンされていた場合、\n"
4533 "B<close>(2) 時に報告されることになるエラーはすべて失われる。\n"
4534 "これが心配で、シングルスレッドかつシグナルハンドラーで\n"
4535 "ファイルディスクリプタを割り当てるようなプログラムでない場合には、\n"
4536 "正しい方法は B<dup2>() を呼び出す前に\n"
4537 "I<newfd> をクローズ「しない」ことである。\n"
4538 "なぜなら、上で説明した競合状況があるからである。\n"
4539 "代わりに、以下のようなコードが使用できることだろう。"
4540
4541 #. type: Plain text
4542 #: build/C/man2/dup.2:253
4543 #, no-wrap
4544 msgid ""
4545 "    /* Obtain a duplicate of 'newfd' that can subsequently\n"
4546 "       be used to check for close() errors; an EBADF error\n"
4547 "       means that 'newfd' was not open. */\n"
4548 msgstr ""
4549 "    /* あとで close() エラーをチェックするのに使用できる\n"
4550 "       ように 'newfd' の複製を取得する。 EBADF エラーは\n"
4551 "       'newfd' がオープンされていないことを意味する。 */\n"
4552
4553 #. type: Plain text
4554 #: build/C/man2/dup.2:258
4555 #, no-wrap
4556 msgid ""
4557 "    tmpfd = dup(newfd);\n"
4558 "    if (tmpfd == -1 && errno != EBADF) {\n"
4559 "        /* Handle unexpected dup() error */\n"
4560 "    }\n"
4561 msgstr ""
4562 "    tmpfd = dup(newfd);\n"
4563 "    if (tmpfd == -1 && errno != EBADF) {\n"
4564 "        /* 予期しない dup() のエラーを処理する */\n"
4565 "    }\n"
4566
4567 #. type: Plain text
4568 #: build/C/man2/dup.2:260
4569 #, no-wrap
4570 msgid "    /* Atomically duplicate 'oldfd' on 'newfd' */\n"
4571 msgstr "    /* アトミックに 'oldfd' を 'newfd' に複製する */\n"
4572
4573 #. type: Plain text
4574 #: build/C/man2/dup.2:264
4575 #, no-wrap
4576 msgid ""
4577 "    if (dup2(oldfd, newfd) == -1) {\n"
4578 "        /* Handle dup2() error */\n"
4579 "    }\n"
4580 msgstr ""
4581 "    if (dup2(oldfd, newfd) == -1) {\n"
4582 "        /* dup2() のエラーを処理する */\n"
4583 "    }\n"
4584
4585 #. type: Plain text
4586 #: build/C/man2/dup.2:267
4587 #, no-wrap
4588 msgid ""
4589 "    /* Now check for close() errors on the file originally\n"
4590 "       referred to by 'newfd' */\n"
4591 msgstr ""
4592 "    /* ここでもともと 'newfd' で参照されていたファイルの\n"
4593 "       close() エラーをチェックする */\n"
4594
4595 #. type: Plain text
4596 #: build/C/man2/dup.2:273
4597 #, no-wrap
4598 msgid ""
4599 "    if (tmpfd != -1) {\n"
4600 "        if (close(tmpfd) == -1) {\n"
4601 "            /* Handle errors from close */\n"
4602 "        }\n"
4603 "    }\n"
4604 msgstr ""
4605 "    if (tmpfd != -1) {\n"
4606 "        if (close(tmpfd) == -1) {\n"
4607 "            /* close からのエラーを処理する */\n"
4608 "        }\n"
4609 "    }\n"
4610
4611 #. type: Plain text
4612 #: build/C/man2/dup.2:278
4613 msgid "B<close>(2), B<fcntl>(2), B<open>(2)"
4614 msgstr "B<close>(2), B<fcntl>(2), B<open>(2)"
4615
4616 #. type: TH
4617 #: build/C/man3/encrypt.3:30
4618 #, no-wrap
4619 msgid "ENCRYPT"
4620 msgstr "ENCRYPT"
4621
4622 #. type: TH
4623 #: build/C/man3/encrypt.3:30
4624 #, no-wrap
4625 msgid "2013-07-22"
4626 msgstr "2013-07-22"
4627
4628 #. type: Plain text
4629 #: build/C/man3/encrypt.3:33
4630 msgid "encrypt, setkey, encrypt_r, setkey_r - encrypt 64-bit messages"
4631 msgstr ""
4632 "encrypt, setkey, encrypt_r, setkey_r - 64 ビットのメッセージを暗号化する"
4633
4634 #. type: Plain text
4635 #: build/C/man3/encrypt.3:35 build/C/man3/encrypt.3:41
4636 msgid "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */"
4637 msgstr "B<#define _XOPEN_SOURCE> /* feature_test_macros(7) 参照 */"
4638
4639 #. type: Plain text
4640 #: build/C/man3/encrypt.3:39
4641 msgid "B<void encrypt(char >I<block>B<[64], int >I<edflag>B<);>"
4642 msgstr "B<void encrypt(char >I<block>B<[64], int >I<edflag>B<);>"
4643
4644 #. type: Plain text
4645 #: build/C/man3/encrypt.3:43
4646 msgid "B<#include E<lt>stdlib.hE<gt>>"
4647 msgstr "B<#include E<lt>stdlib.hE<gt>>"
4648
4649 #. type: Plain text
4650 #: build/C/man3/encrypt.3:45
4651 msgid "B<void setkey(const char *>I<key>B<);>"
4652 msgstr "B<void setkey(const char *>I<key>B<);>"
4653
4654 #. type: Plain text
4655 #: build/C/man3/encrypt.3:47 build/C/man3/getumask.3:33
4656 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
4657 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
4658
4659 #. type: Plain text
4660 #: build/C/man3/encrypt.3:49
4661 msgid "B<#include E<lt>crypt.hE<gt>>"
4662 msgstr "B<#include E<lt>crypt.hE<gt>>"
4663
4664 #. type: Plain text
4665 #: build/C/man3/encrypt.3:51
4666 msgid "B<void setkey_r(const char *>I<key>B<, struct crypt_data *>I<data>B<);>"
4667 msgstr ""
4668 "B<void setkey_r(const char *>I<key>B<, struct crypt_data *>I<data>B<);>"
4669
4670 #. type: Plain text
4671 #: build/C/man3/encrypt.3:54
4672 msgid ""
4673 "B<void encrypt_r(char *>I<block>B<, int >I<edflag>B<, struct crypt_data "
4674 "*>I<data>B<);>"
4675 msgstr ""
4676 "B<void encrypt_r(char *>I<block>B<, int >I<edflag>B<, struct crypt_data "
4677 "*>I<data>B<);>"
4678
4679 #. type: Plain text
4680 #: build/C/man3/encrypt.3:56
4681 msgid "Each of these requires linking with I<-lcrypt>."
4682 msgstr "これらの関数は I<-lcrypt> でリンクする必要がある。"
4683
4684 #. type: Plain text
4685 #: build/C/man3/encrypt.3:68
4686 msgid ""
4687 "These functions encrypt and decrypt 64-bit messages.  The B<setkey>()  "
4688 "function sets the key used by B<encrypt>().  The I<key> argument used here "
4689 "is an array of 64 bytes, each of which has numerical value 1 or 0.  The "
4690 "bytes key[n] where n=8*i-1 are ignored, so that the effective key length is "
4691 "56 bits."
4692 msgstr ""
4693 "これらの関数は、64 ビットのメッセージの暗号化と復号化を行う。 B<setkey>()  関"
4694 "数は B<encrypt>()  によって使われる暗号鍵を設定する。 ここで使われる引き数 "
4695 "I<key> は 64 バイトの配列であり、各バイトは数値 1 または 0 である。 n=8*i-1 "
4696 "に対するバイト key[n] は無視されるので、 有効な暗号鍵の長さは 56 ビットにな"
4697 "る。"
4698
4699 #. type: Plain text
4700 #: build/C/man3/encrypt.3:80
4701 msgid ""
4702 "The B<encrypt>()  function modifies the passed buffer, encoding if I<edflag> "
4703 "is 0, and decoding if 1 is being passed.  Like the I<key> argument, also "
4704 "I<block> is a bit vector representation of the actual value that is "
4705 "encoded.  The result is returned in that same vector."
4706 msgstr ""
4707 "B<encrypt>()  関数は、 I<edflag> が 0 の場合は暗号化し、1 が渡された場合は復"
4708 "号化するというように、 渡されたバッファを変更する。 引き数 I<key> と同様に、 "
4709 "I<block> はエンコードされた実際の値を表現するビットの配列である。 結果はこの"
4710 "同じ配列を使って返される。"
4711
4712 #. type: Plain text
4713 #: build/C/man3/encrypt.3:90
4714 msgid ""
4715 "These two functions are not reentrant, that is, the key data is kept in "
4716 "static storage.  The functions B<setkey_r>()  and B<encrypt_r>()  are the "
4717 "reentrant versions.  They use the following structure to hold the key data:"
4718 msgstr ""
4719 "これら 2 つの関数はリエントラント (reentrant) ではない。 つまり暗号鍵データは"
4720 "静的な領域に保存される。 関数 B<setkey_r>()  と B<encrypt_r>()  はリエントラ"
4721 "ントなバージョンである。 これらの関数は暗号鍵データを保持するために以下のよう"
4722 "な構造体を使う。"
4723
4724 #. type: Plain text
4725 #: build/C/man3/encrypt.3:105
4726 #, no-wrap
4727 msgid ""
4728 "struct crypt_data {\n"
4729 "    char     keysched[16 * 8];\n"
4730 "    char     sb0[32768];\n"
4731 "    char     sb1[32768];\n"
4732 "    char     sb2[32768];\n"
4733 "    char     sb3[32768];\n"
4734 "    char     crypt_3_buf[14];\n"
4735 "    char     current_salt[2];\n"
4736 "    long int current_saltbits;\n"
4737 "    int      direction;\n"
4738 "    int      initialized;\n"
4739 "};\n"
4740 msgstr ""
4741 "struct crypt_data {\n"
4742 "    char     keysched[16 * 8];\n"
4743 "    char     sb0[32768];\n"
4744 "    char     sb1[32768];\n"
4745 "    char     sb2[32768];\n"
4746 "    char     sb3[32768];\n"
4747 "    char     crypt_3_buf[14];\n"
4748 "    char     current_salt[2];\n"
4749 "    long int current_saltbits;\n"
4750 "    int      direction;\n"
4751 "    int      initialized;\n"
4752 "};\n"
4753
4754 #. type: Plain text
4755 #: build/C/man3/encrypt.3:113
4756 msgid "Before calling B<setkey_r>()  set I<data-E<gt>initialized> to zero."
4757 msgstr ""
4758 "B<setkey_r>()  を呼び出す前には、 I<data-E<gt>initialized> を 0 に設定するこ"
4759 "と。"
4760
4761 #. type: Plain text
4762 #: build/C/man3/encrypt.3:115
4763 msgid "These functions do not return any value."
4764 msgstr "これらの関数は、なにも値を返さない。"
4765
4766 #. type: Plain text
4767 #: build/C/man3/encrypt.3:120
4768 msgid ""
4769 "Set I<errno> to zero before calling the above functions.  On success, it is "
4770 "unchanged."
4771 msgstr ""
4772 "上記の関数を呼び出す前に I<errno> を 0 に設定すること。 成功した場合、この値"
4773 "は変更されない。"
4774
4775 #. type: Plain text
4776 #: build/C/man3/encrypt.3:124
4777 msgid ""
4778 "The function is not provided.  (For example because of former USA export "
4779 "restrictions.)"
4780 msgstr ""
4781 "(例えば以前のアメリカ合衆国輸出規制などにより)  この関数が提供されていない。"
4782
4783 #. type: Plain text
4784 #: build/C/man3/encrypt.3:131
4785 msgid "The B<encrypt>()  and B<setkey>()  functions are not thread-safe."
4786 msgstr "関数 B<encrypt>() と B<setkey>() はスレッドセーフではない。"
4787
4788 #. type: Plain text
4789 #: build/C/man3/encrypt.3:137
4790 msgid "The B<encrypt_r>()  and B<setkey_r>()  functions are thread-safe."
4791 msgstr "関数 B<encrypt_r>() と B<setkey_r>() はスレッドセーフである。"
4792
4793 #. type: Plain text
4794 #: build/C/man3/encrypt.3:148
4795 msgid ""
4796 "The functions B<encrypt>()  and B<setkey>()  conform to SVr4, SUSv2, and "
4797 "POSIX.1-2001.  The functions B<encrypt_r>()  and B<setkey_r>()  are GNU "
4798 "extensions."
4799 msgstr ""
4800 "関数 B<encrypt>()  と B<setkey>()  は SVr4, SUSv2, and POSIX.1-2001 に準拠す"
4801 "る。 関数 B<encrypt_r>()  と B<setkey_r>()  は GNU 拡張である。"
4802
4803 #. type: Plain text
4804 #: build/C/man3/encrypt.3:150
4805 msgid "In glibc 2.2, these functions use the DES algorithm."
4806 msgstr "glibc 2.2 では、これらの関数は DES アルゴリズムを使う。"
4807
4808 #. type: Plain text
4809 #: build/C/man3/encrypt.3:157
4810 msgid ""
4811 "You need to link with libcrypt to compile this example with glibc.  To do "
4812 "useful work, the I<key[]> and I<txt[]> arrays must be filled with a useful "
4813 "bit pattern."
4814 msgstr ""
4815 "この例を glibc でコンパイルするには libcrypt とリンクする必要がある。 実際に"
4816 "動作させるためには、配列 I<key[]> と I<txt[]> に有効なビットパターンを指定し"
4817 "なければならない。"
4818
4819 #. type: Plain text
4820 #: build/C/man3/encrypt.3:162
4821 #, no-wrap
4822 msgid ""
4823 "#define _XOPEN_SOURCE\n"
4824 "#include E<lt>unistd.hE<gt>\n"
4825 "#include E<lt>stdlib.hE<gt>\n"
4826 msgstr ""
4827 "#define _XOPEN_SOURCE\n"
4828 "#include E<lt>unistd.hE<gt>\n"
4829 "#include E<lt>stdlib.hE<gt>\n"
4830
4831 #. type: Plain text
4832 #: build/C/man3/encrypt.3:168
4833 #, no-wrap
4834 msgid ""
4835 "int\n"
4836 "main(void)\n"
4837 "{\n"
4838 "    char key[64];      /* bit pattern for key */\n"
4839 "    char txt[64];      /* bit pattern for messages */\n"
4840 msgstr ""
4841 "int\n"
4842 "main(void)\n"
4843 "{\n"
4844 "    char key[64];      /* bit pattern for key */\n"
4845 "    char txt[64];      /* bit pattern for messages */\n"
4846
4847 #. type: Plain text
4848 #: build/C/man3/encrypt.3:173
4849 #, no-wrap
4850 msgid ""
4851 "    setkey(key);\n"
4852 "    encrypt(txt, 0);   /* encode */\n"
4853 "    encrypt(txt, 1);   /* decode */\n"
4854 "}\n"
4855 msgstr ""
4856 "    setkey(key);\n"
4857 "    encrypt(txt, 0);   /* encode */\n"
4858 "    encrypt(txt, 1);   /* decode */\n"
4859 "}\n"
4860
4861 #.  .BR fcrypt (3)
4862 #. type: Plain text
4863 #: build/C/man3/encrypt.3:179
4864 msgid "B<cbc_crypt>(3), B<crypt>(3), B<ecb_crypt>(3),"
4865 msgstr "B<cbc_crypt>(3), B<crypt>(3), B<ecb_crypt>(3)"
4866
4867 #. type: TH
4868 #: build/C/man7/environ.7:34
4869 #, no-wrap
4870 msgid "ENVIRON"
4871 msgstr "ENVIRON"
4872
4873 #. type: Plain text
4874 #: build/C/man7/environ.7:37
4875 msgid "environ - user environment"
4876 msgstr "environ - ユーザ環境"
4877
4878 #. type: Plain text
4879 #: build/C/man7/environ.7:40
4880 #, no-wrap
4881 msgid "B<extern char **>I<environ>B<;>\n"
4882 msgstr "B<extern char **>I<environ>B<;>\n"
4883
4884 #. type: Plain text
4885 #: build/C/man7/environ.7:56
4886 msgid ""
4887 "The variable I<environ> points to an array of pointers to strings called the "
4888 "\"environment\".  The last pointer in this array has the value NULL.  (This "
4889 "variable must be declared in the user program, but is declared in the header "
4890 "file I<E<lt>unistd.hE<gt>> if the B<_GNU_SOURCE> feature test macro is "
4891 "defined.)  This array of strings is made available to the process by the "
4892 "B<exec>(3)  call that started the process."
4893 msgstr ""
4894 "変数 I<environ> は「環境 (environment)」と呼ばれる文字列へのポインタの配列で"
4895 "ある。 この配列の最後のポインタの値は NULL である。 (この変数はユーザープログ"
4896 "ラムで宣言しなければならないが、 機能検査マクロ B<_GNU_SOURCE> が定義されてい"
4897 "ればヘッダーファイル I<E<lt>unistd.hE<gt>> で宣言される)。 この文字列配列"
4898 "は、 プロセスを起動する B<exec>(3)  によって、その起動されたプロセスで利用で"
4899 "きるようになる。"
4900
4901 #. type: Plain text
4902 #: build/C/man7/environ.7:61
4903 msgid ""
4904 "By convention the strings in I<environ> have the form \"I<name>B<=>I<value>"
4905 "\".  Common examples are:"
4906 msgstr ""
4907 "通例では、 I<environ> の文字列は \"I<name>B<=>I<value>\" という書式をとる。 "
4908 "よく用いられる例を以下に示す。"
4909
4910 #. type: TP
4911 #: build/C/man7/environ.7:61
4912 #, no-wrap
4913 msgid "B<USER>"
4914 msgstr "B<USER>"
4915
4916 #. type: Plain text
4917 #: build/C/man7/environ.7:64
4918 msgid "The name of the logged-in user (used by some BSD-derived programs)."
4919 msgstr "ユーザのログイン名 (BSD 起源のプログラムなどによって使用される)。"
4920
4921 #. type: TP
4922 #: build/C/man7/environ.7:64
4923 #, no-wrap
4924 msgid "B<LOGNAME>"
4925 msgstr "B<LOGNAME>"
4926
4927 #. type: Plain text
4928 #: build/C/man7/environ.7:67
4929 msgid ""
4930 "The name of the logged-in user (used by some System-V derived programs)."
4931 msgstr "ユーザのログイン名(System V 起源のプログラムなどによって使用される)。"
4932
4933 #. type: TP
4934 #: build/C/man7/environ.7:67
4935 #, no-wrap
4936 msgid "B<HOME>"
4937 msgstr "B<HOME>"
4938
4939 #. type: Plain text
4940 #: build/C/man7/environ.7:73
4941 msgid ""
4942 "A user's login directory, set by B<login>(1)  from the password file "
4943 "B<passwd>(5)."
4944 msgstr ""
4945 "ユーザのログインディレクトリ。 B<login>(1)  がパスワードファイル "
4946 "B<passwd>(5)  から取得して設定する。"
4947
4948 #. type: TP
4949 #: build/C/man7/environ.7:73
4950 #, no-wrap
4951 msgid "B<LANG>"
4952 msgstr "B<LANG>"
4953
4954 #. type: Plain text
4955 #: build/C/man7/environ.7:91
4956 msgid ""
4957 "The name of a locale to use for locale categories when not overridden by "
4958 "B<LC_ALL> or more specific environment variables such as B<LC_COLLATE>, "
4959 "B<LC_CTYPE>, B<LC_MESSAGES>, B<LC_MONETARY>, B<LC_NUMERIC>, and B<LC_TIME> "
4960 "(see B<locale>(7)  for further details of the B<LC_*> environment variables)."
4961 msgstr ""
4962 "ロケールの各カテゴリで使用されるロケールの名前。B<LC_ALL> や、 より狭い範囲を"
4963 "対象とする環境変数 (B<LC_COLLATE>, B<LC_CTYPE>, B<LC_MESSAGES>, "
4964 "B<LC_MONETARY>, B<LC_NUMERIC>, B<LC_TIME> など)  によって上書きされることもあ"
4965 "る (B<LC_*> 環境変数のさらなる詳細は B<locale>(7) 参照)。"
4966
4967 #. type: TP
4968 #: build/C/man7/environ.7:91
4969 #, no-wrap
4970 msgid "B<PATH>"
4971 msgstr "B<PATH>"
4972
4973 #. type: Plain text
4974 #: build/C/man7/environ.7:106
4975 msgid ""
4976 "The sequence of directory prefixes that B<sh>(1)  and many other programs "
4977 "apply in searching for a file known by an incomplete pathname.  The prefixes "
4978 "are separated by \\(aqB<:>\\(aq.  (Similarly one has B<CDPATH> used by some "
4979 "shells to find the target of a change directory command, B<MANPATH> used by "
4980 "B<man>(1)  to find manual pages, and so on)"
4981 msgstr ""
4982 "B<sh>(1)  や他のプログラムが、フルパスで与えられなかった実行ファイルを検索す"
4983 "るとき、 ファイル名に前置されるディレクトリの配列。 各ディレクトリは \\(aqB<:"
4984 ">\\(aq によって区切られる。 (同じようなものに、 シェルがディレクトリ変更コマ"
4985 "ンドの変更先を探すために用いる B<CDPATH> や、 B<man>(1)  がマニュアルページの"
4986 "検索に用いる B<MANPATH> などがある。)"
4987
4988 #. type: TP
4989 #: build/C/man7/environ.7:106
4990 #, no-wrap
4991 msgid "B<PWD>"
4992 msgstr "B<PWD>"
4993
4994 #. type: Plain text
4995 #: build/C/man7/environ.7:110
4996 msgid "The current working directory.  Set by some shells."
4997 msgstr "現在のワーキングディレクトリ。いくつかのシェルが設定する。"
4998
4999 #. type: TP
5000 #: build/C/man7/environ.7:110
5001 #, no-wrap
5002 msgid "B<SHELL>"
5003 msgstr "B<SHELL>"
5004
5005 #. type: Plain text
5006 #: build/C/man7/environ.7:113
5007 msgid "The pathname of the user's login shell."
5008 msgstr "ユーザーのログインシェルのパス名。"
5009
5010 #. type: TP
5011 #: build/C/man7/environ.7:113
5012 #, no-wrap
5013 msgid "B<TERM>"
5014 msgstr "B<TERM>"
5015
5016 #. type: Plain text
5017 #: build/C/man7/environ.7:116
5018 msgid "The terminal type for which output is to be prepared."
5019 msgstr "端末の種類。出力はこれにあわせて用意される。"
5020
5021 #. type: TP
5022 #: build/C/man7/environ.7:116
5023 #, no-wrap
5024 msgid "B<PAGER>"
5025 msgstr "B<PAGER>"
5026
5027 #. type: Plain text
5028 #: build/C/man7/environ.7:119
5029 msgid "The user's preferred utility to display text files."
5030 msgstr ""
5031 "テキストファイルを表示するユーテリティ。ユーザーが好みのものを設定する。"
5032
5033 #. type: TP
5034 #: build/C/man7/environ.7:119
5035 #, no-wrap
5036 msgid "B<EDITOR>/B<VISUAL>"
5037 msgstr "B<EDITOR>/B<VISUAL>"
5038
5039 #.  .TP
5040 #.  .B BROWSER
5041 #.  The user's preferred utility to browse URLs. Sequence of colon-separated
5042 #.  browser commands. See http://www.catb.org/~esr/BROWSER/ .
5043 #. type: Plain text
5044 #: build/C/man7/environ.7:126
5045 msgid "The user's preferred utility to edit text files."
5046 msgstr ""
5047 "テキストファイルを編集するユーテリティ。ユーザーが好みのものを設定する。"
5048
5049 #. type: Plain text
5050 #: build/C/man7/environ.7:144
5051 msgid ""
5052 "Further names may be placed in the environment by the I<export> command and "
5053 "\"name=value\" in B<sh>(1), or by the I<setenv> command if you use "
5054 "B<csh>(1).  Arguments may also be placed in the environment at the point of "
5055 "an B<exec>(3).  A C program can manipulate its environment using the "
5056 "functions B<getenv>(3), B<putenv>(3), B<setenv>(3), and B<unsetenv>(3)."
5057 msgstr ""
5058 "環境に名前を追加する場合には、 B<sh>(1)  では I<export> コマンドと "
5059 "\"name=value\" を使用する。 B<csh>(1)  では I<setenv> コマンドを使用する。 "
5060 "B<exec>(3)  の引数としても環境を設定することができる。 C プログラムからは、 "
5061 "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3)  などの関数を用いて"
5062 "環境を扱うことができる。"
5063
5064 #. type: Plain text
5065 #: build/C/man7/environ.7:148
5066 msgid ""
5067 "Note that the behavior of many programs and library routines is influenced "
5068 "by the presence or value of certain environment variables.  A random "
5069 "collection:"
5070 msgstr ""
5071 "プログラムやライブラリルーチンの多くは、それぞれ適当な環境変数の存在 や値に"
5072 "よって、動作に影響を受けることがある。以下、適宜挙げてみよう。"
5073
5074 #. type: Plain text
5075 #: build/C/man7/environ.7:157
5076 msgid ""
5077 "The variables B<LANG>, B<LANGUAGE>, B<NLSPATH>, B<LOCPATH>, B<LC_ALL>, "
5078 "B<LC_MESSAGES>, and so on influence locale handling; see B<catopen>(3), "
5079 "B<gettext>(3), and B<locale>(7)."
5080 msgstr ""
5081 "B<LANG>, B<LANGUAGE>, B<NLSPATH>, B<LOCPATH>, B<LC_ALL>, B<LC_MESSAGES>, など"
5082 "の変数は、ロケールの扱いに影響する。 B<catopen>(3), B<gettext>(3), "
5083 "B<locale>(5) を参照。"
5084
5085 #. type: Plain text
5086 #: build/C/man7/environ.7:164
5087 msgid ""
5088 "B<TMPDIR> influences the path prefix of names created by B<tmpnam>(3)  and "
5089 "other routines, and the temporary directory used by B<sort>(1)  and other "
5090 "programs."
5091 msgstr ""
5092 "B<TMPDIR> は、 B<tmpnam>(3) などのルーチンによって作成されるファイル名や "
5093 "B<sort>(1) や他のプログラムが使用する一時ディレクトリに前置されるパスに影響す"
5094 "る。"
5095
5096 #. type: Plain text
5097 #: build/C/man7/environ.7:168
5098 msgid ""
5099 "B<LD_LIBRARY_PATH>, B<LD_PRELOAD> and other LD_* variables influence the "
5100 "behavior of the dynamic loader/linker."
5101 msgstr ""
5102 "B<LD_LIBRARY_PATH>, B<LD_PRELOAD> などの LD_* 変数はダイナミックローダ・リン"
5103 "カの動作に影響する。"
5104
5105 #. type: Plain text
5106 #: build/C/man7/environ.7:172
5107 msgid ""
5108 "B<POSIXLY_CORRECT> makes certain programs and library routines follow the "
5109 "prescriptions of POSIX."
5110 msgstr ""
5111 "B<POSIXLY_CORRECT> が指定されると、ある種のプログラムやライブラリルーチンは "
5112 "POSIX の規定に従うようになる。"
5113
5114 #. type: Plain text
5115 #: build/C/man7/environ.7:178
5116 msgid "The behavior of B<malloc>(3)  is influenced by B<MALLOC_*> variables."
5117 msgstr "B<malloc>(3)  の動作は B<MALLOC_*> 変数によって影響される。"
5118
5119 #. type: Plain text
5120 #: build/C/man7/environ.7:184
5121 msgid ""
5122 "The variable B<HOSTALIASES> gives the name of a file containing aliases to "
5123 "be used with B<gethostbyname>(3)."
5124 msgstr ""
5125 "B<HOSTALIAS> 変数は、 B<gethostbyname>(3)  が用いるエイリアスが書かれている"
5126 "ファイル名を与える。"
5127
5128 #. type: Plain text
5129 #: build/C/man7/environ.7:195
5130 msgid ""
5131 "B<TZ> and B<TZDIR> give timezone information used by B<tzset>(3)  and "
5132 "through that by functions like B<ctime>(3), B<localtime>(3), B<mktime>(3), "
5133 "B<strftime>(3).  See also B<tzselect>(8)."
5134 msgstr ""
5135 "B<TZ> と B<TZDIR> は B<tzset>(3)  および、この関数を使う B<ctime>(3), "
5136 "B<localtime>(3), B<mktime>(3), B<strftime>(3)  といった関数で用いられるタイム"
5137 "ゾーンの情報を与える。 B<tzselect>(8)  も参照のこと。"
5138
5139 #. type: Plain text
5140 #: build/C/man7/environ.7:199
5141 msgid ""
5142 "B<TERMCAP> gives information on how to address a given terminal (or gives "
5143 "the name of a file containing such information)."
5144 msgstr ""
5145 "B<TERMCAP> は、現在の端末情報の取得先 (あるいはそのような情報が書かれている"
5146 "ファイル名) を与える。"
5147
5148 #. type: Plain text
5149 #: build/C/man7/environ.7:202
5150 msgid ""
5151 "B<COLUMNS> and B<LINES> tell applications about the window size, possibly "
5152 "overriding the actual size."
5153 msgstr ""
5154 "B<COLUMNS> と B<LINES> アプリケーションにウインドウのサイズを伝える。 実際の"
5155 "サイズとは違う値を与えることもできる。"
5156
5157 #. type: Plain text
5158 #: build/C/man7/environ.7:207
5159 msgid ""
5160 "B<PRINTER> or B<LPDEST> may specify the desired printer to use.  See "
5161 "B<lpr>(1)."
5162 msgstr ""
5163 "B<PRINTER> または B<LPDEST> 用いたいプリンタを指定する。 B<lpr>(1)  を参照の"
5164 "こと。"
5165
5166 #. type: Plain text
5167 #: build/C/man7/environ.7:209
5168 msgid "Etc."
5169 msgstr "などなど..."
5170
5171 #. type: Plain text
5172 #: build/C/man7/environ.7:214
5173 msgid ""
5174 "Clearly there is a security risk here.  Many a system command has been "
5175 "tricked into mischief by a user who specified unusual values for B<IFS> or "
5176 "B<LD_LIBRARY_PATH>."
5177 msgstr ""
5178 "これらの中には、明らかにセキュリティ上の危険が存在する。 ユーザーが B<IFS> "
5179 "や B<LD_LIBRARY_PATH> に異常な値を与えたことによって、 これまで多くのシステム"
5180 "コマンドがだまされて、 システムをひどい目にあわせてきた。"
5181
5182 #. type: Plain text
5183 #: build/C/man7/environ.7:247
5184 msgid ""
5185 "There is also the risk of name space pollution.  Programs like I<make> and "
5186 "I<autoconf> allow overriding of default utility names from the environment "
5187 "with similarly named variables in all caps.  Thus one uses B<CC> to select "
5188 "the desired C compiler (and similarly B<MAKE>, B<AR>, B<AS>, B<FC>, B<LD>, "
5189 "B<LEX>, B<RM>, B<YACC>, etc.).  However, in some traditional uses such an "
5190 "environment variable gives options for the program instead of a pathname.  "
5191 "Thus, one has B<MORE>, B<LESS>, and B<GZIP>.  Such usage is considered "
5192 "mistaken, and to be avoided in new programs.  The authors of I<gzip> should "
5193 "consider renaming their option to B<GZIP_OPT>."
5194 msgstr ""
5195 "名前空間が汚染される危険性も存在する。 I<make> や I<autoconf> のようなプログ"
5196 "ラムでは、デフォルトのユーティリティを 環境にある似たような名前の変数で上書き"
5197 "することができる (通常はすべて大文字の変数を用いる)。 すなわち、利用したい C "
5198 "コンパイラは B<CC> で選択できる。また同様に B<MAKE>, B<AR>, B<AS>, B<FC>, "
5199 "B<LD>, B<LEX>, B<RM>, B<YACC> なども用いることができる。 ところが一方では、こ"
5200 "のような変数を (パス名ではなく)  プログラムに対するオプションとして扱うような"
5201 "流儀も存在してきた。 例えば B<MORE>, B<LESS>, B<GZIP> などがそうである。 この"
5202 "ような利用法は間違っていると考えるべきで、 新しいプログラムでは避けるべきであ"
5203 "る。 I<gzip> の作者たちは、オプションを与える環境変数を B<GZIP_OPT> に改名す"
5204 "ることを考えるほうがよい。"
5205
5206 #. type: Plain text
5207 #: build/C/man7/environ.7:264
5208 msgid ""
5209 "B<env>(1), B<bash>(1), B<csh>(1), B<login>(1), B<printenv>(1), B<sh>(1), "
5210 "B<tcsh>(1), B<execve>(2), B<clearenv>(3), B<exec>(3), B<getenv>(3), "
5211 "B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<locale>(7), B<ld.so>(8)"
5212 msgstr ""
5213 "B<env>(1), B<bash>(1), B<csh>(1), B<login>(1), B<printenv>(1), B<sh>(1), "
5214 "B<tcsh>(1), B<execve>(2), B<clearenv>(3), B<exec>(3), B<getenv>(3), "
5215 "B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<locale>(7), B<ld.so>(8)"
5216
5217 #. type: TH
5218 #: build/C/man3/euidaccess.3:25
5219 #, no-wrap
5220 msgid "EUIDACCESS"
5221 msgstr "EUIDACCESS"
5222
5223 #. type: TH
5224 #: build/C/man3/euidaccess.3:25
5225 #, no-wrap
5226 msgid "2013-09-25"
5227 msgstr "2013-09-25"
5228
5229 #. type: Plain text
5230 #: build/C/man3/euidaccess.3:28
5231 msgid "euidaccess, eaccess - check effective user's permissions for a file"
5232 msgstr "euidaccess, eaccess - ファイルへのアクセス権を実効ユーザでチェックする"
5233
5234 #. type: Plain text
5235 #: build/C/man3/euidaccess.3:32
5236 #, no-wrap
5237 msgid ""
5238 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
5239 "B<#include E<lt>unistd.hE<gt>>\n"
5240 msgstr ""
5241 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
5242 "B<#include E<lt>unistd.hE<gt>>\n"
5243
5244 #. type: Plain text
5245 #: build/C/man3/euidaccess.3:35
5246 #, no-wrap
5247 msgid ""
5248 "B<int euidaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5249 "B<int eaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5250 msgstr ""
5251 "B<int euidaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5252 "B<int eaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5253
5254 #. type: Plain text
5255 #: build/C/man3/euidaccess.3:47
5256 msgid ""
5257 "Like B<access>(2), B<euidaccess>()  checks permissions and existence of the "
5258 "file identified by its argument I<pathname>.  However, whereas B<access>(2)  "
5259 "performs checks using the real user and group identifiers of the process, "
5260 "B<euidaccess>()  uses the effective identifiers."
5261 msgstr ""
5262 "B<access>(2)  と同様、 B<euidaccess>()  は引き数 I<pathname> で指定されたファ"
5263 "イルの許可 (permission) と存在のチェックを行う。 B<access>(2)  はプロセスの"
5264 "実 (real) ユーザID / 実グループID を用いてチェックを行うのに対し、 "
5265 "B<euidaccess>()  は実効 (effective) ID を用いる。"
5266
5267 #. type: Plain text
5268 #: build/C/man3/euidaccess.3:53
5269 msgid ""
5270 "I<mode> is a mask consisting of one or more of B<R_OK>, B<W_OK>, B<X_OK>, "
5271 "and B<F_OK>, with the same meanings as for B<access>(2)."
5272 msgstr ""
5273 "I<mode> は B<R_OK>, B<W_OK>, B<X_OK>, B<F_OK> の一つ以上から構成されるマスク"
5274 "である。 B<R_OK>, B<W_OK>, B<X_OK>, B<F_OK> は B<access>(2)  と同じ意味を持"
5275 "つ。"
5276
5277 #. type: Plain text
5278 #: build/C/man3/euidaccess.3:58
5279 msgid ""
5280 "B<eaccess>()  is a synonym for B<euidaccess>(), provided for compatibility "
5281 "with some other systems."
5282 msgstr ""
5283 "B<eaccess>()  は B<euidaccess>()  の同義語であり、他のいくつかのシステムとの"
5284 "互換性のために提供されている。"
5285
5286 #. type: Plain text
5287 #: build/C/man3/euidaccess.3:66
5288 msgid ""
5289 "On success (all requested permissions granted), zero is returned.  On error "
5290 "(at least one bit in I<mode> asked for a permission that is denied, or some "
5291 "other error occurred), -1 is returned, and I<errno> is set appropriately."
5292 msgstr ""
5293 "成功した場合 (要求した全てについて許可が得られたら)、ゼロが返される。 エラー"
5294 "の場合 (I<mode> の少なくとも一つのビットで要求した許可がなかった場合や、 他の"
5295 "エラーが起こった場合)、-1 が返され、 I<errno> が適切に設定される。"
5296
5297 #. type: Plain text
5298 #: build/C/man3/euidaccess.3:69
5299 msgid "As for B<access>(2)."
5300 msgstr "B<access>(2)  と同じ。"
5301
5302 #. type: Plain text
5303 #: build/C/man3/euidaccess.3:73
5304 msgid "The B<eaccess>()  function was added to glibc in version 2.4."
5305 msgstr "B<eaccess>()  関数は glibc のバージョン 2.4 で追加された。"
5306
5307 #. type: Plain text
5308 #: build/C/man3/euidaccess.3:80
5309 msgid "The B<euidaccess>()  and B<eaccess>()  functions are thread-safe."
5310 msgstr "関数 B<euidaccess>() と B<eaccess>() はスレッドセーフである。"
5311
5312 #.  e.g., FreeBSD 6.1.
5313 #. type: Plain text
5314 #: build/C/man3/euidaccess.3:86
5315 msgid ""
5316 "These functions are nonstandard.  Some other systems have an B<eaccess>()  "
5317 "function."
5318 msgstr ""
5319 "これらの関数は非標準である。 他のいくつかのシステムには B<eaccess>()  関数が"
5320 "ある。"
5321
5322 #. type: Plain text
5323 #: build/C/man3/euidaccess.3:93
5324 msgid ""
5325 "I<Warning>: Using this function to check a process's permissions on a file "
5326 "before performing some operation based on that information leads to race "
5327 "conditions: the file permissions may change between the two steps.  "
5328 "Generally, it is safer just to attempt the desired operation and handle any "
5329 "permission error that occurs."
5330 msgstr ""
5331 "I<警告>: \n"
5332 "ある操作を実行する前にこの関数を使ってファイルに対するプロセスのアクセス許可"
5333 "を\n"
5334 "確認してから、その情報に基づいて操作を行うと、競合条件が発生する可能性があ"
5335 "る。\n"
5336 "これは二つの操作の間でファイルのアクセス許可が変化する場合があるからであ"
5337 "る。\n"
5338 "一般的には、必要な操作のみを行い、その際に発生したアクセス許可に関するエラー"
5339 "を\n"
5340 "処理する方が安全である。"
5341
5342 #. type: Plain text
5343 #: build/C/man3/euidaccess.3:101
5344 msgid ""
5345 "This function always dereferences symbolic links.  If you need to check the "
5346 "permissions on a symbolic link, use B<faccessat>(2)  with the flags "
5347 "B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW>."
5348 msgstr ""
5349 "この関数は常にシンボリックリンクの展開を行う。\n"
5350 "シンボリックリンクのアクセス許可を確認する必要がある場合は、\n"
5351 "フラグ B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> を付けて\n"
5352 "B<faccessat>(2) を使うこと。"
5353
5354 #. type: Plain text
5355 #: build/C/man3/euidaccess.3:112
5356 msgid ""
5357 "B<access>(2), B<chmod>(2), B<chown>(2), B<faccessat>(2), B<open>(2), "
5358 "B<setgid>(2), B<setuid>(2), B<stat>(2), B<credentials>(7), "
5359 "B<path_resolution>(7)"
5360 msgstr ""
5361 "B<access>(2), B<chmod>(2), B<chown>(2), B<faccessat>(2), B<open>(2), "
5362 "B<setgid>(2), B<setuid>(2), B<stat>(2), B<credentials>(7), "
5363 "B<path_resolution>(7)"
5364
5365 #. type: TH
5366 #: build/C/man3/exec.3:41
5367 #, no-wrap
5368 msgid "EXEC"
5369 msgstr "EXEC"
5370
5371 #. type: Plain text
5372 #: build/C/man3/exec.3:44
5373 msgid "execl, execlp, execle, execv, execvp, execvpe - execute a file"
5374 msgstr "execl, execlp, execle, execv, execvp, execvpe - ファイルを実行する"
5375
5376 #. type: Plain text
5377 #: build/C/man3/exec.3:48
5378 msgid "B<extern char **environ;>"
5379 msgstr "B<extern char **environ;>"
5380
5381 #. type: Plain text
5382 #: build/C/man3/exec.3:50
5383 msgid "B<int execl(const char *>I<path>B<, const char *>I<arg>B<, ...);>"
5384 msgstr "B<int execl(const char *>I<path>B<, const char *>I<arg>B<, ...);>"
5385
5386 #. type: Plain text
5387 #: build/C/man3/exec.3:52
5388 msgid "B<int execlp(const char *>I<file>B<, const char *>I<arg>B<, ...);>"
5389 msgstr "B<int execlp(const char *>I<file>B<, const char *>I<arg>B<, ...);>"
5390
5391 #. type: Plain text
5392 #: build/C/man3/exec.3:54
5393 msgid "B<int execle(const char *>I<path>B<, const char *>I<arg>B<,>"
5394 msgstr "B<int execle(const char *>I<path>B<, const char *>I<arg>B<,>"
5395
5396 #. type: Plain text
5397 #: build/C/man3/exec.3:56
5398 msgid "B< ..., char * const >I<envp>B<[]);>"
5399 msgstr "B< ..., char * const >I<envp>B<[]);>"
5400
5401 #. type: Plain text
5402 #: build/C/man3/exec.3:58
5403 msgid "B<int execv(const char *>I<path>B<, char *const >I<argv>B<[]);>"
5404 msgstr "B<int execv(const char *>I<path>B<, char *const >I<argv>B<[]);>"
5405
5406 #. type: Plain text
5407 #: build/C/man3/exec.3:60
5408 msgid "B<int execvp(const char *>I<file>B<, char *const >I<argv>B<[]);>"
5409 msgstr "B<int execvp(const char *>I<file>B<, char *const >I<argv>B<[]);>"
5410
5411 #. type: Plain text
5412 #: build/C/man3/exec.3:62
5413 msgid "B<int execvpe(const char *>I<file>B<, char *const >I<argv>B<[],>"
5414 msgstr "B<int execvpe(const char *>I<file>B<, char *const >I<argv>B<[],>"
5415
5416 #. type: Plain text
5417 #: build/C/man3/exec.3:64 build/C/man2/execve.2:46
5418 msgid "B< char *const >I<envp>B<[]);>"
5419 msgstr "B< char *const >I<envp>B<[]);>"
5420
5421 #. type: Plain text
5422 #: build/C/man3/exec.3:72
5423 msgid "B<execvpe>(): _GNU_SOURCE"
5424 msgstr "B<execvpe>(): _GNU_SOURCE"
5425
5426 #. type: Plain text
5427 #: build/C/man3/exec.3:82
5428 msgid ""
5429 "The B<exec>()  family of functions replaces the current process image with a "
5430 "new process image.  The functions described in this manual page are front-"
5431 "ends for B<execve>(2).  (See the manual page for B<execve>(2)  for further "
5432 "details about the replacement of the current process image.)"
5433 msgstr ""
5434 "B<exec>()  ファミリーの関数は現在のプロセスイメージを新しいプロセスイメージで"
5435 "置き 換える。このマニュアルで説明されている関数は B<execve>(2)  のフロントエ"
5436 "ンドである。 (現在のプロセスイメージの置き換えについての詳細は B<execve>(2)  "
5437 "のマニュアルを参照)"
5438
5439 #. type: Plain text
5440 #: build/C/man3/exec.3:85
5441 msgid ""
5442 "The initial argument for these functions is the name of a file that is to be "
5443 "executed."
5444 msgstr "これらの関数の最初の引き数は、実行されるファイルの名前である。"
5445
5446 #. type: Plain text
5447 #: build/C/man3/exec.3:107
5448 msgid ""
5449 "The I<const char\\ *arg> and subsequent ellipses in the B<execl>(), "
5450 "B<execlp>(), and B<execle>()  functions can be thought of as I<arg0>, "
5451 "I<arg1>, \\&..., I<argn>.  Together they describe a list of one or more "
5452 "pointers to null-terminated strings that represent the argument list "
5453 "available to the executed program.  The first argument, by convention, "
5454 "should point to the filename associated with the file being executed.  The "
5455 "list of arguments I<must> be terminated by a null pointer, and, since these "
5456 "are variadic functions, this pointer must be cast I<(char\\ *) NULL>."
5457 msgstr ""
5458 "関数 B<execl>(), B<execlp>(), B<execle>()  の I<const char\\ *arg> とそれに続"
5459 "く省略部分は I<arg0>, I<arg1>, \\&..., I<argn> とみなされる。 これらには、実"
5460 "行されるプログラムで利用可能な引き数のリストを指定する (引き数のリストは ヌル"
5461 "で終端された文字列へのポインタから構成される)。 慣習として、最初の引き数は、"
5462 "実行されるファイル名 へのポインタにする。引き数のリストは必ず NULL で終わらな"
5463 "ければならず、これらの関数は可変長引き数関数なので、 このポインタは I<(char"
5464 "\\ *) NULL> とキャストしなければならない。"
5465
5466 #. type: Plain text
5467 #: build/C/man3/exec.3:120
5468 msgid ""
5469 "The B<execv>(), B<execvp>(), and B<execvpe>()  functions provide an array of "
5470 "pointers to null-terminated strings that represent the argument list "
5471 "available to the new program.  The first argument, by convention, should "
5472 "point to the filename associated with the file being executed.  The array of "
5473 "pointers I<must> be terminated by a null pointer."
5474 msgstr ""
5475 "関数 B<execv>(), B<execvp>(), B<execvpe>()  は、利用可能な引き数リスト (ヌル"
5476 "で終端された文字列への ポインタの配列) を新しいプログラムに渡す。 慣習とし"
5477 "て、最初の引き数は実行されるファイル名へ のポインタにする。ポインタの配列は必"
5478 "ず NULL で終わらなければならない。"
5479
5480 #. type: Plain text
5481 #: build/C/man3/exec.3:137
5482 msgid ""
5483 "The B<execle>()  and B<execvpe>()  functions allow the caller to specify the "
5484 "environment of the executed program via the argument I<envp>.  The I<envp> "
5485 "argument is an array of pointers to null-terminated strings and I<must> be "
5486 "terminated by a null pointer.  The other functions take the environment for "
5487 "the new process image from the external variable I<environ> in the calling "
5488 "process."
5489 msgstr ""
5490 "関数 B<execle>(), B<execvpe>()  では、呼び出し元が引き数 I<envp> 経由実行され"
5491 "るプログラムの環境を指定することができる。 I<envp> 引き数は、NULL で終端され"
5492 "た文字列へのポインタの配列であり、ヌルポインタで終わらなければならない。 他の"
5493 "関数では、呼び出し元のプロセスの外部変数 B<environ> から新しいプロセス用の環"
5494 "境を与える。"
5495
5496 #. type: SS
5497 #: build/C/man3/exec.3:137
5498 #, no-wrap
5499 msgid "Special semantics for execlp() and execvp()"
5500 msgstr "execlp() と execvp() の特別な動作"
5501
5502 #. type: Plain text
5503 #: build/C/man3/exec.3:157
5504 msgid ""
5505 "The B<execlp>(), B<execvp>(), and B<execvpe>()  functions duplicate the "
5506 "actions of the shell in searching for an executable file if the specified "
5507 "filename does not contain a slash (/) character.  The file is sought in the "
5508 "colon-separated list of directory pathnames specified in the B<PATH> "
5509 "environment variable.  If this variable isn't defined, the path list "
5510 "defaults to the current directory followed by the list of directories "
5511 "returned by I<confstr(_CS_PATH)>.  (This B<confstr>(3)  call typically "
5512 "returns the value \"/bin:/usr/bin\".)"
5513 msgstr ""
5514 "関数 B<execlp>(), B<execvp>(), B<execvpe>()  は、指定されたファイル名がスラッ"
5515 "シュ (/) を含んでいない場合、 シェルと同じ動作で実行可能なファイルを探索す"
5516 "る。 ファイルの検索は、環境変数 B<PATH> で指定されたコロン区切りのディレクト"
5517 "リのパス名のリストを対象に行われる。 この変数が定義されていない場合、パス名の"
5518 "リストのデフォルト値として、 カレントディレクトリの後ろに、 "
5519 "I<confstr(_CS_PATH)> が返すディレクトリのリストをつなげた値が使用される (こ"
5520 "の B<confstr>(3)  の呼び出しでは通常 \"/bin:/usr/bin\" が返される)。"
5521
5522 #. type: Plain text
5523 #: build/C/man3/exec.3:161
5524 msgid ""
5525 "If the specified filename includes a slash character, then B<PATH> is "
5526 "ignored, and the file at the specified pathname is executed."
5527 msgstr ""
5528 "指定されたファイル名がスラッシュを含む場合、 B<PATH> は無視され、指定されたパ"
5529 "ス名のファイルが実行される。"
5530
5531 #. type: Plain text
5532 #: build/C/man3/exec.3:163
5533 msgid "In addition, certain errors are treated specially."
5534 msgstr "さらに、いくつかのエラーは特別に処理される。"
5535
5536 #. type: Plain text
5537 #: build/C/man3/exec.3:174
5538 msgid ""
5539 "If permission is denied for a file (the attempted B<execve>(2)  failed with "
5540 "the error B<EACCES>), these functions will continue searching the rest of "
5541 "the search path.  If no other file is found, however, they will return with "
5542 "I<errno> set to B<EACCES>."
5543 msgstr ""
5544 "ファイルが実行ファイルでない場合 (このとき呼び出そうとした B<execve>(2)  はエ"
5545 "ラー B<EACCES> で失敗する)、これらの関数は残りの検索パスの検索を続ける。 他に"
5546 "ファイルが見つからなくなった場合 I<errno> に B<EACCES> を設定し復帰する。"
5547
5548 #. type: Plain text
5549 #: build/C/man3/exec.3:183
5550 msgid ""
5551 "If the header of a file isn't recognized (the attempted B<execve>(2)  failed "
5552 "with the error B<ENOEXEC>), these functions will execute the shell (I</bin/"
5553 "sh>)  with the path of the file as its first argument.  (If this attempt "
5554 "fails, no further searching is done.)"
5555 msgstr ""
5556 "ファイルのヘッダが実行形式として認識できない場合 (このとき呼び出そうとした "
5557 "B<execve>(2)  はエラー B<ENOEXEC> で失敗する)、これらの関数はそのファイルを最"
5558 "初の引き数としたシェル (I</bin/sh>)  を実行する (これにも失敗した場合、これ以"
5559 "上の検索は行われない)。"
5560
5561 #. type: Plain text
5562 #: build/C/man3/exec.3:190
5563 msgid ""
5564 "The B<exec>()  functions return only if an error has occurred.  The return "
5565 "value is -1, and I<errno> is set to indicate the error."
5566 msgstr ""
5567 "B<exec>()  群の関数が復帰するのは、エラーが発生した場合のみである。 返り値は "
5568 "-1 で、 I<errno> にエラーの内容がセットされる。"
5569
5570 #. type: Plain text
5571 #: build/C/man3/exec.3:195
5572 msgid ""
5573 "All of these functions may fail and set I<errno> for any of the errors "
5574 "specified for B<execve>(2)."
5575 msgstr ""
5576 "これら全ての関数は失敗する場合がある。その場合、 B<execve>(2)  に対して規定さ"
5577 "れたエラーが I<errno> に設定される。"
5578
5579 #. type: Plain text
5580 #: build/C/man3/exec.3:199
5581 msgid "The B<execvpe>()  function first appeared in glibc 2.11."
5582 msgstr "B<execvpe>()  関数は glibc 2.11 で初めて登場した。"
5583
5584 #. type: Plain text
5585 #: build/C/man3/exec.3:201
5586 msgid "POSIX.1-2001, POSIX.1-2008."
5587 msgstr "POSIX.1-2001, POSIX.1-2008."
5588
5589 #. type: Plain text
5590 #: build/C/man3/exec.3:205
5591 msgid "The B<execvpe>()  function is a GNU extension."
5592 msgstr "B<execvpe>()  関数は GNU による拡張である。"
5593
5594 #. type: Plain text
5595 #: build/C/man3/exec.3:215
5596 msgid ""
5597 "On some other systems, the default path (used when the environment does not "
5598 "contain the variable B<PATH>) has the current working directory listed after "
5599 "I</bin> and I</usr/bin>, as an anti-Trojan-horse measure.  Linux uses here "
5600 "the traditional \"current directory first\" default path."
5601 msgstr ""
5602 "Linux 以外のシステムには、 (環境変数 B<PATH> が定義されていないときの)  デ"
5603 "フォルトのパスにおいて、カレントディレクトリが I</bin> と I</usr/bin> の後ろ"
5604 "に配置されるものもある。 これはトロイの木馬対策のためである。 Linux では、デ"
5605 "フォルトのパスに、昔ながらの「現在のディレクトリを 先に探索」というルールを"
5606 "使っている。"
5607
5608 #. type: Plain text
5609 #: build/C/man3/exec.3:229
5610 msgid ""
5611 "The behavior of B<execlp>()  and B<execvp>()  when errors occur while "
5612 "attempting to execute the file is historic practice, but has not "
5613 "traditionally been documented and is not specified by the POSIX standard.  "
5614 "BSD (and possibly other systems) do an automatic sleep and retry if "
5615 "B<ETXTBSY> is encountered.  Linux treats it as a hard error and returns "
5616 "immediately."
5617 msgstr ""
5618 "ファイルを実行しようとしている間にエラーが発生した時の B<execlp>()  と "
5619 "B<execvp>()  のふるまいについて歴史的な慣習はあるが、伝統的に文書として記載さ"
5620 "れておらず、 POSIX 標準でも規定されていない。BSD (またおそらく他のシステム) "
5621 "では、 B<ETXTBSY> が発生した場合、自動的に中断 (sleep) し再試行を行う。 "
5622 "Linux はそれをハードエラーとして取り扱い即座に復帰する。"
5623
5624 #. type: Plain text
5625 #: build/C/man3/exec.3:241
5626 msgid ""
5627 "Traditionally, the functions B<execlp>()  and B<execvp>()  ignored all "
5628 "errors except for the ones described above and B<ENOMEM> and B<E2BIG>, upon "
5629 "which they returned.  They now return if any error other than the ones "
5630 "described above occurs."
5631 msgstr ""
5632 "伝統的に、関数 B<execlp>()  と B<execvp>()  は、上で説明したエラーと、これら "
5633 "2 つの関数自身が返す B<ENOMEM> と B<E2BIG> 以外の全てのエラーを無視していた"
5634 "が、 今では、上で説明した以外のエラーが発生した場合でも、 返ってくるよう変更"
5635 "された。"
5636
5637 #. type: Plain text
5638 #: build/C/man3/exec.3:249
5639 msgid ""
5640 "B<sh>(1), B<execve>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), "
5641 "B<fexecve>(3), B<environ>(7)"
5642 msgstr ""
5643 "B<sh>(1), B<execve>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), "
5644 "B<fexecve>(3), B<environ>(7)"
5645
5646 #. type: TH
5647 #: build/C/man2/execve.2:37
5648 #, no-wrap
5649 msgid "EXECVE"
5650 msgstr "EXECVE"
5651
5652 #. type: Plain text
5653 #: build/C/man2/execve.2:40
5654 msgid "execve - execute program"
5655 msgstr "execve - プログラムを実行する"
5656
5657 #. type: Plain text
5658 #: build/C/man2/execve.2:44
5659 msgid "B<int execve(const char *>I<filename>B<, char *const >I<argv>B<[], >"
5660 msgstr "B<int execve(const char *>I<filename>B<, char *const >I<argv>B<[], >"
5661
5662 #. type: Plain text
5663 #: build/C/man2/execve.2:51
5664 msgid ""
5665 "B<execve>()  executes the program pointed to by I<filename>.  I<filename> "
5666 "must be either a binary executable, or a script starting with a line of the "
5667 "form:"
5668 msgstr ""
5669 "B<execve>()  は、I<filename> によって指定されたプログラムを実行する。 "
5670 "I<filename> は、バイナリ実行形式か、 以下の形式の行で始まるスクリプトでなけれ"
5671 "ばならない。"
5672
5673 #. type: Plain text
5674 #: build/C/man2/execve.2:55 build/C/man2/execve.2:265
5675 #, no-wrap
5676 msgid "B<#!> I<interpreter >[optional-arg]\n"
5677 msgstr "B<#!> I<interpreter >[optional-arg]\n"
5678
5679 #. type: Plain text
5680 #: build/C/man2/execve.2:59
5681 msgid "For details of the latter case, see \"Interpreter scripts\" below."
5682 msgstr "後者の詳細は、後ろの「インタプリタ・スクリプト」の節を参照のこと。"
5683
5684 #. type: Plain text
5685 #: build/C/man2/execve.2:68
5686 msgid ""
5687 "I<argv> is an array of argument strings passed to the new program.  By "
5688 "convention, the first of these strings should contain the filename "
5689 "associated with the file being executed.  I<envp> is an array of strings, "
5690 "conventionally of the form B<key=value>, which are passed as environment to "
5691 "the new program.  Both I<argv> and I<envp> must be terminated by a null "
5692 "pointer.  The argument vector and environment can be accessed by the called "
5693 "program's main function, when it is defined as:"
5694 msgstr ""
5695 "I<argv> は新しいプログラムに渡される引き数文字列の配列である。\n"
5696 "慣例では、引き数文字列の最初の要素には実行されたファイルに関連付けられた\n"
5697 "ファイル名を含めることになっている。\n"
5698 "I<envp> は文字列の配列であり、伝統的に B<key=value> の形式をしており、\n"
5699 "新しいプログラムの環境変数として渡される。\n"
5700 "I<argv> と I<envp> はいずれものヌルポインタで終わっている必要がある。\n"
5701 "引き数配列と環境変数は、呼び出されたプログラムの main 関数を\n"
5702 "以下のように定義することによってアクセス可能になる。"
5703
5704 #. type: Plain text
5705 #: build/C/man2/execve.2:72
5706 #, no-wrap
5707 msgid "int main(int argc, char *argv[], char *envp[])\n"
5708 msgstr "int main(int argc, char *argv[], char *envp[])\n"
5709
5710 #. type: Plain text
5711 #: build/C/man2/execve.2:79
5712 msgid ""
5713 "B<execve>()  does not return on success, and the text, data, bss, and stack "
5714 "of the calling process are overwritten by that of the program loaded."
5715 msgstr ""
5716 "成功した場合、 B<execve>()  は返らない。 そして、呼び出し元のプロセスの "
5717 "text, data, bss, スタックは、 読み込まれたプログラムによって上書きされる。"
5718
5719 #. type: Plain text
5720 #: build/C/man2/execve.2:83
5721 msgid ""
5722 "If the current program is being ptraced, a B<SIGTRAP> is sent to it after a "
5723 "successful B<execve>()."
5724 msgstr ""
5725 "元のプログラムが ptrace されている場合、 B<execve>()  が成功した後に そのプロ"
5726 "グラムに B<SIGTRAP> が送られる。"
5727
5728 #. type: Plain text
5729 #: build/C/man2/execve.2:98
5730 msgid ""
5731 "If the set-user-ID bit is set on the program file pointed to by I<filename>, "
5732 "and the underlying filesystem is not mounted I<nosuid> (the B<MS_NOSUID> "
5733 "flag for B<mount>(2)), and the calling process is not being ptraced, then "
5734 "the effective user ID of the calling process is changed to that of the owner "
5735 "of the program file.  Similarly, when the set-group-ID bit of the program "
5736 "file is set the effective group ID of the calling process is set to the "
5737 "group of the program file."
5738 msgstr ""
5739 "I<filename> で指定されたプログラムファイルに set-user-ID ビットが設定されてお"
5740 "り、 ファイルが存在するファイルシステムが I<nosuid> (B<mount>(2)  の "
5741 "B<MS_NOSUID> フラグ) でマウントされておらず、 呼び出したプロセスが ptrace さ"
5742 "れていない場合、 呼び出したプロセスの実効 (effective) ユーザ ID は プログラム"
5743 "ファイルの所有者 (owner) に変更される。 同様に、プログラムファイルに set-"
5744 "group-ID ビットが設定されていた場合、 呼び出したプロセスの有効グループ ID は "
5745 "プログラムファイルのグループに変更される。"
5746
5747 #. type: Plain text
5748 #: build/C/man2/execve.2:103
5749 msgid ""
5750 "The effective user ID of the process is copied to the saved set-user-ID; "
5751 "similarly, the effective group ID is copied to the saved set-group-ID.  This "
5752 "copying takes place after any effective ID changes that occur because of the "
5753 "set-user-ID and set-group-ID permission bits."
5754 msgstr ""
5755 "プロセスの実効ユーザ ID は保存 (saved) set-user-ID にコピーされる。 同様に、"
5756 "実効グループ ID は保存 set-group-ID にコピーされる。 このコピーは、set-user-"
5757 "ID / set-group-ID 許可ビットにより発生する 実効 ID の変更後に行われる。"
5758
5759 #. type: Plain text
5760 #: build/C/man2/execve.2:111
5761 msgid ""
5762 "If the executable is an a.out dynamically linked binary executable "
5763 "containing shared-library stubs, the Linux dynamic linker B<ld.so>(8)  is "
5764 "called at the start of execution to bring needed shared libraries into "
5765 "memory and link the executable with them."
5766 msgstr ""
5767 "実行ファイルが動的リンクされた a.out 実行形式で、共有ライブラリの スタブを含"
5768 "むものだった場合、実行の開始時に Linux の ダイナミックリンカ B<ld.so>(8)  が"
5769 "呼び出され、必要な共有ライブラリをメモリに読み込んでリンクを行う。"
5770
5771 #. type: Plain text
5772 #: build/C/man2/execve.2:118
5773 msgid ""
5774 "If the executable is a dynamically linked ELF executable, the interpreter "
5775 "named in the PT_INTERP segment is used to load the needed shared libraries.  "
5776 "This interpreter is typically I</lib/ld-linux.so.2> for binaries linked with "
5777 "glibc."
5778 msgstr ""
5779 "実行ファイルがダイナミックリンクされた ELF 実行形式だった場合、\n"
5780 "PT_INTERP セグメントに指定されたインタプリタが必要な 共有ライブラリ\n"
5781 "(shared library) を読み込むのに使用される。\n"
5782 "通常、インタプリタは glibc をリンクしたバイナリでは\n"
5783 "I</lib/ld-linux.so.2> である。"
5784
5785 #. type: Plain text
5786 #: build/C/man2/execve.2:122
5787 msgid ""
5788 "All process attributes are preserved during an B<execve>(), except the "
5789 "following:"
5790 msgstr ""
5791 "以下に示す以外のすべてのプロセス属性は B<execve>()  の前後で保持される。"
5792
5793 #. type: Plain text
5794 #: build/C/man2/execve.2:126
5795 msgid ""
5796 "The dispositions of any signals that are being caught are reset to the "
5797 "default (B<signal>(7))."
5798 msgstr ""
5799 "捕捉されたシグナルの処理方法 (disposition) は デフォルト動作にリセットされる "
5800 "(B<signal>(7))。"
5801
5802 #. type: Plain text
5803 #: build/C/man2/execve.2:129
5804 msgid "Any alternate signal stack is not preserved (B<sigaltstack>(2))."
5805 msgstr "代替シグナルスタックはどれも保持されない (B<sigaltstack>(2))。"
5806
5807 #. type: Plain text
5808 #: build/C/man2/execve.2:132
5809 msgid "Memory mappings are not preserved (B<mmap>(2))."
5810 msgstr "メモリマッピングは保持されない (B<mmap>(2))。"
5811
5812 #. type: Plain text
5813 #: build/C/man2/execve.2:135
5814 msgid "Attached System\\ V shared memory segments are detached (B<shmat>(2))."
5815 msgstr ""
5816 "付加された (attached) System\\ V 共有メモリセグメントは分離される "
5817 "(B<shmat>(2))。"
5818
5819 #. type: Plain text
5820 #: build/C/man2/execve.2:138
5821 msgid "POSIX shared memory regions are unmapped (B<shm_open>(3))."
5822 msgstr "POSIX 共有メモリ領域はマッピングを解除される (B<shm_open>(3))。"
5823
5824 #. type: Plain text
5825 #: build/C/man2/execve.2:141
5826 msgid "Open POSIX message queue descriptors are closed (B<mq_overview>(7))."
5827 msgstr ""
5828 "オープンされた POSIX メッセージキューディスクリプタはクローズされる "
5829 "(B<mq_overview>(7))。"
5830
5831 #. type: Plain text
5832 #: build/C/man2/execve.2:144
5833 msgid "Any open POSIX named semaphores are closed (B<sem_overview>(7))."
5834 msgstr ""
5835 "オープンされた POSIX 名前付きセマフォはいずれもクローズされる "
5836 "(B<sem_overview>(7))。"
5837
5838 #. type: Plain text
5839 #: build/C/man2/execve.2:147
5840 msgid "POSIX timers are not preserved (B<timer_create>(2))."
5841 msgstr "POSIX タイマは保持されない (B<timer_create>(2))。"
5842
5843 #. type: Plain text
5844 #: build/C/man2/execve.2:150
5845 msgid "Any open directory streams are closed (B<opendir>(3))."
5846 msgstr ""
5847 "オープンされたディレクトリストリームはいずれもクローズされる "
5848 "(B<opendir>(3))。"
5849
5850 #. type: Plain text
5851 #: build/C/man2/execve.2:154
5852 msgid "Memory locks are not preserved (B<mlock>(2), B<mlockall>(2))."
5853 msgstr "メモリロックは保持されない (B<mlock>(2), B<mlockall>(2))。"
5854
5855 #. type: Plain text
5856 #: build/C/man2/execve.2:158
5857 msgid "Exit handlers are not preserved (B<atexit>(3), B<on_exit>(3))."
5858 msgstr "終了 (exit) ハンドラは保持されない (B<atexit>(3), B<on_exit>(3))。"
5859
5860 #. type: Plain text
5861 #: build/C/man2/execve.2:161
5862 msgid ""
5863 "The floating-point environment is reset to the default (see B<fenv>(3))."
5864 msgstr "浮動小数点関連の環境はデフォルトにリセットされる (B<fenv>(3)  参照)。"
5865
5866 #. type: Plain text
5867 #: build/C/man2/execve.2:167
5868 msgid ""
5869 "The process attributes in the preceding list are all specified in "
5870 "POSIX.1-2001.  The following Linux-specific process attributes are also not "
5871 "preserved during an B<execve>():"
5872 msgstr ""
5873 "上記のリストのプロセス属性はいずれも POSIX.1-2001 で規定されている。 以下に示"
5874 "す Linux 固有のプロセス属性も B<execve>()  の前後で保持されない。"
5875
5876 #. type: Plain text
5877 #: build/C/man2/execve.2:174
5878 msgid ""
5879 "The B<prctl>(2)  B<PR_SET_DUMPABLE> flag is set, unless a set-user-ID or set-"
5880 "group ID program is being executed, in which case it is cleared."
5881 msgstr ""
5882 "set-user-ID か set-group-ID されたプログラムが実行されている場合、 "
5883 "B<prctl>(2)  の B<PR_SET_DUMPABLE> フラグはクリアされる。それ以外の場合、この"
5884 "フラグはセットされる。"
5885
5886 #. type: Plain text
5887 #: build/C/man2/execve.2:179
5888 msgid "The B<prctl>(2)  B<PR_SET_KEEPCAPS> flag is cleared."
5889 msgstr "B<prctl>(2)  の B<PR_SET_KEEPCAPS> フラグはクリアされる。"
5890
5891 #. type: Plain text
5892 #: build/C/man2/execve.2:186
5893 msgid ""
5894 "(Since Linux 2.4.36 / 2.6.23)  If a set-user-ID or set-group-ID program is "
5895 "being executed, then the parent death signal set by B<prctl>(2)  "
5896 "B<PR_SET_PDEATHSIG> flag is cleared."
5897 msgstr ""
5898 "(Linux 2.4.36 以降 / 2.6.23 以降)  set-user-ID や set-group-ID されたプログラ"
5899 "ムが実行された場合、 B<prctl>(2) の B<PR_SET_PDEATHSIG> フラグで設定された "
5900 "parent death シグナルはクリアされる。"
5901
5902 #. type: Plain text
5903 #: build/C/man2/execve.2:193
5904 msgid ""
5905 "The process name, as set by B<prctl>(2)  B<PR_SET_NAME> (and displayed by "
5906 "I<ps\\ -o comm>), is reset to the name of the new executable file."
5907 msgstr ""
5908 "プロセス名は新しい実行ファイルの名前にリセットされる。 プロセス名は "
5909 "B<prctl>(2)  の B<PR_SET_NAME> で設定でき、 I<ps\\ -o comm> で表示できる。"
5910
5911 #. type: Plain text
5912 #: build/C/man2/execve.2:200
5913 msgid ""
5914 "The B<SECBIT_KEEP_CAPS> I<securebits> flag is cleared.  See "
5915 "B<capabilities>(7)."
5916 msgstr ""
5917 "B<SECBIT_KEEP_CAPS> の I<securebits> フラグはクリアされる。 "
5918 "B<capabilities>(7) 参照。"
5919
5920 #. type: Plain text
5921 #: build/C/man2/execve.2:205
5922 msgid "The termination signal is reset to B<SIGCHLD> (see B<clone>(2))."
5923 msgstr ""
5924 "終了シグナル (termination signal) は B<SIGCHLD> にリセットされる "
5925 "(B<clone>(2)  参照)。"
5926
5927 #. type: Plain text
5928 #: build/C/man2/execve.2:207 build/C/man2/fork.2:138
5929 msgid "Note the following further points:"
5930 msgstr "以下の点についても注意すること:"
5931
5932 #. type: Plain text
5933 #: build/C/man2/execve.2:211
5934 msgid ""
5935 "All threads other than the calling thread are destroyed during an "
5936 "B<execve>().  Mutexes, condition variables, and other pthreads objects are "
5937 "not preserved."
5938 msgstr ""
5939 "呼び出し元スレッド以外の全てのスレッドは B<execve>()  中に破棄される。 "
5940 "mutex、条件変数、その他の pthread オブジェクトは保持されない。"
5941
5942 #. type: Plain text
5943 #: build/C/man2/execve.2:214
5944 msgid ""
5945 "The equivalent of I<setlocale(LC_ALL, \"C\")> is executed at program start-"
5946 "up."
5947 msgstr "I<setlocale(LC_ALL, \"C\")> 相当の処理がプログラム開始時に実行される。"
5948
5949 #. type: Plain text
5950 #: build/C/man2/execve.2:222
5951 msgid ""
5952 "POSIX.1-2001 specifies that the dispositions of any signals that are ignored "
5953 "or set to the default are left unchanged.  POSIX.1-2001 specifies one "
5954 "exception: if B<SIGCHLD> is being ignored, then an implementation may leave "
5955 "the disposition unchanged or reset it to the default; Linux does the former."
5956 msgstr ""
5957 "POSIX.1-2001 は、動作が無視かデフォルトに設定されている全てのシグナル の処理"
5958 "方法は変更せずそのままにする、と規定している。 但し、POSIX.1-2001 には一つ例"
5959 "外があり、 B<SIGCHLD> が無視になっている場合、 その処理方法を変更せずにそのま"
5960 "まにするか、デフォルト動作にリセットするかは 実装依存となっている。 Linux で"
5961 "は前者 (変更しない) となっている。"
5962
5963 #. type: Plain text
5964 #: build/C/man2/execve.2:226
5965 msgid ""
5966 "Any outstanding asynchronous I/O operations are canceled (B<aio_read>(3), "
5967 "B<aio_write>(3))."
5968 msgstr ""
5969 "完了していない非同期 I/O 操作はキャンセルされる (B<aio_read>(3), "
5970 "B<aio_write>(3))。"
5971
5972 #. type: Plain text
5973 #: build/C/man2/execve.2:231
5974 msgid ""
5975 "For the handling of capabilities during B<execve>(), see B<capabilities>(7)."
5976 msgstr ""
5977 "B<execve>(2)  時のケーパビリティの扱いについては、 B<capabilities>(7)  を参"
5978 "照。"
5979
5980 #.  On Linux it appears that these file descriptors are
5981 #.  always open after an execve(), and it looks like
5982 #.  Solaris 8 and FreeBSD 6.1 are the same. -- mtk, 30 Apr 2007
5983 #. type: Plain text
5984 #: build/C/man2/execve.2:258
5985 msgid ""
5986 "By default, file descriptors remain open across an B<execve>().  File "
5987 "descriptors that are marked close-on-exec are closed; see the description of "
5988 "B<FD_CLOEXEC> in B<fcntl>(2).  (If a file descriptor is closed, this will "
5989 "cause the release of all record locks obtained on the underlying file by "
5990 "this process.  See B<fcntl>(2)  for details.)  POSIX.1-2001 says that if "
5991 "file descriptors 0, 1, and 2 would otherwise be closed after a successful "
5992 "B<execve>(), and the process would gain privilege because the set-user_ID or "
5993 "set-group_ID permission bit was set on the executed file, then the system "
5994 "may open an unspecified file for each of these file descriptors.  As a "
5995 "general principle, no portable program, whether privileged or not, can "
5996 "assume that these three file descriptors will remain closed across an "
5997 "B<execve>()."
5998 msgstr ""
5999 "デフォルトでは、ファイルディスクリプタは B<execve>()  を行った後でもオープン"
6000 "されたままである。 close-on-exec の印が付いているファイルディスクリプタはク"
6001 "ローズされる。 B<fcntl>(2)  の B<FD_CLOEXEC> の説明を参照。 (ファイルディスク"
6002 "リプタがクローズされると、このプロセスが ファイルディスクリプタに対応するファ"
6003 "イルに対して獲得していた レコードのロックが全て解放されることになる。)  "
6004 "POSIX.1-2001 では、 ファイルディスクリプタ 0, 1, 2 が B<execve>()  成功後にど"
6005 "こかでクローズされ、かつ 実行されるファイルに set-user_ID か set-group_ID の"
6006 "許可ビットが セットされていてプロセスが特権を獲得した場合、 システムは何らか"
6007 "のファイルをオープンする際に これらの番号のディスクリプタのどれかを使うことが"
6008 "ある、 とされている。 原則として、移植性が必要なプログラムでは、 特権の有無に"
6009 "関わらず、 B<execve>()  の前後でこれら 3つのファイルディスクリプタがクローズ"
6010 "されたままで あることを前提にすることはできない。"
6011
6012 #. type: SS
6013 #: build/C/man2/execve.2:258 build/C/man2/execve.2:528
6014 #, no-wrap
6015 msgid "Interpreter scripts"
6016 msgstr "インタプリタ・スクリプト"
6017
6018 #. type: Plain text
6019 #: build/C/man2/execve.2:261
6020 msgid ""
6021 "An interpreter script is a text file that has execute permission enabled and "
6022 "whose first line is of the form:"
6023 msgstr ""
6024 "インタプリタ・スクリプトとは、実行許可が有効になっていて、 最初の行が以下の形"
6025 "になっているテキストファイルのことである。"
6026
6027 #. type: Plain text
6028 #: build/C/man2/execve.2:279
6029 msgid ""
6030 "The I<interpreter> must be a valid pathname for an executable which is not "
6031 "itself a script.  If the I<filename> argument of B<execve>()  specifies an "
6032 "interpreter script, then I<interpreter> will be invoked with the following "
6033 "arguments:"
6034 msgstr ""
6035 "I<interpreter> は有効な実行ファイルのパス名でなければならず、 それ自身がスク"
6036 "リプトであってはならない。 B<execve>()  の I<filename> 引き数がインタプリタス"
6037 "クリプトを指定している場合、 I<interpreter> は以下の引き数で起動される。"
6038
6039 #. type: Plain text
6040 #: build/C/man2/execve.2:283
6041 #, no-wrap
6042 msgid "I<interpreter> [optional-arg] I<filename> arg...\n"
6043 msgstr "I<interpreter> [optional-arg] I<filename> arg...\n"
6044
6045 #. type: Plain text
6046 #: build/C/man2/execve.2:294
6047 msgid ""
6048 "where I<arg...> is the series of words pointed to by the I<argv> argument of "
6049 "B<execve>(), starting at I<argv>[1]."
6050 msgstr ""
6051 "I<arg...> は、 B<execve>() の I<argv> 引き数が指すワード列である。 "
6052 "I<argv>[1] から始まる。"
6053
6054 #. type: Plain text
6055 #: build/C/man2/execve.2:299
6056 msgid ""
6057 "For portable use, I<optional-arg> should either be absent, or be specified "
6058 "as a single word (i.e., it should not contain white space); see NOTES below."
6059 msgstr ""
6060 "移植性を持たすには、 I<optional-arg> は空か 1ワードだけにすべきである (つま"
6061 "り、ホワイトスペースを含めるべきではない)。 下記の「注意」の節を参照。"
6062
6063 #. type: SS
6064 #: build/C/man2/execve.2:299
6065 #, no-wrap
6066 msgid "Limits on size of arguments and environment"
6067 msgstr "引き数と環境変数の合計サイズの上限"
6068
6069 #. type: Plain text
6070 #: build/C/man2/execve.2:312
6071 msgid ""
6072 "Most UNIX implementations impose some limit on the total size of the command-"
6073 "line argument (I<argv>)  and environment (I<envp>)  strings that may be "
6074 "passed to a new program.  POSIX.1 allows an implementation to advertise this "
6075 "limit using the B<ARG_MAX> constant (either defined in I<E<lt>limits.hE<gt>> "
6076 "or available at run time using the call I<sysconf(_SC_ARG_MAX)>)."
6077 msgstr ""
6078 "ほとんどの UNIX の実装は、新しいプログラムに渡すことができる コマンドライン引"
6079 "き数 (I<argv>)  と環境変数 (I<envp>)  の文字列群の合計サイズに何らかの上限を"
6080 "設けている。 POSIX.1 は、 B<ARG_MAX> 定数を使ってこの上限を決める実装を認めて"
6081 "いる (B<ARG_MAX> は I<E<lt>limits.hE<gt>> で定義されるか、実行時に "
6082 "I<sysconf(_SC_ARG_MAX)> の呼び出しで入手できるかのいずれかである)。"
6083
6084 #. type: Plain text
6085 #: build/C/man2/execve.2:319
6086 msgid ""
6087 "On Linux prior to kernel 2.6.23, the memory used to store the environment "
6088 "and argument strings was limited to 32 pages (defined by the kernel constant "
6089 "B<MAX_ARG_PAGES>).  On architectures with a 4-kB page size, this yields a "
6090 "maximum size of 128 kB."
6091 msgstr ""
6092 "カーネル 2.6.23 より前の Linux では、環境変数と引き数の文字列群を 格納するの"
6093 "に使用されるメモリは 32 ページに制限されていた (32 ページというのはカーネル定"
6094 "数 B<MAX_ARG_PAGES> で定義される)。したがって、 ページサイズが 4 kB のアーキ"
6095 "テクチャでは、 最大サイズは 128 kB ということになる。"
6096
6097 #.  For some background on the changes to ARG_MAX in kernels 2.6.23 and
6098 #.  2.6.25, see:
6099 #.      http://sourceware.org/bugzilla/show_bug.cgi?id=5786
6100 #.      http://bugzilla.kernel.org/show_bug.cgi?id=10095
6101 #.      http://thread.gmane.org/gmane.linux.kernel/646709/focus=648101,
6102 #.      checked into 2.6.25 as commit a64e715fc74b1a7dcc5944f848acc38b2c4d4ee2.
6103 #.  Ollie: That doesn't include the lists of pointers, though,
6104 #.  so the actual usage is a bit higher (1 pointer per argument).
6105 #. type: Plain text
6106 #: build/C/man2/execve.2:355
6107 msgid ""
6108 "On kernel 2.6.23 and later, most architectures support a size limit derived "
6109 "from the soft B<RLIMIT_STACK> resource limit (see B<getrlimit>(2))  that is "
6110 "in force at the time of the B<execve>()  call.  (Architectures with no "
6111 "memory management unit are excepted: they maintain the limit that was in "
6112 "effect before kernel 2.6.23.)  This change allows programs to have a much "
6113 "larger argument and/or environment list.  For these architectures, the total "
6114 "size is limited to 1/4 of the allowed stack size.  (Imposing the 1/4-limit "
6115 "ensures that the new program always has some stack space.)  Since Linux "
6116 "2.6.25, the kernel places a floor of 32 pages on this size limit, so that, "
6117 "even when B<RLIMIT_STACK> is set very low, applications are guaranteed to "
6118 "have at least as much argument and environment space as was provided by "
6119 "Linux 2.6.23 and earlier.  (This guarantee was not provided in Linux 2.6.23 "
6120 "and 2.6.24.)  Additionally, the limit per string is 32 pages (the kernel "
6121 "constant B<MAX_ARG_STRLEN>), and the maximum number of strings is 0x7FFFFFFF."
6122 msgstr ""
6123 "カーネル 2.6.23 以降では、ほとんどのアーキテクチャにおいて、 B<execve>()  が"
6124 "呼び出された時点で適用されているリソースのソフト上限 B<RLIMIT_STACK> に基づい"
6125 "たサイズ上限が使われる (メモリ管理ユニット (MMU) を持たないアーキテクチャは上"
6126 "記の変更の 例外であり、これらのアーキテクチャではカーネル 2.6.23 より前と 同"
6127 "じ上限がそのまま使用される)。 これらのアーキテクチャでは、合計サイズは許可さ"
6128 "れたスタックサイズの 1/4 に制限されている (1/4 の上限を設けているのは、新しい"
6129 "プログラムが必ずある程度の スタック空間を持てることを保証するためである)。 "
6130 "Linux 2.6.25 以降では、カーネルはこのサイズ上限に 32 ページの下限を 設けてい"
6131 "る。これにより、 B<RLIMIT_STACK> が非常に小さく設定された場合でも、アプリケー"
6132 "ションが少なくとも Linux 2.6.23 以前で提供されていたのと同じ大きさの引き数と"
6133 "環境変数の空間 と同じだけは確保できることが保証されている (この最低限の保証"
6134 "は Linux 2.6.23 と 2.6.24 では提供されていない)。 また、各文字列の上限は 32 "
6135 "ページ (カーネル定数 B<MAX_ARG_STRLEN>)  で、文字列数の最大値は 0x7FFFFFFF で"
6136 "ある。"
6137
6138 #. type: Plain text
6139 #: build/C/man2/execve.2:361
6140 msgid ""
6141 "On success, B<execve>()  does not return, on error -1 is returned, and "
6142 "I<errno> is set appropriately."
6143 msgstr ""
6144 "成功すると B<execve>()  は返らない。エラーの場合は -1 を返し、 I<errno> を適"
6145 "切に設定する。"
6146
6147 #. type: TP
6148 #: build/C/man2/execve.2:362
6149 #, no-wrap
6150 msgid "B<E2BIG>"
6151 msgstr "B<E2BIG>"
6152
6153 #. type: Plain text
6154 #: build/C/man2/execve.2:369
6155 msgid ""
6156 "The total number of bytes in the environment (I<envp>)  and argument list "
6157 "(I<argv>)  is too large."
6158 msgstr ""
6159 "環境変数 (I<envp>)  と引き数リスト (I<argv>)  の合計バイト数が大き過ぎる。"
6160
6161 #. type: Plain text
6162 #: build/C/man2/execve.2:376
6163 msgid ""
6164 "Search permission is denied on a component of the path prefix of I<filename> "
6165 "or the name of a script interpreter.  (See also B<path_resolution>(7).)"
6166 msgstr ""
6167 "I<filename> やスクリプトインタプリタ名の構成要素に検索許可 (search "
6168 "permission)  が与えられていない (B<path_resolution>(7)  も参照すること)。"
6169
6170 #. type: Plain text
6171 #: build/C/man2/execve.2:379
6172 msgid "The file or a script interpreter is not a regular file."
6173 msgstr ""
6174 "ファイルもしくはスクリプトのインタプリタが通常ファイル (regular file)  でな"
6175 "い。"
6176
6177 #. type: Plain text
6178 #: build/C/man2/execve.2:382
6179 msgid ""
6180 "Execute permission is denied for the file or a script or ELF interpreter."
6181 msgstr ""
6182 "ファイルやスクリプトや ELF インタプリタに 実行許可 (execute permission) が与"
6183 "えられていない。"
6184
6185 #. type: Plain text
6186 #: build/C/man2/execve.2:386
6187 msgid "The filesystem is mounted I<noexec>."
6188 msgstr "ファイルシステムが I<noexec> でマウントされている。"
6189
6190 #. type: TP
6191 #: build/C/man2/execve.2:386
6192 #, no-wrap
6193 msgid "B<EAGAIN> (since Linux 3.1)"
6194 msgstr "B<EAGAIN> (Linux 3.1 以降)"
6195
6196 #.  commit 72fa59970f8698023045ab0713d66f3f4f96945c
6197 #. type: Plain text
6198 #: build/C/man2/execve.2:396
6199 msgid ""
6200 "Having changed its real UID using one of the B<set*uid>()  calls, the caller "
6201 "was\\(emand is now still\\(emabove its B<RLIMIT_NPROC> resource limit (see "
6202 "B<setrlimit>(2)).  For a more detailed explanation of this error, see NOTES."
6203 msgstr ""
6204 "B<set*uid>() のいずれかの呼び出しでプロセスの実 UID が変更されたとすると、呼"
6205 "び出し元の B<RLIMIT_NPROC> リソース上限 (B<setrlimit>(2) 参照) を超えてしま"
6206 "う、 現在もまだ超えている。 このエラーの詳細な説明については「注意」の節を参"
6207 "照。"
6208
6209 #. type: Plain text
6210 #: build/C/man2/execve.2:404
6211 msgid ""
6212 "I<filename> or one of the pointers in the vectors I<argv> or I<envp> points "
6213 "outside your accessible address space."
6214 msgstr ""
6215 "I<filename> または配列 I<argv> か I<envp> のポインタの一つがアクセス可能なア"
6216 "ドレス空間の外を指している。"
6217
6218 #. type: Plain text
6219 #: build/C/man2/execve.2:408
6220 msgid ""
6221 "An ELF executable had more than one PT_INTERP segment (i.e., tried to name "
6222 "more than one interpreter)."
6223 msgstr ""
6224 "ELF 実行形式で複数の PT_INTERP セグメントが存在する。 (すなわち複数のインタプ"
6225 "リタを指定した。)"
6226
6227 #. type: TP
6228 #: build/C/man2/execve.2:411 build/C/man2/truncate.2:149
6229 #, no-wrap
6230 msgid "B<EISDIR>"
6231 msgstr "B<EISDIR>"
6232
6233 #. type: Plain text
6234 #: build/C/man2/execve.2:414
6235 msgid "An ELF interpreter was a directory."
6236 msgstr "ELF インタプリタがディレクトリだった。"
6237
6238 #. type: TP
6239 #: build/C/man2/execve.2:414
6240 #, no-wrap
6241 msgid "B<ELIBBAD>"
6242 msgstr "B<ELIBBAD>"
6243
6244 #. type: Plain text
6245 #: build/C/man2/execve.2:417
6246 msgid "An ELF interpreter was not in a recognized format."
6247 msgstr "ELF インタプリタが理解できるフォーマットでなかった。"
6248
6249 #. type: Plain text
6250 #: build/C/man2/execve.2:422
6251 msgid ""
6252 "Too many symbolic links were encountered in resolving I<filename> or the "
6253 "name of a script or ELF interpreter."
6254 msgstr ""
6255 "I<filename> やスクリプトや ELF のインタプリタを解決する際に遭遇した シンボ"
6256 "リックリンクが多過ぎる。"
6257
6258 #. type: Plain text
6259 #: build/C/man2/execve.2:425
6260 msgid "The process has the maximum number of files open."
6261 msgstr "そのプロセスがオープンできるファイル数の上限まで既にオープンしている。"
6262
6263 #. type: Plain text
6264 #: build/C/man2/execve.2:429
6265 msgid "I<filename> is too long."
6266 msgstr "I<filename> が長過ぎる。"
6267
6268 #. type: TP
6269 #: build/C/man2/execve.2:429 build/C/man3/getlogin.3:108
6270 #: build/C/man2/swapon.2:144 build/C/man2/uselib.2:67
6271 #, no-wrap
6272 msgid "B<ENFILE>"
6273 msgstr "B<ENFILE>"
6274
6275 #. type: Plain text
6276 #: build/C/man2/execve.2:432 build/C/man2/swapon.2:147
6277 #: build/C/man2/uselib.2:70
6278 msgid "The system limit on the total number of open files has been reached."
6279 msgstr "オープンされたファイルの総数がシステム全体の上限に達していた。"
6280
6281 #. type: Plain text
6282 #: build/C/man2/execve.2:438
6283 msgid ""
6284 "The file I<filename> or a script or ELF interpreter does not exist, or a "
6285 "shared library needed for file or interpreter cannot be found."
6286 msgstr "ファイル I<filename> かスクリプトや ELF のインタプリタが存在しない。"
6287
6288 #. type: TP
6289 #: build/C/man2/execve.2:438 build/C/man2/uselib.2:70
6290 #, no-wrap
6291 msgid "B<ENOEXEC>"
6292 msgstr "B<ENOEXEC>"
6293
6294 #. type: Plain text
6295 #: build/C/man2/execve.2:443
6296 msgid ""
6297 "An executable is not in a recognized format, is for the wrong architecture, "
6298 "or has some other format error that means it cannot be executed."
6299 msgstr ""
6300 "実行ファイルが理解できない形式であるか、違うアーキテクチャのものか、 その他の"
6301 "フォーマットエラーにより実行ができなかった。"
6302
6303 #. type: Plain text
6304 #: build/C/man2/execve.2:451
6305 msgid ""
6306 "A component of the path prefix of I<filename> or a script or ELF interpreter "
6307 "is not a directory."
6308 msgstr ""
6309 "I<filename> やスクリプトや ELF のインタプリタの構成要素がディレクトリでない。"
6310
6311 #. type: Plain text
6312 #: build/C/man2/execve.2:457
6313 msgid ""
6314 "The filesystem is mounted I<nosuid>, the user is not the superuser, and the "
6315 "file has the set-user-ID or set-group-ID bit set."
6316 msgstr ""
6317 "ファイルシステムが I<nosuid> でマウントされ、ユーザがスーパーユーザでなく、 "
6318 "ファイルに set-user-ID あるいは set-group-ID ビットが設定されている。"
6319
6320 #. type: Plain text
6321 #: build/C/man2/execve.2:461
6322 msgid ""
6323 "The process is being traced, the user is not the superuser and the file has "
6324 "the set-user-ID or set-group-ID bit set."
6325 msgstr ""
6326 "プロセスがトレースされ、ユーザがスーパーユーザでなく、 ファイルに set-user-"
6327 "ID あるいは set-group-ID ビットが設定されている。"
6328
6329 #. type: Plain text
6330 #: build/C/man2/execve.2:464
6331 msgid "Executable was open for writing by one or more processes."
6332 msgstr "実行ファイルを書き込み用にオープンしているプロセスがある。"
6333
6334 #.  SVr4 documents additional error
6335 #.  conditions EAGAIN, EINTR, ELIBACC, ENOLINK, EMULTIHOP; POSIX does not
6336 #.  document ETXTBSY, EPERM, EFAULT, ELOOP, EIO, ENFILE, EMFILE, EINVAL,
6337 #.  EISDIR or ELIBBAD error conditions.
6338 #. type: Plain text
6339 #: build/C/man2/execve.2:472
6340 msgid ""
6341 "SVr4, 4.3BSD, POSIX.1-2001.  POSIX.1-2001 does not document the #! behavior "
6342 "but is otherwise compatible."
6343 msgstr ""
6344 "SVr4, 4.3BSD, POSIX.1-2001.  POSIX.1-2001 には #! 動作についての記述はない"
6345 "が、 他は互換性がある。"
6346
6347 #. type: Plain text
6348 #: build/C/man2/execve.2:475
6349 msgid "Set-user-ID and set-group-ID processes can not be B<ptrace>(2)d."
6350 msgstr ""
6351 "set-user-id プロセスと set-group-ID プロセスは B<ptrace>(2)  できない。"
6352
6353 #.  e.g., EFAULT on Solaris 8 and FreeBSD 6.1; but
6354 #.  HP-UX 11 is like Linux -- mtk, Apr 2007
6355 #.  Bug filed 30 Apr 2007: http://bugzilla.kernel.org/show_bug.cgi?id=8408
6356 #.  Bug rejected (because fix would constitute an ABI change).
6357 #. type: Plain text
6358 #: build/C/man2/execve.2:502
6359 msgid ""
6360 "The result of mounting a filesystem I<nosuid> varies across Linux kernel "
6361 "versions: some will refuse execution of set-user-ID and set-group-ID "
6362 "executables when this would give the user powers she did not have already "
6363 "(and return B<EPERM>), some will just ignore the set-user-ID and set-group-"
6364 "ID bits and B<exec>()  successfully.  On Linux, I<argv> and I<envp> can be "
6365 "specified as NULL.  In both cases, this has the same effect as specifying "
6366 "the argument as a pointer to a list containing a single null pointer.  B<Do "
6367 "not take advantage of this misfeature!> It is nonstandard and nonportable: "
6368 "on most other UNIX systems doing this will result in an error (B<EFAULT>)."
6369 msgstr ""
6370 "ファイルシステムを I<nosuid> でマウントした場合に set-user-ID/set-group-ID の"
6371 "実行ファイルを どの様に扱うかは、Linux カーネルのバージョンによって異なる: あ"
6372 "るバージョンでは、すでに必要な権限を持っている場合を除いて、 その実行を拒否す"
6373 "る (そして B<EPERM> を返す)。別のあるバージョンでは set-user-ID/set-group-ID "
6374 "ビットのみを無視し B<exec>()  は成功する。 Linux では、 I<argv> と I<envp> "
6375 "に NULL を指定することができる。 どちらに NULL を指定した場合も、 これらの引"
6376 "き数にヌルポインタ 1 個だけを含むリストへのポインタを指定したのと同じ効果を持"
6377 "つ。 B<「この間違った機能を利用しないこと」>。 これは非標準で、移植性もな"
6378 "い。 他のほとんどの UNIX システムでは、これを行うとエラー (B<EFAULT>)  にな"
6379 "る。"
6380
6381 #. type: Plain text
6382 #: build/C/man2/execve.2:513
6383 msgid ""
6384 "POSIX.1-2001 says that values returned by B<sysconf>(3)  should be invariant "
6385 "over the lifetime of a process.  However, since Linux 2.6.23, if the "
6386 "B<RLIMIT_STACK> resource limit changes, then the value reported by "
6387 "B<_SC_ARG_MAX> will also change, to reflect the fact that the limit on space "
6388 "for holding command-line arguments and environment variables has changed."
6389 msgstr ""
6390 "POSIX.1-2001 は、 B<sysconf>(3)  が返す値はプロセスの生存中は変化しないべきだ"
6391 "としている。 しかしながら、Linux 2.6.23 以降では、リソース上限 "
6392 "B<RLIMIT_STACK> が変化した場合、 コマンドライン引き数と環境変数を保持するため"
6393 "の空間に対する上限が 変化したことを反映して、 B<_SC_ARG_MAX> が返す値も変化す"
6394 "る。"
6395
6396 #. type: Plain text
6397 #: build/C/man2/execve.2:528
6398 msgid ""
6399 "In most cases where B<execve>()  fails, control returns to the original "
6400 "executable image, and the caller of B<execve>()  can then handle the error.  "
6401 "However, in (rare) cases (typically caused by resource exhaustion), failure "
6402 "may occur past the point of no return: the original executable image has "
6403 "been torn down, but the new image could not be completely built.  In such "
6404 "cases, the kernel kills the process with a B<SIGKILL> signal."
6405 msgstr ""
6406 "B<execve>() が失敗するほとんどの場合、 制御は元の実行可能イメージに戻り、 "
6407 "B<execve>() の呼び出し元がエラーを処理することができる。 しかしながら、 (リ"
6408 "ソース枯渇が原因となった場合など、まれに) 呼び出し元に制御が戻る時点を過ぎて"
6409 "からエラーが発生する場合がある。 元の実行可能イメージはすでに破棄されている"
6410 "が、 新しいイメージが完全には構築されていないという状況である。 このような場"
6411 "合、カーネルはそのプロセスをシグナル B<SIGKILL> で停止 (kill) する。"
6412
6413 #. type: Plain text
6414 #: build/C/man2/execve.2:531
6415 msgid ""
6416 "A maximum line length of 127 characters is allowed for the first line in an "
6417 "interpreter scripts."
6418 msgstr ""
6419 "インタプリタスクリプトの 1行目に許されている文字数は、 最大 127 文字である。"
6420
6421 #.  e.g., Solaris 8
6422 #.  e.g., FreeBSD before 6.0, but not FreeBSD 6.0 onward
6423 #. type: Plain text
6424 #: build/C/man2/execve.2:550
6425 msgid ""
6426 "The semantics of the I<optional-arg> argument of an interpreter script vary "
6427 "across implementations.  On Linux, the entire string following the "
6428 "I<interpreter> name is passed as a single argument to the interpreter, and "
6429 "this string can include white space.  However, behavior differs on some "
6430 "other systems.  Some systems use the first white space to terminate "
6431 "I<optional-arg>.  On some systems, an interpreter script can have multiple "
6432 "arguments, and white spaces in I<optional-arg> are used to delimit the "
6433 "arguments."
6434 msgstr ""
6435 "インタプリタ・スクリプトの I<optional-arg> 引き数の解釈方法は実装により異な"
6436 "る。 Linux では、インタプリタ名 I<interpreter> に続く文字列全体がインタプリタ"
6437 "に 1個の引き数として渡される。 しかし、動作が異なるシステムもある。 あるシス"
6438 "テムでは、 I<optional-arg> のうち最初のホワイトスペースまでが 引き数として渡"
6439 "される。 また、別のシステムでは インタプリタ・スクリプトは複数の引き数を持つ"
6440 "ことができ、 I<optional-arg> 内のホワイトスペースが引き数の区切りとなる。"
6441
6442 #.  .SH BUGS
6443 #.  Some Linux versions have failed to check permissions on ELF
6444 #.  interpreters.  This is a security hole, because it allows users to
6445 #.  open any file, such as a rewinding tape device, for reading.  Some
6446 #.  Linux versions have also had other security holes in
6447 #.  .BR execve ()
6448 #.  that could be exploited for denial of service by a suitably crafted
6449 #.  ELF binary. There are no known problems with 2.0.34 or 2.2.15.
6450 #. type: Plain text
6451 #: build/C/man2/execve.2:561
6452 msgid "Linux ignores the set-user-ID and set-group-ID bits on scripts."
6453 msgstr "Linux はスクリプトの set-user-ID と set-group-ID ビットを無視する。"
6454
6455 #. type: SS
6456 #: build/C/man2/execve.2:561
6457 #, no-wrap
6458 msgid "execve() and EAGAIN"
6459 msgstr "execve() と EAGAIN"
6460
6461 #. type: Plain text
6462 #: build/C/man2/execve.2:567
6463 msgid ""
6464 "A more detailed explanation of the B<EAGAIN> error that can occur (since "
6465 "Linux 3.1) when calling B<execve>()  is as follows."
6466 msgstr ""
6467 "B<execve>() を呼び出した際に (Linux 3.1 以降で) 起こり得る B<EAGAIN> エラーの"
6468 "詳細な説明を以下で行う。"
6469
6470 #.  commit 909cc4ae86f3380152a18e2a3c44523893ee11c4
6471 #. type: Plain text
6472 #: build/C/man2/execve.2:589
6473 msgid ""
6474 "The B<EAGAIN> error can occur when a I<preceding> call to B<setuid>(2), "
6475 "B<setreuid>(2), or B<setresuid>(2)  caused the real user ID of the process "
6476 "to change, and that change caused the process to exceed its B<RLIMIT_NPROC> "
6477 "resource limit (i.e., the number of processes belonging to the new real UID "
6478 "exceeds the resource limit).  From Linux 2.6.0 to 3.0, this caused the "
6479 "B<set*uid>()  call to fail.  (Prior to 2.6, the resource limit was not "
6480 "imposed on processes that changed their user IDs.)"
6481 msgstr ""
6482 "I<直前の> B<setuid>(2), B<setreuid>(2), B<setresuid>(2) の呼び出しで、 そのプ"
6483 "ロセスの実ユーザー ID が変更され、 その変更によりそのプロセスが "
6484 "B<RLIMIT_NPROC> リソース上限を超過してしまった場合 (すなわち、新しい実ユー"
6485 "ザー ID に属するプロセス数が B<RLIMIT_NPROC> リソース上限を超過した場合) "
6486 "に、 B<EAGAIN> エラーが発生する。 Linux 2.6.0 以上 3.0 以下では、これにより "
6487 "B<set*uid>() の呼び出しが失敗していた。 (Linux 2.6 より前では、このリソース上"
6488 "限はユーザー ID を変更したプロセスには適用されていなかった。)"
6489
6490 #. type: Plain text
6491 #: build/C/man2/execve.2:620
6492 msgid ""
6493 "Since Linux 3.1, the scenario just described no longer causes the "
6494 "B<set*uid>()  call to fail, because it too often led to security holes where "
6495 "buggy applications didn't check the return status and assumed that\\(emif "
6496 "the caller had root privileges\\(emthe call would always succeed.  Instead, "
6497 "the B<set*uid>()  calls now successfully change the real UID, but the kernel "
6498 "sets an internal flag, named B<PF_NPROC_EXCEEDED>, to note that the "
6499 "B<RLIMIT_NPROC> resource limit has been exceeded.  If the "
6500 "B<PF_NPROC_EXCEEDED> flag is set and the resource limit is still exceeded at "
6501 "the time of a subsequent B<execve>()  call, that call fails with the error "
6502 "B<EAGAIN>.  This kernel logic ensures that the B<RLIMIT_NPROC> resource "
6503 "limit is still enforced for the common privileged daemon workflow"
6504 "\\(emnamely, B<fork>(2)  + B<set*uid>()  + B<execve>()."
6505 msgstr ""
6506 "Linux 3.1 以降では、上で説明したシナリオでは B<set*uid>() の呼び出しは失敗し"
6507 "ない。 なぜなら、 返されたステータスの確認を行わず「呼び出し元が特権を持って"
6508 "いる場合には」呼び出しは必ず成功するとみなしているバグがあるアプリケーション"
6509 "では、セキュリティホールにつながることが非常によくあるからだ。 その代わり、 "
6510 "B<set*uid>() の呼び出しによる実 UID の変更は成功するが、 カーネルは "
6511 "B<PF_NPROC_EXCEEDED> という名前の内部フラグをセットする。 このフラグは "
6512 "B<RLIMIT_NPROC> リソース上限が超過したことを示す。 B<PF_NPROC_EXCEEDED> フラ"
6513 "グがセットされていて、その後で B<execve>() が呼ばれた際にリソース上限がまだ超"
6514 "過していれば、 その B<execve>() の呼び出しは B<EAGAIN> エラーで失敗する。 こ"
6515 "のカーネルのロジックにより、 特権デーモンでよく行われる処理フロー、 すなわち "
6516 "B<fork>(2)  + B<set*uid>()  + B<execve>() に対して、前と変わらず "
6517 "B<RLIMIT_NPROC> リソース上限を適用できることが保証される。"
6518
6519 #. type: Plain text
6520 #: build/C/man2/execve.2:636
6521 msgid ""
6522 "If the resource limit was not still exceeded at the time of the B<execve>()  "
6523 "call (because other processes belonging to this real UID terminated between "
6524 "the B<set*uid>()  call and the B<execve>()  call), then the B<execve>()  "
6525 "call succeeds and the kernel clears the B<PF_NPROC_EXCEEDED> process flag.  "
6526 "The flag is also cleared if a subsequent call to B<fork>(2)  by this process "
6527 "succeeds."
6528 msgstr ""
6529 "(B<set*uid>() と B<execve>() の呼び出しの間に、この実 UID に属する他のプロセ"
6530 "スが終了して) 次に B<execve>() が呼び出された際にこのリソース上限が超過してな"
6531 "ければ、 B<execve>() の呼び出しは成功し、カーネルは B<PF_NPROC_EXCEEDED> プロ"
6532 "セスフラグをクリアする。 同じプロセスによって B<fork>(2) の呼び出しが後で行わ"
6533 "れた場合にも、このフラグはクリアされる。"
6534
6535 #. type: SS
6536 #: build/C/man2/execve.2:636
6537 #, no-wrap
6538 msgid "Historical"
6539 msgstr "歴史"
6540
6541 #.  .SH BUGS
6542 #.  Some Linux versions have failed to check permissions on ELF
6543 #.  interpreters.  This is a security hole, because it allows users to
6544 #.  open any file, such as a rewinding tape device, for reading.  Some
6545 #.  Linux versions have also had other security holes in
6546 #.  .BR execve ()
6547 #.  that could be exploited for denial of service by a suitably crafted
6548 #.  ELF binary. There are no known problems with 2.0.34 or 2.2.15.
6549 #. type: Plain text
6550 #: build/C/man2/execve.2:656
6551 msgid ""
6552 "With UNIX\\ V6, the argument list of an B<exec>()  call was ended by 0, "
6553 "while the argument list of I<main> was ended by -1.  Thus, this argument "
6554 "list was not directly usable in a further B<exec>()  call.  Since UNIX\\ V7, "
6555 "both are NULL."
6556 msgstr ""
6557 "UNIX\\ V6 では B<exec>()  コールの引き数リストは 0 で終端され、 I<main> の引"
6558 "き数リストは -1 で終端されていた。 そのため、 I<main> の引き数リストは、その"
6559 "後の B<exec>()  コールには直接使用できなかった。 UNIX\\ V7 以降では、ともに "
6560 "NULL で終端される。"
6561
6562 #. type: Plain text
6563 #: build/C/man2/execve.2:659
6564 msgid ""
6565 "The following program is designed to be execed by the second program below.  "
6566 "It just echoes its command-line arguments, one per line."
6567 msgstr ""
6568 "このプログラムは、以下の二つ目のプログラムから実行するためのものである。 コマ"
6569 "ンドライン引き数を 1行に 1個ずつ表示するだけのプログラムである。"
6570
6571 #. type: Plain text
6572 #: build/C/man2/execve.2:663
6573 #, no-wrap
6574 msgid "/* myecho.c */\n"
6575 msgstr "/* myecho.c */\n"
6576
6577 #. type: Plain text
6578 #: build/C/man2/execve.2:666
6579 #, no-wrap
6580 msgid ""
6581 "#include E<lt>stdio.hE<gt>\n"
6582 "#include E<lt>stdlib.hE<gt>\n"
6583 msgstr ""
6584 "#include E<lt>stdio.hE<gt>\n"
6585 "#include E<lt>stdlib.hE<gt>\n"
6586
6587 #. type: Plain text
6588 #: build/C/man2/execve.2:671
6589 #, no-wrap
6590 msgid ""
6591 "int\n"
6592 "main(int argc, char *argv[])\n"
6593 "{\n"
6594 "    int j;\n"
6595 msgstr ""
6596 "int\n"
6597 "main(int argc, char *argv[])\n"
6598 "{\n"
6599 "    int j;\n"
6600
6601 #. type: Plain text
6602 #: build/C/man2/execve.2:674
6603 #, no-wrap
6604 msgid ""
6605 "    for (j = 0; j E<lt> argc; j++)\n"
6606 "        printf(\"argv[%d]: %s\\en\", j, argv[j]);\n"
6607 msgstr ""
6608 "    for (j = 0; j E<lt> argc; j++)\n"
6609 "        printf(\"argv[%d]: %s\\en\", j, argv[j]);\n"
6610
6611 #. type: Plain text
6612 #: build/C/man2/execve.2:682
6613 msgid ""
6614 "This program can be used to exec the program named in its command-line "
6615 "argument:"
6616 msgstr ""
6617 "以下のプログラムは、コマンドライン引き数で指定した名前のプログラムを 実行する"
6618 "のに使う。"
6619
6620 #. type: Plain text
6621 #: build/C/man2/execve.2:686
6622 #, no-wrap
6623 msgid "/* execve.c */\n"
6624 msgstr "/* execve.c */\n"
6625
6626 #. type: Plain text
6627 #: build/C/man2/execve.2:690
6628 #, no-wrap
6629 msgid ""
6630 "#include E<lt>stdio.hE<gt>\n"
6631 "#include E<lt>stdlib.hE<gt>\n"
6632 "#include E<lt>unistd.hE<gt>\n"
6633 msgstr ""
6634 "#include E<lt>stdio.hE<gt>\n"
6635 "#include E<lt>stdlib.hE<gt>\n"
6636 "#include E<lt>unistd.hE<gt>\n"
6637
6638 #. type: Plain text
6639 #: build/C/man2/execve.2:696
6640 #, no-wrap
6641 msgid ""
6642 "int\n"
6643 "main(int argc, char *argv[])\n"
6644 "{\n"
6645 "    char *newargv[] = { NULL, \"hello\", \"world\", NULL };\n"
6646 "    char *newenviron[] = { NULL };\n"
6647 msgstr ""
6648 "int\n"
6649 "main(int argc, char *argv[])\n"
6650 "{\n"
6651 "    char *newargv[] = { NULL, \"hello\", \"world\", NULL };\n"
6652 "    char *newenviron[] = { NULL };\n"
6653
6654 #. type: Plain text
6655 #: build/C/man2/execve.2:701
6656 #, no-wrap
6657 msgid ""
6658 "    if (argc != 2) {\n"
6659 "        fprintf(stderr, \"Usage: %s E<lt>file-to-execE<gt>\\en\", argv[0]);\n"
6660 "        exit(EXIT_FAILURE);\n"
6661 "    }\n"
6662 msgstr ""
6663 "    if (argc != 2) {\n"
6664 "        fprintf(stderr, \"Usage: %s E<lt>file-to-execE<gt>\\en\", argv[0]);\n"
6665 "        exit(EXIT_FAILURE);\n"
6666 "    }\n"
6667
6668 #. type: Plain text
6669 #: build/C/man2/execve.2:703
6670 #, no-wrap
6671 msgid "    newargv[0] = argv[1];\n"
6672 msgstr "    newargv[0] = argv[1];\n"
6673
6674 #. type: Plain text
6675 #: build/C/man2/execve.2:708
6676 #, no-wrap
6677 msgid ""
6678 "    execve(argv[1], newargv, newenviron);\n"
6679 "    perror(\"execve\");   /* execve() only returns on error */\n"
6680 "    exit(EXIT_FAILURE);\n"
6681 "}\n"
6682 msgstr ""
6683 "    execve(argv[1], newargv, newenviron);\n"
6684 "    perror(\"execve\");   /* execve() only returns on error */\n"
6685 "    exit(EXIT_FAILURE);\n"
6686 "}\n"
6687
6688 #. type: Plain text
6689 #: build/C/man2/execve.2:712
6690 msgid "We can use the second program to exec the first as follows:"
6691 msgstr ""
6692 "二つ目のプログラムを使って一つ目のプログラムを実行するには 以下のようにする。"
6693
6694 #. type: Plain text
6695 #: build/C/man2/execve.2:721
6696 #, no-wrap
6697 msgid ""
6698 "$B< cc myecho.c -o myecho>\n"
6699 "$B< cc execve.c -o execve>\n"
6700 "$B< ./execve ./myecho>\n"
6701 "argv[0]: ./myecho\n"
6702 "argv[1]: hello\n"
6703 "argv[2]: world\n"
6704 msgstr ""
6705 "$B< cc myecho.c -o myecho>\n"
6706 "$B< cc execve.c -o execve>\n"
6707 "$B< ./execve ./myecho>\n"
6708 "argv[0]: ./myecho\n"
6709 "argv[1]: hello\n"
6710 "argv[2]: world\n"
6711
6712 #. type: Plain text
6713 #: build/C/man2/execve.2:729
6714 msgid ""
6715 "We can also use these programs to demonstrate the use of a script "
6716 "interpreter.  To do this we create a script whose \"interpreter\" is our "
6717 "I<myecho> program:"
6718 msgstr ""
6719 "さらに、これらのプログラムを使って、スクリプト・インタプリタの例を示す。 この"
6720 "ために、「インタプリタ」として先ほど作成したプログラム I<myecho> を使うスクリ"
6721 "プトを作成する。"
6722
6723 #. type: Plain text
6724 #: build/C/man2/execve.2:736
6725 #, no-wrap
6726 msgid ""
6727 "$B< cat E<gt> script>\n"
6728 "B<#!./myecho script-arg>\n"
6729 "B<^D>\n"
6730 "$B< chmod +x script>\n"
6731 msgstr ""
6732 "$B< cat E<gt> script>\n"
6733 "B<#!./myecho script-arg>\n"
6734 "B<^D>\n"
6735 "$B< chmod +x script>\n"
6736
6737 #. type: Plain text
6738 #: build/C/man2/execve.2:740
6739 msgid "We can then use our program to exec the script:"
6740 msgstr "作成しておいたプログラムを使ってスクリプトを実行する。"
6741
6742 #. type: Plain text
6743 #: build/C/man2/execve.2:749
6744 #, no-wrap
6745 msgid ""
6746 "$B< ./execve ./script>\n"
6747 "argv[0]: ./myecho\n"
6748 "argv[1]: script-arg\n"
6749 "argv[2]: ./script\n"
6750 "argv[3]: hello\n"
6751 "argv[4]: world\n"
6752 msgstr ""
6753 "$B< ./execve ./script>\n"
6754 "argv[0]: ./myecho\n"
6755 "argv[1]: script-arg\n"
6756 "argv[2]: ./script\n"
6757 "argv[3]: hello\n"
6758 "argv[4]: world\n"
6759
6760 #. type: Plain text
6761 #: build/C/man2/execve.2:763
6762 msgid ""
6763 "B<chmod>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<execl>(3), "
6764 "B<fexecve>(3), B<getopt>(3), B<credentials>(7), B<environ>(7), "
6765 "B<path_resolution>(7), B<ld.so>(8)"
6766 msgstr ""
6767 "B<chmod>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<execl>(3), "
6768 "B<fexecve>(3), B<getopt>(3), B<credentials>(7), B<environ>(7), "
6769 "B<path_resolution>(7), B<ld.so>(8)"
6770
6771 #. type: TH
6772 #: build/C/man2/exit_group.2:25
6773 #, no-wrap
6774 msgid "EXIT_GROUP"
6775 msgstr "EXIT_GROUP"
6776
6777 #. type: TH
6778 #: build/C/man2/exit_group.2:25
6779 #, no-wrap
6780 msgid "2008-11-27"
6781 msgstr "2008-11-27"
6782
6783 #. type: Plain text
6784 #: build/C/man2/exit_group.2:28
6785 msgid "exit_group - exit all threads in a process"
6786 msgstr "exit_group - プロセス中の全てのスレッドを exit させる"
6787
6788 #. type: Plain text
6789 #: build/C/man2/exit_group.2:31
6790 #, no-wrap
6791 msgid "B<#include E<lt>linux/unistd.hE<gt>>\n"
6792 msgstr "B<#include E<lt>linux/unistd.hE<gt>>\n"
6793
6794 #. type: Plain text
6795 #: build/C/man2/exit_group.2:33
6796 #, no-wrap
6797 msgid "B<void exit_group(int >I<status>B<);>\n"
6798 msgstr "B<void exit_group(int >I<status>B<);>\n"
6799
6800 #. type: Plain text
6801 #: build/C/man2/exit_group.2:39
6802 msgid ""
6803 "This system call is equivalent to B<exit>(2)  except that it terminates not "
6804 "only the calling thread, but all threads in the calling process's thread "
6805 "group."
6806 msgstr ""
6807 "このシステムコールは、基本的に B<exit>(2)  と等しいが、 呼び出し元のスレッド"
6808 "だけでなく、呼び出し元のプロセスのスレッドグループに ある全てのスレッドを終了"
6809 "させる点が異なる。"
6810
6811 #. type: Plain text
6812 #: build/C/man2/exit_group.2:41
6813 msgid "This system call does not return."
6814 msgstr "このシステムコールは値を返さない。"
6815
6816 #. type: Plain text
6817 #: build/C/man2/exit_group.2:43
6818 msgid "This call is present since Linux 2.5.35."
6819 msgstr "このコールは、Linux 2.5.35 以降に存在する。"
6820
6821 #. type: Plain text
6822 #: build/C/man2/exit_group.2:45
6823 msgid "This call is Linux-specific."
6824 msgstr "このシステムコールは Linux 固有である。"
6825
6826 #. type: Plain text
6827 #: build/C/man2/exit_group.2:49
6828 msgid ""
6829 "Since glibc 2.3, this is the system call invoked when the B<exit>(2)  "
6830 "wrapper function is called."
6831 msgstr ""
6832 "glibc 2.3 以降では、 B<exit>(2)  のラッパー関数が呼び出された際に、 このシス"
6833 "テムコールが起動される。"
6834
6835 #. type: Plain text
6836 #: build/C/man2/exit_group.2:51
6837 msgid "B<exit>(2)"
6838 msgstr "B<exit>(2)"
6839
6840 #. type: TH
6841 #: build/C/man2/fcntl.2:65
6842 #, no-wrap
6843 msgid "FCNTL"
6844 msgstr "FCNTL"
6845
6846 #. type: Plain text
6847 #: build/C/man2/fcntl.2:68
6848 msgid "fcntl - manipulate file descriptor"
6849 msgstr "fcntl - ファイルディスクリプタの操作を行う"
6850
6851 #. type: Plain text
6852 #: build/C/man2/fcntl.2:72
6853 #, no-wrap
6854 msgid ""
6855 "B<#include E<lt>unistd.hE<gt>>\n"
6856 "B<#include E<lt>fcntl.hE<gt>>\n"
6857 msgstr ""
6858 "B<#include E<lt>unistd.hE<gt>>\n"
6859 "B<#include E<lt>fcntl.hE<gt>>\n"
6860
6861 #. type: Plain text
6862 #: build/C/man2/fcntl.2:74
6863 #, no-wrap
6864 msgid "B<int fcntl(int >I<fd>B<, int >I<cmd>B<, ... /* >I<arg>B< */ );>\n"
6865 msgstr "B<int fcntl(int >I<fd>B<, int >I<cmd>B<, ... /* >I<arg>B< */ );>\n"
6866
6867 #. type: Plain text
6868 #: build/C/man2/fcntl.2:81
6869 msgid ""
6870 "B<fcntl>()  performs one of the operations described below on the open file "
6871 "descriptor I<fd>.  The operation is determined by I<cmd>."
6872 msgstr ""
6873 "B<fcntl>()  は、オープンされたファイルディスクリプタ I<fd> に関して下記の操作"
6874 "を行う。操作は I<cmd> によって決まる:"
6875
6876 #. type: Plain text
6877 #: build/C/man2/fcntl.2:95
6878 msgid ""
6879 "B<fcntl>()  can take an optional third argument.  Whether or not this "
6880 "argument is required is determined by I<cmd>.  The required argument type is "
6881 "indicated in parentheses after each I<cmd> name (in most cases, the required "
6882 "type is I<int>, and we identify the argument using the name I<arg>), or "
6883 "I<void> is specified if the argument is not required."
6884 msgstr ""
6885 "B<fcntl>() はオプションとして第三引き数をとることができる。 第三引き数が必"
6886 "要\n"
6887 "かどうかは I<cmd> により決まる。必要な引き数の型は I<cmd> 名の後ろの括弧内"
6888 "で\n"
6889 "指定されている (ほとんどの場合、必要な型は I<int> であり、この引き数を表す"
6890 "の\n"
6891 "に I<arg> という名前を使っている)。引き数が必要ない場合には I<void> が指定"
6892 "さ\n"
6893 "れている。"
6894
6895 #. type: Plain text
6896 #: build/C/man2/fcntl.2:106
6897 msgid ""
6898 "Certain of the operations below are supported only since a particular Linux "
6899 "kernel version.  The preferred method of checking whether the host kernel "
6900 "supports a particular operation is to invoke B<fcntl>()  with the desired "
6901 "I<cmd> value and then test whether the call failed with B<EINVAL>, "
6902 "indicating that the kernel does not recognize this value."
6903 msgstr ""
6904 "下記のいくつかの操作は特定のバージョンの Linux カーネルでのみサポートされてい"
6905 "る。 ホストカーネルが特定の操作をサポートしているかを確認する推奨の方法は、 "
6906 "B<fcntl>() を所望の I<cmd> 値で呼び出し、 B<EINVAL> で失敗するかを検査するこ"
6907 "とである。 B<EINVAL> が返った場合、カーネルがこの値を認識していないことを示"
6908 "す。"
6909
6910 #. type: SS
6911 #: build/C/man2/fcntl.2:106
6912 #, no-wrap
6913 msgid "Duplicating a file descriptor"
6914 msgstr "ファイルディスクリプタの複製"
6915
6916 #. type: TP
6917 #: build/C/man2/fcntl.2:107
6918 #, no-wrap
6919 msgid "B<F_DUPFD> (I<int>)"
6920 msgstr "B<F_DUPFD> (I<int>)"
6921
6922 #. type: Plain text
6923 #: build/C/man2/fcntl.2:117
6924 msgid ""
6925 "Find the lowest numbered available file descriptor greater than or equal to "
6926 "I<arg> and make it be a copy of I<fd>.  This is different from B<dup2>(2), "
6927 "which uses exactly the descriptor specified."
6928 msgstr ""
6929 "利用可能なファイルディスクリプタのうち、 I<arg> 以上で最小のものを探し、 "
6930 "I<fd> のコピーとする。これは別の形の B<dup2>(2)  である。 B<dup2>(2)  では指"
6931 "定されたディスクリプタが使われる点が違う。"
6932
6933 #. type: Plain text
6934 #: build/C/man2/fcntl.2:119
6935 msgid "On success, the new descriptor is returned."
6936 msgstr "成功すると、新しいディスクリプタが返される。"
6937
6938 #. type: Plain text
6939 #: build/C/man2/fcntl.2:123
6940 msgid "See B<dup>(2)  for further details."
6941 msgstr "詳細は B<dup>(2)  を参照のこと。"
6942
6943 #. type: TP
6944 #: build/C/man2/fcntl.2:123
6945 #, no-wrap
6946 msgid "B<F_DUPFD_CLOEXEC> (I<int>; since Linux 2.6.24)"
6947 msgstr "B<F_DUPFD_CLOEXEC> (I<int>; Linux 2.6.24 以降)"
6948
6949 #. type: Plain text
6950 #: build/C/man2/fcntl.2:140
6951 msgid ""
6952 "As for B<F_DUPFD>, but additionally set the close-on-exec flag for the "
6953 "duplicate descriptor.  Specifying this flag permits a program to avoid an "
6954 "additional B<fcntl>()  B<F_SETFD> operation to set the B<FD_CLOEXEC> flag.  "
6955 "For an explanation of why this flag is useful, see the description of "
6956 "B<O_CLOEXEC> in B<open>(2)."
6957 msgstr ""
6958 "B<F_DUPFD> と同様だが、それに加えて複製されたディスクリプタに対して close-on-"
6959 "exec フラグをセットする。 このフラグを指定することで、プログラムは "
6960 "B<FD_CLOEXEC> フラグをセットするために B<fcntl>()  の B<F_SETFD> 操作を追加で"
6961 "行う必要がなくなる。 このフラグがなぜ有用かについては、 B<open>(2)  の "
6962 "B<O_CLOEXEC> の説明を参照のこと。"
6963
6964 #. type: SS
6965 #: build/C/man2/fcntl.2:140
6966 #, no-wrap
6967 msgid "File descriptor flags"
6968 msgstr "ファイルディスクリプタフラグ"
6969
6970 #. type: Plain text
6971 #: build/C/man2/fcntl.2:151
6972 msgid ""
6973 "The following commands manipulate the flags associated with a file "
6974 "descriptor.  Currently, only one such flag is defined: B<FD_CLOEXEC>, the "
6975 "close-on-exec flag.  If the B<FD_CLOEXEC> bit is 0, the file descriptor will "
6976 "remain open across an B<execve>(2), otherwise it will be closed."
6977 msgstr ""
6978 "以下のコマンドを使って、ファイルディスクリプタに関連するフラグ を操作すること"
6979 "ができる。 現在のところ、定義されているフラグは一つだけである: B<FD_CLOEXEC> "
6980 "(close-on-exec フラグ)。 B<FD_CLOEXEC> ビットが 0 なら、ファイルディスクリプ"
6981 "タは B<execve>(2)  を行ってもオープンされたままだが、そうでない場合はクローズ"
6982 "される。"
6983
6984 #. type: TP
6985 #: build/C/man2/fcntl.2:151
6986 #, no-wrap
6987 msgid "B<F_GETFD> (I<void>)"
6988 msgstr "B<F_GETFD> (I<void>)"
6989
6990 #. type: Plain text
6991 #: build/C/man2/fcntl.2:156
6992 msgid "Read the file descriptor flags; I<arg> is ignored."
6993 msgstr "ファイルディスクリプタフラグを読み出す。 I<arg> は無視される。"
6994
6995 #. type: TP
6996 #: build/C/man2/fcntl.2:156
6997 #, no-wrap
6998 msgid "B<F_SETFD> (I<int>)"
6999 msgstr "B<F_SETFD> (I<int>)"
7000
7001 #. type: Plain text
7002 #: build/C/man2/fcntl.2:160
7003 msgid "Set the file descriptor flags to the value specified by I<arg>."
7004 msgstr "ファイルディスクリプタフラグに I<arg> で指定した値を設定する。"
7005
7006 #. type: Plain text
7007 #: build/C/man2/fcntl.2:175
7008 msgid ""
7009 "In multithreaded programs, using B<fcntl>()  B<F_SETFD> to set the close-on-"
7010 "exec flag at the same time as another thread performs a B<fork>(2)  plus "
7011 "B<execve>(2)  is vulnerable to a race condition that may unintentionally "
7012 "leak the file descriptor to the program executed in the child process.  See "
7013 "the discussion of the B<O_CLOEXEC> flag in B<open>(2)  for details and a "
7014 "remedy to the problem."
7015 msgstr ""
7016 "マルチスレッドプログラムでは、 B<fcntl>() の B<F_SETFD> を使って close-on-"
7017 "exec フラグを設定するのと同時に、 別のスレッドで B<execve>(2) と B<fork>(2) "
7018 "を実行することは、競合条件次第では、 そのファイルディスクリプタが子プロセスで"
7019 "実行されるプログラムに意図せず見えてしまうという危険性がある。 詳細とこの問題"
7020 "への対処法については B<open>(2) の B<O_CLOEXEC> フラグの議論を参照のこと。"
7021
7022 #. type: SS
7023 #: build/C/man2/fcntl.2:175
7024 #, no-wrap
7025 msgid "File status flags"
7026 msgstr "ファイル状態フラグ"
7027
7028 #.  or
7029 #.  .BR creat (2),
7030 #. type: Plain text
7031 #: build/C/man2/fcntl.2:190
7032 msgid ""
7033 "Each open file description has certain associated status flags, initialized "
7034 "by B<open>(2)  and possibly modified by B<fcntl>().  Duplicated file "
7035 "descriptors (made with B<dup>(2), B<fcntl>(F_DUPFD), B<fork>(2), etc.) refer "
7036 "to the same open file description, and thus share the same file status flags."
7037 msgstr ""
7038 "オープンファイル記述 (open file description) には、 ファイル記述毎に設定され"
7039 "る状態フラグがいくつかある。これらのフラグは B<open>(2)  によって初期化さ"
7040 "れ、 B<fcntl>(2)  により変更することもできる。これらは、 (B<dup>(2), "
7041 "B<fcntl>(F_DUPFD), B<fork>(2)  などで) 複製されたファイルディスクリプタ同士"
7042 "は 同じオープンファイル記述を参照する。 そのため、 同じファイル状態フラグが共"
7043 "有される。"
7044
7045 #. type: Plain text
7046 #: build/C/man2/fcntl.2:193
7047 msgid "The file status flags and their semantics are described in B<open>(2)."
7048 msgstr "ファイル状態フラグとその意味は B<open>(2)  で説明されている。"
7049
7050 #. type: TP
7051 #: build/C/man2/fcntl.2:193
7052 #, no-wrap
7053 msgid "B<F_GETFL> (I<void>)"
7054 msgstr "B<F_GETFL> (I<void>)"
7055
7056 #. type: Plain text
7057 #: build/C/man2/fcntl.2:198
7058 msgid "Get the file access mode and the file status flags; I<arg> is ignored."
7059 msgstr ""
7060 "ファイルのアクセスモードとファイル状態フラグを取得する。\n"
7061 "I<arg> は無視される。"
7062
7063 #. type: TP
7064 #: build/C/man2/fcntl.2:198
7065 #, no-wrap
7066 msgid "B<F_SETFL> (I<int>)"
7067 msgstr "B<F_SETFL> (I<int>)"
7068
7069 #. type: Plain text
7070 #: build/C/man2/fcntl.2:223
7071 msgid ""
7072 "Set the file status flags to the value specified by I<arg>.  File access "
7073 "mode (B<O_RDONLY>, B<O_WRONLY>, B<O_RDWR>)  and file creation flags (i.e., "
7074 "B<O_CREAT>, B<O_EXCL>, B<O_NOCTTY>, B<O_TRUNC>)  in I<arg> are ignored.  On "
7075 "Linux this command can change only the B<O_APPEND>, B<O_ASYNC>, B<O_DIRECT>, "
7076 "B<O_NOATIME>, and B<O_NONBLOCK> flags.  It is not possible to change the "
7077 "B<O_DSYNC> and B<O_SYNC> flags; see BUGS, below."
7078 msgstr ""
7079 "ファイル状態フラグに I<arg> で指定された値を設定する。 I<arg> のうち、ファイ"
7080 "ルのアクセスモード (B<O_RDONLY>, B<O_WRONLY>, B<O_RDWR>)  とファイル作成フラ"
7081 "グ (すなわち B<O_CREAT>, B<O_EXCL>, B<O_NOCTTY>, B<O_TRUNC>)  に関するビット"
7082 "は無視される。 Linux では、このコマンドで変更できるのは B<O_APPEND>, "
7083 "B<O_ASYNC>, B<O_DIRECT>, B<O_NOATIME>, B<O_NONBLOCK> フラグだけである。フラ"
7084 "グ B<O_DSYNC>, B<O_SYNC> を変更することはできない。下記の「バグ」を参照。"
7085
7086 #. type: SS
7087 #: build/C/man2/fcntl.2:223
7088 #, no-wrap
7089 msgid "Advisory record locking"
7090 msgstr "アドバイザリーレコードロック"
7091
7092 #. type: Plain text
7093 #: build/C/man2/fcntl.2:228
7094 msgid ""
7095 "Linux implements traditional (\"process-associated\") UNIX record locks, as "
7096 "standardized by POSIX.  For a Linux-specific alternative with better "
7097 "semantics, see the discussion of open file description locks below."
7098 msgstr ""
7099 "Linux は昔からある (「プロセスに関連付けられる」) UNIX のレコードロックを実装"
7100 "している。 このレコードロックは POSIX で標準化されている。 Linux 固有のより良"
7101 "い動作を行うロックについては、下記のオープンファイル記述ロックの議論を参照の"
7102 "こと。"
7103
7104 #. type: Plain text
7105 #: build/C/man2/fcntl.2:239
7106 msgid ""
7107 "B<F_SETLK>, B<F_SETLKW>, and B<F_GETLK> are used to acquire, release, and "
7108 "test for the existence of record locks (also known as byte-range, file-"
7109 "segment, or file-region locks).  The third argument, I<lock>, is a pointer "
7110 "to a structure that has at least the following fields (in unspecified order)."
7111 msgstr ""
7112 "B<F_SETLK>, B<F_SETLKW>, B<F_GETLK> は、レコードロックの獲得/解放/テストの"
7113 "ために使用する (レコードロックは、バイト範囲ロック、ファイルセグメントロッ"
7114 "ク、ファイル領域ロックとも呼ばれる)。 三番目の引き数 I<lock> は、以下に示す"
7115 "フィールドを含む構造体へのポインタである (フィールドの順序は関係なく、構造体"
7116 "に他のフィールドがあってもよい)。"
7117
7118 #. type: Plain text
7119 #: build/C/man2/fcntl.2:254
7120 #, no-wrap
7121 msgid ""
7122 "struct flock {\n"
7123 "    ...\n"
7124 "    short l_type;    /* Type of lock: F_RDLCK,\n"
7125 "                        F_WRLCK, F_UNLCK */\n"
7126 "    short l_whence;  /* How to interpret l_start:\n"
7127 "                        SEEK_SET, SEEK_CUR, SEEK_END */\n"
7128 "    off_t l_start;   /* Starting offset for lock */\n"
7129 "    off_t l_len;     /* Number of bytes to lock */\n"
7130 "    pid_t l_pid;     /* PID of process blocking our lock\n"
7131 "                        (set by F_GETLK and F_OFD_GETLK) */\n"
7132 "    ...\n"
7133 "};\n"
7134 msgstr ""
7135 "struct flock {\n"
7136 "    ...\n"
7137 "    short l_type;    /* Type of lock: F_RDLCK,\n"
7138 "                        F_WRLCK, F_UNLCK */\n"
7139 "    short l_whence;  /* How to interpret l_start:\n"
7140 "                        SEEK_SET, SEEK_CUR, SEEK_END */\n"
7141 "    off_t l_start;   /* Starting offset for lock */\n"
7142 "    off_t l_len;     /* Number of bytes to lock */\n"
7143 "    pid_t l_pid;     /* PID of process blocking our lock\n"
7144 "                        (set by F_GETLK and F_OFD_GETLK) */\n"
7145 "    ...\n"
7146 "};\n"
7147
7148 #. type: Plain text
7149 #: build/C/man2/fcntl.2:262
7150 msgid ""
7151 "The I<l_whence>, I<l_start>, and I<l_len> fields of this structure specify "
7152 "the range of bytes we wish to lock.  Bytes past the end of the file may be "
7153 "locked, but not bytes before the start of the file."
7154 msgstr ""
7155 "この構造体の I<l_whence>, I<l_start>, I<l_len> フィールドで、ロックを行いたい"
7156 "バイト範囲を指定する。 ファイルの末尾より後ろのバイトをロックすることはできる"
7157 "が、 ファイルの先頭より前のバイトをロックすることはできない。"
7158
7159 #. type: Plain text
7160 #: build/C/man2/fcntl.2:282
7161 msgid ""
7162 "I<l_start> is the starting offset for the lock, and is interpreted relative "
7163 "to either: the start of the file (if I<l_whence> is B<SEEK_SET>); the "
7164 "current file offset (if I<l_whence> is B<SEEK_CUR>); or the end of the file "
7165 "(if I<l_whence> is B<SEEK_END>).  In the final two cases, I<l_start> can be "
7166 "a negative number provided the offset does not lie before the start of the "
7167 "file."
7168 msgstr ""
7169 "I<l_start> はロックを行う領域の開始オフセットである。 その意味は I<l_whence> "
7170 "により異なる: I<l_whence> が B<SEEK_SET> の場合はファイルの先頭からのオフセッ"
7171 "ト、 I<l_whence> が B<SEEK_CUR> の場合は現在のファイルオフセットからのオフ"
7172 "セット、 I<l_whence> が B<SEEK_END> の場合はファイルの末尾からのオフセットと"
7173 "解釈される。 後ろの2つの場合には、 ファイルの先頭より前にならない範囲で、 "
7174 "I<l_start> に負の値を指定することができる。"
7175
7176 #. type: Plain text
7177 #: build/C/man2/fcntl.2:297
7178 msgid ""
7179 "I<l_len> specifies the number of bytes to be locked.  If I<l_len> is "
7180 "positive, then the range to be locked covers bytes I<l_start> up to and "
7181 "including I<l_start>+I<l_len>-1.  Specifying 0 for I<l_len> has the special "
7182 "meaning: lock all bytes starting at the location specified by I<l_whence> "
7183 "and I<l_start> through to the end of file, no matter how large the file "
7184 "grows."
7185 msgstr ""
7186 "I<l_len> はロックしたいバイト数を示す。 I<l_len> が正の場合、ロックされるバイ"
7187 "ト範囲は I<l_start> 以上 I<l_start>+I<l_len>-1 以下となる。 I<l_len> に 0 を"
7188 "指定した場合は特別な意味を持つ: I<l_whence> and I<l_start> で指定される位置か"
7189 "らファイルの末尾までの全てのバイトをロックする (ファイルがどんなに大きくなっ"
7190 "たとしてもファイルの末尾までロックする)。"
7191
7192 #. type: Plain text
7193 #: build/C/man2/fcntl.2:310
7194 msgid ""
7195 "POSIX.1-2001 allows (but does not require)  an implementation to support a "
7196 "negative I<l_len> value; if I<l_len> is negative, the interval described by "
7197 "I<lock> covers bytes I<l_start>+I<l_len> up to and including I<l_start>-1.  "
7198 "This is supported by Linux since kernel versions 2.4.21 and 2.5.49."
7199 msgstr ""
7200 "POSIX.1-2001 では、負の値の I<l_len> をサポートする実装を認めている (必須では"
7201 "ない)。 I<l_len> が負の場合、ロックされるバイト範囲は I<l_start>+I<l_len> 以"
7202 "上 I<l_start>-1 以下となる。 この動作はカーネル 2.4.21 以降および 2.5.49 以降"
7203 "の Linux で サポートされている。"
7204
7205 #. type: Plain text
7206 #: build/C/man2/fcntl.2:329
7207 msgid ""
7208 "The I<l_type> field can be used to place a read (B<F_RDLCK>)  or a write "
7209 "(B<F_WRLCK>)  lock on a file.  Any number of processes may hold a read lock "
7210 "(shared lock)  on a file region, but only one process may hold a write lock "
7211 "(exclusive lock).  An exclusive lock excludes all other locks, both shared "
7212 "and exclusive.  A single process can hold only one type of lock on a file "
7213 "region; if a new lock is applied to an already-locked region, then the "
7214 "existing lock is converted to the new lock type.  (Such conversions may "
7215 "involve splitting, shrinking, or coalescing with an existing lock if the "
7216 "byte range specified by the new lock does not precisely coincide with the "
7217 "range of the existing lock.)"
7218 msgstr ""
7219 "I<l_type> フィールドは、ファイルに対して読み出しロック (B<F_RDLCK>)  と書き込"
7220 "みロック (B<F_WRLCK>)  のどちらを 設定するかを指定する。 ファイルのある領域に"
7221 "対して、読み出しロック (共有ロック) を保持できる プロセス数に制限はないが、書"
7222 "き込みロック (排他ロック) を保持できる のは一つのプロセスだけである。排他ロッ"
7223 "クを設定すると、(共有ロックか 排他ロックにかかわらず) 他のロックは何も設定で"
7224 "きない。 一つのプロセスは、ファイルのある領域に対して一種類のロックしか保持で"
7225 "きない。 新規のロックがロックが設定されている領域に対して適用されると、既存の"
7226 "ロック は新規のロックの種別に変換される (新規のロックで指定されたバイト範囲が"
7227 "既存ロックの範囲と一致する場合以外では、 変換の過程で既存のロックの分割、縮"
7228 "小、結合が行われることがある)。"
7229
7230 #. type: TP
7231 #: build/C/man2/fcntl.2:329
7232 #, no-wrap
7233 msgid "B<F_SETLK> (I<struct flock *>)"
7234 msgstr "B<F_SETLK> (I<struct flock *>)"
7235
7236 #. type: Plain text
7237 #: build/C/man2/fcntl.2:354
7238 msgid ""
7239 "Acquire a lock (when I<l_type> is B<F_RDLCK> or B<F_WRLCK>)  or release a "
7240 "lock (when I<l_type> is B<F_UNLCK>)  on the bytes specified by the "
7241 "I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>.  If a conflicting "
7242 "lock is held by another process, this call returns -1 and sets I<errno> to "
7243 "B<EACCES> or B<EAGAIN>.  (The error returned in this case differs across "
7244 "implementations, so POSIX requires a portable application to check for both "
7245 "errors.)"
7246 msgstr ""
7247 "(I<l_type> が B<F_RDLCK> か B<F_WRLCK> の場合は) ロックの獲得を、 "
7248 "(B<F_UNLCK> の場合は) ロックの解放を、 I<flock> 構造体のフィールド "
7249 "I<l_whence>, I<l_start>, I<l_len> で指定された範囲のバイトに対して行う。 指定"
7250 "されたロックが他のプロセスが設定しているロックと衝突する場合は、 -1 を返し、 "
7251 "I<errno> に B<EACCES> か B<EAGAIN> を設定する。 (この場合に返されるエラーは実"
7252 "装により異なる。 そのため、 POSIX では移植性が必要なアプリケーションでは、 こ"
7253 "れらの両方のエラーをチェックすることが必要としている。)"
7254
7255 #. type: TP
7256 #: build/C/man2/fcntl.2:354
7257 #, no-wrap
7258 msgid "B<F_SETLKW> (I<struct flock *>)"
7259 msgstr "B<F_SETLKW> (I<struct flock *>)"
7260
7261 #. type: Plain text
7262 #: build/C/man2/fcntl.2:368
7263 msgid ""
7264 "As for B<F_SETLK>, but if a conflicting lock is held on the file, then wait "
7265 "for that lock to be released.  If a signal is caught while waiting, then the "
7266 "call is interrupted and (after the signal handler has returned)  returns "
7267 "immediately (with return value -1 and I<errno> set to B<EINTR>; see "
7268 "B<signal>(7))."
7269 msgstr ""
7270 "B<F_SETLK> と同様だが、こちらではそのファイルに対して衝突するロックが 適用さ"
7271 "れていた場合に、そのロックが解放されるのを待つ点が異なる。 待っている間にシグ"
7272 "ナルを受けた場合は、システムコールは中断され、 (シグナルハンドラが戻った直後"
7273 "に) 返り値 -1 を返す (また I<errno> に B<EINTR> が設定される; B<signal>(7)  "
7274 "参照)。"
7275
7276 #. type: TP
7277 #: build/C/man2/fcntl.2:368
7278 #, no-wrap
7279 msgid "B<F_GETLK> (I<struct flock *>)"
7280 msgstr "B<F_GETLK> (I<struct flock *>)"
7281
7282 #. type: Plain text
7283 #: build/C/man2/fcntl.2:382
7284 msgid ""
7285 "On input to this call, I<lock> describes a lock we would like to place on "
7286 "the file.  If the lock could be placed, B<fcntl>()  does not actually place "
7287 "it, but returns B<F_UNLCK> in the I<l_type> field of I<lock> and leaves the "
7288 "other fields of the structure unchanged."
7289 msgstr ""
7290 "このコールの呼び出し時には、 I<lock> にはそのファイルに適用しようとするロック"
7291 "に関する情報が入っている。 ロックを適用できる場合には、 B<fcntl>()  は実際に"
7292 "はロックを行わず、 構造体 I<lock> の I<l_type> フィールドに B<F_UNLCK> を返"
7293 "し、 他のフィールドは変更しない。 "
7294
7295 #. type: Plain text
7296 #: build/C/man2/fcntl.2:399
7297 msgid ""
7298 "If one or more incompatible locks would prevent this lock being placed, then "
7299 "B<fcntl>()  returns details about one of those locks in the I<l_type>, "
7300 "I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>.  If the conflicting "
7301 "lock is a traditional (process-associated) record lock, then the I<l_pid> "
7302 "field is set to the PID of the process holding that lock.  If the "
7303 "conflicting lock is an open file description lock, then I<l_pid> is set to "
7304 "-1.  Note that the returned information may already be out of date by the "
7305 "time the caller inspects it."
7306 msgstr ""
7307 "違う種別のロックが (一つもしくは複数) 適用されていてロックを適用できないよう"
7308 "な場合には、 B<fcntl>() は、 原因となったロックの一つについての詳細を、 "
7309 "I<lock> のフィールド I<l_type>, I<l_whence>, I<l_start>, I<l_len> で返す。 衝"
7310 "突するロックが昔からある (プロセスに関連付けられる) レコードロックの場合、 "
7311 "I<l_pid> フィールドにロックを保持しているプロセスの PID が設定される。 衝突す"
7312 "るロックがオープンファイル記述ロックの場合、 I<l_pid> に -1 が設定される。 呼"
7313 "び出し元がその内容を参照した時点では、 返された情報はすでに古いものとなってい"
7314 "る可能性がある点に注意すること。"
7315
7316 #. type: Plain text
7317 #: build/C/man2/fcntl.2:407
7318 msgid ""
7319 "In order to place a read lock, I<fd> must be open for reading.  In order to "
7320 "place a write lock, I<fd> must be open for writing.  To place both types of "
7321 "lock, open a file read-write."
7322 msgstr ""
7323 "読み出しロックを適用するには、 I<fd> は読み出し用にオープンされていなければな"
7324 "らない。 書き込みロックを適用するには、 I<fd> は書き込み用にオープンされてい"
7325 "なければならない。 読み書き両方のロックを適用するには、読み書き両用で ファイ"
7326 "ルをオープンしなければならない。"
7327
7328 #. type: Plain text
7329 #: build/C/man2/fcntl.2:430
7330 msgid ""
7331 "When placing locks with B<F_SETLKW>, the kernel detects I<deadlocks>, "
7332 "whereby two or more processes have their lock requests mutually blocked by "
7333 "locks held by the other processes.  For example, suppose process A holds a "
7334 "write lock on byte 100 of a file, and process B holds a write lock on byte "
7335 "200.  If each process then attempts to lock the byte already locked by the "
7336 "other process using B<F_SETLKW>, then, without deadlock detection, both "
7337 "processes would remain blocked indefinitely.  When the kernel detects such "
7338 "deadlocks, it causes one of the blocking lock requests to immediately fail "
7339 "with the error B<EDEADLK>; an application that encounters such an error "
7340 "should release some of its locks to allow other applications to proceed "
7341 "before attempting regain the locks that it requires.  Circular deadlocks "
7342 "involving more than two processes are also detected.  Note, however, that "
7343 "there are limitations to the kernel's deadlock-detection algorithm; see BUGS."
7344 msgstr ""
7345 "B<F_SETLKW> でロックを適用する際、 カーネルはI<デッドロック>の検出を行う。 2 "
7346 "つ以上のプロセスが、 他のプロセスが保持するロックにより互いにブロックされるよ"
7347 "うなロック要求を行っているかを検査する。 例えば、 プロセス A があるファイルの"
7348 "バイト 100 に対して書き込みロックを保持していて、 プロセス B がバイト 200 に"
7349 "対して書き込みロックを保持しているとする。 各プロセスが B<F_SETLKW> を使って"
7350 "他のプロセスによるすでにロックされているバイトをロックしようとすると、 デッド"
7351 "ロック検出がない場合、 両方のプロセスが無限に停止することになる。 カーネルは"
7352 "このようなデッドロックを検出すると、 停止していたロック要求の一つをエラー "
7353 "B<EDEADLK> ですぐに失敗させる。 このエラーを受け取ったアプリケーションは、 必"
7354 "要なロックを再度獲得しようとする前に、 他のアプリケーションが実行できるように"
7355 "自分が保持するロックのいくつかを解放する必要がある。 3 つ以上のプロセスが関連"
7356 "する循環するデッドロックも検出される。 ただし、 カーネルのデッドロック検出ア"
7357 "ルゴリズムには制限がある点に注意すること。 「バグ」を参照。"
7358
7359 #. type: Plain text
7360 #: build/C/man2/fcntl.2:434
7361 msgid ""
7362 "As well as being removed by an explicit B<F_UNLCK>, record locks are "
7363 "automatically released when the process terminates."
7364 msgstr ""
7365 "ろコードロックは B<F_UNLCK> で明示的に削除されるだけでなく、 そのプロセスが終"
7366 "了した際には自動的に解放される。"
7367
7368 #. type: Plain text
7369 #: build/C/man2/fcntl.2:439
7370 msgid ""
7371 "Record locks are not inherited by a child created via B<fork>(2), but are "
7372 "preserved across an B<execve>(2)."
7373 msgstr ""
7374 "レコードのロックは B<fork>(2)  で作成された子プロセスには継承されないが、 "
7375 "B<execve>(2)  の前後では保存される。"
7376
7377 #. type: Plain text
7378 #: build/C/man2/fcntl.2:448
7379 msgid ""
7380 "Because of the buffering performed by the B<stdio>(3)  library, the use of "
7381 "record locking with routines in that package should be avoided; use "
7382 "B<read>(2)  and B<write>(2)  instead."
7383 msgstr ""
7384 "B<stdio>(3)  ではバッファリングが行われるので、 stdio 関連の関数ではレコード"
7385 "のロックの使用は回避される; 代わりに B<read>(2)  や B<write>(2)  を使用するこ"
7386 "と。"
7387
7388 #. type: Plain text
7389 #: build/C/man2/fcntl.2:452
7390 msgid ""
7391 "The record locks described above are associated with the process (unlike the "
7392 "open file description locks described below).  This has some unfortunate "
7393 "consequences:"
7394 msgstr ""
7395 "上記で説明したレコードロックはプロセスと関連付けられる (以下で説明するオープ"
7396 "ンファイル記述ロックと異なる点である)。 そのため、 残念ながら以下のようなこと"
7397 "が起こる。"
7398
7399 #.  (Additional file descriptors referring to the same file
7400 #.  may have been obtained by calls to
7401 #.  .BR open "(2), " dup "(2), " dup2 "(2), or " fcntl ().)
7402 #. type: Plain text
7403 #: build/C/man2/fcntl.2:468
7404 msgid ""
7405 "If a process closes I<any> file descriptor referring to a file, then all of "
7406 "the process's locks on that file are released, regardless of the file "
7407 "descriptor(s) on which the locks were obtained.  This is bad: it means that "
7408 "a process can lose its locks on a file such as I</etc/passwd> or I</etc/"
7409 "mtab> when for some reason a library function decides to open, read, and "
7410 "close the same file."
7411 msgstr ""
7412 "プロセスがロックが適用されているファイルを参照しているファイルディスクリプ"
7413 "ターの「いずれか」をクローズした場合、 そのファイルに対するそのプロセスのすべ"
7414 "てのロックが解放される。 この動作はまずい。 あるプロセスが I</etc/passwd> や "
7415 "I</etc/mtab> といったファイルにロックを適用しているときに、 あるライブラリ関"
7416 "数が何かの理由で同じファイルを open, read, close すると、そのファイルへのロッ"
7417 "クが失われることになる。"
7418
7419 #. type: Plain text
7420 #: build/C/man2/fcntl.2:473
7421 msgid ""
7422 "The threads in a process share locks.  In other words, a multithreaded "
7423 "program can't use record locking to ensure that threads don't simultaneously "
7424 "access the same region of a file."
7425 msgstr ""
7426 "1 つのプロセス内のスレッドはロックを共有する。 言い換えると、 マルチスレッド"
7427 "のプログラムで、 レコードロックを使って、 複数のスレッドが同時に 1 つのファイ"
7428 "ルの同じ領域にアクセスしないようにすることはできないということだ。"
7429
7430 #. type: Plain text
7431 #: build/C/man2/fcntl.2:475
7432 msgid "Open file description locks solve both of these problems."
7433 msgstr "オープンファイル記述ロックを使うとこれらの問題が解決できる。"
7434
7435 #. type: SS
7436 #: build/C/man2/fcntl.2:475
7437 #, no-wrap
7438 msgid "Open file description locks (non-POSIX)"
7439 msgstr "オープンファイル記述ロック (非 POSIX)"
7440
7441 #. type: Plain text
7442 #: build/C/man2/fcntl.2:482
7443 msgid ""
7444 "Open file description locks are advisory byte-range locks whose operation is "
7445 "in most respects identical to the traditional record locks described above.  "
7446 "This lock type is Linux-specific, and available since Linux 3.15.  For an "
7447 "explanation of open file descriptions, see B<open>(2)."
7448 msgstr ""
7449 "オープンファイル記述ロックはバイト範囲に対するアドバイザリーロックで、 ほとん"
7450 "どの点で上述の昔からあるレコードロックと等価である。 このロック種別は Linux "
7451 "固有であり、 Linux 3.15 以降で利用できる。 オープンファイル記述の説明は "
7452 "B<open>(2) を参照。"
7453
7454 #. type: Plain text
7455 #: build/C/man2/fcntl.2:500
7456 msgid ""
7457 "The principal difference between the two lock types is that whereas "
7458 "traditional record locks are associated with a process, open file "
7459 "description locks are associated with the open file description on which "
7460 "they are acquired, much like locks acquired with B<flock>(2).  Consequently "
7461 "(and unlike traditional advisory record locks), open file description locks "
7462 "are inherited across B<fork>(2)  (and B<clone>(2)  with B<CLONE_FILES>), and "
7463 "are only automatically released on the last close of the open file "
7464 "description, instead of being released on any close of the file."
7465 msgstr ""
7466 "2 つのロック種別の主な違いは、 昔からあるレコードロックはプロセスに関連付けら"
7467 "れるのに対して、 オープンファイル記述ロックはロックが獲得されるオープンファイ"
7468 "ル記述に関連付けられる点である。 この動作は B<flock>(2) で獲得されるロックに"
7469 "よく似ている。 結果として (昔からあるアドバイザリーレコードロックと違い)、 "
7470 "オープンファイル記述ロックは B<fork>(2) (や B<CLONE_FILES> 付きの "
7471 "B<clone>(2)) の前後で継承され、 ファイルのクローズ時に解放されるのではなく、 "
7472 "オープンファイル記述の最後のクローズ時にのみ自動的に解放される。"
7473
7474 #. type: Plain text
7475 #: build/C/man2/fcntl.2:503
7476 msgid ""
7477 "Open file description locks always conflict with traditional record locks, "
7478 "even when they are acquired by the same process on the same file descriptor."
7479 msgstr ""
7480 "オープンファイル記述ロックは常に昔からあるレコードロックと競合する。 たと"
7481 "え、 ロックが同じプロセスによって同じファイルディスクリプターに対して行われた"
7482 "としてもである。"
7483
7484 #. type: Plain text
7485 #: build/C/man2/fcntl.2:516
7486 msgid ""
7487 "Open file description locks placed via the same open file description (i.e., "
7488 "via the same file descriptor, or via a duplicate of the file descriptor "
7489 "created by B<fork>(2), B<dup>(2), B<fcntl>(2)  B<F_DUPFD>, and so on) are "
7490 "always compatible: if a new lock is placed on an already locked region, then "
7491 "the existing lock is converted to the new lock type.  (Such conversions may "
7492 "result in splitting, shrinking, or coalescing with an existing lock as "
7493 "discussed above.)"
7494 msgstr ""
7495 "同じオープンファイル記述経由 (同じファイルディスクリプター経由や B<fork>(2), "
7496 "B<dup>(2), B<fcntl>(2) B<F_DUPFD> などで作成されたファイルディスクリプターの"
7497 "複製経由) で適用されたオープンファイル記述ロックは常に互換性がある。 つま"
7498 "り、 すでにロックされている領域に対して新しいロックが適用された場合、 既存の"
7499 "ロックは新しいロック種別に変換される。 (上記で説明した通り、 このような変換の"
7500 "結果、 既存のロックの分割、 縮小、 結合が行われることがある。)"
7501
7502 #. type: Plain text
7503 #: build/C/man2/fcntl.2:524
7504 msgid ""
7505 "On the other hand, open file description locks may conflict with each other "
7506 "when they are acquired via different open file descriptions.  Thus, the "
7507 "threads in a multithreaded program can use open file description locks to "
7508 "synchronize access to a file region by having each thread perform its own "
7509 "B<open>(2)  on the file and applying locks via the resulting file descriptor."
7510 msgstr ""
7511 "一方、 異なるオープンファイル記述経由で獲得されると、 オープンファイル記述"
7512 "ロックは互いに競合する。 したがって、 マルチスレッドプログラムのスレッドは、 "
7513 "各スレッドがそれぞれ自分で B<open>(2) を実行し、 得られたファイルディスクリプ"
7514 "ター経由でロックを適用することで、 オープンファイル記述ロックを使って一つの"
7515 "ファイル領域えのアクセスを同期させることができる。"
7516
7517 #. type: Plain text
7518 #: build/C/man2/fcntl.2:535
7519 msgid ""
7520 "As with traditional advisory locks, the third argument to B<fcntl>(), "
7521 "I<lock>, is a pointer to an I<flock> structure.  By contrast with "
7522 "traditional record locks, the I<l_pid> field of that structure must be set "
7523 "to zero when using the commands described below."
7524 msgstr ""
7525 "昔からあるレコードロックの場合と同様、 B<fcntl>() の第 3 引き数 I<lock> は "
7526 "I<flock> 構造体へのポインターである。 昔からあるレコードロックと違い、 下記で"
7527 "説明するコマンドを使う際には、 この構造体のフィールド I<l_pid> に 0 を設定し"
7528 "なければならない。"
7529
7530 #. type: Plain text
7531 #: build/C/man2/fcntl.2:538
7532 msgid ""
7533 "The commands for working with open file description locks are analogous to "
7534 "those used with traditional locks:"
7535 msgstr ""
7536 "オープンファイル記述ロックで使用できるコマンドは、 昔からあるロックのコマンド"
7537 "と同じである。"
7538
7539 #. type: TP
7540 #: build/C/man2/fcntl.2:538
7541 #, no-wrap
7542 msgid "B<F_OFD_SETLK> (I<struct flock *>)"
7543 msgstr "B<F_OFD_SETLK> (I<struct flock *>)"
7544
7545 #. type: Plain text
7546 #: build/C/man2/fcntl.2:559
7547 msgid ""
7548 "Acquire an open file description lock (when I<l_type> is B<F_RDLCK> or "
7549 "B<F_WRLCK>)  or release an open file description lock (when I<l_type> is "
7550 "B<F_UNLCK>)  on the bytes specified by the I<l_whence>, I<l_start>, and "
7551 "I<l_len> fields of I<lock>.  If a conflicting lock is held by another "
7552 "process, this call returns -1 and sets I<errno> to B<EAGAIN>."
7553 msgstr ""
7554 "(I<l_type> が B<F_RDLCK> か B<F_WRLCK> の場合は) オープンファイル記述のロック"
7555 "の獲得を、 (B<F_UNLCK> の場合は) オープンファイル記述のロックの解放を、 "
7556 "I<flock> 構造体のフィールド I<l_whence>, I<l_start>, I<l_len> で指定された範"
7557 "囲のバイトに対して行う。 指定されたロックが他のプロセスが設定しているロックと"
7558 "衝突する場合は、 -1 を返し、 I<errno> に B<EAGAIN> を設定する。"
7559
7560 #. type: TP
7561 #: build/C/man2/fcntl.2:559
7562 #, no-wrap
7563 msgid "B<F_OFD_SETLKW> (I<struct flock *>)"
7564 msgstr "B<F_OFD_SETLKW> (I<struct flock *>)"
7565
7566 #. type: Plain text
7567 #: build/C/man2/fcntl.2:573
7568 msgid ""
7569 "As for B<F_OFD_SETLK>, but if a conflicting lock is held on the file, then "
7570 "wait for that lock to be released.  If a signal is caught while waiting, "
7571 "then the call is interrupted and (after the signal handler has returned) "
7572 "returns immediately (with return value -1 and I<errno> set to B<EINTR>; see "
7573 "B<signal>(7))."
7574 msgstr ""
7575 "B<F_OFD_SETLK> と同様だが、こちらではそのファイルに対して衝突するロックが 適"
7576 "用されていた場合に、そのロックが解放されるのを待つ点が異なる。 待っている間に"
7577 "シグナルを受けた場合は、システムコールは中断され、 (シグナルハンドラが戻った"
7578 "直後に) 返り値 -1 を返す (また I<errno> に B<EINTR> が設定される; "
7579 "B<signal>(7)  参照)。"
7580
7581 #. type: TP
7582 #: build/C/man2/fcntl.2:573
7583 #, no-wrap
7584 msgid "B<F_OFD_GETLK> (I<struct flock *>)"
7585 msgstr "B<F_OFD_GETLK> (I<struct flock *>)"
7586
7587 #. type: Plain text
7588 #: build/C/man2/fcntl.2:592
7589 msgid ""
7590 "On input to this call, I<lock> describes an open file description lock we "
7591 "would like to place on the file.  If the lock could be placed, B<fcntl>()  "
7592 "does not actually place it, but returns B<F_UNLCK> in the I<l_type> field of "
7593 "I<lock> and leaves the other fields of the structure unchanged.  If one or "
7594 "more incompatible locks would prevent this lock being placed, then details "
7595 "about one of these locks are returned via I<lock>, as described above for "
7596 "B<F_GETLK>."
7597 msgstr ""
7598 "このコールの呼び出し時には、 I<lock> にはそのファイルに適用しようとするロック"
7599 "に関する情報が入っている。 ロックを適用できる場合には、 B<fcntl>()  は実際に"
7600 "はロックを行わず、 構造体 I<lock> の I<l_type> フィールドで B<F_UNLCK> を返"
7601 "し、 他のフィールドは変更しない。 違う種別のロックが (一つもしくは複数) 適用"
7602 "されていてロックを適用できないような場合には、 原因となったロックの一つについ"
7603 "ての詳細が I<lock> で返される。 詳細は上記の B<F_GETLK> を参照。"
7604
7605 #.  commit 57b65325fe34ec4c917bc4e555144b4a94d9e1f7
7606 #. type: Plain text
7607 #: build/C/man2/fcntl.2:599
7608 msgid ""
7609 "In the current implementation, no deadlock detection is performed for open "
7610 "file description locks.  (This contrasts with process-associated record "
7611 "locks, for which the kernel does perform deadlock detection.)"
7612 msgstr ""
7613 "現在の実装では、 オープンファイル記述ロクではデッドロックの検出は行われな"
7614 "い。 (これがプロセスと関連付けられるレコードロックとは異なる点である。 プロセ"
7615 "スと関連付けられるレコードロックではカーネルはデッドロックの検出を行う。)"
7616
7617 #. type: SS
7618 #: build/C/man2/fcntl.2:599 build/C/man2/fcntl.2:1894
7619 #, no-wrap
7620 msgid "Mandatory locking"
7621 msgstr "強制ロック (mandatory locking)"
7622
7623 #. type: Plain text
7624 #: build/C/man2/fcntl.2:603
7625 msgid ""
7626 "I<Warning>: the Linux implementation of mandatory locking is unreliable.  "
7627 "See BUGS below."
7628 msgstr ""
7629 "I<警告>: Linux の強制ロックの実装は信頼性に欠けるものである。 下記の「バグ」"
7630 "の節を参照のこと。"
7631
7632 #. type: Plain text
7633 #: build/C/man2/fcntl.2:608
7634 msgid ""
7635 "By default, both traditional (process-associated) and open file description "
7636 "record locks are advisory.  Advisory locks are not enforced and are useful "
7637 "only between cooperating processes."
7638 msgstr ""
7639 "デフォルトでは、 昔からある (プロセスに関連付けられる) レコードロックも、 "
7640 "オープンファイル記述のろコードロックも、 アドバイザリーロックである。 アドバ"
7641 "イザリーロックに強制力はなく、協調して動作するプロセス間でのみ有効である。"
7642
7643 #. type: Plain text
7644 #: build/C/man2/fcntl.2:628
7645 msgid ""
7646 "Both lock types can also be mandatory.  Mandatory locks are enforced for all "
7647 "processes.  If a process tries to perform an incompatible access (e.g., "
7648 "B<read>(2)  or B<write>(2))  on a file region that has an incompatible "
7649 "mandatory lock, then the result depends upon whether the B<O_NONBLOCK> flag "
7650 "is enabled for its open file description.  If the B<O_NONBLOCK> flag is not "
7651 "enabled, then the system call is blocked until the lock is removed or "
7652 "converted to a mode that is compatible with the access.  If the "
7653 "B<O_NONBLOCK> flag is enabled, then the system call fails with the error "
7654 "B<EAGAIN>."
7655 msgstr ""
7656 "両方のタイプのロックも強制ロックにすることもできる。 強制ロックは全てのプロセ"
7657 "スに対して効果がある。 あるプロセスが互換性のない強制ロックが適用されたファイ"
7658 "ル領域に対して (B<read>(2)  や B<write>(2)  により) 互換性のないアクセスを実"
7659 "行しようとした場合、 アクセスの結果は そのファイルのオープンファイル記述で "
7660 "B<O_NONBLOCK> フラグが有効になっているかにより決まる。 B<O_NONBLOCK> フラグが"
7661 "有効になっていないときは、ロックが削除されるか、 ロックがアクセスと互換性のあ"
7662 "るモードに変換されるまで、 システムコールは停止 (block) される。 "
7663 "B<O_NONBLOCK> フラグが有効になっているときは、システムコールはエラー "
7664 "B<EAGAIN> で失敗する。"
7665
7666 #. type: Plain text
7667 #: build/C/man2/fcntl.2:645
7668 msgid ""
7669 "To make use of mandatory locks, mandatory locking must be enabled both on "
7670 "the filesystem that contains the file to be locked, and on the file itself.  "
7671 "Mandatory locking is enabled on a filesystem using the \"-o mand\" option to "
7672 "B<mount>(8), or the B<MS_MANDLOCK> flag for B<mount>(2).  Mandatory locking "
7673 "is enabled on a file by disabling group execute permission on the file and "
7674 "enabling the set-group-ID permission bit (see B<chmod>(1)  and B<chmod>(2))."
7675 msgstr ""
7676 "強制ロックを使用するためには、ロック対象のファイルが含まれるファイルシステム "
7677 "と、ロック対象のファイル自身の両方について、強制ロックが有効になっていなけれ "
7678 "ばならない。ファイルシステムについて強制ロックを有効にするには、 "
7679 "B<mount>(8)  に \"-o mand\" オプションを渡すか、 B<mount>(2)  に "
7680 "B<MS_MANDLOCK> フラグを指定する。ファイルについて強制ロックを有効にするに"
7681 "は、 そのファイルのグループ実行許可 (group execute permission) を無効とし、 "
7682 "かつ set-group-ID 許可ビットを有効にする (B<chmod>(1)  と B<chmod>(2)  を参"
7683 "照)。"
7684
7685 #. type: Plain text
7686 #: build/C/man2/fcntl.2:649
7687 msgid ""
7688 "Mandatory locking is not specified by POSIX.  Some other systems also "
7689 "support mandatory locking, although the details of how to enable it vary "
7690 "across systems."
7691 msgstr ""
7692 "強制ロックは POSIX では規定されていない。 他のいくつかのシステムでも強制ロッ"
7693 "クはサポートされているが、 強制ロックをどのようにして有効にするかの詳細はシス"
7694 "テムより異なる。"
7695
7696 #. type: SS
7697 #: build/C/man2/fcntl.2:649
7698 #, no-wrap
7699 msgid "Managing signals"
7700 msgstr "シグナルの管理"
7701
7702 #. type: Plain text
7703 #: build/C/man2/fcntl.2:658
7704 msgid ""
7705 "B<F_GETOWN>, B<F_SETOWN>, B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG> and "
7706 "B<F_SETSIG> are used to manage I/O availability signals:"
7707 msgstr ""
7708 "B<F_GETOWN>, B<F_SETOWN>, B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, "
7709 "B<F_SETSIG> は、I/O が利用可能になったことを示すシグナルを管理するために使用"
7710 "される。"
7711
7712 #. type: TP
7713 #: build/C/man2/fcntl.2:658
7714 #, no-wrap
7715 msgid "B<F_GETOWN> (I<void>)"
7716 msgstr "B<F_GETOWN> (I<void>)"
7717
7718 #. type: Plain text
7719 #: build/C/man2/fcntl.2:671
7720 msgid ""
7721 "Return (as the function result)  the process ID or process group currently "
7722 "receiving B<SIGIO> and B<SIGURG> signals for events on file descriptor "
7723 "I<fd>.  Process IDs are returned as positive values; process group IDs are "
7724 "returned as negative values (but see BUGS below).  I<arg> is ignored."
7725 msgstr ""
7726 "ファイルディスクリプタ I<fd> のイベントに対するシグナル B<SIGIO> および "
7727 "B<SIGURG> を受けているプロセスのプロセスID かプロセスグループを (関数の結果と"
7728 "して) 返す。 プロセスID は正の値として返される。 プロセスグループID は負の値"
7729 "として返される (下記のバグの章を参照)。 I<arg> は無視される。"
7730
7731 #. type: TP
7732 #: build/C/man2/fcntl.2:671
7733 #, no-wrap
7734 msgid "B<F_SETOWN> (I<int>)"
7735 msgstr "B<F_SETOWN> (I<int>)"
7736
7737 #. type: Plain text
7738 #: build/C/man2/fcntl.2:688
7739 msgid ""
7740 "Set the process ID or process group ID that will receive B<SIGIO> and "
7741 "B<SIGURG> signals for events on file descriptor I<fd> to the ID given in "
7742 "I<arg>.  A process ID is specified as a positive value; a process group ID "
7743 "is specified as a negative value.  Most commonly, the calling process "
7744 "specifies itself as the owner (that is, I<arg> is specified as B<getpid>(2))."
7745 msgstr ""
7746 "ファイルディスクリプタ I<fd> のイベント発生を知らせるシグナル B<SIGIO> や "
7747 "B<SIGURG> を受けるプロセスの プロセス ID またはプロセスグループID を I<arg> "
7748 "で指定された ID に設定する。 プロセスID は正の値として指定し、 プロセスグルー"
7749 "プID は負の値として指定する。 ほとんどの場合、呼び出し元プロセスは所有者とし"
7750 "て自分自身を指定する (つまり I<arg> に B<getpid>(2)  を指定する)。"
7751
7752 #.  From glibc.info:
7753 #. type: Plain text
7754 #: build/C/man2/fcntl.2:705
7755 msgid ""
7756 "If you set the B<O_ASYNC> status flag on a file descriptor by using the "
7757 "B<F_SETFL> command of B<fcntl>(), a B<SIGIO> signal is sent whenever input "
7758 "or output becomes possible on that file descriptor.  B<F_SETSIG> can be used "
7759 "to obtain delivery of a signal other than B<SIGIO>.  If this permission "
7760 "check fails, then the signal is silently discarded."
7761 msgstr ""
7762 "B<fcntl>()  の B<F_SETFL> コマンドを使用してファイルディスクリプタに "
7763 "B<O_ASYNC> 状態フラグを設定した場合には、そのファイルディスクリプタへの 入出"
7764 "力が可能になる度に B<SIGIO> シグナルが送られる。 B<F_SETSIG> は B<SIGIO> 以外"
7765 "の別のシグナルの配送を受けられるように するのにも使うことができる。 許可 "
7766 "(permission) のチェックで失敗した場合には、 シグナルは黙って捨てられる。"
7767
7768 #. type: Plain text
7769 #: build/C/man2/fcntl.2:713
7770 msgid ""
7771 "Sending a signal to the owner process (group) specified by B<F_SETOWN> is "
7772 "subject to the same permissions checks as are described for B<kill>(2), "
7773 "where the sending process is the one that employs B<F_SETOWN> (but see BUGS "
7774 "below)."
7775 msgstr ""
7776 "B<F_SETOWN> により指定された所有者のプロセス (またはプロセスグループ) に シグ"
7777 "ナルを送る際には、 B<kill>(2)  に書かれているのと同じ許可のチェックが行われ"
7778 "る。 このとき、シグナルを送信するプロセスは B<F_SETOWN> を使ったプロセスであ"
7779 "る (但し、下記の「バグ」の章を参照のこと)。"
7780
7781 #.  The following appears to be rubbish.  It doesn't seem to
7782 #.  be true according to the kernel source, and I can write
7783 #.  a program that gets a terminal-generated SIGIO even though
7784 #.  it is not the foreground process group of the terminal.
7785 #.  -- MTK, 8 Apr 05
7786 #.  If the file descriptor
7787 #.  .I fd
7788 #.  refers to a terminal device, then SIGIO
7789 #.  signals are sent to the foreground process group of the terminal.
7790 #. type: Plain text
7791 #: build/C/man2/fcntl.2:737
7792 msgid ""
7793 "If the file descriptor I<fd> refers to a socket, B<F_SETOWN> also selects "
7794 "the recipient of B<SIGURG> signals that are delivered when out-of-band data "
7795 "arrives on that socket.  (B<SIGURG> is sent in any situation where "
7796 "B<select>(2)  would report the socket as having an \"exceptional condition"
7797 "\".)"
7798 msgstr ""
7799 "ファイルディスクリプタがソケットを参照している場合は、 B<F_SETOWN> を使用し"
7800 "て、ソケットに帯域外 (out-of-band) データが届いた時に B<SIGURG> シグナルを配"
7801 "送する相手を選択することもできる (B<SIGURG> が送られた場合には B<select>(2)  "
7802 "がソケットが「特別な状態」にあると報告することだろう)。"
7803
7804 #. type: Plain text
7805 #: build/C/man2/fcntl.2:740
7806 msgid ""
7807 "The following was true in 2.6.x kernels up to and including kernel 2.6.11:"
7808 msgstr "バージョン 2.6.11 以前の 2.6.x カーネルでは、以下に示す動作であった。"
7809
7810 #.  The relevant place in the (2.6) kernel source is the
7811 #.  'switch' in fs/fcntl.c::send_sigio_to_task() -- MTK, Apr 2005
7812 #.  send_sigurg()/send_sigurg_to_task() bypasses
7813 #.  kill_fasync()/send_sigio()/send_sigio_to_task()
7814 #.  to directly call send_group_sig_info()
7815 #.      -- MTK, Apr 2005 (kernel 2.6.11)
7816 #. type: Plain text
7817 #: build/C/man2/fcntl.2:780
7818 msgid ""
7819 "If a nonzero value is given to B<F_SETSIG> in a multithreaded process "
7820 "running with a threading library that supports thread groups (e.g., NPTL), "
7821 "then a positive value given to B<F_SETOWN> has a different meaning: instead "
7822 "of being a process ID identifying a whole process, it is a thread ID "
7823 "identifying a specific thread within a process.  Consequently, it may be "
7824 "necessary to pass B<F_SETOWN> the result of B<gettid>(2)  instead of "
7825 "B<getpid>(2)  to get sensible results when B<F_SETSIG> is used.  (In current "
7826 "Linux threading implementations, a main thread's thread ID is the same as "
7827 "its process ID.  This means that a single-threaded program can equally use "
7828 "B<gettid>(2)  or B<getpid>(2)  in this scenario.)  Note, however, that the "
7829 "statements in this paragraph do not apply to the B<SIGURG> signal generated "
7830 "for out-of-band data on a socket: this signal is always sent to either a "
7831 "process or a process group, depending on the value given to B<F_SETOWN>."
7832 msgstr ""
7833 "スレッドグループをサポートしているスレッドライブラリ (例えば NPTL) を 使って"
7834 "動作しているマルチスレッドプロセスで B<F_SETSIG> に 0 以外の値を指定した場"
7835 "合、 B<F_SETOWN> に正の値を渡すと、その意味が違ってくる: プロセス全体を示すプ"
7836 "ロセスID ではなく、プロセス内の特定の スレッドを示すスレッドID と解釈され"
7837 "る。 したがって、 B<F_SETSIG> を使う場合には、きちんと結果を受け取るには、 "
7838 "B<F_SETOWN> に渡す値を B<getpid>(2)  ではなく B<gettid>(2)  の返り値にする必"
7839 "要があるだろう。 (現状の Linux スレッド実装では、メインスレッドのスレッドID "
7840 "は そのスレッドのプロセスID と同じである。つまり、 シグナルスレッドのプログラ"
7841 "ムではこの場合 B<gettid>(2)  と B<getpid>(2)  は全く同じように使うことができ"
7842 "る。)  ただし、注意すべき点として、この段落で述べたことは、 ソケットの帯域外"
7843 "データが届いたときに生成される B<SIGURG> シグナルにはあてはまらない。 このシ"
7844 "グナルは常にプロセスかプロセスグループに送られ、 送信先は B<F_SETOWN> に渡さ"
7845 "れた値にしたがって決められる。"
7846
7847 #. type: Plain text
7848 #: build/C/man2/fcntl.2:791
7849 msgid ""
7850 "The above behavior was accidentally dropped in Linux 2.6.12, and won't be "
7851 "restored.  From Linux 2.6.32 onward, use B<F_SETOWN_EX> to target B<SIGIO> "
7852 "and B<SIGURG> signals at a particular thread."
7853 msgstr ""
7854 "上記の動作は、Linux 2.6.12 で図らずも削除され、 元に戻されない予定である。 "
7855 "Linux 2.6.32 以降で、特定のスレッド宛にシグナル B<SIGIO> と B<SIGURG> を送る"
7856 "には B<F_SETOWN_EX> を使うこと。"
7857
7858 #. type: TP
7859 #: build/C/man2/fcntl.2:791
7860 #, no-wrap
7861 msgid "B<F_GETOWN_EX> (struct f_owner_ex *) (since Linux 2.6.32)"
7862 msgstr "B<F_GETOWN_EX> (struct f_owner_ex *) (Linux 2.6.32 以降)"
7863
7864 #. type: Plain text
7865 #: build/C/man2/fcntl.2:800
7866 msgid ""
7867 "Return the current file descriptor owner settings as defined by a previous "
7868 "B<F_SETOWN_EX> operation.  The information is returned in the structure "
7869 "pointed to by I<arg>, which has the following form:"
7870 msgstr ""
7871 "直前の B<F_SETOWN_EX> 操作で定義された現在のファイルディスクリプタの所有者設"
7872 "定 を返す。情報は I<arg> が指す構造体に格納されて返される。構造体は以下の通り"
7873 "である。"
7874
7875 #. type: Plain text
7876 #: build/C/man2/fcntl.2:807
7877 #, no-wrap
7878 msgid ""
7879 "struct f_owner_ex {\n"
7880 "    int   type;\n"
7881 "    pid_t pid;\n"
7882 "};\n"
7883 msgstr ""
7884 "struct f_owner_ex {\n"
7885 "    int   type;\n"
7886 "    pid_t pid;\n"
7887 "};\n"
7888
7889 #. type: Plain text
7890 #: build/C/man2/fcntl.2:824
7891 msgid ""
7892 "The I<type> field will have one of the values B<F_OWNER_TID>, "
7893 "B<F_OWNER_PID>, or B<F_OWNER_PGRP>.  The I<pid> field is a positive integer "
7894 "representing a thread ID, process ID, or process group ID.  See "
7895 "B<F_SETOWN_EX> for more details."
7896 msgstr ""
7897 "I<type> フィールドは、 B<F_OWNER_TID ,> B<F_OWNER_PID ,> B<F_OWNER_PGRP> のい"
7898 "ずれか一つの値となる。 I<pid> フィールドは、スレッド ID、プロセス ID、プロセ"
7899 "スグループ ID を 表す正の整数である。詳細は B<F_SETOWN_EX> を参照。"
7900
7901 #. type: TP
7902 #: build/C/man2/fcntl.2:824
7903 #, no-wrap
7904 msgid "B<F_SETOWN_EX> (struct f_owner_ex *) (since Linux 2.6.32)"
7905 msgstr "B<F_SETOWN_EX> (struct f_owner_ex *) (Linux 2.6.32 以降)"
7906
7907 #. type: Plain text
7908 #: build/C/man2/fcntl.2:840
7909 msgid ""
7910 "This operation performs a similar task to B<F_SETOWN>.  It allows the caller "
7911 "to direct I/O availability signals to a specific thread, process, or process "
7912 "group.  The caller specifies the target of signals via I<arg>, which is a "
7913 "pointer to a I<f_owner_ex> structure.  The I<type> field has one of the "
7914 "following values, which define how I<pid> is interpreted:"
7915 msgstr ""
7916 "この操作は B<F_SETOWN> と同様の処理を行う。 この操作を使うと、I/O が利用可能"
7917 "になったことを示すシグナルを、 特定のスレッド、プロセス、プロセスグループに送"
7918 "ることができる ようになる。 呼び出し元は、 I<arg> 経由でシグナルの配送先を指"
7919 "定する。 I<arg> は I<f_owner_ex> 構造体へのポインタである。 I<type> フィール"
7920 "ドは以下のいずれかの値を取り、 この値により I<pid> がどのように解釈されるかが"
7921 "規定される。"
7922
7923 #. type: TP
7924 #: build/C/man2/fcntl.2:841
7925 #, no-wrap
7926 msgid "B<F_OWNER_TID>"
7927 msgstr "B<F_OWNER_TID>"
7928
7929 #. type: Plain text
7930 #: build/C/man2/fcntl.2:850
7931 msgid ""
7932 "Send the signal to the thread whose thread ID (the value returned by a call "
7933 "to B<clone>(2)  or B<gettid>(2))  is specified in I<pid>."
7934 msgstr ""
7935 "スレッド ID が I<pid> で指定された値のスレッドにそのシグナルを送る (スレッド "
7936 "ID は B<clone>(2)  や B<gettid>(2)  の呼び出しで返される値である)。"
7937
7938 #. type: TP
7939 #: build/C/man2/fcntl.2:850
7940 #, no-wrap
7941 msgid "B<F_OWNER_PID>"
7942 msgstr "B<F_OWNER_PID>"
7943
7944 #. type: Plain text
7945 #: build/C/man2/fcntl.2:855
7946 msgid "Send the signal to the process whose ID is specified in I<pid>."
7947 msgstr "ID が I<pid> で指定された値のプロセスにそのシグナルを送る。"
7948
7949 #. type: TP
7950 #: build/C/man2/fcntl.2:855
7951 #, no-wrap
7952 msgid "B<F_OWNER_PGRP>"
7953 msgstr "B<F_OWNER_PGRP>"
7954
7955 #. type: Plain text
7956 #: build/C/man2/fcntl.2:863
7957 msgid ""
7958 "Send the signal to the process group whose ID is specified in I<pid>.  (Note "
7959 "that, unlike with B<F_SETOWN>, a process group ID is specified as a positive "
7960 "value here.)"
7961 msgstr ""
7962 "ID が I<pid> で指定された値のプロセスグループにそのシグナルを送る。 "
7963 "(B<F_SETOWN> と異なり、プロセスグループ ID には正の値を指定する点に注意するこ"
7964 "と。)"
7965
7966 #. type: TP
7967 #: build/C/man2/fcntl.2:864
7968 #, no-wrap
7969 msgid "B<F_GETSIG> (I<void>)"
7970 msgstr "B<F_GETSIG> (I<void>)"
7971
7972 #. type: Plain text
7973 #: build/C/man2/fcntl.2:879
7974 msgid ""
7975 "Return (as the function result)  the signal sent when input or output "
7976 "becomes possible.  A value of zero means B<SIGIO> is sent.  Any other value "
7977 "(including B<SIGIO>)  is the signal sent instead, and in this case "
7978 "additional info is available to the signal handler if installed with "
7979 "B<SA_SIGINFO>.  I<arg> is ignored."
7980 msgstr ""
7981 "入力や出力が可能になった場合に送るシグナルを (関数の結果として) 返す。 値ゼロ"
7982 "は B<SIGIO> を送ることを意味する。 (B<SIGIO> を含む) 他の値はいずれも、 "
7983 "B<SIGIO> の代わりに送るシグナル番号を表す。 後者の場合、シグナルハンドラを "
7984 "B<SA_SIGINFO> フラグ付きで設定すれば、ハンドラで追加の情報を得ることができ"
7985 "る。 I<arg> は無視される。"
7986
7987 #. type: TP
7988 #: build/C/man2/fcntl.2:879
7989 #, no-wrap
7990 msgid "B<F_SETSIG> (I<int>)"
7991 msgstr "B<F_SETSIG> (I<int>)"
7992
7993 #.  The following was true only up until 2.6.11:
7994 #.  Additionally, passing a nonzero value to
7995 #.  .B F_SETSIG
7996 #.  changes the signal recipient from a whole process to a specific thread
7997 #.  within a process.
7998 #.  See the description of
7999 #.  .B F_SETOWN
8000 #.  for more details.
8001 #. type: Plain text
8002 #: build/C/man2/fcntl.2:902
8003 msgid ""
8004 "Set the signal sent when input or output becomes possible to the value given "
8005 "in I<arg>.  A value of zero means to send the default B<SIGIO> signal.  Any "
8006 "other value (including B<SIGIO>)  is the signal to send instead, and in this "
8007 "case additional info is available to the signal handler if installed with "
8008 "B<SA_SIGINFO>."
8009 msgstr ""
8010 "入力や出力が可能になった場合に送るシグナルを I<arg> に指定された値に設定す"
8011 "る。 値ゼロは B<SIGIO> を送ることを意味する。 (B<SIGIO> を含む) 他の値はいず"
8012 "れも、 B<SIGIO> の代わりに送るシグナル番号を表す。 後者の場合、シグナルハンド"
8013 "ラを B<SA_SIGINFO> フラグ付きで設定すれば、 ハンドラで追加の情報を得ることが"
8014 "できる。"
8015
8016 #. type: Plain text
8017 #: build/C/man2/fcntl.2:930
8018 msgid ""
8019 "By using B<F_SETSIG> with a nonzero value, and setting B<SA_SIGINFO> for the "
8020 "signal handler (see B<sigaction>(2)), extra information about I/O events is "
8021 "passed to the handler in a I<siginfo_t> structure.  If the I<si_code> field "
8022 "indicates the source is B<SI_SIGIO>, the I<si_fd> field gives the file "
8023 "descriptor associated with the event.  Otherwise, there is no indication "
8024 "which file descriptors are pending, and you should use the usual mechanisms "
8025 "(B<select>(2), B<poll>(2), B<read>(2)  with B<O_NONBLOCK> set etc.) to "
8026 "determine which file descriptors are available for I/O."
8027 msgstr ""
8028 "B<F_SETSIG> にゼロ以外の値を設定し、シグナルハンドラに B<SA_SIGINFO> フラグを"
8029 "設定すると、 (B<sigaction>(2)  を参照) I/O イベントに関する追加の情報が "
8030 "I<siginfo_t> 構造体でシグナルハンドラへ渡される。 I<si_code> フィールドが示す"
8031 "シグナルの原因が B<SI_SIGIO> である場合、 I<si_fd> フィールドにはイベントに対"
8032 "応するファイルディスクリプタが入っている。 それ以外の場合は、どのファイルディ"
8033 "スクリプタが利用可能かを示す情報は ないので、どのファイルディスクリプタで I/"
8034 "O が可能かを判断するためには 通常の機構 (B<select>(2), B<poll>(2), "
8035 "B<O_NONBLOCK> を設定した B<read>(2)  など) を使用しなければならない。"
8036
8037 #. type: Plain text
8038 #: build/C/man2/fcntl.2:939
8039 msgid ""
8040 "By selecting a real time signal (value E<gt>= B<SIGRTMIN>), multiple I/O "
8041 "events may be queued using the same signal numbers.  (Queuing is dependent "
8042 "on available memory).  Extra information is available if B<SA_SIGINFO> is "
8043 "set for the signal handler, as above."
8044 msgstr ""
8045 "リアルタイムシグナル (値が B<SIGRTMIN> 以上) を選択している場合は、 同じシグ"
8046 "ナル番号を持つ複数の I/O イベントがキューに入ることがある (キューに入れるかど"
8047 "うかは利用可能なメモリに依存している)。 上記と同様、 B<SA_SIGINFO> が設定され"
8048 "ている場合、シグナルハンドラのための追加の情報が得られる。"
8049
8050 #.  See fs/fcntl.c::send_sigio_to_task() (2.4/2.6) sources -- MTK, Apr 05
8051 #. type: Plain text
8052 #: build/C/man2/fcntl.2:952
8053 msgid ""
8054 "Note that Linux imposes a limit on the number of real-time signals that may "
8055 "be queued to a process (see B<getrlimit>(2)  and B<signal>(7))  and if this "
8056 "limit is reached, then the kernel reverts to delivering B<SIGIO>, and this "
8057 "signal is delivered to the entire process rather than to a specific thread."
8058 msgstr ""
8059 "以下の点に注意すること。 Linux では一つのプロセスに対してキューに入れられるリ"
8060 "アルタイム シグナルの数に上限が設けられており (B<getrlimit>(2)  と "
8061 "B<signal>(7)  を参照)、この上限に達するとカーネルは B<SIGIO> シグナルを配送す"
8062 "る。この B<SIGIO> シグナルは、指定されたスレッドではなくプロセス全体に送られ"
8063 "る。"
8064
8065 #. type: Plain text
8066 #: build/C/man2/fcntl.2:959
8067 msgid ""
8068 "Using these mechanisms, a program can implement fully asynchronous I/O "
8069 "without using B<select>(2)  or B<poll>(2)  most of the time."
8070 msgstr ""
8071 "これらの機構を使用することで、ほとんどの場合で B<select>(2)  や B<poll>(2)  "
8072 "を使用せずに完全な非同期 I/O を実装することができる。"
8073
8074 #. type: Plain text
8075 #: build/C/man2/fcntl.2:983
8076 msgid ""
8077 "The use of B<O_ASYNC> is specific to BSD and Linux.  The only use of "
8078 "B<F_GETOWN> and B<F_SETOWN> specified in POSIX.1 is in conjunction with the "
8079 "use of the B<SIGURG> signal on sockets.  (POSIX does not specify the "
8080 "B<SIGIO> signal.)  B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, and "
8081 "B<F_SETSIG> are Linux-specific.  POSIX has asynchronous I/O and the "
8082 "I<aio_sigevent> structure to achieve similar things; these are also "
8083 "available in Linux as part of the GNU C Library (Glibc)."
8084 msgstr ""
8085 "B<O_ASYNC> の使用方法は BSD と Linux に特有である。 POSIX.1 で規定されている "
8086 "B<F_GETOWN> と B<F_SETOWN> の使用方法は、ソケットに対する B<SIGURG> シグナル"
8087 "との組み合わせだけである (POSIX は B<SIGIO> シグナルは規定していない)。 "
8088 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, B<F_SETSIG> は Linux 固有であ"
8089 "る。POSIX には、同様のことを行うために、非同期 I/O と I<aio_sigevent> 構造体"
8090 "がある。Linux では、GNU C ライブラリ (Glibc) の一部として これらも利用可能で"
8091 "ある。"
8092
8093 #. type: SS
8094 #: build/C/man2/fcntl.2:983
8095 #, no-wrap
8096 msgid "Leases"
8097 msgstr "リース (leases)"
8098
8099 #. type: Plain text
8100 #: build/C/man2/fcntl.2:998
8101 msgid ""
8102 "B<F_SETLEASE> and B<F_GETLEASE> (Linux 2.4 onward) are used (respectively) "
8103 "to establish a new lease, and retrieve the current lease, on the open file "
8104 "description referred to by the file descriptor I<fd>.  A file lease provides "
8105 "a mechanism whereby the process holding the lease (the \"lease holder\") is "
8106 "notified (via delivery of a signal)  when a process (the \"lease breaker\") "
8107 "tries to B<open>(2)  or B<truncate>(2)  the file referred to by that file "
8108 "descriptor."
8109 msgstr ""
8110 "(Linix 2.4 以降で利用可能)  B<F_SETLEASE> は、 I<fd> が参照するオープンファイ"
8111 "ル記述に対して新しいリースを設定するのに使用される。 B<F_GETLEASE> は、 "
8112 "I<fd> が参照するオープンファイル記述に対して設定されている 現在のリースを取得"
8113 "するのに使用される。 ファイルのリースにより、 あるプロセス (\"lease breaker"
8114 "\") がそのファイルディスクリプタが参照 しているファイルに対して B<open>(2)  "
8115 "や B<truncate>(2)  を行おうとした際に、リースを保持しているプロセス (\"lease "
8116 "holder\") へ (シグナルの配送による) 通知が行われるという機構が提供される。"
8117
8118 #. type: TP
8119 #: build/C/man2/fcntl.2:998
8120 #, no-wrap
8121 msgid "B<F_SETLEASE> (I<int>)"
8122 msgstr "B<F_SETLEASE> (I<int>)"
8123
8124 #. type: Plain text
8125 #: build/C/man2/fcntl.2:1003
8126 msgid ""
8127 "Set or remove a file lease according to which of the following values is "
8128 "specified in the integer I<arg>:"
8129 msgstr ""
8130 "I<arg> の内容に基いてファイルのリースの設定、削除を行う。整数 I<arg> には以下"
8131 "の値が指定できる:"
8132
8133 #. type: TP
8134 #: build/C/man2/fcntl.2:1004
8135 #, no-wrap
8136 msgid "B<F_RDLCK>"
8137 msgstr "B<F_RDLCK>"
8138
8139 #.  The following became true in kernel 2.6.10:
8140 #.  See the man-pages-2.09 Changelog for further info.
8141 #. type: Plain text
8142 #: build/C/man2/fcntl.2:1013
8143 msgid ""
8144 "Take out a read lease.  This will cause the calling process to be notified "
8145 "when the file is opened for writing or is truncated.  A read lease can be "
8146 "placed only on a file descriptor that is opened read-only."
8147 msgstr ""
8148 "読み出しリースを取得する。これにより、 そのファイルが書き込み用にオープンされ"
8149 "たり、ファイルが切り詰められた場合に、 呼び出し元のプロセスに通知が行われるよ"
8150 "うになる。 読み出しリースを設定できるのは、読み出し専用でオープンされている "
8151 "ファイルディスクリプタに対してのみである。"
8152
8153 #. type: TP
8154 #: build/C/man2/fcntl.2:1013
8155 #, no-wrap
8156 msgid "B<F_WRLCK>"
8157 msgstr "B<F_WRLCK>"
8158
8159 #. type: Plain text
8160 #: build/C/man2/fcntl.2:1020
8161 msgid ""
8162 "Take out a write lease.  This will cause the caller to be notified when the "
8163 "file is opened for reading or writing or is truncated.  A write lease may be "
8164 "placed on a file only if there are no other open file descriptors for the "
8165 "file."
8166 msgstr ""
8167 "書き込みリースを取得する。これにより、 (読み出し用か書き込み用にかかわらず) "
8168 "そのファイルがオープンされたり、 ファイルが切り詰められた場合に、呼び出し元の"
8169 "プロセスに通知が行われるようになる。 書き込みリースは、そのファイルに対する"
8170 "オープンされたファイルディスクリプタが 他にない場合にのみ設定できる。"
8171
8172 #. type: TP
8173 #: build/C/man2/fcntl.2:1020
8174 #, no-wrap
8175 msgid "B<F_UNLCK>"
8176 msgstr "B<F_UNLCK>"
8177
8178 #. type: Plain text
8179 #: build/C/man2/fcntl.2:1023
8180 msgid "Remove our lease from the file."
8181 msgstr "そのファイルからリースを削除する。"
8182
8183 #. type: Plain text
8184 #: build/C/man2/fcntl.2:1037
8185 msgid ""
8186 "Leases are associated with an open file description (see B<open>(2)).  This "
8187 "means that duplicate file descriptors (created by, for example, B<fork>(2)  "
8188 "or B<dup>(2))  refer to the same lease, and this lease may be modified or "
8189 "released using any of these descriptors.  Furthermore, the lease is released "
8190 "by either an explicit B<F_UNLCK> operation on any of these duplicate "
8191 "descriptors, or when all such descriptors have been closed."
8192 msgstr ""
8193 "リースはオープンファイル記述に対して関連付けられる (B<open>(2)  参照)。 つま"
8194 "り、 (B<fork>(2)  や B<dup>(2)  などにより作成された) ファイルディスクリプタ"
8195 "の複製は同じリースを参照し、 複製も含めたどのファイルディスクリプタを使っても"
8196 "このリースを変更したり 解放したりできる。 また、これらのファイルディスクリプ"
8197 "タのいずれかに対して B<F_UNLCK> 操作が明示的に実行された場合や、すべてのファ"
8198 "イルディスクリプタが 閉じられた場合にも、リースは解放される。"
8199
8200 #. type: Plain text
8201 #: build/C/man2/fcntl.2:1044
8202 msgid ""
8203 "Leases may be taken out only on regular files.  An unprivileged process may "
8204 "take out a lease only on a file whose UID (owner) matches the filesystem UID "
8205 "of the process.  A process with the B<CAP_LEASE> capability may take out "
8206 "leases on arbitrary files."
8207 msgstr ""
8208 "リースの取得は通常のファイル (regular file) に対してのみ可能である。 非特権プ"
8209 "ロセスがリースを取得できるのは、UID (所有者) がプロセスの ファイルシステム "
8210 "UID と一致するファイルに対してだけである。 B<CAP_LEASE> ケーパビリティを持つ"
8211 "プロセスは任意のファイルに対してリースを取得できる。"
8212
8213 #. type: TP
8214 #: build/C/man2/fcntl.2:1044
8215 #, no-wrap
8216 msgid "B<F_GETLEASE> (I<void>)"
8217 msgstr "B<F_GETLEASE> (I<void>)"
8218
8219 #. type: Plain text
8220 #: build/C/man2/fcntl.2:1053
8221 msgid ""
8222 "Indicates what type of lease is associated with the file descriptor I<fd> by "
8223 "returning either B<F_RDLCK>, B<F_WRLCK>, or B<F_UNLCK>, indicating, "
8224 "respectively, a read lease , a write lease, or no lease.  I<arg> is ignored."
8225 msgstr ""
8226 "ファイルディスクリプタ I<fd> に対して設定されているリースの種別を取得する。 "
8227 "B<F_RDLCK>, B<F_WRLCK>, B<F_UNLCK> のいずれかが返される。 B<F_RDLCK>, "
8228 "B<F_WRLCK> はそれぞれ、読み出しリース、書き込みリースが設定されていることを示"
8229 "し、 B<F_UNLCK> はリースが何も設定されていないことを示す。 I<arg> は無視され"
8230 "る。"
8231
8232 #. type: Plain text
8233 #: build/C/man2/fcntl.2:1084
8234 msgid ""
8235 "When a process (the \"lease breaker\") performs an B<open>(2)  or "
8236 "B<truncate>(2)  that conflicts with a lease established via B<F_SETLEASE>, "
8237 "the system call is blocked by the kernel and the kernel notifies the lease "
8238 "holder by sending it a signal (B<SIGIO> by default).  The lease holder "
8239 "should respond to receipt of this signal by doing whatever cleanup is "
8240 "required in preparation for the file to be accessed by another process (e."
8241 "g., flushing cached buffers) and then either remove or downgrade its lease.  "
8242 "A lease is removed by performing an B<F_SETLEASE> command specifying I<arg> "
8243 "as B<F_UNLCK>.  If the lease holder currently holds a write lease on the "
8244 "file, and the lease breaker is opening the file for reading, then it is "
8245 "sufficient for the lease holder to downgrade the lease to a read lease.  "
8246 "This is done by performing an B<F_SETLEASE> command specifying I<arg> as "
8247 "B<F_RDLCK>."
8248 msgstr ""
8249 "あるプロセス (\"lease breaker\") が B<F_SETLEASE> で設定されたリースと矛\n"
8250 "盾するような B<open>(2) や B<truncate>(2) を実行した場合、 そのシステム\n"
8251 "コールはカーネルによって停止され、 カーネルは lease holder にシグナル\n"
8252 "(デフォルトでは B<SIGIO>) を送って通知を行う。 lease holder はこのシグ\n"
8253 "ナルを受信したときにはきちんと対応すべきである。 具体的には、別のプロセ\n"
8254 "スがそのファイルにアクセスするための準備として 必要な後片付け (例えば、\n"
8255 "キャッシュされたバッファのフラッシュ) を すべて行ってから、そのファイル\n"
8256 "のリースの削除または格下げを行う。リースを削除をするには、 I<arg> に\n"
8257 "B<F_UNLCK> を指定して B<F_SETLEASE> を実行する。lease holder がファイル\n"
8258 "に書き込みリースを保持していて、 lease breaker が読み出し用にそのファイ\n"
8259 "ルをオープンしている場合、 lease holder が保持しているリースを読み出し\n"
8260 "リースに格下げすれば 十分である。これをするには、 I<arg> に B<F_RDLCK>\n"
8261 "を指定して B<F_SETLEASE> を実行する。"
8262
8263 #. type: Plain text
8264 #: build/C/man2/fcntl.2:1089
8265 msgid ""
8266 "If the lease holder fails to downgrade or remove the lease within the number "
8267 "of seconds specified in I</proc/sys/fs/lease-break-time>, then the kernel "
8268 "forcibly removes or downgrades the lease holder's lease."
8269 msgstr ""
8270 "If the lease holder fails to downgrade or remove the lease within the number "
8271 "of seconds specified in I</proc/sys/fs/lease-break-time>, then the kernel "
8272 "forcibly removes or downgrades the lease holder's lease."
8273
8274 #. type: Plain text
8275 #: build/C/man2/fcntl.2:1099
8276 msgid ""
8277 "Once a lease break has been initiated, B<F_GETLEASE> returns the target "
8278 "lease type (either B<F_RDLCK> or B<F_UNLCK>, depending on what would be "
8279 "compatible with the lease breaker)  until the lease holder voluntarily "
8280 "downgrades or removes the lease or the kernel forcibly does so after the "
8281 "lease break timer expires."
8282 msgstr ""
8283 "いったん lease break が開始されると、 lease holder が自発的にそのリース\n"
8284 "の格下げか削除を行うか、lease break timer の満了後にカーネルが強制的に\n"
8285 "リースの格下げか削除を行うまで、 B<F_GETLEASE> は対象となるリースの型を\n"
8286 "返す (リースの型は B<F_RDLCK> か B<F_UNLCK> のどちらであり、lease\n"
8287 "breaker と互換性のある型となる)。"
8288
8289 #. type: Plain text
8290 #: build/C/man2/fcntl.2:1103
8291 msgid ""
8292 "Once the lease has been voluntarily or forcibly removed or downgraded, and "
8293 "assuming the lease breaker has not unblocked its system call, the kernel "
8294 "permits the lease breaker's system call to proceed."
8295 msgstr ""
8296 "一度リースの削除か格下げが自発的もしくは強制的に行われると、 lease breaker が"
8297 "まだシステムコールを再開していない場合には、 カーネルが lease breaker のシス"
8298 "テムコールの続行を許可する。"
8299
8300 #. type: Plain text
8301 #: build/C/man2/fcntl.2:1124
8302 msgid ""
8303 "If the lease breaker's blocked B<open>(2)  or B<truncate>(2)  is interrupted "
8304 "by a signal handler, then the system call fails with the error B<EINTR>, but "
8305 "the other steps still occur as described above.  If the lease breaker is "
8306 "killed by a signal while blocked in B<open>(2)  or B<truncate>(2), then the "
8307 "other steps still occur as described above.  If the lease breaker specifies "
8308 "the B<O_NONBLOCK> flag when calling B<open>(2), then the call immediately "
8309 "fails with the error B<EWOULDBLOCK>, but the other steps still occur as "
8310 "described above."
8311 msgstr ""
8312 "lease breaker が実行した B<open>(2)  や B<truncate>(2)  が停止中にシグナルハ"
8313 "ンドラにより中断された場合、 そのシステムコールは B<EINTR> エラーで失敗する"
8314 "が、上で述べた他の処理は そのまま行われる。 B<open>(2)  や B<truncate>(2)  が"
8315 "停止中に lease breaker がシグナルにより kill された場合、 上で述べた他の処理"
8316 "はそのまま行われる。 lease breaker が B<open>(2)  を呼ぶ際に B<O_NONBLOCK> フ"
8317 "ラグを指定した場合、そのシステムコールは B<EWOULDBLOCK> エラーで直ちに失敗す"
8318 "るが、上で述べた他の処理はそのまま行われる。"
8319
8320 #. type: Plain text
8321 #: build/C/man2/fcntl.2:1145
8322 msgid ""
8323 "The default signal used to notify the lease holder is B<SIGIO>, but this can "
8324 "be changed using the B<F_SETSIG> command to B<fcntl>().  If a B<F_SETSIG> "
8325 "command is performed (even one specifying B<SIGIO>), and the signal handler "
8326 "is established using B<SA_SIGINFO>, then the handler will receive a "
8327 "I<siginfo_t> structure as its second argument, and the I<si_fd> field of "
8328 "this argument will hold the descriptor of the leased file that has been "
8329 "accessed by another process.  (This is useful if the caller holds leases "
8330 "against multiple files)."
8331 msgstr ""
8332 "lease holder への通知に使われるデフォルトのシグナルは B<SIGIO> だが、 "
8333 "B<fcntl>()  の B<F_SETSIG> コマンドで変更することができる。 B<F_SETSIG> コマ"
8334 "ンドが実行され (B<SIGIO> を指定された場合も含む)、 B<SA_SIGINFO> フラグ付きで"
8335 "シグナルハンドラが設定されている場合には、 ハンドラの第二引き数として "
8336 "I<siginfo_t> 構造体が渡され、この引き数の I<si_fd> フィールドには別のプロセス"
8337 "がアクセスしたリース設定済みファイルの ディスクリプタが入っている (この機能は"
8338 "複数のファイルに対してリースを設定する場合に有用である)。"
8339
8340 #. type: SS
8341 #: build/C/man2/fcntl.2:1145
8342 #, no-wrap
8343 msgid "File and directory change notification (dnotify)"
8344 msgstr "ファイルやディレクトリの変更の通知 (dnotify)"
8345
8346 #. type: TP
8347 #: build/C/man2/fcntl.2:1146
8348 #, no-wrap
8349 msgid "B<F_NOTIFY> (I<int>)"
8350 msgstr "B<F_NOTIFY> (I<int>)"
8351
8352 #. type: Plain text
8353 #: build/C/man2/fcntl.2:1156
8354 msgid ""
8355 "(Linux 2.4 onward)  Provide notification when the directory referred to by "
8356 "I<fd> or any of the files that it contains is changed.  The events to be "
8357 "notified are specified in I<arg>, which is a bit mask specified by ORing "
8358 "together zero or more of the following bits:"
8359 msgstr ""
8360 "(Linux 2.4 以降)  I<fd> で参照されるディレクトリか、その中にあるファイルに変"
8361 "更があった場合に 通知を行う。どのイベントを通知するかは I<arg> で指定する。 "
8362 "I<arg> はビットマスクで、以下のビットの 0個以上の論理和をとったものを指定す"
8363 "る。"
8364
8365 #. type: TP
8366 #: build/C/man2/fcntl.2:1159
8367 #, no-wrap
8368 msgid "B<DN_ACCESS>"
8369 msgstr "B<DN_ACCESS>"
8370
8371 #. type: Plain text
8372 #: build/C/man2/fcntl.2:1166
8373 msgid "A file was accessed (B<read>(2), B<pread>(2), B<readv>(2), and similar)"
8374 msgstr ""
8375 "ファイルへのアクセスがあった (B<read>(2), B<pread>(2), B<readv>(2) や同様のシ"
8376 "ステムコール)"
8377
8378 #. type: TP
8379 #: build/C/man2/fcntl.2:1166
8380 #, no-wrap
8381 msgid "B<DN_MODIFY>"
8382 msgstr "B<DN_MODIFY>"
8383
8384 #. type: Plain text
8385 #: build/C/man2/fcntl.2:1175
8386 msgid ""
8387 "A file was modified (B<write>(2), B<pwrite>(2), B<writev>(2), "
8388 "B<truncate>(2), B<ftruncate>(2), and similar)."
8389 msgstr ""
8390 "ファイルの内容が変更された (B<write>(2), B<pwrite>(2), B<writev>(2), "
8391 "B<truncate>(2), B<ftruncate>(2) や同様のシステムコール)"
8392
8393 #. type: TP
8394 #: build/C/man2/fcntl.2:1175
8395 #, no-wrap
8396 msgid "B<DN_CREATE>"
8397 msgstr "B<DN_CREATE>"
8398
8399 #. type: Plain text
8400 #: build/C/man2/fcntl.2:1186
8401 msgid ""
8402 "A file was created (B<open>(2), B<creat>(2), B<mknod>(2), B<mkdir>(2), "
8403 "B<link>(2), B<symlink>(2), B<rename>(2)  into this directory)."
8404 msgstr ""
8405 "ファイルが作成された (B<open>(2), B<creat>(2), B<mknod>(2), B<mkdir>(2), \"\n"
8406 "\"B<link>(2), B<symlink>(2), このディレクトリへの B<rename>(2))"
8407
8408 #. type: TP
8409 #: build/C/man2/fcntl.2:1186
8410 #, no-wrap
8411 msgid "B<DN_DELETE>"
8412 msgstr "B<DN_DELETE>"
8413
8414 #. type: Plain text
8415 #: build/C/man2/fcntl.2:1193
8416 msgid ""
8417 "A file was unlinked (B<unlink>(2), B<rename>(2)  to another directory, "
8418 "B<rmdir>(2))."
8419 msgstr ""
8420 "ファイルが削除 (unlink) された (B<unlink>(2), 別のディレクトリへの "
8421 "B<rename>(2), B<rmdir>(2))"
8422
8423 #. type: TP
8424 #: build/C/man2/fcntl.2:1193
8425 #, no-wrap
8426 msgid "B<DN_RENAME>"
8427 msgstr "B<DN_RENAME>"
8428
8429 #. type: Plain text
8430 #: build/C/man2/fcntl.2:1197
8431 msgid "A file was renamed within this directory (B<rename>(2))."
8432 msgstr "ディレクトリ内でのファイル名の変更があった (B<rename>(2))"
8433
8434 #. type: TP
8435 #: build/C/man2/fcntl.2:1197
8436 #, no-wrap
8437 msgid "B<DN_ATTRIB>"
8438 msgstr "B<DN_ATTRIB>"
8439
8440 #. type: Plain text
8441 #: build/C/man2/fcntl.2:1205
8442 msgid ""
8443 "The attributes of a file were changed (B<chown>(2), B<chmod>(2), "
8444 "B<utime>(2), B<utimensat>(2), and similar)."
8445 msgstr ""
8446 "ファイル属性が変更された (B<chown>(2), B<chmod>(2), B<utime>(2), "
8447 "B<utimensat>(2) や同様のシステムコール)"
8448
8449 #. type: Plain text
8450 #: build/C/man2/fcntl.2:1213
8451 msgid ""
8452 "(In order to obtain these definitions, the B<_GNU_SOURCE> feature test macro "
8453 "must be defined before including I<any> header files.)"
8454 msgstr ""
8455 "(上記の定義を利用するには、I<どの> ヘッダファイルをインクルードするより前"
8456 "に、\n"
8457 "B<_GNU_SOURCE> 機能検査マクロを定義しなければならない。)"
8458
8459 #. type: Plain text
8460 #: build/C/man2/fcntl.2:1221
8461 msgid ""
8462 "Directory notifications are normally \"one-shot\", and the application must "
8463 "reregister to receive further notifications.  Alternatively, if "
8464 "B<DN_MULTISHOT> is included in I<arg>, then notification will remain in "
8465 "effect until explicitly removed."
8466 msgstr ""
8467 "ディレクトリの変更通知は通常「一回限り (one-shot)」であり、 アプリケーション"
8468 "側でその後さらに通知を受信したい場合は 再登録しなければならない。 I<arg> に "
8469 "B<DN_MULTISHOT> が含まれていた場合には、 変更通知は明示的に解除されるまで有効"
8470 "状態が継続する。"
8471
8472 #.  The following does seem a poor API-design choice...
8473 #. type: Plain text
8474 #: build/C/man2/fcntl.2:1233
8475 msgid ""
8476 "A series of B<F_NOTIFY> requests is cumulative, with the events in I<arg> "
8477 "being added to the set already monitored.  To disable notification of all "
8478 "events, make an B<F_NOTIFY> call specifying I<arg> as 0."
8479 msgstr ""
8480 "B<F_NOTIFY> 要求は積算されていく。つまり、 I<arg> で指定されたイベントがすで"
8481 "にモニタされている イベント集合に加算される形になる。 すべてのイベントの通知"
8482 "を無効にするには、 I<arg> に 0 を指定して B<F_NOTIFY> を呼び出す必要がある。"
8483
8484 #. type: Plain text
8485 #: build/C/man2/fcntl.2:1256
8486 msgid ""
8487 "Notification occurs via delivery of a signal.  The default signal is "
8488 "B<SIGIO>, but this can be changed using the B<F_SETSIG> command to "
8489 "B<fcntl>().  (Note that B<SIGIO> is one of the nonqueuing standard signals; "
8490 "switching to the use of a real-time signal means that multiple notifications "
8491 "can be queued to the process.)  In the latter case, the signal handler "
8492 "receives a I<siginfo_t> structure as its second argument (if the handler was "
8493 "established using B<SA_SIGINFO>)  and the I<si_fd> field of this structure "
8494 "contains the file descriptor which generated the notification (useful when "
8495 "establishing notification on multiple directories)."
8496 msgstr ""
8497 "通知はシグナルの配送で行われる。 デフォルトのシグナルは B<SIGIO> だが、 "
8498 "B<fcntl>()  の B<F_SETSIG> コマンドで変更することができる。 (B<SIGIO> は"
8499 "キューイングされない標準のシグナルの一つである点に注意。 リアルタイムシグナル"
8500 "を使うように変更すると、 複数の通知がそのプロセス宛のキューに入ることがあるこ"
8501 "とを意味する。) 後者の場合には、 (B<SA_SIGINFO> フラグ付きでシグナルハンドラ"
8502 "が設定されている場合には)  ハンドラの第二引き数として I<siginfo_t> 構造体が渡"
8503 "され、この構造体の I<si_fd> フィールドには通知の行われたファイルディスクリプ"
8504 "タが入っている (この機能は複数のディレクトリに対して通知を設定する場合に有用"
8505 "である)。"
8506
8507 #. type: Plain text
8508 #: build/C/man2/fcntl.2:1261
8509 msgid ""
8510 "Especially when using B<DN_MULTISHOT>, a real time signal should be used for "
8511 "notification, so that multiple notifications can be queued."
8512 msgstr ""
8513 "特に B<DN_MULTISHOT> を使う場合は、通知にはリアルタイムシグナルを使うべきであ"
8514 "る。 それは、リアルタイムシグナルを使うことで、複数の通知をキューに入れる こ"
8515 "とができるからである。"
8516
8517 #. type: Plain text
8518 #: build/C/man2/fcntl.2:1270
8519 msgid ""
8520 "B<NOTE:> New applications should use the I<inotify> interface (available "
8521 "since kernel 2.6.13), which provides a much superior interface for obtaining "
8522 "notifications of filesystem events.  See B<inotify>(7)."
8523 msgstr ""
8524 "B<注意:> 新しくアプリケーションを書く際には、(カーネル 2.6.13 以降で利用可能"
8525 "となった)  I<inotify> インタフェースを使用すべきである。 I<inotify> はファイ"
8526 "ルシステムイベントの通知を取得するための ずっと優れたインタフェースである。 "
8527 "B<inotify>(7)  を参照。"
8528
8529 #. type: SS
8530 #: build/C/man2/fcntl.2:1270
8531 #, no-wrap
8532 msgid "Changing the capacity of a pipe"
8533 msgstr "パイプの容量の変更"
8534
8535 #. type: TP
8536 #: build/C/man2/fcntl.2:1271
8537 #, no-wrap
8538 msgid "B<F_SETPIPE_SZ> (I<int>; since Linux 2.6.35)"
8539 msgstr "B<F_SETPIPE_SZ> (I<int>; Linux 2.6.35 以降)"
8540
8541 #. type: Plain text
8542 #: build/C/man2/fcntl.2:1300
8543 msgid ""
8544 "Change the capacity of the pipe referred to by I<fd> to be at least I<arg> "
8545 "bytes.  An unprivileged process can adjust the pipe capacity to any value "
8546 "between the system page size and the limit defined in I</proc/sys/fs/pipe-"
8547 "max-size> (see B<proc>(5)).  Attempts to set the pipe capacity below the "
8548 "page size are silently rounded up to the page size.  Attempts by an "
8549 "unprivileged process to set the pipe capacity above the limit in I</proc/sys/"
8550 "fs/pipe-max-size> yield the error B<EPERM>; a privileged process "
8551 "(B<CAP_SYS_RESOURCE>)  can override the limit.  When allocating the buffer "
8552 "for the pipe, the kernel may use a capacity larger than I<arg>, if that is "
8553 "convenient for the implementation.  The actual capacity that is set is "
8554 "returned as the function result.  Attempting to set the pipe capacity "
8555 "smaller than the amount of buffer space currently used to store data "
8556 "produces the error B<EBUSY>."
8557 msgstr ""
8558 "I<fd> が参照するパイプの容量を少なくとも I<arg> バイトに変更する。\n"
8559 "非特権プロセスは、パイプの容量として、\n"
8560 "システムのページサイズと I</proc/sys/fs/pipe-max-size> で定義される\n"
8561 "上限値 (B<proc>(5) 参照) の間の任意の値を設定できる。\n"
8562 "パイプの容量をページサイズよりも小さな値に設定しようとした場合は、\n"
8563 "暗黙のうちにページサイズに切り上げられる。\n"
8564 "非特権プロセスがパイプの容量を I</proc/sys/fs/pipe-max-size> で定義\n"
8565 "された上限より大きな値に設定しようとした場合は、エラー B<EPERM> が\n"
8566 "発生する。特権プロセス (B<CAP_SYS_RESOURCE> ケーパビリティを持つ\n"
8567 "プロセス) はこの上限を上書きできる。\n"
8568 "パイプにバッファを割り当てる場合、実装側の都合に応じて、\n"
8569 "カーネルは I<arg> よりも大きな容量を割り当ててもよい。\n"
8570 "実際に設定された大きさが関数の返り値として返される。\n"
8571 "パイプの容量を現在データを格納するのに使用されているバッファの\n"
8572 "サイズよりも小さくしようとした場合は、エラー B<EBUSY> が発生する。"
8573
8574 #. type: TP
8575 #: build/C/man2/fcntl.2:1300
8576 #, no-wrap
8577 msgid "B<F_GETPIPE_SZ> (I<void>; since Linux 2.6.35)"
8578 msgstr "B<F_GETPIPE_SZ> (I<void>; Linux 2.6.35 以降)"
8579
8580 #. type: Plain text
8581 #: build/C/man2/fcntl.2:1305
8582 msgid ""
8583 "Return (as the function result) the capacity of the pipe referred to by "
8584 "I<fd>."
8585 msgstr "I<fd> が参照するパイプの容量を (関数の結果として) 返す。"
8586
8587 #. type: SS
8588 #: build/C/man2/fcntl.2:1305
8589 #, no-wrap
8590 msgid "File Sealing"
8591 msgstr "File Sealing"
8592
8593 #. type: Plain text
8594 #: build/C/man2/fcntl.2:1317
8595 msgid ""
8596 "File seals limit the set of allowed operations on a given file.  For each "
8597 "seal that is set on a file, a specific set of operations will fail with "
8598 "B<EPERM> on this file from now on.  The file is said to be sealed.  The "
8599 "default set of seals depends on the type of the underlying file and "
8600 "filesystem.  For an overview of file sealing, a discussion of its purpose, "
8601 "and some code examples, see B<memfd_create>(2)."
8602 msgstr ""
8603 "file seal は指定されたファイルで許可される操作の集合を制限する。 ファイルに設"
8604 "定される seal 毎に対応する操作の集合が規定されており、 それ以降のそのファイル"
8605 "に対する対応する操作は B<EPERM> で失敗する。 このようなファイルは sealed "
8606 "(seal が適用されている) と呼ばれる。 デフォルトの seal の集合は、適用される"
8607 "ファイルやファイルシステムに依存する。 file seal の概要、 その目的、 サンプル"
8608 "コードについては B<memfd_create>(2) を参照。"
8609
8610 #. type: Plain text
8611 #: build/C/man2/fcntl.2:1325
8612 msgid ""
8613 "Currently, only the I<tmpfs> filesystem supports sealing.  On other "
8614 "filesystems, all B<fcntl>(2)  operations that operate on seals will return "
8615 "B<EINVAL>."
8616 msgstr ""
8617 "現在のところ I<tmpfs> ファイルシステムだけが sealing をサポートしている。 他"
8618 "のファイルシステムでは、 seal に関連する B<fcntl>(2) の操作はすべて "
8619 "B<EINVAL> を返す。"
8620
8621 #. type: Plain text
8622 #: build/C/man2/fcntl.2:1330
8623 msgid ""
8624 "Seals are a property of an inode.  Thus, all open file descriptors referring "
8625 "to the same inode share the same set of seals.  Furthermore, seals can never "
8626 "be removed, only added."
8627 msgstr ""
8628 "seal は inode の属性である。 したがって、 同じ inode を参照するすべてのオープ"
8629 "ンされたファイルディスクリプターは、 同じ seal の集合を共有する。 さらに、 "
8630 "seal は削除することはできず、 追加のみ可能である。"
8631
8632 #. type: TP
8633 #: build/C/man2/fcntl.2:1330
8634 #, no-wrap
8635 msgid "B<F_ADD_SEALS> (I<int>; since Linux 3.17)"
8636 msgstr "B<F_ADD_SEALS> (I<int>; Linux 3.17 以降)"
8637
8638 #. type: Plain text
8639 #: build/C/man2/fcntl.2:1348
8640 msgid ""
8641 "Add the seals given in the bit-mask argument I<arg> to the set of seals of "
8642 "the inode referred to by the file descriptor I<fd>.  Seals cannot be removed "
8643 "again.  Once this call succeeds, the seals are enforced by the kernel "
8644 "immediately.  If the current set of seals includes B<F_SEAL_SEAL> (see "
8645 "below), then this call will be rejected with B<EPERM>.  Adding a seal that "
8646 "is already set is a no-op, in case B<F_SEAL_SEAL> is not set already.  In "
8647 "order to place a seal, the file descriptor I<fd> must be writable."
8648 msgstr ""
8649 "ビットマスク引き数 I<arg> で指定された seal を、 ファイルディスクリプター "
8650 "I<fd> が参照する inode の seal の集合に追加する。 一度追加した seal を削除す"
8651 "ることはできない。 この呼び出しが成功すると、 seal はただちにカーネルにより適"
8652 "用される。 現在の seal の集合に B<F_SEAL_SEAL> (下記参照) が含まれている場"
8653 "合、 この呼び出しは B<EPERM> で拒否される。 すでに設定されている seal を追加"
8654 "した場合、 B<F_SEAL_SEAL> がまだ設定されていない場合は no-op (何もしない) と"
8655 "なる。 seal を設定するには、 ファイルディスクリプター I<fd> が書き込み可能で"
8656 "なければならない。"
8657
8658 #. type: TP
8659 #: build/C/man2/fcntl.2:1348
8660 #, no-wrap
8661 msgid "B<F_GET_SEALS> (I<void>; since Linux 3.17)"
8662 msgstr "B<F_GET_SEALS> (I<void>; Linux 3.17 以降)"
8663
8664 #. type: Plain text
8665 #: build/C/man2/fcntl.2:1358
8666 msgid ""
8667 "Return (as the function result) the current set of seals of the inode "
8668 "referred to by I<fd>.  If no seals are set, 0 is returned.  If the file does "
8669 "not support sealing, -1 is returned and I<errno> is set to B<EINVAL>."
8670 msgstr ""
8671 "(関数の結果として) I<fd> が参照する inode の seal の現在の集合を返す。 seal "
8672 "が何も設定されていない場合、 0 が返される。 ファイルが sealing をサポートして"
8673 "いない場合、 -1 が返され、 I<errno> に B<EINVAL> が設定される。"
8674
8675 #. type: Plain text
8676 #: build/C/man2/fcntl.2:1360
8677 msgid "The following seals are available:"
8678 msgstr "以下の seal が利用できる。"
8679
8680 #. type: TP
8681 #: build/C/man2/fcntl.2:1360
8682 #, no-wrap
8683 msgid "B<F_SEAL_SEAL>"
8684 msgstr "B<F_SEAL_SEAL>"
8685
8686 #. type: Plain text
8687 #: build/C/man2/fcntl.2:1372
8688 msgid ""
8689 "If this seal is set, any further call to B<fcntl>(2)  with B<F_ADD_SEALS> "
8690 "will fail with B<EPERM>.  Therefore, this seal prevents any modifications to "
8691 "the set of seals itself.  If the initial set of seals of a file includes "
8692 "B<F_SEAL_SEAL>, then this effectively causes the set of seals to be constant "
8693 "and locked."
8694 msgstr ""
8695 "この seal が設定されると、  これ以降の B<F_ADD_SEALS> を指定した B<fcntl>(2) "
8696 "の呼び出しはすべて B<EPERM> で失敗する。 したがって、 この seal を設定すると "
8697 "seal の集合自身の変更を防止できる。 ファイルの最初の seal の集合に "
8698 "B<F_SEAL_SEAL> が含まれていた場合、 結果的に seal の集合が定数になりロックさ"
8699 "れることになる。"
8700
8701 #. type: TP
8702 #: build/C/man2/fcntl.2:1372
8703 #, no-wrap
8704 msgid "B<F_SEAL_SHRINK>"
8705 msgstr "B<F_SEAL_SHRINK>"
8706
8707 #. type: Plain text
8708 #: build/C/man2/fcntl.2:1387
8709 msgid ""
8710 "If this seal is set, the file in question cannot be reduced in size.  This "
8711 "affects B<open>(2)  with the B<O_TRUNC> flag as well as B<truncate>(2)  and "
8712 "B<ftruncate>(2).  Those calls will fail with B<EPERM> if you try to shrink "
8713 "the file in question.  Increasing the file size is still possible."
8714 msgstr ""
8715 "この seal が設定されると、 設定されたファイルのサイズを小さくできなくなる。 "
8716 "この seal は B<open>(2) の B<O_TRUNC> フラグに影響する。 B<truncate>(2) と "
8717 "B<ftruncate>(2) についても同様である。 対象のファイルのサイズを小さくしようと"
8718 "した場合、 これらの呼び出しは B<EPERM> で失敗する。 ファイルサイズを増やすこ"
8719 "とはこの場合でも可能である。"
8720
8721 #. type: TP
8722 #: build/C/man2/fcntl.2:1387
8723 #, no-wrap
8724 msgid "B<F_SEAL_GROW>"
8725 msgstr "B<F_SEAL_GROW>"
8726
8727 #. type: Plain text
8728 #: build/C/man2/fcntl.2:1401
8729 msgid ""
8730 "If this seal is set, the size of the file in question cannot be increased.  "
8731 "This affects B<write>(2)  beyond the end of the file, B<truncate>(2), "
8732 "B<ftruncate>(2), and B<fallocate>(2).  These calls will fail with B<EPERM> "
8733 "if you use them to increase the file size.  If you keep the size or shrink "
8734 "it, those calls still work as expected."
8735 msgstr ""
8736 "この seal が設定されると、 設定されたファイルのサイズを増やせなくなる。 この "
8737 "seal はファイルの末尾を超えての B<write>(2) や B<truncate>(2), "
8738 "B<ftruncate>(2), B<fallocate>(2) に影響する。 対象のファイルのサイズを大きく"
8739 "しようとした場合、 これらの呼び出しは B<EPERM> で失敗する。 ファイルサイズが"
8740 "変わらない場合、 小さくなる場合は、 これらの呼び出しはそのまま動作する。"
8741
8742 #. type: TP
8743 #: build/C/man2/fcntl.2:1401
8744 #, no-wrap
8745 msgid "B<F_SEAL_WRITE>"
8746 msgstr "B<F_SEAL_WRITE>"
8747
8748 #.  One or more other seals are typically used with F_SEAL_WRITE
8749 #.  because, given a file with the F_SEAL_WRITE seal set, then,
8750 #.  while it would no longer be possinle to (say) write zeros into
8751 #.  the last 100 bytes of a file, it would still be possible
8752 #.  to (say) shrink the file by 100 bytes using ftruncate(), and
8753 #.  then increase the file size by 100 bytes, which would have
8754 #.  the effect of replacing the last hundred bytes by zeros.
8755 #. type: Plain text
8756 #: build/C/man2/fcntl.2:1429
8757 msgid ""
8758 "If this seal is set, you cannot modify the contents of the file.  Note that "
8759 "shrinking or growing the size of the file is still possible and allowed.  "
8760 "Thus, this seal is normally used in combination with one of the other "
8761 "seals.  This seal affects B<write>(2)  and B<fallocate>(2)  (only in "
8762 "combination with the B<FALLOC_FL_PUNCH_HOLE> flag).  Those calls will fail "
8763 "with B<EPERM> if this seal is set.  Furthermore, trying to create new "
8764 "shared, writable memory-mappings via B<mmap>(2)  will also fail with "
8765 "B<EPERM>."
8766 msgstr ""
8767 "この seal が設定されていると、 ファイルの内容を変更できない。 ファイルのサイ"
8768 "ズを縮小したり伸張したりすることは可能で許可されている。 したがって、 この "
8769 "seal は通常は他の seal のいずれかと組み合わせて使用される。 この seal は "
8770 "B<write>(2) と B<fallocate>(2) (B<FALLOC_FL_PUNCH_HOLE> フラグとの組み合わせ"
8771 "の場合のみ) に影響する。 この seal が設定されると、 これらの呼び出しは "
8772 "B<EPERM> で失敗する。 また、 B<mmap>(2) による新しい書き込み可能な共有メモリ"
8773 "マッピングの作成も B<EPERM> で失敗する。"
8774
8775 #. type: Plain text
8776 #: build/C/man2/fcntl.2:1444
8777 msgid ""
8778 "Setting B<F_SEAL_WRITE> via B<fcntl>(2)  with B<F_ADD_SEALS> will fail with "
8779 "B<EBUSY> if any writable, shared mapping exists.  Such mappings must be "
8780 "unmapped before you can add this seal.  Furthermore, if there are any "
8781 "asynchronous I/O operations (B<io_submit>(2))  pending on the file, all "
8782 "outstanding writes will be discarded."
8783 msgstr ""
8784 "B<fcntl>(2) の B<F_ADD_SEALS> で B<F_SEAL_WRITE> を設定しようとした場合、 書"
8785 "き込み可能な共有マッピングが存在すると B<EBUSY> で失敗する。 このようなマッピ"
8786 "ングは、 この seal を追加する前にアンマップしなければならない。 また、 ファイ"
8787 "ルに対して処理待ちの非同期 I/O 操作 (B<io_submit>(2) がある場合、 処理されて"
8788 "いない書き込みは破棄される。"
8789
8790 #. type: Plain text
8791 #: build/C/man2/fcntl.2:1446
8792 msgid "For a successful call, the return value depends on the operation:"
8793 msgstr "成功した場合の返り値は操作の種類により違う:"
8794
8795 #. type: TP
8796 #: build/C/man2/fcntl.2:1446
8797 #, no-wrap
8798 msgid "B<F_DUPFD>"
8799 msgstr "B<F_DUPFD>"
8800
8801 #. type: Plain text
8802 #: build/C/man2/fcntl.2:1449
8803 msgid "The new descriptor."
8804 msgstr "新しいディスクリプタを返す。"
8805
8806 #. type: TP
8807 #: build/C/man2/fcntl.2:1449
8808 #, no-wrap
8809 msgid "B<F_GETFD>"
8810 msgstr "B<F_GETFD>"
8811
8812 #. type: Plain text
8813 #: build/C/man2/fcntl.2:1452
8814 msgid "Value of file descriptor flags."
8815 msgstr "ファイルディスクリプタフラグの値"
8816
8817 #. type: TP
8818 #: build/C/man2/fcntl.2:1452
8819 #, no-wrap
8820 msgid "B<F_GETFL>"
8821 msgstr "B<F_GETFL>"
8822
8823 #. type: Plain text
8824 #: build/C/man2/fcntl.2:1455
8825 msgid "Value of file status flags."
8826 msgstr "ファイル状態フラグの値"
8827
8828 #. type: TP
8829 #: build/C/man2/fcntl.2:1455
8830 #, no-wrap
8831 msgid "B<F_GETLEASE>"
8832 msgstr "B<F_GETLEASE>"
8833
8834 #. type: Plain text
8835 #: build/C/man2/fcntl.2:1458
8836 msgid "Type of lease held on file descriptor."
8837 msgstr "ファイルディスクリプタに対して保持されているリースの種別を返す。"
8838
8839 #. type: TP
8840 #: build/C/man2/fcntl.2:1458
8841 #, no-wrap
8842 msgid "B<F_GETOWN>"
8843 msgstr "B<F_GETOWN>"
8844
8845 #. type: Plain text
8846 #: build/C/man2/fcntl.2:1461
8847 msgid "Value of descriptor owner."
8848 msgstr "ディスクリプタの所有者を返す。"
8849
8850 #. type: TP
8851 #: build/C/man2/fcntl.2:1461
8852 #, no-wrap
8853 msgid "B<F_GETSIG>"
8854 msgstr "B<F_GETSIG>"
8855
8856 #. type: Plain text
8857 #: build/C/man2/fcntl.2:1467
8858 msgid ""
8859 "Value of signal sent when read or write becomes possible, or zero for "
8860 "traditional B<SIGIO> behavior."
8861 msgstr ""
8862 "読み込みや書き出しが可能になった時に送られるシグナルの値、もしくは 伝統的な "
8863 "B<SIGIO> 動作の場合にはゼロを返す。"
8864
8865 #. type: TP
8866 #: build/C/man2/fcntl.2:1467
8867 #, no-wrap
8868 msgid "B<F_GETPIPE_SZ>, B<F_SETPIPE_SZ>"
8869 msgstr "B<F_GETPIPE_SZ>, B<F_SETPIPE_SZ>"
8870
8871 #. type: Plain text
8872 #: build/C/man2/fcntl.2:1470
8873 msgid "The pipe capacity."
8874 msgstr "パイプの容量。"
8875
8876 #. type: TP
8877 #: build/C/man2/fcntl.2:1470
8878 #, no-wrap
8879 msgid "B<F_GET_SEALS>"
8880 msgstr "B<F_GET_SEALS>"
8881
8882 #. type: Plain text
8883 #: build/C/man2/fcntl.2:1475
8884 msgid ""
8885 "A bit mask identifying the seals that have been set for the inode referred "
8886 "to by I<fd>."
8887 msgstr "I<fd> が参照する inode に設定されている seal を示すビットマスク。"
8888
8889 #. type: TP
8890 #: build/C/man2/fcntl.2:1475
8891 #, no-wrap
8892 msgid "All other commands"
8893 msgstr "他の全てのコマンド"
8894
8895 #. type: Plain text
8896 #: build/C/man2/fcntl.2:1478
8897 msgid "Zero."
8898 msgstr "0 を返す。"
8899
8900 #. type: Plain text
8901 #: build/C/man2/fcntl.2:1482
8902 msgid "On error, -1 is returned, and I<errno> is set appropriately."
8903 msgstr "エラーの時は -1 が返され、 I<errno> に適切な値が設定される。"
8904
8905 #. type: TP
8906 #: build/C/man2/fcntl.2:1483 build/C/man3/lockf.3:122
8907 #, no-wrap
8908 msgid "B<EACCES> or B<EAGAIN>"
8909 msgstr "B<EACCES> か B<EAGAIN>"
8910
8911 #. type: Plain text
8912 #: build/C/man2/fcntl.2:1486
8913 msgid "Operation is prohibited by locks held by other processes."
8914 msgstr "他のプロセスが保持しているロックによって操作が禁止されている。"
8915
8916 #. type: TP
8917 #: build/C/man2/fcntl.2:1486 build/C/man2/fork.2:186 build/C/man2/fork.2:191
8918 #: build/C/man2/fork.2:209
8919 #, no-wrap
8920 msgid "B<EAGAIN>"
8921 msgstr "B<EAGAIN>"
8922
8923 #. type: Plain text
8924 #: build/C/man2/fcntl.2:1490
8925 msgid ""
8926 "The operation is prohibited because the file has been memory-mapped by "
8927 "another process."
8928 msgstr ""
8929 "そのファイルは他のプロセスによってメモリマップされているため、 操作が禁止され"
8930 "ている。"
8931
8932 #. type: Plain text
8933 #: build/C/man2/fcntl.2:1494
8934 msgid "I<fd> is not an open file descriptor"
8935 msgstr "I<fd> がオープンされたファイルディスクリプタではない。"
8936
8937 #. type: Plain text
8938 #: build/C/man2/fcntl.2:1503
8939 msgid ""
8940 "I<cmd> is B<F_SETLK> or B<F_SETLKW> and the file descriptor open mode "
8941 "doesn't match with the type of lock requested."
8942 msgstr ""
8943 "I<cmd> が B<F_SETLK> または B<F_SETLKW> だったが、対象のファイルディスクリプ"
8944 "タのオープンモードが 必要となるロックの型にマッチしていない。"
8945
8946 #. type: Plain text
8947 #: build/C/man2/fcntl.2:1512
8948 msgid ""
8949 "I<cmd> is B<F_SETPIPE_SZ> and the new pipe capacity specified in I<arg> is "
8950 "smaller than the amount of buffer space currently used to store data in the "
8951 "pipe."
8952 msgstr ""
8953 "I<cmd> が B<F_SETPIPE_SZ> で、 I<arg> で指定されたパイプの新しい容量がパイプ"
8954 "が、 現在パイプにあるデータを格納するのに使用されているバッファ容量よりも小さ"
8955 "い。"
8956
8957 #. type: Plain text
8958 #: build/C/man2/fcntl.2:1522
8959 msgid ""
8960 "I<cmd> is B<F_ADD_SEALS>, I<arg> includes B<F_SEAL_WRITE>, and there exists "
8961 "a writable, shared mapping on the file referred to by I<fd>."
8962 msgstr ""
8963 "I<cmd> が B<F_ADD_SEALS> で、 I<arg> に B<F_SEAL_WRITE> が含まれており、 "
8964 "I<fd> が参照するファイルに対する書き込み可能な共有マッピングが存在する。"
8965
8966 #. type: TP
8967 #: build/C/man2/fcntl.2:1522 build/C/man3/lockf.3:142
8968 #, no-wrap
8969 msgid "B<EDEADLK>"
8970 msgstr "B<EDEADLK>"
8971
8972 #. type: Plain text
8973 #: build/C/man2/fcntl.2:1527
8974 msgid ""
8975 "It was detected that the specified B<F_SETLKW> command would cause a "
8976 "deadlock."
8977 msgstr ""
8978 "指定された B<F_SETLKW> コマンドを実行した場合にはデッドロックになることが検出"
8979 "された。"
8980
8981 #. type: Plain text
8982 #: build/C/man2/fcntl.2:1531
8983 msgid "I<lock> is outside your accessible address space."
8984 msgstr "I<lock> が利用可能なアドレス空間の外部にある。"
8985
8986 #. type: Plain text
8987 #: build/C/man2/fcntl.2:1540
8988 msgid ""
8989 "I<cmd> is B<F_SETLKW> or B<F_OFD_SETLKW> and the operation was interrupted "
8990 "by a signal; see B<signal>(7)."
8991 msgstr ""
8992 "I<cmd> が B<F_SETLKW> か B<F_OFD_SETLKW> で、 操作がシグナルにより割り込まれ"
8993 "た。 B<signal>(7)  参照。"
8994
8995 #. type: Plain text
8996 #: build/C/man2/fcntl.2:1553
8997 msgid ""
8998 "I<cmd> is B<F_GETLK>, B<F_SETLK>, B<F_OFD_GETLK>, or B<F_OFD_SETLK>, and the "
8999 "operation was interrupted by a signal before the lock was checked or "
9000 "acquired.  Most likely when locking a remote file (e.g., locking over NFS), "
9001 "but can sometimes happen locally."
9002 msgstr ""
9003 "I<cmd> が B<F_GETLK>, B<F_SETLK>, B<F_OFD_GETLK>, B<F_OFD_SETLK> で、 操作が"
9004 "シグナルにより割り込まれた (B<signal>(7)  参照)。 B<F_GETLK> と B<F_SETLK> の"
9005 "場合、ロックを確認したり取得したりする前にシグナルによって割り込まれた。 これ"
9006 "はたいていリモートのファイルをロックする場合 (例えば NFS 上でロックする場合) "
9007 "に起こる。 しかしローカルでも起こる場合がある。"
9008
9009 #. type: Plain text
9010 #: build/C/man2/fcntl.2:1558
9011 msgid "The value specified in I<cmd> is not recognized by this kernel."
9012 msgstr "カーネルが認識しない値が I<cmd> で指定された。"
9013
9014 #. type: Plain text
9015 #: build/C/man2/fcntl.2:1566
9016 msgid ""
9017 "I<cmd> is B<F_ADD_SEALS> and I<arg> includes an unrecognized sealing bit."
9018 msgstr ""
9019 "I<cmd> が B<F_ADD_SEALS> で、 I<arg> に認識できない seal を示すビットが含まれ"
9020 "ている。"
9021
9022 #. type: Plain text
9023 #: build/C/man2/fcntl.2:1576
9024 msgid ""
9025 "I<cmd> is B<F_ADD_SEALS> or B<F_GET_SEALS> and the filesystem containing the "
9026 "inode referred to by I<fd> does not support sealing."
9027 msgstr ""
9028 "I<cmd> が B<F_ADD_SEALS> か B<F_GET_SEALS> で、 I<fd> が参照している inode が"
9029 "格納されているファイルシステムが sealing をサポートしていない。"
9030
9031 #. type: Plain text
9032 #: build/C/man2/fcntl.2:1588
9033 msgid ""
9034 "I<cmd> is B<F_DUPFD> and I<arg> is negative or is greater than the maximum "
9035 "allowable value (see the discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
9036 msgstr ""
9037 "I<cmd> が B<F_DUPFD> で、 I<arg> が負か、もしくは許される最大値よりも大きい "
9038 "(B<getrlimit>(2) の B<RLIMIT_NOFILE> の議論を参照)。"
9039
9040 #. type: Plain text
9041 #: build/C/man2/fcntl.2:1596
9042 msgid "I<cmd> is B<F_SETSIG> and I<arg> is not an allowable signal number."
9043 msgstr "I<cmd> が B<F_SETSIG> で、 I<arg> が許可されたシグナル番号ではない。"
9044
9045 #. type: Plain text
9046 #: build/C/man2/fcntl.2:1607
9047 msgid ""
9048 "I<cmd> is B<F_OFD_SETLK>, B<F_OFD_SETLKW>, or B<F_OFD_GETLK>, and I<l_pid> "
9049 "was not specified as zero."
9050 msgstr ""
9051 "I<cmd> が B<F_OFD_SETLK>, B<F_OFD_SETLKW>, B<F_OFD_GETLK> のいずれかで、 "
9052 "I<l_pid> に 0 が指定されなかった。"
9053
9054 #. type: Plain text
9055 #: build/C/man2/fcntl.2:1613
9056 msgid ""
9057 "I<cmd> is B<F_DUPFD> and the process already has the maximum number of file "
9058 "descriptors open."
9059 msgstr ""
9060 "I<cmd> が B<F_DUPFD>で、 プロセスがすでに最大数までファイルディスクリプタを"
9061 "オープンしている。"
9062
9063 #. type: TP
9064 #: build/C/man2/fcntl.2:1613 build/C/man2/flock.2:131 build/C/man3/lockf.3:151
9065 #, no-wrap
9066 msgid "B<ENOLCK>"
9067 msgstr "B<ENOLCK>"
9068
9069 #. type: Plain text
9070 #: build/C/man2/fcntl.2:1617
9071 msgid ""
9072 "Too many segment locks open, lock table is full, or a remote locking "
9073 "protocol failed (e.g., locking over NFS)."
9074 msgstr ""
9075 "オープンされているロックの数が多過ぎて、ロックテーブルがいっぱいである。 また"
9076 "は remote locking protocol (例えば NFS 上のロック) が失敗した。"
9077
9078 #. type: Plain text
9079 #: build/C/man2/fcntl.2:1625
9080 msgid ""
9081 "B<F_NOTIFY> was specified in I<cmd>, but I<fd> does not refer to a directory."
9082 msgstr ""
9083 "B<F_NOTIFY> が I<cmd> に指定されたが、 I<fd> がディレクトリを参照していない。"
9084
9085 #. type: Plain text
9086 #: build/C/man2/fcntl.2:1630
9087 msgid ""
9088 "Attempted to clear the B<O_APPEND> flag on a file that has the append-only "
9089 "attribute set."
9090 msgstr ""
9091 "追加専用属性が設定されたファイルの B<O_APPEND> フラグをクリアしようと試みた。"
9092
9093 #. type: Plain text
9094 #: build/C/man2/fcntl.2:1640
9095 msgid ""
9096 "I<cmd> was B<F_ADD_SEALS>, but I<fd> was not open for writing or the current "
9097 "set of seals on the file already includes B<F_SEAL_SEAL>."
9098 msgstr ""
9099 "I<cmd> が B<F_ADD_SEALS> だが、 I<fd> が書き込み用にオープンされていないか、 "
9100 "ファイルの現在の seal の集合にすでに B<F_SEAL_SEAL> が含まれている。"
9101
9102 #. type: Plain text
9103 #: build/C/man2/fcntl.2:1653
9104 msgid ""
9105 "SVr4, 4.3BSD, POSIX.1-2001.  Only the operations B<F_DUPFD>, B<F_GETFD>, "
9106 "B<F_SETFD>, B<F_GETFL>, B<F_SETFL>, B<F_GETLK>, B<F_SETLK>, and B<F_SETLKW> "
9107 "are specified in POSIX.1-2001."
9108 msgstr ""
9109 "SVr4, 4.3BSD, POSIX.1-2001.  POSIX.1-2001 で規定されている操作は、\n"
9110 "B<F_DUPFD>, B<F_GETFD>, B<F_SETFD>, B<F_GETFL>, B<F_SETFL>, \n"
9111 "B<F_GETLK>, B<F_SETLK>, B<F_SETLKW> だけである。"
9112
9113 #. type: Plain text
9114 #: build/C/man2/fcntl.2:1665
9115 msgid ""
9116 "B<F_GETOWN> and B<F_SETOWN> are specified in POSIX.1-2001.  (To get their "
9117 "definitions, define either B<_BSD_SOURCE>, or B<_XOPEN_SOURCE> with the "
9118 "value 500 or greater, or B<_POSIX_C_SOURCE> with the value 200809L or "
9119 "greater.)"
9120 msgstr ""
9121 "B<F_GETOWN> と B<F_SETOWN> は POSIX.1-2001 で規定されている。 (これら定義する"
9122 "には、 B<_BSD_SOURCE> を定義するか、 B<_XOPEN_SOURCE> を 500 以上の値で定義す"
9123 "るか、 B<_POSIX_C_SOURCE> を 200809L 以上の値で定義するか、 のいずれが必要で"
9124 "ある。)"
9125
9126 #. type: Plain text
9127 #: build/C/man2/fcntl.2:1673
9128 msgid ""
9129 "B<F_DUPFD_CLOEXEC> is specified in POSIX.1-2008.  (To get this definition, "
9130 "define B<_POSIX_C_SOURCE> with the value 200809L or greater, or "
9131 "B<_XOPEN_SOURCE> with the value 700 or greater.)"
9132 msgstr ""
9133 "B<F_DUPFD_CLOEXEC> は POSIX.1-2008 で規定されている。\n"
9134 "(これら定義するには、\n"
9135 "B<_POSIX_C_SOURCE> を 200809L 以上の値で定義するか、\n"
9136 "B<_XOPEN_SOURCE> を 700 以上の値で定義すること。)"
9137
9138 #.  .PP
9139 #.  SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions.
9140 #. type: Plain text
9141 #: build/C/man2/fcntl.2:1690
9142 msgid ""
9143 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_SETPIPE_SZ>, B<F_GETPIPE_SZ>, "
9144 "B<F_GETSIG>, B<F_SETSIG>, B<F_NOTIFY>, B<F_GETLEASE>, and B<F_SETLEASE> are "
9145 "Linux-specific.  (Define the B<_GNU_SOURCE> macro to obtain these "
9146 "definitions.)"
9147 msgstr ""
9148 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_SETPIPE_SZ>, B<F_GETPIPE_SZ>, "
9149 "B<F_GETSIG>, \n"
9150 "B<F_SETSIG>, B<F_NOTIFY>, B<F_GETLEASE>, B<F_SETLEASE> は Linux 固有である\n"
9151 "(これらの定義を有効にするには B<_GNU_SOURCE> マクロを定義すること)。"
9152
9153 #. type: Plain text
9154 #: build/C/man2/fcntl.2:1699
9155 msgid ""
9156 "B<F_OFD_SETLK>, B<F_OFD_SETLKW>, and B<F_OFD_GETLK> are Linux-specific (and "
9157 "one must define B<_GNU_SOURCE> to obtain their definitions), but work is "
9158 "being done to have them included in the next version of POSIX.1."
9159 msgstr ""
9160 "B<F_OFD_SETLK>, B<F_OFD_SETLKW>, B<F_OFD_GETLK> は Linux 固有だが (これらの定"
9161 "義を得るには B<_GNU_SOURCE> を定義しなければならない)、 POSIX.1 の次のバー"
9162 "ジョンに含めようという活動が進められている。"
9163
9164 #.  FIXME . Once glibc adds support, add a note about FTM requirements
9165 #. type: Plain text
9166 #: build/C/man2/fcntl.2:1705
9167 msgid "B<F_ADD_SEALS> and B<F_GET_SEALS> are Lnux-specific."
9168 msgstr "B<F_ADD_SEALS> と B<F_GET_SEALS> は Linux 固有である。"
9169
9170 #. type: Plain text
9171 #: build/C/man2/fcntl.2:1711 build/C/man2/fcntl.2:1737
9172 msgid ""
9173 "The errors returned by B<dup2>(2)  are different from those returned by "
9174 "B<F_DUPFD>."
9175 msgstr "エラーの際の返り値が B<dup2>(2)  と B<F_DUPFD> では異なっている。"
9176
9177 #. type: SS
9178 #: build/C/man2/fcntl.2:1711
9179 #, no-wrap
9180 msgid "File locking"
9181 msgstr "ファイルロック"
9182
9183 #. type: Plain text
9184 #: build/C/man2/fcntl.2:1732 build/C/man2/fcntl.2:1776
9185 msgid ""
9186 "The original Linux B<fcntl>()  system call was not designed to handle large "
9187 "file offsets (in the I<flock> structure).  Consequently, an B<fcntl64>()  "
9188 "system call was added in Linux 2.4.  The newer system call employs a "
9189 "different structure for file locking, I<flock64>, and corresponding "
9190 "commands, B<F_GETLK64>, B<F_SETLK64>, and B<F_SETLKW64>.  However, these "
9191 "details can be ignored by applications using glibc, whose B<fcntl>()  "
9192 "wrapper function transparently employs the more recent system call where it "
9193 "is available."
9194 msgstr ""
9195 "元々の Linux の B<fcntl>() システムコールは (I<flock> 構造体で) 大きな\n"
9196 "ファイルオフセットを扱えるように設計されていなかった。\n"
9197 "その結果、Linux 2.4 で B<fcntl64>() システムコールが追加された。\n"
9198 "この新しいシステムコールは、ファイルのロックに I<flock64> という別の\n"
9199 "構造体を利用し、これに対応するコマンドとして B<F_GETLK64>,\n"
9200 "B<F_SETLK64>, B<F_SETLKW64> を使用する。\n"
9201 "しかし、 glibc を使うアプリケーションではこれらの詳細を無視することが\n"
9202 "できる。 glibc の B<fcntl> のラッパー関数は新しいシステムコールが\n"
9203 "利用できる場合はそれを利用するようになっているからである。"
9204
9205 #. type: SS
9206 #: build/C/man2/fcntl.2:1737
9207 #, no-wrap
9208 msgid "Record locks"
9209 msgstr "レコードロック"
9210
9211 #. type: Plain text
9212 #: build/C/man2/fcntl.2:1743
9213 msgid ""
9214 "Since kernel 2.0, there is no interaction between the types of lock placed "
9215 "by B<flock>(2)  and B<fcntl>()."
9216 msgstr ""
9217 "カーネル 2.0 以降では、 B<flock>(2)  と B<fcntl>()  が設定するロック種別の間"
9218 "に相互作用はない。"
9219
9220 #.  e.g., Solaris 8 documents this field in fcntl(2), and Irix 6.5
9221 #.  documents it in fcntl(5).  mtk, May 2007
9222 #.  Also, FreeBSD documents it (Apr 2014).
9223 #. type: Plain text
9224 #: build/C/man2/fcntl.2:1755
9225 msgid ""
9226 "Several systems have more fields in I<struct flock> such as, for example, "
9227 "I<l_sysid>.  Clearly, I<l_pid> alone is not going to be very useful if the "
9228 "process holding the lock may live on a different machine."
9229 msgstr ""
9230 "システムによっては、 I<struct flock> に上記以外のフィールドがあるものもある "
9231 "(例えば I<l_sysid>)。 はっきりと言えることは、ロックを保持しているプロセスが"
9232 "別のマシンに存在 する場合には、 I<l_pid> だけはあまり役にたたないだろうという"
9233 "ことである。"
9234
9235 #. type: SS
9236 #: build/C/man2/fcntl.2:1776
9237 #, no-wrap
9238 msgid "Record locking and NFS"
9239 msgstr "レコードロックと NFS"
9240
9241 #
9242 #
9243 #
9244 #.  Neil Brown: With NFSv3 the failure mode is the reverse.  If
9245 #.      the server loses contact with a client then any lock stays in place
9246 #.      indefinitely ("why can't I read my mail"... I remember it well).
9247 #.  Jeff Layton:
9248 #.      Note that this is not a firm timeout. The server runs a job
9249 #.      periodically to clean out expired stateful objects, and it's likely
9250 #.      that there is some time (maybe even up to another whole lease period)
9251 #.      between when the timeout expires and the job actually runs. If the
9252 #.      client gets a RENEW in there within that window, its lease will be
9253 #.      renewed and its state preserved.
9254 #. type: Plain text
9255 #: build/C/man2/fcntl.2:1804
9256 msgid ""
9257 "Before Linux 3.12, if an NFSv4 client loses contact with the server for a "
9258 "period of time (defined as more than 90 seconds with no communication), it "
9259 "might lose and regain a lock without ever being aware of the fact.  (The "
9260 "period of time after which contact is assumed lost is known as the NFSv4 "
9261 "leasetime.  On a Linux NFS server, this can be determined by looking at I</"
9262 "proc/fs/nfsd/nfsv4leasetime>, which expresses the period in seconds.  The "
9263 "default value for this file is 90.)  This scenario potentially risks data "
9264 "corruption, since another process might acquire a lock in the intervening "
9265 "period and perform file I/O."
9266 msgstr ""
9267 "Linux 3.12 より前では、 NFSv4 クライアントが一定時間サーバーと通信がなかった"
9268 "場合 (90 秒間通信がない場合と定義されている)、 クライアントが気付かずにロック"
9269 "を失い再獲得する場合がある。 (通信がなくなったみなす時間は NFSv4 leastime と"
9270 "呼ばれる。 Linux NFS サーバーでは、 この値は I</proc/fs/nfsd/nfsv4leasetime> "
9271 "を見て決定される。 このファイルの値の単位は秒であり、 このファイルのデフォル"
9272 "ト値は 90 である。) この状況では潜在的にデータ破壊が起こる危険性がある。 通信"
9273 "がなかった間に他のプロセスがロックを獲得しファイル入出力を行う場合があるから"
9274 "である。"
9275
9276 #.  commit ef1820f9be27b6ad158f433ab38002ab8131db4d
9277 #.  commit f6de7a39c181dfb8a2c534661a53c73afb3081cd
9278 #. type: Plain text
9279 #: build/C/man2/fcntl.2:1818
9280 msgid ""
9281 "Since Linux 3.12, if an NFSv4 client loses contact with the server, any I/O "
9282 "to the file by a process which \"thinks\" it holds a lock will fail until "
9283 "that process closes and reopens the file.  A kernel parameter, I<nfs."
9284 "recover_lost_locks>, can be set to 1 to obtain the pre-3.12 behavior, "
9285 "whereby the client will attempt to recover lost locks when contact is "
9286 "reestablished with the server.  Because of the attendant risk of data "
9287 "corruption, this parameter defaults to 0 (disabled)."
9288 msgstr ""
9289 "Linux 3.12 以降、 NFSv4 クライアントがサーバーと通信がなかった場合、 ロックを"
9290 "持っていると「思っている」プロセスがそのファイルに入出力を行うと失敗する。 そ"
9291 "のプロセスがそのファイルをいったんクローズし再オープンするまでは入出力は失敗"
9292 "する。 カーネルパラメーター I<nfs.recover_lost_locks> を 1 に設定すると、 "
9293 "Linux 3.12 より前の動作にすることができる。 この場合、 サーバーとの通信が再確"
9294 "立された場合、 クライアントがは失われたロックを回復しようとする。 データ破壊"
9295 "が起こる危険性があるため、 このパラメーターはデフォルトでは 0 (無効) になって"
9296 "いる。"
9297
9298 #. type: SS
9299 #: build/C/man2/fcntl.2:1819
9300 #, no-wrap
9301 msgid "F_SETFL"
9302 msgstr "F_SETFL"
9303
9304 #.  FIXME . According to POSIX.1-2001, O_SYNC should also be modifiable
9305 #.  via fcntl(2), but currently Linux does not permit this
9306 #.  See http://bugzilla.kernel.org/show_bug.cgi?id=5994
9307 #. type: Plain text
9308 #: build/C/man2/fcntl.2:1831
9309 msgid ""
9310 "It is not possible to use B<F_SETFL> to change the state of the B<O_DSYNC> "
9311 "and B<O_SYNC> flags.  Attempts to change the state of these flags are "
9312 "silently ignored."
9313 msgstr ""
9314 "B<F_SETFL> を使って、 フラグ B<O_DSYNC> と B<O_SYNC> の状態を変更することはで"
9315 "きない。これらのフラグの状態を変更しようとした場合には、黙って無視される。"
9316
9317 #. type: SS
9318 #: build/C/man2/fcntl.2:1831
9319 #, no-wrap
9320 msgid "F_GETOWN"
9321 msgstr "F_GETOWN"
9322
9323 #.  glibc source: sysdeps/unix/sysv/linux/i386/sysdep.h
9324 #.  mtk, Dec 04: some limited testing on alpha and ia64 seems to
9325 #.  indicate that ANY negative PGID value will cause F_GETOWN
9326 #.  to misinterpret the return as an error. Some other architectures
9327 #.  seem to have the same range check as i386.
9328 #. type: Plain text
9329 #: build/C/man2/fcntl.2:1857
9330 msgid ""
9331 "A limitation of the Linux system call conventions on some architectures "
9332 "(notably i386) means that if a (negative)  process group ID to be returned "
9333 "by B<F_GETOWN> falls in the range -1 to -4095, then the return value is "
9334 "wrongly interpreted by glibc as an error in the system call; that is, the "
9335 "return value of B<fcntl>()  will be -1, and I<errno> will contain the "
9336 "(positive) process group ID.  The Linux-specific B<F_GETOWN_EX> operation "
9337 "avoids this problem.  Since glibc version 2.11, glibc makes the kernel "
9338 "B<F_GETOWN> problem invisible by implementing B<F_GETOWN> using "
9339 "B<F_GETOWN_EX>."
9340 msgstr ""
9341 "いくつかのアーキテクチャ (特に i386) における Linux システムコールの慣習\n"
9342 "のため以下の制限が存在する。\n"
9343 "B<F_GETOWN> が返す (負の) プロセスグループID が -1 から -4095 の範囲に入った"
9344 "場合、\n"
9345 "glibc はこの返り値をシステムコールでエラーが起こったと間違って解釈してしま"
9346 "う。\n"
9347 "つまり、 B<fcntl>() の返り値は -1 となり、 I<errno> には (正の) プロセスグ"
9348 "ループID\n"
9349 "が設定されることになる。Linux 固有の B<F_GETOWN_EX> ではこの問題を回避でき"
9350 "る。\n"
9351 "glibc バージョン 2.11 以降では、glibc では B<F_GETOWN_EX> を使って\n"
9352 "B<F_GETOWN> を実装することで、カーネルの B<F_GETOWN> の問題を見えないようにし"
9353 "ている。"
9354
9355 #. type: SS
9356 #: build/C/man2/fcntl.2:1857
9357 #, no-wrap
9358 msgid "F_SETOWN"
9359 msgstr "F_SETOWN"
9360
9361 #. type: Plain text
9362 #: build/C/man2/fcntl.2:1875
9363 msgid ""
9364 "In Linux 2.4 and earlier, there is bug that can occur when an unprivileged "
9365 "process uses B<F_SETOWN> to specify the owner of a socket file descriptor as "
9366 "a process (group) other than the caller.  In this case, B<fcntl>()  can "
9367 "return -1 with I<errno> set to B<EPERM>, even when the owner process (group) "
9368 "is one that the caller has permission to send signals to.  Despite this "
9369 "error return, the file descriptor owner is set, and signals will be sent to "
9370 "the owner."
9371 msgstr ""
9372 "Linux 2.4 以前では、非特権プロセスが B<F_SETOWN> を使って、ソケットのファイル"
9373 "ディスクリプタの所有者に 呼び出し元以外のプロセス (やプロセスグループ) を指定"
9374 "すると 発生するバグがある。この場合、 呼び出し元が所有者として指定したプロセ"
9375 "ス (やプロセスグループ) に シグナルを送る許可を持っていたとしても、 "
9376 "B<fcntl>()  が -1 を返し I<errno> に B<EPERM> を設定することがある。 このエ"
9377 "ラーが返ったにもかかわらず、ファイルディスクリプタの所有者 は設定され、シグナ"
9378 "ルはその所有者に送られる。"
9379
9380 #. type: SS
9381 #: build/C/man2/fcntl.2:1875
9382 #, no-wrap
9383 msgid "Deadlock detection"
9384 msgstr "デッドロックの検出"
9385
9386 #. type: Plain text
9387 #: build/C/man2/fcntl.2:1894
9388 msgid ""
9389 "The deadlock-detection algorithm employed by the kernel when dealing with "
9390 "B<F_SETLKW> requests can yield both false negatives (failures to detect "
9391 "deadlocks, leaving a set of deadlocked processes blocked indefinitely)  and "
9392 "false positives (B<EDEADLK> errors when there is no deadlock).  For example, "
9393 "the kernel limits the lock depth of its dependency search to 10 steps, "
9394 "meaning that circular deadlock chains that exceed that size will not be "
9395 "detected.  In addition, the kernel may falsely indicate a deadlock when two "
9396 "or more processes created using the B<clone>(2)  B<CLONE_FILES> flag place "
9397 "locks that appear (to the kernel) to conflict."
9398 msgstr ""
9399 "B<F_SETLKW> 要求を処理する際にカーネルが使用するデッドロック検出アルゴリズム"
9400 "は、 false negative になる場合 (デッドロックを検出できず、 デッドロックになっ"
9401 "たプロセスは無限に停止する) も false positive になる場合 (デッドロックがない"
9402 "場合でも B<EDEADLK> エラーとなる) もある。 例えば、 カーネルは依存関係の検索"
9403 "を行うロックの深さを 10 ステップに限定しているが、 このためこれよりも長い循環"
9404 "するデッドロックは検出されない。 また、 B<clone>(2) の B<CLONE_FILES> フラグ"
9405 "を使って作成された 2 つ以上のプロセスが (カーネルにとって) 衝突するように見え"
9406 "るロックを適用した場合、 カーネルはデッドロックを誤って検出する。"
9407
9408 #.  http://marc.info/?l=linux-kernel&m=119013491707153&w=2
9409 #.  Reconfirmed by Jeff Layton
9410 #.      From: Jeff Layton <jlayton <at> redhat.com>
9411 #.      Subject: Re: Status of fcntl() mandatory locking
9412 #.      Newsgroups: gmane.linux.file-systems
9413 #.      Date: 2014-04-28 10:07:57 GMT
9414 #.      http://thread.gmane.org/gmane.linux.file-systems/84481/focus=84518
9415 #. type: Plain text
9416 #: build/C/man2/fcntl.2:1916
9417 msgid ""
9418 "The Linux implementation of mandatory locking is subject to race conditions "
9419 "which render it unreliable: a B<write>(2)  call that overlaps with a lock "
9420 "may modify data after the mandatory lock is acquired; a B<read>(2)  call "
9421 "that overlaps with a lock may detect changes to data that were made only "
9422 "after a write lock was acquired.  Similar races exist between mandatory "
9423 "locks and B<mmap>(2).  It is therefore inadvisable to rely on mandatory "
9424 "locking."
9425 msgstr ""
9426 "Linux の強制ロックの実装は、 競合条件下で強制ロックが不完全になるような場合が"
9427 "ある。 ロックと重なって実行された B<write>(2)  の呼び出しは強制ロックが獲得さ"
9428 "れた後にもデータを変更することができる。 ロックと重なって実行された "
9429 "B<read>(2)  の呼び出しは強制ロックが獲得された後になって行われたデータの変更"
9430 "を 検出することができる。 同様の競合条件が強制ロックと B<mmap>(2)  の間にも存"
9431 "在する。それゆえ、強制ロックに頼るのはお薦めできない。"
9432
9433 #. type: Plain text
9434 #: build/C/man2/fcntl.2:1924
9435 msgid ""
9436 "B<dup2>(2), B<flock>(2), B<open>(2), B<socket>(2), B<lockf>(3), "
9437 "B<capabilities>(7), B<feature_test_macros>(7)"
9438 msgstr ""
9439 "B<dup2>(2), B<flock>(2), B<open>(2), B<socket>(2), B<lockf>(3), "
9440 "B<capabilities>(7), B<feature_test_macros>(7)"
9441
9442 #. type: Plain text
9443 #: build/C/man2/fcntl.2:1937
9444 msgid ""
9445 "I<locks.txt>, I<mandatory-locking.txt>, and I<dnotify.txt> in the Linux "
9446 "kernel source directory I<Documentation/filesystems/> (on older kernels, "
9447 "these files are directly under the I<Documentation/> directory, and "
9448 "I<mandatory-locking.txt> is called I<mandatory.txt>)"
9449 msgstr ""
9450 "Linux カーネルソースの I<Documentation/filesystems/> ディレクトリ内の "
9451 "I<locks.txt>, I<mandatory-locking.txt>, I<dnotify.txt> (以前のカーネルでは、"
9452 "これらのファイルは I<Documentation/> ディレクトリ直下にあり、 I<mandatory-"
9453 "locking.txt> は I<mandatory.txt> という名前であった)"
9454
9455 #. type: TH
9456 #: build/C/man3/fexecve.3:25
9457 #, no-wrap
9458 msgid "FEXECVE"
9459 msgstr "FEXECVE"
9460
9461 #. type: Plain text
9462 #: build/C/man3/fexecve.3:28
9463 msgid "fexecve - execute program specified via file descriptor"
9464 msgstr "fexecve - ファイルディスクリプタで指定されたプログラムを実行する"
9465
9466 #. type: Plain text
9467 #: build/C/man3/fexecve.3:33
9468 #, no-wrap
9469 msgid "B<int fexecve(int >I<fd>B<, char *const >I<argv>B<[], char *const >I<envp>B<[]);>\n"
9470 msgstr "B<int fexecve(int >I<fd>B<, char *const >I<argv>B<[], char *const >I<envp>B<[]);>\n"
9471
9472 #. type: Plain text
9473 #: build/C/man3/fexecve.3:41
9474 msgid "B<fexecve>():"
9475 msgstr "B<fexecve>():"
9476
9477 #. type: Plain text
9478 #: build/C/man3/fexecve.3:50 build/C/man3/getcwd.3:54
9479 msgid "_GNU_SOURCE"
9480 msgstr "_GNU_SOURCE"
9481
9482 #.  POSIX.1-2008 specifies the O_EXEC flag for open as an alternative,
9483 #.  but Linux doesn't support this flag yet.
9484 #. type: Plain text
9485 #: build/C/man3/fexecve.3:67
9486 msgid ""
9487 "B<fexecve>()  performs the same task as B<execve>(2), with the difference "
9488 "that the file to be executed is specified via a file descriptor, I<fd>, "
9489 "rather than via a pathname.  The file descriptor I<fd> must be opened read-"
9490 "only, and the caller must have permission to execute the file that it refers "
9491 "to."
9492 msgstr ""
9493 "B<fexecve>()  は B<execve>(2)  と同じ作業を行う。違うのは、 実行するファイル"
9494 "を、パス名ではなく、 ファイルディスクリプタ I<fd> を用いて指定する点である。 "
9495 "ファイルディスクリプタ I<fd> は、読み込み専用でオープンされていなければなら"
9496 "ず、 呼び出し元はファイルディスクリプタが参照するファイルに対する 実行許可を"
9497 "持っていなければならない。"
9498
9499 #. type: Plain text
9500 #: build/C/man3/fexecve.3:74
9501 msgid ""
9502 "A successful call to B<fexecve>()  never returns.  On error, the function "
9503 "does return, with a result value of -1, and I<errno> is set appropriately."
9504 msgstr ""
9505 "B<fexecve>()  は呼び出しに成功した場合、戻ることはない。 エラーの場合、返り"
9506 "値 -1 で関数が返り、 I<errno> が適切に設定される。"
9507
9508 #. type: Plain text
9509 #: build/C/man3/fexecve.3:78
9510 msgid "Errors are as for B<execve>(2), with the following additions:"
9511 msgstr "エラーは B<execve>(2)  と同じだが、以下のエラーが追加になっている:"
9512
9513 #. type: Plain text
9514 #: build/C/man3/fexecve.3:86
9515 msgid ""
9516 "I<fd> is not a valid file descriptor, or I<argv> is NULL, or I<envp> is NULL."
9517 msgstr ""
9518 "I<fd> が有効なファイルディスクリプタでない。または I<argv> が NULL である。ま"
9519 "たは I<envp> が NULL である。"
9520
9521 #. type: Plain text
9522 #: build/C/man3/fexecve.3:91
9523 msgid "The I</proc> filesystem could not be accessed."
9524 msgstr "I</proc> ファイルシステムにアクセスできなかった。"
9525
9526 #. type: Plain text
9527 #: build/C/man3/fexecve.3:94
9528 msgid "B<fexecve>()  is implemented since glibc 2.3.2."
9529 msgstr "B<fexecve>()  は glibc 2.3.2 以降で実装されている。"
9530
9531 #. type: Plain text
9532 #: build/C/man3/fexecve.3:99
9533 msgid ""
9534 "POSIX.1-2008.  This function is not specified in POSIX.1-2001, and is not "
9535 "widely available on other systems.  It is specified in POSIX.1-2008."
9536 msgstr ""
9537 "POSIX.1-2008.  この関数は POSIX.1-2001 では規定されておらず、 他のシステムで"
9538 "広く利用できるわけではない。 POSIX.1-2008 で規定されている。"
9539
9540 #.  FIXME .
9541 #.  With the addition of the execveat(2), fexecve() can be implemented
9542 #.  even where /proc is unavailable. Review future glibc releases to
9543 #.  see if the implementation is changed to use execveat(2).
9544 #. type: Plain text
9545 #: build/C/man3/fexecve.3:111
9546 msgid ""
9547 "On Linux, B<fexecve>()  is implemented using the B<proc>(5)  filesystem, so "
9548 "I</proc> needs to be mounted and available at the time of the call."
9549 msgstr ""
9550 "Linux では、 B<fexecve>()  は B<proc>(5)  ファイルシステムを使って実装されて"
9551 "いる。 そのため、この関数を呼び出す時点では I</proc> がマウントされて利用可能"
9552 "となっている必要がある。"
9553
9554 #. type: Plain text
9555 #: build/C/man3/fexecve.3:128
9556 msgid ""
9557 "The idea behind B<fexecve>()  is to allow the caller to verify (checksum) "
9558 "the contents of an executable before executing it.  Simply opening the file, "
9559 "checksumming the contents, and then doing an B<execve>(2)  would not "
9560 "suffice, since, between the two steps, the filename, or a directory prefix "
9561 "of the pathname, could have been exchanged (by, for example, modifying the "
9562 "target of a symbolic link).  B<fexecve>()  does not mitigate the problem "
9563 "that the I<contents> of a file could be changed between the checksumming and "
9564 "the call to B<fexecve>(); for that, the solution is to ensure that the "
9565 "permissions on the file prevent it from being modified by malicious users."
9566 msgstr ""
9567 "B<fexecve>() の裏にある考えは、呼び出し元が、ファイルを実行する前に実行ファイ"
9568 "ルの内容を検査 (チェックサムを確認) できるようにすることである。単に、ファイ"
9569 "ルをオープンして内容のチェックサムを検査し、それから B<execve>(2) を行うのは"
9570 "十分ではない。なぜなら、2 つのステップの間で、ファイル名や、パス名のディレク"
9571 "トリの前の方が入れ換えられる可能性があるからだ (例えば、シンボリックリンクの"
9572 "リンク先を変更するなど)。B<fexecve>() は、チェックサムの検査と B<fexecve>() "
9573 "の呼び出しの間で、ファイルのI<内容>を変更できる可能性があるという問題への対策"
9574 "にはならない。この問題に対する対応策は、確実に、ファイルのアクセス許可を設定"
9575 "し、悪意のあるユーザーがファイルを変更できないようにすることである。"
9576
9577 #. type: Plain text
9578 #: build/C/man3/fexecve.3:146
9579 msgid ""
9580 "The natural idiom when using B<fexecve>()  is to set the close-on-exec flag "
9581 "on I<fd>, so that the file descriptor does not leak through to the program "
9582 "that is executed.  This approach is natural for two reasons.  First, it "
9583 "prevents file descriptors being consumed unnecessarily.  (The executed "
9584 "program normally has no need of a file descriptor that refers to the program "
9585 "itself.)  Second, if B<fexecve>()  is used recursively, employing the close-"
9586 "on-exec flag prevents the file descriptor exhaustion that would result from "
9587 "the fact that each step in the recursion would cause one more file "
9588 "descriptor to be passed to the new program.  (But see BUGS.)"
9589 msgstr ""
9590 "B<fexecve>() を使用する際の理にかなった方法は、 I<fd> に close-on-exec フラグ"
9591 "をセットし、 実行するプログラムを通じてそのファイルディスクリプターが外部にも"
9592 "れないようにすることである。 この方法は 2 つの理由から理にかなっている。 1 つ"
9593 "目は、 これにより不必要にファイルディスクリプターが消費されるのを防ぐことがで"
9594 "きる (実行されるプログラムは普通プログラム自身が参照するファイルを参照する必"
9595 "要はない)。 2 つ目は、 B<fexecve>() が再帰的に使用された場合、 close-on-exec "
9596 "フラグを利用することで、 再帰の各ステップで新しいプログラムに一つ余計にファイ"
9597 "ルディスクリプターが渡されることによる、 ファイルディスクリプターの枯渇を防ぐ"
9598 "ことができる (ただし「バグ」を参照)。"
9599
9600 #. type: Plain text
9601 #: build/C/man3/fexecve.3:165
9602 msgid ""
9603 "If I<fd> refers to a script (i.e., it is an executable text file that names "
9604 "a script interpreter with a first line that begins with the characters I<#!"
9605 ">)  and the close-on-exec flag has been set for I<fd>, then B<fexecve>()  "
9606 "fails with the error B<ENOENT>.  This error occurs because, by the time the "
9607 "script interpreter is executed, I<fd> has already been closed because of the "
9608 "close-on-exec flag.  Thus, the close-on-exec flag can't be set on I<fd> if "
9609 "it refers to a script, leading to the problems described in NOTES."
9610 msgstr ""
9611 "I<fd> がスクリプトを参照していて (つまり、 最初の行に文字 I<#!> で始まるスク"
9612 "リプトインタープリターの指示がある実行テキストファイルである)、 I<fd> に "
9613 "close-on-exec フラグがセットされていた場合、 B<fexecve>() はエラー B<ENOENT> "
9614 "で失敗する。 このエラーが起こるのは、 スクリプトインタープリターが実行される"
9615 "時点までに、 close-on-exec フラグにより I<fd> がすでにクローズされてしまって"
9616 "いるからである。 そのため、 スクリプトを参照する場合には、 close-on-exec フラ"
9617 "グを I<fd> にセットすることはできず、 「注意」の節で説明されている問題が起こ"
9618 "り得る。"
9619
9620 #. type: Plain text
9621 #: build/C/man3/fexecve.3:168
9622 msgid "B<execve>(2), B<execveat>(2)"
9623 msgstr "B<execve>(2), B<execveat>(2)"
9624
9625 #. type: TH
9626 #: build/C/man2/flock.2:35
9627 #, no-wrap
9628 msgid "FLOCK"
9629 msgstr "FLOCK"
9630
9631 #. type: TH
9632 #: build/C/man2/flock.2:35 build/C/man2/uname.2:27
9633 #, no-wrap
9634 msgid "2014-09-21"
9635 msgstr "2014-09-21"
9636
9637 #. type: Plain text
9638 #: build/C/man2/flock.2:38
9639 msgid "flock - apply or remove an advisory lock on an open file"
9640 msgstr ""
9641 "flock - オープンされたファイルに対するアドバイザリロックの適用、解除を行う"
9642
9643 #. type: Plain text
9644 #: build/C/man2/flock.2:40
9645 msgid "B<#include E<lt>sys/file.hE<gt>>"
9646 msgstr "B<#include E<lt>sys/file.hE<gt>>"
9647
9648 #. type: Plain text
9649 #: build/C/man2/flock.2:42
9650 msgid "B<int flock(int >I<fd>B<, int >I<operation>B<);>"
9651 msgstr "B<int flock(int >I<fd>B<, int >I<operation>B<);>"
9652
9653 #. type: Plain text
9654 #: build/C/man2/flock.2:48
9655 msgid ""
9656 "Apply or remove an advisory lock on the open file specified by I<fd>.  The "
9657 "argument I<operation> is one of the following:"
9658 msgstr ""
9659 "オープンされたファイルにアドバイザリロック (advisory lock) の適用 や解除を行"
9660 "う。 ファイルは I<fd> で指定する。引き数 I<operation> には以下のいずれか一つ"
9661 "を指定する:"
9662
9663 #. type: TP
9664 #: build/C/man2/flock.2:49
9665 #, no-wrap
9666 msgid "B<LOCK_SH>"
9667 msgstr "B<LOCK_SH>"
9668
9669 #. type: Plain text
9670 #: build/C/man2/flock.2:54
9671 msgid ""
9672 "Place a shared lock.  More than one process may hold a shared lock for a "
9673 "given file at a given time."
9674 msgstr ""
9675 "共有ロックを適用する。 指定したファイルに対して、 一つ以上のプロセスが同時に"
9676 "共有ロックを保持することができる。"
9677
9678 #. type: TP
9679 #: build/C/man2/flock.2:54
9680 #, no-wrap
9681 msgid "B<LOCK_EX>"
9682 msgstr "B<LOCK_EX>"
9683
9684 #. type: Plain text
9685 #: build/C/man2/flock.2:59
9686 msgid ""
9687 "Place an exclusive lock.  Only one process may hold an exclusive lock for a "
9688 "given file at a given time."
9689 msgstr ""
9690 "排他ロックを適用する。 指定したファイルに対して、 ただ一つのプロセスだけが同"
9691 "時に排他ロックを保持することができる。"
9692
9693 #. type: TP
9694 #: build/C/man2/flock.2:59
9695 #, no-wrap
9696 msgid "B<LOCK_UN>"
9697 msgstr "B<LOCK_UN>"
9698
9699 #. type: Plain text
9700 #: build/C/man2/flock.2:62
9701 msgid "Remove an existing lock held by this process."
9702 msgstr "このプロセスが保持している既存のロックを解除する。"
9703
9704 #. type: Plain text
9705 #: build/C/man2/flock.2:71
9706 msgid ""
9707 "A call to B<flock>()  may block if an incompatible lock is held by another "
9708 "process.  To make a nonblocking request, include B<LOCK_NB> (by ORing)  with "
9709 "any of the above operations."
9710 msgstr ""
9711 "B<flock>()  を呼び出したときに、指定したロック種別と異なるロックが別プロセス"
9712 "によって 保持されていると、 B<flock>()  は停止 (block) されることがある。 非"
9713 "停止 (nonblocking) タイプの要求を行うためには、 上記の操作 (operation) に "
9714 "B<LOCK_NB> を論理和の形で指定する。"
9715
9716 #. type: Plain text
9717 #: build/C/man2/flock.2:73
9718 msgid ""
9719 "A single file may not simultaneously have both shared and exclusive locks."
9720 msgstr "一つのファイルに共有ロックと排他ロックを同時に設定することはできない。"
9721
9722 #. type: Plain text
9723 #: build/C/man2/flock.2:88
9724 msgid ""
9725 "Locks created by B<flock>()  are associated with an open file description "
9726 "(see B<open>(2)).  This means that duplicate file descriptors (created by, "
9727 "for example, B<fork>(2)  or B<dup>(2))  refer to the same lock, and this "
9728 "lock may be modified or released using any of these descriptors.  "
9729 "Furthermore, the lock is released either by an explicit B<LOCK_UN> operation "
9730 "on any of these duplicate descriptors, or when all such descriptors have "
9731 "been closed."
9732 msgstr ""
9733 "B<flock>() によって作られるロックは、 オープンファイル記述 (open file "
9734 "description) (B<open>(2) 参照) と関連付けられる。 したがって、ファイルディス"
9735 "クリプタの複製 (B<fork>(2)  や B<dup>(2)  などにより作成される) は同じロック"
9736 "を参照し、 これらのファイルディスクリプタのどれを使っても このロックを変更し"
9737 "たり解放したりできる。 また、ロックの解放は、 上記の複数のファイルディスクリ"
9738 "プタのいずれかに対して 明示的に B<LOCK_UN> 操作を指示した場合か、これらのファ"
9739 "イルディスクリプタがすべて 閉じられた場合に行われる。"
9740
9741 #. type: Plain text
9742 #: build/C/man2/flock.2:97
9743 msgid ""
9744 "If a process uses B<open>(2)  (or similar) to obtain more than one "
9745 "descriptor for the same file, these descriptors are treated independently by "
9746 "B<flock>().  An attempt to lock the file using one of these file descriptors "
9747 "may be denied by a lock that the calling process has already placed via "
9748 "another descriptor."
9749 msgstr ""
9750 "あるプロセスが B<open>(2)  (もしくは同様の方法) を使って同じファイルに対して "
9751 "複数のディスクリプタを取得した場合、 B<flock>()  はこれら複数のディスクリプタ"
9752 "を各々独立のものとして扱う。 これらのファイルディスクリプタの一つを使ってファ"
9753 "イルをロックしようと した際、そのロック要求は、呼び出し元のプロセスがそのファ"
9754 "イルの別の ディスクリプタ経由ですでに設定しているロックによって拒否される場合"
9755 "がある。"
9756
9757 #. type: Plain text
9758 #: build/C/man2/flock.2:104
9759 msgid ""
9760 "A process may hold only one type of lock (shared or exclusive)  on a file.  "
9761 "Subsequent B<flock>()  calls on an already locked file will convert an "
9762 "existing lock to the new lock mode."
9763 msgstr ""
9764 "一つのプロセスは、一つのファイルに対して (共有ロックと排他ロックのうち)  いず"
9765 "れか一種類のロックしか設定できない。 既にロックされたファイルに対して "
9766 "B<flock>()  を呼び出すと、既存のロックを新しいロックモードに変更することにな"
9767 "る。"
9768
9769 #. type: Plain text
9770 #: build/C/man2/flock.2:109
9771 msgid "Locks created by B<flock>()  are preserved across an B<execve>(2)."
9772 msgstr ""
9773 "B<flock>()  により作成されたロックは B<execve>(2)  の前後で保存される。"
9774
9775 #. type: Plain text
9776 #: build/C/man2/flock.2:112
9777 msgid ""
9778 "A shared or exclusive lock can be placed on a file regardless of the mode in "
9779 "which the file was opened."
9780 msgstr ""
9781 "共有ロックも排他ロックも、ファイルがどのモードでオープンされたかに 関係なく適"
9782 "用することができる。"
9783
9784 #. type: Plain text
9785 #: build/C/man2/flock.2:122
9786 msgid "I<fd> is not an open file descriptor."
9787 msgstr "I<fd> がオープンされたファイルディスクリプタではない。"
9788
9789 #. type: Plain text
9790 #: build/C/man2/flock.2:127
9791 msgid ""
9792 "While waiting to acquire a lock, the call was interrupted by delivery of a "
9793 "signal caught by a handler; see B<signal>(7)."
9794 msgstr ""
9795 "ロックの獲得を待っている間に、ハンドラにより捕捉されたシグナルを 受信し、 "
9796 "B<flock>()  が中断された。 B<signal>(7)  参照。"
9797
9798 #. type: Plain text
9799 #: build/C/man2/flock.2:131
9800 msgid "I<operation> is invalid."
9801 msgstr "I<oepration> が無効である。"
9802
9803 #. type: Plain text
9804 #: build/C/man2/flock.2:134
9805 msgid "The kernel ran out of memory for allocating lock records."
9806 msgstr "ロックレコードを割り当てるためのメモリが不足している。"
9807
9808 #. type: TP
9809 #: build/C/man2/flock.2:134
9810 #, no-wrap
9811 msgid "B<EWOULDBLOCK>"
9812 msgstr "B<EWOULDBLOCK>"
9813
9814 #. type: Plain text
9815 #: build/C/man2/flock.2:139
9816 msgid "The file is locked and the B<LOCK_NB> flag was selected."
9817 msgstr ""
9818 "指定したファイルがロックされており、 B<LOCK_NB> フラグが指定されている。"
9819
9820 #. type: Plain text
9821 #: build/C/man2/flock.2:148
9822 msgid ""
9823 "4.4BSD (the B<flock>()  call first appeared in 4.2BSD).  A version of "
9824 "B<flock>(), possibly implemented in terms of B<fcntl>(2), appears on most "
9825 "UNIX systems."
9826 msgstr ""
9827 "4.4BSD (B<flock>()  コールは 4.2BSD で最初に登場した)。 B<fcntl>(2)  で実装さ"
9828 "れているものなどを含めると、 B<flock>()  の機能はほとんどの UNIX システムで実"
9829 "装されている。"
9830
9831 #.  E.g., according to the flock(2) man page, FreeBSD since at least 5.3
9832 #. type: Plain text
9833 #: build/C/man2/flock.2:171
9834 msgid ""
9835 "Since kernel 2.0, B<flock>()  is implemented as a system call in its own "
9836 "right rather than being emulated in the GNU C library as a call to "
9837 "B<fcntl>(2).  With this implementation, there is no interaction between the "
9838 "types of lock placed by B<flock>()  and B<fcntl>(2), and B<flock>()  does "
9839 "not detect deadlock.  (Note, however, that on some systems, such as the "
9840 "modern BSDs, B<flock>()  and B<fcntl>(2)  locks I<do> interact with one "
9841 "another.)"
9842 msgstr ""
9843 "kernel 2.0 以降では、 B<flock>()  は、GNU C ライブラリでの B<fcntl>(2)  を呼"
9844 "び出してのエミュレーションではなく、 それ自体がシステムコールとして実装されて"
9845 "いる。 この実装では、 B<flock>()  と B<fcntl>(2)  で適用されるロックの種別に"
9846 "は相互作用がなくなり、 B<flock>()  がデッドロックを検出しなくなる。 (ただし、"
9847 "最近の BSD などいくつかのシステムでは、 B<flock>() と B<fcntl>(2) ロックが互"
9848 "いに影響することが「ある」という点に注意すること。)"
9849
9850 #.  commit 5eebde23223aeb0ad2d9e3be6590ff8bbfab0fc2
9851 #. type: Plain text
9852 #: build/C/man2/flock.2:202
9853 msgid ""
9854 "In Linux kernels up to 2.6.11, B<flock>()  does not lock files over NFS (i."
9855 "e., the scope of locks was limited to the local system).  Instead, one could "
9856 "use B<fcntl>(2)  byte-range locking, which does work over NFS, given a "
9857 "sufficiently recent version of Linux and a server which supports locking.  "
9858 "Since Linux 2.6.12, NFS clients support B<flock>()  locks by emulating them "
9859 "as byte-range locks on the entire file.  This means that B<fcntl>(2)  and "
9860 "B<flock>()  locks I<do> interact with one another over NFS.  Since Linux "
9861 "2.6.37, the kernel supports a compatibility mode that allows B<flock>()  "
9862 "locks (and also B<fcntl>(2)  byte region locks) to be treated as local; see "
9863 "the discussion of the I<local_lock> option in B<nfs>(5)."
9864 msgstr ""
9865 "バージョン 2.6.11 以前の Linux カーネルでは、 B<flock>() は NFS 上のファイル"
9866 "のロックを行わない (つまり、ロックの対象はローカルシステムに限定されてい"
9867 "た)。 その代わり、十分に最近のバージョンの Linux とロックをサポートするサー"
9868 "バーであれば、 B<fcntl>(2) のバイト範囲ロックを使うことができた。 "
9869 "B<fcntl>(2) のバイト範囲ロックは NFS 上で動作する。 Linux 2.6.12 以降では、"
9870 "NFS クライアントは、 ファイル全体に対するバイト範囲ロックでエミュレートするこ"
9871 "とで、 B<flock>() ロックをサポートしている。 これは、B<fcntl>(2) と "
9872 "B<flock>() ロックが NFS 上では互いに影響しあうことを意味する。 Linux 2.6.37 "
9873 "以降では、 B<flock>() ロック (と B<fcntl>(2) のバイト範囲ロック) をローカルシ"
9874 "ステムに対するものとして扱う互換性モードが、 カーネルでサポートされている。 "
9875 "B<nfs>(5) の I<local_lock> オプションの議論を参照。"
9876
9877 #. type: Plain text
9878 #: build/C/man2/flock.2:208
9879 msgid ""
9880 "B<flock>()  places advisory locks only; given suitable permissions on a "
9881 "file, a process is free to ignore the use of B<flock>()  and perform I/O on "
9882 "the file."
9883 msgstr ""
9884 "B<flock>()  アドバイザリロックだけを適用する。したがって、ファイルに適切なア"
9885 "クセス権を 付与していれば、プロセスは B<flock>()  の使用に無視して、ファイル"
9886 "への入出力を行うことができる。"
9887
9888 #. type: Plain text
9889 #: build/C/man2/flock.2:221
9890 msgid ""
9891 "B<flock>()  and B<fcntl>(2)  locks have different semantics with respect to "
9892 "forked processes and B<dup>(2).  On systems that implement B<flock>()  using "
9893 "B<fcntl>(2), the semantics of B<flock>()  will be different from those "
9894 "described in this manual page."
9895 msgstr ""
9896 "B<flock>()  と B<fcntl>(2)  は fork されたプロセスと B<dup>(2)  で違った動作"
9897 "をする。 B<flock>()  を B<fcntl>(2)  を使って実装しているシステムでは、 "
9898 "B<flock>()  の動作はこのマニュアルページに記載されているものとは違うだろう。"
9899
9900 #.  Kernel 2.5.21 changed things a little: during lock conversion
9901 #.  it is now the highest priority process that will get the lock -- mtk
9902 #. type: Plain text
9903 #: build/C/man2/flock.2:234
9904 msgid ""
9905 "Converting a lock (shared to exclusive, or vice versa) is not guaranteed to "
9906 "be atomic: the existing lock is first removed, and then a new lock is "
9907 "established.  Between these two steps, a pending lock request by another "
9908 "process may be granted, with the result that the conversion either blocks, "
9909 "or fails if B<LOCK_NB> was specified.  (This is the original BSD behavior, "
9910 "and occurs on many other implementations.)"
9911 msgstr ""
9912 "ロックの変換 (共有ロックから排他ロックへ、もしくはその反対) がアトミックに 行"
9913 "われることは保証されていない: 既存のロックがまず削除され、それから新しい ロッ"
9914 "クが設定される。この 2つのステップの間に、他のプロセスからの処理待ちの ロック"
9915 "要求が認められるかもしれず、結果として変換は停止 (block) したり、 "
9916 "(B<LOCK_NB> が指定された場合には) 失敗したりする。 (これは元々の BSD の動作で"
9917 "あり、多くの他の実装でも起こる。)"
9918
9919 #. type: Plain text
9920 #: build/C/man2/flock.2:243
9921 msgid ""
9922 "B<flock>(1), B<close>(2), B<dup>(2), B<execve>(2), B<fcntl>(2), B<fork>(2), "
9923 "B<open>(2), B<lockf>(3)"
9924 msgstr ""
9925 "B<flock>(1), B<close>(2), B<dup>(2), B<execve>(2), B<fcntl>(2), B<fork>(2), "
9926 "B<open>(2), B<lockf>(3)"
9927
9928 #. type: Plain text
9929 #: build/C/man2/flock.2:248
9930 msgid ""
9931 "I<Documentation/filesystems/locks.txt> in the Linux kernel source tree "
9932 "(I<Documentation/locks.txt> in older kernels)"
9933 msgstr ""
9934 "Linux カーネルソース内の I<Documentation/filesystems/locks.txt> (以前のカーネ"
9935 "ルでは I<Documentation/locks.txt>)"
9936
9937 #. type: TH
9938 #: build/C/man2/fork.2:39
9939 #, no-wrap
9940 msgid "FORK"
9941 msgstr "FORK"
9942
9943 #. type: TH
9944 #: build/C/man2/fork.2:39 build/C/man3/fpathconf.3:41 build/C/man2/swapon.2:42
9945 #, no-wrap
9946 msgid "2014-05-28"
9947 msgstr "2014-05-28"
9948
9949 #. type: Plain text
9950 #: build/C/man2/fork.2:42
9951 msgid "fork - create a child process"
9952 msgstr "fork - 子プロセスを生成する"
9953
9954 #. type: Plain text
9955 #: build/C/man2/fork.2:46
9956 msgid "B<pid_t fork(void);>"
9957 msgstr "B<pid_t fork(void);>"
9958
9959 #. type: Plain text
9960 #: build/C/man2/fork.2:52
9961 msgid ""
9962 "B<fork>()  creates a new process by duplicating the calling process.  The "
9963 "new process, referred to as the I<child>, is an exact duplicate of the "
9964 "calling process, referred to as the I<parent>, except for the following "
9965 "points:"
9966 msgstr ""
9967 "B<fork>()  は呼び出し元プロセスを複製して新しいプロセスを生成する。 I<child> "
9968 "で参照される新しいプロセスは、以下の点を除き、 I<parent> で参照される呼び出し"
9969 "元プロセスの完全な複製である:"
9970
9971 #. type: Plain text
9972 #: build/C/man2/fork.2:56
9973 msgid ""
9974 "The child has its own unique process ID, and this PID does not match the ID "
9975 "of any existing process group (B<setpgid>(2))."
9976 msgstr ""
9977 "子プロセスは独自のプロセス ID を持ち、 この PID は既存のどのプロセスグループ "
9978 "(B<setpgid>(2))  の ID とも一致しない。"
9979
9980 #. type: Plain text
9981 #: build/C/man2/fork.2:58
9982 msgid "The child's parent process ID is the same as the parent's process ID."
9983 msgstr "子プロセスの親プロセス ID は、親プロセスのプロセス ID と同じである。"
9984
9985 #. type: Plain text
9986 #: build/C/man2/fork.2:62
9987 msgid ""
9988 "The child does not inherit its parent's memory locks (B<mlock>(2), "
9989 "B<mlockall>(2))."
9990 msgstr ""
9991 "子プロセスは親プロセスのメモリロック (B<mlock>(2), B<mlockall>(2))  を引き継"
9992 "がない。"
9993
9994 #. type: Plain text
9995 #: build/C/man2/fork.2:68
9996 msgid ""
9997 "Process resource utilizations (B<getrusage>(2))  and CPU time counters "
9998 "(B<times>(2))  are reset to zero in the child."
9999 msgstr ""
10000 "プロセスの資源利用量 (B<getrusage>(2))  と CPU タイムカウンタ (B<times>(2))  "
10001 "が、子プロセスでは 0 にリセットされる。"
10002
10003 #. type: Plain text
10004 #: build/C/man2/fork.2:71
10005 msgid ""
10006 "The child's set of pending signals is initially empty (B<sigpending>(2))."
10007 msgstr ""
10008 "子プロセスの処理待ちのシグナルの集合 (B<sigpending>(2))  は、初期状態では空に"
10009 "なる。"
10010
10011 #. type: Plain text
10012 #: build/C/man2/fork.2:74
10013 msgid ""
10014 "The child does not inherit semaphore adjustments from its parent "
10015 "(B<semop>(2))."
10016 msgstr "子プロセスは親プロセスからセマフォ調整 (B<semop>(2))  を引き継がない。"
10017
10018 #. type: Plain text
10019 #: build/C/man2/fork.2:82
10020 msgid ""
10021 "The child does not inherit process-associated record locks from its parent "
10022 "(B<fcntl>(2)).  (On the other hand, it does inherit B<fcntl>(2)  open file "
10023 "description locks and B<flock>(2)  locks from its parent.)"
10024 msgstr ""
10025 "子プロセスは親プロセスからプロセスに関連付けられたレコードロックを引き継がな"
10026 "い (B<fcntl>(2))。 (一方、子プロセスは親プロセスから B<fcntl>(2) オープンファ"
10027 "イル記述ロックと B<flock>(2) ロックを引き継ぐ。)"
10028
10029 #. type: Plain text
10030 #: build/C/man2/fork.2:87
10031 msgid ""
10032 "The child does not inherit timers from its parent (B<setitimer>(2), "
10033 "B<alarm>(2), B<timer_create>(2))."
10034 msgstr ""
10035 "子プロセスは親プロセスからタイマー (B<setitimer>(2), B<alarm>(2), "
10036 "B<timer_create>(2))  を引き継がない。"
10037
10038 #. type: Plain text
10039 #: build/C/man2/fork.2:94
10040 msgid ""
10041 "The child does not inherit outstanding asynchronous I/O operations from its "
10042 "parent (B<aio_read>(3), B<aio_write>(3)), nor does it inherit any "
10043 "asynchronous I/O contexts from its parent (see B<io_setup>(2))."
10044 msgstr ""
10045 "子プロセスは親プロセスから主だった非同期 I/O 操作を引き継がない "
10046 "(B<aio_read>(3), B<aio_write>(3)  参照)。 また、親プロセスから非同期 I/O コン"
10047 "テキストを引き継がない (B<io_setup>(2)  参照)。"
10048
10049 #. type: Plain text
10050 #: build/C/man2/fork.2:99
10051 msgid ""
10052 "The process attributes in the preceding list are all specified in "
10053 "POSIX.1-2001.  The parent and child also differ with respect to the "
10054 "following Linux-specific process attributes:"
10055 msgstr ""
10056 "上記のリストにあるプロセス属性は、POSIX.1-2001 で全て指定されている。 親プロ"
10057 "セスと子プロセスは、以下の Linux 固有のプロセス属性も異なる:"
10058
10059 #. type: Plain text
10060 #: build/C/man2/fork.2:106
10061 msgid ""
10062 "The child does not inherit directory change notifications (dnotify)  from "
10063 "its parent (see the description of B<F_NOTIFY> in B<fcntl>(2))."
10064 msgstr ""
10065 "子プロセスは親プロセスからディレクトリ変更通知 (dnotify)  (B<fcntl>(2)  にお"
10066 "ける B<F_NOTIFY> の説明を参照) を引き継がない。"
10067
10068 #. type: Plain text
10069 #: build/C/man2/fork.2:112
10070 msgid ""
10071 "The B<prctl>(2)  B<PR_SET_PDEATHSIG> setting is reset so that the child does "
10072 "not receive a signal when its parent terminates."
10073 msgstr ""
10074 "B<prctl>(2)  の B<PR_SET_PDEATHSIG> の設定がリセットされ、子プロセスは親プロ"
10075 "セスが終了したときに シグナルを受信しない。"
10076
10077 #. type: Plain text
10078 #: build/C/man2/fork.2:119
10079 msgid ""
10080 "The default timer slack value is set to the parent's current timer slack "
10081 "value.  See the description of B<PR_SET_TIMERSLACK> in B<prctl>(2)."
10082 msgstr ""
10083 "timer slack value のデフォルト値には、親プロセスの現在の timer slack value が"
10084 "設定される。 B<prctl>(2) の B<PR_SET_TIMERSLACK> の説明を参照。"
10085
10086 #. type: Plain text
10087 #: build/C/man2/fork.2:125
10088 msgid ""
10089 "Memory mappings that have been marked with the B<madvise>(2)  "
10090 "B<MADV_DONTFORK> flag are not inherited across a B<fork>()."
10091 msgstr ""
10092 "B<madvise>(2)  の B<MADV_DONTFORK> フラグでマークされたメモリマッピングは、 "
10093 "B<fork>()  によって引き継がれない。"
10094
10095 #. type: Plain text
10096 #: build/C/man2/fork.2:130
10097 msgid ""
10098 "The termination signal of the child is always B<SIGCHLD> (see B<clone>(2))."
10099 msgstr ""
10100 "子プロセスの終了シグナルは常に B<SIGCHLD> である (B<clone>(2)  を参照)。"
10101
10102 #. type: Plain text
10103 #: build/C/man2/fork.2:136
10104 msgid ""
10105 "The port access permission bits set by B<ioperm>(2)  are not inherited by "
10106 "the child; the child must turn on any bits that it requires using "
10107 "B<ioperm>(2)."
10108 msgstr ""
10109 "B<ioperm>(2) で設定されるポートアクセス許可ビットは、子プロセスには継承されな"
10110 "い。子プロセスでは、 B<ioperm>(2) を使って必要なビットをセットしなければなら"
10111 "ない。"
10112
10113 #. type: Plain text
10114 #: build/C/man2/fork.2:147
10115 msgid ""
10116 "The child process is created with a single thread\\(emthe one that called "
10117 "B<fork>().  The entire virtual address space of the parent is replicated in "
10118 "the child, including the states of mutexes, condition variables, and other "
10119 "pthreads objects; the use of B<pthread_atfork>(3)  may be helpful for "
10120 "dealing with problems that this can cause."
10121 msgstr ""
10122 "子プロセスはシングルスレッドで生成される。つまり、 B<fork>()  を呼び出したス"
10123 "レッドとなる。 親プロセスの仮想アドレス空間全体が子プロセスに複製される。 こ"
10124 "れにはミューテックス (mutex) の状態・条件変数・ pthread オブジェクトが含まれ"
10125 "る。 これが引き起こす問題を扱うには、 B<pthread_atfork>(3)  を使うと良いだろ"
10126 "う。"
10127
10128 #. type: Plain text
10129 #: build/C/man2/fork.2:161
10130 msgid ""
10131 "The child inherits copies of the parent's set of open file descriptors.  "
10132 "Each file descriptor in the child refers to the same open file description "
10133 "(see B<open>(2))  as the corresponding file descriptor in the parent.  This "
10134 "means that the two descriptors share open file status flags, current file "
10135 "offset, and signal-driven I/O attributes (see the description of B<F_SETOWN> "
10136 "and B<F_SETSIG> in B<fcntl>(2))."
10137 msgstr ""
10138 "子プロセスは親プロセスが持つ オープンファイルディスクリプタの集合のコピーを引"
10139 "き継ぐ。 子プロセスの各ファイルディスクリプタは、 親プロセスのファイルディス"
10140 "クリプタに対応する 同じオープンファイル記述 (file description) を参照する "
10141 "(B<open>(2)  を参照)。 これは 2 つのディスクリプタが、ファイル状態フラグ・ 現"
10142 "在のファイルオフセット、シグナル駆動 (signal-driven) I/O 属性 (B<fcntl>(2)  "
10143 "における B<F_SETOWN>, B<F_SETSIG> の説明を参照) を共有することを意味する。"
10144
10145 #. type: Plain text
10146 #: build/C/man2/fork.2:170
10147 msgid ""
10148 "The child inherits copies of the parent's set of open message queue "
10149 "descriptors (see B<mq_overview>(7)).  Each descriptor in the child refers to "
10150 "the same open message queue description as the corresponding descriptor in "
10151 "the parent.  This means that the two descriptors share the same flags "
10152 "(I<mq_flags>)."
10153 msgstr ""
10154 "子プロセスは親プロセスが持つオープンメッセージキューディスクリプタ "
10155 "(B<mq_overview>(7)  を参照) の集合のコピーを引き継ぐ。 子プロセスの各ディスク"
10156 "リプタは、 親プロセスのディスクリプタに対応する 同じオープンメッセージキュー"
10157 "ディスクリプタを参照する。 これは 2 つのディスクリプタが同じフラグ "
10158 "(I<mq_flags>)  を共有することを意味する。"
10159
10160 #. type: Plain text
10161 #: build/C/man2/fork.2:178
10162 msgid ""
10163 "The child inherits copies of the parent's set of open directory streams (see "
10164 "B<opendir>(3)).  POSIX.1-2001 says that the corresponding directory streams "
10165 "in the parent and child I<may> share the directory stream positioning; on "
10166 "Linux/glibc they do not."
10167 msgstr ""
10168 "子プロセスは、親プロセスのオープン済みのディレクトリストリームの集合 "
10169 "(B<opendir>(3)  参照) のコピーを継承する。 POSIX.1-2001 では、親プロセスと子"
10170 "プロセス間の対応するディレクトリストリーム はディレクトリストリームの位置 "
10171 "(positioning) を共有してもよいとされている。 Linux/glibc ではディレクトリスト"
10172 "リームの位置の共有は行われていない。"
10173
10174 #. type: Plain text
10175 #: build/C/man2/fork.2:185
10176 msgid ""
10177 "On success, the PID of the child process is returned in the parent, and 0 is "
10178 "returned in the child.  On failure, -1 is returned in the parent, no child "
10179 "process is created, and I<errno> is set appropriately."
10180 msgstr ""
10181 "成功した場合、親プロセスには子プロセスの PID が返され、 子プロセスには 0 が返"
10182 "される。 失敗した場合、親プロセスに -1 が返され、子プロセスは生成されず、 "
10183 "I<errno> が適切に設定される。"
10184
10185 #. type: Plain text
10186 #: build/C/man2/fork.2:191
10187 msgid ""
10188 "B<fork>()  cannot allocate sufficient memory to copy the parent's page "
10189 "tables and allocate a task structure for the child."
10190 msgstr ""
10191 "親プロセスのページテーブルのコピーと 子プロセスのタスク構造に生成に必要なメモ"
10192 "リを B<fork>()  が割り当てることができなかった。"
10193
10194 #.  NOTE! The following should match the description in pthread_create(3)
10195 #. type: Plain text
10196 #: build/C/man2/fork.2:209
10197 msgid ""
10198 "A system-imposed limit on the number of threads was encountered.  There are "
10199 "a number of limits that may trigger this error: the B<RLIMIT_NPROC> soft "
10200 "resource limit (set via B<setrlimit>(2)), which limits the number of "
10201 "processes and threads for a real user ID, was reached; the kernel's system-"
10202 "wide limit on the number of processes and threads, I</proc/sys/kernel/"
10203 "threads-max>, was reached (see B<proc>(5)); or the maximum number of PIDs, "
10204 "I</proc/sys/kernel/pid_max>, was reached (see B<proc>(5))."
10205 msgstr ""
10206 "システムで設定されたスレッド数の上限に達していた。 このエラーの原因となる上限"
10207 "値はいくつかある。 実ユーザ ID 当たりのプロセス数とスレッド数の上限である、ソ"
10208 "フトリソース上限 B<RLIMIT_NPROC> に達していた (B<setrlimit>(2) で設定でき"
10209 "る)。 カーネルのシステム全体のプロセスとスレッドの上限数である I</proc/sys/"
10210 "kernel/threads-max> が達していた (B<proc>(5) 参照)。 PID の最大値 I</proc/"
10211 "sys/kernel/pid_max> に達していた (B<proc>(5) 参照)。"
10212
10213 #. type: Plain text
10214 #: build/C/man2/fork.2:216
10215 msgid ""
10216 "The caller is operating under the B<SCHED_DEADLINE> scheduling policy and "
10217 "does not have the reset-on-fork flag set.  See B<sched>(7)."
10218 msgstr ""
10219 "呼び出し元は、スケジューリングポリシー B<SCHED_DEADLINE> で動作しており、か"
10220 "つ reset-on-fork フラグがセットされていない。 B<sched>(7) 参照。"
10221
10222 #. type: Plain text
10223 #: build/C/man2/fork.2:220
10224 msgid ""
10225 "B<fork>()  failed to allocate the necessary kernel structures because memory "
10226 "is tight."
10227 msgstr ""
10228 "メモリが足りないために、 B<fork>()  は必要なカーネル構造体を割り当てることが"
10229 "できなかった。"
10230
10231 #.  e.g., arm (optionally), blackfin, c6x, frv, h8300, microblaze, xtensa
10232 #. type: Plain text
10233 #: build/C/man2/fork.2:226
10234 msgid ""
10235 "B<fork>()  is not supported on this platform (for example, hardware without "
10236 "a Memory-Management Unit)."
10237 msgstr ""
10238 "B<fork>() はこのプラットフォームではサポートされていない\n"
10239 "(例えば、メモリ管理ユニット (MMU) がないハードウェア)。"
10240
10241 #. type: Plain text
10242 #: build/C/man2/fork.2:235
10243 msgid ""
10244 "Under Linux, B<fork>()  is implemented using copy-on-write pages, so the "
10245 "only penalty that it incurs is the time and memory required to duplicate the "
10246 "parent's page tables, and to create a unique task structure for the child."
10247 msgstr ""
10248 "Linux では、 B<fork>()  を 書き込み時コピー (copy-on-write) ページを用いて実"
10249 "装している。 したがって、fork を行うことの唯一のデメリットは、 親プロセスの"
10250 "ページテーブルを複製と 子プロセス自身のタスク構造の作成のための時間とメモリが"
10251 "必要なことである。"
10252
10253 #.  nptl/sysdeps/unix/sysv/linux/fork.c
10254 #.  and does some magic to ensure that getpid(2) returns the right value.
10255 #. type: Plain text
10256 #: build/C/man2/fork.2:259
10257 msgid ""
10258 "Since version 2.3.3, rather than invoking the kernel's B<fork>()  system "
10259 "call, the glibc B<fork>()  wrapper that is provided as part of the NPTL "
10260 "threading implementation invokes B<clone>(2)  with flags that provide the "
10261 "same effect as the traditional system call.  (A call to B<fork>()  is "
10262 "equivalent to a call to B<clone>(2)  specifying I<flags> as just "
10263 "B<SIGCHLD>.)  The glibc wrapper invokes any fork handlers that have been "
10264 "established using B<pthread_atfork>(3)."
10265 msgstr ""
10266 "glibc 2.3.3 以降では、 NPTL スレッド実装の一部として提供されている\n"
10267 "glibc のB<fork>() ラッパー関数は、 カーネルの B<fork>() システムコール\n"
10268 "を起動するのではなく、B<clone>(2) を起動する。\n"
10269 "B<clone>(2) に渡すフラグとして、伝統的な B<fork>() システムコールと\n"
10270 "同じ効果が得られるようなフラグが指定される (B<fork>() の呼び出しは、\n"
10271 "I<flags> に B<SIGCHLD> だけを指定して B<clone>(2) を呼び出すのと等価であ"
10272 "る)。\n"
10273 "glibc のラッパー関数は B<pthread_atfork>(3) を使って設定されている\n"
10274 "任意の fork ハンドラを起動する。"
10275
10276 #. type: Plain text
10277 #: build/C/man2/fork.2:264
10278 msgid "See B<pipe>(2)  and B<wait>(2)."
10279 msgstr "B<pipe>(2)  および B<wait>(2)  を参照。"
10280
10281 #. type: Plain text
10282 #: build/C/man2/fork.2:275
10283 msgid ""
10284 "B<clone>(2), B<execve>(2), B<exit>(2), B<setrlimit>(2), B<unshare>(2), "
10285 "B<vfork>(2), B<wait>(2), B<daemon>(3), B<capabilities>(7), B<credentials>(7)"
10286 msgstr ""
10287 "B<clone>(2), B<execve>(2), B<exit>(2), B<setrlimit>(2), B<unshare>(2), "
10288 "B<vfork>(2), B<wait>(2), B<daemon>(3), B<capabilities>(7), B<credentials>(7)"
10289
10290 #. type: TH
10291 #: build/C/man3/fpathconf.3:41
10292 #, no-wrap
10293 msgid "FPATHCONF"
10294 msgstr "FPATHCONF"
10295
10296 #. type: Plain text
10297 #: build/C/man3/fpathconf.3:44
10298 msgid "fpathconf, pathconf - get configuration values for files"
10299 msgstr "fpathconf, pathconf - ファイルの設定値を取得する"
10300
10301 #. type: Plain text
10302 #: build/C/man3/fpathconf.3:49
10303 #, no-wrap
10304 msgid "B<long fpathconf(int >I<fd>B<, int >I<name>B<);>\n"
10305 msgstr "B<long fpathconf(int >I<fd>B<, int >I<name>B<);>\n"
10306
10307 #. type: Plain text
10308 #: build/C/man3/fpathconf.3:51
10309 #, no-wrap
10310 msgid "B<long pathconf(const char *>I<path>B<, int >I<name>B<);>\n"
10311 msgstr "B<long pathconf(const char *>I<path>B<, int >I<name>B<);>\n"
10312
10313 #. type: Plain text
10314 #: build/C/man3/fpathconf.3:58
10315 msgid ""
10316 "B<fpathconf>()  gets a value for the configuration option I<name> for the "
10317 "open file descriptor I<fd>."
10318 msgstr ""
10319 "B<fpathconf>()  はオープンされているファイルデスクリプター I<fd> に対して設定"
10320 "されているオプション I<name> の値を取得する。"
10321
10322 #. type: Plain text
10323 #: build/C/man3/fpathconf.3:64
10324 msgid ""
10325 "B<pathconf>()  gets a value for configuration option I<name> for the "
10326 "filename I<path>."
10327 msgstr ""
10328 "B<pathconf>()  はファイル名 I<path> に対して設定されているオプション I<name> "
10329 "の値を取得する。"
10330
10331 #. type: Plain text
10332 #: build/C/man3/fpathconf.3:73
10333 msgid ""
10334 "The corresponding macros defined in I<E<lt>unistd.hE<gt>> are minimum "
10335 "values; if an application wants to take advantage of values which may "
10336 "change, a call to B<fpathconf>()  or B<pathconf>()  can be made, which may "
10337 "yield more liberal results."
10338 msgstr ""
10339 "対応するマクロのうち I<E<lt>unistd.hE<gt>> で定義されているものは最小値であ"
10340 "る。アプリケーションによってはこれらの 値を変更してより有利な動作を行おうとす"
10341 "るものがある。この場合でも B<fpathconf>()  または B<pathconf>()  は呼び出すこ"
10342 "とができる。この場合はより大きな値が返ることになろう。"
10343
10344 #. type: Plain text
10345 #: build/C/man3/fpathconf.3:78
10346 msgid ""
10347 "Setting I<name> equal to one of the following constants returns the "
10348 "following configuration options:"
10349 msgstr ""
10350 "I<name> を以下の定数のどれかにすると、対応する設定オプションが返される。"
10351
10352 #. type: TP
10353 #: build/C/man3/fpathconf.3:78
10354 #, no-wrap
10355 msgid "B<_PC_LINK_MAX>"
10356 msgstr "B<_PC_LINK_MAX>"
10357
10358 #. type: Plain text
10359 #: build/C/man3/fpathconf.3:88
10360 msgid ""
10361 "returns the maximum number of links to the file.  If I<fd> or I<path> refer "
10362 "to a directory, then the value applies to the whole directory.  The "
10363 "corresponding macro is B<_POSIX_LINK_MAX>."
10364 msgstr ""
10365 "ファイルへのリンクの最大数を返す。 I<fd> または I<path> がディレクトリの場合"
10366 "は、この値はディレクトリ全体に適用される。対応する マクロは "
10367 "B<_POSIX_LINK_MAX> である。"
10368
10369 #. type: TP
10370 #: build/C/man3/fpathconf.3:88
10371 #, no-wrap
10372 msgid "B<_PC_MAX_CANON>"
10373 msgstr "B<_PC_MAX_CANON>"
10374
10375 #. type: Plain text
10376 #: build/C/man3/fpathconf.3:97
10377 msgid ""
10378 "returns the maximum length of a formatted input line, where I<fd> or I<path> "
10379 "must refer to a terminal.  The corresponding macro is B<_POSIX_MAX_CANON>."
10380 msgstr ""
10381 "フォーマット付き入力行の最大長を返す。このとき I<fd> または I<path> は端末を"
10382 "参照していなければならない。 対応するマクロは B<_POSIX_MAX_CANON> である。"
10383
10384 #. type: TP
10385 #: build/C/man3/fpathconf.3:97
10386 #, no-wrap
10387 msgid "B<_PC_MAX_INPUT>"
10388 msgstr "B<_PC_MAX_INPUT>"
10389
10390 #. type: Plain text
10391 #: build/C/man3/fpathconf.3:106
10392 msgid ""
10393 "returns the maximum length of an input line, where I<fd> or I<path> must "
10394 "refer to a terminal.  The corresponding macro is B<_POSIX_MAX_INPUT>."
10395 msgstr ""
10396 "入力行の最大長を返す。このとき I<fd> または I<path> は端末を参照していなけれ"
10397 "ばならない。 対応するマクロは B<_POSIX_MAX_INPUT> である。"
10398
10399 #. type: TP
10400 #: build/C/man3/fpathconf.3:106
10401 #, no-wrap
10402 msgid "B<_PC_NAME_MAX>"
10403 msgstr "B<_PC_NAME_MAX>"
10404
10405 #. type: Plain text
10406 #: build/C/man3/fpathconf.3:115
10407 msgid ""
10408 "returns the maximum length of a filename in the directory I<path> or I<fd> "
10409 "that the process is allowed to create.  The corresponding macro is "
10410 "B<_POSIX_NAME_MAX>."
10411 msgstr ""
10412 "ディレクトリ I<path> または I<fd> 内に、そのプロセスが作成することができる"
10413 "ファイル名の最大長を返す。 対応するマクロは B<_POSIX_NAME_MAX> である。"
10414
10415 #. type: TP
10416 #: build/C/man3/fpathconf.3:115
10417 #, no-wrap
10418 msgid "B<_PC_PATH_MAX>"
10419 msgstr "B<_PC_PATH_MAX>"
10420
10421 #. type: Plain text
10422 #: build/C/man3/fpathconf.3:124
10423 msgid ""
10424 "returns the maximum length of a relative pathname when I<path> or I<fd> is "
10425 "the current working directory.  The corresponding macro is "
10426 "B<_POSIX_PATH_MAX>."
10427 msgstr ""
10428 "I<path> または I<fd> がカレントディレクトリの場合、相対パス名の最大長を返"
10429 "す。 対応するマクロは B<_POSIX_PATH_MAX> である。"
10430
10431 #. type: TP
10432 #: build/C/man3/fpathconf.3:124
10433 #, no-wrap
10434 msgid "B<_PC_PIPE_BUF>"
10435 msgstr "B<_PC_PIPE_BUF>"
10436
10437 #. type: Plain text
10438 #: build/C/man3/fpathconf.3:133
10439 msgid ""
10440 "returns the size of the pipe buffer, where I<fd> must refer to a pipe or "
10441 "FIFO and I<path> must refer to a FIFO.  The corresponding macro is "
10442 "B<_POSIX_PIPE_BUF>."
10443 msgstr ""
10444 "パイプ (pipe) バッファのサイズを返す。このとき I<fd> はパイプか FIFO を参照し"
10445 "ていなければならず、 I<path> は FIFO を参照していなければならない。 対応する"
10446 "マクロは B<_POSIX_PIPE_BUF> である。"
10447
10448 #. type: TP
10449 #: build/C/man3/fpathconf.3:133
10450 #, no-wrap
10451 msgid "B<_PC_CHOWN_RESTRICTED>"
10452 msgstr "B<_PC_CHOWN_RESTRICTED>"
10453
10454 #. type: Plain text
10455 #: build/C/man3/fpathconf.3:146
10456 msgid ""
10457 "returns nonzero if the B<chown>(2)  call may not be used on this file.  If "
10458 "I<fd> or I<path> refer to a directory, then this applies to all files in "
10459 "that directory.  The corresponding macro is B<_POSIX_CHOWN_RESTRICTED>."
10460 msgstr ""
10461 "このファイルに対する B<chown>(2)  の呼び出しが許されていない場合には 0 以外の"
10462 "値を返す。 I<fd> または I<path> がディレクトリを参照している場合は、この制限"
10463 "はそのディレクトリのすべて のファイルに適用される。 対応するマクロは "
10464 "B<_POSIX_CHOWN_RESTRICTED> である。"
10465
10466 #. type: TP
10467 #: build/C/man3/fpathconf.3:146
10468 #, no-wrap
10469 msgid "B<_PC_NO_TRUNC>"
10470 msgstr "B<_PC_NO_TRUNC>"
10471
10472 #. type: Plain text
10473 #: build/C/man3/fpathconf.3:153
10474 msgid ""
10475 "returns nonzero if accessing filenames longer than B<_POSIX_NAME_MAX> "
10476 "generates an error.  The corresponding macro is B<_POSIX_NO_TRUNC>."
10477 msgstr ""
10478 "アクセス中のファイル名が B<_POSIX_NAME_MAX> よりも長く、エラーとなる場合には "
10479 "0 以外の値を返す。 対応するマクロは B<_POSIX_NAME_MAX> である。"
10480
10481 #. type: TP
10482 #: build/C/man3/fpathconf.3:153
10483 #, no-wrap
10484 msgid "B<_PC_VDISABLE>"
10485 msgstr "B<_PC_VDISABLE>"
10486
10487 #. type: Plain text
10488 #: build/C/man3/fpathconf.3:160
10489 msgid ""
10490 "returns nonzero if special character processing can be disabled, where I<fd> "
10491 "or I<path> must refer to a terminal."
10492 msgstr ""
10493 "特殊文字 (special character) の処理が許されていない場合は 0 以外の値を 返す。"
10494 "このとき I<fd> または I<path> は端末を参照していなければならない。"
10495
10496 #. type: Plain text
10497 #: build/C/man3/fpathconf.3:169
10498 msgid ""
10499 "The limit is returned, if one exists.  If the system does not have a limit "
10500 "for the requested resource, -1 is returned, and I<errno> is unchanged.  If "
10501 "there is an error, -1 is returned, and I<errno> is set to reflect the nature "
10502 "of the error."
10503 msgstr ""
10504 "(存在していれば) 制限値が返される。要求されたリソースへのシステムの制 限が存"
10505 "在していなければ -1 が返され、 I<errno> は変更されない。エラーが起こった場合"
10506 "には -1 が返され、 I<errno> がエラーに対応した値に設定される。"
10507
10508 #. type: Plain text
10509 #: build/C/man3/fpathconf.3:177
10510 msgid ""
10511 "Files with name lengths longer than the value returned for I<name> equal to "
10512 "B<_PC_NAME_MAX> may exist in the given directory."
10513 msgstr ""
10514 "I<name> に B<_PC_NAME_MAX> を入れて返された値よりも長いファイル名を持つファイ"
10515 "ルが、与えられたディ レクトリに存在するかもしれない。"
10516
10517 #. type: Plain text
10518 #: build/C/man3/fpathconf.3:180 build/C/man3/sysconf.3:338
10519 msgid ""
10520 "Some returned values may be huge; they are not suitable for allocating "
10521 "memory."
10522 msgstr ""
10523 "いくつかの返り値はとても大きくなることがある。これらを使って メモリの割り当て"
10524 "を行うのは適当ではない。"
10525
10526 #. type: Plain text
10527 #: build/C/man3/fpathconf.3:186
10528 msgid "B<getconf>(1), B<open>(2), B<statfs>(2), B<confstr>(3), B<sysconf>(3)"
10529 msgstr "B<getconf>(1), B<open>(2), B<statfs>(2), B<confstr>(3), B<sysconf>(3)"
10530
10531 #. type: TH
10532 #: build/C/man2/fsync.2:38
10533 #, no-wrap
10534 msgid "FSYNC"
10535 msgstr "FSYNC"
10536
10537 #. type: Plain text
10538 #: build/C/man2/fsync.2:41
10539 msgid ""
10540 "fsync, fdatasync - synchronize a file's in-core state with storage device"
10541 msgstr ""
10542 "fsync - メモリ上にあるファイルの内容をストレージデバイス上のものと同期させる"
10543
10544 #. type: Plain text
10545 #: build/C/man2/fsync.2:45
10546 msgid "B<int fsync(int >I<fd>B<);>"
10547 msgstr "B<int fsync(int >I<fd>B<);>"
10548
10549 #. type: Plain text
10550 #: build/C/man2/fsync.2:47
10551 msgid "B<int fdatasync(int >I<fd>B<);>"
10552 msgstr "B<int fdatasync(int >I<fd>B<);>"
10553
10554 #. type: Plain text
10555 #: build/C/man2/fsync.2:55
10556 msgid "B<fsync>(): _BSD_SOURCE || _XOPEN_SOURCE"
10557 msgstr "B<fsync>(): _BSD_SOURCE || _XOPEN_SOURCE"
10558
10559 #.  _POSIX_C_SOURCE\ >=\ 200112L only since glibc 2.8
10560 #. type: Plain text
10561 #: build/C/man2/fsync.2:58
10562 #, no-wrap
10563 msgid "         || /* since glibc 2.8: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L\n"
10564 msgstr "         || /* glibc 2.8 以降では: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L\n"
10565
10566 #. type: Plain text
10567 #: build/C/man2/fsync.2:61
10568 msgid ""
10569 "B<fdatasync>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L || _XOPEN_SOURCE\\ E<gt>="
10570 "\\ 500"
10571 msgstr ""
10572 "B<fdatasync>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L || _XOPEN_SOURCE\\ E<gt>="
10573 "\\ 500"
10574
10575 #. type: Plain text
10576 #: build/C/man2/fsync.2:74
10577 msgid ""
10578 "B<fsync>()  transfers (\"flushes\") all modified in-core data of (i.e., "
10579 "modified buffer cache pages for) the file referred to by the file descriptor "
10580 "I<fd> to the disk device (or other permanent storage device) so that all "
10581 "changed information can be retrieved even after the system crashed or was "
10582 "rebooted.  This includes writing through or flushing a disk cache if "
10583 "present.  The call blocks until the device reports that the transfer has "
10584 "completed.  It also flushes metadata information associated with the file "
10585 "(see B<stat>(2))."
10586 msgstr ""
10587 "B<fsync>() は、ファイル記述子 I<fd> で参照されるファイルの、メモリ内で存在"
10588 "す\n"
10589 "る修正されたデータ (つまり修正されたバッファキャッシュページ) を、ディスク"
10590 "デ\n"
10591 "バイス(またはその他の永続ストレージデバイス) に転送 (「フラッシュ」) し、こ"
10592 "れ\n"
10593 "により、システムがクラッシュしたり、再起動された後も、変更された全ての情報"
10594 "が\n"
10595 "取り出せるようになる。「フラッシュ」には、ライトスルー (write through) や\n"
10596 "(存在する場合には) ディスクキャッシュのフラッシュも含まれる。この呼び出しは\n"
10597 "転送が終わったとデバイスが報告するまでブロックする。またファイルに結びつい"
10598 "た\n"
10599 "メタデータ情報 (B<stat>(2) 参照) もフラッシュする。"
10600
10601 #. type: Plain text
10602 #: build/C/man2/fsync.2:82
10603 msgid ""
10604 "Calling B<fsync>()  does not necessarily ensure that the entry in the "
10605 "directory containing the file has also reached disk.  For that an explicit "
10606 "B<fsync>()  on a file descriptor for the directory is also needed."
10607 msgstr ""
10608 "B<fsync>()  の呼び出しは、ファイルが存在しているディレクトリのエントリがディ"
10609 "スクへ 書き込まれたことを保証するわけではない。 保証するためには明示的にその"
10610 "ディレクトリのファイル記述子に対しても B<fsync>()  する必要がある。"
10611
10612 #. type: Plain text
10613 #: build/C/man2/fsync.2:103
10614 msgid ""
10615 "B<fdatasync>()  is similar to B<fsync>(), but does not flush modified "
10616 "metadata unless that metadata is needed in order to allow a subsequent data "
10617 "retrieval to be correctly handled.  For example, changes to I<st_atime> or "
10618 "I<st_mtime> (respectively, time of last access and time of last "
10619 "modification; see B<stat>(2))  do not require flushing because they are not "
10620 "necessary for a subsequent data read to be handled correctly.  On the other "
10621 "hand, a change to the file size (I<st_size>, as made by say "
10622 "B<ftruncate>(2)), would require a metadata flush."
10623 msgstr ""
10624 "B<fdatasync>()  は B<fsync>()  と同様であるが、メタデータの扱いが異なる。 "
10625 "B<fdatasync>()  は、それ以降のデータ読み込みを正しく扱うためにそのメタデータ"
10626 "が必要に ならない限り、変更されたメタデータをフラッシュしない。 例えば、 "
10627 "st_atime や st_mtime (それぞれ最終アクセス時刻、最終修正時刻; B<stat>(2)  参"
10628 "照) の変更はフラッシュを必要としない。 なぜならこれらはそれ以降のデータ読み込"
10629 "みを正しく扱うために 必要ではないからである。 一方、ファイルサイズ "
10630 "(B<ftruncate>(2)  では I<st_size>)  の変更はメタデータのフラッシュが必要であ"
10631 "る。"
10632
10633 #. type: Plain text
10634 #: build/C/man2/fsync.2:108
10635 msgid ""
10636 "The aim of B<fdatasync>()  is to reduce disk activity for applications that "
10637 "do not require all metadata to be synchronized with the disk."
10638 msgstr ""
10639 "B<fdatasync>()  の狙いは、全てのメタデータをディスクと同期する必要のない アプ"
10640 "リケーションに対して、ディスクアクセスを減らすことである。"
10641
10642 #. type: Plain text
10643 #: build/C/man2/fsync.2:113
10644 msgid ""
10645 "On success, these system calls return zero.  On error, -1 is returned, and "
10646 "I<errno> is set appropriately."
10647 msgstr ""
10648 "成功した場合、これらのシステムコールはゼロを返す。 エラーの場合、-1 が返さ"
10649 "れ、 I<errno> が適切に設定される。"
10650
10651 #. type: Plain text
10652 #: build/C/man2/fsync.2:118
10653 msgid "I<fd> is not a valid open file descriptor."
10654 msgstr "I<fd> が有効なオープンされたディスクリプタでない。"
10655
10656 #. type: Plain text
10657 #: build/C/man2/fsync.2:121
10658 msgid "An error occurred during synchronization."
10659 msgstr "同期操作の間にエラーが発生した。"
10660
10661 #. type: TP
10662 #: build/C/man2/fsync.2:121
10663 #, no-wrap
10664 msgid "B<EROFS>, B<EINVAL>"
10665 msgstr "B<EROFS>, B<EINVAL>"
10666
10667 #. type: Plain text
10668 #: build/C/man2/fsync.2:125
10669 msgid ""
10670 "I<fd> is bound to a special file which does not support synchronization."
10671 msgstr "I<fd> が同期操作をサポートしてない特殊なファイルを参照している。"
10672
10673 #. type: Plain text
10674 #: build/C/man2/fsync.2:127
10675 msgid "4.3BSD, POSIX.1-2001."
10676 msgstr "4.3BSD, POSIX.1-2001."
10677
10678 #. type: SH
10679 #: build/C/man2/fsync.2:127
10680 #, no-wrap
10681 msgid "AVAILABILITY"
10682 msgstr "可用性"
10683
10684 #.  POSIX.1-2001: It shall be defined to -1 or 0 or 200112L.
10685 #.  -1: unavailable, 0: ask using sysconf().
10686 #.  glibc defines them to 1.
10687 #. type: Plain text
10688 #: build/C/man2/fsync.2:140
10689 msgid ""
10690 "On POSIX systems on which B<fdatasync>()  is available, "
10691 "B<_POSIX_SYNCHRONIZED_IO> is defined in I<E<lt>unistd.hE<gt>> to a value "
10692 "greater than 0.  (See also B<sysconf>(3).)"
10693 msgstr ""
10694 "B<fdatasync>()  が利用可能な POSIX システムでは、 B<_POSIX_SYNCHRONIZED_IO> "
10695 "が I<E<lt>unistd.hE<gt>> で 0 より大きな値に定義される (B<sysconf>(3)  参"
10696 "照)。"
10697
10698 #. type: Plain text
10699 #: build/C/man2/fsync.2:146
10700 msgid ""
10701 "On some UNIX systems (but not Linux), I<fd> must be a I<writable> file "
10702 "descriptor."
10703 msgstr ""
10704 "(Linux はそうではないが) いくつかの UNIX システムでは\n"
10705 "I<fd> がI<書き込み可能な>ファイルディスクリプタでなければならない。"
10706
10707 #. type: Plain text
10708 #: build/C/man2/fsync.2:152
10709 msgid ""
10710 "In Linux 2.2 and earlier, B<fdatasync>()  is equivalent to B<fsync>(), and "
10711 "so has no performance advantage."
10712 msgstr ""
10713 "Linux 2.2 以前では、 B<fdatasync>()  は B<fsync>()  と等価であり、性能面での"
10714 "メリットはない。"
10715
10716 #. type: Plain text
10717 #: build/C/man2/fsync.2:162
10718 msgid ""
10719 "The B<fsync>()  implementations in older kernels and lesser used filesystems "
10720 "does not know how to flush disk caches.  In these cases disk caches need to "
10721 "be disabled using B<hdparm>(8)  or B<sdparm>(8)  to guarantee safe operation."
10722 msgstr ""
10723 "古いカーネルやあまり使われていないファイルシステムの B<fsync>() の実装で"
10724 "は、\n"
10725 "ディスクキャッシュをフラッシュする方法が分からない場合がある。そのような場"
10726 "合\n"
10727 "には、安全に操作が行われることを保証するため、B<hdparm>(8) や B<sdparm>(8) "
10728 "を\n"
10729 "使ってディスクキャッシュを無効にする必要がある。"
10730
10731 #. type: Plain text
10732 #: build/C/man2/fsync.2:170
10733 msgid ""
10734 "B<bdflush>(2), B<open>(2), B<sync>(2), B<sync_file_range>(2), B<hdparm>(8), "
10735 "B<mount>(8), B<sync>(1)"
10736 msgstr ""
10737 "B<bdflush>(2), B<open>(2), B<sync>(2), B<sync_file_range>(2), B<hdparm>(8), "
10738 "B<mount>(8), B<sync>(1)"
10739
10740 #. type: TH
10741 #: build/C/man3/get_nprocs_conf.3:26
10742 #, no-wrap
10743 msgid "GET_NPROCS"
10744 msgstr "GET_NPROCS"
10745
10746 #. type: TH
10747 #: build/C/man3/get_nprocs_conf.3:26
10748 #, no-wrap
10749 msgid "2012-03-20"
10750 msgstr "2012-03-20"
10751
10752 #. type: Plain text
10753 #: build/C/man3/get_nprocs_conf.3:29
10754 msgid "get_nprocs, get_nprocs_conf - get number of processors"
10755 msgstr "get_nprocs, get_nprocs_conf - プロセッサ数を取得する"
10756
10757 #. type: Plain text
10758 #: build/C/man3/get_nprocs_conf.3:31 build/C/man2/sysinfo.2:19
10759 msgid "B<#include E<lt>sys/sysinfo.hE<gt>>"
10760 msgstr "B<#include E<lt>sys/sysinfo.hE<gt>>"
10761
10762 #. type: Plain text
10763 #: build/C/man3/get_nprocs_conf.3:33
10764 msgid "B<int get_nprocs(void);>"
10765 msgstr "B<int get_nprocs(void);>"
10766
10767 #. type: Plain text
10768 #: build/C/man3/get_nprocs_conf.3:35
10769 msgid "B<int get_nprocs_conf(void);>"
10770 msgstr "B<int get_nprocs_conf(void);>"
10771
10772 #. type: Plain text
10773 #: build/C/man3/get_nprocs_conf.3:39
10774 msgid ""
10775 "The function B<get_nprocs_conf>()  returns the number of processors "
10776 "configured by the operating system."
10777 msgstr ""
10778 "B<get_nprocs_conf>() 関数は、オペレーティングシステムで\n"
10779 "設定されているプロセッサ数を返す。"
10780
10781 #. type: Plain text
10782 #: build/C/man3/get_nprocs_conf.3:46
10783 msgid ""
10784 "The function B<get_nprocs>()  returns the number of processors currently "
10785 "available in the system.  This may be less than the number returned by "
10786 "B<get_nprocs_conf>()  because processors may be offline (e.g., on "
10787 "hotpluggable systems)."
10788 msgstr ""
10789 "B<get_nprocs>() 関数は、システムで現在利用可能なプロセッサ数を返す。\n"
10790 "(例えば、ホットプラグが可能なシステムでは)\n"
10791 "オフラインになっているプロセッサがある場合があるので、\n"
10792 "この数は B<get_nprocs_conf>() が返す数より小さい場合がある。"
10793
10794 #. type: Plain text
10795 #: build/C/man3/get_nprocs_conf.3:48
10796 msgid "As given in DESCRIPTION."
10797 msgstr "「説明」の節で説明した通りである。"
10798
10799 #. type: Plain text
10800 #: build/C/man3/get_nprocs_conf.3:50 build/C/man3/getopt.3:350
10801 msgid "These functions are GNU extensions."
10802 msgstr "これらの関数は GNU による拡張である。"
10803
10804 #.  glibc 2.15
10805 #. type: Plain text
10806 #: build/C/man3/get_nprocs_conf.3:57
10807 msgid ""
10808 "The current implementation of these functions is rather expensive, since "
10809 "they open and parse files in the I</sys> filesystem each time they are "
10810 "called."
10811 msgstr ""
10812 "これらの関数の現在の実装はかなりコストがかかる実装になっている。\n"
10813 "関数が呼ばれる度に I</sys> ファイルシステム内のファイルをオープンして\n"
10814 "解析するようになっているからである。"
10815
10816 #. type: Plain text
10817 #: build/C/man3/get_nprocs_conf.3:62
10818 msgid ""
10819 "The following B<sysconf>(3)  calls make use of the functions documented on "
10820 "this page to return the same information."
10821 msgstr ""
10822 "以下の B<sysconf>(3) の呼び出しで、このページに書かれている関数を使った\n"
10823 "場合に返されるのと同じ情報を得ることができる。"
10824
10825 #. type: Plain text
10826 #: build/C/man3/get_nprocs_conf.3:66
10827 #, no-wrap
10828 msgid ""
10829 "    np = sysconf(_SC_NPROCESSORS_CONF);     /* processors configured */\n"
10830 "    np = sysconf(_SC_NPROCESSORS_ONLN);     /* processors available */\n"
10831 msgstr ""
10832 "    np = sysconf(_SC_NPROCESSORS_CONF);     /* processors configured */\n"
10833 "    np = sysconf(_SC_NPROCESSORS_ONLN);     /* processors available */\n"
10834
10835 #. type: Plain text
10836 #: build/C/man3/get_nprocs_conf.3:73
10837 msgid ""
10838 "The following example shows how B<get_nprocs>()  and B<get_nprocs_conf>()  "
10839 "can be used."
10840 msgstr ""
10841 "以下の例は、 B<get_nprocs>() と B<get_nprocs_conf>() が\n"
10842 "どのように利用できるかを示すものである。"
10843
10844 #. type: Plain text
10845 #: build/C/man3/get_nprocs_conf.3:77
10846 #, no-wrap
10847 msgid ""
10848 "#include E<lt>stdio.hE<gt>\n"
10849 "#include E<lt>sys/sysinfo.hE<gt>\n"
10850 msgstr ""
10851 "#include E<lt>stdio.hE<gt>\n"
10852 "#include E<lt>sys/sysinfo.hE<gt>\n"
10853
10854 #. type: Plain text
10855 #: build/C/man3/get_nprocs_conf.3:86
10856 #, no-wrap
10857 msgid ""
10858 "int\n"
10859 "main(int argc, char *argv[])\n"
10860 "{\n"
10861 "    printf(\"This system has %d processors configured and \"\n"
10862 "            \"%d processors available.\\en\",\n"
10863 "            get_nprocs_conf(), get_nprocs());\n"
10864 "    return 0;\n"
10865 "}\n"
10866 msgstr ""
10867 "int\n"
10868 "main(int argc, char *argv[])\n"
10869 "{\n"
10870 "    printf(\"This system has %d processors configured and \"\n"
10871 "            \"%d processors available.\\en\",\n"
10872 "            get_nprocs_conf(), get_nprocs());\n"
10873 "    return 0;\n"
10874 "}\n"
10875
10876 #. type: TH
10877 #: build/C/man2/get_thread_area.2:8
10878 #, no-wrap
10879 msgid "GET_THREAD_AREA"
10880 msgstr "GET_THREAD_AREA"
10881
10882 #. type: TH
10883 #: build/C/man2/get_thread_area.2:8 build/C/man2/set_thread_area.2:8
10884 #, no-wrap
10885 msgid "2012-07-13"
10886 msgstr "2012-07-13"
10887
10888 #. type: Plain text
10889 #: build/C/man2/get_thread_area.2:11
10890 msgid "get_thread_area - get a thread-local storage (TLS) area"
10891 msgstr "get_thread_area - スレッド局所記憶 (TLS) 領域を取り出す"
10892
10893 #. type: Plain text
10894 #: build/C/man2/get_thread_area.2:15 build/C/man2/set_thread_area.2:15
10895 msgid "B<#include E<lt>asm/ldt.hE<gt>>"
10896 msgstr "B<#include E<lt>asm/ldt.hE<gt>>"
10897
10898 #. type: Plain text
10899 #: build/C/man2/get_thread_area.2:17
10900 msgid "B<int get_thread_area(struct user_desc *>I<u_info>B<);>"
10901 msgstr "B<int get_thread_area(struct user_desc *>I<u_info>B<);>"
10902
10903 #. type: Plain text
10904 #: build/C/man2/get_thread_area.2:20 build/C/man2/gettid.2:38
10905 #: build/C/man2/set_thread_area.2:20 build/C/man2/sysctl.2:44
10906 msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
10907 msgstr ""
10908 "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節"
10909 "を参照。"
10910
10911 #. type: Plain text
10912 #: build/C/man2/get_thread_area.2:29
10913 msgid ""
10914 "B<get_thread_area>()  returns an entry in the current thread's thread-local "
10915 "storage (TLS) array.  The index of the entry corresponds to the value of "
10916 "I<u_info-E<gt>entry_number>, passed in by the user.  If the value is in "
10917 "bounds, B<get_thread_area>()  copies the corresponding TLS entry into the "
10918 "area pointed to by I<u_info>."
10919 msgstr ""
10920 "B<get_thread_area>()  は、カレントスレッドのスレッド局所記憶 (thread-local "
10921 "storage; TLS) 配列の中のエントリを返す。 エントリのインデックスは、ユーザから"
10922 "引き数として渡される I<u_info-E<gt>entry_number> の値に対応している。 値が範"
10923 "囲内にある場合、 B<get_thread_info>()  は対応する TLS エントリを I<u_info> で"
10924 "指された領域にコピーする。"
10925
10926 #. type: Plain text
10927 #: build/C/man2/get_thread_area.2:35
10928 msgid ""
10929 "B<get_thread_area>()  returns 0 on success.  Otherwise, it returns -1 and "
10930 "sets I<errno> appropriately."
10931 msgstr ""
10932 "成功した場合、 B<get_thread_area>()  は 0 を返す。 そうでない場合、 -1 を返"
10933 "し、 I<errno> に適切な値をセットする。"
10934
10935 #. type: Plain text
10936 #: build/C/man2/get_thread_area.2:39 build/C/man2/set_thread_area.2:56
10937 msgid "I<u_info> is an invalid pointer."
10938 msgstr "I<u_info> が不正なポインタである。"
10939
10940 #. type: Plain text
10941 #: build/C/man2/get_thread_area.2:42 build/C/man2/set_thread_area.2:53
10942 msgid "I<u_info-E<gt>entry_number> is out of bounds."
10943 msgstr "I<u_info-E<gt>entry_number> が範囲外である。"
10944
10945 #. type: Plain text
10946 #: build/C/man2/get_thread_area.2:46
10947 msgid "A version of B<get_thread_area>()  first appeared in Linux 2.5.32."
10948 msgstr "B<get_thread_area>()  は Linux 2.5.32 で初めて登場した。"
10949
10950 #. type: Plain text
10951 #: build/C/man2/get_thread_area.2:50
10952 msgid ""
10953 "B<get_thread_area>()  is Linux-specific and should not be used in programs "
10954 "that are intended to be portable."
10955 msgstr ""
10956 "B<get_thread_area>()  は Linux 独自の関数であり、 移植を意図したプログラムで"
10957 "は使用すべきではない。"
10958
10959 #. type: Plain text
10960 #: build/C/man2/get_thread_area.2:55
10961 msgid ""
10962 "Glibc does not provide a wrapper for this system call, since it is generally "
10963 "intended for use only by threading libraries.  In the unlikely event that "
10964 "you want to call it directly, use B<syscall>(2)."
10965 msgstr ""
10966 "このシステムコールは通常はスレッドライブラリでのみ使用されることを目的として"
10967 "用意されているため、 glibc はこのシステムコールに対するラッパー関数を提供して"
10968 "いない。おそらくないと思うが、このシステムコールを直接呼び出したい場合は "
10969 "B<syscall>(2) を使うこと。"
10970
10971 #. type: Plain text
10972 #: build/C/man2/get_thread_area.2:58
10973 msgid "B<modify_ldt>(2), B<set_thread_area>(2)"
10974 msgstr "B<modify_ldt>(2), B<set_thread_area>(2)"
10975
10976 #. type: TH
10977 #: build/C/man3/getcwd.3:32
10978 #, no-wrap
10979 msgid "GETCWD"
10980 msgstr "GETCWD"
10981
10982 #. type: Plain text
10983 #: build/C/man3/getcwd.3:35
10984 msgid "getcwd, getwd, get_current_dir_name - get current working directory"
10985 msgstr ""
10986 "getcwd, getwd, get_current_dir_name - カレントワーキングディレクトリ名の取得"
10987
10988 #. type: Plain text
10989 #: build/C/man3/getcwd.3:40
10990 #, no-wrap
10991 msgid "B<char *getcwd(char *>I<buf>B<, size_t >I<size>B<);>\n"
10992 msgstr "B<char *getcwd(char *>I<buf>B<, size_t >I<size>B<);>\n"
10993
10994 #. type: Plain text
10995 #: build/C/man3/getcwd.3:42
10996 #, no-wrap
10997 msgid "B<char *getwd(char *>I<buf>B<);>\n"
10998 msgstr "B<char *getwd(char *>I<buf>B<);>\n"
10999
11000 #. type: Plain text
11001 #: build/C/man3/getcwd.3:44
11002 #, no-wrap
11003 msgid "B<char *get_current_dir_name(void);>\n"
11004 msgstr "B<char *get_current_dir_name(void);>\n"
11005
11006 #. type: Plain text
11007 #: build/C/man3/getcwd.3:52
11008 msgid "B<get_current_dir_name>():"
11009 msgstr "B<get_current_dir_name>():"
11010
11011 #. type: Plain text
11012 #: build/C/man3/getcwd.3:57
11013 msgid "B<getwd>():"
11014 msgstr "B<getwd>():"
11015
11016 #. type: Plain text
11017 #: build/C/man3/getcwd.3:67 build/C/man3/ualarm.3:50 build/C/man3/usleep.3:59
11018 #: build/C/man2/vfork.2:54
11019 #, no-wrap
11020 msgid ""
11021 "_BSD_SOURCE ||\n"
11022 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
11023 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
11024 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)\n"
11025 msgstr ""
11026 "_BSD_SOURCE ||\n"
11027 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
11028 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
11029 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)\n"
11030
11031 #. type: Plain text
11032 #: build/C/man3/getcwd.3:72 build/C/man3/getdtablesize.3:54
11033 #: build/C/man2/getpagesize.2:52 build/C/man3/ualarm.3:55
11034 #: build/C/man3/usleep.3:64 build/C/man2/vfork.2:59
11035 msgid ""
11036 "Before glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
11037 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
11038 msgstr ""
11039 "glibc 2.12 より前: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
11040 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
11041
11042 #. type: Plain text
11043 #: build/C/man3/getcwd.3:82
11044 msgid ""
11045 "These functions return a null-terminated string containing an absolute "
11046 "pathname that is the current working directory of the calling process.  The "
11047 "pathname is returned as the function result and via the argument I<buf>, if "
11048 "present."
11049 msgstr ""
11050 "これらの関数は、呼び出したプロセスのカレントワーキングディレクトリの 絶対パス"
11051 "名 (absolute pathname) が入った文字列を返す。 返される文字列はヌルで終端され"
11052 "る。 パス名は関数の結果として返され、引数 I<buf> がある場合は I<buf> 経由でも"
11053 "返される。"
11054
11055 #. type: Plain text
11056 #: build/C/man3/getcwd.3:90
11057 msgid ""
11058 "The B<getcwd>()  function copies an absolute pathname of the current working "
11059 "directory to the array pointed to by I<buf>, which is of length I<size>."
11060 msgstr ""
11061 "B<getcwd>()  関数はカレントワーキングディレクトリの絶対パス名を I<buf> で示さ"
11062 "れた I<size> 長の配列にコピーする。"
11063
11064 #. type: Plain text
11065 #: build/C/man3/getcwd.3:100
11066 msgid ""
11067 "If the length of the absolute pathname of the current working directory, "
11068 "including the terminating null byte, exceeds I<size> bytes, NULL is "
11069 "returned, and I<errno> is set to B<ERANGE>; an application should check for "
11070 "this error, and allocate a larger buffer if necessary."
11071 msgstr ""
11072 "終端のヌルバイトも含めた、カレントワーキングディレクトリの 絶対パス名の長さ"
11073 "が I<size> バイトを超えている場合は、返り値として NULL が返り I<errno> に "
11074 "B<ERANGE> がセットされる。 アプリケーションはこのエラーをチェックし、 必要に"
11075 "応じてより長いバッファを用意すべきである。"
11076
11077 #. type: Plain text
11078 #: build/C/man3/getcwd.3:118
11079 msgid ""
11080 "As an extension to the POSIX.1-2001 standard, glibc's B<getcwd>()  allocates "
11081 "the buffer dynamically using B<malloc>(3)  if I<buf> is NULL.  In this case, "
11082 "the allocated buffer has the length I<size> unless I<size> is zero, when "
11083 "I<buf> is allocated as big as necessary.  The caller should B<free>(3)  the "
11084 "returned buffer."
11085 msgstr ""
11086 "POSIX.1-2001 標準の拡張として、 glibc では I<buf> が NULL の場合、 "
11087 "B<getcwd>()  は必要なバッファを B<malloc>(3)  を用いて動的に割り当てる。 この"
11088 "場合、 I<size> が 0 の場合を除き、バッファの長さは I<size> となる。 I<size> "
11089 "が 0 の場合には必要な大きさが確保される。 呼び出し側で、返されたバッファを "
11090 "B<free>(3)  すべきである。"
11091
11092 #. type: Plain text
11093 #: build/C/man3/getcwd.3:131
11094 msgid ""
11095 "B<get_current_dir_name>()  will B<malloc>(3)  an array big enough to hold "
11096 "the absolute pathname of the current working directory.  If the environment "
11097 "variable B<PWD> is set, and its value is correct, then that value will be "
11098 "returned.  The caller should B<free>(3)  the returned buffer."
11099 msgstr ""
11100 "B<get_current_dir_name>()  はカレントワーキングディレクトリの絶対パス名を収め"
11101 "るのに 十分な大きさの配列を B<malloc>(3)  で獲得する。環境変数 B<PWD> が設定"
11102 "されておりその値が正しければ、その値が返される。 呼び出し側で、返されたバッ"
11103 "ファを B<free>(3)  すべきである。"
11104
11105 #. type: Plain text
11106 #: build/C/man3/getcwd.3:156
11107 msgid ""
11108 "B<getwd>()  does not B<malloc>(3)  any memory.  The I<buf> argument should "
11109 "be a pointer to an array at least B<PATH_MAX> bytes long.  If the length of "
11110 "the absolute pathname of the current working directory, including the "
11111 "terminating null byte, exceeds B<PATH_MAX> bytes, NULL is returned, and "
11112 "I<errno> is set to B<ENAMETOOLONG>.  (Note that on some systems, B<PATH_MAX> "
11113 "may not be a compile-time constant; furthermore, its value may depend on the "
11114 "filesystem, see B<pathconf>(3).)  For portability and security reasons, use "
11115 "of B<getwd>()  is deprecated."
11116 msgstr ""
11117 "B<getwd>()  は B<malloc>(3)  によるメモリ獲得を一切行なわない。 I<buf> 引数は"
11118 "少なくとも B<PATH_MAX> バイトの長さを持つ配列へのポインタである必要がある。 "
11119 "終端のヌルバイトも含めた、カレントワーキングディレクトリの 絶対パス名の長さ"
11120 "が B<PATH_MAX> バイトを超えている場合、 NULL が返され、 I<errno> に "
11121 "B<ENAMETOOLONG> が設定される。 (システムによっては、 B<PATH_MAX> は必ずしもコ"
11122 "ンパイル時に決まる定数ではない点に注意すること。 また、ファイルシステムに依存"
11123 "する場合もある。 B<pathconf>(3)  を参照。)  移植性とセキュリティ上の理由か"
11124 "ら、 B<getwd>()  の利用は推奨されない。"
11125
11126 #. type: Plain text
11127 #: build/C/man3/getcwd.3:165
11128 msgid ""
11129 "On success, these functions return a pointer to a string containing the "
11130 "pathname of the current working directory.  In the case B<getcwd>()  and "
11131 "B<getwd>()  this is the same value as I<buf>."
11132 msgstr ""
11133 "成功すると、これらの関数はカレントワーキングディレクトリの絶対パス名 が入った"
11134 "文字列へのポインタを返す。 B<getcwd>()  と B<getwd>()  の場合、返り値は "
11135 "I<buf> と同じ値になる。"
11136
11137 #. type: Plain text
11138 #: build/C/man3/getcwd.3:172
11139 msgid ""
11140 "On failure, these functions return NULL, and I<errno> is set to indicate the "
11141 "error.  The contents of the array pointed to by I<buf> are undefined on "
11142 "error."
11143 msgstr ""
11144 "失敗した場合、これらの関数は NULL を返し、 I<errno> にエラーを示す値を設定す"
11145 "る。 I<buf> が指す配列の内容は未定義である。"
11146
11147 #. type: Plain text
11148 #: build/C/man3/getcwd.3:176
11149 msgid "Permission to read or search a component of the filename was denied."
11150 msgstr "ファイル名の構成要素に対する読み込みあるいは検索の権限がない。"
11151
11152 #. type: Plain text
11153 #: build/C/man3/getcwd.3:180
11154 msgid "I<buf> points to a bad address."
11155 msgstr "I<buf> が不正なアドレスを指している。"
11156
11157 #. type: Plain text
11158 #: build/C/man3/getcwd.3:187
11159 msgid "The I<size> argument is zero and I<buf> is not a null pointer."
11160 msgstr "I<size> 引数が 0 かつ、 I<buf> 引数がヌルポインタでない。"
11161
11162 #. type: TP
11163 #: build/C/man3/getcwd.3:187
11164 #, no-wrap
11165 msgid "EINVAL"
11166 msgstr "B<EINVAL>"
11167
11168 #. type: Plain text
11169 #: build/C/man3/getcwd.3:192
11170 msgid "B<getwd>(): I<buf> is NULL."
11171 msgstr "B<getwd>(): I<buf> が NULL である。"
11172
11173 #. type: TP
11174 #: build/C/man3/getcwd.3:192
11175 #, no-wrap
11176 msgid "ENAMETOOLONG"
11177 msgstr "B<ENAMETOOLONG>"
11178
11179 #. type: Plain text
11180 #: build/C/man3/getcwd.3:198
11181 msgid ""
11182 "B<getwd>(): The size of the null-terminated absolute pathname string exceeds "
11183 "B<PATH_MAX> bytes."
11184 msgstr ""
11185 "B<getwd>(): 絶対パス名が入ったヌル終端された文字列の長さが B<PATH_MAX> バイト"
11186 "を超えている。"
11187
11188 #. type: Plain text
11189 #: build/C/man3/getcwd.3:201
11190 msgid "The current working directory has been unlinked."
11191 msgstr "カレントワーキングディレクトリが削除されている。"
11192
11193 #. type: TP
11194 #: build/C/man3/getcwd.3:201 build/C/man3/getlogin.3:114
11195 #, no-wrap
11196 msgid "B<ERANGE>"
11197 msgstr "B<ERANGE>"
11198
11199 #. type: Plain text
11200 #: build/C/man3/getcwd.3:208
11201 msgid ""
11202 "The I<size> argument is less than the length of the absolute pathname of the "
11203 "working directory, including the terminating null byte.  You need to "
11204 "allocate a bigger array and try again."
11205 msgstr ""
11206 "I<size> 引数の値がワーキングディレクトリの絶対パス名の長さより小さい。 長さに"
11207 "は文字列の終端バイトも含まれる。 より大きい配列を確保してもう一度実行する必要"
11208 "がある。"
11209
11210 #. type: Plain text
11211 #: build/C/man3/getcwd.3:216
11212 msgid ""
11213 "B<getcwd>()  conforms to POSIX.1-2001.  Note however that POSIX.1-2001 "
11214 "leaves the behavior of B<getcwd>()  unspecified if I<buf> is NULL."
11215 msgstr ""
11216 "B<getcwd>()  は POSIX.1-2001 に準拠している。 POSIX.1-2001 は、 I<buf> が "
11217 "NULL の場合の B<getcwd>()  の動作を規定しないままとしている。"
11218
11219 #. type: Plain text
11220 #: build/C/man3/getcwd.3:227
11221 msgid ""
11222 "B<getwd>()  is present in POSIX.1-2001, but marked LEGACY.  POSIX.1-2008 "
11223 "removes the specification of B<getwd>().  Use B<getcwd>()  instead.  "
11224 "POSIX.1-2001 does not define any errors for B<getwd>()."
11225 msgstr ""
11226 "B<getwd>()  は POSIX.1-2001 に存在しているが、「過去の名残(LEGACY)」とされて"
11227 "いる。 POSIX.1-2008 では、 B<getwd>()  の仕様が削除されている。 代わりに "
11228 "B<getcwd>()  を使うこと。 POSIX.1-2001 は B<getwd>()  に関するエラーを定義し"
11229 "ていない。"
11230
11231 #. type: Plain text
11232 #: build/C/man3/getcwd.3:230
11233 msgid "B<get_current_dir_name>()  is a GNU extension."
11234 msgstr "B<get_current_dir_name>()  は GNU 拡張である。"
11235
11236 #. type: Plain text
11237 #: build/C/man3/getcwd.3:241
11238 msgid ""
11239 "Under Linux, the function B<getcwd>()  is a system call (since 2.1.92).  On "
11240 "older systems it would query I</proc/self/cwd>.  If both system call and "
11241 "proc filesystem are missing, a generic implementation is called.  Only in "
11242 "that case can these calls fail under Linux with B<EACCES>."
11243 msgstr ""
11244 "Linux では (2.1.92 以降)、 B<getcwd>()  はシステムコールである。 古いシステム"
11245 "では I</proc/self/cwd> を参照する。 システムコールも proc ファイルシステムも"
11246 "ない場合、 一般的な実装が呼び出される。 この場合においてのみ、(Linux では) こ"
11247 "の関数は B<EACCES> で失敗する可能性がある。"
11248
11249 #. type: Plain text
11250 #: build/C/man3/getcwd.3:249
11251 msgid ""
11252 "These functions are often used to save the location of the current working "
11253 "directory for the purpose of returning to it later.  Opening the current "
11254 "directory (\".\") and calling B<fchdir>(2)  to return is usually a faster "
11255 "and more reliable alternative when sufficiently many file descriptors are "
11256 "available, especially on platforms other than Linux."
11257 msgstr ""
11258 "これらの関数はしばしばカレントワーキングディレクトリの位置を保存し、 後で戻っ"
11259 "てくるために利用される。 未使用のファイルディスクリプタが十分ある場合は、 現"
11260 "在のディレクトリ (\".\") を開いて B<fchdir>(2)  を呼び出すほうが普通は高速で"
11261 "信頼性がある。 特に Linux 以外のプラットフォームの場合はそうである。"
11262
11263 #. type: Plain text
11264 #: build/C/man3/getcwd.3:256
11265 msgid ""
11266 "B<chdir>(2), B<fchdir>(2), B<open>(2), B<unlink>(2), B<free>(3), B<malloc>(3)"
11267 msgstr ""
11268 "B<chdir>(2), B<fchdir>(2), B<open>(2), B<unlink>(2), B<free>(3), B<malloc>(3)"
11269
11270 #. type: TH
11271 #: build/C/man2/getdomainname.2:29
11272 #, no-wrap
11273 msgid "GETDOMAINNAME"
11274 msgstr "GETDOMAINNAME"
11275
11276 #. type: TH
11277 #: build/C/man2/getdomainname.2:29
11278 #, no-wrap
11279 msgid "2012-10-25"
11280 msgstr "2012-10-25"
11281
11282 #. type: Plain text
11283 #: build/C/man2/getdomainname.2:32
11284 msgid "getdomainname, setdomainname - get/set NIS domain name"
11285 msgstr "getdomainname, setdomainname - NIS ドメイン名の取得・設定をする"
11286
11287 #. type: Plain text
11288 #: build/C/man2/getdomainname.2:36
11289 msgid "B<int getdomainname(char *>I<name>B<, size_t >I<len>B<);>"
11290 msgstr "B<int getdomainname(char *>I<name>B<, size_t >I<len>B<);>"
11291
11292 #. type: Plain text
11293 #: build/C/man2/getdomainname.2:38
11294 msgid "B<int setdomainname(const char *>I<name>B<, size_t >I<len>B<);>"
11295 msgstr "B<int setdomainname(const char *>I<name>B<, size_t >I<len>B<);>"
11296
11297 #. type: Plain text
11298 #: build/C/man2/getdomainname.2:47
11299 msgid "B<getdomainname>(), B<setdomainname>():"
11300 msgstr "B<getdomainname>(), B<setdomainname>():"
11301
11302 #. type: Plain text
11303 #: build/C/man2/getdomainname.2:49 build/C/man3/gethostid.3:54
11304 #: build/C/man2/gethostname.2:60 build/C/man3/getusershell.3:55
11305 msgid "_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
11306 msgstr "_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
11307
11308 #. type: Plain text
11309 #: build/C/man2/getdomainname.2:54
11310 msgid ""
11311 "These functions are used to access or to change the NIS domain name of the "
11312 "host system."
11313 msgstr ""
11314 "これらの関数は、ホストシステムの NIS ドメイン名を取得・変更するために使われ"
11315 "る。"
11316
11317 #. type: Plain text
11318 #: build/C/man2/getdomainname.2:65
11319 msgid ""
11320 "B<setdomainname>()  sets the domain name to the value given in the character "
11321 "array I<name>.  The I<len> argument specifies the number of bytes in "
11322 "I<name>.  (Thus, I<name> does not require a terminating null byte.)"
11323 msgstr ""
11324 "B<setdomainname>()  は、ドメイン名を、文字配列 I<name> で指定された値に設定す"
11325 "る。 引き数 I<len> には、 I<name> のバイト数を指定する (そのため、 I<name> で"
11326 "は文字列終端のヌルバイトは必要ない)。"
11327
11328 #. type: Plain text
11329 #: build/C/man2/getdomainname.2:75
11330 msgid ""
11331 "B<getdomainname>()  returns the null-terminated domain name in the character "
11332 "array I<name>, which has a length of I<len> bytes.  If the null-terminated "
11333 "domain name requires more than I<len> bytes, B<getdomainname>()  returns the "
11334 "first I<len> bytes (glibc) or gives an error (libc)."
11335 msgstr ""
11336 "B<getdomainname>()  は、NULL 終端されたドメイン名を、 I<len> バイトの長さの文"
11337 "字配列 I<name> に格納して返す。ヌル終端されたドメイン名が I<len> バイトより長"
11338 "い場合、 B<getdomainname>()  は、(glibc では) 始めの I<len> バイトを返し、"
11339 "(libc では) エラーとなる。"
11340
11341 #. type: Plain text
11342 #: build/C/man2/getdomainname.2:83
11343 msgid "B<setdomainname>()  can fail with the following errors:"
11344 msgstr "B<setdomainname>()  は以下のエラーで失敗する可能性がある。"
11345
11346 #. type: Plain text
11347 #: build/C/man2/getdomainname.2:87
11348 msgid "I<name> pointed outside of user address space."
11349 msgstr "I<name> がユーザアドレス空間の外を指した。"
11350
11351 #. type: Plain text
11352 #: build/C/man2/getdomainname.2:91
11353 msgid "I<len> was negative or too large."
11354 msgstr "I<len> が負であるか、長すぎる。"
11355
11356 #. type: Plain text
11357 #: build/C/man2/getdomainname.2:96
11358 msgid ""
11359 "the caller is unprivileged (Linux: does not have the B<CAP_SYS_ADMIN> "
11360 "capability)."
11361 msgstr ""
11362 "B<setdomainname>()  において、呼び出した人に特権がない (Linux では "
11363 "B<CAP_SYS_ADMIN> ケーパビリティ (capability) がない)。"
11364
11365 #. type: Plain text
11366 #: build/C/man2/getdomainname.2:99
11367 msgid "B<getdomainname>()  can fail with the following errors:"
11368 msgstr "B<getdomainname>()  は以下のエラーで失敗する可能性がある。"
11369
11370 #. type: Plain text
11371 #: build/C/man2/getdomainname.2:110
11372 msgid ""
11373 "For B<getdomainname>()  under libc: I<name> is NULL or I<name> is longer "
11374 "than I<len> bytes."
11375 msgstr ""
11376 "libc での B<getdomainname>()  において、 I<name> が NULL であるか、 I<len> バ"
11377 "イトより長い。"
11378
11379 #.  But they appear on most systems...
11380 #. type: Plain text
11381 #: build/C/man2/getdomainname.2:113
11382 msgid "POSIX does not specify these calls."
11383 msgstr "POSIX では、これら関数は定義されていない。"
11384
11385 #. type: Plain text
11386 #: build/C/man2/getdomainname.2:117
11387 msgid ""
11388 "Since Linux 1.0, the limit on the length of a domain name, including the "
11389 "terminating null byte, is 64 bytes.  In older kernels, it was 8 bytes."
11390 msgstr ""
11391 "Linux 1.0 以降では、ドメイン名の長さの上限は 終端のヌルバイトを含めて 64 バイ"
11392 "トである。 もっと古いカーネルでは 8 バイトであった。"
11393
11394 #. type: Plain text
11395 #: build/C/man2/getdomainname.2:127
11396 msgid ""
11397 "On most Linux architectures (including x86), there is no B<getdomainname>()  "
11398 "system call; instead, glibc implements B<getdomainname>()  as a library "
11399 "function that returns a copy of the I<domainname> field returned from a call "
11400 "to B<uname>(2)."
11401 msgstr ""
11402 "(x86 を含む) Linux のほとんどのアーキテクチャでは、 B<getdomainname>()  とい"
11403 "うシステムコールは存在しない。 その代わり、glibc で B<getdomainname>()  がラ"
11404 "イブラリ関数として実装されており、この関数は B<uname>(2)  の呼び出しで返され"
11405 "た I<domainname> フィールドのコピーを返す。"
11406
11407 #. type: Plain text
11408 #: build/C/man2/getdomainname.2:131
11409 msgid "B<gethostname>(2), B<sethostname>(2), B<uname>(2)"
11410 msgstr "B<gethostname>(2), B<sethostname>(2), B<uname>(2)"
11411
11412 #. type: TH
11413 #: build/C/man3/getdtablesize.3:27
11414 #, no-wrap
11415 msgid "GETDTABLESIZE"
11416 msgstr "GETDTABLESIZE"
11417
11418 #. type: Plain text
11419 #: build/C/man3/getdtablesize.3:30
11420 msgid "getdtablesize - get descriptor table size"
11421 msgstr "getdtablesize - ディスクリプタテーブルのサイズを取得する"
11422
11423 #. type: Plain text
11424 #: build/C/man3/getdtablesize.3:34
11425 msgid "B<int getdtablesize(void);>"
11426 msgstr "B<int getdtablesize(void);>"
11427
11428 #. type: Plain text
11429 #: build/C/man3/getdtablesize.3:41
11430 msgid "B<getdtablesize>():"
11431 msgstr "B<getdtablesize>():"
11432
11433 #. type: Plain text
11434 #: build/C/man3/getdtablesize.3:49 build/C/man2/getpagesize.2:47
11435 #, no-wrap
11436 msgid ""
11437 "_BSD_SOURCE ||\n"
11438 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
11439 msgstr ""
11440 "_BSD_SOURCE ||\n"
11441 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
11442
11443 #. type: Plain text
11444 #: build/C/man3/getdtablesize.3:61
11445 msgid ""
11446 "B<getdtablesize>()  returns the maximum number of files a process can have "
11447 "open, one more than the largest possible value for a file descriptor."
11448 msgstr ""
11449 "B<getdtablesize>()  は 1 つのプロセスのオープンできるファイル数の最大値を返"
11450 "す。 返り値はファイルディスクリプタの取り得る最大値より 1 大きい値である。"
11451
11452 #. type: Plain text
11453 #: build/C/man3/getdtablesize.3:63
11454 msgid "The current limit on the number of open files per process."
11455 msgstr "プロセス毎にオープンできるファイル数の現在の制限値。"
11456
11457 #. type: Plain text
11458 #: build/C/man3/getdtablesize.3:69
11459 msgid ""
11460 "On Linux, B<getdtablesize>()  can return any of the errors described for "
11461 "B<getrlimit>(2); see NOTES below."
11462 msgstr ""
11463 "Linux では、 B<getdtablesize>()  は B<getrlimit>(2)  で説明されているエラーを"
11464 "返すことがある。 下記の「注意」を参照のこと。"
11465
11466 #. type: Plain text
11467 #: build/C/man3/getdtablesize.3:74
11468 msgid "The B<getdtablesize>()  function is thread-safe."
11469 msgstr "B<getdtablesize>() 関数はスレッドセーフである。"
11470
11471 #. type: Plain text
11472 #: build/C/man3/getdtablesize.3:82
11473 msgid ""
11474 "SVr4, 4.4BSD (the B<getdtablesize>()  function first appeared in 4.2BSD).  "
11475 "It is not specified in POSIX.1-2001; portable applications should employ "
11476 "I<sysconf(_SC_OPEN_MAX)> instead of this call."
11477 msgstr ""
11478 "SVr4, 4.4BSD (B<getdtablesize>()  関数は 4.2BSD で最初に現われた)。 これは "
11479 "POSIX.1-2001 で規定されていないので、 移植性のあるアプリケーションはこの呼び"
11480 "出しの代わりに I<sysconf(_SC_OPEN_MAX)> を使うべきである。"
11481
11482 #.  The libc4 and libc5 versions return
11483 #.  .B OPEN_MAX
11484 #.  (set to 256 since Linux 0.98.4).
11485 #. type: Plain text
11486 #: build/C/man3/getdtablesize.3:95
11487 msgid ""
11488 "B<getdtablesize>()  is implemented as a libc library function.  The glibc "
11489 "version calls B<getrlimit>(2)  and returns the current B<RLIMIT_NOFILE> "
11490 "limit, or B<OPEN_MAX> when that fails."
11491 msgstr ""
11492 "B<getdtablesize>()  は libc のライブラリ関数として実装されている。glibc 版は "
11493 "B<getrlimit>(2)  を呼び出して、現在の B<RLIMIT_NOFILE> を返す。 呼び出しに失"
11494 "敗した場合は B<OPEN_MAX> を返す。"
11495
11496 #. type: Plain text
11497 #: build/C/man3/getdtablesize.3:100
11498 msgid "B<close>(2), B<dup>(2), B<getrlimit>(2), B<open>(2)"
11499 msgstr "B<close>(2), B<dup>(2), B<getrlimit>(2), B<open>(2)"
11500
11501 #. type: TH
11502 #: build/C/man3/gethostid.3:29
11503 #, no-wrap
11504 msgid "GETHOSTID"
11505 msgstr "GETHOSTID"
11506
11507 #. type: Plain text
11508 #: build/C/man3/gethostid.3:32
11509 msgid ""
11510 "gethostid, sethostid - get or set the unique identifier of the current host"
11511 msgstr "gethostid, sethostid - 現在のホストの固有の識別子を取得/設定する"
11512
11513 #. type: Plain text
11514 #: build/C/man3/gethostid.3:36
11515 msgid "B<long gethostid(void);>"
11516 msgstr "B<long gethostid(void);>"
11517
11518 #. type: Plain text
11519 #: build/C/man3/gethostid.3:38
11520 msgid "B<int sethostid(long >I<hostid>B<);>"
11521 msgstr "B<int sethostid(long >I<hostid>B<);>"
11522
11523 #. type: Plain text
11524 #: build/C/man3/gethostid.3:47
11525 msgid "B<gethostid>():"
11526 msgstr "B<gethostid>():"
11527
11528 #. type: Plain text
11529 #: build/C/man3/gethostid.3:52
11530 msgid "B<sethostid>():"
11531 msgstr "B<sethostid>():"
11532
11533 #. type: Plain text
11534 #: build/C/man3/gethostid.3:67
11535 msgid ""
11536 "B<gethostid>()  and B<sethostid>()  respectively get or set a unique 32-bit "
11537 "identifier for the current machine.  The 32-bit identifier is intended to be "
11538 "unique among all UNIX systems in existence.  This normally resembles the "
11539 "Internet address for the local machine, as returned by B<gethostbyname>(3), "
11540 "and thus usually never needs to be set."
11541 msgstr ""
11542 "B<gethostid>()  と B<sethostid>()  は、それぞれ、現在使用しているホストに固有"
11543 "の 32 ビットの識別子の 取得/設定を行う。 この 32 ビットの識別子は、現在存在し"
11544 "ている全ての UNIX システム の中で唯一になるように決められる。通常は "
11545 "B<gethostbyname>(3)  により返されるローカルマシンの Internet アドレスが代わり"
11546 "に使用され、 普通は識別子をあえて設定する必要はない。"
11547
11548 #. type: Plain text
11549 #: build/C/man3/gethostid.3:71
11550 msgid "The B<sethostid>()  call is restricted to the superuser."
11551 msgstr "B<sethostid>()  はスーパーユーザしか使用できない。"
11552
11553 #. type: Plain text
11554 #: build/C/man3/gethostid.3:75
11555 msgid ""
11556 "B<gethostid>()  returns the 32-bit identifier for the current host as set by "
11557 "B<sethostid>()."
11558 msgstr ""
11559 "B<gethostid>()  は、 B<sethostid>()  によって設定された、現在使用しているホス"
11560 "トの 32 ビットの識別子の値を返す。"
11561
11562 #. type: Plain text
11563 #: build/C/man3/gethostid.3:81
11564 msgid ""
11565 "On success, B<sethostid>()  returns 0; on error, -1 is returned, and "
11566 "I<errno> is set to indicate the error."
11567 msgstr ""
11568 "成功すると、 B<sethostid>()  は 0 を返す。 エラーの場合、-1 を返し、 "
11569 "I<errno> にエラーを示す値を設定する。"
11570
11571 #. type: Plain text
11572 #: build/C/man3/gethostid.3:84
11573 msgid "B<sethostid>()  can fail with the following errors:"
11574 msgstr "B<sethostid>()  は以下のエラーで失敗する可能性がある。"
11575
11576 #. type: Plain text
11577 #: build/C/man3/gethostid.3:88
11578 msgid ""
11579 "The caller did not have permission to write to the file used to store the "
11580 "host ID."
11581 msgstr ""
11582 "呼び出し元がホスト ID を保存するのに使用されるファイルへの 書き込み許可を持っ"
11583 "ていなかった。"
11584
11585 #. type: Plain text
11586 #: build/C/man3/gethostid.3:92
11587 msgid ""
11588 "The calling process's effective user or group ID is not the same as its "
11589 "corresponding real ID."
11590 msgstr "呼び出し元プロセスの実効 UID/GID が対応する実 UID/GID と同じではない。"
11591
11592 #. type: Plain text
11593 #: build/C/man3/gethostid.3:102
11594 msgid ""
11595 "4.2BSD; these functions were dropped in 4.4BSD.  SVr4 includes "
11596 "B<gethostid>()  but not B<sethostid>().  POSIX.1-2001 specifies "
11597 "B<gethostid>()  but not B<sethostid>()."
11598 msgstr ""
11599 "4.2BSD。4.4BSD ではこれらの関数はなくなった。 SVr4 には B<gethostid>()  は含"
11600 "まれているが、 B<sethostid>()  は含まれていない。 POSIX.1-2001 では、 "
11601 "B<gethostid>()  は規定されているが、 B<sethostid>()  は規定されていない。"
11602
11603 #.  libc5 used /etc/hostid; libc4 didn't have these functions
11604 #. type: Plain text
11605 #: build/C/man3/gethostid.3:111
11606 msgid ""
11607 "In the glibc implementation, the I<hostid> is stored in the file I</etc/"
11608 "hostid>.  (In glibc versions before 2.2, the file I</var/adm/hostid> was "
11609 "used.)"
11610 msgstr ""
11611 "glibc の実装では、 I<hostid> はファイル I</etc/hostid> に保存される (バージョ"
11612 "ン 2.2 より前の glibc では、 I</var/adm/hostid> が使用されていた)。"
11613
11614 #. type: Plain text
11615 #: build/C/man3/gethostid.3:122
11616 msgid ""
11617 "In the glibc implementation, if B<gethostid>()  cannot open the file "
11618 "containing the host ID, then it obtains the hostname using "
11619 "B<gethostname>(2), passes that hostname to B<gethostbyname_r>(3)  in order "
11620 "to obtain the host's IPv4 address, and returns a value obtained by bit-"
11621 "twiddling the IPv4 address.  (This value may not be unique.)"
11622 msgstr ""
11623 "glibc の実装では、ホスト ID を保存したファイルを オープンできなかった場合、 "
11624 "B<gethostid>()  は B<gethostname>(2)  を使ってホスト名を入手し、そのホスト名"
11625 "を B<gethostbyname_r>(3)  に渡しホストの IPv4 アドレスを取得して、 その IPv4 "
11626 "アドレスのビット入れ替えを行った値を返す。"
11627
11628 #. type: Plain text
11629 #: build/C/man3/gethostid.3:124
11630 msgid "It is impossible to ensure that the identifier is globally unique."
11631 msgstr "識別子が世界中で一意であることを保証することはできない。"
11632
11633 #. type: Plain text
11634 #: build/C/man3/gethostid.3:127
11635 msgid "B<hostid>(1), B<gethostbyname>(3)"
11636 msgstr "B<hostid>(1), B<gethostbyname>(3)"
11637
11638 #. type: TH
11639 #: build/C/man2/gethostname.2:32
11640 #, no-wrap
11641 msgid "GETHOSTNAME"
11642 msgstr "GETHOSTNAME"
11643
11644 #. type: Plain text
11645 #: build/C/man2/gethostname.2:35
11646 msgid "gethostname, sethostname - get/set hostname"
11647 msgstr "gethostname, sethostname - ホスト名の取得・設定をする"
11648
11649 #. type: Plain text
11650 #: build/C/man2/gethostname.2:39
11651 msgid "B<int gethostname(char *>I<name>B<, size_t >I<len>B<);>"
11652 msgstr "B<int gethostname(char *>I<name>B<, size_t >I<len>B<);>"
11653
11654 #. type: Plain text
11655 #: build/C/man2/gethostname.2:41
11656 msgid "B<int sethostname(const char *>I<name>B<, size_t >I<len>B<);>"
11657 msgstr "B<int sethostname(const char *>I<name>B<, size_t >I<len>B<);>"
11658
11659 #. type: Plain text
11660 #: build/C/man2/gethostname.2:50
11661 msgid "B<gethostname>():"
11662 msgstr "B<gethostname>():"
11663
11664 #. type: Plain text
11665 #: build/C/man2/gethostname.2:53
11666 msgid "Since glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
11667 msgstr "glibc 2.12 以降: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
11668
11669 #. type: Plain text
11670 #: build/C/man2/gethostname.2:55
11671 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
11672 msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
11673
11674 #. type: Plain text
11675 #: build/C/man2/gethostname.2:58
11676 msgid "B<sethostname>():"
11677 msgstr "B<sethostname>():"
11678
11679 #. type: Plain text
11680 #: build/C/man2/gethostname.2:66
11681 msgid ""
11682 "These system calls are used to access or to change the hostname of the "
11683 "current processor."
11684 msgstr ""
11685 "これらのシステムコールは、現在のプロセッサのホスト名を取得・変更するために 使"
11686 "用される。"
11687
11688 #. type: Plain text
11689 #: build/C/man2/gethostname.2:77
11690 msgid ""
11691 "B<sethostname>()  sets the hostname to the value given in the character "
11692 "array I<name>.  The I<len> argument specifies the number of bytes in "
11693 "I<name>.  (Thus, I<name> does not require a terminating null byte.)"
11694 msgstr ""
11695 "B<sethostname>()  は、ホスト名を、文字配列 I<name> で指定された値に設定す"
11696 "る。 引き数 I<len> には、 I<name> のバイト数を指定する (そのため、 I<name> で"
11697 "は文字列終端のヌルバイトは必要ない)。"
11698
11699 #. type: Plain text
11700 #: build/C/man2/gethostname.2:89
11701 msgid ""
11702 "B<gethostname>()  returns the null-terminated hostname in the character "
11703 "array I<name>, which has a length of I<len> bytes.  If the null-terminated "
11704 "hostname is too large to fit, then the name is truncated, and no error is "
11705 "returned (but see NOTES below).  POSIX.1-2001 says that if such truncation "
11706 "occurs, then it is unspecified whether the returned buffer includes a "
11707 "terminating null byte."
11708 msgstr ""
11709 "B<gethostname>()  は、NULL 終端されたホスト名を、 I<len> バイトの長さの文字配"
11710 "列 I<name> に格納して返す。ヌル終端されたホスト名が格納先のバッファよりも長い"
11711 "場合は、 ホスト名は切り詰められ、エラーは返されない (下記の「注意」の節を参"
11712 "照)。 POSIX.1-2001 では、結果の切り詰めが発生した場合に、 返されたバッファに"
11713 "終端のヌルバイトが含まれているかどうかは 規定されていない。"
11714
11715 #. type: Plain text
11716 #: build/C/man2/gethostname.2:99
11717 msgid "I<name> is an invalid address."
11718 msgstr "I<name> が不正なアドレスである。"
11719
11720 #.  Can't occur for gethostbyname() wrapper, since 'len' has an
11721 #.  unsigned type; can occur for the underlying system call.
11722 #. type: Plain text
11723 #: build/C/man2/gethostname.2:109
11724 msgid ""
11725 "I<len> is negative or, for B<sethostname>(), I<len> is larger than the "
11726 "maximum allowed size."
11727 msgstr ""
11728 "I<len> が負である。 B<sethostname>()  において I<len> が許容された最大サイズ"
11729 "を越えている。"
11730
11731 #. type: Plain text
11732 #: build/C/man2/gethostname.2:117
11733 msgid ""
11734 "(glibc B<gethostname>())  I<len> is smaller than the actual size.  (Before "
11735 "version 2.1, glibc uses B<EINVAL> for this case.)"
11736 msgstr ""
11737 "(glibc B<gethostname>()  で)  I<len> が実際のホスト名の長さよりも小さい "
11738 "(glibc バージョン 2.1 より前では、この状況で B<EINVAL> が使用される)。"
11739
11740 #. type: Plain text
11741 #: build/C/man2/gethostname.2:124
11742 msgid ""
11743 "For B<sethostname>(), the caller did not have the B<CAP_SYS_ADMIN> "
11744 "capability."
11745 msgstr ""
11746 "B<sethostname>()  において、呼び出した人が B<CAP_SYS_ADMIN> ケーパビリティ "
11747 "(capability) を持っていなかった。"
11748
11749 #. type: Plain text
11750 #: build/C/man2/gethostname.2:130
11751 msgid ""
11752 "SVr4, 4.4BSD (these interfaces first appeared in 4.2BSD).  POSIX.1-2001 "
11753 "specifies B<gethostname>()  but not B<sethostname>()."
11754 msgstr ""
11755 "SVr4, 4.4BSD (これらのインタフェースは 4.2BSD で初めて登場した)。 "
11756 "POSIX.1-2001 では B<gethostname>()  については規定しているが、 "
11757 "B<sethostname>()  は規定していない。"
11758
11759 #. type: Plain text
11760 #: build/C/man2/gethostname.2:140
11761 msgid ""
11762 "SUSv2 guarantees that \"Host names are limited to 255 bytes\".  POSIX.1-2001 "
11763 "guarantees that \"Host names (not including the terminating null byte) are "
11764 "limited to B<HOST_NAME_MAX> bytes\".  On Linux, B<HOST_NAME_MAX> is defined "
11765 "with the value 64, which has been the limit since Linux 1.0 (earlier kernels "
11766 "imposed a limit of 8 bytes)."
11767 msgstr ""
11768 "SUSv2 では「ホスト名が 255 バイトに制限される」ことを保証している。 "
11769 "POSIX.1-2001 では「ホスト名 (終端のヌルバイトは含まない) が B<HOST_NAME_MAX> "
11770 "バイトに制限される」ことを保証している。 Linux では、 B<HOST_NAME_MAX> は 64 "
11771 "に定義されており、 Linux 1.0 以降ではこれが上限となってきた (もっと古いカーネ"
11772 "ルでは 8 バイトの上限が適用されていた)。"
11773
11774 #. type: Plain text
11775 #: build/C/man2/gethostname.2:163
11776 msgid ""
11777 "The GNU C library does not employ the B<gethostname>()  system call; "
11778 "instead, it implements B<gethostname>()  as a library function that calls "
11779 "B<uname>(2)  and copies up to I<len> bytes from the returned I<nodename> "
11780 "field into I<name>.  Having performed the copy, the function then checks if "
11781 "the length of the I<nodename> was greater than or equal to I<len>, and if it "
11782 "is, then the function returns -1 with I<errno> set to B<ENAMETOOLONG>; in "
11783 "this case, a terminating null byte is not included in the returned I<name>."
11784 msgstr ""
11785 "GNU C ライブラリは、 B<gethostname>()  システムコールを利用していない。その代"
11786 "わり、 B<gethostname>()  をライブラリ関数として実装しており、 この関数は "
11787 "B<uname>(2)  を呼び出し、 B<uname>(2)  が返した I<nodename> フィールド (の最"
11788 "大 I<len> バイト) を I<name> にコピーする。 コピーを行った際に、この関数は "
11789 "I<nodename> の長さが I<len> 以上かの確認を行い、 I<len> 以上の場合には -1 を"
11790 "返し、 I<errno> に B<ENAMETOOLONG> を設定する。 この場合、返された I<name> に"
11791 "は終端のヌルバイトは含まれない。"
11792
11793 #.  At least glibc 2.0 and 2.1, older versions not checked
11794 #. type: Plain text
11795 #: build/C/man2/gethostname.2:176
11796 msgid ""
11797 "Versions of glibc before 2.2 handle the case where the length of the "
11798 "I<nodename> was greater than or equal to I<len> differently: nothing is "
11799 "copied into I<name> and the function returns -1 with I<errno> set to "
11800 "B<ENAMETOOLONG>."
11801 msgstr ""
11802 "バージョン 2.2 より前の glibc では、 I<nodename> の長さが I<len> 以上の場合の"
11803 "扱いが異なる; I<len> 以上の場合には、 I<name> には何もコピーせず、関数は -1 "
11804 "を返し、 I<errno> に B<ENAMETOOLONG> を設定する。"
11805
11806 #. type: Plain text
11807 #: build/C/man2/gethostname.2:180
11808 msgid "B<getdomainname>(2), B<setdomainname>(2), B<uname>(2)"
11809 msgstr "B<getdomainname>(2), B<setdomainname>(2), B<uname>(2)"
11810
11811 #. type: TH
11812 #: build/C/man3/getlogin.3:28
11813 #, no-wrap
11814 msgid "GETLOGIN"
11815 msgstr "GETLOGIN"
11816
11817 #. type: TH
11818 #: build/C/man3/getlogin.3:28
11819 #, no-wrap
11820 msgid "2013-04-19"
11821 msgstr "2013-04-19"
11822
11823 #. type: Plain text
11824 #: build/C/man3/getlogin.3:31
11825 msgid "getlogin, getlogin_r, cuserid - get username"
11826 msgstr "getlogin, getlogin_r, cuserid - ユーザー名を取得する"
11827
11828 #. type: Plain text
11829 #: build/C/man3/getlogin.3:35
11830 msgid "B<char *getlogin(void);>"
11831 msgstr "B<char *getlogin(void);>"
11832
11833 #. type: Plain text
11834 #: build/C/man3/getlogin.3:37
11835 msgid "B<int getlogin_r(char *>I<buf>B<, size_t >I<bufsize>B<);>"
11836 msgstr "B<int getlogin_r(char *>I<buf>B<, size_t >I<bufsize>B<);>"
11837
11838 #. type: Plain text
11839 #: build/C/man3/getlogin.3:39
11840 msgid "B<#include E<lt>stdio.hE<gt>>"
11841 msgstr "B<#include E<lt>stdio.hE<gt>>"
11842
11843 #. type: Plain text
11844 #: build/C/man3/getlogin.3:41
11845 msgid "B<char *cuserid(char *>I<string>B<);>"
11846 msgstr "B<char *cuserid(char *>I<string>B<);>"
11847
11848 #. type: Plain text
11849 #: build/C/man3/getlogin.3:49
11850 msgid "B<getlogin_r>(): _REENTRANT || _POSIX_C_SOURCE\\ E<gt>=\\ 199506L"
11851 msgstr "B<getlogin_r>(): _REENTRANT || _POSIX_C_SOURCE\\ E<gt>=\\ 199506L"
11852
11853 #. type: Plain text
11854 #: build/C/man3/getlogin.3:52
11855 msgid "B<cuserid>(): _XOPEN_SOURCE"
11856 msgstr "B<cuserid>(): _XOPEN_SOURCE"
11857
11858 #. type: Plain text
11859 #: build/C/man3/getlogin.3:61
11860 msgid ""
11861 "B<getlogin>()  returns a pointer to a string containing the name of the user "
11862 "logged in on the controlling terminal of the process, or a null pointer if "
11863 "this information cannot be determined.  The string is statically allocated "
11864 "and might be overwritten on subsequent calls to this function or to "
11865 "B<cuserid>()."
11866 msgstr ""
11867 "B<getlogin>()  は、現在のプロセスの制御端末にログインしているユーザー名の文字"
11868 "列への ポインタを返す。ユーザー名が決定できない場合はヌルポインタを返す。 文"
11869 "字列は静的領域に割り当てられており、この後でこの関数や B<cuserid>()  が呼び出"
11870 "された際に上書きされることがある。"
11871
11872 #. type: Plain text
11873 #: build/C/man3/getlogin.3:67
11874 msgid ""
11875 "B<getlogin_r>()  returns this same username in the array I<buf> of size "
11876 "I<bufsize>."
11877 msgstr ""
11878 "B<getlogin_r>()  は、上記の同じユーザ名を、大きさ I<bufsize> の配列 I<buf> に"
11879 "入れて返す。"
11880
11881 #. type: Plain text
11882 #: build/C/man3/getlogin.3:79
11883 msgid ""
11884 "B<cuserid>()  returns a pointer to a string containing a username associated "
11885 "with the effective user ID of the process.  If I<string> is not a null "
11886 "pointer, it should be an array that can hold at least B<L_cuserid> "
11887 "characters; the string is returned in this array.  Otherwise, a pointer to a "
11888 "string in a static area is returned.  This string is statically allocated "
11889 "and might be overwritten on subsequent calls to this function or to "
11890 "B<getlogin>()."
11891 msgstr ""
11892 "B<cuserid>()  は、現在のプロセスの実効ユーザーID に対応するユーザー名の 文字"
11893 "列へのポインタを返す。 I<string> がヌルポインタ以外の場合、I<string> は少なく"
11894 "とも B<L_cuserid> 文字を保持できる配列でなければならない。 I<string> が ヌル"
11895 "ポインタの場合には、静的領域に置かれた文字列への ポインタが返される。この文字"
11896 "列は静的領域に割り当てられており、後で この関数や B<getlogin>()  が呼び出され"
11897 "た際に上書きされることがある。"
11898
11899 #. type: Plain text
11900 #: build/C/man3/getlogin.3:83
11901 msgid ""
11902 "The macro B<L_cuserid> is an integer constant that indicates how long an "
11903 "array you might need to store a username.  B<L_cuserid> is declared in "
11904 "I<E<lt>stdio.hE<gt>>."
11905 msgstr ""
11906 "マクロ B<L_cuserid> は integer の定数で、ユーザー名を保持するために 必要な配"
11907 "列の長さを示す。 B<L_cuserid> は B<stdio.h> で宣言されて いる。"
11908
11909 #. type: Plain text
11910 #: build/C/man3/getlogin.3:90
11911 msgid ""
11912 "These functions let your program identify positively the user who is running "
11913 "(B<cuserid>())  or the user who logged in this session (B<getlogin>()).  "
11914 "(These can differ when set-user-ID programs are involved.)"
11915 msgstr ""
11916 "これらの関数を使うと、プログラムを実行しているユーザー (B<cuserid>())  や こ"
11917 "のセッションにログインしているユーザー (B<getlogin>())  を明確に特定すること"
11918 "ができる (ただし set-user-ID プログラムでは、状況が違うこともある)。"
11919
11920 #. type: Plain text
11921 #: build/C/man3/getlogin.3:95
11922 msgid ""
11923 "For most purposes, it is more useful to use the environment variable "
11924 "B<LOGNAME> to find out who the user is.  This is more flexible precisely "
11925 "because the user can set B<LOGNAME> arbitrarily."
11926 msgstr ""
11927 "たいていの目的では、ユーザーの特定には環境変数 B<LOGNAME> を調べ るほうが便利"
11928 "である。LOGNAME 変数はユーザーが自由に設定できるので より柔軟な対応が可能にな"
11929 "る。"
11930
11931 #. type: Plain text
11932 #: build/C/man3/getlogin.3:103
11933 msgid ""
11934 "B<getlogin>()  returns a pointer to the username when successful, and NULL "
11935 "on failure, with I<errno> set to indicate the cause of the error.  "
11936 "B<getlogin_r>()  returns 0 when successful, and nonzero on failure."
11937 msgstr ""
11938 "B<getlogin>()  は成功した場合はユーザ名へのポインタを返す。 失敗した場合は "
11939 "NULL を返し、 I<errno> にエラーの原因を示す値を設定する。 B<getlogin_r>()  は"
11940 "成功すると 0 を返し、失敗すると 0 以外を返す。"
11941
11942 #. type: Plain text
11943 #: build/C/man3/getlogin.3:105
11944 msgid "POSIX specifies"
11945 msgstr "POSIX では以下のエラーが規定されている:"
11946
11947 #. type: Plain text
11948 #: build/C/man3/getlogin.3:108
11949 msgid ""
11950 "The calling process already has the maximum allowed number of open files."
11951 msgstr ""
11952 "呼び出し元プロセスがオープンしているファイル数がすでにプロセスあたりの 上限に"
11953 "達している。"
11954
11955 #. type: Plain text
11956 #: build/C/man3/getlogin.3:111
11957 msgid "The system already has the maximum allowed number of open files."
11958 msgstr "システム全体でオープンしているファイル数がすでに上限に達している。"
11959
11960 #. type: TP
11961 #: build/C/man3/getlogin.3:111
11962 #, no-wrap
11963 msgid "B<ENXIO>"
11964 msgstr "B<ENXIO>"
11965
11966 #. type: Plain text
11967 #: build/C/man3/getlogin.3:114
11968 msgid "The calling process has no controlling terminal."
11969 msgstr "呼び出し元プロセスには制御端末がない。"
11970
11971 #. type: Plain text
11972 #: build/C/man3/getlogin.3:120
11973 msgid ""
11974 "(getlogin_r)  The length of the username, including the terminating null "
11975 "byte (\\(aq\\e0\\(aq), is larger than I<bufsize>."
11976 msgstr ""
11977 "(getlogin_r)  (終端のヌルバイト (\\(aq\\e0\\(aq) も含めた) ユーザ名の長さが "
11978 "I<bufsize> よりも長い。"
11979
11980 #. type: Plain text
11981 #: build/C/man3/getlogin.3:122
11982 msgid "Linux/glibc also has"
11983 msgstr "Linux/glibc には以下のエラーもある。"
11984
11985 #. type: Plain text
11986 #: build/C/man3/getlogin.3:125
11987 msgid "There was no corresponding entry in the utmp-file."
11988 msgstr "utmp ファイルに対応するエントリがなかった。"
11989
11990 #. type: Plain text
11991 #: build/C/man3/getlogin.3:128
11992 msgid "Insufficient memory to allocate passwd structure."
11993 msgstr "passwd 構造体を割り当てるのに十分なメモリがない。"
11994
11995 #. type: TP
11996 #: build/C/man3/getlogin.3:128 build/C/man2/ioctl.2:109
11997 #: build/C/man2/ioctl.2:113 build/C/man3/tcgetpgrp.3:95
11998 #, no-wrap
11999 msgid "B<ENOTTY>"
12000 msgstr "B<ENOTTY>"
12001
12002 #. type: Plain text
12003 #: build/C/man3/getlogin.3:132
12004 msgid "Standard input didn't refer to a terminal.  (See BUGS.)"
12005 msgstr "標準入力が端末を参照していない (「バグ」の節を参照)。"
12006
12007 #. type: TP
12008 #: build/C/man3/getlogin.3:133
12009 #, no-wrap
12010 msgid "I</etc/passwd>"
12011 msgstr "I</etc/passwd>"
12012
12013 #. type: Plain text
12014 #: build/C/man3/getlogin.3:136
12015 msgid "password database file"
12016 msgstr "パスワードデータベースのファイル"
12017
12018 #. type: TP
12019 #: build/C/man3/getlogin.3:136
12020 #, no-wrap
12021 msgid "I</var/run/utmp>"
12022 msgstr "I</var/run/utmp>"
12023
12024 #. type: Plain text
12025 #: build/C/man3/getlogin.3:140
12026 msgid "(traditionally I</etc/utmp>; some libc versions used I</var/adm/utmp>)"
12027 msgstr ""
12028 "(伝統的には I</etc/utmp> が使われている; libc の中には I</var/adm/utmp> を使"
12029 "うものもある)"
12030
12031 #. type: Plain text
12032 #: build/C/man3/getlogin.3:145
12033 msgid "The B<getlogin>()  function is not thread-safe."
12034 msgstr "B<getlogin>() 関数はスレッドセーフではない。"
12035
12036 #. type: Plain text
12037 #: build/C/man3/getlogin.3:149
12038 msgid "The B<getlogin_r>()  function is thread-safe."
12039 msgstr "B<getlogin_r>() 関数はスレッドセーフである。"
12040
12041 #. type: Plain text
12042 #: build/C/man3/getlogin.3:154
12043 msgid ""
12044 "The B<cuserid>()  function is thread-safe with exceptions.  It is not thread-"
12045 "safe if called with a NULL parameter."
12046 msgstr ""
12047 "B<cuserid>() 関数は、例外付きのスレッドセーフである。 パラメータ NULL で呼び"
12048 "出した場合はスレッドセーフではない。"
12049
12050 #. type: Plain text
12051 #: build/C/man3/getlogin.3:159
12052 msgid "B<getlogin>()  and B<getlogin_r>()  specified in POSIX.1-2001."
12053 msgstr "B<getlogin>()  と B<getlogin_r>()  は POSIX.1-2001 で規定されている。"
12054
12055 #. type: Plain text
12056 #: build/C/man3/getlogin.3:170
12057 msgid ""
12058 "System V has a B<cuserid>()  function which uses the real user ID rather "
12059 "than the effective user ID.  The B<cuserid>()  function was included in the "
12060 "1988 version of POSIX, but removed from the 1990 version.  It was present in "
12061 "SUSv2, but removed in POSIX.1-2001."
12062 msgstr ""
12063 "System V にも B<cuserid>()  があるが、 これは実効ユーザー ID ではなく、実ユー"
12064 "ザー ID を使用する。 B<cuserid>()  関数は 1988 年版の POSIX には含まれていた"
12065 "が、 1990 年版では削除された。 SUSv2 に存在したが、POSIX.1-2001 で削除され"
12066 "た。"
12067
12068 #. type: Plain text
12069 #: build/C/man3/getlogin.3:177
12070 msgid ""
12071 "OpenBSD has B<getlogin>()  and B<setlogin>(), and a username associated with "
12072 "a session, even if it has no controlling terminal."
12073 msgstr ""
12074 "OpenBSD には B<getlogin>()  と B<setlogin>()  があり、 セッションに対応した"
12075 "ユーザ名がある。制御端末がない セッションの場合であっても、対応するユーザ名が"
12076 "ある。"
12077
12078 #. type: Plain text
12079 #: build/C/man3/getlogin.3:189
12080 msgid ""
12081 "Unfortunately, it is often rather easy to fool B<getlogin>().  Sometimes it "
12082 "does not work at all, because some program messed up the utmp file.  Often, "
12083 "it gives only the first 8 characters of the login name.  The user currently "
12084 "logged in on the controlling terminal of our program need not be the user "
12085 "who started it.  Avoid B<getlogin>()  for security-related purposes."
12086 msgstr ""
12087 "残念ながら、 B<getlogin>() をだますのはそれほど難しいことではない。別のプログ"
12088 "ラムが utmp ファイルを 壊してしまうと、全く動作しないこともある。またログイン"
12089 "名の最初の 8 文字 しか返さないことも多い。また、プログラムの制御端末に現在ロ"
12090 "グインしているユーザーは、プログラムを実行したユーザーでない場合もある。 セ"
12091 "キュリティの絡む用途には B<getlogin>() を用いるべきではない。"
12092
12093 #. type: Plain text
12094 #: build/C/man3/getlogin.3:199
12095 msgid ""
12096 "Note that glibc does not follow the POSIX specification and uses I<stdin> "
12097 "instead of I</dev/tty>.  A bug.  (Other recent systems, like SunOS 5.8 and "
12098 "HP-UX 11.11 and FreeBSD 4.8 all return the login name also when I<stdin> is "
12099 "redirected.)"
12100 msgstr ""
12101 "glibc は POSIX 仕様には従っておらず、 I</dev/tty> ではなく I<標準入力 "
12102 "(stdin)> を使う。これはバグである。 (SunOS 5.8 や HP-UX 11.11 や FreeBSD 4.8 "
12103 "といった他の最近のシステムはいずれも、 I<標準入力> がリダイレクトされた場合で"
12104 "もログイン名を返す。)"
12105
12106 #. type: Plain text
12107 #: build/C/man3/getlogin.3:209
12108 msgid ""
12109 "Nobody knows precisely what B<cuserid>()  does; avoid it in portable "
12110 "programs.  Or avoid it altogether: use I<getpwuid(geteuid())> instead, if "
12111 "that is what you meant.  B<Do not use> B<cuserid>()."
12112 msgstr ""
12113 "B<cuserid>()  が何を行っているのか、実際のところを知っている者は誰もいない; "
12114 "移植性が求められるプログラムでは B<cuserid>()  は使うべきではない。 というか"
12115 "どんなプログラムでも使うべきではない: 代わりに I<getpwuid(geteuid())> を用い"
12116 "るべきである (これが意図していることならば、だが)。 B<cuserid>()  は「使わな"
12117 "い」こと。"
12118
12119 #. type: Plain text
12120 #: build/C/man3/getlogin.3:213
12121 msgid "B<geteuid>(2), B<getuid>(2), B<utmp>(5)"
12122 msgstr "B<geteuid>(2), B<getuid>(2), B<utmp>(5)"
12123
12124 #. type: TH
12125 #: build/C/man3/getopt.3:41
12126 #, no-wrap
12127 msgid "GETOPT"
12128 msgstr "GETOPT"
12129
12130 #. type: TH
12131 #: build/C/man3/getopt.3:41 build/C/man2/ioctl.2:41 build/C/man3/sysconf.3:27
12132 #, no-wrap
12133 msgid "2014-12-31"
12134 msgstr "2014-12-31"
12135
12136 #. type: Plain text
12137 #: build/C/man3/getopt.3:45
12138 msgid ""
12139 "getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - "
12140 "Parse command-line options"
12141 msgstr ""
12142 "getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - コマ"
12143 "ンドラインオプションを解釈する"
12144
12145 #. type: Plain text
12146 #: build/C/man3/getopt.3:51
12147 #, no-wrap
12148 msgid ""
12149 "B<int getopt(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12150 "B<           const char *>I<optstring>B<);>\n"
12151 msgstr ""
12152 "B<int getopt(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12153 "B<           const char *>I<optstring>B<);>\n"
12154
12155 #. type: Plain text
12156 #: build/C/man3/getopt.3:54
12157 #, no-wrap
12158 msgid ""
12159 "B<extern char *>I<optarg>B<;>\n"
12160 "B<extern int >I<optind>B<, >I<opterr>B<, >I<optopt>B<;>\n"
12161 msgstr ""
12162 "B<extern char *>I<optarg>B<;>\n"
12163 "B<extern int >I<optind>B<, >I<opterr>B<, >I<optopt>B<;>\n"
12164
12165 #. type: Plain text
12166 #: build/C/man3/getopt.3:56
12167 #, no-wrap
12168 msgid "B<#include E<lt>getopt.hE<gt>>\n"
12169 msgstr "B<#include E<lt>getopt.hE<gt>>\n"
12170
12171 #. type: Plain text
12172 #: build/C/man3/getopt.3:60
12173 #, no-wrap
12174 msgid ""
12175 "B<int getopt_long(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12176 "B<           const char *>I<optstring>B<,>\n"
12177 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12178 msgstr ""
12179 "B<int getopt_long(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12180 "B<           const char *>I<optstring>B<,>\n"
12181 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12182
12183 #. type: Plain text
12184 #: build/C/man3/getopt.3:64
12185 #, no-wrap
12186 msgid ""
12187 "B<int getopt_long_only(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12188 "B<           const char *>I<optstring>B<,>\n"
12189 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12190 msgstr ""
12191 "B<int getopt_long_only(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12192 "B<           const char *>I<optstring>B<,>\n"
12193 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12194
12195 #. type: Plain text
12196 #: build/C/man3/getopt.3:74
12197 msgid "B<getopt>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
12198 msgstr "B<getopt>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
12199
12200 #. type: Plain text
12201 #: build/C/man3/getopt.3:78
12202 msgid "B<getopt_long>(), B<getopt_long_only>(): _GNU_SOURCE"
12203 msgstr "B<getopt_long>(), B<getopt_long_only>(): _GNU_SOURCE"
12204
12205 #. type: Plain text
12206 #: build/C/man3/getopt.3:99
12207 msgid ""
12208 "The B<getopt>()  function parses the command-line arguments.  Its arguments "
12209 "I<argc> and I<argv> are the argument count and array as passed to the "
12210 "I<main>()  function on program invocation.  An element of I<argv> that "
12211 "starts with \\(aq-\\(aq (and is not exactly \"-\" or \"--\")  is an option "
12212 "element.  The characters of this element (aside from the initial \\(aq-"
12213 "\\(aq) are option characters.  If B<getopt>()  is called repeatedly, it "
12214 "returns successively each of the option characters from each of the option "
12215 "elements."
12216 msgstr ""
12217 "B<getopt>()  関数はコマンドライン引き数を解釈する。 B<getopt>()  がとる引き"
12218 "数 I<argc> と I<argv> は、それぞれプログラムの起動時に I<main>()  関数に渡さ"
12219 "れた引き数の個数と配列である。 I<argv> の要素のうち \\(aq-\\(aq で始まるもの "
12220 "(かつ \"-\" 単独や \"--\" 単独ではないもの) は オプション要素 (option "
12221 "element) とみなされる。 この要素から先頭の \\(aq-\\(aq を除いた文字は オプ"
12222 "ション文字 (option character) とされる。 B<getopt>()  は、繰り返し呼び出され"
12223 "るごとに、次のオプション文字を返す。"
12224
12225 #. type: Plain text
12226 #: build/C/man3/getopt.3:108
12227 msgid ""
12228 "The variable I<optind> is the index of the next element to be processed in "
12229 "I<argv>.  The system initializes this value to 1.  The caller can reset it "
12230 "to 1 to restart scanning of the same I<argv>, or when scanning a new "
12231 "argument vector."
12232 msgstr ""
12233 "変数 I<optind> は、 I<argv> の次に処理される要素のインデックスである。 システ"
12234 "ムによりこの変数の値は 1 に初期化される。 呼び出し側でこの値を 1 にリセットす"
12235 "ることで、同じ I<argv> のスキャンをやり直したり、新しい引き数ベクトルをスキャ"
12236 "ンすることができる。"
12237
12238 #. type: Plain text
12239 #: build/C/man3/getopt.3:118
12240 msgid ""
12241 "If B<getopt>()  finds another option character, it returns that character, "
12242 "updating the external variable I<optind> and a static variable I<nextchar> "
12243 "so that the next call to B<getopt>()  can resume the scan with the following "
12244 "option character or I<argv>-element."
12245 msgstr ""
12246 "新たなオプション文字を見つけると、 B<getopt>()  はその文字を返し、 外部変数 "
12247 "I<optind> とスタティックな変数 I<nextchar> を更新する。 これらによって、 "
12248 "B<getopt>()  は次回の呼び出しの際に、 以降のオプション文字や I<argv> 要素のス"
12249 "キャンを継続できる。"
12250
12251 #. type: Plain text
12252 #: build/C/man3/getopt.3:124
12253 msgid ""
12254 "If there are no more option characters, B<getopt>()  returns -1.  Then "
12255 "I<optind> is the index in I<argv> of the first I<argv>-element that is not "
12256 "an option."
12257 msgstr ""
12258 "オプション文字がそれ以上見つからなくなると、 B<getopt>()  は -1 を返す。そし"
12259 "て I<optind> は、I<argv> の要素のうち、 オプションでない最初の要素を示すよう"
12260 "になる。"
12261
12262 #. type: Plain text
12263 #: build/C/man3/getopt.3:151
12264 msgid ""
12265 "I<optstring> is a string containing the legitimate option characters.  If "
12266 "such a character is followed by a colon, the option requires an argument, so "
12267 "B<getopt>()  places a pointer to the following text in the same I<argv>-"
12268 "element, or the text of the following I<argv>-element, in I<optarg>.  Two "
12269 "colons mean an option takes an optional arg; if there is text in the current "
12270 "I<argv>-element (i.e., in the same word as the option name itself, for "
12271 "example, \"-oarg\"), then it is returned in I<optarg>, otherwise I<optarg> "
12272 "is set to zero.  This is a GNU extension.  If I<optstring> contains B<W> "
12273 "followed by a semicolon, then B<-W foo> is treated as the long option B<--"
12274 "foo>.  (The B<-W> option is reserved by POSIX.2 for implementation "
12275 "extensions.)  This behavior is a GNU extension, not available with libraries "
12276 "before glibc 2."
12277 msgstr ""
12278 "I<optstring> は受け付けるオプション文字からなる文字列である。 文字のあとにコ"
12279 "ロン (:) が置かれている場合は、 オプションには引き数が必要であることを示す。 "
12280 "このとき B<getopt>()  は、現在注目している I<argv> 要素で、オプション文字に引"
12281 "き続くテキストへのポインタか、 あるいは次の I<argv> 要素のテキストへのポイン"
12282 "タを I<optarg> に代入する。 2 個連続してコロンが置かれている場合は、 そのオプ"
12283 "ションは引き数をとってもとらなくてもよい。 現在の I<argv> 要素にテキストがあ"
12284 "れば (つまり、\"-oarg\" のように、オプション名自身と同じワード内に テキストが"
12285 "ある場合)、それが I<optarg> に返される。 なければ I<optarg> は 0 に設定され"
12286 "る。 これは GNU による拡張である。 I<optstring> に B<W> とそれに続くセミコロ"
12287 "ンが入っていると、 B<-W foo> は長いオプション B<--foo> と同じように扱われる "
12288 "(POSIX.2 は B<-W> オプションを実装依存の拡張として予約している)。 この動作は "
12289 "GNU による拡張であり、glibc 2 以前のライブラリでは 利用できない。"
12290
12291 #. type: Plain text
12292 #: build/C/man3/getopt.3:169
12293 msgid ""
12294 "By default, B<getopt>()  permutes the contents of I<argv> as it scans, so "
12295 "that eventually all the nonoptions are at the end.  Two other modes are also "
12296 "implemented.  If the first character of I<optstring> is \\(aq+\\(aq or the "
12297 "environment variable B<POSIXLY_CORRECT> is set, then option processing stops "
12298 "as soon as a nonoption argument is encountered.  If the first character of "
12299 "I<optstring> is \\(aq-\\(aq, then each nonoption I<argv>-element is handled "
12300 "as if it were the argument of an option with character code 1.  (This is "
12301 "used by programs that were written to expect options and other I<argv>-"
12302 "elements in any order and that care about the ordering of the two.)  The "
12303 "special argument \"--\" forces an end of option-scanning regardless of the "
12304 "scanning mode."
12305 msgstr ""
12306 "デフォルトでは B<getopt>()  は I<argv> をスキャンする際に順序を変更し、 オプ"
12307 "ション以外の要素を最後に移動する。 他にも 2 つのモードが実装されている。 "
12308 "I<optstring> の先頭文字が \\(aq+\\(aq であるか、環境変数 B<POSIXLY_CORRECT> "
12309 "が設定されている場合には、オプションを対象とする動作は、 非オプションの引き数"
12310 "が現れた段階で終了する。 I<optstring> の先頭文字が \\(aq-\\(aq である場合に"
12311 "は、 オプションでない I<argv> 要素は、 文字コード 1 のオプションであるかのよ"
12312 "うに扱われる (これを用いるプログラムは、 オプションや I<argv> 要素を任意の順"
12313 "序で受け入れ、かつそれらの順序が 意味を持つように書かれている必要がある)。 "
12314 "\"--\" は特殊な引き数で、スキャンのモードによらず、 オプションのスキャンを強"
12315 "制的に終了させる。"
12316
12317 #. type: Plain text
12318 #: build/C/man3/getopt.3:177
12319 msgid ""
12320 "If B<getopt>()  does not recognize an option character, it prints an error "
12321 "message to I<stderr>, stores the character in I<optopt>, and returns \\(aq?"
12322 "\\(aq.  The calling program may prevent the error message by setting "
12323 "I<opterr> to 0."
12324 msgstr ""
12325 "認識できないオプション文字があると、 B<getopt>()  はエラーメッセージを標準エ"
12326 "ラー出力 I<stderr> に表示し、 その文字を I<optopt> に保存して \\(aq?\\(aq を"
12327 "返す。 呼び出したプログラムで I<opterr> を 0 にしておけば、 エラーメッセージ"
12328 "の表示を抑制できる。"
12329
12330 #. type: Plain text
12331 #: build/C/man3/getopt.3:196
12332 msgid ""
12333 "If B<getopt>()  finds an option character in I<argv> that was not included "
12334 "in I<optstring>, or if it detects a missing option argument, it returns "
12335 "\\(aq?\\(aq and sets the external variable I<optopt> to the actual option "
12336 "character.  If the first character (following any optional \\(aq+\\(aq or "
12337 "\\(aq-\\(aq described above)  of I<optstring> is a colon (\\(aq:\\(aq), then "
12338 "B<getopt>()  returns \\(aq:\\(aq instead of \\(aq?\\(aq to indicate a "
12339 "missing option argument.  If an error was detected, and the first character "
12340 "of I<optstring> is not a colon, and the external variable I<opterr> is "
12341 "nonzero (which is the default), B<getopt>()  prints an error message."
12342 msgstr ""
12343 "B<getopt>()  は I<argv> の中に I<optstring> にないオプション文字を見つけた場"
12344 "合、 またはオプション引き数が足りないことが分かった場合、 \\&\\(aq?\\(aq を返"
12345 "して外部変数 I<optopt> をそのオプション文字に設定する。 I<optstring> の (上で"
12346 "説明したオプションで指定できる \\&\\(aq+\\(aq または \\(aq-\\(aq 後に続く) 最"
12347 "初の文字が コロン (\\(aq:\\(aq) のとき、 B<getopt>()  はオプション引き数が足"
12348 "りない場合に \\(aq?\\(aq ではなく \\(aq:\\(aq を返す。 エラーを見つけた場合"
12349 "で、かつ I<optstring> の最初の文字がコロンでなく、 かつ外部変数 I<opterr> が "
12350 "0 でない場合 (これがデフォルト)、 B<getopt>()  はエラーメッセージを表示する。"
12351
12352 #. type: SS
12353 #: build/C/man3/getopt.3:196
12354 #, no-wrap
12355 msgid "getopt_long() and getopt_long_only()"
12356 msgstr "getopt_long() と getopt_long_only()"
12357
12358 #. type: Plain text
12359 #: build/C/man3/getopt.3:212
12360 msgid ""
12361 "The B<getopt_long>()  function works like B<getopt>()  except that it also "
12362 "accepts long options, started with two dashes.  (If the program accepts only "
12363 "long options, then I<optstring> should be specified as an empty string "
12364 "(\"\"), not NULL.)  Long option names may be abbreviated if the abbreviation "
12365 "is unique or is an exact match for some defined option.  A long option may "
12366 "take a parameter, of the form B<--arg=param> or B<--arg param>."
12367 msgstr ""
12368 "B<getopt_long>()  関数は、長いオプション (2 つのダッシュ \"--\" で始まるオプ"
12369 "ション) を 受け入れることを除いて B<getopt>()  と同じように動作する (プログラ"
12370 "ムに長いオプションだけが渡された場合、 I<optstring> は NULL ではなく空文字列 "
12371 "(\"\") となる)。 長いオプションの名前は、他と重ならない範囲において短縮でき"
12372 "る。 あるいは定義されたオプションに正確にマッチするものでも (当然) かまわな"
12373 "い。 長いオプションは引き数を取ることができ、 B<--arg=param> または B<--arg "
12374 "param> と言う形式で指定する。"
12375
12376 #. type: Plain text
12377 #: build/C/man3/getopt.3:219
12378 msgid ""
12379 "I<longopts> is a pointer to the first element of an array of I<struct "
12380 "option> declared in I<E<lt>getopt.hE<gt>> as"
12381 msgstr ""
12382 "I<longopts> は I<struct option> の要素からなる配列の、先頭要素へのポインタで"
12383 "ある。 I<struct option> は I<E<lt>getopt.hE<gt>> で以下のように定義されてい"
12384 "る。"
12385
12386 #. type: Plain text
12387 #: build/C/man3/getopt.3:228
12388 #, no-wrap
12389 msgid ""
12390 "struct option {\n"
12391 "    const char *name;\n"
12392 "    int         has_arg;\n"
12393 "    int        *flag;\n"
12394 "    int         val;\n"
12395 "};\n"
12396 msgstr ""
12397 "struct option {\n"
12398 "    const char *name;\n"
12399 "    int         has_arg;\n"
12400 "    int        *flag;\n"
12401 "    int         val;\n"
12402 "};\n"
12403
12404 #. type: Plain text
12405 #: build/C/man3/getopt.3:232
12406 msgid "The meanings of the different fields are:"
12407 msgstr "それぞれのフィールドの意味は以下の通り。"
12408
12409 #. type: TP
12410 #: build/C/man3/getopt.3:232
12411 #, no-wrap
12412 msgid "I<name>"
12413 msgstr "I<name>"
12414
12415 #. type: Plain text
12416 #: build/C/man3/getopt.3:235
12417 msgid "is the name of the long option."
12418 msgstr "長いオプションの名前。"
12419
12420 #. type: TP
12421 #: build/C/man3/getopt.3:235
12422 #, no-wrap
12423 msgid "I<has_arg>"
12424 msgstr "I<has_arg>"
12425
12426 #. type: Plain text
12427 #: build/C/man3/getopt.3:241
12428 msgid ""
12429 "is: B<no_argument> (or 0) if the option does not take an argument; "
12430 "B<required_argument> (or 1) if the option requires an argument; or "
12431 "B<optional_argument> (or 2) if the option takes an optional argument."
12432 msgstr ""
12433 "B<no_argument> (または 0) なら、オプションは引き数をとらない。 "
12434 "B<required_argument> (または 1) なら、オプションは引き数を必要とする。 "
12435 "B<optional_argument> (または 2) なら、オプションは引き数をとっても とらなくて"
12436 "も良い。"
12437
12438 #. type: TP
12439 #: build/C/man3/getopt.3:241
12440 #, no-wrap
12441 msgid "I<flag>"
12442 msgstr "I<flag>"
12443
12444 #. type: Plain text
12445 #: build/C/man3/getopt.3:255
12446 msgid ""
12447 "specifies how results are returned for a long option.  If I<flag> is NULL, "
12448 "then B<getopt_long>()  returns I<val>.  (For example, the calling program "
12449 "may set I<val> to the equivalent short option character.)  Otherwise, "
12450 "B<getopt_long>()  returns 0, and I<flag> points to a variable which is set "
12451 "to I<val> if the option is found, but left unchanged if the option is not "
12452 "found."
12453 msgstr ""
12454 "長いオプションに対する結果の返し方を指定する。I<flag> が NULL なら "
12455 "B<getopt_long>()  は I<val> を返す (例えば呼び出し元のプログラムは、 I<val> "
12456 "に等価なオプション文字を代入することができる)。 NULL 以外の場合には、 "
12457 "B<getopt_long>()  は 0 を返す。 このときオプションが見つかると I<flag> がポイ"
12458 "ントする変数に I<val> が代入される。見つからないとこの変数は変更されない。"
12459
12460 #. type: TP
12461 #: build/C/man3/getopt.3:255
12462 #, no-wrap
12463 msgid "I<val>"
12464 msgstr "I<val>"
12465
12466 #. type: Plain text
12467 #: build/C/man3/getopt.3:259
12468 msgid ""
12469 "is the value to return, or to load into the variable pointed to by I<flag>."
12470 msgstr "返り値、または I<flag> がポイントする変数へロードされる値。"
12471
12472 #. type: Plain text
12473 #: build/C/man3/getopt.3:261
12474 msgid "The last element of the array has to be filled with zeros."
12475 msgstr "配列の最後の要素は、全て 0 で埋められていなければならない。"
12476
12477 #. type: Plain text
12478 #: build/C/man3/getopt.3:265
12479 msgid ""
12480 "If I<longindex> is not NULL, it points to a variable which is set to the "
12481 "index of the long option relative to I<longopts>."
12482 msgstr ""
12483 "I<longindex> は、NULL でなければ、 長いオプションのインデックスを "
12484 "I<longopts> からの相対位置として保持している変数へのポインタとなる。"
12485
12486 #. type: Plain text
12487 #: build/C/man3/getopt.3:274
12488 msgid ""
12489 "B<getopt_long_only>()  is like B<getopt_long>(), but \\(aq-\\(aq as well as "
12490 "\"--\" can indicate a long option.  If an option that starts with \\(aq-"
12491 "\\(aq (not \"--\") doesn't match a long option, but does match a short "
12492 "option, it is parsed as a short option instead."
12493 msgstr ""
12494 "B<getopt_long_only>()  は B<getopt_long>()  と同様の動作をするが、 \\(aq-"
12495 "\\(aq も \"--\" と同様に、 長いオプションとして扱われる。\\(aq-\\(aq で始ま"
12496 "る (\"--\" 以外の) オプションが、長いものにはマッチしないが短いものに マッチ"
12497 "する場合においては、それは短いオプションとして解釈される。"
12498
12499 #. type: Plain text
12500 #: build/C/man3/getopt.3:292
12501 msgid ""
12502 "If an option was successfully found, then B<getopt>()  returns the option "
12503 "character.  If all command-line options have been parsed, then B<getopt>()  "
12504 "returns -1.  If B<getopt>()  encounters an option character that was not in "
12505 "I<optstring>, then \\(aq?\\(aq is returned.  If B<getopt>()  encounters an "
12506 "option with a missing argument, then the return value depends on the first "
12507 "character in I<optstring>: if it is \\(aq:\\(aq, then \\(aq:\\(aq is "
12508 "returned; otherwise \\(aq?\\(aq is returned."
12509 msgstr ""
12510 "オプションが正常に見つかれば B<getopt>()  はそのオプション文字を返す。 すべて"
12511 "のコマンドラインオプションの解析が終わったら、 B<getopt>()  は -1 を返す。 "
12512 "I<optstring> に含まれないオプション文字が見つかると、\\(aq?\\(aq を返す。 引"
12513 "き数が足りないオプションが見つかった場合、 返り値は I<optstring> の最初の文字"
12514 "による異なる: 最初の文字が \\(aq:\\(aq であれば \\(aq:\\(aq を返し、 それ以外"
12515 "の場合は \\(aq?\\(aq を返す。"
12516
12517 #. type: Plain text
12518 #: build/C/man3/getopt.3:304
12519 msgid ""
12520 "B<getopt_long>()  and B<getopt_long_only>()  also return the option "
12521 "character when a short option is recognized.  For a long option, they return "
12522 "I<val> if I<flag> is NULL, and 0 otherwise.  Error and -1 returns are the "
12523 "same as for B<getopt>(), plus \\(aq?\\(aq for an ambiguous match or an "
12524 "extraneous parameter."
12525 msgstr ""
12526 "B<getopt_long>()  と B<getopt_long_only>()  も、 短いオプション文字を認識した"
12527 "場合にはその文字を返す。 長いオプションに対しては、 I<flag> が NULL なら "
12528 "I<val> を返し、 I<flag> が NULL 以外なら 0 を返す。 エラーと -1 の返り値は "
12529 "B<getopt>()  と同じである。 さらに \\(aq?\\(aq は、マッチが確定できない場合や"
12530 "余分なパラメーターがある場合にも返る。"
12531
12532 #. type: SH
12533 #: build/C/man3/getopt.3:304
12534 #, no-wrap
12535 msgid "ENVIRONMENT"
12536 msgstr "環境"
12537
12538 #. type: TP
12539 #: build/C/man3/getopt.3:305
12540 #, no-wrap
12541 msgid "B<POSIXLY_CORRECT>"
12542 msgstr "B<POSIXLY_CORRECT>"
12543
12544 #. type: Plain text
12545 #: build/C/man3/getopt.3:309
12546 msgid ""
12547 "If this is set, then option processing stops as soon as a nonoption argument "
12548 "is encountered."
12549 msgstr ""
12550 "これが設定されていると、非オプションの引き数に到達した時点でオプション に対す"
12551 "る操作が停止される。"
12552
12553 #. type: TP
12554 #: build/C/man3/getopt.3:309
12555 #, no-wrap
12556 msgid "B<_E<lt>PIDE<gt>_GNU_nonoption_argv_flags_>"
12557 msgstr "B<_E<lt>PIDE<gt>_GNU_nonoption_argv_flags_>"
12558
12559 #. type: Plain text
12560 #: build/C/man3/getopt.3:318
12561 msgid ""
12562 "This variable was used by B<bash>(1)  2.0 to communicate to glibc which "
12563 "arguments are the results of wildcard expansion and so should not be "
12564 "considered as options.  This behavior was removed in B<bash>(1)  version "
12565 "2.01, but the support remains in glibc."
12566 msgstr ""
12567 "この変数は B<bash>(1)  2.0 が glibc と通信するために用いられた。 どの引き数が"
12568 "ワイルドカードを展開した結果で、 したがってオプションとみなすべきでないかを知"
12569 "らせるものである。 この機能は B<bash>(1)  のバージョン 2.01 で削除されたが、"
12570 "glibc にはまだ残っている。"
12571
12572 #. type: TP
12573 #: build/C/man3/getopt.3:319
12574 #, no-wrap
12575 msgid "B<getopt>():"
12576 msgstr "B<getopt>():"
12577
12578 #. type: Plain text
12579 #: build/C/man3/getopt.3:329
12580 msgid ""
12581 "POSIX.2 and POSIX.1-2001, provided the environment variable "
12582 "B<POSIXLY_CORRECT> is set.  Otherwise, the elements of I<argv> aren't really "
12583 "const, because we permute them.  We pretend they're const in the prototype "
12584 "to be compatible with other systems."
12585 msgstr ""
12586 "環境変数 B<POSIXLY_CORRECT> が設定されている場合は POSIX.2 と POSIX.1-2001 に"
12587 "準拠する。 他の場合は I<argv> の要素は本当の意味での定数にはならない。 なぜな"
12588 "ら順序が変更されてしまうからである。 ただしそれらは、プロトタイプでは定数であ"
12589 "るかのようにしてある。 これは他のシステムとの互換性のためである。"
12590
12591 #. type: Plain text
12592 #: build/C/man3/getopt.3:333
12593 msgid ""
12594 "The use of \\(aq+\\(aq and \\(aq-\\(aq in I<optstring> is a GNU extension."
12595 msgstr ""
12596 "I<optstring> で \\(aq+\\(aq や \\(aq-\\(aq を使うのは GNU による拡張である."
12597
12598 #. type: Plain text
12599 #: build/C/man3/getopt.3:347
12600 msgid ""
12601 "On some older implementations, B<getopt>()  was declared in I<E<lt>stdio."
12602 "hE<gt>>.  SUSv1 permitted the declaration to appear in either I<E<lt>unistd."
12603 "hE<gt>> or I<E<lt>stdio.hE<gt>>.  POSIX.1-2001 marked the use of "
12604 "I<E<lt>stdio.hE<gt>> for this purpose as LEGACY.  POSIX.1-2001 does not "
12605 "allow the declaration to appear in I<E<lt>stdio.hE<gt>>."
12606 msgstr ""
12607 "古い実装のいくつかでは、 B<getopt>()  は I<E<lt>stdio.hE<gt>> で宣言されてい"
12608 "た。 SUSv1 では、 I<E<lt>unistd.hE<gt>> か I<E<lt>stdio.hE<gt>> のどちらかで "
12609 "宣言してもよかった。 POSIX.1-2001 では、 B<getopt> の宣言を I<E<lt>stdio."
12610 "hE<gt>> で行うのは「過去の名残」であるとされた。 POSIX.1-2001 では "
12611 "I<E<lt>stdio.hE<gt>> で宣言を行うことを認めていない。"
12612
12613 #. type: TP
12614 #: build/C/man3/getopt.3:347
12615 #, no-wrap
12616 msgid "B<getopt_long>() and B<getopt_long_only>():"
12617 msgstr "B<getopt_long>(), B<getopt_long_only>():"
12618
12619 #. type: Plain text
12620 #: build/C/man3/getopt.3:369
12621 msgid ""
12622 "A program that scans multiple argument vectors, or rescans the same vector "
12623 "more than once, and wants to make use of GNU extensions such as \\(aq+\\(aq "
12624 "and \\(aq-\\(aq at the start of I<optstring>, or changes the value of "
12625 "B<POSIXLY_CORRECT> between scans, must reinitialize B<getopt>()  by "
12626 "resetting I<optind> to 0, rather than the traditional value of 1.  "
12627 "(Resetting to 0 forces the invocation of an internal initialization routine "
12628 "that rechecks B<POSIXLY_CORRECT> and checks for GNU extensions in "
12629 "I<optstring>.)"
12630 msgstr ""
12631 "複数の引き数ベクトルをスキャンしたり、同じ引き数ベクトルを二回以上 スキャンす"
12632 "るようなプログラムで、 I<optstring> の先頭で \\(aq+\\(aq や \\(aq-\\(aq と"
12633 "いった GNU による拡張機能を使用したり、 引き数ベクトルの切り替え時に "
12634 "B<POSIXLY_CORRECT> の値を変更したりする場合には、 I<optind> を伝統的な 1 では"
12635 "なく 0 にリセットすることで B<getopt>()  を再初期化しなければならない (0 にリ"
12636 "セットすることで、 B<POSIXLY_CORRECT> や I<optstring> の GNU 拡張機能のチェッ"
12637 "クを行う内部初期化ルーチンが起動される)。"
12638
12639 #. type: Plain text
12640 #: build/C/man3/getopt.3:376
12641 msgid ""
12642 "The POSIX.2 specification of B<getopt>()  has a technical error described in "
12643 "POSIX.2 Interpretation 150.  The GNU implementation (and probably all other "
12644 "implementations) implements the correct behavior rather than that specified."
12645 msgstr ""
12646 "POSIX.2 における B<getopt>()  の仕様には技術的な問題があり、 その内容は "
12647 "POSIX.2 Interpretation 150 に記されている。 GNU による実装では (おそらく他の"
12648 "すべての実装でも)、 仕様と異なる正しい動作をするように実装されている。"
12649
12650 #. type: SS
12651 #: build/C/man3/getopt.3:377
12652 #, no-wrap
12653 msgid "getopt()"
12654 msgstr "getopt()"
12655
12656 #. type: Plain text
12657 #: build/C/man3/getopt.3:385
12658 msgid ""
12659 "The following trivial example program uses B<getopt>()  to handle two "
12660 "program options: I<-n>, with no associated value; and I<-t val>, which "
12661 "expects an associated value."
12662 msgstr ""
12663 "以下に示す簡単なサンプルプログラムでは、 二種類のプログラムオプションを扱うの"
12664 "に B<getopt>()  を使用している。一つは値を伴わない I<-n> で、もう一つは対応す"
12665 "る値が必要な I<-t val> である。"
12666
12667 #. type: Plain text
12668 #: build/C/man3/getopt.3:390
12669 #, no-wrap
12670 msgid ""
12671 "#include E<lt>unistd.hE<gt>\n"
12672 "#include E<lt>stdlib.hE<gt>\n"
12673 "#include E<lt>stdio.hE<gt>\n"
12674 msgstr ""
12675 "#include E<lt>unistd.hE<gt>\n"
12676 "#include E<lt>stdlib.hE<gt>\n"
12677 "#include E<lt>stdio.hE<gt>\n"
12678
12679 #. type: Plain text
12680 #: build/C/man3/getopt.3:396
12681 #, no-wrap
12682 msgid ""
12683 "int\n"
12684 "main(int argc, char *argv[])\n"
12685 "{\n"
12686 "    int flags, opt;\n"
12687 "    int nsecs, tfnd;\n"
12688 msgstr ""
12689 "int\n"
12690 "main(int argc, char *argv[])\n"
12691 "{\n"
12692 "    int flags, opt;\n"
12693 "    int nsecs, tfnd;\n"
12694
12695 #. type: Plain text
12696 #: build/C/man3/getopt.3:415
12697 #, no-wrap
12698 msgid ""
12699 "    nsecs = 0;\n"
12700 "    tfnd = 0;\n"
12701 "    flags = 0;\n"
12702 "    while ((opt = getopt(argc, argv, \"nt:\")) != -1) {\n"
12703 "        switch (opt) {\n"
12704 "        case \\(aqn\\(aq:\n"
12705 "            flags = 1;\n"
12706 "            break;\n"
12707 "        case \\(aqt\\(aq:\n"
12708 "            nsecs = atoi(optarg);\n"
12709 "            tfnd = 1;\n"
12710 "            break;\n"
12711 "        default: /* \\(aq?\\(aq */\n"
12712 "            fprintf(stderr, \"Usage: %s [-t nsecs] [-n] name\\en\",\n"
12713 "                    argv[0]);\n"
12714 "            exit(EXIT_FAILURE);\n"
12715 "        }\n"
12716 "    }\n"
12717 msgstr ""
12718 "    nsecs = 0;\n"
12719 "    tfnd = 0;\n"
12720 "    flags = 0;\n"
12721 "    while ((opt = getopt(argc, argv, \"nt:\")) != -1) {\n"
12722 "        switch (opt) {\n"
12723 "        case \\(aqn\\(aq:\n"
12724 "            flags = 1;\n"
12725 "            break;\n"
12726 "        case \\(aqt\\(aq:\n"
12727 "            nsecs = atoi(optarg);\n"
12728 "            tfnd = 1;\n"
12729 "            break;\n"
12730 "        default: /* \\(aq?\\(aq */\n"
12731 "            fprintf(stderr, \"Usage: %s [-t nsecs] [-n] name\\en\",\n"
12732 "                    argv[0]);\n"
12733 "            exit(EXIT_FAILURE);\n"
12734 "        }\n"
12735 "    }\n"
12736
12737 #. type: Plain text
12738 #: build/C/man3/getopt.3:418
12739 #, no-wrap
12740 msgid ""
12741 "    printf(\"flags=%d; tfnd=%d; nsecs=%d; optind=%d\\en\",\n"
12742 "            flags, tfnd, nsecs, optind);\n"
12743 msgstr ""
12744 "    printf(\"flags=%d; tfnd=%d; nsecs=%d; optind=%d\\en\",\n"
12745 "            flags, tfnd, nsecs, optind);\n"
12746
12747 #. type: Plain text
12748 #: build/C/man3/getopt.3:423
12749 #, no-wrap
12750 msgid ""
12751 "    if (optind E<gt>= argc) {\n"
12752 "        fprintf(stderr, \"Expected argument after options\\en\");\n"
12753 "        exit(EXIT_FAILURE);\n"
12754 "    }\n"
12755 msgstr ""
12756 "    if (optind E<gt>= argc) {\n"
12757 "        fprintf(stderr, \"Expected argument after options\\en\");\n"
12758 "        exit(EXIT_FAILURE);\n"
12759 "    }\n"
12760
12761 #. type: Plain text
12762 #: build/C/man3/getopt.3:425
12763 #, no-wrap
12764 msgid "    printf(\"name argument = %s\\en\", argv[optind]);\n"
12765 msgstr "    printf(\"name argument = %s\\en\", argv[optind]);\n"
12766
12767 #. type: Plain text
12768 #: build/C/man3/getopt.3:427
12769 #, no-wrap
12770 msgid "    /* Other code omitted */\n"
12771 msgstr "    /* Other code omitted */\n"
12772
12773 #. type: SS
12774 #: build/C/man3/getopt.3:431
12775 #, no-wrap
12776 msgid "getopt_long()"
12777 msgstr "getopt_long()"
12778
12779 #. type: Plain text
12780 #: build/C/man3/getopt.3:435
12781 msgid ""
12782 "The following example program illustrates the use of B<getopt_long>()  with "
12783 "most of its features."
12784 msgstr ""
12785 "以下は、 B<getopt_long>()  の使用法を、ほぼすべての機能について示したプログラ"
12786 "ムの例である。"
12787
12788 #. type: Plain text
12789 #: build/C/man3/getopt.3:440
12790 #, no-wrap
12791 msgid ""
12792 "#include E<lt>stdio.hE<gt>     /* for printf */\n"
12793 "#include E<lt>stdlib.hE<gt>    /* for exit */\n"
12794 "#include E<lt>getopt.hE<gt>\n"
12795 msgstr ""
12796 "#include E<lt>stdio.hE<gt>     /* for printf */\n"
12797 "#include E<lt>stdlib.hE<gt>    /* for exit */\n"
12798 "#include E<lt>getopt.hE<gt>\n"
12799
12800 #. type: Plain text
12801 #: build/C/man3/getopt.3:446
12802 #, no-wrap
12803 msgid ""
12804 "int\n"
12805 "main(int argc, char **argv)\n"
12806 "{\n"
12807 "    int c;\n"
12808 "    int digit_optind = 0;\n"
12809 msgstr ""
12810 "int\n"
12811 "main(int argc, char **argv) {\n"
12812 "    int c;\n"
12813 "    int digit_optind = 0;\n"
12814
12815 #. type: Plain text
12816 #: build/C/man3/getopt.3:459
12817 #, no-wrap
12818 msgid ""
12819 "    while (1) {\n"
12820 "        int this_option_optind = optind ? optind : 1;\n"
12821 "        int option_index = 0;\n"
12822 "        static struct option long_options[] = {\n"
12823 "            {\"add\",     required_argument, 0,  0 },\n"
12824 "            {\"append\",  no_argument,       0,  0 },\n"
12825 "            {\"delete\",  required_argument, 0,  0 },\n"
12826 "            {\"verbose\", no_argument,       0,  0 },\n"
12827 "            {\"create\",  required_argument, 0, \\(aqc\\(aq},\n"
12828 "            {\"file\",    required_argument, 0,  0 },\n"
12829 "            {0,         0,                 0,  0 }\n"
12830 "        };\n"
12831 msgstr ""
12832 "    while (1) {\n"
12833 "        int this_option_optind = optind ? optind : 1;\n"
12834 "        int option_index = 0;\n"
12835 "        static struct option long_options[] = {\n"
12836 "            {\"add\",     required_argument, 0,  0 },\n"
12837 "            {\"append\",  no_argument,       0,  0 },\n"
12838 "            {\"delete\",  required_argument, 0,  0 },\n"
12839 "            {\"verbose\", no_argument,       0,  0 },\n"
12840 "            {\"create\",  required_argument, 0, \\(aqc\\(aq},\n"
12841 "            {\"file\",    required_argument, 0,  0 },\n"
12842 "            {0,         0,                 0,  0 }\n"
12843 "        };\n"
12844
12845 #. type: Plain text
12846 #: build/C/man3/getopt.3:464
12847 #, no-wrap
12848 msgid ""
12849 "        c = getopt_long(argc, argv, \"abc:d:012\",\n"
12850 "                 long_options, &option_index);\n"
12851 "        if (c == -1)\n"
12852 "            break;\n"
12853 msgstr ""
12854 "        c = getopt_long(argc, argv, \"abc:d:012\",\n"
12855 "                 long_options, &option_index);\n"
12856 "        if (c == -1)\n"
12857 "            break;\n"
12858
12859 #. type: Plain text
12860 #: build/C/man3/getopt.3:472
12861 #, no-wrap
12862 msgid ""
12863 "        switch (c) {\n"
12864 "        case 0:\n"
12865 "            printf(\"option %s\", long_options[option_index].name);\n"
12866 "            if (optarg)\n"
12867 "                printf(\" with arg %s\", optarg);\n"
12868 "            printf(\"\\en\");\n"
12869 "            break;\n"
12870 msgstr ""
12871 "        switch (c) {\n"
12872 "        case 0:\n"
12873 "            printf(\"option %s\", long_options[option_index].name);\n"
12874 "            if (optarg)\n"
12875 "                printf(\" with arg %s\", optarg);\n"
12876 "            printf(\"\\en\");\n"
12877 "            break;\n"
12878
12879 #. type: Plain text
12880 #: build/C/man3/getopt.3:481
12881 #, no-wrap
12882 msgid ""
12883 "        case \\(aq0\\(aq:\n"
12884 "        case \\(aq1\\(aq:\n"
12885 "        case \\(aq2\\(aq:\n"
12886 "            if (digit_optind != 0 && digit_optind != this_option_optind)\n"
12887 "              printf(\"digits occur in two different argv-elements.\\en\");\n"
12888 "            digit_optind = this_option_optind;\n"
12889 "            printf(\"option %c\\en\", c);\n"
12890 "            break;\n"
12891 msgstr ""
12892 "        case \\(aq0\\(aq:\n"
12893 "        case \\(aq1\\(aq:\n"
12894 "        case \\(aq2\\(aq:\n"
12895 "            if (digit_optind != 0 && digit_optind != this_option_optind)\n"
12896 "              printf(\"digits occur in two different argv-elements.\\en\");\n"
12897 "            digit_optind = this_option_optind;\n"
12898 "            printf(\"option %c\\en\", c);\n"
12899 "            break;\n"
12900
12901 #. type: Plain text
12902 #: build/C/man3/getopt.3:485
12903 #, no-wrap
12904 msgid ""
12905 "        case \\(aqa\\(aq:\n"
12906 "            printf(\"option a\\en\");\n"
12907 "            break;\n"
12908 msgstr ""
12909 "        case \\(aqa\\(aq:\n"
12910 "            printf(\"option a\\en\");\n"
12911 "            break;\n"
12912
12913 #. type: Plain text
12914 #: build/C/man3/getopt.3:489
12915 #, no-wrap
12916 msgid ""
12917 "        case \\(aqb\\(aq:\n"
12918 "            printf(\"option b\\en\");\n"
12919 "            break;\n"
12920 msgstr ""
12921 "        case \\(aqb\\(aq:\n"
12922 "            printf(\"option b\\en\");\n"
12923 "            break;\n"
12924
12925 #. type: Plain text
12926 #: build/C/man3/getopt.3:493
12927 #, no-wrap
12928 msgid ""
12929 "        case \\(aqc\\(aq:\n"
12930 "            printf(\"option c with value \\(aq%s\\(aq\\en\", optarg);\n"
12931 "            break;\n"
12932 msgstr ""
12933 "        case \\(aqc\\(aq:\n"
12934 "            printf(\"option c with value \\(aq%s\\(aq\\en\", optarg);\n"
12935 "            break;\n"
12936
12937 #. type: Plain text
12938 #: build/C/man3/getopt.3:497
12939 #, no-wrap
12940 msgid ""
12941 "        case \\(aqd\\(aq:\n"
12942 "            printf(\"option d with value \\(aq%s\\(aq\\en\", optarg);\n"
12943 "            break;\n"
12944 msgstr ""
12945 "        case \\(aqd\\(aq:\n"
12946 "            printf(\"option d with value \\(aq%s\\(aq\\en\", optarg);\n"
12947 "            break;\n"
12948
12949 #. type: Plain text
12950 #: build/C/man3/getopt.3:500
12951 #, no-wrap
12952 msgid ""
12953 "        case \\(aq?\\(aq:\n"
12954 "            break;\n"
12955 msgstr ""
12956 "        case \\(aq?\\(aq:\n"
12957 "            break;\n"
12958
12959 #. type: Plain text
12960 #: build/C/man3/getopt.3:505
12961 #, no-wrap
12962 msgid ""
12963 "        default:\n"
12964 "            printf(\"?? getopt returned character code 0%o ??\\en\", c);\n"
12965 "        }\n"
12966 "    }\n"
12967 msgstr ""
12968 "        default:\n"
12969 "            printf(\"?? getopt returned character code 0%o ??\\en\", c);\n"
12970 "        }\n"
12971 "    }\n"
12972
12973 #. type: Plain text
12974 #: build/C/man3/getopt.3:512
12975 #, no-wrap
12976 msgid ""
12977 "    if (optind E<lt> argc) {\n"
12978 "        printf(\"non-option ARGV-elements: \");\n"
12979 "        while (optind E<lt> argc)\n"
12980 "            printf(\"%s \", argv[optind++]);\n"
12981 "        printf(\"\\en\");\n"
12982 "    }\n"
12983 msgstr ""
12984 "    if (optind E<lt> argc) {\n"
12985 "        printf(\"non-option ARGV-elements: \");\n"
12986 "        while (optind E<lt> argc)\n"
12987 "            printf(\"%s \", argv[optind++]);\n"
12988 "        printf(\"\\en\");\n"
12989 "    }\n"
12990
12991 #. type: Plain text
12992 #: build/C/man3/getopt.3:518
12993 msgid "B<getsubopt>(3)"
12994 msgstr "B<getsubopt>(3)"
12995
12996 #. type: TH
12997 #: build/C/man2/getpagesize.2:25
12998 #, no-wrap
12999 msgid "GETPAGESIZE"
13000 msgstr "GETPAGESIZE"
13001
13002 #. type: Plain text
13003 #: build/C/man2/getpagesize.2:28
13004 msgid "getpagesize - get memory page size"
13005 msgstr "getpagesize - メモリのページサイズを取得する"
13006
13007 #. type: Plain text
13008 #: build/C/man2/getpagesize.2:32
13009 msgid "B<int getpagesize(void);>"
13010 msgstr "B<int getpagesize(void);>"
13011
13012 #. type: Plain text
13013 #: build/C/man2/getpagesize.2:39
13014 msgid "B<getpagesize>():"
13015 msgstr "B<getpagesize>():"
13016
13017 #.  .SH HISTORY
13018 #.  This call first appeared in 4.2BSD.
13019 #. type: Plain text
13020 #: build/C/man2/getpagesize.2:64
13021 msgid ""
13022 "The function B<getpagesize>()  returns the number of bytes in a memory page, "
13023 "where \"page\" is a fixed-length block, the unit for memory allocation and "
13024 "file mapping performed by B<mmap>(2)."
13025 msgstr ""
13026 "B<getpagesize>() 関数はメモリページの大きさをバイト数で返す。\n"
13027 "ここでいう「ページ」は固定長のブロックであり、\n"
13028 "B<mmap>(2) で実行されるメモリ割り当てとファイルマッピングの単位である。"
13029
13030 #. type: Plain text
13031 #: build/C/man2/getpagesize.2:71
13032 msgid ""
13033 "SVr4, 4.4BSD, SUSv2.  In SUSv2 the B<getpagesize>()  call is labeled LEGACY, "
13034 "and in POSIX.1-2001 it has been dropped; HP-UX does not have this call."
13035 msgstr ""
13036 "SVr4, 4.4BSD, SUSv2.\n"
13037 "SUSv2 では B<getpagesize>() システムコールは「過去の遺物 (LEGACY)」とされてお"
13038 "り、\n"
13039 "POSIX.1-2001 からは外されている。 HP-UX にはこのシステムコールは存在しない。"
13040
13041 #. type: Plain text
13042 #: build/C/man2/getpagesize.2:76
13043 msgid ""
13044 "Portable applications should employ I<sysconf(_SC_PAGESIZE)> instead of "
13045 "B<getpagesize>():"
13046 msgstr ""
13047 "移植性が必要なアプリケーションでは、\n"
13048 "B<getpagesize>() ではなく I<sysconf(_SC_PAGESIZE)> を利用すべきである。"
13049
13050 #. type: Plain text
13051 #: build/C/man2/getpagesize.2:81
13052 #, no-wrap
13053 msgid ""
13054 "#include E<lt>unistd.hE<gt>\n"
13055 "long sz = sysconf(_SC_PAGESIZE);\n"
13056 msgstr ""
13057 "#include E<lt>unistd.hE<gt>\n"
13058 "long sz = sysconf(_SC_PAGESIZE);\n"
13059
13060 #. type: Plain text
13061 #: build/C/man2/getpagesize.2:88
13062 msgid "(Most systems allow the synonym B<_SC_PAGE_SIZE> for B<_SC_PAGESIZE>.)"
13063 msgstr ""
13064 "(ほとんどのシステムでは B<_SC_PAGESIZE> の同義語として\n"
13065 "B<_SC_PAGE_SIZE> を使用することができる。)"
13066
13067 #. type: Plain text
13068 #: build/C/man2/getpagesize.2:108
13069 msgid ""
13070 "Whether B<getpagesize>()  is present as a Linux system call depends on the "
13071 "architecture.  If it is, it returns the kernel symbol B<PAGE_SIZE>, whose "
13072 "value depends on the architecture and machine model.  Generally, one uses "
13073 "binaries that are dependent on the architecture but not on the machine "
13074 "model, in order to have a single binary distribution per architecture.  This "
13075 "means that a user program should not find B<PAGE_SIZE> at compile time from "
13076 "a header file, but use an actual system call, at least for those "
13077 "architectures (like sun4) where this dependency exists.  Here glibc 2.0 "
13078 "fails because its B<getpagesize>()  returns a statically derived value, and "
13079 "does not use a system call.  Things are OK in glibc 2.1."
13080 msgstr ""
13081 "B<getpagesize>()  が Linux のシステムコールとして存在するかどうかは、そのアー"
13082 "キテクチャに 依存している。 システムコールとして存在する場合には、カーネルシ"
13083 "ンボルの B<PAGE_SIZE> を返す。 B<PAGE_SIZE> の値は、アーキテクチャとマシンモ"
13084 "デルに依存する。 一般に、バイナリは、アーキテクチャごとに1つのバイナリ配布で"
13085 "済ませるために、 アーキテクチャには依存しているがマシンモデルには依存していな"
13086 "い。 つまり、ユーザプログラムはコンパイル時にヘッダーファイルから "
13087 "B<PAGE_SIZE> を見つけて使用すべきではない。 少なくとも、マシンモデルについて"
13088 "も依存性が存在する (sun4 のような)  アーキテクチャにおいては本物のシステム"
13089 "コールを使用する必要がある。 尚、 glibc 2.0 では、 B<getpagesize>()  がシステ"
13090 "ムコールを使用せず、固定の値を返すために、この方法は 失敗する。glibc 2.1 では"
13091 "大丈夫である。"
13092
13093 #. type: Plain text
13094 #: build/C/man2/getpagesize.2:111
13095 msgid "B<mmap>(2), B<sysconf>(3)"
13096 msgstr "B<mmap>(2), B<sysconf>(3)"
13097
13098 #. type: TH
13099 #: build/C/man2/gettid.2:26
13100 #, no-wrap
13101 msgid "GETTID"
13102 msgstr "GETTID"
13103
13104 #. type: TH
13105 #: build/C/man2/gettid.2:26
13106 #, no-wrap
13107 msgid "2014-02-11"
13108 msgstr "2014-02-11"
13109
13110 #. type: Plain text
13111 #: build/C/man2/gettid.2:29
13112 msgid "gettid - get thread identification"
13113 msgstr "gettid - スレッドID を取得する"
13114
13115 #. type: Plain text
13116 #: build/C/man2/gettid.2:32
13117 #, no-wrap
13118 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
13119 msgstr "B<#include E<lt>sys/types.hE<gt>>\n"
13120
13121 #. type: Plain text
13122 #: build/C/man2/gettid.2:34
13123 #, no-wrap
13124 msgid "B<pid_t gettid(void);>\n"
13125 msgstr "B<pid_t gettid(void);>\n"
13126
13127 #. type: Plain text
13128 #: build/C/man2/gettid.2:50
13129 msgid ""
13130 "B<gettid>()  returns the caller's thread ID (TID).  In a single-threaded "
13131 "process, the thread ID is equal to the process ID (PID, as returned by "
13132 "B<getpid>(2)).  In a multithreaded process, all threads have the same PID, "
13133 "but each one has a unique TID.  For further details, see the discussion of "
13134 "B<CLONE_THREAD> in B<clone>(2)."
13135 msgstr ""
13136 "B<gettid>()  は呼び出し元のスレッド ID (TID) を返す。 シングルスレッドのプロ"
13137 "セスでは、スレッド ID は (B<getpid>(2)  が返すプロセス ID (PID) と等しい。 マ"
13138 "ルチスレッドのプロセスでは、全てのスレッドは同じ PID を持つが、 それぞれのス"
13139 "レッドは一意な TID を持つ。 さらなる詳細は、 B<clone>(2)  の B<CLONE_THREAD> "
13140 "についての議論を参照すること。"
13141
13142 #. type: Plain text
13143 #: build/C/man2/gettid.2:52
13144 msgid "On success, returns the thread ID of the calling process."
13145 msgstr "成功の場合、呼び出し元のプロセスのスレッドID を返す。"
13146
13147 #. type: Plain text
13148 #: build/C/man2/gettid.2:54
13149 msgid "This call is always successful."
13150 msgstr "このコールは常に成功する。"
13151
13152 #. type: Plain text
13153 #: build/C/man2/gettid.2:58
13154 msgid "The B<gettid>()  system call first appeared on Linux in kernel 2.4.11."
13155 msgstr ""
13156 "B<gettid>()  システムコールは、カーネル 2.4.11 の Linux で初めて登場した。"
13157
13158 #. type: Plain text
13159 #: build/C/man2/gettid.2:62
13160 msgid ""
13161 "B<gettid>()  is Linux-specific and should not be used in programs that are "
13162 "intended to be portable."
13163 msgstr ""
13164 "B<gettid>()  は Linux 固有であり、 移植を想定したプログラムでは使用すべきでは"
13165 "ない。"
13166
13167 #.  FIXME . See http://sourceware.org/bugzilla/show_bug.cgi?id=6399
13168 #.  "gettid() should have a wrapper"
13169 #. type: Plain text
13170 #: build/C/man2/gettid.2:67
13171 msgid ""
13172 "Glibc does not provide a wrapper for this system call; call it using "
13173 "B<syscall>(2)."
13174 msgstr ""
13175 "glibc はこのシステムコールに対するラッパー関数を提供していない。 このシステム"
13176 "コールは呼び出すには B<syscall>(2)  を使うこと。"
13177
13178 #. type: Plain text
13179 #: build/C/man2/gettid.2:71
13180 msgid ""
13181 "The thread ID returned by this call is not the same thing as a POSIX thread "
13182 "ID (i.e., the opaque value returned by B<pthread_self>(3))."
13183 msgstr ""
13184 "このシステムコールが返すスレッド ID は POSIX スレッド ID "
13185 "(B<pthread_self>(3)  が返す曖昧な値) と同じものではない。"
13186
13187 #.  .BR kcmp (2),
13188 #.  .BR move_pages (2),
13189 #.  .BR migrate_pages (2),
13190 #.  .BR process_vm_readv (2),
13191 #.  .BR ptrace (2),
13192 #. type: Plain text
13193 #: build/C/man2/gettid.2:90
13194 msgid ""
13195 "B<capget>(2), B<clone>(2), B<fcntl>(2), B<fork>(2), B<get_robust_list>(2), "
13196 "B<getpid>(2), B<ioprio_set>(2), B<perf_event_open>(2), "
13197 "B<sched_setaffinity>(2), B<sched_setparam>(2), B<sched_setscheduler>(2), "
13198 "B<tgkill>(2), B<timer_create>(2)"
13199 msgstr ""
13200 "B<capget>(2), B<clone>(2), B<fcntl>(2), B<fork>(2), B<get_robust_list>(2), "
13201 "B<getpid>(2), B<ioprio_set>(2), B<perf_event_open>(2), "
13202 "B<sched_setaffinity>(2), B<sched_setparam>(2), B<sched_setscheduler>(2), "
13203 "B<tgkill>(2), B<timer_create>(2)"
13204
13205 #. type: TH
13206 #: build/C/man3/getumask.3:28
13207 #, no-wrap
13208 msgid "GETUMASK"
13209 msgstr "GETUMASK"
13210
13211 #. type: TH
13212 #: build/C/man3/getumask.3:28
13213 #, no-wrap
13214 msgid "2010-09-10"
13215 msgstr "2010-09-10"
13216
13217 #. type: Plain text
13218 #: build/C/man3/getumask.3:31
13219 msgid "getumask - get file creation mask"
13220 msgstr "getumask - ファイル作成マスクを取得する"
13221
13222 #. type: Plain text
13223 #: build/C/man3/getumask.3:35 build/C/man2/truncate.2:50
13224 #: build/C/man2/umask.2:39 build/C/man2/vfork.2:33
13225 msgid "B<#include E<lt>sys/types.hE<gt>>"
13226 msgstr "B<#include E<lt>sys/types.hE<gt>>"
13227
13228 #. type: Plain text
13229 #: build/C/man3/getumask.3:37 build/C/man2/umask.2:41
13230 msgid "B<#include E<lt>sys/stat.hE<gt>>"
13231 msgstr "B<#include E<lt>sys/stat.hE<gt>>"
13232
13233 #. type: Plain text
13234 #: build/C/man3/getumask.3:39
13235 msgid "B<mode_t getumask(void);>"
13236 msgstr "B<mode_t getumask(void);>"
13237
13238 #. type: Plain text
13239 #: build/C/man3/getumask.3:42
13240 msgid ""
13241 "This function returns the current file creation mask.  It is equivalent to"
13242 msgstr ""
13243 "この関数は現在のファイル作成マスクを返す。 基本的には以下と等価である。"
13244
13245 #. type: Plain text
13246 #: build/C/man3/getumask.3:51
13247 #, no-wrap
13248 msgid ""
13249 "mode_t getumask(void)\n"
13250 "{\n"
13251 "    mode_t mask = umask( 0 );\n"
13252 "    umask(mask);\n"
13253 "    return mask;\n"
13254 "}\n"
13255 msgstr ""
13256 "mode_t getumask(void)\n"
13257 "{\n"
13258 "    mode_t mask = umask( 0 );\n"
13259 "    umask(mask);\n"
13260 "    return mask;\n"
13261 "}\n"
13262
13263 #. type: Plain text
13264 #: build/C/man3/getumask.3:58
13265 msgid ""
13266 "except that it is documented to be thread-safe (that is, shares a lock with "
13267 "the B<umask>(2)  library call)."
13268 msgstr ""
13269 "ドキュメントによると、この関数は スレッドセーフである (B<umask>(2)  ライブラ"
13270 "リコールとロックを共有する)  点が異なる。"
13271
13272 #. type: Plain text
13273 #: build/C/man3/getumask.3:60
13274 msgid "This is a vaporware GNU extension."
13275 msgstr "ドキュメントに書いてあるだけの GNU 拡張である。"
13276
13277 #. type: Plain text
13278 #: build/C/man3/getumask.3:63
13279 msgid ""
13280 "This function is documented but not implemented yet in glibc, as at version "
13281 "2.9."
13282 msgstr ""
13283 "バージョン 2.9 時点の glibc では、 この関数についての記載はあるが、まだ実装さ"
13284 "れていない。"
13285
13286 #. type: Plain text
13287 #: build/C/man3/getumask.3:65
13288 msgid "B<umask>(2)"
13289 msgstr "B<umask>(2)"
13290
13291 #. type: TH
13292 #: build/C/man3/getusershell.3:30
13293 #, no-wrap
13294 msgid "GETUSERSHELL"
13295 msgstr "GETUSERSHELL"
13296
13297 #. type: TH
13298 #: build/C/man3/getusershell.3:30 build/C/man2/pread.2:25
13299 #, no-wrap
13300 msgid "2013-06-21"
13301 msgstr "2013-06-21"
13302
13303 #. type: Plain text
13304 #: build/C/man3/getusershell.3:33
13305 msgid "getusershell, setusershell, endusershell - get permitted user shells"
13306 msgstr ""
13307 "getusershell, setusershell, endusershell - 許可されたユーザシェルを得る"
13308
13309 #. type: Plain text
13310 #: build/C/man3/getusershell.3:38
13311 #, no-wrap
13312 msgid "B<char *getusershell(void);>\n"
13313 msgstr "B<char *getusershell(void);>\n"
13314
13315 #. type: Plain text
13316 #: build/C/man3/getusershell.3:40
13317 #, no-wrap
13318 msgid "B<void setusershell(void);>\n"
13319 msgstr "B<void setusershell(void);>\n"
13320
13321 #. type: Plain text
13322 #: build/C/man3/getusershell.3:42
13323 #, no-wrap
13324 msgid "B<void endusershell(void);>\n"
13325 msgstr "B<void endusershell(void);>\n"
13326
13327 #. type: Plain text
13328 #: build/C/man3/getusershell.3:53
13329 msgid "B<getusershell>(), B<setusershell>(), B<endusershell>():"
13330 msgstr "B<getusershell>(), B<setusershell>(), B<endusershell>():"
13331
13332 #. type: Plain text
13333 #: build/C/man3/getusershell.3:75
13334 msgid ""
13335 "The B<getusershell>()  function returns the next line from the file I</etc/"
13336 "shells>, opening the file if necessary.  The line should contain the "
13337 "pathname of a valid user shell.  If I</etc/shells> does not exist or is "
13338 "unreadable, B<getusershell>()  behaves as if I</bin/sh> and I</bin/csh> were "
13339 "listed in the file."
13340 msgstr ""
13341 "B<getusershell>()  関数は I</etc/shells> ファイルから (開く必要があればこの"
13342 "ファイルを開いてから) 現在行の次の一行を返す。 返された行の中身は有効なユーザ"
13343 "シェルのうちの一つのパス名である。 (訳注. 一行に付き一つのシェルのパス名が書"
13344 "かれている。)  もし I</etc/shells> が存在しないか、読み込み不可の場合には、 "
13345 "B<getusershell>()  は I</bin/sh> と I</bin/csh> がファイルに記されているかの"
13346 "ようにふるまう。"
13347
13348 #. type: Plain text
13349 #: build/C/man3/getusershell.3:80
13350 msgid "The B<setusershell>()  function rewinds I</etc/shells>."
13351 msgstr ""
13352 "B<setusershell>()  関数は I</etc/shells> ファイルの ファイルポインタを先頭に"
13353 "戻す。"
13354
13355 #. type: Plain text
13356 #: build/C/man3/getusershell.3:85
13357 msgid "The B<endusershell>()  function closes I</etc/shells>."
13358 msgstr "B<endusershell>()  関数は I</etc/shells> ファイルを閉じる。"
13359
13360 #. type: Plain text
13361 #: build/C/man3/getusershell.3:89
13362 msgid "The B<getusershell>()  function returns NULL on end-of-file."
13363 msgstr "B<getusershell>() 関数はファイルの終端では NULL を返す。"
13364
13365 #. type: Plain text
13366 #: build/C/man3/getusershell.3:92
13367 #, no-wrap
13368 msgid "/etc/shells\n"
13369 msgstr "/etc/shells\n"
13370
13371 #. type: Plain text
13372 #: build/C/man3/getusershell.3:101
13373 msgid ""
13374 "The B<getusershell>(), B<setusershell>()  and B<endusershell>()  functions "
13375 "are not thread-safe."
13376 msgstr ""
13377 "関数 B<getusershell>(), B<setusershell>(), B<endusershell>() はスレッドセーフ"
13378 "ではない。"
13379
13380 #. type: Plain text
13381 #: build/C/man3/getusershell.3:103
13382 msgid "4.3BSD."
13383 msgstr "4.3BSD."
13384
13385 #. type: Plain text
13386 #: build/C/man3/getusershell.3:105
13387 msgid "B<shells>(5)"
13388 msgstr "B<shells>(5)"
13389
13390 #. type: TH
13391 #: build/C/man2/idle.2:32
13392 #, no-wrap
13393 msgid "IDLE"
13394 msgstr "IDLE"
13395
13396 #. type: TH
13397 #: build/C/man2/idle.2:32 build/C/man5/shells.5:28
13398 #, no-wrap
13399 msgid "2012-12-31"
13400 msgstr "2012-12-31"
13401
13402 #. type: Plain text
13403 #: build/C/man2/idle.2:35
13404 msgid "idle - make process 0 idle"
13405 msgstr "idle - ID 0 のプロセスをアイドル状態にする"
13406
13407 #. type: Plain text
13408 #: build/C/man2/idle.2:39
13409 msgid "B<int idle(void);>"
13410 msgstr "B<int idle(void);>"
13411
13412 #. type: Plain text
13413 #: build/C/man2/idle.2:46
13414 msgid ""
13415 "B<idle>()  is an internal system call used during bootstrap.  It marks the "
13416 "process's pages as swappable, lowers its priority, and enters the main "
13417 "scheduling loop.  B<idle>()  never returns."
13418 msgstr ""
13419 "B<idle>()  はブートストラップ時に使用される、内部システムコールである。 プロ"
13420 "セスのページをスワップ可能に設定し、優先度を下げ、メインのスケジュー ル処理の"
13421 "ためのループへ移行する。 従って B<idle>()  は return することはない。"
13422
13423 #. type: Plain text
13424 #: build/C/man2/idle.2:52
13425 msgid ""
13426 "Only process 0 may call B<idle>().  Any user process, even a process with "
13427 "superuser permission, will receive B<EPERM>."
13428 msgstr ""
13429 "ID 0 のプロセスのみが B<idle>()  を使用することができる。 他のユーザープロセ"
13430 "スはたとえそれがスーパーユーザー権限を持っていたとして も B<EPERM> を受け取"
13431 "る。"
13432
13433 #. type: Plain text
13434 #: build/C/man2/idle.2:55
13435 msgid ""
13436 "B<idle>()  never returns for process 0, and always returns -1 for a user "
13437 "process."
13438 msgstr ""
13439 "B<idle>()  ID 0 のプロセスに対しては return しない。それ以外のユーザープロセ"
13440 "スには 常に -1 を返す。"
13441
13442 #. type: Plain text
13443 #: build/C/man2/idle.2:59 build/C/man2/setup.2:60
13444 msgid "Always, for a user process."
13445 msgstr "ユーザプロセスに対しては、常にこのエラーとなる。"
13446
13447 #. type: Plain text
13448 #: build/C/man2/idle.2:61
13449 msgid "Since Linux 2.3.13, this system call does not exist anymore."
13450 msgstr "Linux 2.3.13 以降では、もはやこのシステムコールは存在しない。"
13451
13452 #. type: Plain text
13453 #: build/C/man2/idle.2:64 build/C/man2/sysinfo.2:90
13454 msgid ""
13455 "This function is Linux-specific, and should not be used in programs intended "
13456 "to be portable."
13457 msgstr ""
13458 "この関数は Linux 特有であり、移植を意図したプログラムでは 使用すべきでない。"
13459
13460 #. type: TH
13461 #: build/C/man2/ioctl.2:41
13462 #, no-wrap
13463 msgid "IOCTL"
13464 msgstr "IOCTL"
13465
13466 #. type: Plain text
13467 #: build/C/man2/ioctl.2:44
13468 msgid "ioctl - control device"
13469 msgstr "ioctl - デバイスを制御する"
13470
13471 #. type: Plain text
13472 #: build/C/man2/ioctl.2:46
13473 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
13474 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
13475
13476 #.  POSIX says 'request' is int, but glibc has the above
13477 #.  See https://bugzilla.kernel.org/show_bug.cgi?id=42705
13478 #. type: Plain text
13479 #: build/C/man2/ioctl.2:50
13480 msgid "B<int ioctl(int >I<fd>B<, unsigned long >I<request>B<, ...);>"
13481 msgstr "B<int ioctl(int >I<fd>B<, unsigned long >I<request>B<, ...);>"
13482
13483 #. type: Plain text
13484 #: build/C/man2/ioctl.2:61
13485 msgid ""
13486 "The B<ioctl>()  function manipulates the underlying device parameters of "
13487 "special files.  In particular, many operating characteristics of character "
13488 "special files (e.g., terminals) may be controlled with B<ioctl>()  "
13489 "requests.  The argument I<fd> must be an open file descriptor."
13490 msgstr ""
13491 "B<ioctl>()  関数はスペシャルファイルを構成するデバイスのパラメータを 操作す"
13492 "る。特に、キャラクタ型のスペシャルファイル (例えば端末 (terminal))  の多くの"
13493 "動作特性を B<ioctl>()  リクエストによって制御することができる。引き数 I<fd> "
13494 "はオープンされたファイルディスクリプタでなければならない。"
13495
13496 #. type: Plain text
13497 #: build/C/man2/ioctl.2:69
13498 msgid ""
13499 "The second argument is a device-dependent request code.  The third argument "
13500 "is an untyped pointer to memory.  It's traditionally B<char *>I<argp> (from "
13501 "the days before B<void *> was valid C), and will be so named for this "
13502 "discussion."
13503 msgstr ""
13504 "2 番目の引き数は、デバイス依存のリクエストコードである。 3 番目の引き数は、メ"
13505 "モリへの型を指定しないポインタである。 この引き数は伝統的に (C で B<void *> "
13506 "という書き方が有効になる前から)  B<char *>I<argp> と表記されている。したがっ"
13507 "て、この文章でもそう名付けることとする。"
13508
13509 #. type: Plain text
13510 #: build/C/man2/ioctl.2:85
13511 msgid ""
13512 "An B<ioctl>()  I<request> has encoded in it whether the argument is an I<in> "
13513 "parameter or I<out> parameter, and the size of the argument I<argp> in "
13514 "bytes.  Macros and defines used in specifying an B<ioctl>()  I<request> are "
13515 "located in the file I<E<lt>sys/ioctl.hE<gt>>."
13516 msgstr ""
13517 "B<ioctl>()  の I<request> には、 その引き数が I<入力> パラメータと I<出力> パ"
13518 "ラメータのどちらであるかの区別や、 I<argp> 引き数のバイト単位のサイズ、といっ"
13519 "た情報がエンコードされている。 B<ioctl>()  の I<request> を指定するためのマク"
13520 "ロ (macro) と定義は I<E<lt>sys/ioctl.hE<gt>> ファイルにある。"
13521
13522 #. type: Plain text
13523 #: build/C/man2/ioctl.2:94
13524 msgid ""
13525 "Usually, on success zero is returned.  A few B<ioctl>()  requests use the "
13526 "return value as an output parameter and return a nonnegative value on "
13527 "success.  On error, -1 is returned, and I<errno> is set appropriately."
13528 msgstr ""
13529 "たいていの場合、成功するとゼロが返される。 ただし、 B<ioctl>()  リクエストの"
13530 "中にはパラメータの出力に返り値を使用しているものが若干あり、 その場合は、成功"
13531 "したときに非負の値が返される。 エラーの場合は -1 が返され、 I<errno> が適切に"
13532 "設定される。"
13533
13534 #. type: Plain text
13535 #: build/C/man2/ioctl.2:99 build/C/man2/truncate.2:192
13536 msgid "I<fd> is not a valid descriptor."
13537 msgstr "I<fd> が無効なディスクリプターである。"
13538
13539 #. type: Plain text
13540 #: build/C/man2/ioctl.2:103
13541 msgid "I<argp> references an inaccessible memory area."
13542 msgstr "I<argp> がアクセス不可能なメモリを参照している。"
13543
13544 #. type: Plain text
13545 #: build/C/man2/ioctl.2:109
13546 msgid "I<request> or I<argp> is not valid."
13547 msgstr "I<request> または I<argp> が不正である。"
13548
13549 #. type: Plain text
13550 #: build/C/man2/ioctl.2:113
13551 msgid "I<fd> is not associated with a character special device."
13552 msgstr "I<fd> がキャラクタ型のスペシャルデバイスを参照していない。"
13553
13554 #. type: Plain text
13555 #: build/C/man2/ioctl.2:119
13556 msgid ""
13557 "The specified request does not apply to the kind of object that the "
13558 "descriptor I<fd> references."
13559 msgstr ""
13560 "指定されたリクエストはディスクリプタ I<fd> が参照する種類のオブジェクトには適"
13561 "用することができない。"
13562
13563 #. type: Plain text
13564 #: build/C/man2/ioctl.2:134
13565 msgid ""
13566 "No single standard.  Arguments, returns, and semantics of B<ioctl>()  vary "
13567 "according to the device driver in question (the call is used as a catch-all "
13568 "for operations that don't cleanly fit the UNIX stream I/O model).  See "
13569 "B<ioctl_list>(2)  for a list of many of the known B<ioctl>()  calls.  The "
13570 "B<ioctl>()  function call appeared in Version 7 AT&T UNIX."
13571 msgstr ""
13572 "どれか一つの標準に対応しているわけではない。 B<ioctl>()  の引き数、返り値、解"
13573 "釈は、処理対象のデバイスドライバごとに 異なる (この関数は UNIX の ストリーム "
13574 "I/O モデル に きちんと適合していない操作のための便利屋として使用される)。 よ"
13575 "く知られている B<ioctl>()  のリストについては B<ioctl_list>(2)  を参照するこ"
13576 "と。 B<ioctl>()  関数コールは Version 7 AT&T UNIX で登場した。"
13577
13578 #. type: Plain text
13579 #: build/C/man2/ioctl.2:142
13580 msgid ""
13581 "In order to use this call, one needs an open file descriptor.  Often the "
13582 "B<open>(2)  call has unwanted side effects, that can be avoided under Linux "
13583 "by giving it the B<O_NONBLOCK> flag."
13584 msgstr ""
13585 "このシステムコールを使うには、オープンされたファイルディスクリプタが 必要であ"
13586 "る。 B<open>(2)  コールはしばしば望んでいない副作用を伴うことがあるが、Linux "
13587 "では B<open>(2)  に B<O_NONBLOCK> フラグをつけることでこの副作用を避けること"
13588 "ができる。"
13589
13590 #.  .BR mt (4),
13591 #. type: Plain text
13592 #: build/C/man2/ioctl.2:150
13593 msgid ""
13594 "B<execve>(2), B<fcntl>(2), B<ioctl_list>(2), B<open>(2), B<sd>(4), B<tty>(4)"
13595 msgstr ""
13596 "B<execve>(2), B<fcntl>(2), B<ioctl_list>(2), B<open>(2), B<sd>(4), B<tty>(4)"
13597
13598 #. type: TH
13599 #: build/C/man2/ioctl_list.2:30
13600 #, no-wrap
13601 msgid "IOCTL_LIST"
13602 msgstr "IOCTL_LIST"
13603
13604 #. type: TH
13605 #: build/C/man2/ioctl_list.2:30
13606 #, no-wrap
13607 msgid "2013-09-17"
13608 msgstr "2013-09-17"
13609
13610 #. type: Plain text
13611 #: build/C/man2/ioctl_list.2:33
13612 msgid "ioctl_list - list of ioctl calls in Linux/i386 kernel"
13613 msgstr "ioctl_list - Linux/i386 カーネルの ioctl のリスト"
13614
13615 #. type: Plain text
13616 #: build/C/man2/ioctl_list.2:40
13617 msgid ""
13618 "This is Ioctl List 1.3.27, a list of ioctl calls in Linux/i386 kernel "
13619 "1.3.27.  It contains 421 ioctls from I<E<lt>/usr/include/{asm,linux}/*."
13620 "hE<gt>>.  For each ioctl, its numerical value, its name, and its argument "
13621 "type are given."
13622 msgstr ""
13623 "この文章は ioctl リスト 1.3.27、つまり Linux/i386 カーネル 1.3.27 に おける "
13624 "ioctl コールの一覧です。このリストは I<E<lt>/usr/include/{asm,linux}/*."
13625 "hE<gt>> にある 421 の ioctl を含んでいます。全ての ioctl に対して、数値、名"
13626 "称、 引き数の型を列挙してあります。"
13627
13628 #. type: Plain text
13629 #: build/C/man2/ioctl_list.2:48
13630 msgid ""
13631 "An argument type of I<const struct foo\\ *> means the argument is input to "
13632 "the kernel.  I<struct foo\\ *> means the kernel outputs the argument.  If "
13633 "the kernel uses the argument for both input and output, this is marked with "
13634 "I<//\\ I-O>."
13635 msgstr ""
13636 "引き数型 I<const struct foo\\ *> は、その引き数がカーネルへの入力である事を意"
13637 "味します。また、 I<struct foo\\ *> は、その引き数がカーネルからの出力である事"
13638 "を意味します。 カーネルがその引き数を入力と出力の両方に使用する場合は、 I<//"
13639 "\\ I-O> マークを付けてあります。"
13640
13641 #. type: Plain text
13642 #: build/C/man2/ioctl_list.2:53
13643 msgid ""
13644 "Some ioctls take more arguments or return more values than a single "
13645 "structure.  These are marked I<//\\ MORE> and documented further in a "
13646 "separate section."
13647 msgstr ""
13648 "いくつかの ioctl は複数の構造体の引き数を必要としたり、値を返したり します。"
13649 "これらには I<//\\ MORE> マークを付けて、 さらに分離したセクションで説明してあ"
13650 "ります。"
13651
13652 #. type: Plain text
13653 #: build/C/man2/ioctl_list.2:55
13654 msgid "This list is very incomplete."
13655 msgstr "このリストは不完全です。"
13656
13657 #. type: SS
13658 #: build/C/man2/ioctl_list.2:55
13659 #, no-wrap
13660 msgid "ioctl structure"
13661 msgstr "ioctl の構造"
13662
13663 #.  added two sections - aeb
13664 #. type: Plain text
13665 #: build/C/man2/ioctl_list.2:60
13666 msgid ""
13667 "Ioctl command values are 32-bit constants.  In principle these constants are "
13668 "completely arbitrary, but people have tried to build some structure into "
13669 "them."
13670 msgstr ""
13671 "ioctl コマンドの値は 32 ビットの定数です。 原則として、これらの定数は全く任意"
13672 "のものですが、 設計者は何らかの構造をこれらの定数に組み込もうとしています。"
13673
13674 #. type: Plain text
13675 #: build/C/man2/ioctl_list.2:79
13676 msgid ""
13677 "The old Linux situation was that of mostly 16-bit constants, where the last "
13678 "byte is a serial number, and the preceding byte(s) give a type indicating "
13679 "the driver.  Sometimes the major number was used: 0x03 for the B<HDIO_*> "
13680 "ioctls, 0x06 for the B<LP*> ioctls.  And sometimes one or more ASCII letters "
13681 "were used.  For example, B<TCGETS> has value 0x00005401, with 0x54 = \\(aqT"
13682 "\\(aq indicating the terminal driver, and B<CYGETTIMEOUT> has value "
13683 "0x00435906, with 0x43 0x59 = \\(aqC\\(aq \\(aqY\\(aq indicating the cyclades "
13684 "driver."
13685 msgstr ""
13686 "昔の Linux では、大部分は 16 ビットの定数であり、 下位バイトはシリアル番号"
13687 "で、上位バイトはドライバのタイプを表していました。 メジャー番号が使われること"
13688 "もありました: 0x03 が B<HDIO_*> ioctl, 0x06 が B<LP*> ioctl などです。 1 文字"
13689 "以上の ASCII 文字列が使われることもありました。 たとえば B<TCGETS> の値は "
13690 "0x00005401 であり、 0x54 = \\(aqT\\(aq でターミナルドライバを表します。 "
13691 "B<CYGETTIMEOUT> の値は 0x00435906 であり、 0x43 0x59 = \\(aqC\\(aq \\(aqY"
13692 "\\(aq で cyclades ドライバを表します。"
13693
13694 #. type: Plain text
13695 #: build/C/man2/ioctl_list.2:87
13696 msgid ""
13697 "Later (0.98p5) some more information was built into the number.  One has 2 "
13698 "direction bits (00: none, 01: write, 10: read, 11: read/write)  followed by "
13699 "14 size bits (giving the size of the argument), followed by an 8-bit type "
13700 "(collecting the ioctls in groups for a common purpose or a common driver), "
13701 "and an 8-bit serial number."
13702 msgstr ""
13703 "後の時代 (0.98p5) になると、 より多くの情報が数値に組み込まれるようになりまし"
13704 "た。 1 つの数値は、読み書きの方向を表す 2 ビット (00: 読み書きなし, 01: 書き"
13705 "込み, 10: 読み込み, 11: 読み込み/書き込み)、 (引き数のサイズを表す) 14 ビッ"
13706 "ト、 (共通の目的または共通のドライバで ioctl をグループにするための)  8 ビッ"
13707 "トのタイプ、8 ビットのシリアル番号から構成されます。"
13708
13709 #. type: Plain text
13710 #: build/C/man2/ioctl_list.2:98
13711 msgid ""
13712 "The macros describing this structure live in I<E<lt>asm/ioctl.hE<gt>> and "
13713 "are B<_IO(type,nr)> and B<{_IOR,_IOW,_IOWR}(type,nr,size)>.  They use "
13714 "I<sizeof(size)> so that size is a misnomer here: this third argument is a "
13715 "data type."
13716 msgstr ""
13717 "この構造を記述するマクロは I<E<lt>asm/ioctl.hE<gt>> にあり、 B<_IO(type,nr)> "
13718 "と B<{_IOR,_IOW,_IOWR}(type,nr,size)> です。 これらのマクロは "
13719 "I<sizeof(size)> を使うので、 ここで size という名前にしているのは間違っていま"
13720 "す: この 3 つ目の引き数はデータタイプです。"
13721
13722 #. type: Plain text
13723 #: build/C/man2/ioctl_list.2:103
13724 msgid ""
13725 "Note that the size bits are very unreliable: in lots of cases they are "
13726 "wrong, either because of buggy macros using I<sizeof(sizeof(struct))>, or "
13727 "because of legacy values."
13728 msgstr ""
13729 "size ビットは全く当てにならない点に注意して下さい: 多くの場合、間違っていま"
13730 "す。 これは I<sizeof(sizeof(struct))> を使ったバグを含んだマクロや、過去から"
13731 "受け継いだ値が原因です。"
13732
13733 #. type: Plain text
13734 #: build/C/man2/ioctl_list.2:107
13735 msgid ""
13736 "Thus, it seems that the new structure only gave disadvantages: it does not "
13737 "help in checking, but it causes varying values for the various architectures."
13738 msgstr ""
13739 "したがって、新しい構造は不都合な点しかないように思われます: この構造はチェッ"
13740 "クの手助けにはならず、 様々なアーキテクチャによって値を変化させてしまいます。"
13741
13742 #. type: Plain text
13743 #: build/C/man2/ioctl_list.2:113
13744 msgid ""
13745 "Decent ioctls return 0 on success and -1 on error, while any output value is "
13746 "stored via the argument.  However, quite a few ioctls in fact return an "
13747 "output value.  This is not yet indicated below."
13748 msgstr ""
13749 "きちんとした ioctl は、成功した場合は 0 を返し、 エラーの場合は -1 を返しま"
13750 "す。 また出力値は引き数に格納します。 しかし実際は、かなり多くの ioctl が出力"
13751 "値を返します。 これは今のところ以下では示されていません。"
13752
13753 #. type: Plain text
13754 #: build/C/man2/ioctl_list.2:115
13755 msgid "// Main table."
13756 msgstr "// Main table."
13757
13758 #. type: Plain text
13759 #: build/C/man2/ioctl_list.2:117
13760 msgid "// E<lt>include/asm-i386/socket.hE<gt>"
13761 msgstr "// E<lt>include/asm-i386/socket.hE<gt>"
13762
13763 #. type: tbl table
13764 #: build/C/man2/ioctl_list.2:119
13765 #, no-wrap
13766 msgid "0x00008901\tFIOSETOWN\tconst int *\n"
13767 msgstr "0x00008901\tFIOSETOWN\tconst int *\n"
13768
13769 #. type: tbl table
13770 #: build/C/man2/ioctl_list.2:120
13771 #, no-wrap
13772 msgid "0x00008902\tSIOCSPGRP\tconst int *\n"
13773 msgstr "0x00008902\tSIOCSPGRP\tconst int *\n"
13774
13775 #. type: tbl table
13776 #: build/C/man2/ioctl_list.2:121
13777 #, no-wrap
13778 msgid "0x00008903\tFIOGETOWN\tint *\n"
13779 msgstr "0x00008903\tFIOGETOWN\tint *\n"
13780
13781 #. type: tbl table
13782 #: build/C/man2/ioctl_list.2:122
13783 #, no-wrap
13784 msgid "0x00008904\tSIOCGPGRP\tint *\n"
13785 msgstr "0x00008904\tSIOCGPGRP\tint *\n"
13786
13787 #. type: tbl table
13788 #: build/C/man2/ioctl_list.2:123
13789 #, no-wrap
13790 msgid "0x00008905\tSIOCATMAR\tint *\n"
13791 msgstr "0x00008905\tSIOCATMAR\tint *\n"
13792
13793 #. type: tbl table
13794 #: build/C/man2/ioctl_list.2:124
13795 #, no-wrap
13796 msgid "0x00008906\tSIOCGSTAMP\ttimeval *\n"
13797 msgstr "0x00008906\tSIOCGSTAMP\ttimeval *\n"
13798
13799 #. type: Plain text
13800 #: build/C/man2/ioctl_list.2:128
13801 msgid "// E<lt>include/asm-i386/termios.hE<gt>"
13802 msgstr "// E<lt>include/asm-i386/termios.hE<gt>"
13803
13804 #. type: tbl table
13805 #: build/C/man2/ioctl_list.2:130
13806 #, no-wrap
13807 msgid "0x00005401\tTCGETS\tstruct termios *\n"
13808 msgstr "0x00005401\tTCGETS\tstruct termios *\n"
13809
13810 #. type: tbl table
13811 #: build/C/man2/ioctl_list.2:131
13812 #, no-wrap
13813 msgid "0x00005402\tTCSETS\tconst struct termios *\n"
13814 msgstr "0x00005402\tTCSETS\tconst struct termios *\n"
13815
13816 #. type: tbl table
13817 #: build/C/man2/ioctl_list.2:132
13818 #, no-wrap
13819 msgid "0x00005403\tTCSETSW\tconst struct termios *\n"
13820 msgstr "0x00005403\tTCSETSW\tconst struct termios *\n"
13821
13822 #. type: tbl table
13823 #: build/C/man2/ioctl_list.2:133
13824 #, no-wrap
13825 msgid "0x00005404\tTCSETSF\tconst struct termios *\n"
13826 msgstr "0x00005404\tTCSETSF\tconst struct termios *\n"
13827
13828 #. type: tbl table
13829 #: build/C/man2/ioctl_list.2:134
13830 #, no-wrap
13831 msgid "0x00005405\tTCGETA\tstruct termio *\n"
13832 msgstr "0x00005405\tTCGETA\tstruct termio *\n"
13833
13834 #. type: tbl table
13835 #: build/C/man2/ioctl_list.2:135
13836 #, no-wrap
13837 msgid "0x00005406\tTCSETA\tconst struct termio *\n"
13838 msgstr "0x00005406\tTCSETA\tconst struct termio *\n"
13839
13840 #. type: tbl table
13841 #: build/C/man2/ioctl_list.2:136
13842 #, no-wrap
13843 msgid "0x00005407\tTCSETAW\tconst struct termio *\n"
13844 msgstr "0x00005407\tTCSETAW\tconst struct termio *\n"
13845
13846 #. type: tbl table
13847 #: build/C/man2/ioctl_list.2:137
13848 #, no-wrap
13849 msgid "0x00005408\tTCSETAF\tconst struct termio *\n"
13850 msgstr "0x00005408\tTCSETAF\tconst struct termio *\n"
13851
13852 #. type: tbl table
13853 #: build/C/man2/ioctl_list.2:138
13854 #, no-wrap
13855 msgid "0x00005409\tTCSBRK\tint\n"
13856 msgstr "0x00005409\tTCSBRK\tint\n"
13857
13858 #. type: tbl table
13859 #: build/C/man2/ioctl_list.2:139
13860 #, no-wrap
13861 msgid "0x0000540A\tTCXONC\tint\n"
13862 msgstr "0x0000540A\tTCXONC\tint\n"
13863
13864 #. type: tbl table
13865 #: build/C/man2/ioctl_list.2:140
13866 #, no-wrap
13867 msgid "0x0000540B\tTCFLSH\tint\n"
13868 msgstr "0x0000540B\tTCFLSH\tint\n"
13869
13870 #. type: tbl table
13871 #: build/C/man2/ioctl_list.2:141
13872 #, no-wrap
13873 msgid "0x0000540C\tTIOCEXCL\tvoid\n"
13874 msgstr "0x0000540C\tTIOCEXCL\tvoid\n"
13875
13876 #. type: tbl table
13877 #: build/C/man2/ioctl_list.2:142
13878 #, no-wrap
13879 msgid "0x0000540D\tTIOCNXCL\tvoid\n"
13880 msgstr "0x0000540D\tTIOCNXCL\tvoid\n"
13881
13882 #. type: tbl table
13883 #: build/C/man2/ioctl_list.2:143
13884 #, no-wrap
13885 msgid "0x0000540E\tTIOCSCTTY\tint\n"
13886 msgstr "0x0000540E\tTIOCSCTTY\tint\n"
13887
13888 #. type: tbl table
13889 #: build/C/man2/ioctl_list.2:144
13890 #, no-wrap
13891 msgid "0x0000540F\tTIOCGPGRP\tpid_t *\n"
13892 msgstr "0x0000540F\tTIOCGPGRP\tpid_t *\n"
13893
13894 #. type: tbl table
13895 #: build/C/man2/ioctl_list.2:145
13896 #, no-wrap
13897 msgid "0x00005410\tTIOCSPGRP\tconst pid_t *\n"
13898 msgstr "0x00005410\tTIOCSPGRP\tconst pid_t *\n"
13899
13900 #. type: tbl table
13901 #: build/C/man2/ioctl_list.2:146
13902 #, no-wrap
13903 msgid "0x00005411\tTIOCOUTQ\tint *\n"
13904 msgstr "0x00005411\tTIOCOUTQ\tint *\n"
13905
13906 #. type: tbl table
13907 #: build/C/man2/ioctl_list.2:147
13908 #, no-wrap
13909 msgid "0x00005412\tTIOCSTI\tconst char *\n"
13910 msgstr "0x00005412\tTIOCSTI\tconst char *\n"
13911
13912 #. type: tbl table
13913 #: build/C/man2/ioctl_list.2:148
13914 #, no-wrap
13915 msgid "0x00005413\tTIOCGWINSZ\tstruct winsize *\n"
13916 msgstr "0x00005413\tTIOCGWINSZ\tstruct winsize *\n"
13917
13918 #. type: tbl table
13919 #: build/C/man2/ioctl_list.2:149
13920 #, no-wrap
13921 msgid "0x00005414\tTIOCSWINSZ\tconst struct winsize *\n"
13922 msgstr "0x00005414\tTIOCSWINSZ\tconst struct winsize *\n"
13923
13924 #. type: tbl table
13925 #: build/C/man2/ioctl_list.2:150
13926 #, no-wrap
13927 msgid "0x00005415\tTIOCMGET\tint *\n"
13928 msgstr "0x00005415\tTIOCMGET\tint *\n"
13929
13930 #. type: tbl table
13931 #: build/C/man2/ioctl_list.2:151
13932 #, no-wrap
13933 msgid "0x00005416\tTIOCMBIS\tconst int *\n"
13934 msgstr "0x00005416\tTIOCMBIS\tconst int *\n"
13935
13936 #. type: tbl table
13937 #: build/C/man2/ioctl_list.2:152
13938 #, no-wrap
13939 msgid "0x00005417\tTIOCMBIC\tconst int *\n"
13940 msgstr "0x00005417\tTIOCMBIC\tconst int *\n"
13941
13942 #. type: tbl table
13943 #: build/C/man2/ioctl_list.2:153
13944 #, no-wrap
13945 msgid "0x00005418\tTIOCMSET\tconst int *\n"
13946 msgstr "0x00005418\tTIOCMSET\tconst int *\n"
13947
13948 #. type: tbl table
13949 #: build/C/man2/ioctl_list.2:154
13950 #, no-wrap
13951 msgid "0x00005419\tTIOCGSOFTCAR\tint *\n"
13952 msgstr "0x00005419\tTIOCGSOFTCAR\tint *\n"
13953
13954 #. type: tbl table
13955 #: build/C/man2/ioctl_list.2:155
13956 #, no-wrap
13957 msgid "0x0000541A\tTIOCSSOFTCAR\tconst int *\n"
13958 msgstr "0x0000541A\tTIOCSSOFTCAR\tconst int *\n"
13959
13960 #. type: tbl table
13961 #: build/C/man2/ioctl_list.2:156
13962 #, no-wrap
13963 msgid "0x0000541B\tFIONREAD\tint *\n"
13964 msgstr "0x0000541B\tFIONREAD\tint *\n"
13965
13966 #. type: tbl table
13967 #: build/C/man2/ioctl_list.2:157
13968 #, no-wrap
13969 msgid "0x0000541B\tTIOCINQ\tint *\n"
13970 msgstr "0x0000541B\tTIOCINQ\tint *\n"
13971
13972 #. type: tbl table
13973 #: build/C/man2/ioctl_list.2:158
13974 #, no-wrap
13975 msgid "0x0000541C\tTIOCLINUX\tconst char *\t// MORE\n"
13976 msgstr "0x0000541C\tTIOCLINUX\tconst char *\t// MORE\n"
13977
13978 #. type: tbl table
13979 #: build/C/man2/ioctl_list.2:159
13980 #, no-wrap
13981 msgid "0x0000541D\tTIOCCONS\tvoid\n"
13982 msgstr "0x0000541D\tTIOCCONS\tvoid\n"
13983
13984 #. type: tbl table
13985 #: build/C/man2/ioctl_list.2:160
13986 #, no-wrap
13987 msgid "0x0000541E\tTIOCGSERIAL\tstruct serial_struct *\n"
13988 msgstr "0x0000541E\tTIOCGSERIAL\tstruct serial_struct *\n"
13989
13990 #. type: tbl table
13991 #: build/C/man2/ioctl_list.2:161
13992 #, no-wrap
13993 msgid "0x0000541F\tTIOCSSERIAL\tconst struct serial_struct *\n"
13994 msgstr "0x0000541F\tTIOCSSERIAL\tconst struct serial_struct *\n"
13995
13996 #. type: tbl table
13997 #: build/C/man2/ioctl_list.2:162
13998 #, no-wrap
13999 msgid "0x00005420\tTIOCPKT\tconst int *\n"
14000 msgstr "0x00005420\tTIOCPKT\tconst int *\n"
14001
14002 #. type: tbl table
14003 #: build/C/man2/ioctl_list.2:163
14004 #, no-wrap
14005 msgid "0x00005421\tFIONBIO\tconst int *\n"
14006 msgstr "0x00005421\tFIONBIO\tconst int *\n"
14007
14008 #. type: tbl table
14009 #: build/C/man2/ioctl_list.2:164
14010 #, no-wrap
14011 msgid "0x00005422\tTIOCNOTTY\tvoid\n"
14012 msgstr "0x00005422\tTIOCNOTTY\tvoid\n"
14013
14014 #. type: tbl table
14015 #: build/C/man2/ioctl_list.2:165
14016 #, no-wrap
14017 msgid "0x00005423\tTIOCSETD\tconst int *\n"
14018 msgstr "0x00005423\tTIOCSETD\tconst int *\n"
14019
14020 #. type: tbl table
14021 #: build/C/man2/ioctl_list.2:166
14022 #, no-wrap
14023 msgid "0x00005424\tTIOCGETD\tint *\n"
14024 msgstr "0x00005424\tTIOCGETD\tint *\n"
14025
14026 #. type: tbl table
14027 #: build/C/man2/ioctl_list.2:167
14028 #, no-wrap
14029 msgid "0x00005425\tTCSBRKP\tint\n"
14030 msgstr "0x00005425\tTCSBRKP\tint\n"
14031
14032 #. type: tbl table
14033 #: build/C/man2/ioctl_list.2:168
14034 #, no-wrap
14035 msgid "0x00005426\tTIOCTTYGSTRUCT\tstruct tty_struct *\n"
14036 msgstr "0x00005426\tTIOCTTYGSTRUCT\tstruct tty_struct *\n"
14037
14038 #. type: tbl table
14039 #: build/C/man2/ioctl_list.2:169
14040 #, no-wrap
14041 msgid "0x00005450\tFIONCLEX\tvoid\n"
14042 msgstr "0x00005450\tFIONCLEX\tvoid\n"
14043
14044 #. type: tbl table
14045 #: build/C/man2/ioctl_list.2:170
14046 #, no-wrap
14047 msgid "0x00005451\tFIOCLEX\tvoid\n"
14048 msgstr "0x00005451\tFIOCLEX\tvoid\n"
14049
14050 #. type: tbl table
14051 #: build/C/man2/ioctl_list.2:171
14052 #, no-wrap
14053 msgid "0x00005452\tFIOASYNC\tconst int *\n"
14054 msgstr "0x00005452\tFIOASYNC\tconst int *\n"
14055
14056 #. type: tbl table
14057 #: build/C/man2/ioctl_list.2:172
14058 #, no-wrap
14059 msgid "0x00005453\tTIOCSERCONFIG\tvoid\n"
14060 msgstr "0x00005453\tTIOCSERCONFIG\tvoid\n"
14061
14062 #. type: tbl table
14063 #: build/C/man2/ioctl_list.2:173
14064 #, no-wrap
14065 msgid "0x00005454\tTIOCSERGWILD\tint *\n"
14066 msgstr "0x00005454\tTIOCSERGWILD\tint *\n"
14067
14068 #. type: tbl table
14069 #: build/C/man2/ioctl_list.2:174
14070 #, no-wrap
14071 msgid "0x00005455\tTIOCSERSWILD\tconst int *\n"
14072 msgstr "0x00005455\tTIOCSERSWILD\tconst int *\n"
14073
14074 #. type: tbl table
14075 #: build/C/man2/ioctl_list.2:175
14076 #, no-wrap
14077 msgid "0x00005456\tTIOCGLCKTRMIOS\tstruct termios *\n"
14078 msgstr "0x00005456\tTIOCGLCKTRMIOS\tstruct termios *\n"
14079
14080 #. type: tbl table
14081 #: build/C/man2/ioctl_list.2:176
14082 #, no-wrap
14083 msgid "0x00005457\tTIOCSLCKTRMIOS\tconst struct termios *\n"
14084 msgstr "0x00005457\tTIOCSLCKTRMIOS\tconst struct termios *\n"
14085
14086 #. type: tbl table
14087 #: build/C/man2/ioctl_list.2:177
14088 #, no-wrap
14089 msgid "0x00005458\tTIOCSERGSTRUCT\tstruct async_struct *\n"
14090 msgstr "0x00005458\tTIOCSERGSTRUCT\tstruct async_struct *\n"
14091
14092 #. type: tbl table
14093 #: build/C/man2/ioctl_list.2:178
14094 #, no-wrap
14095 msgid "0x00005459\tTIOCSERGETLSR\tint *\n"
14096 msgstr "0x00005459\tTIOCSERGETLSR\tint *\n"
14097
14098 #. type: tbl table
14099 #: build/C/man2/ioctl_list.2:185
14100 #, no-wrap
14101 msgid "0x0000545A\tTIOCSERGETMULTI\tstruct serial_multiport_struct *\n"
14102 msgstr "0x0000545A\tTIOCSERGETMULTI\tstruct serial_multiport_struct *\n"
14103
14104 #. type: tbl table
14105 #: build/C/man2/ioctl_list.2:186
14106 #, no-wrap
14107 msgid "0x0000545B\tTIOCSERSETMULTI\tconst struct serial_multiport_struct *\n"
14108 msgstr "0x0000545B\tTIOCSERSETMULTI\tconst struct serial_multiport_struct *\n"
14109
14110 #. type: Plain text
14111 #: build/C/man2/ioctl_list.2:190
14112 msgid "// E<lt>include/linux/ax25.hE<gt>"
14113 msgstr "// E<lt>include/linux/ax25.hE<gt>"
14114
14115 #. type: tbl table
14116 #: build/C/man2/ioctl_list.2:192
14117 #, no-wrap
14118 msgid "0x000089E0\tSIOCAX25GETUID\tconst struct sockaddr_ax25 *\n"
14119 msgstr "0x000089E0\tSIOCAX25GETUID\tconst struct sockaddr_ax25 *\n"
14120
14121 #. type: tbl table
14122 #: build/C/man2/ioctl_list.2:193
14123 #, no-wrap
14124 msgid "0x000089E1\tSIOCAX25ADDUID\tconst struct sockaddr_ax25 *\n"
14125 msgstr "0x000089E1\tSIOCAX25ADDUID\tconst struct sockaddr_ax25 *\n"
14126
14127 #. type: tbl table
14128 #: build/C/man2/ioctl_list.2:194
14129 #, no-wrap
14130 msgid "0x000089E2\tSIOCAX25DELUID\tconst struct sockaddr_ax25 *\n"
14131 msgstr "0x000089E2\tSIOCAX25DELUID\tconst struct sockaddr_ax25 *\n"
14132
14133 #. type: tbl table
14134 #: build/C/man2/ioctl_list.2:195
14135 #, no-wrap
14136 msgid "0x000089E3\tSIOCAX25NOUID\tconst int *\n"
14137 msgstr "0x000089E3\tSIOCAX25NOUID\tconst int *\n"
14138
14139 #. type: tbl table
14140 #: build/C/man2/ioctl_list.2:196
14141 #, no-wrap
14142 msgid "0x000089E4\tSIOCAX25DIGCTL\tconst int *\n"
14143 msgstr "0x000089E4\tSIOCAX25DIGCTL\tconst int *\n"
14144
14145 #. type: tbl table
14146 #: build/C/man2/ioctl_list.2:197
14147 #, no-wrap
14148 msgid "0x000089E5\tSIOCAX25GETPARMS\tstruct ax25_parms_struct *\t// I-O\n"
14149 msgstr "0x000089E5\tSIOCAX25GETPARMS\tstruct ax25_parms_struct *\t// I-O\n"
14150
14151 #. type: tbl table
14152 #: build/C/man2/ioctl_list.2:201
14153 #, no-wrap
14154 msgid "0x000089E6\tSIOCAX25SETPARMS\tconst struct ax25_parms_struct *\n"
14155 msgstr "0x000089E6\tSIOCAX25SETPARMS\tconst struct ax25_parms_struct *\n"
14156
14157 #. type: Plain text
14158 #: build/C/man2/ioctl_list.2:205
14159 msgid "// E<lt>include/linux/cdk.hE<gt>"
14160 msgstr "// E<lt>include/linux/cdk.hE<gt>"
14161
14162 #. type: tbl table
14163 #: build/C/man2/ioctl_list.2:207
14164 #, no-wrap
14165 msgid "0x00007314\tSTL_BINTR\tvoid\n"
14166 msgstr "0x00007314\tSTL_BINTR\tvoid\n"
14167
14168 #. type: tbl table
14169 #: build/C/man2/ioctl_list.2:208
14170 #, no-wrap
14171 msgid "0x00007315\tSTL_BSTART\tvoid\n"
14172 msgstr "0x00007315\tSTL_BSTART\tvoid\n"
14173
14174 #. type: tbl table
14175 #: build/C/man2/ioctl_list.2:209
14176 #, no-wrap
14177 msgid "0x00007316\tSTL_BSTOP\tvoid\n"
14178 msgstr "0x00007316\tSTL_BSTOP\tvoid\n"
14179
14180 #. type: tbl table
14181 #: build/C/man2/ioctl_list.2:210
14182 #, no-wrap
14183 msgid "0x00007317\tSTL_BRESET\tvoid\n"
14184 msgstr "0x00007317\tSTL_BRESET\tvoid\n"
14185
14186 #. type: Plain text
14187 #: build/C/man2/ioctl_list.2:214
14188 msgid "// E<lt>include/linux/cdrom.hE<gt>"
14189 msgstr "// E<lt>include/linux/cdrom.hE<gt>"
14190
14191 #. type: tbl table
14192 #: build/C/man2/ioctl_list.2:216
14193 #, no-wrap
14194 msgid "0x00005301\tCDROMPAUSE\tvoid\n"
14195 msgstr "0x00005301\tCDROMPAUSE\tvoid\n"
14196
14197 #. type: tbl table
14198 #: build/C/man2/ioctl_list.2:217
14199 #, no-wrap
14200 msgid "0x00005302\tCDROMRESUME\tvoid\n"
14201 msgstr "0x00005302\tCDROMRESUME\tvoid\n"
14202
14203 #. type: tbl table
14204 #: build/C/man2/ioctl_list.2:218
14205 #, no-wrap
14206 msgid "0x00005303\tCDROMPLAYMSF\tconst struct cdrom_msf *\n"
14207 msgstr "0x00005303\tCDROMPLAYMSF\tconst struct cdrom_msf *\n"
14208
14209 #. type: tbl table
14210 #: build/C/man2/ioctl_list.2:219
14211 #, no-wrap
14212 msgid "0x00005304\tCDROMPLAYTRKIND\tconst struct cdrom_ti *\n"
14213 msgstr "0x00005304\tCDROMPLAYTRKIND\tconst struct cdrom_ti *\n"
14214
14215 #. type: tbl table
14216 #: build/C/man2/ioctl_list.2:220
14217 #, no-wrap
14218 msgid "0x00005305\tCDROMREADTOCHDR\tstruct cdrom_tochdr *\n"
14219 msgstr "0x00005305\tCDROMREADTOCHDR\tstruct cdrom_tochdr *\n"
14220
14221 #. type: tbl table
14222 #: build/C/man2/ioctl_list.2:224
14223 #, no-wrap
14224 msgid "0x00005306\tCDROMREADTOCENTRY\tstruct cdrom_tocentry *\t// I-O\n"
14225 msgstr "0x00005306\tCDROMREADTOCENTRY\tstruct cdrom_tocentry *\t// I-O\n"
14226
14227 #. type: tbl table
14228 #: build/C/man2/ioctl_list.2:228
14229 #, no-wrap
14230 msgid "0x00005307\tCDROMSTOP\tvoid\n"
14231 msgstr "0x00005307\tCDROMSTOP\tvoid\n"
14232
14233 #. type: tbl table
14234 #: build/C/man2/ioctl_list.2:229
14235 #, no-wrap
14236 msgid "0x00005308\tCDROMSTART\tvoid\n"
14237 msgstr "0x00005308\tCDROMSTART\tvoid\n"
14238
14239 #. type: tbl table
14240 #: build/C/man2/ioctl_list.2:230
14241 #, no-wrap
14242 msgid "0x00005309\tCDROMEJECT\tvoid\n"
14243 msgstr "0x00005309\tCDROMEJECT\tvoid\n"
14244
14245 #. type: tbl table
14246 #: build/C/man2/ioctl_list.2:231
14247 #, no-wrap
14248 msgid "0x0000530A\tCDROMVOLCTRL\tconst struct cdrom_volctrl *\n"
14249 msgstr "0x0000530A\tCDROMVOLCTRL\tconst struct cdrom_volctrl *\n"
14250
14251 #. type: tbl table
14252 #: build/C/man2/ioctl_list.2:232
14253 #, no-wrap
14254 msgid "0x0000530B\tCDROMSUBCHNL\tstruct cdrom_subchnl *\t// I-O\n"
14255 msgstr "0x0000530B\tCDROMSUBCHNL\tstruct cdrom_subchnl *\t// I-O\n"
14256
14257 #. type: tbl table
14258 #: build/C/man2/ioctl_list.2:233
14259 #, no-wrap
14260 msgid "0x0000530C\tCDROMREADMODE2\tconst struct cdrom_msf *\t// MORE\n"
14261 msgstr "0x0000530C\tCDROMREADMODE2\tconst struct cdrom_msf *\t// MORE\n"
14262
14263 #. type: tbl table
14264 #: build/C/man2/ioctl_list.2:234
14265 #, no-wrap
14266 msgid "0x0000530D\tCDROMREADMODE1\tconst struct cdrom_msf *\t// MORE\n"
14267 msgstr "0x0000530D\tCDROMREADMODE1\tconst struct cdrom_msf *\t// MORE\n"
14268
14269 #. type: tbl table
14270 #: build/C/man2/ioctl_list.2:235
14271 #, no-wrap
14272 msgid "0x0000530E\tCDROMREADAUDIO\tconst struct cdrom_read_audio *\t// MORE\n"
14273 msgstr "0x0000530E\tCDROMREADAUDIO\tconst struct cdrom_read_audio *\t// MORE\n"
14274
14275 #. type: tbl table
14276 #: build/C/man2/ioctl_list.2:236
14277 #, no-wrap
14278 msgid "0x0000530F\tCDROMEJECT_SW\tint\n"
14279 msgstr "0x0000530F\tCDROMEJECT_SW\tint\n"
14280
14281 #. type: tbl table
14282 #: build/C/man2/ioctl_list.2:240
14283 #, no-wrap
14284 msgid "0x00005310\tCDROMMULTISESSION\tstruct cdrom_multisession *\t// I-O\n"
14285 msgstr "0x00005310\tCDROMMULTISESSION\tstruct cdrom_multisession *\t// I-O\n"
14286
14287 #. type: tbl table
14288 #: build/C/man2/ioctl_list.2:244
14289 #, no-wrap
14290 msgid "0x00005311\tCDROM_GET_UPC\tstruct { char [8]; } *\n"
14291 msgstr "0x00005311\tCDROM_GET_UPC\tstruct { char [8]; } *\n"
14292
14293 #. type: tbl table
14294 #: build/C/man2/ioctl_list.2:245
14295 #, no-wrap
14296 msgid "0x00005312\tCDROMRESET\tvoid\n"
14297 msgstr "0x00005312\tCDROMRESET\tvoid\n"
14298
14299 #. type: tbl table
14300 #: build/C/man2/ioctl_list.2:246
14301 #, no-wrap
14302 msgid "0x00005313\tCDROMVOLREAD\tstruct cdrom_volctrl *\n"
14303 msgstr "0x00005313\tCDROMVOLREAD\tstruct cdrom_volctrl *\n"
14304
14305 #. type: tbl table
14306 #: build/C/man2/ioctl_list.2:247
14307 #, no-wrap
14308 msgid "0x00005314\tCDROMREADRAW\tconst struct cdrom_msf *\t// MORE\n"
14309 msgstr "0x00005314\tCDROMREADRAW\tconst struct cdrom_msf *\t// MORE\n"
14310
14311 #. type: tbl table
14312 #: build/C/man2/ioctl_list.2:248
14313 #, no-wrap
14314 msgid "0x00005315\tCDROMREADCOOKED\tconst struct cdrom_msf *\t// MORE\n"
14315 msgstr "0x00005315\tCDROMREADCOOKED\tconst struct cdrom_msf *\t// MORE\n"
14316
14317 #. type: tbl table
14318 #: build/C/man2/ioctl_list.2:249
14319 #, no-wrap
14320 msgid "0x00005316\tCDROMSEEK\tconst struct cdrom_msf *\n"
14321 msgstr "0x00005316\tCDROMSEEK\tconst struct cdrom_msf *\n"
14322
14323 #. type: Plain text
14324 #: build/C/man2/ioctl_list.2:253
14325 msgid "// E<lt>include/linux/cm206.hE<gt>"
14326 msgstr "// E<lt>include/linux/cm206.hE<gt>"
14327
14328 #. type: tbl table
14329 #: build/C/man2/ioctl_list.2:255
14330 #, no-wrap
14331 msgid "0x00002000\tCM206CTL_GET_STAT\tint\n"
14332 msgstr "0x00002000\tCM206CTL_GET_STAT\tint\n"
14333
14334 #. type: tbl table
14335 #: build/C/man2/ioctl_list.2:256
14336 #, no-wrap
14337 msgid "0x00002001\tCM206CTL_GET_LAST_STAT\tint\n"
14338 msgstr "0x00002001\tCM206CTL_GET_LAST_STAT\tint\n"
14339
14340 #. type: Plain text
14341 #: build/C/man2/ioctl_list.2:260
14342 msgid "// E<lt>include/linux/cyclades.hE<gt>"
14343 msgstr "// E<lt>include/linux/cyclades.hE<gt>"
14344
14345 #. type: tbl table
14346 #: build/C/man2/ioctl_list.2:262
14347 #, no-wrap
14348 msgid "0x00435901\tCYGETMON\tstruct cyclades_monitor *\n"
14349 msgstr "0x00435901\tCYGETMON\tstruct cyclades_monitor *\n"
14350
14351 #. type: tbl table
14352 #: build/C/man2/ioctl_list.2:263
14353 #, no-wrap
14354 msgid "0x00435902\tCYGETTHRESH\tint *\n"
14355 msgstr "0x00435902\tCYGETTHRESH\tint *\n"
14356
14357 #. type: tbl table
14358 #: build/C/man2/ioctl_list.2:264
14359 #, no-wrap
14360 msgid "0x00435903\tCYSETTHRESH\tint\n"
14361 msgstr "0x00435903\tCYSETTHRESH\tint\n"
14362
14363 #. type: tbl table
14364 #: build/C/man2/ioctl_list.2:265
14365 #, no-wrap
14366 msgid "0x00435904\tCYGETDEFTHRESH\tint *\n"
14367 msgstr "0x00435904\tCYGETDEFTHRESH\tint *\n"
14368
14369 #. type: tbl table
14370 #: build/C/man2/ioctl_list.2:266
14371 #, no-wrap
14372 msgid "0x00435905\tCYSETDEFTHRESH\tint\n"
14373 msgstr "0x00435905\tCYSETDEFTHRESH\tint\n"
14374
14375 #. type: tbl table
14376 #: build/C/man2/ioctl_list.2:267
14377 #, no-wrap
14378 msgid "0x00435906\tCYGETTIMEOUT\tint *\n"
14379 msgstr "0x00435906\tCYGETTIMEOUT\tint *\n"
14380
14381 #. type: tbl table
14382 #: build/C/man2/ioctl_list.2:268
14383 #, no-wrap
14384 msgid "0x00435907\tCYSETTIMEOUT\tint\n"
14385 msgstr "0x00435907\tCYSETTIMEOUT\tint\n"
14386
14387 #. type: tbl table
14388 #: build/C/man2/ioctl_list.2:269
14389 #, no-wrap
14390 msgid "0x00435908\tCYGETDEFTIMEOUT\tint *\n"
14391 msgstr "0x00435908\tCYGETDEFTIMEOUT\tint *\n"
14392
14393 #. type: tbl table
14394 #: build/C/man2/ioctl_list.2:270
14395 #, no-wrap
14396 msgid "0x00435909\tCYSETDEFTIMEOUT\tint\n"
14397 msgstr "0x00435909\tCYSETDEFTIMEOUT\tint\n"
14398
14399 #. type: Plain text
14400 #: build/C/man2/ioctl_list.2:274
14401 msgid "// E<lt>include/linux/ext2_fs.hE<gt>"
14402 msgstr "// E<lt>include/linux/ext2_fs.hE<gt>"
14403
14404 #. type: tbl table
14405 #: build/C/man2/ioctl_list.2:276
14406 #, no-wrap
14407 msgid "0x80046601\tEXT2_IOC_GETFLAGS\tint *\n"
14408 msgstr "0x80046601\tEXT2_IOC_GETFLAGS\tint *\n"
14409
14410 #. type: tbl table
14411 #: build/C/man2/ioctl_list.2:277
14412 #, no-wrap
14413 msgid "0x40046602\tEXT2_IOC_SETFLAGS\tconst int *\n"
14414 msgstr "0x40046602\tEXT2_IOC_SETFLAGS\tconst int *\n"
14415
14416 #. type: tbl table
14417 #: build/C/man2/ioctl_list.2:278
14418 #, no-wrap
14419 msgid "0x80047601\tEXT2_IOC_GETVERSION\tint *\n"
14420 msgstr "0x80047601\tEXT2_IOC_GETVERSION\tint *\n"
14421
14422 #. type: tbl table
14423 #: build/C/man2/ioctl_list.2:279
14424 #, no-wrap
14425 msgid "0x40047602\tEXT2_IOC_SETVERSION\tconst int *\n"
14426 msgstr "0x40047602\tEXT2_IOC_SETVERSION\tconst int *\n"
14427
14428 #. type: Plain text
14429 #: build/C/man2/ioctl_list.2:283
14430 msgid "// E<lt>include/linux/fd.hE<gt>"
14431 msgstr "// E<lt>include/linux/fd.hE<gt>"
14432
14433 #. type: tbl table
14434 #: build/C/man2/ioctl_list.2:285
14435 #, no-wrap
14436 msgid "0x00000000\tFDCLRPRM\tvoid\n"
14437 msgstr "0x00000000\tFDCLRPRM\tvoid\n"
14438
14439 #. type: tbl table
14440 #: build/C/man2/ioctl_list.2:286
14441 #, no-wrap
14442 msgid "0x00000001\tFDSETPRM\tconst struct floppy_struct *\n"
14443 msgstr "0x00000001\tFDSETPRM\tconst struct floppy_struct *\n"
14444
14445 #. type: tbl table
14446 #: build/C/man2/ioctl_list.2:287
14447 #, no-wrap
14448 msgid "0x00000002\tFDDEFPRM\tconst struct floppy_struct *\n"
14449 msgstr "0x00000002\tFDDEFPRM\tconst struct floppy_struct *\n"
14450
14451 #. type: tbl table
14452 #: build/C/man2/ioctl_list.2:288
14453 #, no-wrap
14454 msgid "0x00000003\tFDGETPRM\tstruct floppy_struct *\n"
14455 msgstr "0x00000003\tFDGETPRM\tstruct floppy_struct *\n"
14456
14457 #. type: tbl table
14458 #: build/C/man2/ioctl_list.2:289
14459 #, no-wrap
14460 msgid "0x00000004\tFDMSGON\tvoid\n"
14461 msgstr "0x00000004\tFDMSGON\tvoid\n"
14462
14463 #. type: tbl table
14464 #: build/C/man2/ioctl_list.2:290
14465 #, no-wrap
14466 msgid "0x00000005\tFDMSGOFF\tvoid\n"
14467 msgstr "0x00000005\tFDMSGOFF\tvoid\n"
14468
14469 #. type: tbl table
14470 #: build/C/man2/ioctl_list.2:291
14471 #, no-wrap
14472 msgid "0x00000006\tFDFMTBEG\tvoid\n"
14473 msgstr "0x00000006\tFDFMTBEG\tvoid\n"
14474
14475 #. type: tbl table
14476 #: build/C/man2/ioctl_list.2:292
14477 #, no-wrap
14478 msgid "0x00000007\tFDFMTTRK\tconst struct format_descr *\n"
14479 msgstr "0x00000007\tFDFMTTRK\tconst struct format_descr *\n"
14480
14481 #. type: tbl table
14482 #: build/C/man2/ioctl_list.2:293
14483 #, no-wrap
14484 msgid "0x00000008\tFDFMTEND\tvoid\n"
14485 msgstr "0x00000008\tFDFMTEND\tvoid\n"
14486
14487 #. type: tbl table
14488 #: build/C/man2/ioctl_list.2:294
14489 #, no-wrap
14490 msgid "0x0000000A\tFDSETEMSGTRESH\tint\n"
14491 msgstr "0x0000000A\tFDSETEMSGTRESH\tint\n"
14492
14493 #. type: tbl table
14494 #: build/C/man2/ioctl_list.2:295
14495 #, no-wrap
14496 msgid "0x0000000B\tFDFLUSH\tvoid\n"
14497 msgstr "0x0000000B\tFDFLUSH\tvoid\n"
14498
14499 #. type: tbl table
14500 #: build/C/man2/ioctl_list.2:296
14501 #, no-wrap
14502 msgid "0x0000000C\tFDSETMAXERRS\tconst struct floppy_max_errors *\n"
14503 msgstr "0x0000000C\tFDSETMAXERRS\tconst struct floppy_max_errors *\n"
14504
14505 #. type: tbl table
14506 #: build/C/man2/ioctl_list.2:297
14507 #, no-wrap
14508 msgid "0x0000000E\tFDGETMAXERRS\tstruct floppy_max_errors *\n"
14509 msgstr "0x0000000E\tFDGETMAXERRS\tstruct floppy_max_errors *\n"
14510
14511 #. type: tbl table
14512 #: build/C/man2/ioctl_list.2:298
14513 #, no-wrap
14514 msgid "0x00000010\tFDGETDRVTYP\tstruct { char [16]; } *\n"
14515 msgstr "0x00000010\tFDGETDRVTYP\tstruct { char [16]; } *\n"
14516
14517 #. type: tbl table
14518 #: build/C/man2/ioctl_list.2:299
14519 #, no-wrap
14520 msgid "0x00000014\tFDSETDRVPRM\tconst struct floppy_drive_params *\n"
14521 msgstr "0x00000014\tFDSETDRVPRM\tconst struct floppy_drive_params *\n"
14522
14523 #. type: tbl table
14524 #: build/C/man2/ioctl_list.2:300
14525 #, no-wrap
14526 msgid "0x00000015\tFDGETDRVPRM\tstruct floppy_drive_params *\n"
14527 msgstr "0x00000015\tFDGETDRVPRM\tstruct floppy_drive_params *\n"
14528
14529 #. type: tbl table
14530 #: build/C/man2/ioctl_list.2:301
14531 #, no-wrap
14532 msgid "0x00000016\tFDGETDRVSTAT\tstruct floppy_drive_struct *\n"
14533 msgstr "0x00000016\tFDGETDRVSTAT\tstruct floppy_drive_struct *\n"
14534
14535 #. type: tbl table
14536 #: build/C/man2/ioctl_list.2:302
14537 #, no-wrap
14538 msgid "0x00000017\tFDPOLLDRVSTAT\tstruct floppy_drive_struct *\n"
14539 msgstr "0x00000017\tFDPOLLDRVSTAT\tstruct floppy_drive_struct *\n"
14540
14541 #. type: tbl table
14542 #: build/C/man2/ioctl_list.2:303
14543 #, no-wrap
14544 msgid "0x00000018\tFDRESET\tint\n"
14545 msgstr "0x00000018\tFDRESET\tint\n"
14546
14547 #. type: tbl table
14548 #: build/C/man2/ioctl_list.2:304
14549 #, no-wrap
14550 msgid "0x00000019\tFDGETFDCSTAT\tstruct floppy_fdc_state *\n"
14551 msgstr "0x00000019\tFDGETFDCSTAT\tstruct floppy_fdc_state *\n"
14552
14553 #. type: tbl table
14554 #: build/C/man2/ioctl_list.2:305
14555 #, no-wrap
14556 msgid "0x0000001B\tFDWERRORCLR\tvoid\n"
14557 msgstr "0x0000001B\tFDWERRORCLR\tvoid\n"
14558
14559 #. type: tbl table
14560 #: build/C/man2/ioctl_list.2:306
14561 #, no-wrap
14562 msgid "0x0000001C\tFDWERRORGET\tstruct floppy_write_errors *\n"
14563 msgstr "0x0000001C\tFDWERRORGET\tstruct floppy_write_errors *\n"
14564
14565 #. type: tbl table
14566 #: build/C/man2/ioctl_list.2:310
14567 #, no-wrap
14568 msgid "0x0000001E\tFDRAWCMD\tstruct floppy_raw_cmd *\t// MORE // I-O\n"
14569 msgstr "0x0000001E\tFDRAWCMD\tstruct floppy_raw_cmd *\t// MORE // I-O\n"
14570
14571 #. type: tbl table
14572 #: build/C/man2/ioctl_list.2:311
14573 #, no-wrap
14574 msgid "0x00000028\tFDTWADDLE\tvoid\n"
14575 msgstr "0x00000028\tFDTWADDLE\tvoid\n"
14576
14577 #. type: Plain text
14578 #: build/C/man2/ioctl_list.2:315
14579 msgid "// E<lt>include/linux/fs.hE<gt>"
14580 msgstr "// E<lt>include/linux/fs.hE<gt>"
14581
14582 #. type: tbl table
14583 #: build/C/man2/ioctl_list.2:317
14584 #, no-wrap
14585 msgid "0x0000125D\tBLKROSET\tconst int *\n"
14586 msgstr "0x0000125D\tBLKROSET\tconst int *\n"
14587
14588 #. type: tbl table
14589 #: build/C/man2/ioctl_list.2:318
14590 #, no-wrap
14591 msgid "0x0000125E\tBLKROGET\tint *\n"
14592 msgstr "0x0000125E\tBLKROGET\tint *\n"
14593
14594 #. type: tbl table
14595 #: build/C/man2/ioctl_list.2:319
14596 #, no-wrap
14597 msgid "0x0000125F\tBLKRRPART\tvoid\n"
14598 msgstr "0x0000125F\tBLKRRPART\tvoid\n"
14599
14600 #. type: tbl table
14601 #: build/C/man2/ioctl_list.2:320
14602 #, no-wrap
14603 msgid "0x00001260\tBLKGETSIZE\tunsigned long *\n"
14604 msgstr "0x00001260\tBLKGETSIZE\tunsigned long *\n"
14605
14606 #. type: tbl table
14607 #: build/C/man2/ioctl_list.2:321
14608 #, no-wrap
14609 msgid "0x00001261\tBLKFLSBUF\tvoid\n"
14610 msgstr "0x00001261\tBLKFLSBUF\tvoid\n"
14611
14612 #. type: tbl table
14613 #: build/C/man2/ioctl_list.2:322
14614 #, no-wrap
14615 msgid "0x00001262\tBLKRASET\tint\n"
14616 msgstr "0x00001262\tBLKRASET\tint\n"
14617
14618 #. type: tbl table
14619 #: build/C/man2/ioctl_list.2:323
14620 #, no-wrap
14621 msgid "0x00001263\tBLKRAGET\tint *\n"
14622 msgstr "0x00001263\tBLKRAGET\tint *\n"
14623
14624 #. type: tbl table
14625 #: build/C/man2/ioctl_list.2:324
14626 #, no-wrap
14627 msgid "0x00000001\tFIBMAP\tint *\t// I-O\n"
14628 msgstr "0x00000001\tFIBMAP\tint *\t// I-O\n"
14629
14630 #. type: tbl table
14631 #: build/C/man2/ioctl_list.2:325
14632 #, no-wrap
14633 msgid "0x00000002\tFIGETBSZ\tint *\n"
14634 msgstr "0x00000002\tFIGETBSZ\tint *\n"
14635
14636 #. type: Plain text
14637 #: build/C/man2/ioctl_list.2:329
14638 msgid "// E<lt>include/linux/hdreg.hE<gt>"
14639 msgstr "// E<lt>include/linux/hdreg.hE<gt>"
14640
14641 #. type: tbl table
14642 #: build/C/man2/ioctl_list.2:331
14643 #, no-wrap
14644 msgid "0x00000301\tHDIO_GETGEO\tstruct hd_geometry *\n"
14645 msgstr "0x00000301\tHDIO_GETGEO\tstruct hd_geometry *\n"
14646
14647 #. type: tbl table
14648 #: build/C/man2/ioctl_list.2:332
14649 #, no-wrap
14650 msgid "0x00000302\tHDIO_GET_UNMASKINTR\tint *\n"
14651 msgstr "0x00000302\tHDIO_GET_UNMASKINTR\tint *\n"
14652
14653 #. type: tbl table
14654 #: build/C/man2/ioctl_list.2:333
14655 #, no-wrap
14656 msgid "0x00000304\tHDIO_GET_MULTCOUNT\tint *\n"
14657 msgstr "0x00000304\tHDIO_GET_MULTCOUNT\tint *\n"
14658
14659 #. type: tbl table
14660 #: build/C/man2/ioctl_list.2:334
14661 #, no-wrap
14662 msgid "0x00000307\tHDIO_GET_IDENTITY\tstruct hd_driveid *\n"
14663 msgstr "0x00000307\tHDIO_GET_IDENTITY\tstruct hd_driveid *\n"
14664
14665 #. type: tbl table
14666 #: build/C/man2/ioctl_list.2:335
14667 #, no-wrap
14668 msgid "0x00000308\tHDIO_GET_KEEPSETTINGS\tint *\n"
14669 msgstr "0x00000308\tHDIO_GET_KEEPSETTINGS\tint *\n"
14670
14671 #. type: tbl table
14672 #: build/C/man2/ioctl_list.2:336
14673 #, no-wrap
14674 msgid "0x00000309\tHDIO_GET_CHIPSET\tint *\n"
14675 msgstr "0x00000309\tHDIO_GET_CHIPSET\tint *\n"
14676
14677 #. type: tbl table
14678 #: build/C/man2/ioctl_list.2:337
14679 #, no-wrap
14680 msgid "0x0000030A\tHDIO_GET_NOWERR\tint *\n"
14681 msgstr "0x0000030A\tHDIO_GET_NOWERR\tint *\n"
14682
14683 #. type: tbl table
14684 #: build/C/man2/ioctl_list.2:338
14685 #, no-wrap
14686 msgid "0x0000030B\tHDIO_GET_DMA\tint *\n"
14687 msgstr "0x0000030B\tHDIO_GET_DMA\tint *\n"
14688
14689 #. type: tbl table
14690 #: build/C/man2/ioctl_list.2:339
14691 #, no-wrap
14692 msgid "0x0000031F\tHDIO_DRIVE_CMD\tint *\t// I-O\n"
14693 msgstr "0x0000031F\tHDIO_DRIVE_CMD\tint *\t// I-O\n"
14694
14695 #. type: tbl table
14696 #: build/C/man2/ioctl_list.2:340
14697 #, no-wrap
14698 msgid "0x00000321\tHDIO_SET_MULTCOUNT\tint\n"
14699 msgstr "0x00000321\tHDIO_SET_MULTCOUNT\tint\n"
14700
14701 #. type: tbl table
14702 #: build/C/man2/ioctl_list.2:341
14703 #, no-wrap
14704 msgid "0x00000322\tHDIO_SET_UNMASKINTR\tint\n"
14705 msgstr "0x00000322\tHDIO_SET_UNMASKINTR\tint\n"
14706
14707 #. type: tbl table
14708 #: build/C/man2/ioctl_list.2:342
14709 #, no-wrap
14710 msgid "0x00000323\tHDIO_SET_KEEPSETTINGS\tint\n"
14711 msgstr "0x00000323\tHDIO_SET_KEEPSETTINGS\tint\n"
14712
14713 #. type: tbl table
14714 #: build/C/man2/ioctl_list.2:343
14715 #, no-wrap
14716 msgid "0x00000324\tHDIO_SET_CHIPSET\tint\n"
14717 msgstr "0x00000324\tHDIO_SET_CHIPSET\tint\n"
14718
14719 #. type: tbl table
14720 #: build/C/man2/ioctl_list.2:344
14721 #, no-wrap
14722 msgid "0x00000325\tHDIO_SET_NOWERR\tint\n"
14723 msgstr "0x00000325\tHDIO_SET_NOWERR\tint\n"
14724
14725 #. type: tbl table
14726 #: build/C/man2/ioctl_list.2:345
14727 #, no-wrap
14728 msgid "0x00000326\tHDIO_SET_DMA\tint\n"
14729 msgstr "0x00000326\tHDIO_SET_DMA\tint\n"
14730
14731 #. type: Plain text
14732 #: build/C/man2/ioctl_list.2:349
14733 msgid "// E<lt>include/linux/if_eql.hE<gt>"
14734 msgstr "// E<lt>include/linux/if_eql.hE<gt>"
14735
14736 #. type: tbl table
14737 #: build/C/man2/ioctl_list.2:351
14738 #, no-wrap
14739 msgid "0x000089F0\tEQL_ENSLAVE\tstruct ifreq *\t// MORE // I-O\n"
14740 msgstr "0x000089F0\tEQL_ENSLAVE\tstruct ifreq *\t// MORE // I-O\n"
14741
14742 #. type: tbl table
14743 #: build/C/man2/ioctl_list.2:352
14744 #, no-wrap
14745 msgid "0x000089F1\tEQL_EMANCIPATE\tstruct ifreq *\t// MORE // I-O\n"
14746 msgstr "0x000089F1\tEQL_EMANCIPATE\tstruct ifreq *\t// MORE // I-O\n"
14747
14748 #. type: tbl table
14749 #: build/C/man2/ioctl_list.2:353
14750 #, no-wrap
14751 msgid "0x000089F2\tEQL_GETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14752 msgstr "0x000089F2\tEQL_GETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14753
14754 #. type: tbl table
14755 #: build/C/man2/ioctl_list.2:354
14756 #, no-wrap
14757 msgid "0x000089F3\tEQL_SETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14758 msgstr "0x000089F3\tEQL_SETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14759
14760 #. type: tbl table
14761 #: build/C/man2/ioctl_list.2:355
14762 #, no-wrap
14763 msgid "0x000089F4\tEQL_GETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14764 msgstr "0x000089F4\tEQL_GETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14765
14766 #. type: tbl table
14767 #: build/C/man2/ioctl_list.2:356
14768 #, no-wrap
14769 msgid "0x000089F5\tEQL_SETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14770 msgstr "0x000089F5\tEQL_SETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14771
14772 #. type: Plain text
14773 #: build/C/man2/ioctl_list.2:360
14774 msgid "// E<lt>include/linux/if_plip.hE<gt>"
14775 msgstr "// E<lt>include/linux/if_plip.hE<gt>"
14776
14777 #. type: tbl table
14778 #: build/C/man2/ioctl_list.2:362
14779 #, no-wrap
14780 msgid "0x000089F0\tSIOCDEVPLIP\tstruct ifreq *\t// I-O\n"
14781 msgstr "0x000089F0\tSIOCDEVPLIP\tstruct ifreq *\t// I-O\n"
14782
14783 #. type: Plain text
14784 #: build/C/man2/ioctl_list.2:366
14785 msgid "// E<lt>include/linux/if_ppp.hE<gt>"
14786 msgstr "// E<lt>include/linux/if_ppp.hE<gt>"
14787
14788 #. type: tbl table
14789 #: build/C/man2/ioctl_list.2:368
14790 #, no-wrap
14791 msgid "0x00005490\tPPPIOCGFLAGS\tint *\n"
14792 msgstr "0x00005490\tPPPIOCGFLAGS\tint *\n"
14793
14794 #. type: tbl table
14795 #: build/C/man2/ioctl_list.2:369
14796 #, no-wrap
14797 msgid "0x00005491\tPPPIOCSFLAGS\tconst int *\n"
14798 msgstr "0x00005491\tPPPIOCSFLAGS\tconst int *\n"
14799
14800 #. type: tbl table
14801 #: build/C/man2/ioctl_list.2:370
14802 #, no-wrap
14803 msgid "0x00005492\tPPPIOCGASYNCMAP\tint *\n"
14804 msgstr "0x00005492\tPPPIOCGASYNCMAP\tint *\n"
14805
14806 #. type: tbl table
14807 #: build/C/man2/ioctl_list.2:371
14808 #, no-wrap
14809 msgid "0x00005493\tPPPIOCSASYNCMAP\tconst int *\n"
14810 msgstr "0x00005493\tPPPIOCSASYNCMAP\tconst int *\n"
14811
14812 #. type: tbl table
14813 #: build/C/man2/ioctl_list.2:372
14814 #, no-wrap
14815 msgid "0x00005494\tPPPIOCGUNIT\tint *\n"
14816 msgstr "0x00005494\tPPPIOCGUNIT\tint *\n"
14817
14818 #. type: tbl table
14819 #: build/C/man2/ioctl_list.2:373
14820 #, no-wrap
14821 msgid "0x00005495\tPPPIOCSINPSIG\tconst int *\n"
14822 msgstr "0x00005495\tPPPIOCSINPSIG\tconst int *\n"
14823
14824 #. type: tbl table
14825 #: build/C/man2/ioctl_list.2:374
14826 #, no-wrap
14827 msgid "0x00005497\tPPPIOCSDEBUG\tconst int *\n"
14828 msgstr "0x00005497\tPPPIOCSDEBUG\tconst int *\n"
14829
14830 #. type: tbl table
14831 #: build/C/man2/ioctl_list.2:375
14832 #, no-wrap
14833 msgid "0x00005498\tPPPIOCGDEBUG\tint *\n"
14834 msgstr "0x00005498\tPPPIOCGDEBUG\tint *\n"
14835
14836 #. type: tbl table
14837 #: build/C/man2/ioctl_list.2:376
14838 #, no-wrap
14839 msgid "0x00005499\tPPPIOCGSTAT\tstruct ppp_stats *\n"
14840 msgstr "0x00005499\tPPPIOCGSTAT\tstruct ppp_stats *\n"
14841
14842 #. type: tbl table
14843 #: build/C/man2/ioctl_list.2:377
14844 #, no-wrap
14845 msgid "0x0000549A\tPPPIOCGTIME\tstruct ppp_ddinfo *\n"
14846 msgstr "0x0000549A\tPPPIOCGTIME\tstruct ppp_ddinfo *\n"
14847
14848 #. type: tbl table
14849 #: build/C/man2/ioctl_list.2:378
14850 #, no-wrap
14851 msgid "0x0000549B\tPPPIOCGXASYNCMAP\tstruct { int [8]; } *\n"
14852 msgstr "0x0000549B\tPPPIOCGXASYNCMAP\tstruct { int [8]; } *\n"
14853
14854 #. type: tbl table
14855 #: build/C/man2/ioctl_list.2:379
14856 #, no-wrap
14857 msgid "0x0000549C\tPPPIOCSXASYNCMAP\tconst struct { int [8]; } *\n"
14858 msgstr "0x0000549C\tPPPIOCSXASYNCMAP\tconst struct { int [8]; } *\n"
14859
14860 #. type: tbl table
14861 #: build/C/man2/ioctl_list.2:380
14862 #, no-wrap
14863 msgid "0x0000549D\tPPPIOCSMRU\tconst int *\n"
14864 msgstr "0x0000549D\tPPPIOCSMRU\tconst int *\n"
14865
14866 #. type: tbl table
14867 #: build/C/man2/ioctl_list.2:381
14868 #, no-wrap
14869 msgid "0x0000549E\tPPPIOCRASYNCMAP\tconst int *\n"
14870 msgstr "0x0000549E\tPPPIOCRASYNCMAP\tconst int *\n"
14871
14872 #. type: tbl table
14873 #: build/C/man2/ioctl_list.2:382
14874 #, no-wrap
14875 msgid "0x0000549F\tPPPIOCSMAXCID\tconst int *\n"
14876 msgstr "0x0000549F\tPPPIOCSMAXCID\tconst int *\n"
14877
14878 #. type: Plain text
14879 #: build/C/man2/ioctl_list.2:386
14880 msgid "// E<lt>include/linux/ipx.hE<gt>"
14881 msgstr "// E<lt>include/linux/ipx.hE<gt>"
14882
14883 #. type: tbl table
14884 #: build/C/man2/ioctl_list.2:388
14885 #, no-wrap
14886 msgid "0x000089E0\tSIOCAIPXITFCRT\tconst char *\n"
14887 msgstr "0x000089E0\tSIOCAIPXITFCRT\tconst char *\n"
14888
14889 #. type: tbl table
14890 #: build/C/man2/ioctl_list.2:389
14891 #, no-wrap
14892 msgid "0x000089E1\tSIOCAIPXPRISLT\tconst char *\n"
14893 msgstr "0x000089E1\tSIOCAIPXPRISLT\tconst char *\n"
14894
14895 #. type: tbl table
14896 #: build/C/man2/ioctl_list.2:390
14897 #, no-wrap
14898 msgid "0x000089E2\tSIOCIPXCFGDATA\tstruct ipx_config_data *\n"
14899 msgstr "0x000089E2\tSIOCIPXCFGDATA\tstruct ipx_config_data *\n"
14900
14901 #. type: Plain text
14902 #: build/C/man2/ioctl_list.2:394
14903 msgid "// E<lt>include/linux/kd.hE<gt>"
14904 msgstr "// E<lt>include/linux/kd.hE<gt>"
14905
14906 #. type: tbl table
14907 #: build/C/man2/ioctl_list.2:396
14908 #, no-wrap
14909 msgid "0x00004B60\tGIO_FONT\tstruct { char [8192]; } *\n"
14910 msgstr "0x00004B60\tGIO_FONT\tstruct { char [8192]; } *\n"
14911
14912 #. type: tbl table
14913 #: build/C/man2/ioctl_list.2:397
14914 #, no-wrap
14915 msgid "0x00004B61\tPIO_FONT\tconst struct { char [8192]; } *\n"
14916 msgstr "0x00004B61\tPIO_FONT\tconst struct { char [8192]; } *\n"
14917
14918 #. type: tbl table
14919 #: build/C/man2/ioctl_list.2:401
14920 #, no-wrap
14921 msgid "0x00004B6B\tGIO_FONTX\tstruct console_font_desc *\t// MORE // I-O\n"
14922 msgstr "0x00004B6B\tGIO_FONTX\tstruct console_font_desc *\t// MORE // I-O\n"
14923
14924 #. type: tbl table
14925 #: build/C/man2/ioctl_list.2:402
14926 #, no-wrap
14927 msgid "0x00004B6C\tPIO_FONTX\tconst struct console_font_desc *\t//MORE\n"
14928 msgstr "0x00004B6C\tPIO_FONTX\tconst struct console_font_desc *\t//MORE\n"
14929
14930 #. type: tbl table
14931 #: build/C/man2/ioctl_list.2:406
14932 #, no-wrap
14933 msgid "0x00004B70\tGIO_CMAP\tstruct { char [48]; } *\n"
14934 msgstr "0x00004B70\tGIO_CMAP\tstruct { char [48]; } *\n"
14935
14936 #. type: tbl table
14937 #: build/C/man2/ioctl_list.2:407
14938 #, no-wrap
14939 msgid "0x00004B71\tPIO_CMAP\tconst struct { char [48]; }\n"
14940 msgstr "0x00004B71\tPIO_CMAP\tconst struct { char [48]; }\n"
14941
14942 #. type: tbl table
14943 #: build/C/man2/ioctl_list.2:411
14944 #, no-wrap
14945 msgid "0x00004B2F\tKIOCSOUND\tint\n"
14946 msgstr "0x00004B2F\tKIOCSOUND\tint\n"
14947
14948 #. type: tbl table
14949 #: build/C/man2/ioctl_list.2:412
14950 #, no-wrap
14951 msgid "0x00004B30\tKDMKTONE\tint\n"
14952 msgstr "0x00004B30\tKDMKTONE\tint\n"
14953
14954 #. type: tbl table
14955 #: build/C/man2/ioctl_list.2:413
14956 #, no-wrap
14957 msgid "0x00004B31\tKDGETLED\tchar *\n"
14958 msgstr "0x00004B31\tKDGETLED\tchar *\n"
14959
14960 #. type: tbl table
14961 #: build/C/man2/ioctl_list.2:414
14962 #, no-wrap
14963 msgid "0x00004B32\tKDSETLED\tint\n"
14964 msgstr "0x00004B32\tKDSETLED\tint\n"
14965
14966 #. type: tbl table
14967 #: build/C/man2/ioctl_list.2:415
14968 #, no-wrap
14969 msgid "0x00004B33\tKDGKBTYPE\tchar *\n"
14970 msgstr "0x00004B33\tKDGKBTYPE\tchar *\n"
14971
14972 #. type: tbl table
14973 #: build/C/man2/ioctl_list.2:416
14974 #, no-wrap
14975 msgid "0x00004B34\tKDADDIO\tint\t// MORE\n"
14976 msgstr "0x00004B34\tKDADDIO\tint\t// MORE\n"
14977
14978 #. type: tbl table
14979 #: build/C/man2/ioctl_list.2:417
14980 #, no-wrap
14981 msgid "0x00004B35\tKDDELIO\tint\t// MORE\n"
14982 msgstr "0x00004B35\tKDDELIO\tint\t// MORE\n"
14983
14984 #. type: tbl table
14985 #: build/C/man2/ioctl_list.2:418
14986 #, no-wrap
14987 msgid "0x00004B36\tKDENABIO\tvoid\t// MORE\n"
14988 msgstr "0x00004B36\tKDENABIO\tvoid\t// MORE\n"
14989
14990 #. type: tbl table
14991 #: build/C/man2/ioctl_list.2:419
14992 #, no-wrap
14993 msgid "0x00004B37\tKDDISABIO\tvoid\t// MORE\n"
14994 msgstr "0x00004B37\tKDDISABIO\tvoid\t// MORE\n"
14995
14996 #. type: tbl table
14997 #: build/C/man2/ioctl_list.2:420
14998 #, no-wrap
14999 msgid "0x00004B3A\tKDSETMODE\tint\n"
15000 msgstr "0x00004B3A\tKDSETMODE\tint\n"
15001
15002 #. type: tbl table
15003 #: build/C/man2/ioctl_list.2:421
15004 #, no-wrap
15005 msgid "0x00004B3B\tKDGETMODE\tint *\n"
15006 msgstr "0x00004B3B\tKDGETMODE\tint *\n"
15007
15008 #. type: tbl table
15009 #: build/C/man2/ioctl_list.2:422
15010 #, no-wrap
15011 msgid "0x00004B3C\tKDMAPDISP\tvoid\t// MORE\n"
15012 msgstr "0x00004B3C\tKDMAPDISP\tvoid\t// MORE\n"
15013
15014 #. type: tbl table
15015 #: build/C/man2/ioctl_list.2:423
15016 #, no-wrap
15017 msgid "0x00004B3D\tKDUNMAPDISP\tvoid\t// MORE\n"
15018 msgstr "0x00004B3D\tKDUNMAPDISP\tvoid\t// MORE\n"
15019
15020 #. type: tbl table
15021 #: build/C/man2/ioctl_list.2:424
15022 #, no-wrap
15023 msgid "0x00004B40\tGIO_SCRNMAP\tstruct { char [E_TABSZ]; } *\n"
15024 msgstr "0x00004B40\tGIO_SCRNMAP\tstruct { char [E_TABSZ]; } *\n"
15025
15026 #. type: tbl table
15027 #: build/C/man2/ioctl_list.2:428
15028 #, no-wrap
15029 msgid "0x00004B41\tPIO_SCRNMAP\tconst struct { char [E_TABSZ]; } *\n"
15030 msgstr "0x00004B41\tPIO_SCRNMAP\tconst struct { char [E_TABSZ]; } *\n"
15031
15032 #. type: tbl table
15033 #: build/C/man2/ioctl_list.2:429
15034 #, no-wrap
15035 msgid "0x00004B69\tGIO_UNISCRNMAP\tstruct { short [E_TABSZ]; } *\n"
15036 msgstr "0x00004B69\tGIO_UNISCRNMAP\tstruct { short [E_TABSZ]; } *\n"
15037
15038 #. type: tbl table
15039 #: build/C/man2/ioctl_list.2:430
15040 #, no-wrap
15041 msgid "0x00004B6A\tPIO_UNISCRNMAP\tconst struct { short [E_TABSZ]; } *\n"
15042 msgstr "0x00004B6A\tPIO_UNISCRNMAP\tconst struct { short [E_TABSZ]; } *\n"
15043
15044 #. type: tbl table
15045 #: build/C/man2/ioctl_list.2:434
15046 #, no-wrap
15047 msgid "0x00004B66\tGIO_UNIMAP\tstruct unimapdesc *\t// MORE // I-O\n"
15048 msgstr "0x00004B66\tGIO_UNIMAP\tstruct unimapdesc *\t// MORE // I-O\n"
15049
15050 #. type: tbl table
15051 #: build/C/man2/ioctl_list.2:435
15052 #, no-wrap
15053 msgid "0x00004B67\tPIO_UNIMAP\tconst struct unimapdesc *\t// MORE\n"
15054 msgstr "0x00004B67\tPIO_UNIMAP\tconst struct unimapdesc *\t// MORE\n"
15055
15056 #. type: tbl table
15057 #: build/C/man2/ioctl_list.2:436
15058 #, no-wrap
15059 msgid "0x00004B68\tPIO_UNIMAPCLR\tconst struct unimapinit *\n"
15060 msgstr "0x00004B68\tPIO_UNIMAPCLR\tconst struct unimapinit *\n"
15061
15062 #. type: tbl table
15063 #: build/C/man2/ioctl_list.2:437
15064 #, no-wrap
15065 msgid "0x00004B44\tKDGKBMODE\tint *\n"
15066 msgstr "0x00004B44\tKDGKBMODE\tint *\n"
15067
15068 #. type: tbl table
15069 #: build/C/man2/ioctl_list.2:438
15070 #, no-wrap
15071 msgid "0x00004B45\tKDSKBMODE\tint\n"
15072 msgstr "0x00004B45\tKDSKBMODE\tint\n"
15073
15074 #. type: tbl table
15075 #: build/C/man2/ioctl_list.2:439
15076 #, no-wrap
15077 msgid "0x00004B62\tKDGKBMETA\tint *\n"
15078 msgstr "0x00004B62\tKDGKBMETA\tint *\n"
15079
15080 #. type: tbl table
15081 #: build/C/man2/ioctl_list.2:440
15082 #, no-wrap
15083 msgid "0x00004B63\tKDSKBMETA\tint\n"
15084 msgstr "0x00004B63\tKDSKBMETA\tint\n"
15085
15086 #. type: tbl table
15087 #: build/C/man2/ioctl_list.2:441
15088 #, no-wrap
15089 msgid "0x00004B64\tKDGKBLED\tint *\n"
15090 msgstr "0x00004B64\tKDGKBLED\tint *\n"
15091
15092 #. type: tbl table
15093 #: build/C/man2/ioctl_list.2:442
15094 #, no-wrap
15095 msgid "0x00004B65\tKDSKBLED\tint\n"
15096 msgstr "0x00004B65\tKDSKBLED\tint\n"
15097
15098 #. type: tbl table
15099 #: build/C/man2/ioctl_list.2:443
15100 #, no-wrap
15101 msgid "0x00004B46\tKDGKBENT\tstruct kbentry *\t// I-O\n"
15102 msgstr "0x00004B46\tKDGKBENT\tstruct kbentry *\t// I-O\n"
15103
15104 #. type: tbl table
15105 #: build/C/man2/ioctl_list.2:444
15106 #, no-wrap
15107 msgid "0x00004B47\tKDSKBENT\tconst struct kbentry *\n"
15108 msgstr "0x00004B47\tKDSKBENT\tconst struct kbentry *\n"
15109
15110 #. type: tbl table
15111 #: build/C/man2/ioctl_list.2:445
15112 #, no-wrap
15113 msgid "0x00004B48\tKDGKBSENT\tstruct kbsentry *\t// I-O\n"
15114 msgstr "0x00004B48\tKDGKBSENT\tstruct kbsentry *\t// I-O\n"
15115
15116 #. type: tbl table
15117 #: build/C/man2/ioctl_list.2:446
15118 #, no-wrap
15119 msgid "0x00004B49\tKDSKBSENT\tconst struct kbsentry *\n"
15120 msgstr "0x00004B49\tKDSKBSENT\tconst struct kbsentry *\n"
15121
15122 #. type: tbl table
15123 #: build/C/man2/ioctl_list.2:447
15124 #, no-wrap
15125 msgid "0x00004B4A\tKDGKBDIACR\tstruct kbdiacrs *\n"
15126 msgstr "0x00004B4A\tKDGKBDIACR\tstruct kbdiacrs *\n"
15127
15128 #. type: tbl table
15129 #: build/C/man2/ioctl_list.2:448
15130 #, no-wrap
15131 msgid "0x00004B4B\tKDSKBDIACR\tconst struct kbdiacrs *\n"
15132 msgstr "0x00004B4B\tKDSKBDIACR\tconst struct kbdiacrs *\n"
15133
15134 #. type: tbl table
15135 #: build/C/man2/ioctl_list.2:449
15136 #, no-wrap
15137 msgid "0x00004B4C\tKDGETKEYCODE\tstruct kbkeycode *\t// I-O\n"
15138 msgstr "0x00004B4C\tKDGETKEYCODE\tstruct kbkeycode *\t// I-O\n"
15139
15140 #. type: tbl table
15141 #: build/C/man2/ioctl_list.2:450
15142 #, no-wrap
15143 msgid "0x00004B4D\tKDSETKEYCODE\tconst struct kbkeycode *\n"
15144 msgstr "0x00004B4D\tKDSETKEYCODE\tconst struct kbkeycode *\n"
15145
15146 #. type: tbl table
15147 #: build/C/man2/ioctl_list.2:451
15148 #, no-wrap
15149 msgid "0x00004B4E\tKDSIGACCEPT\tint\n"
15150 msgstr "0x00004B4E\tKDSIGACCEPT\tint\n"
15151
15152 #. type: Plain text
15153 #: build/C/man2/ioctl_list.2:455
15154 msgid "// E<lt>include/linux/lp.hE<gt>"
15155 msgstr "// E<lt>include/linux/lp.hE<gt>"
15156
15157 #. type: tbl table
15158 #: build/C/man2/ioctl_list.2:457
15159 #, no-wrap
15160 msgid "0x00000601\tLPCHAR\tint\n"
15161 msgstr "0x00000601\tLPCHAR\tint\n"
15162
15163 #. type: tbl table
15164 #: build/C/man2/ioctl_list.2:458
15165 #, no-wrap
15166 msgid "0x00000602\tLPTIME\tint\n"
15167 msgstr "0x00000602\tLPTIME\tint\n"
15168
15169 #. type: tbl table
15170 #: build/C/man2/ioctl_list.2:459
15171 #, no-wrap
15172 msgid "0x00000604\tLPABORT\tint\n"
15173 msgstr "0x00000604\tLPABORT\tint\n"
15174
15175 #. type: tbl table
15176 #: build/C/man2/ioctl_list.2:460
15177 #, no-wrap
15178 msgid "0x00000605\tLPSETIRQ\tint\n"
15179 msgstr "0x00000605\tLPSETIRQ\tint\n"
15180
15181 #. type: tbl table
15182 #: build/C/man2/ioctl_list.2:461
15183 #, no-wrap
15184 msgid "0x00000606\tLPGETIRQ\tint *\n"
15185 msgstr "0x00000606\tLPGETIRQ\tint *\n"
15186
15187 #. type: tbl table
15188 #: build/C/man2/ioctl_list.2:462
15189 #, no-wrap
15190 msgid "0x00000608\tLPWAIT\tint\n"
15191 msgstr "0x00000608\tLPWAIT\tint\n"
15192
15193 #. type: tbl table
15194 #: build/C/man2/ioctl_list.2:463
15195 #, no-wrap
15196 msgid "0x00000609\tLPCAREFUL\tint\n"
15197 msgstr "0x00000609\tLPCAREFUL\tint\n"
15198
15199 #. type: tbl table
15200 #: build/C/man2/ioctl_list.2:464
15201 #, no-wrap
15202 msgid "0x0000060A\tLPABORTOPEN\tint\n"
15203 msgstr "0x0000060A\tLPABORTOPEN\tint\n"
15204
15205 #. type: tbl table
15206 #: build/C/man2/ioctl_list.2:465
15207 #, no-wrap
15208 msgid "0x0000060B\tLPGETSTATUS\tint *\n"
15209 msgstr "0x0000060B\tLPGETSTATUS\tint *\n"
15210
15211 #. type: tbl table
15212 #: build/C/man2/ioctl_list.2:466
15213 #, no-wrap
15214 msgid "0x0000060C\tLPRESET\tvoid\n"
15215 msgstr "0x0000060C\tLPRESET\tvoid\n"
15216
15217 #. type: tbl table
15218 #: build/C/man2/ioctl_list.2:467
15219 #, no-wrap
15220 msgid "0x0000060D\tLPGETSTATS\tstruct lp_stats *\n"
15221 msgstr "0x0000060D\tLPGETSTATS\tstruct lp_stats *\n"
15222
15223 #. type: Plain text
15224 #: build/C/man2/ioctl_list.2:471
15225 msgid "// E<lt>include/linux/mroute.hE<gt>"
15226 msgstr "// E<lt>include/linux/mroute.hE<gt>"
15227
15228 #. type: tbl table
15229 #: build/C/man2/ioctl_list.2:473
15230 #, no-wrap
15231 msgid "0x000089E0\tSIOCGETVIFCNT\tstruct sioc_vif_req *\t// I-O\n"
15232 msgstr "0x000089E0\tSIOCGETVIFCNT\tstruct sioc_vif_req *\t// I-O\n"
15233
15234 #. type: tbl table
15235 #: build/C/man2/ioctl_list.2:474
15236 #, no-wrap
15237 msgid "0x000089E1\tSIOCGETSGCNT\tstruct sioc_sg_req *\t// I-O\n"
15238 msgstr "0x000089E1\tSIOCGETSGCNT\tstruct sioc_sg_req *\t// I-O\n"
15239
15240 #. type: Plain text
15241 #: build/C/man2/ioctl_list.2:478
15242 msgid "// E<lt>include/linux/msdos_fs.hE<gt>"
15243 msgstr "// E<lt>include/linux/msdos_fs.hE<gt>"
15244
15245 #. type: tbl table
15246 #: build/C/man2/ioctl_list.2:480
15247 #, no-wrap
15248 msgid "0x82307201\tVFAT_IOCTL_READDIR_BOTH\tstruct dirent [2]\n"
15249 msgstr "0x82307201\tVFAT_IOCTL_READDIR_BOTH\tstruct dirent [2]\n"
15250
15251 #. type: tbl table
15252 #: build/C/man2/ioctl_list.2:481
15253 #, no-wrap
15254 msgid "0x82307202\tVFAT_IOCTL_READDIR_SHORT\tstruct dirent [2]\n"
15255 msgstr "0x82307202\tVFAT_IOCTL_READDIR_SHORT\tstruct dirent [2]\n"
15256
15257 #. type: tbl table
15258 #: build/C/man2/ioctl_list.2:482
15259 #, no-wrap
15260 msgid "0x80047210\tFAT_IOCTL_GET_ATTRIBUTES\t__u32 *\n"
15261 msgstr "0x80047210\tFAT_IOCTL_GET_ATTRIBUTES\t__u32 *\n"
15262
15263 #. type: tbl table
15264 #: build/C/man2/ioctl_list.2:483
15265 #, no-wrap
15266 msgid "0x40047211\tFAT_IOCTL_SET_ATTRIBUTES\tconst __u32 *\n"
15267 msgstr "0x40047211\tFAT_IOCTL_SET_ATTRIBUTES\tconst __u32 *\n"
15268
15269 #. type: Plain text
15270 #: build/C/man2/ioctl_list.2:487
15271 msgid "// E<lt>include/linux/mtio.hE<gt>"
15272 msgstr "// E<lt>include/linux/mtio.hE<gt>"
15273
15274 #. type: tbl table
15275 #: build/C/man2/ioctl_list.2:489
15276 #, no-wrap
15277 msgid "0x40086D01\tMTIOCTOP\tconst struct mtop *\n"
15278 msgstr "0x40086D01\tMTIOCTOP\tconst struct mtop *\n"
15279
15280 #. type: tbl table
15281 #: build/C/man2/ioctl_list.2:490
15282 #, no-wrap
15283 msgid "0x801C6D02\tMTIOCGET\tstruct mtget *\n"
15284 msgstr "0x801C6D02\tMTIOCGET\tstruct mtget *\n"
15285
15286 #. type: tbl table
15287 #: build/C/man2/ioctl_list.2:491
15288 #, no-wrap
15289 msgid "0x80046D03\tMTIOCPOS\tstruct mtpos *\n"
15290 msgstr "0x80046D03\tMTIOCPOS\tstruct mtpos *\n"
15291
15292 #. type: tbl table
15293 #: build/C/man2/ioctl_list.2:492
15294 #, no-wrap
15295 msgid "0x80206D04\tMTIOCGETCONFIG\tstruct mtconfiginfo *\n"
15296 msgstr "0x80206D04\tMTIOCGETCONFIG\tstruct mtconfiginfo *\n"
15297
15298 #. type: tbl table
15299 #: build/C/man2/ioctl_list.2:493
15300 #, no-wrap
15301 msgid "0x40206D05\tMTIOCSETCONFIG\tconst struct mtconfiginfo *\n"
15302 msgstr "0x40206D05\tMTIOCSETCONFIG\tconst struct mtconfiginfo *\n"
15303
15304 #. type: Plain text
15305 #: build/C/man2/ioctl_list.2:497
15306 msgid "// E<lt>include/linux/netrom.hE<gt>"
15307 msgstr "// E<lt>include/linux/netrom.hE<gt>"
15308
15309 #. type: tbl table
15310 #: build/C/man2/ioctl_list.2:499
15311 #, no-wrap
15312 msgid "0x000089E0\tSIOCNRGETPARMS\tstruct nr_parms_struct *\t// I-O\n"
15313 msgstr "0x000089E0\tSIOCNRGETPARMS\tstruct nr_parms_struct *\t// I-O\n"
15314
15315 #. type: tbl table
15316 #: build/C/man2/ioctl_list.2:500
15317 #, no-wrap
15318 msgid "0x000089E1\tSIOCNRSETPARMS\tconst struct nr_parms_struct *\n"
15319 msgstr "0x000089E1\tSIOCNRSETPARMS\tconst struct nr_parms_struct *\n"
15320
15321 #. type: tbl table
15322 #: build/C/man2/ioctl_list.2:501
15323 #, no-wrap
15324 msgid "0x000089E2\tSIOCNRDECOBS\tvoid\n"
15325 msgstr "0x000089E2\tSIOCNRDECOBS\tvoid\n"
15326
15327 #. type: tbl table
15328 #: build/C/man2/ioctl_list.2:502
15329 #, no-wrap
15330 msgid "0x000089E3\tSIOCNRRTCTL\tconst int *\n"
15331 msgstr "0x000089E3\tSIOCNRRTCTL\tconst int *\n"
15332
15333 #. type: Plain text
15334 #: build/C/man2/ioctl_list.2:506
15335 msgid "// E<lt>include/linux/sbpcd.hE<gt>"
15336 msgstr "// E<lt>include/linux/sbpcd.hE<gt>"
15337
15338 #. type: tbl table
15339 #: build/C/man2/ioctl_list.2:508
15340 #, no-wrap
15341 msgid "0x00009000\tDDIOCSDBG\tconst int *\n"
15342 msgstr "0x00009000\tDDIOCSDBG\tconst int *\n"
15343
15344 #. type: tbl table
15345 #: build/C/man2/ioctl_list.2:509
15346 #, no-wrap
15347 msgid "0x00005382\tCDROMAUDIOBUFSIZ\tint\n"
15348 msgstr "0x00005382\tCDROMAUDIOBUFSIZ\tint\n"
15349
15350 #. type: Plain text
15351 #: build/C/man2/ioctl_list.2:513
15352 msgid "// E<lt>include/linux/scc.hE<gt>"
15353 msgstr "// E<lt>include/linux/scc.hE<gt>"
15354
15355 #. type: tbl table
15356 #: build/C/man2/ioctl_list.2:515
15357 #, no-wrap
15358 msgid "0x00005470\tTIOCSCCINI\tvoid\n"
15359 msgstr "0x00005470\tTIOCSCCINI\tvoid\n"
15360
15361 #. type: tbl table
15362 #: build/C/man2/ioctl_list.2:516
15363 #, no-wrap
15364 msgid "0x00005471\tTIOCCHANINI\tconst struct scc_modem *\n"
15365 msgstr "0x00005471\tTIOCCHANINI\tconst struct scc_modem *\n"
15366
15367 #. type: tbl table
15368 #: build/C/man2/ioctl_list.2:517
15369 #, no-wrap
15370 msgid "0x00005472\tTIOCGKISS\tstruct ioctl_command *\t// I-O\n"
15371 msgstr "0x00005472\tTIOCGKISS\tstruct ioctl_command *\t// I-O\n"
15372
15373 #. type: tbl table
15374 #: build/C/man2/ioctl_list.2:518
15375 #, no-wrap
15376 msgid "0x00005473\tTIOCSKISS\tconst struct ioctl_command *\n"
15377 msgstr "0x00005473\tTIOCSKISS\tconst struct ioctl_command *\n"
15378
15379 #. type: tbl table
15380 #: build/C/man2/ioctl_list.2:519
15381 #, no-wrap
15382 msgid "0x00005474\tTIOCSCCSTAT\tstruct scc_stat *\n"
15383 msgstr "0x00005474\tTIOCSCCSTAT\tstruct scc_stat *\n"
15384
15385 #. type: Plain text
15386 #: build/C/man2/ioctl_list.2:523
15387 msgid "// E<lt>include/linux/scsi.hE<gt>"
15388 msgstr "// E<lt>include/linux/scsi.hE<gt>"
15389
15390 #. type: tbl table
15391 #: build/C/man2/ioctl_list.2:525
15392 #, no-wrap
15393 msgid "0x00005382\tSCSI_IOCTL_GET_IDLUN\tstruct { int [2]; } *\n"
15394 msgstr "0x00005382\tSCSI_IOCTL_GET_IDLUN\tstruct { int [2]; } *\n"
15395
15396 #. type: tbl table
15397 #: build/C/man2/ioctl_list.2:526
15398 #, no-wrap
15399 msgid "0x00005383\tSCSI_IOCTL_TAGGED_ENABLE\tvoid\n"
15400 msgstr "0x00005383\tSCSI_IOCTL_TAGGED_ENABLE\tvoid\n"
15401
15402 #. type: tbl table
15403 #: build/C/man2/ioctl_list.2:527
15404 #, no-wrap
15405 msgid "0x00005384\tSCSI_IOCTL_TAGGED_DISABLE\tvoid\n"
15406 msgstr "0x00005384\tSCSI_IOCTL_TAGGED_DISABLE\tvoid\n"
15407
15408 #. type: tbl table
15409 #: build/C/man2/ioctl_list.2:531
15410 #, no-wrap
15411 msgid "0x00005385\tSCSI_IOCTL_PROBE_HOST\tconst int *\t// MORE\n"
15412 msgstr "0x00005385\tSCSI_IOCTL_PROBE_HOST\tconst int *\t// MORE\n"
15413
15414 #. type: Plain text
15415 #: build/C/man2/ioctl_list.2:535
15416 msgid "// E<lt>include/linux/smb_fs.hE<gt>"
15417 msgstr "// E<lt>include/linux/smb_fs.hE<gt>"
15418
15419 #. type: tbl table
15420 #: build/C/man2/ioctl_list.2:537
15421 #, no-wrap
15422 msgid "0x80027501\tSMB_IOC_GETMOUNTUID\tuid_t *\n"
15423 msgstr "0x80027501\tSMB_IOC_GETMOUNTUID\tuid_t *\n"
15424
15425 #. type: Plain text
15426 #: build/C/man2/ioctl_list.2:541
15427 msgid "// E<lt>include/linux/sockios.hE<gt>"
15428 msgstr "// E<lt>include/linux/sockios.hE<gt>"
15429
15430 #. type: tbl table
15431 #: build/C/man2/ioctl_list.2:543
15432 #, no-wrap
15433 msgid "0x0000890B\tSIOCADDRT\tconst struct rtentry *\t// MORE\n"
15434 msgstr "0x0000890B\tSIOCADDRT\tconst struct rtentry *\t// MORE\n"
15435
15436 #. type: tbl table
15437 #: build/C/man2/ioctl_list.2:544
15438 #, no-wrap
15439 msgid "0x0000890C\tSIOCDELRT\tconst struct rtentry *\t// MORE\n"
15440 msgstr "0x0000890C\tSIOCDELRT\tconst struct rtentry *\t// MORE\n"
15441
15442 #. type: tbl table
15443 #: build/C/man2/ioctl_list.2:545
15444 #, no-wrap
15445 msgid "0x00008910\tSIOCGIFNAME\tchar []\n"
15446 msgstr "0x00008910\tSIOCGIFNAME\tchar []\n"
15447
15448 #. type: tbl table
15449 #: build/C/man2/ioctl_list.2:546
15450 #, no-wrap
15451 msgid "0x00008911\tSIOCSIFLINK\tvoid\n"
15452 msgstr "0x00008911\tSIOCSIFLINK\tvoid\n"
15453
15454 #. type: tbl table
15455 #: build/C/man2/ioctl_list.2:547
15456 #, no-wrap
15457 msgid "0x00008912\tSIOCGIFCONF\tstruct ifconf *\t// MORE // I-O\n"
15458 msgstr "0x00008912\tSIOCGIFCONF\tstruct ifconf *\t// MORE // I-O\n"
15459
15460 #. type: tbl table
15461 #: build/C/man2/ioctl_list.2:548
15462 #, no-wrap
15463 msgid "0x00008913\tSIOCGIFFLAGS\tstruct ifreq *\t// I-O\n"
15464 msgstr "0x00008913\tSIOCGIFFLAGS\tstruct ifreq *\t// I-O\n"
15465
15466 #. type: tbl table
15467 #: build/C/man2/ioctl_list.2:549
15468 #, no-wrap
15469 msgid "0x00008914\tSIOCSIFFLAGS\tconst struct ifreq *\n"
15470 msgstr "0x00008914\tSIOCSIFFLAGS\tconst struct ifreq *\n"
15471
15472 #. type: tbl table
15473 #: build/C/man2/ioctl_list.2:550
15474 #, no-wrap
15475 msgid "0x00008915\tSIOCGIFADDR\tstruct ifreq *\t// I-O\n"
15476 msgstr "0x00008915\tSIOCGIFADDR\tstruct ifreq *\t// I-O\n"
15477
15478 #. type: tbl table
15479 #: build/C/man2/ioctl_list.2:551
15480 #, no-wrap
15481 msgid "0x00008916\tSIOCSIFADDR\tconst struct ifreq *\n"
15482 msgstr "0x00008916\tSIOCSIFADDR\tconst struct ifreq *\n"
15483
15484 #. type: tbl table
15485 #: build/C/man2/ioctl_list.2:552
15486 #, no-wrap
15487 msgid "0x00008917\tSIOCGIFDSTADDR\tstruct ifreq *\t// I-O\n"
15488 msgstr "0x00008917\tSIOCGIFDSTADDR\tstruct ifreq *\t// I-O\n"
15489
15490 #. type: tbl table
15491 #: build/C/man2/ioctl_list.2:553
15492 #, no-wrap
15493 msgid "0x00008918\tSIOCSIFDSTADDR\tconst struct ifreq *\n"
15494 msgstr "0x00008918\tSIOCSIFDSTADDR\tconst struct ifreq *\n"
15495
15496 #. type: tbl table
15497 #: build/C/man2/ioctl_list.2:554
15498 #, no-wrap
15499 msgid "0x00008919\tSIOCGIFBRDADDR\tstruct ifreq *\t// I-O\n"
15500 msgstr "0x00008919\tSIOCGIFBRDADDR\tstruct ifreq *\t// I-O\n"
15501
15502 #. type: tbl table
15503 #: build/C/man2/ioctl_list.2:555
15504 #, no-wrap
15505 msgid "0x0000891A\tSIOCSIFBRDADDR\tconst struct ifreq *\n"
15506 msgstr "0x0000891A\tSIOCSIFBRDADDR\tconst struct ifreq *\n"
15507
15508 #. type: tbl table
15509 #: build/C/man2/ioctl_list.2:556
15510 #, no-wrap
15511 msgid "0x0000891B\tSIOCGIFNETMASK\tstruct ifreq *\t// I-O\n"
15512 msgstr "0x0000891B\tSIOCGIFNETMASK\tstruct ifreq *\t// I-O\n"
15513
15514 #. type: tbl table
15515 #: build/C/man2/ioctl_list.2:557
15516 #, no-wrap
15517 msgid "0x0000891C\tSIOCSIFNETMASK\tconst struct ifreq *\n"
15518 msgstr "0x0000891C\tSIOCSIFNETMASK\tconst struct ifreq *\n"
15519
15520 #. type: tbl table
15521 #: build/C/man2/ioctl_list.2:558
15522 #, no-wrap
15523 msgid "0x0000891D\tSIOCGIFMETRIC\tstruct ifreq *\t// I-O\n"
15524 msgstr "0x0000891D\tSIOCGIFMETRIC\tstruct ifreq *\t// I-O\n"
15525
15526 #. type: tbl table
15527 #: build/C/man2/ioctl_list.2:559
15528 #, no-wrap
15529 msgid "0x0000891E\tSIOCSIFMETRIC\tconst struct ifreq *\n"
15530 msgstr "0x0000891E\tSIOCSIFMETRIC\tconst struct ifreq *\n"
15531
15532 #. type: tbl table
15533 #: build/C/man2/ioctl_list.2:560
15534 #, no-wrap
15535 msgid "0x0000891F\tSIOCGIFMEM\tstruct ifreq *\t// I-O\n"
15536 msgstr "0x0000891F\tSIOCGIFMEM\tstruct ifreq *\t// I-O\n"
15537
15538 #. type: tbl table
15539 #: build/C/man2/ioctl_list.2:561
15540 #, no-wrap
15541 msgid "0x00008920\tSIOCSIFMEM\tconst struct ifreq *\n"
15542 msgstr "0x00008920\tSIOCSIFMEM\tconst struct ifreq *\n"
15543
15544 #. type: tbl table
15545 #: build/C/man2/ioctl_list.2:562
15546 #, no-wrap
15547 msgid "0x00008921\tSIOCGIFMTU\tstruct ifreq *\t// I-O\n"
15548 msgstr "0x00008921\tSIOCGIFMTU\tstruct ifreq *\t// I-O\n"
15549
15550 #. type: tbl table
15551 #: build/C/man2/ioctl_list.2:563
15552 #, no-wrap
15553 msgid "0x00008922\tSIOCSIFMTU\tconst struct ifreq *\n"
15554 msgstr "0x00008922\tSIOCSIFMTU\tconst struct ifreq *\n"
15555
15556 #. type: tbl table
15557 #: build/C/man2/ioctl_list.2:567
15558 #, no-wrap
15559 msgid "0x00008923\tOLD_SIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15560 msgstr "0x00008923\tOLD_SIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15561
15562 #. type: tbl table
15563 #: build/C/man2/ioctl_list.2:568
15564 #, no-wrap
15565 msgid "0x00008924\tSIOCSIFHWADDR\tconst struct ifreq *\t// MORE\n"
15566 msgstr "0x00008924\tSIOCSIFHWADDR\tconst struct ifreq *\t// MORE\n"
15567
15568 #. type: tbl table
15569 #: build/C/man2/ioctl_list.2:569
15570 #, no-wrap
15571 msgid "0x00008925\tSIOCGIFENCAP\tint *\n"
15572 msgstr "0x00008925\tSIOCGIFENCAP\tint *\n"
15573
15574 #. type: tbl table
15575 #: build/C/man2/ioctl_list.2:570
15576 #, no-wrap
15577 msgid "0x00008926\tSIOCSIFENCAP\tconst int *\n"
15578 msgstr "0x00008926\tSIOCSIFENCAP\tconst int *\n"
15579
15580 #. type: tbl table
15581 #: build/C/man2/ioctl_list.2:571
15582 #, no-wrap
15583 msgid "0x00008927\tSIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15584 msgstr "0x00008927\tSIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15585
15586 #. type: tbl table
15587 #: build/C/man2/ioctl_list.2:572
15588 #, no-wrap
15589 msgid "0x00008929\tSIOCGIFSLAVE\tvoid\n"
15590 msgstr "0x00008929\tSIOCGIFSLAVE\tvoid\n"
15591
15592 #. type: tbl table
15593 #: build/C/man2/ioctl_list.2:573
15594 #, no-wrap
15595 msgid "0x00008930\tSIOCSIFSLAVE\tvoid\n"
15596 msgstr "0x00008930\tSIOCSIFSLAVE\tvoid\n"
15597
15598 #. type: tbl table
15599 #: build/C/man2/ioctl_list.2:574
15600 #, no-wrap
15601 msgid "0x00008931\tSIOCADDMULTI\tconst struct ifreq *\n"
15602 msgstr "0x00008931\tSIOCADDMULTI\tconst struct ifreq *\n"
15603
15604 #. type: tbl table
15605 #: build/C/man2/ioctl_list.2:575
15606 #, no-wrap
15607 msgid "0x00008932\tSIOCDELMULTI\tconst struct ifreq *\n"
15608 msgstr "0x00008932\tSIOCDELMULTI\tconst struct ifreq *\n"
15609
15610 #. type: tbl table
15611 #: build/C/man2/ioctl_list.2:576
15612 #, no-wrap
15613 msgid "0x00008940\tSIOCADDRTOLD\tvoid\n"
15614 msgstr "0x00008940\tSIOCADDRTOLD\tvoid\n"
15615
15616 #. type: tbl table
15617 #: build/C/man2/ioctl_list.2:577
15618 #, no-wrap
15619 msgid "0x00008941\tSIOCDELRTOLD\tvoid\n"
15620 msgstr "0x00008941\tSIOCDELRTOLD\tvoid\n"
15621
15622 #. type: tbl table
15623 #: build/C/man2/ioctl_list.2:578
15624 #, no-wrap
15625 msgid "0x00008950\tSIOCDARP\tconst struct arpreq *\n"
15626 msgstr "0x00008950\tSIOCDARP\tconst struct arpreq *\n"
15627
15628 #. type: tbl table
15629 #: build/C/man2/ioctl_list.2:579
15630 #, no-wrap
15631 msgid "0x00008951\tSIOCGARP\tstruct arpreq *\t// I-O\n"
15632 msgstr "0x00008951\tSIOCGARP\tstruct arpreq *\t// I-O\n"
15633
15634 #. type: tbl table
15635 #: build/C/man2/ioctl_list.2:580
15636 #, no-wrap
15637 msgid "0x00008952\tSIOCSARP\tconst struct arpreq *\n"
15638 msgstr "0x00008952\tSIOCSARP\tconst struct arpreq *\n"
15639
15640 #. type: tbl table
15641 #: build/C/man2/ioctl_list.2:581
15642 #, no-wrap
15643 msgid "0x00008960\tSIOCDRARP\tconst struct arpreq *\n"
15644 msgstr "0x00008960\tSIOCDRARP\tconst struct arpreq *\n"
15645
15646 #. type: tbl table
15647 #: build/C/man2/ioctl_list.2:582
15648 #, no-wrap
15649 msgid "0x00008961\tSIOCGRARP\tstruct arpreq *\t// I-O\n"
15650 msgstr "0x00008961\tSIOCGRARP\tstruct arpreq *\t// I-O\n"
15651
15652 #. type: tbl table
15653 #: build/C/man2/ioctl_list.2:583
15654 #, no-wrap
15655 msgid "0x00008962\tSIOCSRARP\tconst struct arpreq *\n"
15656 msgstr "0x00008962\tSIOCSRARP\tconst struct arpreq *\n"
15657
15658 #. type: tbl table
15659 #: build/C/man2/ioctl_list.2:584
15660 #, no-wrap
15661 msgid "0x00008970\tSIOCGIFMAP\tstruct ifreq *\t// I-O\n"
15662 msgstr "0x00008970\tSIOCGIFMAP\tstruct ifreq *\t// I-O\n"
15663
15664 #. type: tbl table
15665 #: build/C/man2/ioctl_list.2:585
15666 #, no-wrap
15667 msgid "0x00008971\tSIOCSIFMAP\tconst struct ifreq *\n"
15668 msgstr "0x00008971\tSIOCSIFMAP\tconst struct ifreq *\n"
15669
15670 #. type: Plain text
15671 #: build/C/man2/ioctl_list.2:589
15672 msgid "// E<lt>include/linux/soundcard.hE<gt>"
15673 msgstr "// E<lt>include/linux/soundcard.hE<gt>"
15674
15675 #. type: tbl table
15676 #: build/C/man2/ioctl_list.2:591
15677 #, no-wrap
15678 msgid "0x00005100\tSNDCTL_SEQ_RESET\tvoid\n"
15679 msgstr "0x00005100\tSNDCTL_SEQ_RESET\tvoid\n"
15680
15681 #. type: tbl table
15682 #: build/C/man2/ioctl_list.2:592
15683 #, no-wrap
15684 msgid "0x00005101\tSNDCTL_SEQ_SYNC\tvoid\n"
15685 msgstr "0x00005101\tSNDCTL_SEQ_SYNC\tvoid\n"
15686
15687 #. type: tbl table
15688 #: build/C/man2/ioctl_list.2:596
15689 #, no-wrap
15690 msgid "0xC08C5102\tSNDCTL_SYNTH_INFO\tstruct synth_info *\t// I-O\n"
15691 msgstr "0xC08C5102\tSNDCTL_SYNTH_INFO\tstruct synth_info *\t// I-O\n"
15692
15693 #. type: tbl table
15694 #: build/C/man2/ioctl_list.2:597
15695 #, no-wrap
15696 msgid "0xC0045103\tSNDCTL_SEQ_CTRLRATE\tint *\t// I-O\n"
15697 msgstr "0xC0045103\tSNDCTL_SEQ_CTRLRATE\tint *\t// I-O\n"
15698
15699 #. type: tbl table
15700 #: build/C/man2/ioctl_list.2:598
15701 #, no-wrap
15702 msgid "0x80045104\tSNDCTL_SEQ_GETOUTCOUNT\tint *\n"
15703 msgstr "0x80045104\tSNDCTL_SEQ_GETOUTCOUNT\tint *\n"
15704
15705 #. type: tbl table
15706 #: build/C/man2/ioctl_list.2:599
15707 #, no-wrap
15708 msgid "0x80045105\tSNDCTL_SEQ_GETINCOUNT\tint *\n"
15709 msgstr "0x80045105\tSNDCTL_SEQ_GETINCOUNT\tint *\n"
15710
15711 #. type: tbl table
15712 #: build/C/man2/ioctl_list.2:600
15713 #, no-wrap
15714 msgid "0x40045106\tSNDCTL_SEQ_PERCMODE\tvoid\n"
15715 msgstr "0x40045106\tSNDCTL_SEQ_PERCMODE\tvoid\n"
15716
15717 #. type: tbl table
15718 #: build/C/man2/ioctl_list.2:604
15719 #, no-wrap
15720 msgid "0x40285107\tSNDCTL_FM_LOAD_INSTR\tconst struct sbi_instrument *\n"
15721 msgstr "0x40285107\tSNDCTL_FM_LOAD_INSTR\tconst struct sbi_instrument *\n"
15722
15723 #. type: tbl table
15724 #: build/C/man2/ioctl_list.2:608
15725 #, no-wrap
15726 msgid "0x40045108\tSNDCTL_SEQ_TESTMIDI\tconst int *\n"
15727 msgstr "0x40045108\tSNDCTL_SEQ_TESTMIDI\tconst int *\n"
15728
15729 #. type: tbl table
15730 #: build/C/man2/ioctl_list.2:609
15731 #, no-wrap
15732 msgid "0x40045109\tSNDCTL_SEQ_RESETSAMPLES\tconst int *\n"
15733 msgstr "0x40045109\tSNDCTL_SEQ_RESETSAMPLES\tconst int *\n"
15734
15735 #. type: tbl table
15736 #: build/C/man2/ioctl_list.2:610
15737 #, no-wrap
15738 msgid "0x8004510A\tSNDCTL_SEQ_NRSYNTHS\tint *\n"
15739 msgstr "0x8004510A\tSNDCTL_SEQ_NRSYNTHS\tint *\n"
15740
15741 #. type: tbl table
15742 #: build/C/man2/ioctl_list.2:611
15743 #, no-wrap
15744 msgid "0x8004510B\tSNDCTL_SEQ_NRMIDIS\tint *\n"
15745 msgstr "0x8004510B\tSNDCTL_SEQ_NRMIDIS\tint *\n"
15746
15747 #. type: tbl table
15748 #: build/C/man2/ioctl_list.2:612
15749 #, no-wrap
15750 msgid "0xC074510C\tSNDCTL_MIDI_INFO\tstruct midi_info *\t// I-O\n"
15751 msgstr "0xC074510C\tSNDCTL_MIDI_INFO\tstruct midi_info *\t// I-O\n"
15752
15753 #. type: tbl table
15754 #: build/C/man2/ioctl_list.2:613
15755 #, no-wrap
15756 msgid "0x4004510D\tSNDCTL_SEQ_THRESHOLD\tconst int *\n"
15757 msgstr "0x4004510D\tSNDCTL_SEQ_THRESHOLD\tconst int *\n"
15758
15759 #. type: tbl table
15760 #: build/C/man2/ioctl_list.2:614
15761 #, no-wrap
15762 msgid "0xC004510E\tSNDCTL_SYNTH_MEMAVL\tint *\t// I-O\n"
15763 msgstr "0xC004510E\tSNDCTL_SYNTH_MEMAVL\tint *\t// I-O\n"
15764
15765 #. type: tbl table
15766 #: build/C/man2/ioctl_list.2:615
15767 #, no-wrap
15768 msgid "0x4004510F\tSNDCTL_FM_4OP_ENABLE\tconst int *\n"
15769 msgstr "0x4004510F\tSNDCTL_FM_4OP_ENABLE\tconst int *\n"
15770
15771 #. type: tbl table
15772 #: build/C/man2/ioctl_list.2:616
15773 #, no-wrap
15774 msgid "0xCFB85110\tSNDCTL_PMGR_ACCESS\tstruct patmgr_info *\t// I-O\n"
15775 msgstr "0xCFB85110\tSNDCTL_PMGR_ACCESS\tstruct patmgr_info *\t// I-O\n"
15776
15777 #. type: tbl table
15778 #: build/C/man2/ioctl_list.2:617
15779 #, no-wrap
15780 msgid "0x00005111\tSNDCTL_SEQ_PANIC\tvoid\n"
15781 msgstr "0x00005111\tSNDCTL_SEQ_PANIC\tvoid\n"
15782
15783 #. type: tbl table
15784 #: build/C/man2/ioctl_list.2:621
15785 #, no-wrap
15786 msgid "0x40085112\tSNDCTL_SEQ_OUTOFBAND\tconst struct seq_event_rec *\n"
15787 msgstr "0x40085112\tSNDCTL_SEQ_OUTOFBAND\tconst struct seq_event_rec *\n"
15788
15789 #. type: tbl table
15790 #: build/C/man2/ioctl_list.2:625
15791 #, no-wrap
15792 msgid "0xC0045401\tSNDCTL_TMR_TIMEBASE\tint *\t// I-O\n"
15793 msgstr "0xC0045401\tSNDCTL_TMR_TIMEBASE\tint *\t// I-O\n"
15794
15795 #. type: tbl table
15796 #: build/C/man2/ioctl_list.2:626
15797 #, no-wrap
15798 msgid "0x00005402\tSNDCTL_TMR_START\tvoid\n"
15799 msgstr "0x00005402\tSNDCTL_TMR_START\tvoid\n"
15800
15801 #. type: tbl table
15802 #: build/C/man2/ioctl_list.2:627
15803 #, no-wrap
15804 msgid "0x00005403\tSNDCTL_TMR_STOP\tvoid\n"
15805 msgstr "0x00005403\tSNDCTL_TMR_STOP\tvoid\n"
15806
15807 #. type: tbl table
15808 #: build/C/man2/ioctl_list.2:628
15809 #, no-wrap
15810 msgid "0x00005404\tSNDCTL_TMR_CONTINUE\tvoid\n"
15811 msgstr "0x00005404\tSNDCTL_TMR_CONTINUE\tvoid\n"
15812
15813 #. type: tbl table
15814 #: build/C/man2/ioctl_list.2:629
15815 #, no-wrap
15816 msgid "0xC0045405\tSNDCTL_TMR_TEMPO\tint *\t// I-O\n"
15817 msgstr "0xC0045405\tSNDCTL_TMR_TEMPO\tint *\t// I-O\n"
15818
15819 #. type: tbl table
15820 #: build/C/man2/ioctl_list.2:630
15821 #, no-wrap
15822 msgid "0xC0045406\tSNDCTL_TMR_SOURCE\tint *\t// I-O\n"
15823 msgstr "0xC0045406\tSNDCTL_TMR_SOURCE\tint *\t// I-O\n"
15824
15825 #. type: tbl table
15826 #: build/C/man2/ioctl_list.2:631
15827 #, no-wrap
15828 msgid "0x40045407\tSNDCTL_TMR_METRONOME\tconst int *\n"
15829 msgstr "0x40045407\tSNDCTL_TMR_METRONOME\tconst int *\n"
15830
15831 #. type: tbl table
15832 #: build/C/man2/ioctl_list.2:632
15833 #, no-wrap
15834 msgid "0x40045408\tSNDCTL_TMR_SELECT\tint *\t// I-O\n"
15835 msgstr "0x40045408\tSNDCTL_TMR_SELECT\tint *\t// I-O\n"
15836
15837 #. type: tbl table
15838 #: build/C/man2/ioctl_list.2:633
15839 #, no-wrap
15840 msgid "0xCFB85001\tSNDCTL_PMGR_IFACE\tstruct patmgr_info *\t// I-O\n"
15841 msgstr "0xCFB85001\tSNDCTL_PMGR_IFACE\tstruct patmgr_info *\t// I-O\n"
15842
15843 #. type: tbl table
15844 #: build/C/man2/ioctl_list.2:634
15845 #, no-wrap
15846 msgid "0xC0046D00\tSNDCTL_MIDI_PRETIME\tint *\t// I-O\n"
15847 msgstr "0xC0046D00\tSNDCTL_MIDI_PRETIME\tint *\t// I-O\n"
15848
15849 #. type: tbl table
15850 #: build/C/man2/ioctl_list.2:635
15851 #, no-wrap
15852 msgid "0xC0046D01\tSNDCTL_MIDI_MPUMODE\tconst int *\n"
15853 msgstr "0xC0046D01\tSNDCTL_MIDI_MPUMODE\tconst int *\n"
15854
15855 #. type: tbl table
15856 #: build/C/man2/ioctl_list.2:639
15857 #, no-wrap
15858 msgid "0xC0216D02\tSNDCTL_MIDI_MPUCMD\tstruct mpu_command_rec *\t// I-O\n"
15859 msgstr "0xC0216D02\tSNDCTL_MIDI_MPUCMD\tstruct mpu_command_rec *\t// I-O\n"
15860
15861 #. type: tbl table
15862 #: build/C/man2/ioctl_list.2:643
15863 #, no-wrap
15864 msgid "0x00005000\tSNDCTL_DSP_RESET\tvoid\n"
15865 msgstr "0x00005000\tSNDCTL_DSP_RESET\tvoid\n"
15866
15867 #. type: tbl table
15868 #: build/C/man2/ioctl_list.2:644
15869 #, no-wrap
15870 msgid "0x00005001\tSNDCTL_DSP_SYNC\tvoid\n"
15871 msgstr "0x00005001\tSNDCTL_DSP_SYNC\tvoid\n"
15872
15873 #. type: tbl table
15874 #: build/C/man2/ioctl_list.2:645
15875 #, no-wrap
15876 msgid "0xC0045002\tSNDCTL_DSP_SPEED\tint *\t// I-O\n"
15877 msgstr "0xC0045002\tSNDCTL_DSP_SPEED\tint *\t// I-O\n"
15878
15879 #. type: tbl table
15880 #: build/C/man2/ioctl_list.2:646
15881 #, no-wrap
15882 msgid "0xC0045003\tSNDCTL_DSP_STEREO\tint *\t// I-O\n"
15883 msgstr "0xC0045003\tSNDCTL_DSP_STEREO\tint *\t// I-O\n"
15884
15885 #. type: tbl table
15886 #: build/C/man2/ioctl_list.2:647
15887 #, no-wrap
15888 msgid "0xC0045004\tSNDCTL_DSP_GETBLKSIZE\tint *\t// I-O\n"
15889 msgstr "0xC0045004\tSNDCTL_DSP_GETBLKSIZE\tint *\t// I-O\n"
15890
15891 #. type: tbl table
15892 #: build/C/man2/ioctl_list.2:648
15893 #, no-wrap
15894 msgid "0xC0045006\tSOUND_PCM_WRITE_CHANNELS\tint *\t// I-O\n"
15895 msgstr "0xC0045006\tSOUND_PCM_WRITE_CHANNELS\tint *\t// I-O\n"
15896
15897 #. type: tbl table
15898 #: build/C/man2/ioctl_list.2:649
15899 #, no-wrap
15900 msgid "0xC0045007\tSOUND_PCM_WRITE_FILTER\tint *\t// I-O\n"
15901 msgstr "0xC0045007\tSOUND_PCM_WRITE_FILTER\tint *\t// I-O\n"
15902
15903 #. type: tbl table
15904 #: build/C/man2/ioctl_list.2:650
15905 #, no-wrap
15906 msgid "0x00005008\tSNDCTL_DSP_POST\tvoid\n"
15907 msgstr "0x00005008\tSNDCTL_DSP_POST\tvoid\n"
15908
15909 #. type: tbl table
15910 #: build/C/man2/ioctl_list.2:651
15911 #, no-wrap
15912 msgid "0xC0045009\tSNDCTL_DSP_SUBDIVIDE\tint *\t// I-O\n"
15913 msgstr "0xC0045009\tSNDCTL_DSP_SUBDIVIDE\tint *\t// I-O\n"
15914
15915 #. type: tbl table
15916 #: build/C/man2/ioctl_list.2:652
15917 #, no-wrap
15918 msgid "0xC004500A\tSNDCTL_DSP_SETFRAGMENT\tint *\t// I-O\n"
15919 msgstr "0xC004500A\tSNDCTL_DSP_SETFRAGMENT\tint *\t// I-O\n"
15920
15921 #. type: tbl table
15922 #: build/C/man2/ioctl_list.2:653
15923 #, no-wrap
15924 msgid "0x8004500B\tSNDCTL_DSP_GETFMTS\tint *\n"
15925 msgstr "0x8004500B\tSNDCTL_DSP_GETFMTS\tint *\n"
15926
15927 #. type: tbl table
15928 #: build/C/man2/ioctl_list.2:654
15929 #, no-wrap
15930 msgid "0xC0045005\tSNDCTL_DSP_SETFMT\tint *\t// I-O\n"
15931 msgstr "0xC0045005\tSNDCTL_DSP_SETFMT\tint *\t// I-O\n"
15932
15933 #. type: tbl table
15934 #: build/C/man2/ioctl_list.2:658
15935 #, no-wrap
15936 msgid "0x800C500C\tSNDCTL_DSP_GETOSPACE\tstruct audio_buf_info *\n"
15937 msgstr "0x800C500C\tSNDCTL_DSP_GETOSPACE\tstruct audio_buf_info *\n"
15938
15939 #. type: tbl table
15940 #: build/C/man2/ioctl_list.2:659
15941 #, no-wrap
15942 msgid "0x800C500D\tSNDCTL_DSP_GETISPACE\tstruct audio_buf_info *\n"
15943 msgstr "0x800C500D\tSNDCTL_DSP_GETISPACE\tstruct audio_buf_info *\n"
15944
15945 #. type: tbl table
15946 #: build/C/man2/ioctl_list.2:660
15947 #, no-wrap
15948 msgid "0x0000500E\tSNDCTL_DSP_NONBLOCK\tvoid\n"
15949 msgstr "0x0000500E\tSNDCTL_DSP_NONBLOCK\tvoid\n"
15950
15951 #. type: tbl table
15952 #: build/C/man2/ioctl_list.2:661
15953 #, no-wrap
15954 msgid "0x80045002\tSOUND_PCM_READ_RATE\tint *\n"
15955 msgstr "0x80045002\tSOUND_PCM_READ_RATE\tint *\n"
15956
15957 #. type: tbl table
15958 #: build/C/man2/ioctl_list.2:662
15959 #, no-wrap
15960 msgid "0x80045006\tSOUND_PCM_READ_CHANNELS\tint *\n"
15961 msgstr "0x80045006\tSOUND_PCM_READ_CHANNELS\tint *\n"
15962
15963 #. type: tbl table
15964 #: build/C/man2/ioctl_list.2:663
15965 #, no-wrap
15966 msgid "0x80045005\tSOUND_PCM_READ_BITS\tint *\n"
15967 msgstr "0x80045005\tSOUND_PCM_READ_BITS\tint *\n"
15968
15969 #. type: tbl table
15970 #: build/C/man2/ioctl_list.2:664
15971 #, no-wrap
15972 msgid "0x80045007\tSOUND_PCM_READ_FILTER\tint *\n"
15973 msgstr "0x80045007\tSOUND_PCM_READ_FILTER\tint *\n"
15974
15975 #. type: tbl table
15976 #: build/C/man2/ioctl_list.2:665
15977 #, no-wrap
15978 msgid "0x00004300\tSNDCTL_COPR_RESET\tvoid\n"
15979 msgstr "0x00004300\tSNDCTL_COPR_RESET\tvoid\n"
15980
15981 #. type: tbl table
15982 #: build/C/man2/ioctl_list.2:666
15983 #, no-wrap
15984 msgid "0xCFB04301\tSNDCTL_COPR_LOAD\tconst struct copr_buffer *\n"
15985 msgstr "0xCFB04301\tSNDCTL_COPR_LOAD\tconst struct copr_buffer *\n"
15986
15987 #. type: tbl table
15988 #: build/C/man2/ioctl_list.2:670
15989 #, no-wrap
15990 msgid "0xC0144302\tSNDCTL_COPR_RDATA\tstruct copr_debug_buf *\t// I-O\n"
15991 msgstr "0xC0144302\tSNDCTL_COPR_RDATA\tstruct copr_debug_buf *\t// I-O\n"
15992
15993 #. type: tbl table
15994 #: build/C/man2/ioctl_list.2:671
15995 #, no-wrap
15996 msgid "0xC0144303\tSNDCTL_COPR_RCODE\tstruct copr_debug_buf *\t// I-O\n"
15997 msgstr "0xC0144303\tSNDCTL_COPR_RCODE\tstruct copr_debug_buf *\t// I-O\n"
15998
15999 #. type: tbl table
16000 #: build/C/man2/ioctl_list.2:675
16001 #, no-wrap
16002 msgid "0x40144304\tSNDCTL_COPR_WDATA\tconst struct copr_debug_buf *\n"
16003 msgstr "0x40144304\tSNDCTL_COPR_WDATA\tconst struct copr_debug_buf *\n"
16004
16005 #. type: tbl table
16006 #: build/C/man2/ioctl_list.2:676
16007 #, no-wrap
16008 msgid "0x40144305\tSNDCTL_COPR_WCODE\tconst struct copr_debug_buf *\n"
16009 msgstr "0x40144305\tSNDCTL_COPR_WCODE\tconst struct copr_debug_buf *\n"
16010
16011 #. type: tbl table
16012 #: build/C/man2/ioctl_list.2:680
16013 #, no-wrap
16014 msgid "0xC0144306\tSNDCTL_COPR_RUN\tstruct copr_debug_buf *\t// I-O\n"
16015 msgstr "0xC0144306\tSNDCTL_COPR_RUN\tstruct copr_debug_buf *\t// I-O\n"
16016
16017 #. type: tbl table
16018 #: build/C/man2/ioctl_list.2:681
16019 #, no-wrap
16020 msgid "0xC0144307\tSNDCTL_COPR_HALT\tstruct copr_debug_buf *\t// I-O\n"
16021 msgstr "0xC0144307\tSNDCTL_COPR_HALT\tstruct copr_debug_buf *\t// I-O\n"
16022
16023 #. type: tbl table
16024 #: build/C/man2/ioctl_list.2:685
16025 #, no-wrap
16026 msgid "0x4FA44308\tSNDCTL_COPR_SENDMSG\tconst struct copr_msg *\n"
16027 msgstr "0x4FA44308\tSNDCTL_COPR_SENDMSG\tconst struct copr_msg *\n"
16028
16029 #. type: tbl table
16030 #: build/C/man2/ioctl_list.2:686
16031 #, no-wrap
16032 msgid "0x8FA44309\tSNDCTL_COPR_RCVMSG\tstruct copr_msg *\n"
16033 msgstr "0x8FA44309\tSNDCTL_COPR_RCVMSG\tstruct copr_msg *\n"
16034
16035 #. type: tbl table
16036 #: build/C/man2/ioctl_list.2:687
16037 #, no-wrap
16038 msgid "0x80044D00\tSOUND_MIXER_READ_VOLUME\tint *\n"
16039 msgstr "0x80044D00\tSOUND_MIXER_READ_VOLUME\tint *\n"
16040
16041 #. type: tbl table
16042 #: build/C/man2/ioctl_list.2:688
16043 #, no-wrap
16044 msgid "0x80044D01\tSOUND_MIXER_READ_BASS\tint *\n"
16045 msgstr "0x80044D01\tSOUND_MIXER_READ_BASS\tint *\n"
16046
16047 #. type: tbl table
16048 #: build/C/man2/ioctl_list.2:689
16049 #, no-wrap
16050 msgid "0x80044D02\tSOUND_MIXER_READ_TREBLE\tint *\n"
16051 msgstr "0x80044D02\tSOUND_MIXER_READ_TREBLE\tint *\n"
16052
16053 #. type: tbl table
16054 #: build/C/man2/ioctl_list.2:690
16055 #, no-wrap
16056 msgid "0x80044D03\tSOUND_MIXER_READ_SYNTH\tint *\n"
16057 msgstr "0x80044D03\tSOUND_MIXER_READ_SYNTH\tint *\n"
16058
16059 #. type: tbl table
16060 #: build/C/man2/ioctl_list.2:691
16061 #, no-wrap
16062 msgid "0x80044D04\tSOUND_MIXER_READ_PCM\tint *\n"
16063 msgstr "0x80044D04\tSOUND_MIXER_READ_PCM\tint *\n"
16064
16065 #. type: tbl table
16066 #: build/C/man2/ioctl_list.2:692
16067 #, no-wrap
16068 msgid "0x80044D05\tSOUND_MIXER_READ_SPEAKER\tint *\n"
16069 msgstr "0x80044D05\tSOUND_MIXER_READ_SPEAKER\tint *\n"
16070
16071 #. type: tbl table
16072 #: build/C/man2/ioctl_list.2:693
16073 #, no-wrap
16074 msgid "0x80044D06\tSOUND_MIXER_READ_LINE\tint *\n"
16075 msgstr "0x80044D06\tSOUND_MIXER_READ_LINE\tint *\n"
16076
16077 #. type: tbl table
16078 #: build/C/man2/ioctl_list.2:694
16079 #, no-wrap
16080 msgid "0x80044D07\tSOUND_MIXER_READ_MIC\tint *\n"
16081 msgstr "0x80044D07\tSOUND_MIXER_READ_MIC\tint *\n"
16082
16083 #. type: tbl table
16084 #: build/C/man2/ioctl_list.2:695
16085 #, no-wrap
16086 msgid "0x80044D08\tSOUND_MIXER_READ_CD\tint *\n"
16087 msgstr "0x80044D08\tSOUND_MIXER_READ_CD\tint *\n"
16088
16089 #. type: tbl table
16090 #: build/C/man2/ioctl_list.2:696
16091 #, no-wrap
16092 msgid "0x80044D09\tSOUND_MIXER_READ_IMIX\tint *\n"
16093 msgstr "0x80044D09\tSOUND_MIXER_READ_IMIX\tint *\n"
16094
16095 #. type: tbl table
16096 #: build/C/man2/ioctl_list.2:697
16097 #, no-wrap
16098 msgid "0x80044D0A\tSOUND_MIXER_READ_ALTPCM\tint *\n"
16099 msgstr "0x80044D0A\tSOUND_MIXER_READ_ALTPCM\tint *\n"
16100
16101 #. type: tbl table
16102 #: build/C/man2/ioctl_list.2:698
16103 #, no-wrap
16104 msgid "0x80044D0B\tSOUND_MIXER_READ_RECLEV\tint *\n"
16105 msgstr "0x80044D0B\tSOUND_MIXER_READ_RECLEV\tint *\n"
16106
16107 #. type: tbl table
16108 #: build/C/man2/ioctl_list.2:699
16109 #, no-wrap
16110 msgid "0x80044D0C\tSOUND_MIXER_READ_IGAIN\tint *\n"
16111 msgstr "0x80044D0C\tSOUND_MIXER_READ_IGAIN\tint *\n"
16112
16113 #. type: tbl table
16114 #: build/C/man2/ioctl_list.2:700
16115 #, no-wrap
16116 msgid "0x80044D0D\tSOUND_MIXER_READ_OGAIN\tint *\n"
16117 msgstr "0x80044D0D\tSOUND_MIXER_READ_OGAIN\tint *\n"
16118
16119 #. type: tbl table
16120 #: build/C/man2/ioctl_list.2:701
16121 #, no-wrap
16122 msgid "0x80044D0E\tSOUND_MIXER_READ_LINE1\tint *\n"
16123 msgstr "0x80044D0E\tSOUND_MIXER_READ_LINE1\tint *\n"
16124
16125 #. type: tbl table
16126 #: build/C/man2/ioctl_list.2:702
16127 #, no-wrap
16128 msgid "0x80044D0F\tSOUND_MIXER_READ_LINE2\tint *\n"
16129 msgstr "0x80044D0F\tSOUND_MIXER_READ_LINE2\tint *\n"
16130
16131 #. type: tbl table
16132 #: build/C/man2/ioctl_list.2:703
16133 #, no-wrap
16134 msgid "0x80044D10\tSOUND_MIXER_READ_LINE3\tint *\n"
16135 msgstr "0x80044D10\tSOUND_MIXER_READ_LINE3\tint *\n"
16136
16137 #. type: tbl table
16138 #: build/C/man2/ioctl_list.2:704
16139 #, no-wrap
16140 msgid "0x80044D1C\tSOUND_MIXER_READ_MUTE\tint *\n"
16141 msgstr "0x80044D1C\tSOUND_MIXER_READ_MUTE\tint *\n"
16142
16143 #. type: tbl table
16144 #: build/C/man2/ioctl_list.2:705
16145 #, no-wrap
16146 msgid "0x80044D1D\tSOUND_MIXER_READ_ENHANCE\tint *\n"
16147 msgstr "0x80044D1D\tSOUND_MIXER_READ_ENHANCE\tint *\n"
16148
16149 #. type: tbl table
16150 #: build/C/man2/ioctl_list.2:706
16151 #, no-wrap
16152 msgid "0x80044D1E\tSOUND_MIXER_READ_LOUD\tint *\n"
16153 msgstr "0x80044D1E\tSOUND_MIXER_READ_LOUD\tint *\n"
16154
16155 #. type: tbl table
16156 #: build/C/man2/ioctl_list.2:707
16157 #, no-wrap
16158 msgid "0x80044DFF\tSOUND_MIXER_READ_RECSRC\tint *\n"
16159 msgstr "0x80044DFF\tSOUND_MIXER_READ_RECSRC\tint *\n"
16160
16161 #. type: tbl table
16162 #: build/C/man2/ioctl_list.2:708
16163 #, no-wrap
16164 msgid "0x80044DFE\tSOUND_MIXER_READ_DEVMASK\tint *\n"
16165 msgstr "0x80044DFE\tSOUND_MIXER_READ_DEVMASK\tint *\n"
16166
16167 #. type: tbl table
16168 #: build/C/man2/ioctl_list.2:709
16169 #, no-wrap
16170 msgid "0x80044DFD\tSOUND_MIXER_READ_RECMASK\tint *\n"
16171 msgstr "0x80044DFD\tSOUND_MIXER_READ_RECMASK\tint *\n"
16172
16173 #. type: tbl table
16174 #: build/C/man2/ioctl_list.2:710
16175 #, no-wrap
16176 msgid "0x80044DFB\tSOUND_MIXER_READ_STEREODEVS\tint *\n"
16177 msgstr "0x80044DFB\tSOUND_MIXER_READ_STEREODEVS\tint *\n"
16178
16179 #. type: tbl table
16180 #: build/C/man2/ioctl_list.2:711
16181 #, no-wrap
16182 msgid "0x80044DFC\tSOUND_MIXER_READ_CAPS\tint *\n"
16183 msgstr "0x80044DFC\tSOUND_MIXER_READ_CAPS\tint *\n"
16184
16185 #. type: tbl table
16186 #: build/C/man2/ioctl_list.2:715
16187 #, no-wrap
16188 msgid "0xC0044D00\tSOUND_MIXER_WRITE_VOLUME\tint *\t// I-O\n"
16189 msgstr "0xC0044D00\tSOUND_MIXER_WRITE_VOLUME\tint *\t// I-O\n"
16190
16191 #. type: tbl table
16192 #: build/C/man2/ioctl_list.2:716
16193 #, no-wrap
16194 msgid "0xC0044D01\tSOUND_MIXER_WRITE_BASS\tint *\t// I-O\n"
16195 msgstr "0xC0044D01\tSOUND_MIXER_WRITE_BASS\tint *\t// I-O\n"
16196
16197 #. type: tbl table
16198 #: build/C/man2/ioctl_list.2:717
16199 #, no-wrap
16200 msgid "0xC0044D02\tSOUND_MIXER_WRITE_TREBLE\tint *\t// I-O\n"
16201 msgstr "0xC0044D02\tSOUND_MIXER_WRITE_TREBLE\tint *\t// I-O\n"
16202
16203 #. type: tbl table
16204 #: build/C/man2/ioctl_list.2:718
16205 #, no-wrap
16206 msgid "0xC0044D03\tSOUND_MIXER_WRITE_SYNTH\tint *\t// I-O\n"
16207 msgstr "0xC0044D03\tSOUND_MIXER_WRITE_SYNTH\tint *\t// I-O\n"
16208
16209 #. type: tbl table
16210 #: build/C/man2/ioctl_list.2:719
16211 #, no-wrap
16212 msgid "0xC0044D04\tSOUND_MIXER_WRITE_PCM\tint *\t// I-O\n"
16213 msgstr "0xC0044D04\tSOUND_MIXER_WRITE_PCM\tint *\t// I-O\n"
16214
16215 #. type: tbl table
16216 #: build/C/man2/ioctl_list.2:720
16217 #, no-wrap
16218 msgid "0xC0044D05\tSOUND_MIXER_WRITE_SPEAKER\tint *\t// I-O\n"
16219 msgstr "0xC0044D05\tSOUND_MIXER_WRITE_SPEAKER\tint *\t// I-O\n"
16220
16221 #. type: tbl table
16222 #: build/C/man2/ioctl_list.2:721
16223 #, no-wrap
16224 msgid "0xC0044D06\tSOUND_MIXER_WRITE_LINE\tint *\t// I-O\n"
16225 msgstr "0xC0044D06\tSOUND_MIXER_WRITE_LINE\tint *\t// I-O\n"
16226
16227 #. type: tbl table
16228 #: build/C/man2/ioctl_list.2:722
16229 #, no-wrap
16230 msgid "0xC0044D07\tSOUND_MIXER_WRITE_MIC\tint *\t// I-O\n"
16231 msgstr "0xC0044D07\tSOUND_MIXER_WRITE_MIC\tint *\t// I-O\n"
16232
16233 #. type: tbl table
16234 #: build/C/man2/ioctl_list.2:723
16235 #, no-wrap
16236 msgid "0xC0044D08\tSOUND_MIXER_WRITE_CD\tint *\t// I-O\n"
16237 msgstr "0xC0044D08\tSOUND_MIXER_WRITE_CD\tint *\t// I-O\n"
16238
16239 #. type: tbl table
16240 #: build/C/man2/ioctl_list.2:724
16241 #, no-wrap
16242 msgid "0xC0044D09\tSOUND_MIXER_WRITE_IMIX\tint *\t// I-O\n"
16243 msgstr "0xC0044D09\tSOUND_MIXER_WRITE_IMIX\tint *\t// I-O\n"
16244
16245 #. type: tbl table
16246 #: build/C/man2/ioctl_list.2:725
16247 #, no-wrap
16248 msgid "0xC0044D0A\tSOUND_MIXER_WRITE_ALTPCM\tint *\t// I-O\n"
16249 msgstr "0xC0044D0A\tSOUND_MIXER_WRITE_ALTPCM\tint *\t// I-O\n"
16250
16251 #. type: tbl table
16252 #: build/C/man2/ioctl_list.2:726
16253 #, no-wrap
16254 msgid "0xC0044D0B\tSOUND_MIXER_WRITE_RECLEV\tint *\t// I-O\n"
16255 msgstr "0xC0044D0B\tSOUND_MIXER_WRITE_RECLEV\tint *\t// I-O\n"
16256
16257 #. type: tbl table
16258 #: build/C/man2/ioctl_list.2:727
16259 #, no-wrap
16260 msgid "0xC0044D0C\tSOUND_MIXER_WRITE_IGAIN\tint *\t// I-O\n"
16261 msgstr "0xC0044D0C\tSOUND_MIXER_WRITE_IGAIN\tint *\t// I-O\n"
16262
16263 #. type: tbl table
16264 #: build/C/man2/ioctl_list.2:728
16265 #, no-wrap
16266 msgid "0xC0044D0D\tSOUND_MIXER_WRITE_OGAIN\tint *\t// I-O\n"
16267 msgstr "0xC0044D0D\tSOUND_MIXER_WRITE_OGAIN\tint *\t// I-O\n"
16268
16269 #. type: tbl table
16270 #: build/C/man2/ioctl_list.2:729
16271 #, no-wrap
16272 msgid "0xC0044D0E\tSOUND_MIXER_WRITE_LINE1\tint *\t// I-O\n"
16273 msgstr "0xC0044D0E\tSOUND_MIXER_WRITE_LINE1\tint *\t// I-O\n"
16274
16275 #. type: tbl table
16276 #: build/C/man2/ioctl_list.2:730
16277 #, no-wrap
16278 msgid "0xC0044D0F\tSOUND_MIXER_WRITE_LINE2\tint *\t// I-O\n"
16279 msgstr "0xC0044D0F\tSOUND_MIXER_WRITE_LINE2\tint *\t// I-O\n"
16280
16281 #. type: tbl table
16282 #: build/C/man2/ioctl_list.2:731
16283 #, no-wrap
16284 msgid "0xC0044D10\tSOUND_MIXER_WRITE_LINE3\tint *\t// I-O\n"
16285 msgstr "0xC0044D10\tSOUND_MIXER_WRITE_LINE3\tint *\t// I-O\n"
16286
16287 #. type: tbl table
16288 #: build/C/man2/ioctl_list.2:732
16289 #, no-wrap
16290 msgid "0xC0044D1C\tSOUND_MIXER_WRITE_MUTE\tint *\t// I-O\n"
16291 msgstr "0xC0044D1C\tSOUND_MIXER_WRITE_MUTE\tint *\t// I-O\n"
16292
16293 #. type: tbl table
16294 #: build/C/man2/ioctl_list.2:733
16295 #, no-wrap
16296 msgid "0xC0044D1D\tSOUND_MIXER_WRITE_ENHANCE\tint *\t// I-O\n"
16297 msgstr "0xC0044D1D\tSOUND_MIXER_WRITE_ENHANCE\tint *\t// I-O\n"
16298
16299 #. type: tbl table
16300 #: build/C/man2/ioctl_list.2:734
16301 #, no-wrap
16302 msgid "0xC0044D1E\tSOUND_MIXER_WRITE_LOUD\tint *\t// I-O\n"
16303 msgstr "0xC0044D1E\tSOUND_MIXER_WRITE_LOUD\tint *\t// I-O\n"
16304
16305 #. type: tbl table
16306 #: build/C/man2/ioctl_list.2:735
16307 #, no-wrap
16308 msgid "0xC0044DFF\tSOUND_MIXER_WRITE_RECSRC\tint *\t// I-O\n"
16309 msgstr "0xC0044DFF\tSOUND_MIXER_WRITE_RECSRC\tint *\t// I-O\n"
16310
16311 #. type: Plain text
16312 #: build/C/man2/ioctl_list.2:739
16313 msgid "// E<lt>include/linux/umsdos_fs.hE<gt>"
16314 msgstr "// E<lt>include/linux/umsdos_fs.hE<gt>"
16315
16316 #. type: tbl table
16317 #: build/C/man2/ioctl_list.2:741
16318 #, no-wrap
16319 msgid "0x000004D2\tUMSDOS_READDIR_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16320 msgstr "0x000004D2\tUMSDOS_READDIR_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16321
16322 #. type: tbl table
16323 #: build/C/man2/ioctl_list.2:742
16324 #, no-wrap
16325 msgid "0x000004D3\tUMSDOS_UNLINK_DOS\tconst struct umsdos_ioctl *\n"
16326 msgstr "0x000004D3\tUMSDOS_UNLINK_DOS\tconst struct umsdos_ioctl *\n"
16327
16328 #. type: tbl table
16329 #: build/C/man2/ioctl_list.2:743
16330 #, no-wrap
16331 msgid "0x000004D4\tUMSDOS_RMDIR_DOS\tconst struct umsdos_ioctl *\n"
16332 msgstr "0x000004D4\tUMSDOS_RMDIR_DOS\tconst struct umsdos_ioctl *\n"
16333
16334 #. type: tbl table
16335 #: build/C/man2/ioctl_list.2:744
16336 #, no-wrap
16337 msgid "0x000004D5\tUMSDOS_STAT_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16338 msgstr "0x000004D5\tUMSDOS_STAT_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16339
16340 #. type: tbl table
16341 #: build/C/man2/ioctl_list.2:745
16342 #, no-wrap
16343 msgid "0x000004D6\tUMSDOS_CREAT_EMD\tconst struct umsdos_ioctl *\n"
16344 msgstr "0x000004D6\tUMSDOS_CREAT_EMD\tconst struct umsdos_ioctl *\n"
16345
16346 #. type: tbl table
16347 #: build/C/man2/ioctl_list.2:746
16348 #, no-wrap
16349 msgid "0x000004D7\tUMSDOS_UNLINK_EMD\tconst struct umsdos_ioctl *\n"
16350 msgstr "0x000004D7\tUMSDOS_UNLINK_EMD\tconst struct umsdos_ioctl *\n"
16351
16352 #. type: tbl table
16353 #: build/C/man2/ioctl_list.2:747
16354 #, no-wrap
16355 msgid "0x000004D8\tUMSDOS_READDIR_EMD\tstruct umsdos_ioctl *\t// I-O\n"
16356 msgstr "0x000004D8\tUMSDOS_READDIR_EMD\tstruct umsdos_ioctl *\t// I-O\n"
16357
16358 #. type: tbl table
16359 #: build/C/man2/ioctl_list.2:748
16360 #, no-wrap
16361 msgid "0x000004D9\tUMSDOS_GETVERSION\tstruct umsdos_ioctl *\n"
16362 msgstr "0x000004D9\tUMSDOS_GETVERSION\tstruct umsdos_ioctl *\n"
16363
16364 #. type: tbl table
16365 #: build/C/man2/ioctl_list.2:749
16366 #, no-wrap
16367 msgid "0x000004DA\tUMSDOS_INIT_EMD\tvoid\n"
16368 msgstr "0x000004DA\tUMSDOS_INIT_EMD\tvoid\n"
16369
16370 #. type: tbl table
16371 #: build/C/man2/ioctl_list.2:750
16372 #, no-wrap
16373 msgid "0x000004DB\tUMSDOS_DOS_SETUP\tconst struct umsdos_ioctl *\n"
16374 msgstr "0x000004DB\tUMSDOS_DOS_SETUP\tconst struct umsdos_ioctl *\n"
16375
16376 #. type: tbl table
16377 #: build/C/man2/ioctl_list.2:751
16378 #, no-wrap
16379 msgid "0x000004DC\tUMSDOS_RENAME_DOS\tconst struct umsdos_ioctl *\n"
16380 msgstr "0x000004DC\tUMSDOS_RENAME_DOS\tconst struct umsdos_ioctl *\n"
16381
16382 #. type: Plain text
16383 #: build/C/man2/ioctl_list.2:755
16384 msgid "// E<lt>include/linux/vt.hE<gt>"
16385 msgstr "// E<lt>include/linux/vt.hE<gt>"
16386
16387 #. type: tbl table
16388 #: build/C/man2/ioctl_list.2:757
16389 #, no-wrap
16390 msgid "0x00005600\tVT_OPENQRY\tint *\n"
16391 msgstr "0x00005600\tVT_OPENQRY\tint *\n"
16392
16393 #. type: tbl table
16394 #: build/C/man2/ioctl_list.2:758
16395 #, no-wrap
16396 msgid "0x00005601\tVT_GETMODE\tstruct vt_mode *\n"
16397 msgstr "0x00005601\tVT_GETMODE\tstruct vt_mode *\n"
16398
16399 #. type: tbl table
16400 #: build/C/man2/ioctl_list.2:759
16401 #, no-wrap
16402 msgid "0x00005602\tVT_SETMODE\tconst struct vt_mode *\n"
16403 msgstr "0x00005602\tVT_SETMODE\tconst struct vt_mode *\n"
16404
16405 #. type: tbl table
16406 #: build/C/man2/ioctl_list.2:760
16407 #, no-wrap
16408 msgid "0x00005603\tVT_GETSTATE\tstruct vt_stat *\n"
16409 msgstr "0x00005603\tVT_GETSTATE\tstruct vt_stat *\n"
16410
16411 #. type: tbl table
16412 #: build/C/man2/ioctl_list.2:761
16413 #, no-wrap
16414 msgid "0x00005604\tVT_SENDSIG\tvoid\n"
16415 msgstr "0x00005604\tVT_SENDSIG\tvoid\n"
16416
16417 #. type: tbl table
16418 #: build/C/man2/ioctl_list.2:762
16419 #, no-wrap
16420 msgid "0x00005605\tVT_RELDISP\tint\n"
16421 msgstr "0x00005605\tVT_RELDISP\tint\n"
16422
16423 #. type: tbl table
16424 #: build/C/man2/ioctl_list.2:763
16425 #, no-wrap
16426 msgid "0x00005606\tVT_ACTIVATE\tint\n"
16427 msgstr "0x00005606\tVT_ACTIVATE\tint\n"
16428
16429 #. type: tbl table
16430 #: build/C/man2/ioctl_list.2:764
16431 #, no-wrap
16432 msgid "0x00005607\tVT_WAITACTIVE\tint\n"
16433 msgstr "0x00005607\tVT_WAITACTIVE\tint\n"
16434
16435 #. type: tbl table
16436 #: build/C/man2/ioctl_list.2:765
16437 #, no-wrap
16438 msgid "0x00005608\tVT_DISALLOCATE\tint\n"
16439 msgstr "0x00005608\tVT_DISALLOCATE\tint\n"
16440
16441 #. type: tbl table
16442 #: build/C/man2/ioctl_list.2:766
16443 #, no-wrap
16444 msgid "0x00005609\tVT_RESIZE\tconst struct vt_sizes *\n"
16445 msgstr "0x00005609\tVT_RESIZE\tconst struct vt_sizes *\n"
16446
16447 #. type: tbl table
16448 #: build/C/man2/ioctl_list.2:767
16449 #, no-wrap
16450 msgid "0x0000560A\tVT_RESIZEX\tconst struct vt_consize *\n"
16451 msgstr "0x0000560A\tVT_RESIZEX\tconst struct vt_consize *\n"
16452
16453 #. type: Plain text
16454 #: build/C/man2/ioctl_list.2:774
16455 msgid ""
16456 "// More arguments.  Some ioctl's take a pointer to a structure which "
16457 "contains additional pointers.  These are documented here in alphabetical "
16458 "order."
16459 msgstr ""
16460 "// More arguments.  いくつかの ioctl は追加のポインタを含む構造体へのポインタ"
16461 "を使用します。 ここでこれらをアルファベット順に説明します。"
16462
16463 #. type: Plain text
16464 #: build/C/man2/ioctl_list.2:782
16465 msgid ""
16466 "B<CDROMREADAUDIO> takes an input pointer I<const struct cdrom_read_audio\\ "
16467 "*>.  The I<buf> field points to an output buffer of length I<nframes\\ * "
16468 "CD_FRAMESIZE_RAW>."
16469 msgstr ""
16470 "B<CDROMREADAUDIO> は入力ポインタ I<const struct cdrom_read_audio\\ *> を使用"
16471 "します。 I<buf> フィールドは大きさ I<nframes\\ * CD_FRAMESIZE_RAW> の出力バッ"
16472 "ファへのポインタです。"
16473
16474 #. type: Plain text
16475 #: build/C/man2/ioctl_list.2:798
16476 msgid ""
16477 "B<CDROMREADCOOKED>, B<CDROMREADMODE1>, B<CDROMREADMODE2>, and "
16478 "B<CDROMREADRAW> take an input pointer I<const struct cdrom_msf\\ *>.  They "
16479 "use the same pointer as an output pointer to I<char []>.  The length varies "
16480 "by request.  For B<CDROMREADMODE1>, most drivers use CD_FRAMESIZE, but the "
16481 "Optics Storage driver uses OPT_BLOCKSIZE instead (both have the numerical "
16482 "value 2048)."
16483 msgstr ""
16484 "B<CDROMREADCOOKED>, B<CDROMREADMODE1>, B<CDROMREADMODE2>, B<CDROMREADRAW> は"
16485 "入力ポインタ I<const struct cdrom_msf\\ *> を使用します。これらは同じポインタ"
16486 "を I<char []> への出力ポインタとして使用します。 長さは要求によって変化しま"
16487 "す。 B<CDROMREADMODE1> には、多くのデバイスが CD_FRAMESIZE を使用しますが、光"
16488 "学記憶装置 (光ディスク) のドライバは OPT_BLOCKSIZE を使用します (どちらも同じ"
16489 "値で 2048 です)。"
16490
16491 #. type: Plain text
16492 #: build/C/man2/ioctl_list.2:804
16493 #, no-wrap
16494 msgid ""
16495 "    CDROMREADCOOKED    char [CD_FRAMESIZE]\n"
16496 "    CDROMREADMODE1     char [CD_FRAMESIZE or OPT_BLOCKSIZE]\n"
16497 "    CDROMREADMODE2     char [CD_FRAMESIZE_RAW0]\n"
16498 "    CDROMREADRAW       char [CD_FRAMESIZE_RAW]\n"
16499 msgstr ""
16500 "    CDROMREADCOOKED    char [CD_FRAMESIZE]\n"
16501 "    CDROMREADMODE1     char [CD_FRAMESIZE or OPT_BLOCKSIZE]\n"
16502 "    CDROMREADMODE2     char [CD_FRAMESIZE_RAW0]\n"
16503 "    CDROMREADRAW       char [CD_FRAMESIZE_RAW]\n"
16504
16505 #. type: Plain text
16506 #: build/C/man2/ioctl_list.2:818
16507 msgid ""
16508 "B<EQL_ENSLAVE>, B<EQL_EMANCIPATE>, B<EQL_GETSLAVECFG>, B<EQL_SETSLAVECFG>, "
16509 "B<EQL_GETMASTERCFG>, and B<EQL_SETMASTERCFG> take a I<struct ifreq\\ *>.  "
16510 "The I<ifr_data> field is a pointer to another structure as follows:"
16511 msgstr ""
16512 "B<EQL_ENSLAVE>, B<EQL_EMANCIPATE>, B<EQL_GETSLAVECFG>, B<EQL_SETSLAVECFG>, "
16513 "B<EQL_GETMASTERCFG>, B<EQL_SETMASTERCFG> は I<struct ifreq\\ *> を使用しま"
16514 "す。 I<ifr_data> フィールドは以下に示す別の構造体へのポインタです:"
16515
16516 #. type: Plain text
16517 #: build/C/man2/ioctl_list.2:826
16518 #, no-wrap
16519 msgid ""
16520 "    EQL_ENSLAVE         const struct slaving_request *\n"
16521 "    EQL_EMANCIPATE      const struct slaving_request *\n"
16522 "    EQL_GETSLAVECFG     struct slave_config *           // I-O\n"
16523 "    EQL_SETSLAVECFG     const struct slave_config *\n"
16524 "    EQL_GETMASTERCFG    struct master_config *\n"
16525 "    EQL_SETMASTERCFG    const struct master_config *\n"
16526 msgstr ""
16527 "    EQL_ENSLAVE         const struct slaving_request *\n"
16528 "    EQL_EMANCIPATE      const struct slaving_request *\n"
16529 "    EQL_GETSLAVECFG     struct slave_config *           // I-O\n"
16530 "    EQL_SETSLAVECFG     const struct slave_config *\n"
16531 "    EQL_GETMASTERCFG    struct master_config *\n"
16532 "    EQL_SETMASTERCFG    const struct master_config *\n"
16533
16534 #. type: Plain text
16535 #: build/C/man2/ioctl_list.2:843
16536 msgid ""
16537 "B<FDRAWCMD> takes a I<struct floppy raw_cmd\\ *>.  If I<flags & "
16538 "FD_RAW_WRITE> is nonzero, then I<data> points to an input buffer of length "
16539 "I<length>.  If I<flags & FD_RAW_READ> is nonzero, then I<data> points to an "
16540 "output buffer of length I<length>."
16541 msgstr ""
16542 "B<FDRAWCMD> は I<struct floppy raw_cmd\\ *> を使用します。 I<flags & "
16543 "FD_RAW_WRITE> がゼロ以外の場合、 I<data> は大きさ I<length> の入力バッファへ"
16544 "のポインタになります。 I<flags & FD_RAW_READ> がゼロ以外の場合、 I<data> は大"
16545 "きさ I<length> の出力バッファへのポインタになります。"
16546
16547 #. type: Plain text
16548 #: build/C/man2/ioctl_list.2:859
16549 msgid ""
16550 "B<GIO_FONTX> and B<PIO_FONTX> take a I<struct console_font_desc\\ *> or a "
16551 "I<const struct console_font_desc\\ *>, respectively.  I<chardata> points to "
16552 "a buffer of I<char [charcount]>.  This is an output buffer for B<GIO_FONTX> "
16553 "and an input buffer for B<PIO_FONTX>."
16554 msgstr ""
16555 "B<GIO_FONTX>, B<PIO_FONTX> はそれぞれ I<struct console_font_desc\\ *> と "
16556 "I<const struct console_font_desc\\ *> を使用します。 I<chardata> は I<char "
16557 "[charcount]> バッファへのポインタです。 これは B<GIO_FONTX> の出力バッファと "
16558 "B<PIO_FONTX> の入力バッファです。"
16559
16560 #. type: Plain text
16561 #: build/C/man2/ioctl_list.2:875
16562 msgid ""
16563 "B<GIO_UNIMAP> and B<PIO_UNIMAP> take a I<struct unimapdesc\\ *> or a I<const "
16564 "struct unimapdesc\\ *>, respectively.  I<entries> points to a buffer of "
16565 "I<struct unipair [entry_ct]>.  This is an output buffer for B<GIO_UNIMAP> "
16566 "and an input buffer for B<PIO_UNIMAP>."
16567 msgstr ""
16568 "B<GIO_UNIMAP>, B<PIO_UNIMAP> はそれぞれ I<struct unimapdesc\\ *> と I<const "
16569 "struct unimapdesc\\ *> を使用します。 I<entries> は I<struct unipair "
16570 "[entry_ct]> バッファへのポインタです。 これは B<GIO_UNIMAP> の出力バッファと "
16571 "B<PIO_UNIMAP> の入力バッファです。"
16572
16573 #. type: Plain text
16574 #: build/C/man2/ioctl_list.2:879
16575 msgid ""
16576 "KDADDIO, KDDELIO, KDDISABIO, and KDENABIO enable or disable access to I/O "
16577 "ports.  They are essentially alternate interfaces to 'ioperm'."
16578 msgstr ""
16579 "KDADDIO, KDDELIO, KDDISABIO, KDENABIO は I/O ポートへのアクセスを 可能/不可能"
16580 "にします。これらは本質的に、'ioperm' への別の インターフェースです。"
16581
16582 #. type: Plain text
16583 #: build/C/man2/ioctl_list.2:885
16584 msgid ""
16585 "B<KDMAPDISP> and B<KDUNMAPDISP> enable or disable memory mappings or I/O "
16586 "port access.  They are not implemented in the kernel."
16587 msgstr ""
16588 "B<KDMAPDISP>, B<KDUNMAPDISP> はメモリマッピングや I/O ポートへのアクセスを可"
16589 "能/不可能にします。 これらはカーネルに実装されていません。"
16590
16591 #. type: Plain text
16592 #: build/C/man2/ioctl_list.2:893
16593 msgid ""
16594 "B<SCSI_IOCTL_PROBE_HOST> takes an input pointer I<const int\\ *>, which is a "
16595 "length.  It uses the same pointer as an output pointer to a I<char []> "
16596 "buffer of this length."
16597 msgstr ""
16598 "B<SCSI_IOCTL_PROBE_HOST> は入力ポインタ I<const int\\ *> を大きさとして使用し"
16599 "ます。これは同じ大きさの I<char []> バッファ への出力ポインタとしても使用しま"
16600 "す。"
16601
16602 #. type: Plain text
16603 #: build/C/man2/ioctl_list.2:899
16604 msgid ""
16605 "B<SIOCADDRT> and B<SIOCDELRT> take an input pointer whose type depends on "
16606 "the protocol:"
16607 msgstr ""
16608 "B<SIOCADDRT>, B<SIOCDELRT> は型が以下のプロトコルに依存する入力ポインタを使用"
16609 "します:"
16610
16611 #. type: Plain text
16612 #: build/C/man2/ioctl_list.2:904
16613 #, no-wrap
16614 msgid ""
16615 "    Most protocols      const struct rtentry *\n"
16616 "    AX.25               const struct ax25_route *\n"
16617 "    NET/ROM             const struct nr_route_struct *\n"
16618 msgstr ""
16619 "    Most protocols      const struct rtentry *\n"
16620 "    AX.25               const struct ax25_route *\n"
16621 "    NET/ROM             const struct nr_route_struct *\n"
16622
16623 #. type: Plain text
16624 #: build/C/man2/ioctl_list.2:915
16625 msgid ""
16626 "B<SIOCGIFCONF> takes a I<struct ifconf\\ *>.  The I<ifc_buf> field points to "
16627 "a buffer of length I<ifc_len> bytes, into which the kernel writes a list of "
16628 "type I<struct ifreq []>."
16629 msgstr ""
16630 "B<SIOCGIFCONF> は I<struct ifconf\\ *> を使用します。この I<ifc_buf> フィール"
16631 "ドは長さ I<ifc_len> バイトのバッファへのポインタです。 これにカーネルが "
16632 "I<struct ifreq []> 型のリストへ書き込みます。"
16633
16634 #. type: Plain text
16635 #: build/C/man2/ioctl_list.2:918
16636 msgid ""
16637 "B<SIOCSIFHWADDR> takes an input pointer whose type depends on the protocol:"
16638 msgstr ""
16639 "B<SIOCSIFHWADDR> は型が以下のプロトコルに依存する入力ポインタを使用します:"
16640
16641 #. type: Plain text
16642 #: build/C/man2/ioctl_list.2:922
16643 #, no-wrap
16644 msgid ""
16645 "    Most protocols      const struct ifreq *\n"
16646 "    AX.25               const char [AX25_ADDR_LEN]\n"
16647 msgstr ""
16648 "    Most protocols      const struct ifreq *\n"
16649 "    AX.25               const char [AX25_ADDR_LEN]\n"
16650
16651 #. type: Plain text
16652 #: build/C/man2/ioctl_list.2:937
16653 msgid ""
16654 "B<TIOCLINUX> takes a I<const char\\ *>.  It uses this to distinguish several "
16655 "independent subcases.  In the table below, I<N + foo> means I<foo> after an "
16656 "N-byte pad.  I<struct selection> is implicitly defined in I<drivers/char/"
16657 "selection.c>"
16658 msgstr ""
16659 "B<TIOCLINUX> は I<const char\\ *> を使用します。このポインタをいくつかの 独立"
16660 "したサブクラスを識別する為に使用します。以下のテーブルの中で、 I<N + foo> は "
16661 "N バイトの詰めものの後にある I<foo> を意味します。 I<struct selection> は暗黙"
16662 "的に I<drivers/char/selection.c> の中で定義されています。"
16663
16664 #. type: Plain text
16665 #: build/C/man2/ioctl_list.2:946
16666 #, no-wrap
16667 msgid ""
16668 "    TIOCLINUX-2         1 + const struct selection *\n"
16669 "    TIOCLINUX-3         void\n"
16670 "    TIOCLINUX-4         void\n"
16671 "    TIOCLINUX-5         4 + const struct { long [8]; } *\n"
16672 "    TIOCLINUX-6         char *\n"
16673 "    TIOCLINUX-7         char *\n"
16674 "    TIOCLINUX-10        1 + const char *\n"
16675 msgstr ""
16676 "    TIOCLINUX-2         1 + const struct selection *\n"
16677 "    TIOCLINUX-3         void\n"
16678 "    TIOCLINUX-4         void\n"
16679 "    TIOCLINUX-5         4 + const struct { long [8]; } *\n"
16680 "    TIOCLINUX-6         char *\n"
16681 "    TIOCLINUX-7         char *\n"
16682 "    TIOCLINUX-10        1 + const char *\n"
16683
16684 #. type: Plain text
16685 #: build/C/man2/ioctl_list.2:949
16686 msgid "// Duplicate ioctls"
16687 msgstr "// Duplicate ioctls"
16688
16689 #. type: Plain text
16690 #: build/C/man2/ioctl_list.2:954
16691 msgid ""
16692 "This list does not include ioctls in the range B<SIOCDEVPRIVATE> and "
16693 "B<SIOCPROTOPRIVATE>."
16694 msgstr ""
16695 "このリストは B<SIOCDEVPRIVATE> から B<SIOCPROTOPRIVATE> の範囲の ioctl を含ん"
16696 "でいません。"
16697
16698 #. type: tbl table
16699 #: build/C/man2/ioctl_list.2:956
16700 #, no-wrap
16701 msgid "0x00000001\tFDSETPRM\tFIBMAP\n"
16702 msgstr "0x00000001\tFDSETPRM\tFIBMAP\n"
16703
16704 #. type: tbl table
16705 #: build/C/man2/ioctl_list.2:957
16706 #, no-wrap
16707 msgid "0x00000002\tFDDEFPRM\tFIGETBSZ\n"
16708 msgstr "0x00000002\tFDDEFPRM\tFIGETBSZ\n"
16709
16710 #. type: tbl table
16711 #: build/C/man2/ioctl_list.2:958
16712 #, no-wrap
16713 msgid "0x00005382\tCDROMAUDIOBUFSIZ\tSCSI_IOCTL_GET_IDLUN\n"
16714 msgstr "0x00005382\tCDROMAUDIOBUFSIZ\tSCSI_IOCTL_GET_IDLUN\n"
16715
16716 #. type: tbl table
16717 #: build/C/man2/ioctl_list.2:959
16718 #, no-wrap
16719 msgid "0x00005402\tSNDCTL_TMR_START\tTCSETS\n"
16720 msgstr "0x00005402\tSNDCTL_TMR_START\tTCSETS\n"
16721
16722 #. type: tbl table
16723 #: build/C/man2/ioctl_list.2:960
16724 #, no-wrap
16725 msgid "0x00005403\tSNDCTL_TMR_STOP\tTCSETSW\n"
16726 msgstr "0x00005403\tSNDCTL_TMR_STOP\tTCSETSW\n"
16727
16728 #. type: tbl table
16729 #: build/C/man2/ioctl_list.2:961
16730 #, no-wrap
16731 msgid "0x00005404\tSNDCTL_TMR_CONTINUE\tTCSETSF\n"
16732 msgstr "0x00005404\tSNDCTL_TMR_CONTINUE\tTCSETSF\n"
16733
16734 #. type: Plain text
16735 #: build/C/man2/ioctl_list.2:965
16736 msgid "B<ioctl>(2)"
16737 msgstr "B<ioctl>(2)"
16738
16739 #. type: TH
16740 #: build/C/man2/ioperm.2:34
16741 #, no-wrap
16742 msgid "IOPERM"
16743 msgstr "IOPERM"
16744
16745 #. type: Plain text
16746 #: build/C/man2/ioperm.2:37
16747 msgid "ioperm - set port input/output permissions"
16748 msgstr "ioperm - ポートの入出力許可を設定する"
16749
16750 #. type: Plain text
16751 #: build/C/man2/ioperm.2:40
16752 msgid "B<#include E<lt>sys/io.hE<gt>> /* for glibc */"
16753 msgstr "B<#include E<lt>sys/io.hE<gt>> /* for glibc */"
16754
16755 #. type: Plain text
16756 #: build/C/man2/ioperm.2:42
16757 msgid ""
16758 "B<int ioperm(unsigned long >I<from>B<, unsigned long >I<num>B<, int "
16759 ">I<turn_on>B<);>"
16760 msgstr ""
16761 "B<int ioperm(unsigned long >I<from>B<, unsigned long >I<num>B<, int "
16762 ">I<turn_on>B<);>"
16763
16764 #. type: Plain text
16765 #: build/C/man2/ioperm.2:56
16766 msgid ""
16767 "B<ioperm>()  sets the port access permission bits for the calling thread for "
16768 "I<num> bits starting from port address I<from>.  If I<turn_on> is nonzero, "
16769 "then permission for the specified bits is enabled; otherwise it is "
16770 "disabled.  If I<turn_on> is nonzero, the calling thread must be privileged "
16771 "(B<CAP_SYS_RAWIO>)."
16772 msgstr ""
16773 "B<ioperm>()  は、引き数 I<from> の I/O ポートアドレスから I<num> ビット分の領"
16774 "域に対する、呼び出し元スレッドのアクセス許可ビットを設定する。 I<turn_on> が "
16775 "0 以外の場合、指定されたビットに対応する許可が有効になる。 I<turn_on> が 0 以"
16776 "外の場合、呼び出し元プロセスは特権 (B<CAP_SYS_RAWIO>)  を持っていなければなら"
16777 "ない。"
16778
16779 #. type: Plain text
16780 #: build/C/man2/ioperm.2:65
16781 msgid ""
16782 "Before Linux 2.6.8, only the first 0x3ff I/O ports could be specified in "
16783 "this manner.  For more ports, the B<iopl>(2)  system call had to be used "
16784 "(with a I<level> argument of 3).  Since Linux 2.6.8, 65,536 I/O ports can be "
16785 "specified."
16786 msgstr ""
16787 "Linux 2.6.8 より前のバージョンでは、この方法で設定できるのは 0x3ff 番地まで"
16788 "の I/Oポートに限られていた。これよりも大きなアドレスのポートに対しては "
16789 "B<iopl>(2) 関数を使わなければならなかった。Linux 2.6.8 以降では、65,536 個の "
16790 "I/O ポートを指定できる。"
16791
16792 #. type: Plain text
16793 #: build/C/man2/ioperm.2:75
16794 msgid ""
16795 "Permissions are not inherited by the child created by B<fork>(2); following "
16796 "a B<fork>(2)  the child must turn on those permissions that it needs.  "
16797 "Permissions are preserved across B<execve>(2); this is useful for giving "
16798 "port access permissions to unprivileged programs."
16799 msgstr ""
16800 "アクセス権は B<fork>(2)  で作成された子プロセスには継承されない。子プロセスで"
16801 "は、B<fork>(2) の後で必要なアクセス権を有効にしなければならない。 "
16802 "B<execve>(2)  の前後でアクセス権は保存される。この機能は 非特権プログラムに"
16803 "ポートへのアクセス権を 与えるのに使用できる。"
16804
16805 #. type: Plain text
16806 #: build/C/man2/ioperm.2:79
16807 msgid ""
16808 "This call is mostly for the i386 architecture.  On many other architectures "
16809 "it does not exist or will always return an error."
16810 msgstr ""
16811 "このシステムコールはほとんど i386 アーキテクチャのためだけのものである。 その"
16812 "他の多くのアーキテクチャでは存在しないか、常にエラーを返す。"
16813
16814 #. type: Plain text
16815 #: build/C/man2/ioperm.2:91
16816 msgid "Invalid values for I<from> or I<num>."
16817 msgstr "I<from> または I<num> の値が不正である。"
16818
16819 #. type: Plain text
16820 #: build/C/man2/ioperm.2:94
16821 msgid "(on PowerPC) This call is not supported."
16822 msgstr "(PowerPC で) このシステムコールはサポートしていない。"
16823
16824 #.  Could not allocate I/O bitmap.
16825 #. type: Plain text
16826 #: build/C/man2/ioperm.2:98
16827 msgid "Out of memory."
16828 msgstr "メモリ不足。"
16829
16830 #. type: Plain text
16831 #: build/C/man2/ioperm.2:101
16832 msgid "The calling thread has insufficient privilege."
16833 msgstr "呼び出し元スレッドに十分な権限がなかった。"
16834
16835 #. type: Plain text
16836 #: build/C/man2/ioperm.2:105
16837 msgid ""
16838 "B<ioperm>()  is Linux-specific and should not be used in programs intended "
16839 "to be portable."
16840 msgstr ""
16841 "B<ioperm>()  は Linux 特有の関数であり、移植を意図したプログラムで 使用しては"
16842 "ならない。"
16843
16844 #. type: Plain text
16845 #: build/C/man2/ioperm.2:109
16846 msgid ""
16847 "The I</proc/ioports> file shows the I/O ports that are currently allocated "
16848 "on the system."
16849 msgstr ""
16850 "I</proc/ioports> ファイルには、現在このシステムに割り当てられている I/O ポー"
16851 "トが表示される。"
16852
16853 #. type: Plain text
16854 #: build/C/man2/ioperm.2:117
16855 msgid ""
16856 "Glibc has an B<ioperm>()  prototype both in I<E<lt>sys/io.hE<gt>> and in "
16857 "I<E<lt>sys/perm.hE<gt>>.  Avoid the latter, it is available on i386 only."
16858 msgstr ""
16859 "glibc2 には I<E<lt>sys/io.hE<gt>> と I<E<lt>sys/perm.hE<gt>> の両方に "
16860 "B<ioperm>() のプロトタイプがある。 後者は i386 のみで利用可能なので、使用すべ"
16861 "きではない。"
16862
16863 #. type: Plain text
16864 #: build/C/man2/ioperm.2:121
16865 msgid "B<iopl>(2), B<outb>(2), B<capabilities>(7)"
16866 msgstr "B<iopl>(2), B<outb>(2), B<capabilities>(7)"
16867
16868 #. type: TH
16869 #: build/C/man3/lockf.3:28
16870 #, no-wrap
16871 msgid "LOCKF"
16872 msgstr "LOCKF"
16873
16874 #. type: TH
16875 #: build/C/man3/lockf.3:28
16876 #, no-wrap
16877 msgid "2014-06-13"
16878 msgstr "2014-06-13"
16879
16880 #. type: Plain text
16881 #: build/C/man3/lockf.3:31
16882 msgid "lockf - apply, test or remove a POSIX lock on an open file"
16883 msgstr ""
16884 "lockf - オープンされたファイルに対する POSIX ロックの適用・テスト・解除を行う"
16885
16886 #. type: Plain text
16887 #: build/C/man3/lockf.3:35
16888 msgid "B<int lockf(int >I<fd>B<, int >I<cmd>B<, off_t >I<len>B<);>"
16889 msgstr "B<int lockf(int >I<fd>B<, int >I<cmd>B<, off_t >I<len>B<);>"
16890
16891 #. type: Plain text
16892 #: build/C/man3/lockf.3:42
16893 msgid "B<lockf>():"
16894 msgstr "B<lockf>():"
16895
16896 #. type: Plain text
16897 #: build/C/man3/lockf.3:46
16898 msgid ""
16899 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
16900 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
16901 msgstr ""
16902 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
16903 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
16904
16905 #. type: Plain text
16906 #: build/C/man3/lockf.3:69
16907 msgid ""
16908 "Apply, test or remove a POSIX lock on a section of an open file.  The file "
16909 "is specified by I<fd>, a file descriptor open for writing, the action by "
16910 "I<cmd>, and the section consists of byte positions I<pos>..I<pos>+I<len>-1 "
16911 "if I<len> is positive, and I<pos>-I<len>..I<pos>-1 if I<len> is negative, "
16912 "where I<pos> is the current file position, and if I<len> is zero, the "
16913 "section extends from the current file position to infinity, encompassing the "
16914 "present and future end-of-file positions.  In all cases, the section may "
16915 "extend past current end-of-file."
16916 msgstr ""
16917 "オープンされたファイルのセクションに対して、 POSIX ロックの適用・テスト・解除"
16918 "をする。 ファイルは I<fd> で指定される。 I<fd> は書き込みのためにオープンした"
16919 "ファイルディスクリプタである。 アクションは I<cmd> で指定される。 I<pos> を現"
16920 "在のファイル位置とすると、 I<len> が正の場合、セクションはバイト位置 I<pos>.."
16921 "I<pos>+I<len>-1 となり、 I<len> が負の場合、セクションはバイト位置 I<pos>-"
16922 "I<len>..I<pos>-1 となる。 I<len> が 0 の場合、セクションは現在のファイル位置"
16923 "から無限大までとなる (つまり現在の、あるいは変更された場合は将来の、ファイル"
16924 "終端位置まで)。 どの場合においても、セクションは以前のファイル終端よりも拡大"
16925 "されうる。"
16926
16927 #. type: Plain text
16928 #: build/C/man3/lockf.3:84
16929 msgid ""
16930 "On Linux, B<lockf>()  is just an interface on top of B<fcntl>(2)  locking.  "
16931 "Many other systems implement B<lockf>()  in this way, but note that "
16932 "POSIX.1-2001 leaves the relationship between B<lockf>()  and B<fcntl>(2)  "
16933 "locks unspecified.  A portable application should probably avoid mixing "
16934 "calls to these interfaces."
16935 msgstr ""
16936 "Linux では、 B<lockf>()  は単に B<fcntl>(2)  のロックへのインターフェースであ"
16937 "る。 多くの他のシステムで B<lockf>()  はこのように実装されているが、 "
16938 "POSIX.1-2001 では B<lockf>()  と B<fcntl>(2)  のロックとの関係は規定されてい"
16939 "ない。 おそらく、移植性が必要なアプリケーションでは、 B<lockf>()  と "
16940 "B<fcntl>(2)  のロックを混ぜて呼び出すのは避けるべきであろう。"
16941
16942 #. type: Plain text
16943 #: build/C/man3/lockf.3:86
16944 msgid "Valid operations are given below:"
16945 msgstr "有効なオプションを以下に挙げる。"
16946
16947 #. type: TP
16948 #: build/C/man3/lockf.3:86
16949 #, no-wrap
16950 msgid "B<F_LOCK>"
16951 msgstr "B<F_LOCK>"
16952
16953 #. type: Plain text
16954 #: build/C/man3/lockf.3:96
16955 msgid ""
16956 "Set an exclusive lock on the specified section of the file.  If (part of) "
16957 "this section is already locked, the call blocks until the previous lock is "
16958 "released.  If this section overlaps an earlier locked section, both are "
16959 "merged.  File locks are released as soon as the process holding the locks "
16960 "closes some file descriptor for the file.  A child process does not inherit "
16961 "these locks."
16962 msgstr ""
16963 "ファイルの指定されたセクションに排他ロックを設定する。 そのセクション (の一"
16964 "部) が既にロックされていた場合、 前のロックが解除されるまで関数の呼び出しがブ"
16965 "ロックされる。 このセクションが前にロックされているセクションと重なった場"
16966 "合、 2 つのセクションは結合される。 ロックを保持しているプロセスが、 そのファ"
16967 "イルのファイルディスクリプタをクローズすると、 ファイルロックは解放される。 "
16968 "子プロセスはロックを継承しない。"
16969
16970 #. type: TP
16971 #: build/C/man3/lockf.3:96
16972 #, no-wrap
16973 msgid "B<F_TLOCK>"
16974 msgstr "B<F_TLOCK>"
16975
16976 #. type: Plain text
16977 #: build/C/man3/lockf.3:102
16978 msgid ""
16979 "Same as B<F_LOCK> but the call never blocks and returns an error instead if "
16980 "the file is already locked."
16981 msgstr ""
16982 "B<F_LOCK> と同様であるが、ファイルが既にロックされている場合、 関数の呼び出し"
16983 "はブロックを行わずにエラーを返す。"
16984
16985 #. type: TP
16986 #: build/C/man3/lockf.3:102
16987 #, no-wrap
16988 msgid "B<F_ULOCK>"
16989 msgstr "B<F_ULOCK>"
16990
16991 #. type: Plain text
16992 #: build/C/man3/lockf.3:106
16993 msgid ""
16994 "Unlock the indicated section of the file.  This may cause a locked section "
16995 "to be split into two locked sections."
16996 msgstr ""
16997 "ファイルの指定されたセクションのロックを解除する。 これによりロックされたセク"
16998 "ションが 2 つに分割されるかもしれない。"
16999
17000 #. type: TP
17001 #: build/C/man3/lockf.3:106
17002 #, no-wrap
17003 msgid "B<F_TEST>"
17004 msgstr "B<F_TEST>"
17005
17006 #. type: Plain text
17007 #: build/C/man3/lockf.3:116
17008 msgid ""
17009 "Test the lock: return 0 if the specified section is unlocked or locked by "
17010 "this process; return -1, set I<errno> to B<EAGAIN> (B<EACCES> on some other "
17011 "systems), if another process holds a lock."
17012 msgstr ""
17013 "次のようにロックのテストをする。 指定されたセクションがロックされていない"
17014 "か、 このプロセスによりロックされている場合、0 を返す。 他のプロセスがロック"
17015 "を保持している場合、-1 を返し、 I<errno> を B<EAGAIN> (いくつかの他のシステム"
17016 "では B<EACCES>)  に設定する。"
17017
17018 #. type: Plain text
17019 #: build/C/man3/lockf.3:130
17020 msgid ""
17021 "The file is locked and B<F_TLOCK> or B<F_TEST> was specified, or the "
17022 "operation is prohibited because the file has been memory-mapped by another "
17023 "process."
17024 msgstr ""
17025 "ロックされたファイルに対して、 B<F_TLOCK> または B<F_TEST> が指定されてい"
17026 "る。 または、ファイルが他のプロセスによりメモリーマップされており、 指定され"
17027 "た操作が禁止されている。"
17028
17029 #. type: Plain text
17030 #: build/C/man3/lockf.3:142
17031 msgid ""
17032 "I<fd> is not an open file descriptor; or I<cmd> is B<F_LOCK> or B<F_TLOCK> "
17033 "and I<fd> is not a writable file descriptor."
17034 msgstr ""
17035 "I<fd> がオープンされたファイルのディスクリプタではない。 または、 I<cmd> が "
17036 "B<F_LOCK> か B<F_TLOCK> で、 I<fd> が書き込み可能なファイルディスクリプタでな"
17037 "い。"
17038
17039 #. type: Plain text
17040 #: build/C/man3/lockf.3:147
17041 msgid ""
17042 "The command was B<F_LOCK> and this lock operation would cause a deadlock."
17043 msgstr ""
17044 "コマンドが B<F_LOCK> であり、このロック操作を行うとデッドロックが発生してしま"
17045 "う。"
17046
17047 #. type: Plain text
17048 #: build/C/man3/lockf.3:151
17049 msgid "An invalid operation was specified in I<cmd>."
17050 msgstr "I<cmd> に無効な操作が指定された。"
17051
17052 #. type: Plain text
17053 #: build/C/man3/lockf.3:154
17054 msgid "Too many segment locks open, lock table is full."
17055 msgstr "非常に多くのセグメントロックが開かれ、ロックテーブルが一杯である。"
17056
17057 #. type: Plain text
17058 #: build/C/man3/lockf.3:159
17059 msgid "The B<lockf>()  function is thread-safe."
17060 msgstr "B<lockf>() 関数はスレッドセーフである。"
17061
17062 #. type: Plain text
17063 #: build/C/man3/lockf.3:161
17064 msgid "SVr4, POSIX.1-2001."
17065 msgstr "SVr4, POSIX.1-2001."
17066
17067 #. type: Plain text
17068 #: build/C/man3/lockf.3:164
17069 msgid "B<fcntl>(2), B<flock>(2)"
17070 msgstr "B<fcntl>(2), B<flock>(2)"
17071
17072 #. type: Plain text
17073 #: build/C/man3/lockf.3:176
17074 msgid ""
17075 "I<locks.txt> and I<mandatory-locking.txt> in the Linux kernel source "
17076 "directory I<Documentation/filesystems> (on older kernels, these files are "
17077 "directly under the I<Documentation> directory, and I<mandatory-locking.txt> "
17078 "is called I<mandatory.txt>)"
17079 msgstr ""
17080 "Linux カーネルソースの I<Documentation/filesystems> ディレクトリにある "
17081 "I<locks.txt> と I<mandatory-locking.txt> (以前のカーネルでは、これらのファイ"
17082 "ルは I<Documentation> ディレクトリ直下にあり、 I<mandatory-locking.txt> は "
17083 "I<mandatory.txt> という名前であった。)"
17084
17085 #. type: TH
17086 #: build/C/man2/mincore.2:34
17087 #, no-wrap
17088 msgid "MINCORE"
17089 msgstr "MINCORE"
17090
17091 #. type: TH
17092 #: build/C/man2/mincore.2:34
17093 #, no-wrap
17094 msgid "2008-04-22"
17095 msgstr "2008-04-22"
17096
17097 #. type: Plain text
17098 #: build/C/man2/mincore.2:37
17099 msgid "mincore - determine whether pages are resident in memory"
17100 msgstr "mincore - ページがメモリ内にあるかどうかを判定する"
17101
17102 #. type: Plain text
17103 #: build/C/man2/mincore.2:41
17104 msgid "B<#include E<lt>sys/mman.hE<gt>>"
17105 msgstr "B<#include E<lt>sys/mman.hE<gt>>"
17106
17107 #. type: Plain text
17108 #: build/C/man2/mincore.2:43
17109 msgid ""
17110 "B<int mincore(void *>I<addr>B<, size_t >I<length>B<, unsigned char "
17111 "*>I<vec>B<);>"
17112 msgstr ""
17113 "B<int mincore(void *>I<addr>B<, size_t >I<length>B<, unsigned char "
17114 "*>I<vec>B<);>"
17115
17116 #. type: Plain text
17117 #: build/C/man2/mincore.2:51
17118 msgid "B<mincore>(): _BSD_SOURCE || _SVID_SOURCE"
17119 msgstr "B<mincore>(): _BSD_SOURCE || _SVID_SOURCE"
17120
17121 #. type: Plain text
17122 #: build/C/man2/mincore.2:62
17123 msgid ""
17124 "B<mincore>()  returns a vector that indicates whether pages of the calling "
17125 "process's virtual memory are resident in core (RAM), and so will not cause a "
17126 "disk access (page fault) if referenced.  The kernel returns residency "
17127 "information about the pages starting at the address I<addr>, and continuing "
17128 "for I<length> bytes."
17129 msgstr ""
17130 "B<mincore>()  は、呼び出し元プロセスの仮想メモリのページがコア (RAM) 内に存在"
17131 "し、 ページ参照時にディスクアクセス (ページフォールト) を起こさないか どうか"
17132 "を示すベクトルを返す。カーネルは、アドレス I<addr> から始まる I<length> バイ"
17133 "トの範囲のページに関する存在情報を返す。"
17134
17135 #. type: Plain text
17136 #: build/C/man2/mincore.2:76
17137 msgid ""
17138 "The I<addr> argument must be a multiple of the system page size.  The "
17139 "I<length> argument need not be a multiple of the page size, but since "
17140 "residency information is returned for whole pages, I<length> is effectively "
17141 "rounded up to the next multiple of the page size.  One may obtain the page "
17142 "size (B<PAGE_SIZE>)  using I<sysconf(_SC_PAGESIZE)>."
17143 msgstr ""
17144 "I<addr> 引き数はシステムのページサイズの倍数でなければならない。 I<length> 引"
17145 "き数はページサイズの倍数である必要はないが、 ページ全体に関する存在情報が返さ"
17146 "れるので、事実上 I<length> はページサイズの倍数に切り上げられることになる。 "
17147 "ページサイズ (B<PAGE_SIZE>)  は I<sysconf(_SC_PAGESIZE)> を使って入手できる。"
17148
17149 #. type: Plain text
17150 #: build/C/man2/mincore.2:94
17151 msgid ""
17152 "The I<vec> argument must point to an array containing at least I<(length"
17153 "+PAGE_SIZE-1) / PAGE_SIZE> bytes.  On return, the least significant bit of "
17154 "each byte will be set if the corresponding page is currently resident in "
17155 "memory, and be clear otherwise.  (The settings of the other bits in each "
17156 "byte are undefined; these bits are reserved for possible later use.)  Of "
17157 "course the information returned in I<vec> is only a snapshot: pages that are "
17158 "not locked in memory can come and go at any moment, and the contents of "
17159 "I<vec> may already be stale by the time this call returns."
17160 msgstr ""
17161 "I<vec> 引き数は、少なくとも I<(length+PAGE_SIZE-1) / PAGE_SIZE> バイトが格納"
17162 "できる配列を指していなければならない。 この呼び出しが返るとき、 各バイトの最"
17163 "下位ビットは、対応するページがメモリ内にそのとき存在すれば セットされ、そうで"
17164 "ない場合はクリアされる (各バイトのその他のビットは未定義であり、これらのビッ"
17165 "トは将来の使用に そなえて予約されている)。 もちろん、 I<vec> で返された情報は"
17166 "スナップショットでしかない。 メモリ内にロックされていないページは、任意の時点"
17167 "でメモリ内に 入ったり出たりでき、この呼び出しが返るときには I<vec> の内容はす"
17168 "でに古くなっているかもしれない。"
17169
17170 #. type: Plain text
17171 #: build/C/man2/mincore.2:101
17172 msgid ""
17173 "On success, B<mincore>()  returns zero.  On error, -1 is returned, and "
17174 "I<errno> is set appropriately."
17175 msgstr ""
17176 "成功した場合、 B<mincore>()  は 0 を返す。 エラーの場合は -1 を返して、 "
17177 "I<errno> を適切な値に設定する。"
17178
17179 #. type: Plain text
17180 #: build/C/man2/mincore.2:104
17181 msgid "B<EAGAIN> kernel is temporarily out of resources."
17182 msgstr "B<EAGAIN> カーネルが一時的にリソースを使い果たしている。"
17183
17184 #. type: Plain text
17185 #: build/C/man2/mincore.2:108
17186 msgid "I<vec> points to an invalid address."
17187 msgstr "I<vec> が無効なアドレスを指している。"
17188
17189 #. type: Plain text
17190 #: build/C/man2/mincore.2:112
17191 msgid "I<addr> is not a multiple of the page size."
17192 msgstr "I<addr> がページサイズの倍数でない。"
17193
17194 #. type: Plain text
17195 #: build/C/man2/mincore.2:124
17196 msgid ""
17197 "I<length> is greater than (I<TASK_SIZE> - I<addr>).  (This could occur if a "
17198 "negative value is specified for I<length>, since that value will be "
17199 "interpreted as a large unsigned integer.)  In Linux 2.6.11 and earlier, the "
17200 "error B<EINVAL> was returned for this condition."
17201 msgstr ""
17202 "I<length> が (I<TASK_SIZE> - I<addr>)  より大きい。 (I<length> に負の値が指定"
17203 "された場合、 その値が大きな符号なし整数として解釈されるために起こることがあ"
17204 "る。)  Linux 2.6.11 以前では、この条件の場合はエラー B<EINVAL> が返されてい"
17205 "た。"
17206
17207 #. type: Plain text
17208 #: build/C/man2/mincore.2:132
17209 msgid "I<addr> to I<addr> + I<length> contained unmapped memory."
17210 msgstr ""
17211 "I<addr> から I<addr> + I<length> の間にマップされていないメモリがあった。"
17212
17213 #. type: Plain text
17214 #: build/C/man2/mincore.2:134
17215 msgid "Available since Linux 2.3.99pre1 and glibc 2.2."
17216 msgstr "Linux 2.3.99pre1 と glibc 2.2 から利用可能である。"
17217
17218 #.  It is on at least NetBSD, FreeBSD, OpenBSD, Solaris 8,
17219 #.  AIX 5.1, SunOS 4.1
17220 #.  .SH HISTORY
17221 #.  The
17222 #.  .BR mincore ()
17223 #.  function first appeared in 4.4BSD.
17224 #. type: Plain text
17225 #: build/C/man2/mincore.2:144
17226 msgid ""
17227 "B<mincore>()  is not specified in POSIX.1-2001, and it is not available on "
17228 "all UNIX implementations."
17229 msgstr ""
17230 "B<mincore>()  は POSIX.1-2001 に記述されておらず、 全ての UNIX 実装で利用可能"
17231 "であるわけではない。"
17232
17233 #.  Linux (up to now, 2.6.5),
17234 #.  .B mincore
17235 #.  does not return correct information for MAP_PRIVATE mappings:
17236 #.  for a MAP_PRIVATE file mapping,
17237 #.  .B mincore
17238 #.  returns the residency of the file pages, rather than any
17239 #.  modified process-private pages that have been copied on write;
17240 #.  for a MAP_PRIVATE mapping of
17241 #.  .IR /dev/zero ,
17242 #.  .B mincore
17243 #.  always reports pages as nonresident;
17244 #.  and for a MAP_PRIVATE, MAP_ANONYMOUS mapping,
17245 #.  .B mincore
17246 #.  always fails with the error
17247 #.  .BR ENOMEM .
17248 #. type: Plain text
17249 #: build/C/man2/mincore.2:166
17250 msgid ""
17251 "Before kernel 2.6.21, B<mincore>()  did not return correct information for "
17252 "B<MAP_PRIVATE> mappings, or for nonlinear mappings (established using "
17253 "B<remap_file_pages>(2))."
17254 msgstr ""
17255 "カーネル 2.6.21 より前は、 B<mincore>()  は、 B<MAP_PRIVATE> マッピングや非線"
17256 "形マッピング (B<remap_file_pages>(2)  を使って作成される) について正しい情報"
17257 "を返さなかった。"
17258
17259 #. type: Plain text
17260 #: build/C/man2/mincore.2:169
17261 msgid "B<mlock>(2), B<mmap>(2)"
17262 msgstr "B<mlock>(2), B<mmap>(2)"
17263
17264 #. type: TH
17265 #: build/C/man2/mkdir.2:11
17266 #, no-wrap
17267 msgid "MKDIR"
17268 msgstr "MKDIR"
17269
17270 #. type: Plain text
17271 #: build/C/man2/mkdir.2:14
17272 msgid "mkdir, mkdirat - create a directory"
17273 msgstr "mkdir, mkdirat - ディレクトリを作成する"
17274
17275 #.  .B #include <unistd.h>
17276 #. type: Plain text
17277 #: build/C/man2/mkdir.2:19
17278 #, no-wrap
17279 msgid ""
17280 "B<#include E<lt>sys/stat.hE<gt>>\n"
17281 "B<#include E<lt>sys/types.hE<gt>>\n"
17282 msgstr ""
17283 "B<#include E<lt>sys/stat.hE<gt>>\n"
17284 "B<#include E<lt>sys/types.hE<gt>>\n"
17285
17286 #. type: Plain text
17287 #: build/C/man2/mkdir.2:21
17288 #, no-wrap
17289 msgid "B<int mkdir(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17290 msgstr "B<int mkdir(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17291
17292 #. type: Plain text
17293 #: build/C/man2/mkdir.2:24
17294 #, no-wrap
17295 msgid ""
17296 "B<#include E<lt>fcntl.hE<gt>           >/* Definition of AT_* constants */\n"
17297 "B<#include E<lt>sys/stat.hE<gt>>\n"
17298 msgstr ""
17299 "B<#include E<lt>fcntl.hE<gt>           >/* AT_* 定数の定義 */\n"
17300 "B<#include E<lt>sys/stat.hE<gt>>\n"
17301
17302 #. type: Plain text
17303 #: build/C/man2/mkdir.2:26
17304 #, no-wrap
17305 msgid "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17306 msgstr "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17307
17308 #. type: Plain text
17309 #: build/C/man2/mkdir.2:34
17310 msgid "B<mkdirat>():"
17311 msgstr "B<mkdirat>():"
17312
17313 #. type: Plain text
17314 #: build/C/man2/mkdir.2:51
17315 msgid "B<mkdir>()  attempts to create a directory named I<pathname>."
17316 msgstr ""
17317 "B<mkdir>()  は I<pathname> で示される名前のディレクトリを作成しようとする。"
17318
17319 #. type: Plain text
17320 #: build/C/man2/mkdir.2:61
17321 msgid ""
17322 "The argument I<mode> specifies the permissions to use.  It is modified by "
17323 "the process's I<umask> in the usual way: the permissions of the created "
17324 "directory are (I<mode> & ~I<umask> & 0777).  Other mode bits of the created "
17325 "directory depend on the operating system.  For Linux, see below."
17326 msgstr ""
17327 "I<mode> 引き数は、作成されたディレクトリの許可属性を決定するのに使われる。 こ"
17328 "の値に、通常通りプロセスの I<umask> による修正が加えられる。 したがって、作成"
17329 "されたディレクトリの許可属性は (I<mode> & ~I<umask> & 0777)  となる。 作成さ"
17330 "れたディレクトリのその他のモードビットはオペレーティングシステムに 依存する。"
17331 "Linux の場合は、以下の通りである。"
17332
17333 #. type: Plain text
17334 #: build/C/man2/mkdir.2:71
17335 msgid ""
17336 "The newly created directory will be owned by the effective user ID of the "
17337 "process.  If the directory containing the file has the set-group-ID bit set, "
17338 "or if the filesystem is mounted with BSD group semantics (I<mount -o "
17339 "bsdgroups> or, synonymously I<mount -o grpid>), the new directory will "
17340 "inherit the group ownership from its parent; otherwise it will be owned by "
17341 "the effective group ID of the process."
17342 msgstr ""
17343 "新しく作成されたディレクトリの所有者はプロセスの実効ユーザ ID に設定される。 "
17344 "新たに作成されたディレクトリが含まれる親ディレクトリに set group ID ビットが"
17345 "セットされていたり、ファイルシステムが BSD の グループセマンティクス "
17346 "(I<mount -o bsdgroups> あるいは、同じ意味の I<mount -o grpid>)  に従ってマウ"
17347 "ントされている場合には、 新たに作成されたディレクトリのグループ所有権は親ディ"
17348 "レクトリの ものが継承される (親ディレクトリと同じになる)。 それ以外の場合は、"
17349 "グループ所有権はプロセスの実効グループ ID となる。"
17350
17351 #. type: Plain text
17352 #: build/C/man2/mkdir.2:76
17353 msgid ""
17354 "If the parent directory has the set-group-ID bit set, then so will the newly "
17355 "created directory."
17356 msgstr ""
17357 "もし親ディレクトリに set group ID ビットがセットされていれば新しく作成される "
17358 "ディレクトリにも set group ID ビットがセットされる。"
17359
17360 #. type: SS
17361 #: build/C/man2/mkdir.2:76
17362 #, no-wrap
17363 msgid "mkdirat()"
17364 msgstr "mkdirat()"
17365
17366 #. type: Plain text
17367 #: build/C/man2/mkdir.2:82
17368 msgid ""
17369 "The B<mkdirat>()  system call operates in exactly the same way as "
17370 "B<mkdir>(), except for the differences described here."
17371 msgstr ""
17372 "B<mkdirat>() システムコールは B<mkdir>() と全く同様に動作するが、以下で説明す"
17373 "る点が異なる。"
17374
17375 #. type: Plain text
17376 #: build/C/man2/mkdir.2:92
17377 msgid ""
17378 "If the pathname given in I<pathname> is relative, then it is interpreted "
17379 "relative to the directory referred to by the file descriptor I<dirfd> "
17380 "(rather than relative to the current working directory of the calling "
17381 "process, as is done by B<mkdir>()  for a relative pathname)."
17382 msgstr ""
17383 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
17384 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
17385 "(B<mkdir>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
17386 "ワーキングディレクトリに対する相対パスではない)。"
17387
17388 #. type: Plain text
17389 #: build/C/man2/mkdir.2:104
17390 msgid ""
17391 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
17392 "then I<pathname> is interpreted relative to the current working directory of "
17393 "the calling process (like B<mkdir>())."
17394 msgstr ""
17395 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
17396 "の場合、 (B<mkdir>() と同様に) I<pathname> は呼び出したプロセスのカレントワー"
17397 "キングディレクトリに対する相対パスと解釈される。"
17398
17399 #. type: Plain text
17400 #: build/C/man2/mkdir.2:115
17401 msgid "See B<openat>(2)  for an explanation of the need for B<mkdirat>()."
17402 msgstr "B<mkdirat>() の必要性についての説明については B<openat>(2) を参照。"
17403
17404 #. type: Plain text
17405 #: build/C/man2/mkdir.2:122
17406 msgid ""
17407 "B<mkdir>()  and B<mkdirat>()  return zero on success, or -1 if an error "
17408 "occurred (in which case, I<errno> is set appropriately)."
17409 msgstr ""
17410 "B<mkdir>() と B<mkdirat>() は成功した場合 0 を、失敗した場合 -1 を返す (ま"
17411 "た、 I<errno> がエラーの内容にしたがって適切に設定される)。"
17412
17413 #. type: Plain text
17414 #: build/C/man2/mkdir.2:131
17415 msgid ""
17416 "The parent directory does not allow write permission to the process, or one "
17417 "of the directories in I<pathname> did not allow search permission.  (See "
17418 "also B<path_resolution>(7).)"
17419 msgstr ""
17420 "プロセスが親ディレクトリへの書き込み許可を持たない、もしくは I<pathname> 中の"
17421 "ディレクトリのどれかに検索許可属性が無い (B<path_resolution>(7)  も参照)。"
17422
17423 #. type: TP
17424 #: build/C/man2/mkdir.2:131
17425 #, no-wrap
17426 msgid "B<EDQUOT>"
17427 msgstr "B<EDQUOT>"
17428
17429 #. type: Plain text
17430 #: build/C/man2/mkdir.2:135
17431 msgid ""
17432 "The user's quota of disk blocks or inodes on the filesystem has been "
17433 "exhausted."
17434 msgstr ""
17435 "ディスクブロックか inode がそのファイルシステムのユーザクォータに達していた。"
17436
17437 #. type: TP
17438 #: build/C/man2/mkdir.2:135
17439 #, no-wrap
17440 msgid "B<EEXIST>"
17441 msgstr "B<EEXIST>"
17442
17443 #. type: Plain text
17444 #: build/C/man2/mkdir.2:142
17445 msgid ""
17446 "I<pathname> already exists (not necessarily as a directory).  This includes "
17447 "the case where I<pathname> is a symbolic link, dangling or not."
17448 msgstr ""
17449 "I<pathname> が既に存在している(ただしそれがディレクトリであるとは限らない)。 "
17450 "I<pathname> がシンボリックリンクの場合も (その指定先が存在するかどうかに関ら"
17451 "ず)エラーになる。"
17452
17453 #. type: TP
17454 #: build/C/man2/mkdir.2:149
17455 #, no-wrap
17456 msgid "B<EMLINK>"
17457 msgstr "B<EMLINK>"
17458
17459 #. type: Plain text
17460 #: build/C/man2/mkdir.2:153
17461 msgid "The number of links to the parent directory would exceed B<LINK_MAX>."
17462 msgstr "親ディレクトリへのリンク数が B<LINK_MAX> を超えてしまう。"
17463
17464 #. type: Plain text
17465 #: build/C/man2/mkdir.2:156
17466 msgid "I<pathname> was too long."
17467 msgstr "I<pathname> が長すぎる。"
17468
17469 #. type: Plain text
17470 #: build/C/man2/mkdir.2:161
17471 msgid ""
17472 "A directory component in I<pathname> does not exist or is a dangling "
17473 "symbolic link."
17474 msgstr ""
17475 "I<pathname> の構成要素のディレクトリのいずれかが存在しないか、 またはリンク先"
17476 "が存在しないシンボリックリンクである。"
17477
17478 #. type: TP
17479 #: build/C/man2/mkdir.2:164 build/C/man2/mkdir.2:169
17480 #, no-wrap
17481 msgid "B<ENOSPC>"
17482 msgstr "B<ENOSPC>"
17483
17484 #. type: Plain text
17485 #: build/C/man2/mkdir.2:169
17486 msgid "The device containing I<pathname> has no room for the new directory."
17487 msgstr "I<pathname> を含むデバイスに新たにディレクトリを作成する空きが無い。"
17488
17489 #. type: Plain text
17490 #: build/C/man2/mkdir.2:173
17491 msgid ""
17492 "The new directory cannot be created because the user's disk quota is "
17493 "exhausted."
17494 msgstr ""
17495 "もしくはユーザーのディスク quota が使い切られているため、 新たにディレクトリ"
17496 "を作成することができない。"
17497
17498 #. type: Plain text
17499 #: build/C/man2/mkdir.2:183
17500 msgid ""
17501 "The filesystem containing I<pathname> does not support the creation of "
17502 "directories."
17503 msgstr ""
17504 "I<pathname> を含むファイルシステムがディレクトリの作成をサポートしていない。"
17505
17506 #. type: Plain text
17507 #: build/C/man2/mkdir.2:187
17508 msgid "I<pathname> refers to a file on a read-only filesystem."
17509 msgstr "I<pathname> が読み出し専用ファイルシステム上のファイルを指している。"
17510
17511 #. type: Plain text
17512 #: build/C/man2/mkdir.2:190
17513 msgid "The following additional errors can occur for B<mkdirat>():"
17514 msgstr "B<mkdirat>() では以下のエラーも発生する。"
17515
17516 #. type: Plain text
17517 #: build/C/man2/mkdir.2:204
17518 msgid ""
17519 "B<mkdirat>()  was added to Linux in kernel 2.6.16; library support was added "
17520 "to glibc in version 2.4."
17521 msgstr ""
17522 "B<mkdirat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサ"
17523 "ポートはバージョン 2.4 で glibc に追加された。"
17524
17525 #.  SVr4 documents additional EIO, EMULTIHOP
17526 #. type: Plain text
17527 #: build/C/man2/mkdir.2:208
17528 msgid "B<mkdir>(): SVr4, BSD, POSIX.1-2001, POSIX.1-2008."
17529 msgstr "B<mkdir>(): SVr4, BSD, POSIX.1-2001, POSIX.1-2008."
17530
17531 #. type: Plain text
17532 #: build/C/man2/mkdir.2:211
17533 msgid "B<mkdirat>(): POSIX.1-2008."
17534 msgstr "B<mkdirat>(): POSIX.1-2008."
17535
17536 #. type: Plain text
17537 #: build/C/man2/mkdir.2:219
17538 msgid ""
17539 "Under Linux, apart from the permission bits, only the B<S_ISVTX> mode bit is "
17540 "honored.  That is, under Linux the created directory actually gets mode "
17541 "(I<mode> & ~I<umask> & 01777).  See also B<stat>(2)."
17542 msgstr ""
17543 "Linux では、許可ビット以外で意味を持つのは、 B<S_ISVTX> モードビットだけであ"
17544 "る。 つまり、Linux では作成されたディレクトリは実際には (I<mode> & ~I<umask> "
17545 "& 01777)  のモードを持つことになる。 B<stat>(2)  を参照のこと。"
17546
17547 #. type: Plain text
17548 #: build/C/man2/mkdir.2:223
17549 msgid ""
17550 "There are many infelicities in the protocol underlying NFS.  Some of these "
17551 "affect B<mkdir>()."
17552 msgstr ""
17553 "NFS を実現しているプロトコルには多くの不備が存在し、 それら中には "
17554 "B<mkdir>()  に影響を与えるものもある。"
17555
17556 #. type: Plain text
17557 #: build/C/man2/mkdir.2:236
17558 msgid ""
17559 "On older kernels where B<mkdirat>()  is unavailable, the glibc wrapper "
17560 "function falls back to the use of B<mkdir>().  When I<pathname> is a "
17561 "relative pathname, glibc constructs a pathname based on the symbolic link in "
17562 "I</proc/self/fd> that corresponds to the I<dirfd> argument."
17563 msgstr ""
17564 "B<mkdirat>() が利用できない古いカーネルでは、 glibc ラッパー関数は "
17565 "B<mkdir>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
17566 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
17567 "に基づいてパス名を構成する。"
17568
17569 #. type: Plain text
17570 #: build/C/man2/mkdir.2:247
17571 msgid ""
17572 "B<mkdir>(1), B<chmod>(2), B<chown>(2), B<mknod>(2), B<mount>(2), "
17573 "B<rmdir>(2), B<stat>(2), B<umask>(2), B<unlink>(2), B<path_resolution>(7)"
17574 msgstr ""
17575 "B<mkdir>(1), B<chmod>(2), B<chown>(2), B<mknod>(2), B<mount>(2), "
17576 "B<rmdir>(2), B<stat>(2), B<umask>(2), B<unlink>(2), B<path_resolution>(7)"
17577
17578 #. type: TH
17579 #: build/C/man2/nice.2:31
17580 #, no-wrap
17581 msgid "NICE"
17582 msgstr "NICE"
17583
17584 #. type: TH
17585 #: build/C/man2/nice.2:31
17586 #, no-wrap
17587 msgid "2014-04-28"
17588 msgstr "2014-04-28"
17589
17590 #. type: Plain text
17591 #: build/C/man2/nice.2:34
17592 msgid "nice - change process priority"
17593 msgstr "nice - プロセスの優先度を変更する"
17594
17595 #. type: Plain text
17596 #: build/C/man2/nice.2:38
17597 msgid "B<int nice(int >I<inc>B<);>"
17598 msgstr "B<int nice(int >I<inc>B<);>"
17599
17600 #. type: Plain text
17601 #: build/C/man2/nice.2:46
17602 msgid "B<nice>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
17603 msgstr "B<nice>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
17604
17605 #. type: Plain text
17606 #: build/C/man2/nice.2:56
17607 msgid ""
17608 "B<nice>()  adds I<inc> to the nice value for the calling process.  (A higher "
17609 "nice value means a low priority.)  Only the super\\%user may specify a "
17610 "negative increment, or priority increase.  The range for nice values is "
17611 "described in B<getpriority>(2)."
17612 msgstr ""
17613 "B<nice>()  は I<inc> の値を B<nice> を呼んだプロセスの nice 値に加える (nice "
17614 "値が大きい数値ほど低い優先度を表す)。 負の数を指定する、つまり、以前よりも優"
17615 "先度を上げるという指定ができるのは スーパーユーザーだけである。 nice 値の範囲"
17616 "については B<getpriority>(2)  で説明されている。"
17617
17618 #. type: Plain text
17619 #: build/C/man2/nice.2:61
17620 msgid ""
17621 "On success, the new nice value is returned (but see NOTES below).  On error, "
17622 "-1 is returned, and I<errno> is set appropriately."
17623 msgstr ""
17624 "成功した場合、新しい nice 値が返る (但し、下記の「注意」を参照)。 失敗した場"
17625 "合 -1 が返り、 I<errno> がエラーの内容に従って設定される。"
17626
17627 #. type: Plain text
17628 #: build/C/man2/nice.2:75
17629 msgid ""
17630 "The calling process attempted to increase its priority by supplying a "
17631 "negative I<inc> but has insufficient privileges.  Under Linux, the "
17632 "B<CAP_SYS_NICE> capability is required.  (But see the discussion of the "
17633 "B<RLIMIT_NICE> resource limit in B<setrlimit>(2).)"
17634 msgstr ""
17635 "スーパーユーザー以外が I<inc> に負の数値を指定して優先度を上げようとした。 呼"
17636 "び出し元のプロセスが I<inc> に負の数値を指定して優先度を上げようとしたが、 十"
17637 "分な権限を持っていなかった。 Linux では B<CAP_SYS_NICE> ケーパビリティが必要"
17638 "である。 (B<setrlimit>(2)  のリソース上限 B<RLIMIT_NICE> に関する議論も参照の"
17639 "こと)。"
17640
17641 #. type: Plain text
17642 #: build/C/man2/nice.2:82
17643 msgid ""
17644 "SVr4, 4.3BSD, POSIX.1-2001.  However, the Linux and (g)libc (earlier than "
17645 "glibc 2.2.4) return value is nonstandard, see below.  SVr4 documents an "
17646 "additional B<EINVAL> error code."
17647 msgstr ""
17648 "SVr4, 4.3BSD, POSIX.1-2001.  しかし、Linux と (2.2.4より古い) (g)libc では返"
17649 "り値は標準と異なる。 詳細は以下を参照のこと。 SVr4 には他に B<EINVAL> エラー"
17650 "コードについての記述がある。"
17651
17652 #. type: Plain text
17653 #: build/C/man2/nice.2:92
17654 msgid ""
17655 "SUSv2 and POSIX.1-2001 specify that B<nice>()  should return the new nice "
17656 "value.  However, the Linux syscall and the B<nice>()  library function "
17657 "provided in older versions of (g)libc (earlier than glibc 2.2.4) return 0 on "
17658 "success.  The new nice value can be found using B<getpriority>(2)."
17659 msgstr ""
17660 "SUSv2 と POSIX 1003.1-2003 では、 B<nice>()  は新しい nice 値を返すと規定され"
17661 "ている。 一方、Linux システムコールと (2.2.4 より古い) (g)libc ライブラリ関数"
17662 "は 成功時に 0 を返す。新しい nice 値は B<getpriority>(2)  を使って取得でき"
17663 "る。"
17664
17665 #. type: Plain text
17666 #: build/C/man2/nice.2:105
17667 msgid ""
17668 "Since glibc 2.2.4, B<nice>()  is implemented as a library function that "
17669 "calls B<getpriority>(2)  to obtain the new nice value to be returned to the "
17670 "caller.  With this implementation, a successful call can legitimately return "
17671 "-1.  To reliably detect an error, set I<errno> to 0 before the call, and "
17672 "check its value when B<nice>()  returns -1."
17673 msgstr ""
17674 "glibc 2.2.4 以降では、 B<nice>()  は B<getpriority>(2)  を呼び出すライブラリ"
17675 "関数として実装されており、 呼び出し元に返す新しい nice 値を "
17676 "B<getpriority>(2)  を呼び出して取得するようになっている。 この実装では、正常"
17677 "な動作でも -1 が返される可能性がある。 確実にエラーを検出するためには、 呼び"
17678 "出しの前に I<errno> に 0 を設定し、 B<nice>()  が -1 を返したときに errno を"
17679 "チェックすると良い。"
17680
17681 #. type: Plain text
17682 #: build/C/man2/nice.2:113
17683 msgid ""
17684 "B<nice>(1), B<renice>(1), B<fork>(2), B<getpriority>(2), B<setpriority>(2), "
17685 "B<capabilities>(7), B<sched>(7)"
17686 msgstr ""
17687 "B<nice>(1), B<renice>(1), B<fork>(2), B<getpriority>(2), B<setpriority>(2), "
17688 "B<capabilities>(7), B<sched>(7)"
17689
17690 #. type: TH
17691 #: build/C/man2/pread.2:25
17692 #, no-wrap
17693 msgid "PREAD"
17694 msgstr "PREAD"
17695
17696 #. type: Plain text
17697 #: build/C/man2/pread.2:28
17698 msgid ""
17699 "pread, pwrite - read from or write to a file descriptor at a given offset"
17700 msgstr ""
17701 "pread, pwrite - 指定したオフセットでファイルディスクリプタを読み書きする"
17702
17703 #. type: Plain text
17704 #: build/C/man2/pread.2:33
17705 msgid ""
17706 "B<ssize_t pread(int >I<fd>B<, void *>I<buf>B<, size_t >I<count>B<, off_t "
17707 ">I<offset>B<);>"
17708 msgstr ""
17709 "B<ssize_t pread(int >I<fd>B<, void *>I<buf>B<, size_t >I<count>B<, off_t "
17710 ">I<offset>B<);>"
17711
17712 #. type: Plain text
17713 #: build/C/man2/pread.2:36
17714 msgid ""
17715 "B<ssize_t pwrite(int >I<fd>B<, const void *>I<buf>B<, size_t >I<count>B<, "
17716 "off_t >I<offset>B<);>"
17717 msgstr ""
17718 "B<ssize_t pwrite(int >I<fd>B<, const void *>I<buf>B<, size_t >I<count>B<, "
17719 "off_t >I<offset>B<);>"
17720
17721 #. type: Plain text
17722 #: build/C/man2/pread.2:46
17723 msgid "B<pread>(), B<pwrite>():"
17724 msgstr "B<pread>(), B<pwrite>():"
17725
17726 #. type: Plain text
17727 #: build/C/man2/pread.2:48
17728 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 500"
17729 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 500"
17730
17731 #. type: Plain text
17732 #: build/C/man2/pread.2:64
17733 msgid ""
17734 "B<pread>()  reads up to I<count> bytes from file descriptor I<fd> at offset "
17735 "I<offset> (from the start of the file) into the buffer starting at I<buf>.  "
17736 "The file offset is not changed."
17737 msgstr ""
17738 "B<pread>()  は、ファイルディスクリプタ I<fd> の (ファイルの先頭からの) オフ"
17739 "セット I<offset> から最大 I<count> バイトをバッファ I<buf> へ読み込む。ファイ"
17740 "ルオフセットは変化しない。"
17741
17742 #. type: Plain text
17743 #: build/C/man2/pread.2:75
17744 msgid ""
17745 "B<pwrite>()  writes up to I<count> bytes from the buffer starting at I<buf> "
17746 "to the file descriptor I<fd> at offset I<offset>.  The file offset is not "
17747 "changed."
17748 msgstr ""
17749 "B<pwrite>()  は、バッファ I<buf> から最大 I<count> バイトをファイルディスクリ"
17750 "プタ I<fd> のオフセット I<offset> に書き込む。ファイルオフセットは変化しな"
17751 "い。"
17752
17753 #. type: Plain text
17754 #: build/C/man2/pread.2:79
17755 msgid "The file referenced by I<fd> must be capable of seeking."
17756 msgstr "I<fd> で参照されるファイルはシーク (seek) 可能でなければならない。"
17757
17758 #. type: Plain text
17759 #: build/C/man2/pread.2:89
17760 msgid ""
17761 "On success, the number of bytes read or written is returned (zero indicates "
17762 "that nothing was written, in the case of B<pwrite>(), or end of file, in the "
17763 "case of B<pread>()), or -1 on error, in which case I<errno> is set to "
17764 "indicate the error."
17765 msgstr ""
17766 "成功した場合、読み書きを行ったバイト数が返される (ゼロは、 B<pwrite>()  の場"
17767 "合には何も書かれなかったことを意味し、 B<pread>()  の場合にはファイル の末尾"
17768 "に達したことを意味する)。 エラーの場合は -1 が返され、 I<errno> がそのエラー"
17769 "を示すように設定される。"
17770
17771 #. type: Plain text
17772 #: build/C/man2/pread.2:104
17773 msgid ""
17774 "B<pread>()  can fail and set I<errno> to any error specified for B<read>(2)  "
17775 "or B<lseek>(2).  B<pwrite>()  can fail and set I<errno> to any error "
17776 "specified for B<write>(2)  or B<lseek>(2)."
17777 msgstr ""
17778 "B<pread>()  では、 B<read>(2)  および B<lseek>(2)  で規定された全てのエラーが"
17779 "発生する可能性があり、 I<errno> にはエラーを示す値が設定される。 "
17780 "B<pwrite>()  では、 B<write>(2)  および B<lseek>(2)  で規定された全てのエラー"
17781 "が発生する可能性があり、 I<errno> にはエラーを示す値が設定される。"
17782
17783 #. type: Plain text
17784 #: build/C/man2/pread.2:115
17785 msgid ""
17786 "The B<pread>()  and B<pwrite>()  system calls were added to Linux in version "
17787 "2.1.60; the entries in the i386 system call table were added in 2.1.69.  C "
17788 "library support (including emulation using B<lseek>(2)  on older kernels "
17789 "without the system calls) was added in glibc 2.1."
17790 msgstr ""
17791 "システムコール B<pread>()  と B<pwrite>()  は Linux にバージョン 2.1.60 で追"
17792 "加された。 i386 のシステムコールのエントリは 2.1.69 で追加された。 (システム"
17793 "コールを持たない古いカーネルでの B<lseek>(2)  を使ったエミュレーションを含め"
17794 "ると)  C ライブラリにおけるサポートは glibc 2.1 で追加された。"
17795
17796 #. type: Plain text
17797 #: build/C/man2/pread.2:125
17798 msgid ""
17799 "The B<pread>()  and B<pwrite>()  system calls are especially useful in "
17800 "multithreaded applications.  They allow multiple threads to perform I/O on "
17801 "the same file descriptor without being affected by changes to the file "
17802 "offset by other threads."
17803 msgstr ""
17804 "システムコール B<pread>() と B<pwrite>() は、特にマルチスレッドアプリケーショ"
17805 "ンで役に立つ。 これらを使うと、 他のスレッドによるファイルオフセットの変更の"
17806 "影響を受けることなく、 複数のスレッドが同じファイルディスクリプタに対して入出"
17807 "力を行うことができる。"
17808
17809 #. type: Plain text
17810 #: build/C/man2/pread.2:141
17811 msgid ""
17812 "On Linux, the underlying system calls were renamed in kernel 2.6: "
17813 "B<pread>()  became B<pread64>(), and B<pwrite>()  became B<pwrite64>().  The "
17814 "system call numbers remained the same.  The glibc B<pread>()  and "
17815 "B<pwrite>()  wrapper functions transparently deal with the change."
17816 msgstr ""
17817 "Linux では、裏で呼び出されるシステムコールの名前がカーネル 2.6 で変更され"
17818 "た。\n"
17819 "B<pread>() は B<pread64>() になり、 B<pwrite>() は B<pwrite64>() になった。\n"
17820 "システムコールの番号は変更されていない。\n"
17821 "glibc の B<pread>() と B<pwrite>() のラッパー関数はこれらの変更を吸収してい"
17822 "る。"
17823
17824 #. type: Plain text
17825 #: build/C/man2/pread.2:146 build/C/man2/truncate.2:253
17826 msgid ""
17827 "On some 32-bit architectures, the calling signature for these system calls "
17828 "differ, for the reasons described in B<syscall>(2)."
17829 msgstr ""
17830 "いくつかの 32 ビットアーキテクチャでは、これらのシステムコールの呼び出し時の"
17831 "シグネチャーが違っています。理由は B<syscall>(2) で説明されている通りです。"
17832
17833 #.  FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=43178
17834 #. type: Plain text
17835 #: build/C/man2/pread.2:158
17836 msgid ""
17837 "POSIX requires that opening a file with the B<O_APPEND> flag should have no "
17838 "effect on the location at which B<pwrite>()  writes data.  However, on "
17839 "Linux, if a file is opened with B<O_APPEND>, B<pwrite>()  appends data to "
17840 "the end of the file, regardless of the value of I<offset>."
17841 msgstr ""
17842 "POSIX では、B<O_APPEND> フラグを指定してファイルをオープンした場合、\n"
17843 "B<pwrite>() がデータを書き込む位置に影響を及ぼさないことが\n"
17844 "求められている。しかし、 Linux では、ファイルを B<O_APPEND> 付きで\n"
17845 "オープンした場合、 I<offset> の値に関わらず、\n"
17846 "B<pwrite>() はファイルの末尾にデータを追記する。"
17847
17848 #. type: Plain text
17849 #: build/C/man2/pread.2:163
17850 msgid "B<lseek>(2), B<read>(2), B<readv>(2), B<write>(2)"
17851 msgstr "B<lseek>(2), B<read>(2), B<readv>(2), B<write>(2)"
17852
17853 #. type: TH
17854 #: build/C/man2/set_thread_area.2:8
17855 #, no-wrap
17856 msgid "SET_THREAD_AREA"
17857 msgstr "SET_THREAD_AREA"
17858
17859 #. type: Plain text
17860 #: build/C/man2/set_thread_area.2:11
17861 msgid "set_thread_area - set a thread local storage (TLS) area"
17862 msgstr "set_thread_area - スレッド局所記憶 (TLS) 領域を設定する"
17863
17864 #. type: Plain text
17865 #: build/C/man2/set_thread_area.2:17
17866 msgid "B<int set_thread_area(struct user_desc *>I<u_info>B<);>"
17867 msgstr "B<int set_thread_area(struct user_desc *>I<u_info>B<);>"
17868
17869 #. type: Plain text
17870 #: build/C/man2/set_thread_area.2:33
17871 msgid ""
17872 "B<set_thread_area>()  sets an entry in the current thread's thread-local "
17873 "storage (TLS) array.  The TLS array entry set by B<set_thread_area>()  "
17874 "corresponds to the value of I<u_info-E<gt>entry_number> passed in by the "
17875 "user.  If this value is in bounds, B<set_thread_area>()  copies the TLS "
17876 "descriptor pointed to by I<u_info> into the thread's TLS array."
17877 msgstr ""
17878 "B<set_thread_area>()  は、カレントスレッドのスレッド局所記憶 (thread-local "
17879 "storage; TLS)  配列の中のエントリを設定する。 B<set_thread_area>()  により設"
17880 "定される TLS 配列のエントリは、ユーザから引き数として渡される I<u_info-"
17881 "E<gt>entry_number> の値に対応している。値が範囲内にある場合、 "
17882 "B<set_thread_area>()  は I<u_info> で指された TLS ディスクリプタをスレッドの "
17883 "TLS 配列にコピーする。"
17884
17885 #. type: Plain text
17886 #: build/C/man2/set_thread_area.2:44
17887 msgid ""
17888 "When B<set_thread_area>()  is passed an I<entry_number> of -1, it uses a "
17889 "free TLS entry.  If B<set_thread_area>()  finds a free TLS entry, the value "
17890 "of I<u_info-E<gt>entry_number> is set upon return to show which entry was "
17891 "changed."
17892 msgstr ""
17893 "I<entry_number> として -1 が渡された場合、 B<set_thread_area>()  は未使用 "
17894 "(free) の TLS エントリを使用する。 未使用の TLS エントリがあった場合、どのエ"
17895 "ントリが変更されたかが分かる ように終了時に I<u_info-E<gt>entry_number> の値"
17896 "が変更される。"
17897
17898 #. type: Plain text
17899 #: build/C/man2/set_thread_area.2:49
17900 msgid ""
17901 "B<set_thread_area>()  returns 0 on success, and -1 on failure, with I<errno> "
17902 "set appropriately."
17903 msgstr ""
17904 "B<set_thread_area>()  は成功した場合 0 を返す。失敗した場合は -1 を返し、 "
17905 "I<errno> を適切に設定する。"
17906
17907 #. type: TP
17908 #: build/C/man2/set_thread_area.2:56
17909 #, no-wrap
17910 msgid "B<ESRCH>"
17911 msgstr "B<ESRCH>"
17912
17913 #. type: Plain text
17914 #: build/C/man2/set_thread_area.2:59
17915 msgid "A free TLS entry could not be located."
17916 msgstr "未使用の TLS エントリが見つからなかった。"
17917
17918 #. type: Plain text
17919 #: build/C/man2/set_thread_area.2:63
17920 msgid "A version of B<set_thread_area>()  first appeared in Linux 2.5.29."
17921 msgstr "B<set_thread_area>()  は Linux 2.5.29 で初めて登場した。"
17922
17923 #. type: Plain text
17924 #: build/C/man2/set_thread_area.2:67
17925 msgid ""
17926 "B<set_thread_area>()  is Linux-specific and should not be used in programs "
17927 "that are intended to be portable."
17928 msgstr ""
17929 "B<set_thread_area>()  は Linux 独自であり、移植を意図したプログラムでは使用す"
17930 "べきではない。"
17931
17932 #. type: Plain text
17933 #: build/C/man2/set_thread_area.2:72
17934 msgid ""
17935 "Glibc does not provide a wrapper for this system call, since it is generally "
17936 "intended only for use by threading libraries.  In the unlikely event that "
17937 "you want to call it directly, use B<syscall>(2)."
17938 msgstr ""
17939 "このシステムコールは通常はスレッドライブラリでのみ使用されることを目的として"
17940 "用意されているため、 glibc はこのシステムコールに対するラッパー関数を提供して"
17941 "いない。おそらくないと思うが、このシステムコールを直接呼び出したい場合は "
17942 "B<syscall>(2) を使うこと。"
17943
17944 #. type: Plain text
17945 #: build/C/man2/set_thread_area.2:74
17946 msgid "B<get_thread_area>(2)"
17947 msgstr "B<get_thread_area>(2)"
17948
17949 #. type: TH
17950 #: build/C/man2/setup.2:34
17951 #, no-wrap
17952 msgid "SETUP"
17953 msgstr "SETUP"
17954
17955 #. type: TH
17956 #: build/C/man2/setup.2:34
17957 #, no-wrap
17958 msgid "2008-12-03"
17959 msgstr "2008-12-03"
17960
17961 #. type: Plain text
17962 #: build/C/man2/setup.2:37
17963 msgid "setup - setup devices and filesystems, mount root filesystem"
17964 msgstr ""
17965 "setup - デバイスとファイルシステムの初期化を行い、 ルートファイルシステムのマ"
17966 "ウントを行う"
17967
17968 #. type: Plain text
17969 #: build/C/man2/setup.2:41
17970 msgid "B<int setup(void);>"
17971 msgstr "B<int setup(void);>"
17972
17973 #. type: Plain text
17974 #: build/C/man2/setup.2:47
17975 msgid ""
17976 "B<setup>()  is called once from within I<linux/init/main.c>.  It calls "
17977 "initialization functions for devices and filesystems configured into the "
17978 "kernel and then mounts the root filesystem."
17979 msgstr ""
17980 "B<setup>()  は I<linux/init/main.c> の中で一度だけ呼ばれる。 カーネル内部のデ"
17981 "バイスとファイルシステムの初期化関数を呼び、 ルートファイルシステムのマウント"
17982 "を行う。"
17983
17984 #. type: Plain text
17985 #: build/C/man2/setup.2:53
17986 msgid ""
17987 "No user process may call B<setup>().  Any user process, even a process with "
17988 "superuser permission, will receive B<EPERM>."
17989 msgstr ""
17990 "ユーザープロセスからは B<setup>()  を呼びだすことはできない。 ユーザープロセ"
17991 "スからのアクセスは、たとえそのプロセスが スーパーユーザー権限を持っていても "
17992 "B<EPERM> を受け取ることになる。"
17993
17994 #. type: Plain text
17995 #: build/C/man2/setup.2:56
17996 msgid "B<setup>()  always returns -1 for a user process."
17997 msgstr "B<setup>()  はユーザープロセスに対して常に -1 を返す。"
17998
17999 #. type: Plain text
18000 #: build/C/man2/setup.2:62
18001 msgid "Since Linux 2.1.121, no such function exists anymore."
18002 msgstr "Linux 2.1.121 以降では、もはやこの関数は存在しない。"
18003
18004 #. type: Plain text
18005 #: build/C/man2/setup.2:65
18006 msgid ""
18007 "This function is Linux-specific, and should not be used in programs intended "
18008 "to be portable, or indeed in any programs at all."
18009 msgstr ""
18010 "この関数は Linux に特有のものであり、移植を考慮したプログラムでは 用いるべき"
18011 "ではない。それどころか、あらゆるプログラムで用いるべきではない。"
18012
18013 #. type: Plain text
18014 #: build/C/man2/setup.2:72
18015 msgid ""
18016 "The calling sequence varied: at some times B<setup>()  has had a single "
18017 "argument I<void\\ *BIOS> and at other times a single argument I<int magic>."
18018 msgstr ""
18019 "呼び出し手続きは変化してきた。 ある時は B<setup>() は一つの引数 I<void\\ "
18020 "*BIOS> を取っており、またある時には I<int magic> を一つの引数として取ってい"
18021 "た。"
18022
18023 #. type: TH
18024 #: build/C/man5/shells.5:28
18025 #, no-wrap
18026 msgid "SHELLS"
18027 msgstr "SHELLS"
18028
18029 #. type: Plain text
18030 #: build/C/man5/shells.5:31
18031 msgid "shells - pathnames of valid login shells"
18032 msgstr "shells - ログインシェルとして有効なファイルのパス名"
18033
18034 #. type: Plain text
18035 #: build/C/man5/shells.5:37
18036 msgid ""
18037 "I</etc/shells> is a text file which contains the full pathnames of valid "
18038 "login shells.  This file is consulted by B<chsh>(1)  and available to be "
18039 "queried by other programs."
18040 msgstr ""
18041 "I</etc/shells> はログインシェルとして有効なファイルのフルパスが書かれた テキ"
18042 "ストファイルである。 B<chsh>(1)  はこのファイルを参照する。 他のプログラムも"
18043 "このファイルを参照できる。"
18044
18045 #. type: Plain text
18046 #: build/C/man5/shells.5:43
18047 msgid ""
18048 "Be aware that there are programs which consult this file to find out if a "
18049 "user is a normal user; for example, FTP daemons traditionally disallow "
18050 "access to users with shells not included in this file."
18051 msgstr ""
18052 "注意して欲しいのだが、プログラムによっては、 ユーザーが通常のユーザーかどうか"
18053 "を判断する際に、このファイルの内容を参考にすることがある。例えば FTP デーモン"
18054 "は、ログインシェルがこのファイルに書かれていないユーザーからのアクセスを許さ"
18055 "ないのが以前から一般的である。"
18056
18057 #. type: Plain text
18058 #: build/C/man5/shells.5:45
18059 msgid "I</etc/shells>"
18060 msgstr "I</etc/shells>"
18061
18062 #. type: Plain text
18063 #: build/C/man5/shells.5:48
18064 msgid "I</etc/shells> may contain the following paths:"
18065 msgstr "I</etc/shells> には以下のようなパスが含まれているだろう。"
18066
18067 #. type: Plain text
18068 #: build/C/man5/shells.5:51
18069 msgid "I</bin/sh>"
18070 msgstr "I</bin/sh>"
18071
18072 #. type: Plain text
18073 #: build/C/man5/shells.5:53
18074 msgid "I</bin/bash>"
18075 msgstr "I</bin/bash>"
18076
18077 #. type: Plain text
18078 #: build/C/man5/shells.5:55
18079 msgid "I</bin/csh>"
18080 msgstr "I</bin/csh>"
18081
18082 #. type: Plain text
18083 #: build/C/man5/shells.5:59
18084 msgid "B<chsh>(1), B<getusershell>(3)"
18085 msgstr "B<chsh>(1), B<getusershell>(3)"
18086
18087 #. type: TH
18088 #: build/C/man3/sleep.3:26
18089 #, no-wrap
18090 msgid "SLEEP"
18091 msgstr "SLEEP"
18092
18093 #. type: TH
18094 #: build/C/man3/sleep.3:26
18095 #, no-wrap
18096 msgid "2010-02-03"
18097 msgstr "2010-02-03"
18098
18099 #. type: Plain text
18100 #: build/C/man3/sleep.3:29
18101 msgid "sleep - sleep for the specified number of seconds"
18102 msgstr "sleep - 指定の秒数の間だけ休止する"
18103
18104 #. type: Plain text
18105 #: build/C/man3/sleep.3:34
18106 #, no-wrap
18107 msgid "B<unsigned int sleep(unsigned int >I<seconds>B<);>\n"
18108 msgstr "B<unsigned int sleep(unsigned int >I<seconds>B<);>\n"
18109
18110 #. type: Plain text
18111 #: build/C/man3/sleep.3:40
18112 msgid ""
18113 "B<sleep>()  makes the calling thread sleep until I<seconds> seconds have "
18114 "elapsed or a signal arrives which is not ignored."
18115 msgstr ""
18116 "B<sleep>()  は、呼び出したスレッドを I<seconds> 秒間または無視されないシグナ"
18117 "ルが到着するまで休止する。"
18118
18119 #. type: Plain text
18120 #: build/C/man3/sleep.3:44
18121 msgid ""
18122 "Zero if the requested time has elapsed, or the number of seconds left to "
18123 "sleep, if the call was interrupted by a signal handler."
18124 msgstr ""
18125 "要求された時間が過ぎた場合はゼロを返す。 呼び出しがシグナルハンドラーに割り込"
18126 "まれた場合は、 休止の残り時間を返す。"
18127
18128 #. type: Plain text
18129 #: build/C/man3/sleep.3:55
18130 msgid ""
18131 "B<sleep>()  may be implemented using B<SIGALRM>; mixing calls to "
18132 "B<alarm>(2)  and B<sleep>()  is a bad idea."
18133 msgstr ""
18134 "B<sleep>()  は B<SIGALRM> を用いて実装されている。そのため、 B<alarm>(2)  と "
18135 "B<sleep>()  を混ぜて使用するのは、まずい考えである。"
18136
18137 #. type: Plain text
18138 #: build/C/man3/sleep.3:61
18139 msgid ""
18140 "Using B<longjmp>(3)  from a signal handler or modifying the handling of "
18141 "B<SIGALRM> while sleeping will cause undefined results."
18142 msgstr ""
18143 "休止中にシグナルハンドラーから B<longjmp>(3)  を使用することや B<SIGALRM> の"
18144 "ハンドリングを変更することは、定義されていない結果を生む。"
18145
18146 #. type: Plain text
18147 #: build/C/man3/sleep.3:66
18148 msgid "B<alarm>(2), B<nanosleep>(2), B<signal>(2), B<signal>(7)"
18149 msgstr "B<alarm>(2), B<nanosleep>(2), B<signal>(2), B<signal>(7)"
18150
18151 #. type: TH
18152 #: build/C/man3/swab.3:31
18153 #, no-wrap
18154 msgid "SWAB"
18155 msgstr "SWAB"
18156
18157 #. type: TH
18158 #: build/C/man3/swab.3:31
18159 #, no-wrap
18160 msgid "2014-02-25"
18161 msgstr "2014-02-25"
18162
18163 #. type: Plain text
18164 #: build/C/man3/swab.3:34
18165 msgid "swab - swap adjacent bytes"
18166 msgstr "swab - 隣接するバイトを交換する"
18167
18168 #. type: Plain text
18169 #: build/C/man3/swab.3:38
18170 #, no-wrap
18171 msgid ""
18172 "B<#define _XOPEN_SOURCE>       /* See feature_test_macros(7) */\n"
18173 "B<#include E<lt>unistd.hE<gt>>\n"
18174 msgstr ""
18175 "B<#define _XOPEN_SOURCE>       /* feature_test_macros(7) 参照 */\n"
18176 "B<#include E<lt>unistd.hE<gt>>\n"
18177
18178 #. type: Plain text
18179 #: build/C/man3/swab.3:40
18180 #, no-wrap
18181 msgid "B<void swab(const void *>I<from>B<, void *>I<to>B<, ssize_t >I<n>B<);>\n"
18182 msgstr "B<void swab(const void *>I<from>B<, void *>I<to>B<, ssize_t >I<n>B<);>\n"
18183
18184 #. type: Plain text
18185 #: build/C/man3/swab.3:55
18186 msgid ""
18187 "The B<swab>()  function copies I<n> bytes from the array pointed to by "
18188 "I<from> to the array pointed to by I<to>, exchanging adjacent even and odd "
18189 "bytes.  This function is used to exchange data between machines that have "
18190 "different low/high byte ordering."
18191 msgstr ""
18192 "B<swab>()  関数は、I<from> で指された配列から I<n> バイトを I<to> で指された"
18193 "配列に、隣接した偶数/奇数バイトを交換しながらコピーする。 この関数は異なるバ"
18194 "イトオーダーを持つマシン間でのデータ交換に 使用される。"
18195
18196 #. type: Plain text
18197 #: build/C/man3/swab.3:68
18198 msgid ""
18199 "This function does nothing when I<n> is negative.  When I<n> is positive and "
18200 "odd, it handles I<n-1> bytes as above, and does something unspecified with "
18201 "the last byte.  (In other words, I<n> should be even.)"
18202 msgstr ""
18203 "I<n> が負の数の場合、この関数は何もしない。 I<n> が正でかつ奇数の場合、"
18204 "I<n-1> バイトは上記の通り扱い、 最後のバイトについては未規定の動作をする (言"
18205 "い換えれば、I<n> は偶数にするべきである)。"
18206
18207 #. type: Plain text
18208 #: build/C/man3/swab.3:72
18209 msgid "The B<swab>()  function returns no value."
18210 msgstr "B<swab>()  関数は、値を返さない。"
18211
18212 #. type: Plain text
18213 #: build/C/man3/swab.3:77
18214 msgid "The B<swab>()  function is thread-safe."
18215 msgstr "B<swab>() 関数はスレッドセーフである。"
18216
18217 #. type: Plain text
18218 #: build/C/man3/swab.3:81
18219 msgid "B<bstring>(3)"
18220 msgstr "B<bstring>(3)"
18221
18222 #. type: TH
18223 #: build/C/man2/swapon.2:42
18224 #, no-wrap
18225 msgid "SWAPON"
18226 msgstr "SWAPON"
18227
18228 #. type: Plain text
18229 #: build/C/man2/swapon.2:45
18230 msgid "swapon, swapoff - start/stop swapping to file/device"
18231 msgstr "swapon, swapoff - ファイル/デバイスへのスワップを開始/停止する"
18232
18233 #. type: Plain text
18234 #: build/C/man2/swapon.2:49
18235 msgid "B<#include E<lt>sys/swap.hE<gt>>"
18236 msgstr "B<#include E<lt>sys/swap.hE<gt>>"
18237
18238 #. type: Plain text
18239 #: build/C/man2/swapon.2:51
18240 msgid "B<int swapon(const char *>I<path>B<, int >I<swapflags>B<);>"
18241 msgstr "B<int swapon(const char *>I<path>B<, int >I<swapflags>B<);>"
18242
18243 #. type: Plain text
18244 #: build/C/man2/swapon.2:53
18245 msgid "B<int swapoff(const char *>I<path>B<);>"
18246 msgstr "B<int swapoff(const char *>I<path>B<);>"
18247
18248 #. type: Plain text
18249 #: build/C/man2/swapon.2:60
18250 msgid ""
18251 "B<swapon>()  sets the swap area to the file or block device specified by "
18252 "I<path>.  B<swapoff>()  stops swapping to the file or block device specified "
18253 "by I<path>."
18254 msgstr ""
18255 "B<swapon>()  は I<path> で指定されたファイルやブロックデバイスにスワップ領域"
18256 "を設定する。 B<swapoff>()  は I<path> で指定されたファイルやブロックデバイス"
18257 "へのスワップを停止する。"
18258
18259 #. type: Plain text
18260 #: build/C/man2/swapon.2:70
18261 msgid ""
18262 "If the B<SWAP_FLAG_PREFER> flag is specified in the B<swapon>()  "
18263 "I<swapflags> argument, the new swap area will have a higher priority than "
18264 "default.  The priority is encoded within I<swapflags> as:"
18265 msgstr ""
18266 "B<swapon>() の I<swapflags> 引き数に B<SWAP_FLAG_PREFER> フラグが指定された場"
18267 "合、\n"
18268 "新しいスワップ領域はデフォルトよりも高い優先度を持つ。\n"
18269 "優先度は以下のように変換されて I<swapflags> に指定する。"
18270
18271 #. type: Plain text
18272 #: build/C/man2/swapon.2:73
18273 msgid "I<(prio E<lt>E<lt> SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK>"
18274 msgstr "I<(prio E<lt>E<lt> SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK>"
18275
18276 #. type: Plain text
18277 #: build/C/man2/swapon.2:85
18278 msgid ""
18279 "If the B<SWAP_FLAG_DISCARD> flag is specified in the B<swapon>()  "
18280 "I<swapflags> argument, freed swap pages will be discarded before they are "
18281 "reused, if the swap device supports the discard or trim operation.  (This "
18282 "may improve performance on some Solid State Devices, but often it does "
18283 "not.)  See also NOTES."
18284 msgstr ""
18285 "B<SWAP_FLAG_DISCARD> フラグが B<swapon>() の I<swapflags> 引き数に指定された"
18286 "場合、\n"
18287 "スワップデバイスが破棄 (discard) 操作や trim 操作をサポートしている場合に"
18288 "は、\n"
18289 "解放されたスワップページは再利用される前に破棄される\n"
18290 "(これにより、SSD (Solid State Device) によっては性能が向上することがある"
18291 "が、\n"
18292 "たいていは性能の向上はない)。\n"
18293 "「注意」も参照のこと。"
18294
18295 #. type: Plain text
18296 #: build/C/man2/swapon.2:89
18297 msgid ""
18298 "These functions may be used only by a privileged process (one having the "
18299 "B<CAP_SYS_ADMIN> capability)."
18300 msgstr ""
18301 "これらの関数は特権プロセス (B<CAP_SYS_ADMIN> ケーパビリティ (capability) を持"
18302 "つプロセス) のみが使用できる。"
18303
18304 #. type: SS
18305 #: build/C/man2/swapon.2:89
18306 #, no-wrap
18307 msgid "Priority"
18308 msgstr "優先度"
18309
18310 #. type: Plain text
18311 #: build/C/man2/swapon.2:94
18312 msgid ""
18313 "Each swap area has a priority, either high or low.  The default priority is "
18314 "low.  Within the low-priority areas, newer areas are even lower priority "
18315 "than older areas."
18316 msgstr ""
18317 "それぞれのスワップ領域は高 (high) と低 (low) のどちらかの優先度を持つ。 デ"
18318 "フォルトの優先度は低である。 低い優先度の領域において、新しい領域は古い領域よ"
18319 "りさらに低い 優先度を持つ。"
18320
18321 #. type: Plain text
18322 #: build/C/man2/swapon.2:100
18323 msgid ""
18324 "All priorities set with I<swapflags> are high-priority, higher than "
18325 "default.  They may have any nonnegative value chosen by the caller.  Higher "
18326 "numbers mean higher priority."
18327 msgstr ""
18328 "I<swapflags> が設定されたものは全て高い優先度となり、デフォルトよりも高い優先"
18329 "度を持つ。 使用者はそれらに負でない値が指定できる。 大きな数字は高い優先度を"
18330 "意味する。"
18331
18332 #. type: Plain text
18333 #: build/C/man2/swapon.2:108
18334 msgid ""
18335 "Swap pages are allocated from areas in priority order, highest priority "
18336 "first.  For areas with different priorities, a higher-priority area is "
18337 "exhausted before using a lower-priority area.  If two or more areas have the "
18338 "same priority, and it is the highest priority available, pages are allocated "
18339 "on a round-robin basis between them."
18340 msgstr ""
18341 "高い優先度の領域から順にスワップページとして使用される。 より低い優先度の領域"
18342 "を使用する前により高い優先度の 領域を使い切る。もし二つ以上の領域が同じ優先度"
18343 "を持ち、 使える中で一番高い優先度であれば、それらのページは間で ラウンドロビ"
18344 "ン方式で配分される。"
18345
18346 #. type: Plain text
18347 #: build/C/man2/swapon.2:111
18348 msgid ""
18349 "As of Linux 1.3.6, the kernel usually follows these rules, but there are "
18350 "exceptions."
18351 msgstr ""
18352 "Linux 1.3.6 において、カーネルは通常はこれらの規則に従っている。 しかし例外も"
18353 "存在している。"
18354
18355 #. type: Plain text
18356 #: build/C/man2/swapon.2:124
18357 msgid ""
18358 "(for B<swapon>())  The specified I<path> is already being used as a swap "
18359 "area."
18360 msgstr ""
18361 "(B<swapon>()  において) 指定された I<path> が既にスワップ領域として使用されて"
18362 "いる。"
18363
18364 #. type: Plain text
18365 #: build/C/man2/swapon.2:129
18366 msgid ""
18367 "The file I<path> exists, but refers neither to a regular file nor to a block "
18368 "device;"
18369 msgstr ""
18370 "ファイル I<path> は存在するが、通常のファイルもブロックデバイスも参照していな"
18371 "い。"
18372
18373 #. type: Plain text
18374 #: build/C/man2/swapon.2:134
18375 msgid ""
18376 "(B<swapon>())  The indicated path does not contain a valid swap signature or "
18377 "resides on an in-memory filesystem such as tmpfs."
18378 msgstr ""
18379 "(B<swapon>()) 指定されたパスが有効なスワップの署名 (signature) を含んでいない"
18380 "か、tmpfs のようなインメモリファイルシステム上にある。"
18381
18382 #. type: TP
18383 #: build/C/man2/swapon.2:134
18384 #, no-wrap
18385 msgid "B<EINVAL> (since Linux 3.4)"
18386 msgstr "B<EINVAL> (Linux 3.4 以降)"
18387
18388 #. type: Plain text
18389 #: build/C/man2/swapon.2:139
18390 msgid "(B<swapon>())  An invalid flag value was specified in I<flags>."
18391 msgstr "(B<swapon>()) I<flags> に無効なフラグ値が指定された。"
18392
18393 #. type: Plain text
18394 #: build/C/man2/swapon.2:144
18395 msgid "(B<swapoff>())  I<path> is not currently a swap area."
18396 msgstr "(B<swapoff>()) I<path> が現在スワップ領域ではない。"
18397
18398 #. type: Plain text
18399 #: build/C/man2/swapon.2:152
18400 msgid "The file I<path> does not exist."
18401 msgstr "ファイル I<path> が存在しない。"
18402
18403 #. type: Plain text
18404 #: build/C/man2/swapon.2:155
18405 msgid "The system has insufficient memory to start swapping."
18406 msgstr "スワップを開始するのに十分なメモリーがシステムにない。"
18407
18408 #. type: Plain text
18409 #: build/C/man2/swapon.2:162
18410 msgid ""
18411 "The caller does not have the B<CAP_SYS_ADMIN> capability.  Alternatively, "
18412 "the maximum number of swap files are already in use; see NOTES below."
18413 msgstr ""
18414 "使用者が B<CAP_SYS_ADMIN> ケーパビリティを持っていない。 もしくは、最大数のス"
18415 "ワップファイルがすでに使用されている (下記の「注意」の節を参照)。"
18416
18417 #. type: Plain text
18418 #: build/C/man2/swapon.2:168
18419 msgid ""
18420 "These functions are Linux-specific and should not be used in programs "
18421 "intended to be portable.  The second I<swapflags> argument was introduced in "
18422 "Linux 1.3.2."
18423 msgstr ""
18424 "これらの関数は Linux 特有であり、移植を意図したプログラムでは 使用してはいけ"
18425 "ない。 二番目の I<swapflags> 引き数は Linux 1.3.2 から導入された。"
18426
18427 #. type: Plain text
18428 #: build/C/man2/swapon.2:171
18429 msgid "The partition or path must be prepared with B<mkswap>(8)."
18430 msgstr ""
18431 "パーティションやパスは B<mkswap>(8)  によって準備されていなければならない。"
18432
18433 #. type: Plain text
18434 #: build/C/man2/swapon.2:191
18435 msgid ""
18436 "There is an upper limit on the number of swap files that may be used, "
18437 "defined by the kernel constant B<MAX_SWAPFILES>.  Before kernel 2.4.10, "
18438 "B<MAX_SWAPFILES> has the value 8; since kernel 2.4.10, it has the value 32.  "
18439 "Since kernel 2.6.18, the limit is decreased by 2 (thus: 30)  if the kernel "
18440 "is built with the B<CONFIG_MIGRATION> option (which reserves two swap table "
18441 "entries for the page migration features of B<mbind>(2)  and "
18442 "B<migrate_pages>(2)).  Since kernel 2.6.32, the limit is further decreased "
18443 "by 1 if the kernel is built with the B<CONFIG_MEMORY_FAILURE> option."
18444 msgstr ""
18445 "使用できるスワップファイルの数には上限があり、その上限は カーネル定数 "
18446 "B<MAX_SWAPFILES> で定義される。 B<MAX_SWAPFILES> の値は、カーネル 2.4.10 より"
18447 "前では 8、 カーネル 2.4.10 以降では 32 である。 カーネル 2.6.18 以降では、"
18448 "カーネルが B<CONFIG_MIGRATION> オプションを有効にして作成された場合、 この上"
18449 "限が 2 少ない値 (つまり 30) となる (このカーネルでは、 B<mbind>(2)  と "
18450 "B<migrate_pages>(2)  のページマイグレーション機能用にスワップテーブルのエント"
18451 "リーが 二つ予約される)。 カーネル 2.6.32 以降では、カーネルが "
18452 "B<CONFIG_MEMORY_FAILURE> オプションを有効にして作成された場合、 この上限がさ"
18453 "らに 1 少ない値となる。"
18454
18455 #.  To be precise: 2.6.35.5
18456 #. type: Plain text
18457 #: build/C/man2/swapon.2:202
18458 msgid ""
18459 "Discard of swap pages was introduced in kernel 2.6.29, then made conditional "
18460 "on the B<SWAP_FLAG_DISCARD> flag in kernel 2.6.36, which still discards the "
18461 "entire swap area when B<swapon>()  is called, even if that flag bit is not "
18462 "set."
18463 msgstr ""
18464 "スワップページの破棄は、カーネル 2.6.29 で導入され、その後カーネル 2.6.36 "
18465 "で\n"
18466 "B<SWAP_FLAG_DISCARD> フラグが指定された場合にだけ実行されるようになったが、\n"
18467 "今でも、このフラグビットが指定されていない場合であっても、\n"
18468 "B<swapon> が呼び出された際にスワップ領域全体の破棄が行われる。"
18469
18470 #. type: Plain text
18471 #: build/C/man2/swapon.2:206
18472 msgid "B<mkswap>(8), B<swapoff>(8), B<swapon>(8)"
18473 msgstr "B<mkswap>(8), B<swapoff>(8), B<swapon>(8)"
18474
18475 #. type: TH
18476 #: build/C/man2/syscall.2:42
18477 #, no-wrap
18478 msgid "SYSCALL"
18479 msgstr "SYSCALL"
18480
18481 #. type: Plain text
18482 #: build/C/man2/syscall.2:45
18483 msgid "syscall - indirect system call"
18484 msgstr "syscall - 間接システムコール"
18485
18486 #. type: Plain text
18487 #: build/C/man2/syscall.2:50
18488 #, no-wrap
18489 msgid ""
18490 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
18491 "B<#include E<lt>unistd.hE<gt>>\n"
18492 "B<#include E<lt>sys/syscall.hE<gt>   >/* For SYS_xxx definitions */\n"
18493 msgstr ""
18494 "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
18495 "B<#include E<lt>unistd.hE<gt>>\n"
18496 "B<#include E<lt>sys/syscall.hE<gt>   >/* SYS_xxx の定義用 */\n"
18497
18498 #. type: Plain text
18499 #: build/C/man2/syscall.2:52
18500 #, no-wrap
18501 msgid "B<long syscall(long >I<number>B<, ...);>\n"
18502 msgstr "B<long syscall(long >I<number>B<, ...);>\n"
18503
18504 #. type: Plain text
18505 #: build/C/man2/syscall.2:64
18506 msgid ""
18507 "B<syscall>()  is a small library function that invokes the system call whose "
18508 "assembly language interface has the specified I<number> with the specified "
18509 "arguments.  Employing B<syscall>()  is useful, for example, when invoking a "
18510 "system call that has no wrapper function in the C library."
18511 msgstr ""
18512 "B<syscall>() は、システムコールを起動する小さなライブラリ関数で、 I<number> "
18513 "で指定されたアセンブリ言語インターフェースのシステムコールを、指定された引き"
18514 "数をつけて実行する。 B<syscall>() が役に立つのは、例えば C ライブラリにラッ"
18515 "パー関数が存在しないシステムコールを呼び出したい場合である。"
18516
18517 #. type: Plain text
18518 #: build/C/man2/syscall.2:71
18519 msgid ""
18520 "B<syscall>()  saves CPU registers before making the system call, restores "
18521 "the registers upon return from the system call, and stores any error code "
18522 "returned by the system call in B<errno>(3)  if an error occurs."
18523 msgstr ""
18524 "B<syscall>() は、システムコールを行う前に CPU レジスタを保存し、システムコー"
18525 "ルから返った際にレジスタを復元し、エラーが発生した場合はシステムコールが返し"
18526 "たエラーコードを B<errno>(3) に格納する。"
18527
18528 #. type: Plain text
18529 #: build/C/man2/syscall.2:74
18530 msgid ""
18531 "Symbolic constants for system call numbers can be found in the header file "
18532 "I<E<lt>sys/syscall.hE<gt>>."
18533 msgstr ""
18534 "システムコールのシンボル定数は、ヘッダファイル I<E<lt>sys/syscall.hE<gt>> に"
18535 "書かれている。"
18536
18537 #. type: Plain text
18538 #: build/C/man2/syscall.2:80
18539 msgid ""
18540 "The return value is defined by the system call being invoked.  In general, a "
18541 "0 return value indicates success.  A -1 return value indicates an error, and "
18542 "an error code is stored in I<errno>."
18543 msgstr ""
18544 "返り値は呼び出されたシステムコールによって定義される。 一般に、返り値 0 は成"
18545 "功を表す。 -1 はエラーを表し、エラーコードは I<errno> に入れられる。"
18546
18547 #. type: Plain text
18548 #: build/C/man2/syscall.2:84
18549 msgid "B<syscall>()  first appeared in 4BSD."
18550 msgstr "B<syscall>()  は 4BSD で最初に登場した。"
18551
18552 #. type: SS
18553 #: build/C/man2/syscall.2:84
18554 #, no-wrap
18555 msgid "Architecture-specific requirements"
18556 msgstr "アーキテクチャ固有の要件"
18557
18558 #. type: Plain text
18559 #: build/C/man2/syscall.2:95
18560 msgid ""
18561 "Each architecture ABI has its own requirements on how system call arguments "
18562 "are passed to the kernel.  For system calls that have a glibc wrapper (e.g., "
18563 "most system calls), glibc handles the details of copying arguments to the "
18564 "right registers in a manner suitable for the architecture.  However, when "
18565 "using B<syscall>()  to make a system call, the caller might need to handle "
18566 "architecture-dependent details; this requirement is most commonly "
18567 "encountered on certain 32-bit architectures."
18568 msgstr ""
18569 "各アーキテクチャの ABI には、 システムコールの引き数のカーネルへの渡し方に関"
18570 "する独自の要件がある。\n"
18571 "(ほとんどのシステムコールのように) glibc ラッパー関数があるシステムコールで"
18572 "は、 glibc が詳細を処理し、アーキテクチャに応じた方法で引き数が適切なレジスタ"
18573 "にコピーされる。 しかし、 システムコールを呼び出すのに B<syscall>() を使う場"
18574 "合には、 呼び出し側でアーキテクチャ依存の詳細を処理しなければならない場合があ"
18575 "る。 これはいくつかの 32 ビットアーキテクチャでは非常によくあることだ。"
18576
18577 #. type: Plain text
18578 #: build/C/man2/syscall.2:106
18579 msgid ""
18580 "For example, on the ARM architecture Embedded ABI (EABI), a 64-bit value (e."
18581 "g., I<long long>)  must be aligned to an even register pair.  Thus, using "
18582 "B<syscall>()  instead of the wrapper provided by glibc, the B<readahead>()  "
18583 "system call would be invoked as follows on the ARM architecture with the "
18584 "EABI:"
18585 msgstr ""
18586 "例えば、ARM アーキテクチャの Embedded ABI (EABI) では、 (I<long long> など"
18587 "の) 64 ビット値は偶数番地のレジスタのペアに境界があっていなければならない。し"
18588 "たがって、 glibc が提供するラッパー関数ではなく B<syscall>() を使う場合に"
18589 "は、 B<readahead>() システムコールは ARM アーキテクチャの EABI では以下のよう"
18590 "にして起動されることになる。"
18591
18592 #. type: Plain text
18593 #: build/C/man2/syscall.2:113
18594 #, no-wrap
18595 msgid ""
18596 "syscall(SYS_readahead, fd, 0,\n"
18597 "        (unsigned int) (offset E<gt>E<gt> 32),\n"
18598 "        (unsigned int) (offset & 0xFFFFFFFF),\n"
18599 "        count);\n"
18600 msgstr ""
18601 "syscall(SYS_readahead, fd, 0,\n"
18602 "        (unsigned int) (offset E<gt>E<gt> 32),\n"
18603 "        (unsigned int) (offset & 0xFFFFFFFF),\n"
18604 "        count);\n"
18605
18606 #. type: Plain text
18607 #: build/C/man2/syscall.2:127
18608 msgid ""
18609 "Since the offset argument is 64 bits, and the first argument (I<fd>)  is "
18610 "passed in I<r0>, the caller must manually split and align the 64-bit value "
18611 "so that it is passed in the I<r2>/I<r3> register pair.  That means inserting "
18612 "a dummy value into I<r1> (the second argument of 0)."
18613 msgstr ""
18614 "オフセット引き数は 64 ビットで、最初の引き数 (I<fd>) は I<r0> で渡されるの"
18615 "で、呼び出し側では手動で 64 ビット値を分割して境界を合わせて、 64 ビット値が "
18616 "I<r2>/I<r3> レジスタペアで渡されるようにしなければならない。このため、 I<r1> "
18617 "(2 番目の引数 0) としてダミー値を挿入している。"
18618
18619 #.  Mike Frysinger: this issue ends up forcing MIPS
18620 #.  O32 to take 7 arguments to syscall()
18621 #. type: Plain text
18622 #: build/C/man2/syscall.2:132
18623 msgid ""
18624 "Similar issues can occur on MIPS with the O32 ABI, on PowerPC with the 32-"
18625 "bit ABI, and on Xtensa."
18626 msgstr ""
18627 "同様のことが、 MIPS の O32 ABI、 PowerPC の 32 ビット ABI や Xtensa でも起こ"
18628 "りうる。"
18629
18630 #. type: Plain text
18631 #: build/C/man2/syscall.2:143
18632 msgid ""
18633 "The affected system calls are B<fadvise64_64>(2), B<ftruncate64>(2), "
18634 "B<posix_fadvise>(2), B<pread64>(2), B<pwrite64>(2), B<readahead>(2), "
18635 "B<sync_file_range>(2), and B<truncate64>(2)."
18636 msgstr ""
18637 "次のシステムコールに影響がある: B<fadvise64_64>(2), B<ftruncate64>(2), "
18638 "B<posix_fadvise>(2), B<pread64>(2), B<pwrite64>(2), B<readahead>(2), "
18639 "B<sync_file_range>(2), B<truncate64>(2)"
18640
18641 #. type: SS
18642 #: build/C/man2/syscall.2:143
18643 #, no-wrap
18644 msgid "Architecture calling conventions"
18645 msgstr "アーキテクチャ毎の呼び出し規約"
18646
18647 #. type: Plain text
18648 #: build/C/man2/syscall.2:147
18649 msgid ""
18650 "Every architecture has its own way of invoking and passing arguments to the "
18651 "kernel.  The details for various architectures are listed in the two tables "
18652 "below."
18653 msgstr ""
18654 "各アーキテクチャには、それぞれ独自のシステムコール起動方法とカーネルへの引き"
18655 "数の渡し方がある。 各種のアーキテクチャの詳細を以下の 2 つの表にまとめる。"
18656
18657 #. type: Plain text
18658 #: build/C/man2/syscall.2:154
18659 msgid ""
18660 "The first table lists the instruction used to transition to kernel mode, "
18661 "(which might not be the fastest or best way to transition to the kernel, so "
18662 "you might have to refer to B<vdso>(7)), the register used to indicate the "
18663 "system call number, and the register used to return the system call result."
18664 msgstr ""
18665 "最初の表は、 カーネルモードに遷移するのに使用される命令、 システムコール番号"
18666 "を示すのに使用されるレジスタ、 システムコールの結果を返すのに使用されるレジス"
18667 "タの一覧である (なお、 ここに載っているカーネルモードに遷移するのに使用される"
18668 "命令は、 カーネルモードに遷移する最速や最善の方法でない場合もあるので、 "
18669 "B<vdso>(7) を参照する必要があるかもしれない)。"
18670
18671 #. type: tbl table
18672 #: build/C/man2/syscall.2:159
18673 #, no-wrap
18674 msgid "arch/ABI\tinstruction\tsyscall #\tretval\tNotes\n"
18675 msgstr "arch/ABI\tinstruction\tsyscall #\tretval\tNotes\n"
18676
18677 #. type: tbl table
18678 #: build/C/man2/syscall.2:161
18679 #, no-wrap
18680 msgid "arm/OABI\tswi NR\t-\ta1\tNR is syscall #\n"
18681 msgstr "arm/OABI\tswi NR\t-\ta1\tNR はシステムコール番号\n"
18682
18683 #. type: tbl table
18684 #: build/C/man2/syscall.2:162
18685 #, no-wrap
18686 msgid "arm/EABI\tswi 0x0\tr7\tr0\n"
18687 msgstr "arm/EABI\tswi 0x0\tr7\tr0\n"
18688
18689 #. type: tbl table
18690 #: build/C/man2/syscall.2:163
18691 #, no-wrap
18692 msgid "arm64\tsvc #0\tx8\tx0\n"
18693 msgstr "arm64\tsvc #0\tx8\tx0\n"
18694
18695 #. type: tbl table
18696 #: build/C/man2/syscall.2:164
18697 #, no-wrap
18698 msgid "blackfin\texcpt 0x0\tP0\tR0\n"
18699 msgstr "blackfin\texcpt 0x0\tP0\tR0\n"
18700
18701 #. type: tbl table
18702 #: build/C/man2/syscall.2:165
18703 #, no-wrap
18704 msgid "i386\tint $0x80\teax\teax\n"
18705 msgstr "i386\tint $0x80\teax\teax\n"
18706
18707 #. type: tbl table
18708 #: build/C/man2/syscall.2:166
18709 #, no-wrap
18710 msgid "ia64\tbreak 0x100000\tr15\tr8\tSee below\n"
18711 msgstr "ia64\tbreak 0x100000\tr15\tr8\t下記参照\n"
18712
18713 #. type: tbl table
18714 #: build/C/man2/syscall.2:167
18715 #, no-wrap
18716 msgid "mips\tsyscall\tv0\tv0\tSee below\n"
18717 msgstr "mips\tsyscall\tv0\tv0\t下記参照\n"
18718
18719 #. type: tbl table
18720 #: build/C/man2/syscall.2:168
18721 #, no-wrap
18722 msgid "parisc\tble 0x100(%sr2, %r0)\tr20\tr28\n"
18723 msgstr "parisc\tble 0x100(%sr2, %r0)\tr20\tr28\n"
18724
18725 #. type: tbl table
18726 #: build/C/man2/syscall.2:169
18727 #, no-wrap
18728 msgid "s390\tsvc 0\tr1\tr2\tSee below\n"
18729 msgstr "s390\tsvc 0\tr1\tr2\t下記参照\n"
18730
18731 #. type: tbl table
18732 #: build/C/man2/syscall.2:170
18733 #, no-wrap
18734 msgid "s390x\tsvc 0\tr1\tr2\tSee below\n"
18735 msgstr "s390\tsvc 0\tr1\tr2\t下記参照\n"
18736
18737 #. type: tbl table
18738 #: build/C/man2/syscall.2:171
18739 #, no-wrap
18740 msgid "sparc/32\tt 0x10\tg1\to0\n"
18741 msgstr "sparc/32\tt 0x10\tg1\to0\n"
18742
18743 #. type: tbl table
18744 #: build/C/man2/syscall.2:172
18745 #, no-wrap
18746 msgid "sparc/64\tt 0x6d\tg1\to0\n"
18747 msgstr "sparc/64\tt 0x6d\tg1\to0\n"
18748
18749 #. type: tbl table
18750 #: build/C/man2/syscall.2:173
18751 #, no-wrap
18752 msgid "x86_64\tsyscall\trax\trax\n"
18753 msgstr "x86_64\tsyscall\trax\trax\n"
18754
18755 #. type: Plain text
18756 #: build/C/man2/syscall.2:178
18757 msgid ""
18758 "For s390 and s390x, NR (the system call number)  may be passed directly with "
18759 "\"svc NR\" if it is less than 256."
18760 msgstr ""
18761 "s390 と s390x では、 NR (システムコール番号) が 256 未満の場合 \"svc NR\" で "
18762 "NR が直接渡される場合がある。"
18763
18764 #. type: Plain text
18765 #: build/C/man2/syscall.2:186
18766 msgid ""
18767 "On a few architectures, a register is used to indicate simple boolean "
18768 "failure of the system call: ia64 uses I<r10> for this purpose, and mips uses "
18769 "I<a3>."
18770 msgstr ""
18771 "少ないがいくつかのアーキテクチャーでは、 システムコールの失敗を示す単純な真偽"
18772 "値がレジスターを使って通知される。この用途に ia64 は I<r10> を使用し、 mips "
18773 "は I<a3> を使用する。"
18774
18775 #. type: Plain text
18776 #: build/C/man2/syscall.2:192
18777 msgid ""
18778 "The second table shows the registers used to pass the system call arguments."
18779 msgstr ""
18780 "2 つ目の表は、システムコールの引き数を渡すのに使用されるレジスタの一覧であ"
18781 "る。"
18782
18783 #. type: tbl table
18784 #: build/C/man2/syscall.2:197
18785 #, no-wrap
18786 msgid "arch/ABI\targ1\targ2\targ3\targ4\targ5\targ6\targ7\tNotes\n"
18787 msgstr "arch/ABI\targ1\targ2\targ3\targ4\targ5\targ6\targ7\t備考\n"
18788
18789 #. type: tbl table
18790 #: build/C/man2/syscall.2:199
18791 #, no-wrap
18792 msgid "arm/OABI\ta1\ta2\ta3\ta4\tv1\tv2\tv3\n"
18793 msgstr "arm/OABI\ta1\ta2\ta3\ta4\tv1\tv2\tv3\n"
18794
18795 #. type: tbl table
18796 #: build/C/man2/syscall.2:200
18797 #, no-wrap
18798 msgid "arm/EABI\tr0\tr1\tr2\tr3\tr4\tr5\tr6\n"
18799 msgstr "arm/EABI\tr0\tr1\tr2\tr3\tr4\tr5\tr6\n"
18800
18801 #. type: tbl table
18802 #: build/C/man2/syscall.2:201
18803 #, no-wrap
18804 msgid "arm64\tx0\tx1\tx2\tx3\tx4\tx5\t-\n"
18805 msgstr "arm64\tx0\tx1\tx2\tx3\tx4\tx5\t-\n"
18806
18807 #. type: tbl table
18808 #: build/C/man2/syscall.2:202
18809 #, no-wrap
18810 msgid "blackfin\tR0\tR1\tR2\tR3\tR4\tR5\t-\n"
18811 msgstr "blackfin\tR0\tR1\tR2\tR3\tR4\tR5\t-\n"
18812
18813 #. type: tbl table
18814 #: build/C/man2/syscall.2:203
18815 #, no-wrap
18816 msgid "i386\tebx\tecx\tedx\tesi\tedi\tebp\t-\n"
18817 msgstr "i386\tebx\tecx\tedx\tesi\tedi\tebp\t-\n"
18818
18819 #. type: tbl table
18820 #: build/C/man2/syscall.2:204
18821 #, no-wrap
18822 msgid "ia64\tout0\tout1\tout2\tout3\tout4\tout5\t-\n"
18823 msgstr "ia64\tout0\tout1\tout2\tout3\tout4\tout5\t-\n"
18824
18825 #. type: tbl table
18826 #: build/C/man2/syscall.2:205
18827 #, no-wrap
18828 msgid "mips/o32\ta0\ta1\ta2\ta3\t-\t-\t-\tSee below\n"
18829 msgstr "mips/o32\ta0\ta1\ta2\ta3\t-\t-\t-\t下記参照\n"
18830
18831 #. type: tbl table
18832 #: build/C/man2/syscall.2:206
18833 #, no-wrap
18834 msgid "mips/n32,64\ta0\ta1\ta2\ta3\ta4\ta5\t-\n"
18835 msgstr "mips/n32,64\ta0\ta1\ta2\ta3\ta4\ta5\t-\n"
18836
18837 #. type: tbl table
18838 #: build/C/man2/syscall.2:207
18839 #, no-wrap
18840 msgid "parisc\tr26\tr25\tr24\tr23\tr22\tr21\t-\n"
18841 msgstr "parisc\tr26\tr25\tr24\tr23\tr22\tr21\t-\n"
18842
18843 #. type: tbl table
18844 #: build/C/man2/syscall.2:208
18845 #, no-wrap
18846 msgid "s390\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18847 msgstr "s390\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18848
18849 #. type: tbl table
18850 #: build/C/man2/syscall.2:209
18851 #, no-wrap
18852 msgid "s390x\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18853 msgstr "s390x\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18854
18855 #. type: tbl table
18856 #: build/C/man2/syscall.2:210
18857 #, no-wrap
18858 msgid "sparc/32\to0\to1\to2\to3\to4\to5\t-\n"
18859 msgstr "sparc/32\to0\to1\to2\to3\to4\to5\t-\n"
18860
18861 #. type: tbl table
18862 #: build/C/man2/syscall.2:211
18863 #, no-wrap
18864 msgid "sparc/64\to0\to1\to2\to3\to4\to5\t-\n"
18865 msgstr "sparc/64\to0\to1\to2\to3\to4\to5\t-\n"
18866
18867 #. type: tbl table
18868 #: build/C/man2/syscall.2:212
18869 #, no-wrap
18870 msgid "x86_64\trdi\trsi\trdx\tr10\tr8\tr9\t-\n"
18871 msgstr "x86_64\trdi\trsi\trdx\tr10\tr8\tr9\t-\n"
18872
18873 #. type: Plain text
18874 #: build/C/man2/syscall.2:217
18875 msgid ""
18876 "The mips/o32 system call convention passes arguments 5 through 8 on the user "
18877 "stack."
18878 msgstr ""
18879 "mips/o32 のシステムコールの規約では、 ユーザースタックに引き数を 5 個から 8 "
18880 "個渡す。"
18881
18882 #. type: Plain text
18883 #: build/C/man2/syscall.2:224
18884 msgid ""
18885 "Note that these tables don't cover the entire calling convention\\(emsome "
18886 "architectures may indiscriminately clobber other registers not listed here."
18887 msgstr ""
18888 "これらの表にはすべての呼び出し規約が記載されているわけではない点に注意するこ"
18889 "と \\(em アーキテクチャによっては、ここに記載されていない他のレジスタが見境な"
18890 "く上書きされる場合もある。"
18891
18892 #. type: Plain text
18893 #: build/C/man2/syscall.2:231
18894 #, no-wrap
18895 msgid ""
18896 "#define _GNU_SOURCE\n"
18897 "#include E<lt>unistd.hE<gt>\n"
18898 "#include E<lt>sys/syscall.hE<gt>\n"
18899 "#include E<lt>sys/types.hE<gt>\n"
18900 "#include E<lt>signal.hE<gt>\n"
18901 msgstr ""
18902 "#define _GNU_SOURCE\n"
18903 "#include E<lt>unistd.hE<gt>\n"
18904 "#include E<lt>sys/syscall.hE<gt>\n"
18905 "#include E<lt>sys/types.hE<gt>\n"
18906 "#include E<lt>signal.hE<gt>\n"
18907
18908 #. type: Plain text
18909 #: build/C/man2/syscall.2:236
18910 #, no-wrap
18911 msgid ""
18912 "int\n"
18913 "main(int argc, char *argv[])\n"
18914 "{\n"
18915 "    pid_t tid;\n"
18916 msgstr ""
18917 "int\n"
18918 "main(int argc, char *argv[])\n"
18919 "{\n"
18920 "    pid_t tid;\n"
18921
18922 #. type: Plain text
18923 #: build/C/man2/syscall.2:240
18924 #, no-wrap
18925 msgid ""
18926 "    tid = syscall(SYS_gettid);\n"
18927 "    tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);\n"
18928 "}\n"
18929 msgstr ""
18930 "    tid = syscall(SYS_gettid);\n"
18931 "    tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);\n"
18932 "}\n"
18933
18934 #. type: Plain text
18935 #: build/C/man2/syscall.2:247
18936 msgid "B<_syscall>(2), B<intro>(2), B<syscalls>(2), B<errno>(3), B<vdso>(7)"
18937 msgstr "B<_syscall>(2), B<intro>(2), B<syscalls>(2), B<errno>(3), B<vdso>(7)"
18938
18939 #. type: TH
18940 #: build/C/man2/syscalls.2:31
18941 #, no-wrap
18942 msgid "SYSCALLS"
18943 msgstr "SYSCALLS"
18944
18945 #. type: Plain text
18946 #: build/C/man2/syscalls.2:34
18947 msgid "syscalls - Linux system calls"
18948 msgstr "syscalls - Linux のシステムコール"
18949
18950 #. type: Plain text
18951 #: build/C/man2/syscalls.2:36
18952 msgid "Linux system calls."
18953 msgstr "Linux のシステムコール。"
18954
18955 #. type: Plain text
18956 #: build/C/man2/syscalls.2:39
18957 msgid ""
18958 "The system call is the fundamental interface between an application and the "
18959 "Linux kernel."
18960 msgstr ""
18961 "システムコールは、アプリケーションと Linux カーネルとの間の 基本的なインタ"
18962 "フェースである。"
18963
18964 #. type: SS
18965 #: build/C/man2/syscalls.2:39
18966 #, no-wrap
18967 msgid "System calls and library wrapper functions"
18968 msgstr "システムコールとライブラリのラッパー関数"
18969
18970 #. type: Plain text
18971 #: build/C/man2/syscalls.2:49
18972 msgid ""
18973 "System calls are generally not invoked directly, but rather via wrapper "
18974 "functions in glibc (or perhaps some other library).  For details of direct "
18975 "invocation of a system call, see B<intro>(2).  Often, but not always, the "
18976 "name of the wrapper function is the same as the name of the system call that "
18977 "it invokes.  For example, glibc contains a function B<truncate>()  which "
18978 "invokes the underlying \"truncate\" system call."
18979 msgstr ""
18980 "システムコールは一般には直接起動されず、 glibc (や他の何らかのライブラリ)  経"
18981 "由で起動される。 システムコールの直接起動については、詳細は B<intro>(2)  を参"
18982 "照のこと。 いつもという訳ではないが、普通は、ラッパー関数の名前はその関数が起"
18983 "動する システムコールの名前と同じである。 例えば、glibc には B<truncate>()  "
18984 "という関数があり、この関数は \"truncate\" システムコールを起動する。"
18985
18986 #. type: Plain text
18987 #: build/C/man2/syscalls.2:67
18988 msgid ""
18989 "Often the glibc wrapper function is quite thin, doing little work other than "
18990 "copying arguments to the right registers before invoking the system call, "
18991 "and then setting I<errno> appropriately after the system call has returned.  "
18992 "(These are the same steps that are performed by B<syscall>(2), which can be "
18993 "used to invoke system calls for which no wrapper function is provided.)  "
18994 "Note: system calls indicate a failure by returning a negative error number "
18995 "to the caller; when this happens, the wrapper function negates the returned "
18996 "error number (to make it positive), copies it to I<errno>, and returns -1 to "
18997 "the caller of the wrapper."
18998 msgstr ""
18999 "たいていの場合、glibc のラッパー関数はかなり簡単なもので、 システムコールを起"
19000 "動する前に引き数を適切なレジスタにコピーし、 システムコールが返った後は "
19001 "I<errno> を適切に設定する以外は、ほとんど処理を行わない (これらは、ラッパー関"
19002 "数が提供されていない場合に システムコールを起動するのに使用する "
19003 "B<syscall>(2)  により実行される処理と同じである)。 [注意] システムコールは失"
19004 "敗を示すのに負のエラー番号を呼び出し元に返す。 失敗が起こった際には、ラッパー"
19005 "関数は返されたエラー番号を反転して (正の値に変換し)、それを I<errno> にコピー"
19006 "し、ラッパー関数の呼び出し元に -1 を返す。"
19007
19008 #. type: Plain text
19009 #: build/C/man2/syscalls.2:79
19010 msgid ""
19011 "Sometimes, however, the wrapper function does some extra work before "
19012 "invoking the system call.  For example, nowadays there are (for reasons "
19013 "described below) two related system calls, B<truncate>(2)  and "
19014 "B<truncate64>(2), and the glibc B<truncate>()  wrapper function checks which "
19015 "of those system calls are provided by the kernel and determines which should "
19016 "be employed."
19017 msgstr ""
19018 "しかしながら、時には、ラッパー関数がシステムコールを起動する前に 何らかの追加"
19019 "の処理を行う場合がある。 例えば、現在、 二つの関連するシステムコール "
19020 "B<truncate>(2)  と B<truncate64>(2)  があり、glibc のラッパー関数 "
19021 "B<truncate>()  は、カーネルがこれらのシステムコールのうちどちらを提供している"
19022 "かをチェックし、 どちらを採用するかを決定する。"
19023
19024 #. type: SS
19025 #: build/C/man2/syscalls.2:79
19026 #, no-wrap
19027 msgid "System call list"
19028 msgstr "システムコールのリスト"
19029
19030 #. type: Plain text
19031 #: build/C/man2/syscalls.2:87
19032 msgid ""
19033 "Below is a list of the Linux system calls.  In the list, the I<Kernel> "
19034 "column indicates the kernel version for those system calls that were new in "
19035 "Linux 2.2, or have appeared since that kernel version.  Note the following "
19036 "points:"
19037 msgstr ""
19038 "以下は Linux のシステムコールのリストである。 このリストで、 I<Kernel> の列"
19039 "は、Linux 2.2 以降で登場したシステムコールが 登場したカーネルバージョンを示"
19040 "す。 以下に詳細な説明を記す。"
19041
19042 #. type: Plain text
19043 #: build/C/man2/syscalls.2:90
19044 msgid ""
19045 "Where no kernel version is indicated, the system call appeared in kernel 1.0 "
19046 "or earlier."
19047 msgstr ""
19048 "カーネルバージョンがない場合、そのシステムコールは カーネル 1.0 もしくはそれ"
19049 "以前に登場した。"
19050
19051 #. type: Plain text
19052 #: build/C/man2/syscalls.2:96
19053 msgid ""
19054 "Where a system call is marked \"1.2\" this means the system call probably "
19055 "appeared in a 1.1.x kernel version, and first appeared in a stable kernel "
19056 "with 1.2.  (Development of the 1.2 kernel was initiated from a branch of "
19057 "kernel 1.0.6 via the 1.1.x unstable kernel series.)"
19058 msgstr ""
19059 "システムコールに \"1.2\" と書かれている場合、 そのシステムコールがおそらく"
19060 "バージョン 1.1.x のカーネルで登場し、 安定版のカーネルでは 1.2 で初めて登場し"
19061 "たことを意味する。 (バージョン 1.2 のカーネルは、カーネル 1.0.6 から分岐し、 "
19062 "バージョン 1.1.x の不安定版のカーネル系列として開発された。)"
19063
19064 #.  Was kernel 2.0 started from a branch of 1.2.10?
19065 #.  At least from the timestamps of the tarballs of
19066 #.  of 1.2.10 and 1.3.0, that's how it looks, but in
19067 #.  fact the diff doesn't seem very clear, the
19068 #.  1.3.0 .tar.bz is much bigger (2.0 MB) than the
19069 #.  1.2.10 .tar.bz2 (1.8 MB), and AEB points out the
19070 #.  timestamps of some files in 1.3.0 seem to be older
19071 #.  than those in 1.2.10.  All of this suggests
19072 #.  that there might not have been a clean branch point.
19073 #. type: Plain text
19074 #: build/C/man2/syscalls.2:112
19075 msgid ""
19076 "Where a system call is marked \"2.0\" this means the system call probably "
19077 "appeared in a 1.3.x kernel version, and first appeared in a stable kernel "
19078 "with 2.0.  (Development of the 2.0 kernel was initiated from a branch of "
19079 "kernel 1.2.x, somewhere around 1.2.10, via the 1.3.x unstable kernel series.)"
19080 msgstr ""
19081 "システムコールに \"2.0\" と書かれている場合、 そのシステムコールがおそらく"
19082 "バージョン 1.3.x のカーネルで登場し、 安定版のカーネルでは 2.0 で初めて登場し"
19083 "たことを意味する。 (バージョン 2.0 のカーネルは、バージョン 1.2.10 あたりの"
19084 "カーネル 1.2.x から分岐し、バージョン 1.3.x の不安定版のカーネル系列として開"
19085 "発された。)"
19086
19087 #. type: Plain text
19088 #: build/C/man2/syscalls.2:118
19089 msgid ""
19090 "Where a system call is marked \"2.2\" this means the system call probably "
19091 "appeared in a 2.1.x kernel version, and first appeared in a stable kernel "
19092 "with 2.2.0.  (Development of the 2.2 kernel was initiated from a branch of "
19093 "kernel 2.0.21 via the 2.1.x unstable kernel series.)"
19094 msgstr ""
19095 "システムコールに \"2.2\" と書かれている場合、 そのシステムコールがおそらく"
19096 "バージョン 2.1.x のカーネルで登場し、 安定版のカーネルでは 2.2.0 で初めて登場"
19097 "したことを意味する。 (バージョン 2.2 のカーネルは、カーネル 2.0.21 から分岐"
19098 "し、 バージョン 2.1.x の不安定版のカーネル系列として開発された。)"
19099
19100 #. type: Plain text
19101 #: build/C/man2/syscalls.2:124
19102 msgid ""
19103 "Where a system call is marked \"2.4\" this means the system call probably "
19104 "appeared in a 2.3.x kernel version, and first appeared in a stable kernel "
19105 "with 2.4.0.  (Development of the 2.4 kernel was initiated from a branch of "
19106 "kernel 2.2.8 via the 2.3.x unstable kernel series.)"
19107 msgstr ""
19108 "システムコールに \"2.4\" と書かれている場合、 そのシステムコールがおそらく"
19109 "バージョン 2.3.x のカーネルで登場し、 安定版のカーネルでは 2.4.0 で初めて登場"
19110 "したことを意味する。 (バージョン 2.4 のカーネルは、カーネル 2.2.8 から分岐"
19111 "し、 バージョン 2.3.x の不安定版のカーネル系列として開発された。)"
19112
19113 #. type: Plain text
19114 #: build/C/man2/syscalls.2:130
19115 msgid ""
19116 "Where a system call is marked \"2.6\" this means the system call probably "
19117 "appeared in a 2.5.x kernel version, and first appeared in a stable kernel "
19118 "with 2.6.0.  (Development of kernel 2.6 was initiated from a branch of "
19119 "kernel 2.4.15 via the 2.5.x unstable kernel series.)"
19120 msgstr ""
19121 "システムコールに \"2.6\" と書かれている場合、 そのシステムコールがおそらく"
19122 "バージョン 2.5.x のカーネルで登場し、 安定版のカーネルでは 2.6.0 で初めて登場"
19123 "したことを意味する。 (バージョン 2.6 のカーネルは、カーネル 2.4.15 から分岐"
19124 "し、 バージョン 2.5.x の不安定版のカーネル系列として開発された。)"
19125
19126 #. type: Plain text
19127 #: build/C/man2/syscalls.2:137
19128 msgid ""
19129 "Starting with kernel 2.6.0, the development model changed, and new system "
19130 "calls may appear in each 2.6.x release.  In this case, the exact version "
19131 "number where the system call appeared is shown.  This convention continues "
19132 "with the 3.x kernel series, which followed on from kernel 2.6.39."
19133 msgstr ""
19134 "カーネル 2.6.0 から開発モデルは変更され、新しいシステムコールが\n"
19135 "個々の 2.6.x のリリースでも登場するようになった。\n"
19136 "その場合、このリストでは、システムコールが登場した\n"
19137 "厳密なバージョン番号が記載されている。この慣習は、カーネル 2.6.39 の\n"
19138 "後継となるバージョン 3.x 系列のカーネルでも継続されている。"
19139
19140 #. type: Plain text
19141 #: build/C/man2/syscalls.2:145
19142 msgid ""
19143 "In some cases, a system call was added to a stable kernel series after it "
19144 "branched from the previous stable kernel series, and then backported into "
19145 "the earlier stable kernel series.  For example some system calls that "
19146 "appeared in 2.6.x were also backported into a 2.4.x release after 2.4.15.  "
19147 "When this is so, the version where the system call appeared in both of the "
19148 "major kernel series is listed."
19149 msgstr ""
19150 "前の安定版カーネル系列から分岐した後に安定版カーネル系列にシステムコール が追"
19151 "加された場合、以前の安定版カーネル系列にそのシステムコールが 移植 (backport) "
19152 "されることがある。 例えば、2.6.x で登場したシステムコールのいくつかは、 "
19153 "2.4.15 以降の 2.4.x リリースにも backport された。 この場合、システムコールが"
19154 "登場したバージョンとして、 両方の安定版系列のバージョンが記載されている。"
19155
19156 #.  Looking at scripts/checksyscalls.sh in the kernel source is
19157 #.  instructive about x86 specifics.
19158 #. type: Plain text
19159 #: build/C/man2/syscalls.2:152
19160 msgid ""
19161 "The list of system calls that are available as at kernel 3.15 (or in a few "
19162 "cases only on older kernels) is as follows:"
19163 msgstr ""
19164 "カーネル 3.15 で利用可能なシステムコールのリストを以下に示す\n"
19165 "(それ以前のカーネルでだけ利用可能なものも少数だが含まれる):"
19166
19167 #. type: tbl table
19168 #: build/C/man2/syscalls.2:157
19169 #, no-wrap
19170 msgid "B<System call>\tB<Kernel>\tB<Notes>\n"
19171 msgstr "B<System call>\tB<Kernel>\tB<Notes>\n"
19172
19173 #. type: tbl table
19174 #: build/C/man2/syscalls.2:159
19175 #, no-wrap
19176 msgid "B<_llseek>(2)\t1.2\n"
19177 msgstr "B<_llseek>(2)\t1.2\n"
19178
19179 #. type: tbl table
19180 #: build/C/man2/syscalls.2:160
19181 #, no-wrap
19182 msgid "B<_newselect>(2)\t2.0\n"
19183 msgstr "B<_newselect>(2)\t2.0\n"
19184
19185 #. type: tbl table
19186 #: build/C/man2/syscalls.2:161
19187 #, no-wrap
19188 msgid "B<_sysctl>(2)\t2.0\n"
19189 msgstr "B<_sysctl>(2)\t2.0\n"
19190
19191 #. type: tbl table
19192 #: build/C/man2/syscalls.2:162
19193 #, no-wrap
19194 msgid "B<accept>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19195 msgstr "B<accept>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19196
19197 #. type: tbl table
19198 #: build/C/man2/syscalls.2:163
19199 #, no-wrap
19200 msgid "B<accept4>(2)\t2.6.28\n"
19201 msgstr "B<accept4>(2)\t2.6.28\n"
19202
19203 #. type: tbl table
19204 #: build/C/man2/syscalls.2:164
19205 #, no-wrap
19206 msgid "B<access>(2)\t1.0\n"
19207 msgstr "B<access>(2)\t1.0\n"
19208
19209 #. type: tbl table
19210 #: build/C/man2/syscalls.2:165
19211 #, no-wrap
19212 msgid "B<acct>(2)\t1.0\n"
19213 msgstr "B<acct>(2)\t1.0\n"
19214
19215 #. type: tbl table
19216 #: build/C/man2/syscalls.2:166
19217 #, no-wrap
19218 msgid "B<add_key>(2)\t2.6.11\n"
19219 msgstr "B<add_key>(2)\t2.6.11\n"
19220
19221 #. type: tbl table
19222 #: build/C/man2/syscalls.2:167
19223 #, no-wrap
19224 msgid "B<adjtimex>(2)\t1.0\n"
19225 msgstr "B<adjtimex>(2)\t1.0\n"
19226
19227 #. type: tbl table
19228 #: build/C/man2/syscalls.2:168
19229 #, no-wrap
19230 msgid "B<alarm>(2)\t1.0\n"
19231 msgstr "B<alarm>(2)\t1.0\n"
19232
19233 #. type: tbl table
19234 #: build/C/man2/syscalls.2:169
19235 #, no-wrap
19236 msgid "B<alloc_hugepages>(2)\t2.5.36\tRemoved in 2.5.44\n"
19237 msgstr "B<alloc_hugepages>(2)\t2.5.36\t2.5.44 で削除\n"
19238
19239 #. type: tbl table
19240 #: build/C/man2/syscalls.2:170
19241 #, no-wrap
19242 msgid "B<bdflush>(2)\t1.2\tT{\n"
19243 msgstr "B<bdflush>(2)\t1.2\tT{\n"
19244
19245 #. type: tbl table
19246 #: build/C/man2/syscalls.2:171
19247 #, no-wrap
19248 msgid "Deprecated (does nothing)\n"
19249 msgstr "2.6 以降で非推奨\n"
19250
19251 #. type: tbl table
19252 #: build/C/man2/syscalls.2:172 build/C/man2/syscalls.2:185
19253 #: build/C/man2/syscalls.2:320 build/C/man2/syscalls.2:393
19254 #: build/C/man2/syscalls.2:409 build/C/man2/syscalls.2:422
19255 #, no-wrap
19256 msgid ".br\n"
19257 msgstr ".br\n"
19258
19259 #. type: tbl table
19260 #: build/C/man2/syscalls.2:173
19261 #, no-wrap
19262 msgid "since 2.6\n"
19263 msgstr "(何もしない)\n"
19264
19265 #. type: tbl table
19266 #: build/C/man2/syscalls.2:174 build/C/man2/syscalls.2:187
19267 #: build/C/man2/syscalls.2:322 build/C/man2/syscalls.2:395
19268 #: build/C/man2/syscalls.2:411 build/C/man2/syscalls.2:424
19269 #: build/C/man2/syscalls.2:601
19270 #, no-wrap
19271 msgid "T}\n"
19272 msgstr "T}\n"
19273
19274 #. type: tbl table
19275 #: build/C/man2/syscalls.2:175
19276 #, no-wrap
19277 msgid "B<bind>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19278 msgstr "B<bind>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19279
19280 #. type: tbl table
19281 #: build/C/man2/syscalls.2:176
19282 #, no-wrap
19283 msgid "B<bpf>(2)\t3.18\n"
19284 msgstr "B<bpf>(2)\t3.18\n"
19285
19286 #. type: tbl table
19287 #: build/C/man2/syscalls.2:177
19288 #, no-wrap
19289 msgid "B<brk>(2)\t1.0\n"
19290 msgstr "B<brk>(2)\t1.0\n"
19291
19292 #. type: tbl table
19293 #: build/C/man2/syscalls.2:178
19294 #, no-wrap
19295 msgid "B<cacheflush>(2)\t1.2\tNot on x86\n"
19296 msgstr "B<cacheflush>(2)\t1.2\tx86 にはない\n"
19297
19298 #. type: tbl table
19299 #: build/C/man2/syscalls.2:179
19300 #, no-wrap
19301 msgid "B<capget>(2)\t2.2\n"
19302 msgstr "B<capget>(2)\t2.2\n"
19303
19304 #. type: tbl table
19305 #: build/C/man2/syscalls.2:180
19306 #, no-wrap
19307 msgid "B<capset>(2)\t2.2\n"
19308 msgstr "B<capset>(2)\t2.2\n"
19309
19310 #. type: tbl table
19311 #: build/C/man2/syscalls.2:181
19312 #, no-wrap
19313 msgid "B<chdir>(2)\t1.0\n"
19314 msgstr "B<chdir>(2)\t1.0\n"
19315
19316 #. type: tbl table
19317 #: build/C/man2/syscalls.2:182
19318 #, no-wrap
19319 msgid "B<chmod>(2)\t1.0\n"
19320 msgstr "B<chmod>(2)\t1.0\n"
19321
19322 #. type: tbl table
19323 #: build/C/man2/syscalls.2:183
19324 #, no-wrap
19325 msgid "B<chown>(2)\t2.2\tT{\n"
19326 msgstr "B<chown>(2)\t2.2\tT{\n"
19327
19328 #. type: tbl table
19329 #: build/C/man2/syscalls.2:184 build/C/man2/syscalls.2:319
19330 #, no-wrap
19331 msgid "See B<chown>(2) for\n"
19332 msgstr "バージョン毎の詳細は\n"
19333
19334 #. type: tbl table
19335 #: build/C/man2/syscalls.2:186 build/C/man2/syscalls.2:321
19336 #, no-wrap
19337 msgid "version details\n"
19338 msgstr "B<chown>(2) を参照。\n"
19339
19340 #. type: tbl table
19341 #: build/C/man2/syscalls.2:188
19342 #, no-wrap
19343 msgid "B<chown32>(2)\t2.4\n"
19344 msgstr "B<chown32>(2)\t2.4\n"
19345
19346 #. type: tbl table
19347 #: build/C/man2/syscalls.2:189
19348 #, no-wrap
19349 msgid "B<chroot>(2)\t1.0\n"
19350 msgstr "B<chroot>(2)\t1.0\n"
19351
19352 #. type: tbl table
19353 #: build/C/man2/syscalls.2:190
19354 #, no-wrap
19355 msgid "B<clock_adjtime>(2)\t2.6.39\n"
19356 msgstr "B<clock_adjtime>(2)\t2.6.39\n"
19357
19358 #. type: tbl table
19359 #: build/C/man2/syscalls.2:191
19360 #, no-wrap
19361 msgid "B<clock_getres>(2)\t2.6\n"
19362 msgstr "B<clock_getres>(2)\t2.6\n"
19363
19364 #. type: tbl table
19365 #: build/C/man2/syscalls.2:192
19366 #, no-wrap
19367 msgid "B<clock_gettime>(2)\t2.6\n"
19368 msgstr "B<clock_gettime>(2)\t2.6\n"
19369
19370 #. type: tbl table
19371 #: build/C/man2/syscalls.2:193
19372 #, no-wrap
19373 msgid "B<clock_nanosleep>(2)\t2.6\n"
19374 msgstr "B<clock_nanosleep>(2)\t2.6\n"
19375
19376 #. type: tbl table
19377 #: build/C/man2/syscalls.2:194
19378 #, no-wrap
19379 msgid "B<clock_settime>(2)\t2.6\n"
19380 msgstr "B<clock_settime>(2)\t2.6\n"
19381
19382 #. type: tbl table
19383 #: build/C/man2/syscalls.2:195
19384 #, no-wrap
19385 msgid "B<clone>(2)\t1.0\n"
19386 msgstr "B<clone>(2)\t1.0\n"
19387
19388 #. type: tbl table
19389 #: build/C/man2/syscalls.2:196
19390 #, no-wrap
19391 msgid "B<close>(2)\t1.0\n"
19392 msgstr "B<close>(2)\t1.0\n"
19393
19394 #. type: tbl table
19395 #: build/C/man2/syscalls.2:197
19396 #, no-wrap
19397 msgid "B<connect>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19398 msgstr "B<connect>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19399
19400 #. type: tbl table
19401 #: build/C/man2/syscalls.2:198
19402 #, no-wrap
19403 msgid "B<creat>(2)\t1.0\n"
19404 msgstr "B<creat>(2)\t1.0\n"
19405
19406 #. type: tbl table
19407 #: build/C/man2/syscalls.2:199
19408 #, no-wrap
19409 msgid "B<create_module>(2)\t1.0\tRemoved in 2.6\n"
19410 msgstr "B<create_module>(2)\t1.0\t2.6 で削除\n"
19411
19412 #. type: tbl table
19413 #: build/C/man2/syscalls.2:200
19414 #, no-wrap
19415 msgid "B<delete_module>(2)\t1.0\n"
19416 msgstr "B<delete_module>(2)\t1.0\n"
19417
19418 #. type: tbl table
19419 #: build/C/man2/syscalls.2:201
19420 #, no-wrap
19421 msgid "B<dup>(2)\t1.0\n"
19422 msgstr "B<dup>(2)\t1.0\n"
19423
19424 #. type: tbl table
19425 #: build/C/man2/syscalls.2:202
19426 #, no-wrap
19427 msgid "B<dup2>(2)\t1.0\n"
19428 msgstr "B<dup2>(2)\t1.0\n"
19429
19430 #. type: tbl table
19431 #: build/C/man2/syscalls.2:203
19432 #, no-wrap
19433 msgid "B<dup3>(2)\t2.6.27\n"
19434 msgstr "B<dup3>(2)\t2.6.27\n"
19435
19436 #. type: tbl table
19437 #: build/C/man2/syscalls.2:204
19438 #, no-wrap
19439 msgid "B<epoll_create>(2)\t2.6\n"
19440 msgstr "B<epoll_create>(2)\t2.6\n"
19441
19442 #. type: tbl table
19443 #: build/C/man2/syscalls.2:205
19444 #, no-wrap
19445 msgid "B<epoll_create1>(2)\t2.6.27\n"
19446 msgstr "B<epoll_create1>(2)\t2.6.27\n"
19447
19448 #. type: tbl table
19449 #: build/C/man2/syscalls.2:206
19450 #, no-wrap
19451 msgid "B<epoll_ctl>(2)\t2.6\n"
19452 msgstr "B<epoll_ctl>(2)\t2.6\n"
19453
19454 #. type: tbl table
19455 #: build/C/man2/syscalls.2:207
19456 #, no-wrap
19457 msgid "B<epoll_pwait>(2)\t2.6.19\n"
19458 msgstr "B<epoll_pwait>(2)\t2.6.19\n"
19459
19460 #. type: tbl table
19461 #: build/C/man2/syscalls.2:208
19462 #, no-wrap
19463 msgid "B<epoll_wait>(2)\t2.6\n"
19464 msgstr "B<epoll_wait>(2)\t2.6\n"
19465
19466 #. type: tbl table
19467 #: build/C/man2/syscalls.2:209
19468 #, no-wrap
19469 msgid "B<eventfd>(2)\t2.6.22\n"
19470 msgstr "B<eventfd>(2)\t2.6.22\n"
19471
19472 #. type: tbl table
19473 #: build/C/man2/syscalls.2:210
19474 #, no-wrap
19475 msgid "B<eventfd2>(2)\t2.6.27\n"
19476 msgstr "B<eventfd2>(2)\t2.6.27\n"
19477
19478 #. type: tbl table
19479 #: build/C/man2/syscalls.2:211
19480 #, no-wrap
19481 msgid "B<execve>(2)\t1.0\n"
19482 msgstr "B<execve>(2)\t1.0\n"
19483
19484 #. type: tbl table
19485 #: build/C/man2/syscalls.2:212
19486 #, no-wrap
19487 msgid "B<execveat>(2)\t3.19\n"
19488 msgstr "B<execveat>(2)\t3.19\n"
19489
19490 #. type: tbl table
19491 #: build/C/man2/syscalls.2:213
19492 #, no-wrap
19493 msgid "B<exit>(2)\t1.0\n"
19494 msgstr "B<exit>(2)\t1.0\n"
19495
19496 #. type: tbl table
19497 #: build/C/man2/syscalls.2:214
19498 #, no-wrap
19499 msgid "B<exit_group>(2)\t2.6\n"
19500 msgstr "B<exit_group>(2)\t2.6\n"
19501
19502 #. type: tbl table
19503 #: build/C/man2/syscalls.2:215
19504 #, no-wrap
19505 msgid "B<faccessat>(2)\t2.6.16\n"
19506 msgstr "B<faccessat>(2)\t2.6.16\n"
19507
19508 #. type: tbl table
19509 #: build/C/man2/syscalls.2:216
19510 #, no-wrap
19511 msgid "B<fadvise64>(2)\t2.6\n"
19512 msgstr "B<fadvise64>(2)\t2.6\n"
19513
19514 #.  Implements \fBposix_fadvise\fP(2)
19515 #. type: tbl table
19516 #: build/C/man2/syscalls.2:218
19517 #, no-wrap
19518 msgid "B<fadvise64_64>(2)\t2.6\n"
19519 msgstr "B<fadvise64_64>(2)\t2.6\n"
19520
19521 #. type: tbl table
19522 #: build/C/man2/syscalls.2:219
19523 #, no-wrap
19524 msgid "B<fallocate>(2)\t2.6.23\n"
19525 msgstr "B<fallocate>(2)\t2.6.23\n"
19526
19527 #. type: tbl table
19528 #: build/C/man2/syscalls.2:220
19529 #, no-wrap
19530 msgid "B<fanotify_init>(2)\t2.6.37\n"
19531 msgstr "B<fanotify_init>(2)\t2.6.37\n"
19532
19533 #. type: tbl table
19534 #: build/C/man2/syscalls.2:221
19535 #, no-wrap
19536 msgid "B<fanotify_mark>(2)\t2.6.37\n"
19537 msgstr "B<fanotify_mark>(2)\t2.6.37\n"
19538
19539 #.  The fanotify calls were added in Linux 2.6.36,
19540 #.  but disabled while the API was finalized.
19541 #. type: tbl table
19542 #: build/C/man2/syscalls.2:224
19543 #, no-wrap
19544 msgid "B<fchdir>(2)\t1.0\n"
19545 msgstr "B<fchdir>(2)\t1.0\n"
19546
19547 #. type: tbl table
19548 #: build/C/man2/syscalls.2:225
19549 #, no-wrap
19550 msgid "B<fchmod>(2)\t1.0\n"
19551 msgstr "B<fchmod>(2)\t1.0\n"
19552
19553 #. type: tbl table
19554 #: build/C/man2/syscalls.2:226
19555 #, no-wrap
19556 msgid "B<fchmodat>(2)\t2.6.16\n"
19557 msgstr "B<fchmodat>(2)\t2.6.16\n"
19558
19559 #. type: tbl table
19560 #: build/C/man2/syscalls.2:227
19561 #, no-wrap
19562 msgid "B<fchown>(2)\t1.0\n"
19563 msgstr "B<fchown>(2)\t1.0\n"
19564
19565 #. type: tbl table
19566 #: build/C/man2/syscalls.2:228
19567 #, no-wrap
19568 msgid "B<fchown32>(2)\t2.4\n"
19569 msgstr "B<fchown32>(2)\t2.4\n"
19570
19571 #. type: tbl table
19572 #: build/C/man2/syscalls.2:229
19573 #, no-wrap
19574 msgid "B<fchownat>(2)\t2.6.16\n"
19575 msgstr "B<fchownat>(2)\t2.6.16\n"
19576
19577 #. type: tbl table
19578 #: build/C/man2/syscalls.2:230
19579 #, no-wrap
19580 msgid "B<fcntl>(2)\t1.0\n"
19581 msgstr "B<fcntl>(2)\t1.0\n"
19582
19583 #. type: tbl table
19584 #: build/C/man2/syscalls.2:231
19585 #, no-wrap
19586 msgid "B<fcntl64>(2)\t2.4\n"
19587 msgstr "B<fcntl64>(2)\t2.4\n"
19588
19589 #. type: tbl table
19590 #: build/C/man2/syscalls.2:232
19591 #, no-wrap
19592 msgid "B<fdatasync>(2)\t2.0\n"
19593 msgstr "B<fdatasync>(2)\t2.0\n"
19594
19595 #. type: tbl table
19596 #: build/C/man2/syscalls.2:233
19597 #, no-wrap
19598 msgid "B<fgetxattr>(2)\t2.6; 2.4.18\n"
19599 msgstr "B<fgetxattr>(2)\t2.6; 2.4.18\n"
19600
19601 #. type: tbl table
19602 #: build/C/man2/syscalls.2:234
19603 #, no-wrap
19604 msgid "B<finit_module>(2)\t3.8\n"
19605 msgstr "B<finit_module>(2)\t3.8\n"
19606
19607 #. type: tbl table
19608 #: build/C/man2/syscalls.2:235
19609 #, no-wrap
19610 msgid "B<flistxattr>(2)\t2.6; 2.4.18\n"
19611 msgstr "B<flistxattr>(2)\t2.6; 2.4.18\n"
19612
19613 #. type: tbl table
19614 #: build/C/man2/syscalls.2:236
19615 #, no-wrap
19616 msgid "B<flock>(2)\t2.0\n"
19617 msgstr "B<flock>(2)\t2.0\n"
19618
19619 #. type: tbl table
19620 #: build/C/man2/syscalls.2:237
19621 #, no-wrap
19622 msgid "B<fork>(2)\t1.0\n"
19623 msgstr "B<fork>(2)\t1.0\n"
19624
19625 #. type: tbl table
19626 #: build/C/man2/syscalls.2:238
19627 #, no-wrap
19628 msgid "B<free_hugepages>(2)\t2.5.36\tRemoved in 2.5.44\n"
19629 msgstr "B<free_hugepages>(2)\t2.5.36\t2.5.44 で削除\n"
19630
19631 #. type: tbl table
19632 #: build/C/man2/syscalls.2:239
19633 #, no-wrap
19634 msgid "B<fremovexattr>(2)\t2.6; 2.4.18\n"
19635 msgstr "B<fremovexattr>(2)\t2.6; 2.4.18\n"
19636
19637 #. type: tbl table
19638 #: build/C/man2/syscalls.2:240
19639 #, no-wrap
19640 msgid "B<fsetxattr>(2)\t2.6; 2.4.18\n"
19641 msgstr "B<fsetxattr>(2)\t2.6; 2.4.18\n"
19642
19643 #. type: tbl table
19644 #: build/C/man2/syscalls.2:241
19645 #, no-wrap
19646 msgid "B<fstat>(2)\t1.0\n"
19647 msgstr "B<fstat>(2)\t1.0\n"
19648
19649 #. type: tbl table
19650 #: build/C/man2/syscalls.2:242
19651 #, no-wrap
19652 msgid "B<fstat64>(2)\t2.4\n"
19653 msgstr "B<fstat64>(2)\t2.4\n"
19654
19655 #. type: tbl table
19656 #: build/C/man2/syscalls.2:243
19657 #, no-wrap
19658 msgid "B<fstatat64>(2)\t2.6.16\n"
19659 msgstr "B<fstatat64>(2)\t2.6.16\n"
19660
19661 #. type: tbl table
19662 #: build/C/man2/syscalls.2:244
19663 #, no-wrap
19664 msgid "B<fstatfs>(2)\t1.0\n"
19665 msgstr "B<fstatfs>(2)\t1.0\n"
19666
19667 #. type: tbl table
19668 #: build/C/man2/syscalls.2:245
19669 #, no-wrap
19670 msgid "B<fstatfs64>(2)\t2.6\n"
19671 msgstr "B<fstatfs64>(2)\t2.6\n"
19672
19673 #. type: tbl table
19674 #: build/C/man2/syscalls.2:246
19675 #, no-wrap
19676 msgid "B<fsync>(2)\t1.0\n"
19677 msgstr "B<fsync>(2)\t1.0\n"
19678
19679 #. type: tbl table
19680 #: build/C/man2/syscalls.2:247
19681 #, no-wrap
19682 msgid "B<ftruncate>(2)\t1.0\n"
19683 msgstr "B<ftruncate>(2)\t1.0\n"
19684
19685 #. type: tbl table
19686 #: build/C/man2/syscalls.2:248
19687 #, no-wrap
19688 msgid "B<ftruncate64>(2)\t2.4\n"
19689 msgstr "B<ftruncate64>(2)\t2.4\n"
19690
19691 #. type: tbl table
19692 #: build/C/man2/syscalls.2:249
19693 #, no-wrap
19694 msgid "B<futex>(2)\t2.6\n"
19695 msgstr "B<futex>(2)\t2.6\n"
19696
19697 #. type: tbl table
19698 #: build/C/man2/syscalls.2:250
19699 #, no-wrap
19700 msgid "B<futimesat>(2)\t2.6.16\n"
19701 msgstr "B<futimesat>(2)\t2.6.16\n"
19702
19703 #. type: tbl table
19704 #: build/C/man2/syscalls.2:251
19705 #, no-wrap
19706 msgid "B<get_kernel_syms>(2)\t1.0\tRemoved in 2.6\n"
19707 msgstr "B<get_kernel_syms>(2)\t1.0\t2.6 で削除\n"
19708
19709 #. type: tbl table
19710 #: build/C/man2/syscalls.2:252
19711 #, no-wrap
19712 msgid "B<get_mempolicy>(2)\t2.6.6\n"
19713 msgstr "B<get_mempolicy>(2)\t2.6.6\n"
19714
19715 #. type: tbl table
19716 #: build/C/man2/syscalls.2:253
19717 #, no-wrap
19718 msgid "B<get_robust_list>(2)\t2.6.17\n"
19719 msgstr "B<get_robust_list>(2)\t2.6.17\n"
19720
19721 #. type: tbl table
19722 #: build/C/man2/syscalls.2:254
19723 #, no-wrap
19724 msgid "B<get_thread_area>(2)\t2.6\n"
19725 msgstr "B<get_thread_area>(2)\t2.6\n"
19726
19727 #. type: tbl table
19728 #: build/C/man2/syscalls.2:255
19729 #, no-wrap
19730 msgid "B<getcpu>(2)\t2.6.19\n"
19731 msgstr "B<getcpu>(2)\t2.6.19\n"
19732
19733 #. type: tbl table
19734 #: build/C/man2/syscalls.2:256
19735 #, no-wrap
19736 msgid "B<getcwd>(2)\t2.2\n"
19737 msgstr "B<getcwd>(2)\t2.2\n"
19738
19739 #. type: tbl table
19740 #: build/C/man2/syscalls.2:257
19741 #, no-wrap
19742 msgid "B<getdents>(2)\t2.0\n"
19743 msgstr "B<getdents>(2)\t2.0\n"
19744
19745 #. type: tbl table
19746 #: build/C/man2/syscalls.2:258
19747 #, no-wrap
19748 msgid "B<getdents64>(2)\t2.4\n"
19749 msgstr "B<getdents64>(2)\t2.4\n"
19750
19751 #. type: tbl table
19752 #: build/C/man2/syscalls.2:259
19753 #, no-wrap
19754 msgid "B<getegid>(2)\t1.0\n"
19755 msgstr "B<getegid>(2)\t1.0\n"
19756
19757 #. type: tbl table
19758 #: build/C/man2/syscalls.2:260
19759 #, no-wrap
19760 msgid "B<getegid32>(2)\t2.4\n"
19761 msgstr "B<getegid32>(2)\t2.4\n"
19762
19763 #. type: tbl table
19764 #: build/C/man2/syscalls.2:261
19765 #, no-wrap
19766 msgid "B<geteuid>(2)\t1.0\n"
19767 msgstr "B<geteuid>(2)\t1.0\n"
19768
19769 #. type: tbl table
19770 #: build/C/man2/syscalls.2:262
19771 #, no-wrap
19772 msgid "B<geteuid32>(2)\t2.4\n"
19773 msgstr "B<geteuid32>(2)\t2.4\n"
19774
19775 #. type: tbl table
19776 #: build/C/man2/syscalls.2:263
19777 #, no-wrap
19778 msgid "B<getgid>(2)\t1.0\n"
19779 msgstr "B<getgid>(2)\t1.0\n"
19780
19781 #. type: tbl table
19782 #: build/C/man2/syscalls.2:264
19783 #, no-wrap
19784 msgid "B<getgid32>(2)\t2.4\n"
19785 msgstr "B<getgid32>(2)\t2.4\n"
19786
19787 #. type: tbl table
19788 #: build/C/man2/syscalls.2:265
19789 #, no-wrap
19790 msgid "B<getgroups>(2)\t1.0\n"
19791 msgstr "B<getgroups>(2)\t1.0\n"
19792
19793 #. type: tbl table
19794 #: build/C/man2/syscalls.2:266
19795 #, no-wrap
19796 msgid "B<getgroups32>(2)\t2.4\n"
19797 msgstr "B<getgroups32>(2)\t2.4\n"
19798
19799 #. type: tbl table
19800 #: build/C/man2/syscalls.2:267
19801 #, no-wrap
19802 msgid "B<getitimer>(2)\t1.0\n"
19803 msgstr "B<getitimer>(2)\t1.0\n"
19804
19805 #. type: tbl table
19806 #: build/C/man2/syscalls.2:268
19807 #, no-wrap
19808 msgid "B<getpeername>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19809 msgstr "B<getpeername>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19810
19811 #. type: tbl table
19812 #: build/C/man2/syscalls.2:269
19813 #, no-wrap
19814 msgid "B<getpagesize>(2)\t2.0\tNot on x86\n"
19815 msgstr "B<getpagesize>(2)\t2.0\tx86 にはない\n"
19816
19817 #. type: tbl table
19818 #: build/C/man2/syscalls.2:270
19819 #, no-wrap
19820 msgid "B<getpgid>(2)\t1.0\n"
19821 msgstr "B<getpgid>(2)\t1.0\n"
19822
19823 #. type: tbl table
19824 #: build/C/man2/syscalls.2:271
19825 #, no-wrap
19826 msgid "B<getpgrp>(2)\t1.0\n"
19827 msgstr "B<getpgrp>(2)\t1.0\n"
19828
19829 #. type: tbl table
19830 #: build/C/man2/syscalls.2:272
19831 #, no-wrap
19832 msgid "B<getpid>(2)\t1.0\n"
19833 msgstr "B<getpid>(2)\t1.0\n"
19834
19835 #. type: tbl table
19836 #: build/C/man2/syscalls.2:273
19837 #, no-wrap
19838 msgid "B<getppid>(2)\t1.0\n"
19839 msgstr "B<getppid>(2)\t1.0\n"
19840
19841 #. type: tbl table
19842 #: build/C/man2/syscalls.2:274
19843 #, no-wrap
19844 msgid "B<getpriority>(2)\t1.0\n"
19845 msgstr "B<getpriority>(2)\t1.0\n"
19846
19847 #. type: tbl table
19848 #: build/C/man2/syscalls.2:275
19849 #, no-wrap
19850 msgid "B<getrandom>(2)\t3.17\n"
19851 msgstr "B<getrandom>(2)\t3.17\n"
19852
19853 #. type: tbl table
19854 #: build/C/man2/syscalls.2:276
19855 #, no-wrap
19856 msgid "B<getresgid>(2)\t2.2\n"
19857 msgstr "B<getresgid>(2)\t2.2\n"
19858
19859 #. type: tbl table
19860 #: build/C/man2/syscalls.2:277
19861 #, no-wrap
19862 msgid "B<getresgid32>(2)\t2.4\n"
19863 msgstr "B<getresgid32>(2)\t2.4\n"
19864
19865 #. type: tbl table
19866 #: build/C/man2/syscalls.2:278
19867 #, no-wrap
19868 msgid "B<getresuid>(2)\t2.2\n"
19869 msgstr "B<getresuid>(2)\t2.2\n"
19870
19871 #. type: tbl table
19872 #: build/C/man2/syscalls.2:279
19873 #, no-wrap
19874 msgid "B<getresuid32>(2)\t2.4\n"
19875 msgstr "B<getresuid32>(2)\t2.4\n"
19876
19877 #. type: tbl table
19878 #: build/C/man2/syscalls.2:280
19879 #, no-wrap
19880 msgid "B<getrlimit>(2)\t1.0\n"
19881 msgstr "B<getrlimit>(2)\t1.0\n"
19882
19883 #. type: tbl table
19884 #: build/C/man2/syscalls.2:281
19885 #, no-wrap
19886 msgid "B<getrusage>(2)\t1.0\n"
19887 msgstr "B<getrusage>(2)\t1.0\n"
19888
19889 #. type: tbl table
19890 #: build/C/man2/syscalls.2:282
19891 #, no-wrap
19892 msgid "B<getsid>(2)\t2.0\n"
19893 msgstr "B<getsid>(2)\t2.0\n"
19894
19895 #. type: tbl table
19896 #: build/C/man2/syscalls.2:283
19897 #, no-wrap
19898 msgid "B<getsockname>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19899 msgstr "B<getsockname>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19900
19901 #. type: tbl table
19902 #: build/C/man2/syscalls.2:284
19903 #, no-wrap
19904 msgid "B<getsockopt>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19905 msgstr "B<getsockopt>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19906
19907 #. type: tbl table
19908 #: build/C/man2/syscalls.2:285
19909 #, no-wrap
19910 msgid "B<gettid>(2)\t2.4.11\n"
19911 msgstr "B<gettid>(2)\t2.4.11\n"
19912
19913 #. type: tbl table
19914 #: build/C/man2/syscalls.2:286
19915 #, no-wrap
19916 msgid "B<gettimeofday>(2)\t1.0\n"
19917 msgstr "B<gettimeofday>(2)\t1.0\n"
19918
19919 #. type: tbl table
19920 #: build/C/man2/syscalls.2:287
19921 #, no-wrap
19922 msgid "B<getuid>(2)\t1.0\n"
19923 msgstr "B<getuid>(2)\t1.0\n"
19924
19925 #. type: tbl table
19926 #: build/C/man2/syscalls.2:288
19927 #, no-wrap
19928 msgid "B<getuid32>(2)\t2.4\n"
19929 msgstr "B<getuid32>(2)\t2.4\n"
19930
19931 #.  \fBgetunwind\fP(2)  2.4.8   ia64; DEPRECATED
19932 #. type: tbl table
19933 #: build/C/man2/syscalls.2:290
19934 #, no-wrap
19935 msgid "B<getxattr>(2)\t2.6; 2.4.18\n"
19936 msgstr "B<getxattr>(2)\t2.6; 2.4.18\n"
19937
19938 #. type: tbl table
19939 #: build/C/man2/syscalls.2:291
19940 #, no-wrap
19941 msgid "B<init_module>(2)\t1.0\n"
19942 msgstr "B<init_module>(2)\t1.0\n"
19943
19944 #. type: tbl table
19945 #: build/C/man2/syscalls.2:292
19946 #, no-wrap
19947 msgid "B<inotify_add_watch>(2)\t2.6.13\n"
19948 msgstr "B<inotify_add_watch>(2)\t2.6.13\n"
19949
19950 #. type: tbl table
19951 #: build/C/man2/syscalls.2:293
19952 #, no-wrap
19953 msgid "B<inotify_init>(2)\t2.6.13\n"
19954 msgstr "B<inotify_init>(2)\t2.6.13\n"
19955
19956 #. type: tbl table
19957 #: build/C/man2/syscalls.2:294
19958 #, no-wrap
19959 msgid "B<inotify_init1>(2)\t2.6.27\n"
19960 msgstr "B<inotify_init1>(2)\t2.6.27\n"
19961
19962 #. type: tbl table
19963 #: build/C/man2/syscalls.2:295
19964 #, no-wrap
19965 msgid "B<inotify_rm_watch>(2)\t2.6.13\n"
19966 msgstr "B<inotify_rm_watch>(2)\t2.6.13\n"
19967
19968 #. type: tbl table
19969 #: build/C/man2/syscalls.2:296
19970 #, no-wrap
19971 msgid "B<io_cancel>(2)\t2.6\n"
19972 msgstr "B<io_cancel>(2)\t2.6\n"
19973
19974 #. type: tbl table
19975 #: build/C/man2/syscalls.2:297
19976 #, no-wrap
19977 msgid "B<io_destroy>(2)\t2.6\n"
19978 msgstr "B<io_destroy>(2)\t2.6\n"
19979
19980 #. type: tbl table
19981 #: build/C/man2/syscalls.2:298
19982 #, no-wrap
19983 msgid "B<io_getevents>(2)\t2.6\n"
19984 msgstr "B<io_getevents>(2)\t2.6\n"
19985
19986 #. type: tbl table
19987 #: build/C/man2/syscalls.2:299
19988 #, no-wrap
19989 msgid "B<io_setup>(2)\t2.6\n"
19990 msgstr "B<io_setup>(2)\t2.6\n"
19991
19992 #. type: tbl table
19993 #: build/C/man2/syscalls.2:300
19994 #, no-wrap
19995 msgid "B<io_submit>(2)\t2.6\n"
19996 msgstr "B<io_submit>(2)\t2.6\n"
19997
19998 #. type: tbl table
19999 #: build/C/man2/syscalls.2:301
20000 #, no-wrap
20001 msgid "B<ioctl>(2)\t1.0\n"
20002 msgstr "B<ioctl>(2)\t1.0\n"
20003
20004 #. type: tbl table
20005 #: build/C/man2/syscalls.2:302
20006 #, no-wrap
20007 msgid "B<ioperm>(2)\t1.0\n"
20008 msgstr "B<ioperm>(2)\t1.0\n"
20009
20010 #. type: tbl table
20011 #: build/C/man2/syscalls.2:303
20012 #, no-wrap
20013 msgid "B<iopl>(2)\t1.0\n"
20014 msgstr "B<iopl>(2)\t1.0\n"
20015
20016 #. type: tbl table
20017 #: build/C/man2/syscalls.2:304
20018 #, no-wrap
20019 msgid "B<ioprio_get>(2)\t2.6.13\n"
20020 msgstr "B<ioprio_get>(2)\t2.6.13\n"
20021
20022 #. type: tbl table
20023 #: build/C/man2/syscalls.2:305
20024 #, no-wrap
20025 msgid "B<ioprio_set>(2)\t2.6.13\n"
20026 msgstr "B<ioprio_set>(2)\t2.6.13\n"
20027
20028 #. type: tbl table
20029 #: build/C/man2/syscalls.2:306
20030 #, no-wrap
20031 msgid "B<ipc>(2)\t1.0\n"
20032 msgstr "B<ipc>(2)\t1.0\n"
20033
20034 #.  Implements System V IPC calls
20035 #. type: tbl table
20036 #: build/C/man2/syscalls.2:308
20037 #, no-wrap
20038 msgid "B<kcmp>(2)\t3.5\n"
20039 msgstr "B<kcmp>(2)\t3.5\n"
20040
20041 #. type: tbl table
20042 #: build/C/man2/syscalls.2:309
20043 #, no-wrap
20044 msgid "B<kern_features>(2)\t3.7\tSparc64\n"
20045 msgstr "B<kern_features>(2)\t3.7\tSparc64\n"
20046
20047 #.  FIXME . document kern_features():
20048 #.  commit 517ffce4e1a03aea979fe3a18a3dd1761a24fafb
20049 #. type: tbl table
20050 #: build/C/man2/syscalls.2:312
20051 #, no-wrap
20052 msgid "B<kexec_file_load>(2)\t3.17\n"
20053 msgstr "B<kexec_file_load>(2)\t3.17\n"
20054
20055 #. type: tbl table
20056 #: build/C/man2/syscalls.2:313
20057 #, no-wrap
20058 msgid "B<kexec_load>(2)\t2.6.13\n"
20059 msgstr "B<kexec_load>(2)\t2.6.13\n"
20060
20061 #.  The entry in the syscall table was reserved starting in 2.6.7
20062 #.  Was named sys_kexec_load() from 2.6.7 to 2.6.16
20063 #. type: tbl table
20064 #: build/C/man2/syscalls.2:316
20065 #, no-wrap
20066 msgid "B<keyctl>(2)\t2.6.11\n"
20067 msgstr "B<keyctl>(2)\t2.6.11\n"
20068
20069 #. type: tbl table
20070 #: build/C/man2/syscalls.2:317
20071 #, no-wrap
20072 msgid "B<kill>(2)\t1.0\n"
20073 msgstr "B<kill>(2)\t1.0\n"
20074
20075 #. type: tbl table
20076 #: build/C/man2/syscalls.2:318
20077 #, no-wrap
20078 msgid "B<lchown>(2)\t1.0\tT{\n"
20079 msgstr "B<lchown>(2)\t1.0\tT{\n"
20080
20081 #. type: tbl table
20082 #: build/C/man2/syscalls.2:323
20083 #, no-wrap
20084 msgid "B<lchown32>(2)\t2.4\n"
20085 msgstr "B<lchown32>(2)\t2.4\n"
20086
20087 #. type: tbl table
20088 #: build/C/man2/syscalls.2:324
20089 #, no-wrap
20090 msgid "B<lgetxattr>(2)\t2.6; 2.4.18\n"
20091 msgstr "B<lgetxattr>(2)\t2.6; 2.4.18\n"
20092
20093 #. type: tbl table
20094 #: build/C/man2/syscalls.2:325
20095 #, no-wrap
20096 msgid "B<link>(2)\t1.0\n"
20097 msgstr "B<link>(2)\t1.0\n"
20098
20099 #. type: tbl table
20100 #: build/C/man2/syscalls.2:326
20101 #, no-wrap
20102 msgid "B<linkat>(2)\t2.6.16\n"
20103 msgstr "B<linkat>(2)\t2.6.16\n"
20104
20105 #. type: tbl table
20106 #: build/C/man2/syscalls.2:327
20107 #, no-wrap
20108 msgid "B<listen>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20109 msgstr "B<listen>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20110
20111 #. type: tbl table
20112 #: build/C/man2/syscalls.2:328
20113 #, no-wrap
20114 msgid "B<listxattr>(2)\t2.6; 2.4.18\n"
20115 msgstr "B<listxattr>(2)\t2.6; 2.4.18\n"
20116
20117 #. type: tbl table
20118 #: build/C/man2/syscalls.2:329
20119 #, no-wrap
20120 msgid "B<llistxattr>(2)\t2.6; 2.4.18\n"
20121 msgstr "B<llistxattr>(2)\t2.6; 2.4.18\n"
20122
20123 #. type: tbl table
20124 #: build/C/man2/syscalls.2:330
20125 #, no-wrap
20126 msgid "B<lookup_dcookie>(2)\t2.6\n"
20127 msgstr "B<lookup_dcookie>(2)\t2.6\n"
20128
20129 #. type: tbl table
20130 #: build/C/man2/syscalls.2:331
20131 #, no-wrap
20132 msgid "B<lremovexattr>(2)\t2.6; 2.4.18\n"
20133 msgstr "B<lremovexattr>(2)\t2.6; 2.4.18\n"
20134
20135 #. type: tbl table
20136 #: build/C/man2/syscalls.2:332
20137 #, no-wrap
20138 msgid "B<lseek>(2)\t1.0\n"
20139 msgstr "B<lseek>(2)\t1.0\n"
20140
20141 #. type: tbl table
20142 #: build/C/man2/syscalls.2:333
20143 #, no-wrap
20144 msgid "B<lsetxattr>(2)\t2.6; 2.4.18\n"
20145 msgstr "B<lsetxattr>(2)\t2.6; 2.4.18\n"
20146
20147 #. type: tbl table
20148 #: build/C/man2/syscalls.2:334
20149 #, no-wrap
20150 msgid "B<lstat>(2)\t1.0\n"
20151 msgstr "B<lstat>(2)\t1.0\n"
20152
20153 #. type: tbl table
20154 #: build/C/man2/syscalls.2:335
20155 #, no-wrap
20156 msgid "B<lstat64>(2)\t2.4\n"
20157 msgstr "B<lstat64>(2)\t2.4\n"
20158
20159 #. type: tbl table
20160 #: build/C/man2/syscalls.2:336
20161 #, no-wrap
20162 msgid "B<madvise>(2)\t2.4\n"
20163 msgstr "B<madvise>(2)\t2.4\n"
20164
20165 #. type: tbl table
20166 #: build/C/man2/syscalls.2:337
20167 #, no-wrap
20168 msgid "B<mbind>(2)\t2.6.6\n"
20169 msgstr "B<mbind>(2)\t2.6.6\n"
20170
20171 #.  \fBmemory_ordering\fP(2)    ???     Sparc64
20172 #. type: tbl table
20173 #: build/C/man2/syscalls.2:339
20174 #, no-wrap
20175 msgid "B<memfd_create>(2)\t3.17\n"
20176 msgstr "B<memfd_create>(2)\t3.17\n"
20177
20178 #. type: tbl table
20179 #: build/C/man2/syscalls.2:340
20180 #, no-wrap
20181 msgid "B<migrate_pages>(2)\t2.6.16\n"
20182 msgstr "B<migrate_pages>(2)\t2.6.16\n"
20183
20184 #. type: tbl table
20185 #: build/C/man2/syscalls.2:341
20186 #, no-wrap
20187 msgid "B<mincore>(2)\t2.4\n"
20188 msgstr "B<mincore>(2)\t2.4\n"
20189
20190 #. type: tbl table
20191 #: build/C/man2/syscalls.2:342
20192 #, no-wrap
20193 msgid "B<mkdir>(2)\t1.0\n"
20194 msgstr "B<mkdir>(2)\t1.0\n"
20195
20196 #. type: tbl table
20197 #: build/C/man2/syscalls.2:343
20198 #, no-wrap
20199 msgid "B<mkdirat>(2)\t2.6.16\n"
20200 msgstr "B<mkdirat>(2)\t2.6.16\n"
20201
20202 #. type: tbl table
20203 #: build/C/man2/syscalls.2:344
20204 #, no-wrap
20205 msgid "B<mknod>(2)\t1.0\n"
20206 msgstr "B<mknod>(2)\t1.0\n"
20207
20208 #. type: tbl table
20209 #: build/C/man2/syscalls.2:345
20210 #, no-wrap
20211 msgid "B<mknodat>(2)\t2.6.16\n"
20212 msgstr "B<mknodat>(2)\t2.6.16\n"
20213
20214 #. type: tbl table
20215 #: build/C/man2/syscalls.2:346
20216 #, no-wrap
20217 msgid "B<mlock>(2)\t2.0\n"
20218 msgstr "B<mlock>(2)\t2.0\n"
20219
20220 #. type: tbl table
20221 #: build/C/man2/syscalls.2:347
20222 #, no-wrap
20223 msgid "B<mlockall>(2)\t2.0\n"
20224 msgstr "B<mlockall>(2)\t2.0\n"
20225
20226 #. type: tbl table
20227 #: build/C/man2/syscalls.2:348
20228 #, no-wrap
20229 msgid "B<mmap>(2)\t1.0\n"
20230 msgstr "B<mmap>(2)\t1.0\n"
20231
20232 #. type: tbl table
20233 #: build/C/man2/syscalls.2:349
20234 #, no-wrap
20235 msgid "B<mmap2>(2)\t2.4\n"
20236 msgstr "B<mmap2>(2)\t2.4\n"
20237
20238 #. type: tbl table
20239 #: build/C/man2/syscalls.2:350
20240 #, no-wrap
20241 msgid "B<modify_ldt>(2)\t1.0\n"
20242 msgstr "B<modify_ldt>(2)\t1.0\n"
20243
20244 #. type: tbl table
20245 #: build/C/man2/syscalls.2:351
20246 #, no-wrap
20247 msgid "B<mount>(2)\t1.0\n"
20248 msgstr "B<mount>(2)\t1.0\n"
20249
20250 #. type: tbl table
20251 #: build/C/man2/syscalls.2:352
20252 #, no-wrap
20253 msgid "B<move_pages>(2)\t2.6.18\n"
20254 msgstr "B<move_pages>(2)\t2.6.18\n"
20255
20256 #. type: tbl table
20257 #: build/C/man2/syscalls.2:353
20258 #, no-wrap
20259 msgid "B<mprotect>(2)\t1.0\n"
20260 msgstr "B<mprotect>(2)\t1.0\n"
20261
20262 #. type: tbl table
20263 #: build/C/man2/syscalls.2:354
20264 #, no-wrap
20265 msgid "B<mq_getsetattr>(2)\t2.6.6\n"
20266 msgstr "B<mq_getsetattr>(2)\t2.6.6\n"
20267
20268 #.  Implements \fBmq_getattr\fP(3) and \fBmq_setattr\fP(3)
20269 #. type: tbl table
20270 #: build/C/man2/syscalls.2:356
20271 #, no-wrap
20272 msgid "B<mq_notify>(2)\t2.6.6\n"
20273 msgstr "B<mq_notify>(2)\t2.6.6\n"
20274
20275 #. type: tbl table
20276 #: build/C/man2/syscalls.2:357
20277 #, no-wrap
20278 msgid "B<mq_open>(2)\t2.6.6\n"
20279 msgstr "B<mq_open>(2)\t2.6.6\n"
20280
20281 #. type: tbl table
20282 #: build/C/man2/syscalls.2:358
20283 #, no-wrap
20284 msgid "B<mq_timedreceive>(2)\t2.6.6\n"
20285 msgstr "B<mq_timedreceive>(2)\t2.6.6\n"
20286
20287 #. type: tbl table
20288 #: build/C/man2/syscalls.2:359
20289 #, no-wrap
20290 msgid "B<mq_timedsend>(2)\t2.6.6\n"
20291 msgstr "B<mq_timedsend>(2)\t2.6.6\n"
20292
20293 #. type: tbl table
20294 #: build/C/man2/syscalls.2:360
20295 #, no-wrap
20296 msgid "B<mq_unlink>(2)\t2.6.6\n"
20297 msgstr "B<mq_unlink>(2)\t2.6.6\n"
20298
20299 #. type: tbl table
20300 #: build/C/man2/syscalls.2:361
20301 #, no-wrap
20302 msgid "B<mremap>(2)\t2.0\n"
20303 msgstr "B<mremap>(2)\t2.0\n"
20304
20305 #. type: tbl table
20306 #: build/C/man2/syscalls.2:362
20307 #, no-wrap
20308 msgid "B<msgctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20309 msgstr "B<msgctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20310
20311 #. type: tbl table
20312 #: build/C/man2/syscalls.2:363
20313 #, no-wrap
20314 msgid "B<msgget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20315 msgstr "B<msgget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20316
20317 #. type: tbl table
20318 #: build/C/man2/syscalls.2:364
20319 #, no-wrap
20320 msgid "B<msgrcv>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20321 msgstr "B<msgrcv>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20322
20323 #. type: tbl table
20324 #: build/C/man2/syscalls.2:365
20325 #, no-wrap
20326 msgid "B<msgsnd>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20327 msgstr "B<msgsnd>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20328
20329 #. type: tbl table
20330 #: build/C/man2/syscalls.2:366
20331 #, no-wrap
20332 msgid "B<msync>(2)\t2.0\n"
20333 msgstr "B<msync>(2)\t2.0\n"
20334
20335 #.  \fBmultiplexer\fP(2)        ??      __NR_multiplexer reserved on
20336 #.              PowerPC, but unimplemented?
20337 #. type: tbl table
20338 #: build/C/man2/syscalls.2:369
20339 #, no-wrap
20340 msgid "B<munlock>(2)\t2.0\n"
20341 msgstr "B<munlock>(2)\t2.0\n"
20342
20343 #. type: tbl table
20344 #: build/C/man2/syscalls.2:370
20345 #, no-wrap
20346 msgid "B<munlockall>(2)\t2.0\n"
20347 msgstr "B<munlockall>(2)\t2.0\n"
20348
20349 #. type: tbl table
20350 #: build/C/man2/syscalls.2:371
20351 #, no-wrap
20352 msgid "B<munmap>(2)\t1.0\n"
20353 msgstr "B<munmap>(2)\t1.0\n"
20354
20355 #. type: tbl table
20356 #: build/C/man2/syscalls.2:372
20357 #, no-wrap
20358 msgid "B<name_to_handle_at>(2)\t2.6.39\n"
20359 msgstr "B<name_to_handle_at>(2)\t2.6.39\n"
20360
20361 #. type: tbl table
20362 #: build/C/man2/syscalls.2:373
20363 #, no-wrap
20364 msgid "B<nanosleep>(2)\t2.0\n"
20365 msgstr "B<nanosleep>(2)\t2.0\n"
20366
20367 #. type: tbl table
20368 #: build/C/man2/syscalls.2:374
20369 #, no-wrap
20370 msgid "B<nfsservctl>(2)\t2.2\tRemoved in 3.1\n"
20371 msgstr "B<nfsservctl>(2)\t2.2\t3.1 で削除\n"
20372
20373 #. type: tbl table
20374 #: build/C/man2/syscalls.2:375
20375 #, no-wrap
20376 msgid "B<nice>(2)\t1.0\n"
20377 msgstr "B<nice>(2)\t1.0\n"
20378
20379 #. type: tbl table
20380 #: build/C/man2/syscalls.2:376
20381 #, no-wrap
20382 msgid "B<oldfstat>(2)\t1.0\n"
20383 msgstr "B<oldfstat>(2)\t1.0\n"
20384
20385 #. type: tbl table
20386 #: build/C/man2/syscalls.2:377
20387 #, no-wrap
20388 msgid "B<oldlstat>(2)\t1.0\n"
20389 msgstr "B<oldlstat>(2)\t1.0\n"
20390
20391 #. type: tbl table
20392 #: build/C/man2/syscalls.2:378
20393 #, no-wrap
20394 msgid "B<oldolduname>(2)\t1.0\n"
20395 msgstr "B<oldolduname>(2)\t1.0\n"
20396
20397 #. type: tbl table
20398 #: build/C/man2/syscalls.2:379
20399 #, no-wrap
20400 msgid "B<oldstat>(2)\t1.0\n"
20401 msgstr "B<oldstat>(2)\t1.0\n"
20402
20403 #. type: tbl table
20404 #: build/C/man2/syscalls.2:380
20405 #, no-wrap
20406 msgid "B<olduname>(2)\t1.0\n"
20407 msgstr "B<olduname>(2)\t1.0\n"
20408
20409 #. type: tbl table
20410 #: build/C/man2/syscalls.2:381
20411 #, no-wrap
20412 msgid "B<open>(2)\t1.0\n"
20413 msgstr "B<open>(2)\t1.0\n"
20414
20415 #. type: tbl table
20416 #: build/C/man2/syscalls.2:382
20417 #, no-wrap
20418 msgid "B<open_by_handle_at>(2)\t2.6.39\n"
20419 msgstr "B<open_by_handle_at>(2)\t2.6.39\n"
20420
20421 #. type: tbl table
20422 #: build/C/man2/syscalls.2:383
20423 #, no-wrap
20424 msgid "B<openat>(2)\t2.6.16\n"
20425 msgstr "B<openat>(2)\t2.6.16\n"
20426
20427 #. type: tbl table
20428 #: build/C/man2/syscalls.2:384
20429 #, no-wrap
20430 msgid "B<pause>(2)\t1.0\n"
20431 msgstr "B<pause>(2)\t1.0\n"
20432
20433 #. type: tbl table
20434 #: build/C/man2/syscalls.2:385
20435 #, no-wrap
20436 msgid "B<pciconfig_iobase>(2)\t2.2.15; 2.4\tNot on x86\n"
20437 msgstr "B<pciconfig_iobase>(2)\t2.2.15; 2.4\tx86 にはない\n"
20438
20439 #.  Alpha, PowerPC, ARM; not x86
20440 #. type: tbl table
20441 #: build/C/man2/syscalls.2:387
20442 #, no-wrap
20443 msgid "B<pciconfig_read>(2)\t2.0.26; 2.2\tNot on x86\n"
20444 msgstr "B<pciconfig_read>(2)\t2.0.26; 2.2\tx86 にはない\n"
20445
20446 #.  , PowerPC, ARM; not x86
20447 #. type: tbl table
20448 #: build/C/man2/syscalls.2:389
20449 #, no-wrap
20450 msgid "B<pciconfig_write>(2)\t2.0.26; 2.2\tNot on x86\n"
20451 msgstr "B<pciconfig_write>(2)\t2.0.26; 2.2\tx86 にはない\n"
20452
20453 #.  , PowerPC, ARM; not x86
20454 #. type: tbl table
20455 #: build/C/man2/syscalls.2:391
20456 #, no-wrap
20457 msgid "B<perf_event_open>(2)\t2.6.31\tT{\n"
20458 msgstr "B<perf_event_open>(2)\t2.6.31\tT{\n"
20459
20460 #. type: tbl table
20461 #: build/C/man2/syscalls.2:392
20462 #, no-wrap
20463 msgid "Was perf_counter_open() in\n"
20464 msgstr "2.6.31 では perf_counter_open() であった;\n"
20465
20466 #. type: tbl table
20467 #: build/C/man2/syscalls.2:394
20468 #, no-wrap
20469 msgid "2.6.31; renamed in 2.6.32\n"
20470 msgstr "2.6.32 で名称変更\n"
20471
20472 #. type: tbl table
20473 #: build/C/man2/syscalls.2:396
20474 #, no-wrap
20475 msgid "B<personality>(2)\t1.2\n"
20476 msgstr "B<personality>(2)\t1.2\n"
20477
20478 #. type: tbl table
20479 #: build/C/man2/syscalls.2:397
20480 #, no-wrap
20481 msgid "B<perfctr>(2)\t2.2\tSparc; removed in 2.6.34\n"
20482 msgstr "B<perfctr>(2)\t2.2\tSparc; 2.6.34 で削除\n"
20483
20484 #.      commit c7d5a0050773e98d1094eaa9f2a1a793fafac300 removed perfctr()
20485 #. type: tbl table
20486 #: build/C/man2/syscalls.2:399
20487 #, no-wrap
20488 msgid "B<perfmonctl>(2)\t2.4\tia64\n"
20489 msgstr "B<perfmonctl>(2)\t2.4\tia64\n"
20490
20491 #. type: tbl table
20492 #: build/C/man2/syscalls.2:400
20493 #, no-wrap
20494 msgid "B<pipe>(2)\t1.0\n"
20495 msgstr "B<pipe>(2)\t1.0\n"
20496
20497 #. type: tbl table
20498 #: build/C/man2/syscalls.2:401
20499 #, no-wrap
20500 msgid "B<pipe2>(2)\t2.6.27\n"
20501 msgstr "B<pipe2>(2)\t2.6.27\n"
20502
20503 #. type: tbl table
20504 #: build/C/man2/syscalls.2:402
20505 #, no-wrap
20506 msgid "B<pivot_root>(2)\t2.4\n"
20507 msgstr "B<pivot_root>(2)\t2.4\n"
20508
20509 #. type: tbl table
20510 #: build/C/man2/syscalls.2:403
20511 #, no-wrap
20512 msgid "B<poll>(2)\t2.0.36; 2.2\n"
20513 msgstr "B<poll>(2)\t2.0.36; 2.2\n"
20514
20515 #. type: tbl table
20516 #: build/C/man2/syscalls.2:404
20517 #, no-wrap
20518 msgid "B<ppc_rtas>(2)\t2.6.2\tPowerPC only\n"
20519 msgstr "B<ppc_rtas>(2)\t2.6.2\tPowerPC のみ\n"
20520
20521 #. type: tbl table
20522 #: build/C/man2/syscalls.2:405
20523 #, no-wrap
20524 msgid "B<ppoll>(2)\t2.6.16\n"
20525 msgstr "B<ppoll>(2)\t2.6.16\n"
20526
20527 #. type: tbl table
20528 #: build/C/man2/syscalls.2:406
20529 #, no-wrap
20530 msgid "B<prctl>(2)\t2.2\n"
20531 msgstr "B<prctl>(2)\t2.2\n"
20532
20533 #. type: tbl table
20534 #: build/C/man2/syscalls.2:407
20535 #, no-wrap
20536 msgid "B<pread64>(2)\t\tT{\n"
20537 msgstr "B<pread64>(2)\t\tT{\n"
20538
20539 #. type: tbl table
20540 #: build/C/man2/syscalls.2:408
20541 #, no-wrap
20542 msgid "Added as \"pread\" in 2.2;\n"
20543 msgstr "2.2 で \"pread\" として追加;\n"
20544
20545 #. type: tbl table
20546 #: build/C/man2/syscalls.2:410
20547 #, no-wrap
20548 msgid "renamed \"pread64\" in 2.6\n"
20549 msgstr "2.6 で \"pread64\" に名称変更\n"
20550
20551 #. type: tbl table
20552 #: build/C/man2/syscalls.2:412
20553 #, no-wrap
20554 msgid "B<preadv>(2)\t2.6.30\n"
20555 msgstr "B<preadv>(2)\t2.6.30\n"
20556
20557 #. type: tbl table
20558 #: build/C/man2/syscalls.2:413
20559 #, no-wrap
20560 msgid "B<prlimit>(2)\t2.6.36\n"
20561 msgstr "B<prlimit>(2)\t2.6.36\n"
20562
20563 #. type: tbl table
20564 #: build/C/man2/syscalls.2:414
20565 #, no-wrap
20566 msgid "B<prlimit64>(2)\t2.6.36\n"
20567 msgstr "B<prlimit64>(2)\t2.6.36\n"
20568
20569 #. type: tbl table
20570 #: build/C/man2/syscalls.2:415
20571 #, no-wrap
20572 msgid "B<process_vm_readv>(2)\t3.2\n"
20573 msgstr "B<process_vm_readv>(2)\t3.2\n"
20574
20575 #. type: tbl table
20576 #: build/C/man2/syscalls.2:416
20577 #, no-wrap
20578 msgid "B<process_vm_writev>(2)\t3.2\n"
20579 msgstr "B<process_vm_writev>(2)\t3.2\n"
20580
20581 #. type: tbl table
20582 #: build/C/man2/syscalls.2:417
20583 #, no-wrap
20584 msgid "B<pselect6>(2)\t2.6.16\n"
20585 msgstr "B<pselect6>(2)\t2.6.16\n"
20586
20587 #.  Implements \fBpselect\fP(2)
20588 #. type: tbl table
20589 #: build/C/man2/syscalls.2:419
20590 #, no-wrap
20591 msgid "B<ptrace>(2)\t1.0\n"
20592 msgstr "B<ptrace>(2)\t1.0\n"
20593
20594 #. type: tbl table
20595 #: build/C/man2/syscalls.2:420
20596 #, no-wrap
20597 msgid "B<pwrite64>(2)\t\tT{\n"
20598 msgstr "B<pwrite64>(2)\t\tT{\n"
20599
20600 #. type: tbl table
20601 #: build/C/man2/syscalls.2:421
20602 #, no-wrap
20603 msgid "Added as \"pwrite\" in 2.2;\n"
20604 msgstr "2.2 で \"pwrite\" として追加;\n"
20605
20606 #. type: tbl table
20607 #: build/C/man2/syscalls.2:423
20608 #, no-wrap
20609 msgid "renamed \"pwrite64\" in 2.6\n"
20610 msgstr "2.6 で \"pwrite64\" に名称変更\n"
20611
20612 #. type: tbl table
20613 #: build/C/man2/syscalls.2:425
20614 #, no-wrap
20615 msgid "B<pwritev>(2)\t2.6.30\n"
20616 msgstr "B<pwritev>(2)\t2.6.30\n"
20617
20618 #. type: tbl table
20619 #: build/C/man2/syscalls.2:426
20620 #, no-wrap
20621 msgid "B<query_module>(2)\t2.2\tRemoved in 2.6\n"
20622 msgstr "B<query_module>(2)\t2.2\t2.6 で削除\n"
20623
20624 #. type: tbl table
20625 #: build/C/man2/syscalls.2:427
20626 #, no-wrap
20627 msgid "B<quotactl>(2)\t1.0\n"
20628 msgstr "B<quotactl>(2)\t1.0\n"
20629
20630 #. type: tbl table
20631 #: build/C/man2/syscalls.2:428
20632 #, no-wrap
20633 msgid "B<read>(2)\t1.0\n"
20634 msgstr "B<read>(2)\t1.0\n"
20635
20636 #. type: tbl table
20637 #: build/C/man2/syscalls.2:429
20638 #, no-wrap
20639 msgid "B<readahead>(2)\t2.4.13\n"
20640 msgstr "B<readahead>(2)\t2.4.13\n"
20641
20642 #. type: tbl table
20643 #: build/C/man2/syscalls.2:430
20644 #, no-wrap
20645 msgid "B<readdir>(2)\t1.0\n"
20646 msgstr "B<readdir>(2)\t1.0\n"
20647
20648 #.  Supersedes \fBgetdents\fP(2)
20649 #. type: tbl table
20650 #: build/C/man2/syscalls.2:432
20651 #, no-wrap
20652 msgid "B<readlink>(2)\t1.0\n"
20653 msgstr "B<readlink>(2)\t1.0\n"
20654
20655 #. type: tbl table
20656 #: build/C/man2/syscalls.2:433
20657 #, no-wrap
20658 msgid "B<readlinkat>(2)\t2.6.16\n"
20659 msgstr "B<readlinkat>(2)\t2.6.16\n"
20660
20661 #. type: tbl table
20662 #: build/C/man2/syscalls.2:434
20663 #, no-wrap
20664 msgid "B<readv>(2)\t2.0\n"
20665 msgstr "B<readv>(2)\t2.0\n"
20666
20667 #. type: tbl table
20668 #: build/C/man2/syscalls.2:435
20669 #, no-wrap
20670 msgid "B<reboot>(2)\t1.0\n"
20671 msgstr "B<reboot>(2)\t1.0\n"
20672
20673 #. type: tbl table
20674 #: build/C/man2/syscalls.2:436
20675 #, no-wrap
20676 msgid "B<recv>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20677 msgstr "B<recv>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20678
20679 #. type: tbl table
20680 #: build/C/man2/syscalls.2:437
20681 #, no-wrap
20682 msgid "B<recvfrom>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20683 msgstr "B<recvfrom>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20684
20685 #. type: tbl table
20686 #: build/C/man2/syscalls.2:438
20687 #, no-wrap
20688 msgid "B<recvmsg>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20689 msgstr "B<recvmsg>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20690
20691 #. type: tbl table
20692 #: build/C/man2/syscalls.2:439
20693 #, no-wrap
20694 msgid "B<recvmmsg>(2)\t2.6.33\n"
20695 msgstr "B<recvmmsg>(2)\t2.6.33\n"
20696
20697 #. type: tbl table
20698 #: build/C/man2/syscalls.2:440
20699 #, no-wrap
20700 msgid "B<remap_file_pages>(2)\t2.6\tDeprecated since 3.16\n"
20701 msgstr "B<remap_file_pages>(2)\t2.6\t3.16 以降では非推奨\n"
20702
20703 #. type: tbl table
20704 #: build/C/man2/syscalls.2:441
20705 #, no-wrap
20706 msgid "B<removexattr>(2)\t2.6; 2.4.18\n"
20707 msgstr "B<removexattr>(2)\t2.6; 2.4.18\n"
20708
20709 #. type: tbl table
20710 #: build/C/man2/syscalls.2:442
20711 #, no-wrap
20712 msgid "B<rename>(2)\t1.0\n"
20713 msgstr "B<rename>(2)\t1.0\n"
20714
20715 #. type: tbl table
20716 #: build/C/man2/syscalls.2:443
20717 #, no-wrap
20718 msgid "B<renameat>(2)\t2.6.16\n"
20719 msgstr "B<renameat>(2)\t2.6.16\n"
20720
20721 #. type: tbl table
20722 #: build/C/man2/syscalls.2:444
20723 #, no-wrap
20724 msgid "B<renameat2>(2)\t3.15\n"
20725 msgstr "B<renameat2>(2)\t3.15\n"
20726
20727 #. type: tbl table
20728 #: build/C/man2/syscalls.2:445
20729 #, no-wrap
20730 msgid "B<request_key>(2)\t2.6.11\n"
20731 msgstr "B<request_key>(2)\t2.6.11\n"
20732
20733 #. type: tbl table
20734 #: build/C/man2/syscalls.2:446
20735 #, no-wrap
20736 msgid "B<restart_syscall>(2)\t2.6\n"
20737 msgstr "B<restart_syscall>(2)\t2.6\n"
20738
20739 #. type: tbl table
20740 #: build/C/man2/syscalls.2:447
20741 #, no-wrap
20742 msgid "B<rmdir>(2)\t1.0\n"
20743 msgstr "B<rmdir>(2)\t1.0\n"
20744
20745 #. type: tbl table
20746 #: build/C/man2/syscalls.2:448
20747 #, no-wrap
20748 msgid "B<rt_sigaction>(2)\t2.2\n"
20749 msgstr "B<rt_sigaction>(2)\t2.2\n"
20750
20751 #. type: tbl table
20752 #: build/C/man2/syscalls.2:449
20753 #, no-wrap
20754 msgid "B<rt_sigpending>(2)\t2.2\n"
20755 msgstr "B<rt_sigpending>(2)\t2.2\n"
20756
20757 #. type: tbl table
20758 #: build/C/man2/syscalls.2:450
20759 #, no-wrap
20760 msgid "B<rt_sigprocmask>(2)\t2.2\n"
20761 msgstr "B<rt_sigprocmask>(2)\t2.2\n"
20762
20763 #. type: tbl table
20764 #: build/C/man2/syscalls.2:451
20765 #, no-wrap
20766 msgid "B<rt_sigqueueinfo>(2)\t2.2\n"
20767 msgstr "B<rt_sigqueueinfo>(2)\t2.2\n"
20768
20769 #. type: tbl table
20770 #: build/C/man2/syscalls.2:452
20771 #, no-wrap
20772 msgid "B<rt_sigreturn>(2)\t2.2\n"
20773 msgstr "B<rt_sigreturn>(2)\t2.2\n"
20774
20775 #. type: tbl table
20776 #: build/C/man2/syscalls.2:453
20777 #, no-wrap
20778 msgid "B<rt_sigsuspend>(2)\t2.2\n"
20779 msgstr "B<rt_sigsuspend>(2)\t2.2\n"
20780
20781 #. type: tbl table
20782 #: build/C/man2/syscalls.2:454
20783 #, no-wrap
20784 msgid "B<rt_sigtimedwait>(2)\t2.2\n"
20785 msgstr "B<rt_sigtimedwait>(2)\t2.2\n"
20786
20787 #. type: tbl table
20788 #: build/C/man2/syscalls.2:455
20789 #, no-wrap
20790 msgid "B<rt_tgsigqueueinfo>(2)\t2.6.31\n"
20791 msgstr "B<rt_tgsigqueueinfo>(2)\t2.6.31\n"
20792
20793 #. type: tbl table
20794 #: build/C/man2/syscalls.2:456
20795 #, no-wrap
20796 msgid "B<s390_runtime_instr>(2)\t3.7\ts390 only\n"
20797 msgstr "B<s390_runtime_instr>(2)\t3.7\ts390 のみ\n"
20798
20799 #. type: tbl table
20800 #: build/C/man2/syscalls.2:457
20801 #, no-wrap
20802 msgid "B<s390_pci_mmio_read>(2)\t3.19\ts390 only\n"
20803 msgstr "B<s390_pci_mmio_read>(2)\t3.19\ts390 のみ\n"
20804
20805 #. type: tbl table
20806 #: build/C/man2/syscalls.2:458
20807 #, no-wrap
20808 msgid "B<s390_pci_mmio_write>(2)\t3.19\ts390 only\n"
20809 msgstr "B<s390_pci_mmio_write>(2)\t3.19\ts390 のみ\n"
20810
20811 #. type: tbl table
20812 #: build/C/man2/syscalls.2:459
20813 #, no-wrap
20814 msgid "B<sched_get_priority_max>(2)\t2.0\n"
20815 msgstr "B<sched_get_priority_max>(2)\t2.0\n"
20816
20817 #. type: tbl table
20818 #: build/C/man2/syscalls.2:460
20819 #, no-wrap
20820 msgid "B<sched_get_priority_min>(2)\t2.0\n"
20821 msgstr "B<sched_get_priority_min>(2)\t2.0\n"
20822
20823 #. type: tbl table
20824 #: build/C/man2/syscalls.2:461
20825 #, no-wrap
20826 msgid "B<sched_getaffinity>(2)\t2.6\n"
20827 msgstr "B<sched_getaffinity>(2)\t2.6\n"
20828
20829 #. type: tbl table
20830 #: build/C/man2/syscalls.2:462
20831 #, no-wrap
20832 msgid "B<sched_getattr>(2)\t3.14\n"
20833 msgstr "B<sched_getattr>(2)\t3.14\n"
20834
20835 #. type: tbl table
20836 #: build/C/man2/syscalls.2:463
20837 #, no-wrap
20838 msgid "B<sched_getparam>(2)\t2.0\n"
20839 msgstr "B<sched_getparam>(2)\t2.0\n"
20840
20841 #. type: tbl table
20842 #: build/C/man2/syscalls.2:464
20843 #, no-wrap
20844 msgid "B<sched_getscheduler>(2)\t2.0\n"
20845 msgstr "B<sched_getscheduler>(2)\t2.0\n"
20846
20847 #. type: tbl table
20848 #: build/C/man2/syscalls.2:465
20849 #, no-wrap
20850 msgid "B<sched_rr_get_interval>(2)\t2.0\n"
20851 msgstr "B<sched_rr_get_interval>(2)\t2.0\n"
20852
20853 #. type: tbl table
20854 #: build/C/man2/syscalls.2:466
20855 #, no-wrap
20856 msgid "B<sched_setaffinity>(2)\t2.6\n"
20857 msgstr "B<sched_setaffinity>(2)\t2.6\n"
20858
20859 #. type: tbl table
20860 #: build/C/man2/syscalls.2:467
20861 #, no-wrap
20862 msgid "B<sched_setattr>(2)\t3.14\n"
20863 msgstr "B<sched_setattr>(2)\t3.14\n"
20864
20865 #. type: tbl table
20866 #: build/C/man2/syscalls.2:468
20867 #, no-wrap
20868 msgid "B<sched_setparam>(2)\t2.0\n"
20869 msgstr "B<sched_setparam>(2)\t2.0\n"
20870
20871 #. type: tbl table
20872 #: build/C/man2/syscalls.2:469
20873 #, no-wrap
20874 msgid "B<sched_setscheduler>(2)\t2.0\n"
20875 msgstr "B<sched_setscheduler>(2)\t2.0\n"
20876
20877 #. type: tbl table
20878 #: build/C/man2/syscalls.2:470
20879 #, no-wrap
20880 msgid "B<sched_yield>(2)\t2.0\n"
20881 msgstr "B<sched_yield>(2)\t2.0\n"
20882
20883 #. type: tbl table
20884 #: build/C/man2/syscalls.2:471
20885 #, no-wrap
20886 msgid "B<seccomp>(2)\t3.17\n"
20887 msgstr "B<seccomp>(2)\t3.17\n"
20888
20889 #. type: tbl table
20890 #: build/C/man2/syscalls.2:472
20891 #, no-wrap
20892 msgid "B<select>(2)\t1.0\n"
20893 msgstr "B<select>(2)\t1.0\n"
20894
20895 #. type: tbl table
20896 #: build/C/man2/syscalls.2:473
20897 #, no-wrap
20898 msgid "B<semctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20899 msgstr "B<semctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20900
20901 #. type: tbl table
20902 #: build/C/man2/syscalls.2:474
20903 #, no-wrap
20904 msgid "B<semget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20905 msgstr "B<semget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20906
20907 #. type: tbl table
20908 #: build/C/man2/syscalls.2:475
20909 #, no-wrap
20910 msgid "B<semop>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20911 msgstr "B<semop>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20912
20913 #. type: tbl table
20914 #: build/C/man2/syscalls.2:476
20915 #, no-wrap
20916 msgid "B<semtimedop>(2)\t2.6; 2.4.22\n"
20917 msgstr "B<semtimedop>(2)\t2.6; 2.4.22\n"
20918
20919 #. type: tbl table
20920 #: build/C/man2/syscalls.2:477
20921 #, no-wrap
20922 msgid "B<send>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20923 msgstr "B<send>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20924
20925 #. type: tbl table
20926 #: build/C/man2/syscalls.2:478
20927 #, no-wrap
20928 msgid "B<sendfile>(2)\t2.2\n"
20929 msgstr "B<sendfile>(2)\t2.2\n"
20930
20931 #. type: tbl table
20932 #: build/C/man2/syscalls.2:479
20933 #, no-wrap
20934 msgid "B<sendfile64>(2)\t2.6; 2.4.19\n"
20935 msgstr "B<sendfile64>(2)\t2.6; 2.4.19\n"
20936
20937 #. type: tbl table
20938 #: build/C/man2/syscalls.2:480
20939 #, no-wrap
20940 msgid "B<sendmmsg>(2)\t3.0\n"
20941 msgstr "B<sendmmsg>(2)\t3.0\n"
20942
20943 #. type: tbl table
20944 #: build/C/man2/syscalls.2:481
20945 #, no-wrap
20946 msgid "B<sendmsg>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20947 msgstr "B<sendmsg>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20948
20949 #. type: tbl table
20950 #: build/C/man2/syscalls.2:482
20951 #, no-wrap
20952 msgid "B<sendto>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20953 msgstr "B<sendto>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20954
20955 #. type: tbl table
20956 #: build/C/man2/syscalls.2:483
20957 #, no-wrap
20958 msgid "B<set_mempolicy>(2)\t2.6.6\n"
20959 msgstr "B<set_mempolicy>(2)\t2.6.6\n"
20960
20961 #. type: tbl table
20962 #: build/C/man2/syscalls.2:484
20963 #, no-wrap
20964 msgid "B<set_robust_list>(2)\t2.6.17\n"
20965 msgstr "B<set_robust_list>(2)\t2.6.17\n"
20966
20967 #. type: tbl table
20968 #: build/C/man2/syscalls.2:485
20969 #, no-wrap
20970 msgid "B<set_thread_area>(2)\t2.6\n"
20971 msgstr "B<set_thread_area>(2)\t2.6\n"
20972
20973 #. type: tbl table
20974 #: build/C/man2/syscalls.2:486
20975 #, no-wrap
20976 msgid "B<set_tid_address>(2)\t2.6\n"
20977 msgstr "B<set_tid_address>(2)\t2.6\n"
20978
20979 #.  See http://lkml.org/lkml/2005/8/1/83
20980 #.  "[PATCH] remove sys_set_zone_reclaim()"
20981 #. type: tbl table
20982 #: build/C/man2/syscalls.2:489
20983 #, no-wrap
20984 msgid "B<setdomainname>(2)\t1.0\n"
20985 msgstr "B<setdomainname>(2)\t1.0\n"
20986
20987 #. type: tbl table
20988 #: build/C/man2/syscalls.2:490
20989 #, no-wrap
20990 msgid "B<setfsgid>(2)\t1.2\n"
20991 msgstr "B<setfsgid>(2)\t1.2\n"
20992
20993 #. type: tbl table
20994 #: build/C/man2/syscalls.2:491
20995 #, no-wrap
20996 msgid "B<setfsgid32>(2)\t2.4\n"
20997 msgstr "B<setfsgid32>(2)\t2.4\n"
20998
20999 #. type: tbl table
21000 #: build/C/man2/syscalls.2:492
21001 #, no-wrap
21002 msgid "B<setfsuid>(2)\t1.2\n"
21003 msgstr "B<setfsuid>(2)\t1.2\n"
21004
21005 #. type: tbl table
21006 #: build/C/man2/syscalls.2:493
21007 #, no-wrap
21008 msgid "B<setfsuid32>(2)\t2.4\n"
21009 msgstr "B<setfsuid32>(2)\t2.4\n"
21010
21011 #. type: tbl table
21012 #: build/C/man2/syscalls.2:494
21013 #, no-wrap
21014 msgid "B<setgid>(2)\t1.0\n"
21015 msgstr "B<setgid>(2)\t1.0\n"
21016
21017 #. type: tbl table
21018 #: build/C/man2/syscalls.2:495
21019 #, no-wrap
21020 msgid "B<setgid32>(2)\t2.4\n"
21021 msgstr "B<setgid32>(2)\t2.4\n"
21022
21023 #. type: tbl table
21024 #: build/C/man2/syscalls.2:496
21025 #, no-wrap
21026 msgid "B<setgroups>(2)\t1.0\n"
21027 msgstr "B<setgroups>(2)\t1.0\n"
21028
21029 #. type: tbl table
21030 #: build/C/man2/syscalls.2:497
21031 #, no-wrap
21032 msgid "B<setgroups32>(2)\t2.4\n"
21033 msgstr "B<setgroups32>(2)\t2.4\n"
21034
21035 #. type: tbl table
21036 #: build/C/man2/syscalls.2:498
21037 #, no-wrap
21038 msgid "B<sethostname>(2)\t1.0\n"
21039 msgstr "B<sethostname>(2)\t1.0\n"
21040
21041 #. type: tbl table
21042 #: build/C/man2/syscalls.2:499
21043 #, no-wrap
21044 msgid "B<setitimer>(2)\t1.0\n"
21045 msgstr "B<setitimer>(2)\t1.0\n"
21046
21047 #. type: tbl table
21048 #: build/C/man2/syscalls.2:500
21049 #, no-wrap
21050 msgid "B<setns>(2)\t3.0\n"
21051 msgstr "B<setns>(2)\t3.0\n"
21052
21053 #. type: tbl table
21054 #: build/C/man2/syscalls.2:501
21055 #, no-wrap
21056 msgid "B<setpgid>(2)\t1.0\n"
21057 msgstr "B<setpgid>(2)\t1.0\n"
21058
21059 #. type: tbl table
21060 #: build/C/man2/syscalls.2:502
21061 #, no-wrap
21062 msgid "B<setpriority>(2)\t1.0\n"
21063 msgstr "B<setpriority>(2)\t1.0\n"
21064
21065 #. type: tbl table
21066 #: build/C/man2/syscalls.2:503
21067 #, no-wrap
21068 msgid "B<setregid>(2)\t1.0\n"
21069 msgstr "B<setregid>(2)\t1.0\n"
21070
21071 #. type: tbl table
21072 #: build/C/man2/syscalls.2:504
21073 #, no-wrap
21074 msgid "B<setregid32>(2)\t2.4\n"
21075 msgstr "B<setregid32>(2)\t2.4\n"
21076
21077 #. type: tbl table
21078 #: build/C/man2/syscalls.2:505
21079 #, no-wrap
21080 msgid "B<setresgid>(2)\t2.2\n"
21081 msgstr "B<setresgid>(2)\t2.2\n"
21082
21083 #. type: tbl table
21084 #: build/C/man2/syscalls.2:506
21085 #, no-wrap
21086 msgid "B<setresgid32>(2)\t2.4\n"
21087 msgstr "B<setresgid32>(2)\t2.4\n"
21088
21089 #. type: tbl table
21090 #: build/C/man2/syscalls.2:507
21091 #, no-wrap
21092 msgid "B<setresuid>(2)\t2.2\n"
21093 msgstr "B<setresuid>(2)\t2.2\n"
21094
21095 #. type: tbl table
21096 #: build/C/man2/syscalls.2:508
21097 #, no-wrap
21098 msgid "B<setresuid32>(2)\t2.4\n"
21099 msgstr "B<setresuid32>(2)\t2.4\n"
21100
21101 #. type: tbl table
21102 #: build/C/man2/syscalls.2:509
21103 #, no-wrap
21104 msgid "B<setreuid>(2)\t1.0\n"
21105 msgstr "B<setreuid>(2)\t1.0\n"
21106
21107 #. type: tbl table
21108 #: build/C/man2/syscalls.2:510
21109 #, no-wrap
21110 msgid "B<setreuid32>(2)\t2.4\n"
21111 msgstr "B<setreuid32>(2)\t2.4\n"
21112
21113 #. type: tbl table
21114 #: build/C/man2/syscalls.2:511
21115 #, no-wrap
21116 msgid "B<setrlimit>(2)\t1.0\n"
21117 msgstr "B<setrlimit>(2)\t1.0\n"
21118
21119 #. type: tbl table
21120 #: build/C/man2/syscalls.2:512
21121 #, no-wrap
21122 msgid "B<setsid>(2)\t1.0\n"
21123 msgstr "B<setsid>(2)\t1.0\n"
21124
21125 #. type: tbl table
21126 #: build/C/man2/syscalls.2:513
21127 #, no-wrap
21128 msgid "B<setsockopt>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21129 msgstr "B<setsockopt>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21130
21131 #. type: tbl table
21132 #: build/C/man2/syscalls.2:514
21133 #, no-wrap
21134 msgid "B<settimeofday>(2)\t1.0\n"
21135 msgstr "B<settimeofday>(2)\t1.0\n"
21136
21137 #. type: tbl table
21138 #: build/C/man2/syscalls.2:515
21139 #, no-wrap
21140 msgid "B<setuid>(2)\t1.0\n"
21141 msgstr "B<setuid>(2)\t1.0\n"
21142
21143 #. type: tbl table
21144 #: build/C/man2/syscalls.2:516
21145 #, no-wrap
21146 msgid "B<setuid32>(2)\t2.4\n"
21147 msgstr "B<setuid32>(2)\t2.4\n"
21148
21149 #. type: tbl table
21150 #: build/C/man2/syscalls.2:517
21151 #, no-wrap
21152 msgid "B<setup>(2)\t1.0\tRemoved in 2.2\n"
21153 msgstr "B<setup>(2)\t1.0\t2.2 で削除\n"
21154
21155 #. type: tbl table
21156 #: build/C/man2/syscalls.2:518
21157 #, no-wrap
21158 msgid "B<setxattr>(2)\t2.6; 2.4.18\n"
21159 msgstr "B<setxattr>(2)\t2.6; 2.4.18\n"
21160
21161 #. type: tbl table
21162 #: build/C/man2/syscalls.2:519
21163 #, no-wrap
21164 msgid "B<sgetmask>(2)\t1.0\n"
21165 msgstr "B<sgetmask>(2)\t1.0\n"
21166
21167 #. type: tbl table
21168 #: build/C/man2/syscalls.2:520
21169 #, no-wrap
21170 msgid "B<shmat>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21171 msgstr "B<shmat>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21172
21173 #. type: tbl table
21174 #: build/C/man2/syscalls.2:521
21175 #, no-wrap
21176 msgid "B<shmctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21177 msgstr "B<shmctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21178
21179 #. type: tbl table
21180 #: build/C/man2/syscalls.2:522
21181 #, no-wrap
21182 msgid "B<shmdt>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21183 msgstr "B<shmdt>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21184
21185 #. type: tbl table
21186 #: build/C/man2/syscalls.2:523
21187 #, no-wrap
21188 msgid "B<shmget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21189 msgstr "B<shmget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21190
21191 #. type: tbl table
21192 #: build/C/man2/syscalls.2:524
21193 #, no-wrap
21194 msgid "B<shutdown>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21195 msgstr "B<shutdown>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21196
21197 #. type: tbl table
21198 #: build/C/man2/syscalls.2:525
21199 #, no-wrap
21200 msgid "B<sigaction>(2)\t1.0\n"
21201 msgstr "B<sigaction>(2)\t1.0\n"
21202
21203 #. type: tbl table
21204 #: build/C/man2/syscalls.2:526
21205 #, no-wrap
21206 msgid "B<sigaltstack>(2)\t2.2\n"
21207 msgstr "B<sigaltstack>(2)\t2.2\n"
21208
21209 #. type: tbl table
21210 #: build/C/man2/syscalls.2:527
21211 #, no-wrap
21212 msgid "B<signal>(2)\t1.0\n"
21213 msgstr "B<signal>(2)\t1.0\n"
21214
21215 #. type: tbl table
21216 #: build/C/man2/syscalls.2:528
21217 #, no-wrap
21218 msgid "B<signalfd>(2)\t2.6.22\n"
21219 msgstr "B<signalfd>(2)\t2.6.22\n"
21220
21221 #. type: tbl table
21222 #: build/C/man2/syscalls.2:529
21223 #, no-wrap
21224 msgid "B<signalfd4>(2)\t2.6.27\n"
21225 msgstr "B<signalfd4>(2)\t2.6.27\n"
21226
21227 #. type: tbl table
21228 #: build/C/man2/syscalls.2:530
21229 #, no-wrap
21230 msgid "B<sigpending>(2)\t1.0\n"
21231 msgstr "B<sigpending>(2)\t1.0\n"
21232
21233 #. type: tbl table
21234 #: build/C/man2/syscalls.2:531
21235 #, no-wrap
21236 msgid "B<sigprocmask>(2)\t1.0\n"
21237 msgstr "B<sigprocmask>(2)\t1.0\n"
21238
21239 #. type: tbl table
21240 #: build/C/man2/syscalls.2:532
21241 #, no-wrap
21242 msgid "B<sigreturn>(2)\t1.0\n"
21243 msgstr "B<sigreturn>(2)\t1.0\n"
21244
21245 #. type: tbl table
21246 #: build/C/man2/syscalls.2:533
21247 #, no-wrap
21248 msgid "B<sigsuspend>(2)\t1.0\n"
21249 msgstr "B<sigsuspend>(2)\t1.0\n"
21250
21251 #. type: tbl table
21252 #: build/C/man2/syscalls.2:534
21253 #, no-wrap
21254 msgid "B<socket>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21255 msgstr "B<socket>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21256
21257 #. type: tbl table
21258 #: build/C/man2/syscalls.2:535
21259 #, no-wrap
21260 msgid "B<socketcall>(2)\t1.0\n"
21261 msgstr "B<socketcall>(2)\t1.0\n"
21262
21263 #.  Implements BSD socket calls
21264 #. type: tbl table
21265 #: build/C/man2/syscalls.2:537
21266 #, no-wrap
21267 msgid "B<socketpair>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21268 msgstr "B<socketpair>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21269
21270 #. type: tbl table
21271 #: build/C/man2/syscalls.2:538
21272 #, no-wrap
21273 msgid "B<splice>(2)\t2.6.17\n"
21274 msgstr "B<splice>(2)\t2.6.17\n"
21275
21276 #. type: tbl table
21277 #: build/C/man2/syscalls.2:539
21278 #, no-wrap
21279 msgid "B<spu_create>(2)\t2.6.16\tPowerPC only\n"
21280 msgstr "B<spu_create>(2)\t2.6.16\tPowerPC のみ\n"
21281
21282 #. type: tbl table
21283 #: build/C/man2/syscalls.2:540
21284 #, no-wrap
21285 msgid "B<spu_run>(2)\t2.6.16\tPowerPC only\n"
21286 msgstr "B<spu_run>(2)\t2.6.16\tPowerPC のみ\n"
21287
21288 #. type: tbl table
21289 #: build/C/man2/syscalls.2:541
21290 #, no-wrap
21291 msgid "B<ssetmask>(2)\t1.0\n"
21292 msgstr "B<ssetmask>(2)\t1.0\n"
21293
21294 #. type: tbl table
21295 #: build/C/man2/syscalls.2:542
21296 #, no-wrap
21297 msgid "B<stat>(2)\t1.0\n"
21298 msgstr "B<stat>(2)\t1.0\n"
21299
21300 #. type: tbl table
21301 #: build/C/man2/syscalls.2:543
21302 #, no-wrap
21303 msgid "B<stat64>(2)\t2.4\n"
21304 msgstr "B<stat64>(2)\t2.4\n"
21305
21306 #. type: tbl table
21307 #: build/C/man2/syscalls.2:544
21308 #, no-wrap
21309 msgid "B<statfs>(2)\t1.0\n"
21310 msgstr "B<statfs>(2)\t1.0\n"
21311
21312 #. type: tbl table
21313 #: build/C/man2/syscalls.2:545
21314 #, no-wrap
21315 msgid "B<statfs64>(2)\t2.6\n"
21316 msgstr "B<statfs64>(2)\t2.6\n"
21317
21318 #. type: tbl table
21319 #: build/C/man2/syscalls.2:546
21320 #, no-wrap
21321 msgid "B<stime>(2)\t1.0\n"
21322 msgstr "B<stime>(2)\t1.0\n"
21323
21324 #. type: tbl table
21325 #: build/C/man2/syscalls.2:547
21326 #, no-wrap
21327 msgid "B<subpage_prot>(2)\t2.6.25\tPowerPC only\n"
21328 msgstr "B<subpage_prot>(2)\t2.6.25\tPowerPC のみ\n"
21329
21330 #. type: tbl table
21331 #: build/C/man2/syscalls.2:548
21332 #, no-wrap
21333 msgid "B<swapoff>(2)\t1.0\n"
21334 msgstr "B<swapoff>(2)\t1.0\n"
21335
21336 #. type: tbl table
21337 #: build/C/man2/syscalls.2:549
21338 #, no-wrap
21339 msgid "B<swapon>(2)\t1.0\n"
21340 msgstr "B<swapon>(2)\t1.0\n"
21341
21342 #. type: tbl table
21343 #: build/C/man2/syscalls.2:550
21344 #, no-wrap
21345 msgid "B<symlink>(2)\t1.0\n"
21346 msgstr "B<symlink>(2)\t1.0\n"
21347
21348 #. type: tbl table
21349 #: build/C/man2/syscalls.2:551
21350 #, no-wrap
21351 msgid "B<symlinkat>(2)\t2.6.16\n"
21352 msgstr "B<symlinkat>(2)\t2.6.16\n"
21353
21354 #. type: tbl table
21355 #: build/C/man2/syscalls.2:552
21356 #, no-wrap
21357 msgid "B<sync>(2)\t1.0\n"
21358 msgstr "B<sync>(2)\t1.0\n"
21359
21360 #. type: tbl table
21361 #: build/C/man2/syscalls.2:553
21362 #, no-wrap
21363 msgid "B<sync_file_range>(2)\t2.6.17\n"
21364 msgstr "B<sync_file_range>(2)\t2.6.17\n"
21365
21366 #. type: tbl table
21367 #: build/C/man2/syscalls.2:554
21368 #, no-wrap
21369 msgid "B<sync_file_range2>(2)\t2.6.22\n"
21370 msgstr "B<sync_file_range2>(2)\t2.6.22\n"
21371
21372 #.  PowerPC, ARM, tile
21373 #.  First appeared on ARM, as arm_sync_file_range(), but later renamed
21374 #.  \fBsys_debug_setcontext\fP(2)       ???     PowerPC if CONFIG_PPC32
21375 #. type: tbl table
21376 #: build/C/man2/syscalls.2:558
21377 #, no-wrap
21378 msgid "B<syncfs>(2)\t2.6.39\n"
21379 msgstr "B<syncfs>(2)\t2.6.39\n"
21380
21381 #. type: tbl table
21382 #: build/C/man2/syscalls.2:559
21383 #, no-wrap
21384 msgid "B<sysfs>(2)\t1.2\n"
21385 msgstr "B<sysfs>(2)\t1.2\n"
21386
21387 #. type: tbl table
21388 #: build/C/man2/syscalls.2:560
21389 #, no-wrap
21390 msgid "B<sysinfo>(2)\t1.0\n"
21391 msgstr "B<sysinfo>(2)\t1.0\n"
21392
21393 #. type: tbl table
21394 #: build/C/man2/syscalls.2:561
21395 #, no-wrap
21396 msgid "B<syslog>(2)\t1.0\n"
21397 msgstr "B<syslog>(2)\t1.0\n"
21398
21399 #.  glibc interface is \fBklogctl\fP(3)
21400 #. type: tbl table
21401 #: build/C/man2/syscalls.2:563
21402 #, no-wrap
21403 msgid "B<tee>(2)\t2.6.17\n"
21404 msgstr "B<tee>(2)\t2.6.17\n"
21405
21406 #. type: tbl table
21407 #: build/C/man2/syscalls.2:564
21408 #, no-wrap
21409 msgid "B<tgkill>(2)\t2.6\n"
21410 msgstr "B<tgkill>(2)\t2.6\n"
21411
21412 #. type: tbl table
21413 #: build/C/man2/syscalls.2:565
21414 #, no-wrap
21415 msgid "B<time>(2)\t1.0\n"
21416 msgstr "B<time>(2)\t1.0\n"
21417
21418 #. type: tbl table
21419 #: build/C/man2/syscalls.2:566
21420 #, no-wrap
21421 msgid "B<timer_create>(2)\t2.6\n"
21422 msgstr "B<timer_create>(2)\t2.6\n"
21423
21424 #. type: tbl table
21425 #: build/C/man2/syscalls.2:567
21426 #, no-wrap
21427 msgid "B<timer_delete>(2)\t2.6\n"
21428 msgstr "B<timer_delete>(2)\t2.6\n"
21429
21430 #. type: tbl table
21431 #: build/C/man2/syscalls.2:568
21432 #, no-wrap
21433 msgid "B<timer_getoverrun>(2)\t2.6\n"
21434 msgstr "B<timer_getoverrun>(2)\t2.6\n"
21435
21436 #. type: tbl table
21437 #: build/C/man2/syscalls.2:569
21438 #, no-wrap
21439 msgid "B<timer_gettime>(2)\t2.6\n"
21440 msgstr "B<timer_gettime>(2)\t2.6\n"
21441
21442 #. type: tbl table
21443 #: build/C/man2/syscalls.2:570
21444 #, no-wrap
21445 msgid "B<timer_settime>(2)\t2.6\n"
21446 msgstr "B<timer_settime>(2)\t2.6\n"
21447
21448 #. type: tbl table
21449 #: build/C/man2/syscalls.2:571
21450 #, no-wrap
21451 msgid "B<timerfd_create>(2)\t2.6.25\n"
21452 msgstr "B<timerfd_create>(2)\t2.6.25\n"
21453
21454 #. type: tbl table
21455 #: build/C/man2/syscalls.2:572
21456 #, no-wrap
21457 msgid "B<timerfd_gettime>(2)\t2.6.25\n"
21458 msgstr "B<timerfd_gettime>(2)\t2.6.25\n"
21459
21460 #. type: tbl table
21461 #: build/C/man2/syscalls.2:573
21462 #, no-wrap
21463 msgid "B<timerfd_settime>(2)\t2.6.25\n"
21464 msgstr "B<timerfd_settime>(2)\t2.6.25\n"
21465
21466 #. type: tbl table
21467 #: build/C/man2/syscalls.2:574
21468 #, no-wrap
21469 msgid "B<times>(2)\t1.0\n"
21470 msgstr "B<times>(2)\t1.0\n"
21471
21472 #. type: tbl table
21473 #: build/C/man2/syscalls.2:575
21474 #, no-wrap
21475 msgid "B<tkill>(2)\t2.6; 2.4.22\n"
21476 msgstr "B<tkill>(2)\t2.6; 2.4.22\n"
21477
21478 #. type: tbl table
21479 #: build/C/man2/syscalls.2:576
21480 #, no-wrap
21481 msgid "B<truncate>(2)\t1.0\n"
21482 msgstr "B<truncate>(2)\t1.0\n"
21483
21484 #. type: tbl table
21485 #: build/C/man2/syscalls.2:577
21486 #, no-wrap
21487 msgid "B<truncate64>(2)\t2.4\n"
21488 msgstr "B<truncate64>(2)\t2.4\n"
21489
21490 #. type: tbl table
21491 #: build/C/man2/syscalls.2:578
21492 #, no-wrap
21493 msgid "B<ugetrlimit>(2)\t2.4\n"
21494 msgstr "B<ugetrlimit>(2)\t2.4\n"
21495
21496 #. type: tbl table
21497 #: build/C/man2/syscalls.2:579
21498 #, no-wrap
21499 msgid "B<umask>(2)\t1.0\n"
21500 msgstr "B<umask>(2)\t1.0\n"
21501
21502 #. type: tbl table
21503 #: build/C/man2/syscalls.2:580
21504 #, no-wrap
21505 msgid "B<umount>(2)\t1.0\n"
21506 msgstr "B<umount>(2)\t1.0\n"
21507
21508 #.  sys_oldumount() -- __NR_umount
21509 #. type: tbl table
21510 #: build/C/man2/syscalls.2:582
21511 #, no-wrap
21512 msgid "B<umount2>(2)\t2.2\n"
21513 msgstr "B<umount2>(2)\t2.2\n"
21514
21515 #.  sys_umount() -- __NR_umount2
21516 #. type: tbl table
21517 #: build/C/man2/syscalls.2:584
21518 #, no-wrap
21519 msgid "B<uname>(2)\t1.0\n"
21520 msgstr "B<uname>(2)\t1.0\n"
21521
21522 #. type: tbl table
21523 #: build/C/man2/syscalls.2:585
21524 #, no-wrap
21525 msgid "B<unlink>(2)\t1.0\n"
21526 msgstr "B<unlink>(2)\t1.0\n"
21527
21528 #. type: tbl table
21529 #: build/C/man2/syscalls.2:586
21530 #, no-wrap
21531 msgid "B<unlinkat>(2)\t2.6.16\n"
21532 msgstr "B<unlinkat>(2)\t2.6.16\n"
21533
21534 #. type: tbl table
21535 #: build/C/man2/syscalls.2:587
21536 #, no-wrap
21537 msgid "B<unshare>(2)\t2.6.16\n"
21538 msgstr "B<unshare>(2)\t2.6.16\n"
21539
21540 #. type: tbl table
21541 #: build/C/man2/syscalls.2:588
21542 #, no-wrap
21543 msgid "B<uselib>(2)\t1.0\n"
21544 msgstr "B<uselib>(2)\t1.0\n"
21545
21546 #. type: tbl table
21547 #: build/C/man2/syscalls.2:589
21548 #, no-wrap
21549 msgid "B<ustat>(2)\t1.0\n"
21550 msgstr "B<ustat>(2)\t1.0\n"
21551
21552 #. type: tbl table
21553 #: build/C/man2/syscalls.2:590
21554 #, no-wrap
21555 msgid "B<utime>(2)\t1.0\n"
21556 msgstr "B<utime>(2)\t1.0\n"
21557
21558 #. type: tbl table
21559 #: build/C/man2/syscalls.2:591
21560 #, no-wrap
21561 msgid "B<utimensat>(2)\t2.6.22\n"
21562 msgstr "B<utimensat>(2)\t2.6.22\n"
21563
21564 #. type: tbl table
21565 #: build/C/man2/syscalls.2:592
21566 #, no-wrap
21567 msgid "B<utimes>(2)\t2.2\n"
21568 msgstr "B<utimes>(2)\t2.2\n"
21569
21570 #. type: tbl table
21571 #: build/C/man2/syscalls.2:593
21572 #, no-wrap
21573 msgid "B<utrap_install>(2)\t2.2\tSparc only\n"
21574 msgstr "B<utrap_install>(2)\t2.2\tSparc のみ\n"
21575
21576 #.  FIXME . document utrap_install()
21577 #.  There's a man page for Solaris 5.11
21578 #. type: tbl table
21579 #: build/C/man2/syscalls.2:596
21580 #, no-wrap
21581 msgid "B<vfork>(2)\t2.2\n"
21582 msgstr "B<vfork>(2)\t2.2\n"
21583
21584 #. type: tbl table
21585 #: build/C/man2/syscalls.2:597
21586 #, no-wrap
21587 msgid "B<vhangup>(2)\t1.0\n"
21588 msgstr "B<vhangup>(2)\t1.0\n"
21589
21590 #. type: tbl table
21591 #: build/C/man2/syscalls.2:598
21592 #, no-wrap
21593 msgid "B<vm86old>(2)\t1.0\tT{\n"
21594 msgstr "B<vm86old>(2)\t1.0\tT{\n"
21595
21596 #. type: tbl table
21597 #: build/C/man2/syscalls.2:599
21598 #, no-wrap
21599 msgid "Was \"vm86\"; renamed in\n"
21600 msgstr "以前は \"vm86\";\n"
21601
21602 #. type: tbl table
21603 #: build/C/man2/syscalls.2:600
21604 #, no-wrap
21605 msgid "2.0.28/2.2\n"
21606 msgstr "2.0.28/2.2 で改名された\n"
21607
21608 #. type: tbl table
21609 #: build/C/man2/syscalls.2:602
21610 #, no-wrap
21611 msgid "B<vm86>(2)\t2.0.28; 2.2\n"
21612 msgstr "B<vm86>(2)\t2.0.28; 2.2\n"
21613
21614 #. type: tbl table
21615 #: build/C/man2/syscalls.2:603
21616 #, no-wrap
21617 msgid "B<vmsplice>(2)\t2.6.17\n"
21618 msgstr "B<vmsplice>(2)\t2.6.17\n"
21619
21620 #. type: tbl table
21621 #: build/C/man2/syscalls.2:604
21622 #, no-wrap
21623 msgid "B<wait4>(2)\t1.0\n"
21624 msgstr "B<wait4>(2)\t1.0\n"
21625
21626 #. type: tbl table
21627 #: build/C/man2/syscalls.2:605
21628 #, no-wrap
21629 msgid "B<waitid>(2)\t2.6.10\n"
21630 msgstr "B<waitid>(2)\t2.6.10\n"
21631
21632 #. type: tbl table
21633 #: build/C/man2/syscalls.2:606
21634 #, no-wrap
21635 msgid "B<waitpid>(2)\t1.0\n"
21636 msgstr "B<waitpid>(2)\t1.0\n"
21637
21638 #. type: tbl table
21639 #: build/C/man2/syscalls.2:607
21640 #, no-wrap
21641 msgid "B<write>(2)\t1.0\n"
21642 msgstr "B<write>(2)\t1.0\n"
21643
21644 #. type: tbl table
21645 #: build/C/man2/syscalls.2:608
21646 #, no-wrap
21647 msgid "B<writev>(2)\t2.0\n"
21648 msgstr "B<writev>(2)\t2.0\n"
21649
21650 #. type: Plain text
21651 #: build/C/man2/syscalls.2:617
21652 msgid ""
21653 "On many platforms, including x86-32, socket calls are all multiplexed (via "
21654 "glibc wrapper functions) through B<socketcall>(2)  and similarly System\\ V "
21655 "IPC calls are multiplexed through B<ipc>(2)."
21656 msgstr ""
21657 "x86-32 を含む多くのプラットフォームでは、ソケット関連のシステムコールは "
21658 "(glibc のラッパー関数を介してだが) すべて B<socketcall>(2) 経由に多重されてい"
21659 "る。 同様に、System\\ V IPC 関連のシステムコールは B<ipc>(2) 経由に多重されて"
21660 "いる。"
21661
21662 #.  __NR_afs_syscall is 53 on Linux 2.6.22/i386
21663 #.  __NR_break is 17 on Linux 2.6.22/i386
21664 #.  __NR_ftime is 35 on Linux 2.6.22/i386
21665 #.  __NR_getpmsg is 188 on Linux 2.6.22/i386
21666 #.  __NR_gtty is 32 on Linux 2.6.22/i386
21667 #.  __NR_idle is 112 on Linux 2.6.22/i386
21668 #.  __NR_lock is 53 on Linux 2.6.22/i386
21669 #.  __NR_madvise1 is 219 on Linux 2.6.22/i386
21670 #.  __NR_mpx is 66 on Linux 2.6.22/i386
21671 #.  Slot has been reused
21672 #.  __NR_prof is 44 on Linux 2.6.22/i386
21673 #.  __NR_profil is 98 on Linux 2.6.22/i386
21674 #.  __NR_putpmsg is 189 on Linux 2.6.22/i386
21675 #.  __NR_security is 223 on Linux 2.4/i386
21676 #.  __NR_security is 223 on Linux 2.4/i386; absent on 2.6/i386, present
21677 #.  on a couple of 2.6 architectures
21678 #.  __NR_stty is 31 on Linux 2.6.22/i386
21679 #.  The security call is for future use.
21680 #.  __NR_tuxcall is 184 on x86_64, also on PPC and alpha
21681 #.  __NR_ulimit is 58 on Linux 2.6.22/i386
21682 #.  __NR_vserver is 273 on Linux 2.6.22/i386
21683 #. type: Plain text
21684 #: build/C/man2/syscalls.2:662
21685 msgid ""
21686 "Although slots are reserved for them in the system call table, the following "
21687 "system calls are not implemented in the standard kernel: B<afs_syscall>(2), "
21688 "B<break>(2), B<ftime>(2), B<getpmsg>(2), B<gtty>(2), B<idle>(2), B<lock>(2), "
21689 "B<madvise1>(2), B<mpx>(2), B<phys>(2), B<prof>(2), B<profil>(2), "
21690 "B<putpmsg>(2), B<security>(2), B<stty>(2), B<tuxcall>(2), B<ulimit>(2), and "
21691 "B<vserver>(2)  (see also B<unimplemented>(2)).  However, B<ftime>(3), "
21692 "B<profil>(3), and B<ulimit>(3)  exist as library routines.  The slot for "
21693 "B<phys>(2)  is in use since kernel 2.1.116 for B<umount>(2); B<phys>(2)  "
21694 "will never be implemented.  The B<getpmsg>(2)  and B<putpmsg>(2)  calls are "
21695 "for kernels patched to support STREAMS, and may never be in the standard "
21696 "kernel."
21697 msgstr ""
21698 "以下のシステムコールは、システムコールテーブルにスロットが予約されている"
21699 "が、\n"
21700 "標準のカーネルには実装されていない:\n"
21701 "B<afs_syscall>(2), B<break>(2), B<ftime>(2), B<getpmsg>(2), B<gtty>(2),\n"
21702 "B<idle>(2), B<lock>(2), B<madvise1>(2), B<mpx>(2), B<phys>(2), B<prof>(2),\n"
21703 "B<profil>(2), B<putpmsg>(2), B<security>(2), B<stty>(2), B<tuxcall>(2),\n"
21704 "B<ulimit>(2), B<vserver>(2) (B<unimplemented>(2) も参照)。\n"
21705 "しかし、B<ftime>(3), B<profil>(3), B<ulimit>(3) はライブラリルーチンとして\n"
21706 "実装されている。 B<phys>(2) 用の場所は 2.1.116 以降では B<umount>(2) 用に\n"
21707 "使用されている; 将来においても B<phys>(2) は実装されない。\n"
21708 "B<getpmsg>(2) と B<putpmsg>(2) は STREAMS 対応のパッチが適用された\n"
21709 "カーネル用であり、標準のカーネルに登場することはないかもしれない。"
21710
21711 #. type: Plain text
21712 #: build/C/man2/syscalls.2:667
21713 msgid ""
21714 "There was briefly B<set_zone_reclaim>(2), added in Linux 2.6.13, and removed "
21715 "in 2.6.16; this system call was never available to user space."
21716 msgstr ""
21717 "B<set_zone_reclaim>(2) は少しの間だけ存在した。 Linux 2.6.13 で追加され、"
21718 "2.6.16 で削除された。このシステムコールがユーザ空間から使える状態になったこと"
21719 "はない。"
21720
21721 #. type: Plain text
21722 #: build/C/man2/syscalls.2:684
21723 msgid ""
21724 "Roughly speaking, the code belonging to the system call with number __NR_xxx "
21725 "defined in I</usr/include/asm/unistd.h> can be found in the Linux kernel "
21726 "source in the routine I<sys_xxx>().  (The dispatch table for i386 can be "
21727 "found in I</usr/src/linux/arch/i386/kernel/entry.S>.)  There are many "
21728 "exceptions, however, mostly because older system calls were superseded by "
21729 "newer ones, and this has been treated somewhat unsystematically.  On "
21730 "platforms with proprietary operating-system emulation, such as parisc, "
21731 "sparc, sparc64, and alpha, there are many additional system calls; mips64 "
21732 "also contains a full set of 32-bit system calls."
21733 msgstr ""
21734 "たいていは、 I</usr/include/asm/unistd.h> で定義されている番号 __NR_xxx のシ"
21735 "ステムコールのコードは、 Linux カーネルソースの I<sys_xxx>() というルーチンに"
21736 "書かれている (i386 における実行テーブルは I</usr/src/linux/arch/i386/kernel/"
21737 "entry.S> に書かれている)。 しかしこれには多くの例外がある。古いシステムコール"
21738 "は新版に置き換えられて きたが、この置き換えはあまり体系立てて行われて来なかっ"
21739 "たからである。 parisc, sparc, sparc64, alpha といったプロプリエタリなオペレー"
21740 "ティングシステムのエミュレーション機能があるプラットフォームでは、多くの追加"
21741 "システムコールがある。 mips64 には、32 ビットシステムコールのフルセットも含ま"
21742 "れている。"
21743
21744 #. type: Plain text
21745 #: build/C/man2/syscalls.2:703
21746 msgid ""
21747 "Over time, changes to the interfaces of some system calls have been "
21748 "necessary.  One reason for such changes was the need to increase the size of "
21749 "structures or scalar values passed to the system call.  Because of these "
21750 "changes, there are now various groups of related system calls (e.g., "
21751 "B<truncate>(2)  and B<truncate64>(2))  which perform similar tasks, but "
21752 "which vary in details such as the size of their arguments.  (As noted "
21753 "earlier, applications are generally unaware of this: the glibc wrapper "
21754 "functions do some work to ensure that the right system call is invoked, and "
21755 "that ABI compatibility is preserved for old binaries.)  Examples of systems "
21756 "calls that exist in multiple versions are the following:"
21757 msgstr ""
21758 "時間の経過とともに、いくつかのシステムコールではインタフェースの 変更が必要に"
21759 "なってきた。 こうした変更の理由の一つは、システムコールに渡される構造体やスカ"
21760 "ラー値 のサイズを増やす必要があることだった。 これらの変更の結果、現在では、"
21761 "同様の処理を実行するが 引き数のサイズなどの詳細は異なる、一連のシステムコール"
21762 "群が いくつか存在する (例えば、 B<truncate>(2)  と B<truncate64>(2))。 (すで"
21763 "に述べたように、 一般にはアプリケーションがこのことを意識することはない。 "
21764 "glibc のラッパー関数が、適切なシステムコールを起動し、古いバイナリに 対して "
21765 "ABI レベルでの互換性を保持することを保証する処理を行っている。)  複数のバー"
21766 "ジョンが存在するシステムコールの例を以下に挙げる。"
21767
21768 #.  e.g., on 2.6.22/i386: __NR_oldstat 18, __NR_stat 106, __NR_stat64 195
21769 #.  The stat system calls deal with three different data structures,
21770 #.  defined in include/asm-i386/stat.h: __old_kernel_stat, stat, stat64
21771 #. type: Plain text
21772 #: build/C/man2/syscalls.2:724
21773 msgid ""
21774 "By now there are three different versions of B<stat>(2): I<sys_stat>()  "
21775 "(slot I<__NR_oldstat>), I<sys_newstat>()  (slot I<__NR_stat>), and "
21776 "I<sys_stat64>()  (slot I<__NR_stat64>), with the last being the most "
21777 "current.  A similar story applies for B<lstat>(2)  and B<fstat>(2)."
21778 msgstr ""
21779 "これまでに、 B<stat>(2)  には 3 種類の異なるバージョンが存在する。 "
21780 "I<sys_stat>()  (スロットは I<__NR_oldstat>)、 I<sys_newstat>()  (スロットは "
21781 "I<__NR_stat>)、 I<sys_stat64>()  (カーネル 2.4 で導入; スロットは "
21782 "I<__NR_stat64>)。 3つのうち最後のものが最新である。 B<lstat>(2)  と "
21783 "B<fstat>(2)  についても同様である。"
21784
21785 #. type: Plain text
21786 #: build/C/man2/syscalls.2:735
21787 msgid ""
21788 "Similarly, the defines I<__NR_oldolduname>, I<__NR_olduname>, and "
21789 "I<__NR_uname> refer to the routines I<sys_olduname>(), I<sys_uname>()  and "
21790 "I<sys_newuname>()."
21791 msgstr ""
21792 "また、 I<__NR_oldolduname>, I<__NR_olduname>, I<__NR_uname> という定義は、そ"
21793 "れぞれ I<sys_olduname>(), I<sys_uname>(), I<sys_newuname>()  というルーチンを"
21794 "参照している。"
21795
21796 #. type: Plain text
21797 #: build/C/man2/syscalls.2:742
21798 msgid ""
21799 "In Linux 2.0, a new version of B<vm86>(2)  appeared, with the old and the "
21800 "new kernel routines being named I<sys_vm86old>()  and I<sys_vm86>()."
21801 msgstr ""
21802 "Linux 2.0 では、 B<vm86>(2)  の新バージョンが登場した。カーネルルーチンの 古"
21803 "いバージョン、新しいバージョンはそれぞれ I<sys_vm86old>(), I<sys_vm86>()  と"
21804 "いう名前である。"
21805
21806 #. type: Plain text
21807 #: build/C/man2/syscalls.2:753
21808 msgid ""
21809 "In Linux 2.4, a new version of B<getrlimit>(2)  appeared, with the old and "
21810 "the new kernel routines being named I<sys_old_getrlimit>()  (slot "
21811 "I<__NR_getrlimit>)  and I<sys_getrlimit>()  (slot I<__NR_ugetrlimit>)."
21812 msgstr ""
21813 "Linux 2.4 では、 B<getrlimit>(2)  の新バージョンが登場した。カーネルルーチン"
21814 "の 古いバージョン、新しいバージョンはそれぞれ I<sys_old_getrlimit>()  (スロッ"
21815 "トは I<__NR_getrlimit>), I<sys_getrlimit>()  (スロットは "
21816 "I<__NR_ugetrlimit>)  という名前である。"
21817
21818 #.  64-bit off_t changes: ftruncate64, *stat64,
21819 #.  fcntl64 (because of the flock structure), getdents64, *statfs64
21820 #. type: Plain text
21821 #: build/C/man2/syscalls.2:765
21822 msgid ""
21823 "Linux 2.4 increased the size of user and group IDs from 16 to 32 bits.  To "
21824 "support this change, a range of system calls were added (e.g., "
21825 "B<chown32>(2), B<getuid32>(2), B<getgroups32>(2), B<setresuid32>(2)), "
21826 "superseding earlier calls of the same name without the \"32\" suffix."
21827 msgstr ""
21828 "Linux 2.4 で、ユーザ ID とグループ ID のサイズが 16 ビットから 32 ビットに増"
21829 "えた。 この変更に対応するため、いくつかのシステムコールが追加された "
21830 "(B<chown32>(2), B<getuid32>(2), B<getgroups32>(2), B<setresuid32>(2)  な"
21831 "ど)。 これらのシステムコールが、末尾の \"32\" が付かない同名の 古いバージョン"
21832 "に代わって使われるようになった。"
21833
21834 #. type: Plain text
21835 #: build/C/man2/syscalls.2:782
21836 msgid ""
21837 "Linux 2.4 added support for applications on 32-bit architectures to access "
21838 "large files (i.e., files for which the sizes and file offsets can't be "
21839 "represented in 32 bits.)  To support this change, replacements were required "
21840 "for system calls that deal with file offsets and sizes.  Thus the following "
21841 "system calls were added: B<fcntl64>(2), B<ftruncate64>(2), B<getdents64>(2), "
21842 "B<stat64>(2), B<statfs64>(2), and their analogs that work with file "
21843 "descriptors or symbolic links.  These system calls supersede the older "
21844 "system calls which, except in the case of the \"stat\" calls, have the same "
21845 "name without the \"64\" suffix."
21846 msgstr ""
21847 "Linux 2.4 では、32 ビットアーキテクチャ上のアプリケーションが 大きなファイル "
21848 "(つまり、32 ビットでは表現できないサイズや ファイルオフセットが必要なファイ"
21849 "ル) にアクセスできるようになった。 この変更に対応するため、ファイルオフセット"
21850 "とサイズを扱う システムコールの置き換えが必要となった。その結果、 "
21851 "B<fcntl64>(2), B<ftruncate64>(2), B<getdents64>(2), B<stat64>(2), "
21852 "B<statfs64>(2)  と、ファイルディスクリプタやシンボリックリンクで同じ機能を持"
21853 "つ システムコールが追加された。 これらのシステムコールが、末尾の \"64\" が付"
21854 "かない同名の 古いバージョンに代わって使われるようになった。 但し、\"stat\" 系"
21855 "のシステムコールはその限りではない。"
21856
21857 #. type: Plain text
21858 #: build/C/man2/syscalls.2:786
21859 msgid ""
21860 "On newer platforms that only have 64-bit file access and 32-bit uids (e.g., "
21861 "alpha, ia64, s390x) there are no *64 or *32 calls.  Where the *64 and *32 "
21862 "calls exist, the other versions are obsolete."
21863 msgstr ""
21864 "64-bit ファイルアクセスと 32-bit UID のみを持つ 新しいプラットフォーム "
21865 "(alpha, ia64, s390x など) では、 *64 や *32 という名前のシステムコールはな"
21866 "い。 *64 や *32 というシステムコールが存在する場合、 *64 や *32 がついていな"
21867 "いシステムコールは廃止扱いである。"
21868
21869 #. type: Plain text
21870 #: build/C/man2/syscalls.2:794
21871 msgid ""
21872 "The I<rt_sig*> calls were added in kernel 2.2 to support the addition of "
21873 "real-time signals (see B<signal>(7)).  These system calls supersede the "
21874 "older system calls of the same name without the \"rt_\" prefix."
21875 msgstr ""
21876 "リアルタイムシグナル (B<signal>(7)  参照) への対応を追加するために、 "
21877 "I<rt_sig*> 系のシステムコールがカーネル 2.2 で追加された。 これらのシステム"
21878 "コールが、先頭に \"rt_\" が付かない同名の 古いバージョンに代わって使われるよ"
21879 "うになった。"
21880
21881 #.  (used by libc 6)
21882 #.  .PP
21883 #.  Two system call numbers,
21884 #.  .IR __NR__llseek
21885 #.  and
21886 #.  .IR __NR__sysctl
21887 #.  have an additional underscore absent in
21888 #.  .IR sys_llseek ()
21889 #.  and
21890 #.  .IR sys_sysctl ().
21891 #.  In kernel 2.1.81,
21892 #.  .BR lchown (2)
21893 #.  and
21894 #.  .BR chown (2)
21895 #.  were swapped; that is,
21896 #.  .BR lchown (2)
21897 #.  was added with the semantics that were then current for
21898 #.  .BR chown (2),
21899 #.  and the semantics of the latter call were changed to what
21900 #.  they are today.
21901 #. type: Plain text
21902 #: build/C/man2/syscalls.2:844
21903 msgid ""
21904 "The B<select>(2)  and B<mmap>(2)  system calls use five or more arguments, "
21905 "which caused problems in the way argument passing on the i386 used to be set "
21906 "up.  Thus, while other architectures have I<sys_select>()  and "
21907 "I<sys_mmap>()  corresponding to I<__NR_select> and I<__NR_mmap>, on i386 one "
21908 "finds I<old_select>()  and I<old_mmap>()  (routines that use a pointer to a "
21909 "argument block) instead.  These days passing five arguments is not a problem "
21910 "any more, and there is a I<__NR__newselect> that corresponds directly to "
21911 "I<sys_select>()  and similarly I<__NR_mmap2>."
21912 msgstr ""
21913 "B<select>(2)  と B<mmap>(2)  は 5つもしくはそれ以上の引き数を使用しており、 "
21914 "i386 では引き数の受け渡しに問題が生じる。 そのため、他のアーキテクチャでは "
21915 "I<__NR_select> と I<__NR_mmap> に対応する I<sys_select>()  と I<sys_mmap>()  "
21916 "が存在するが、i386 では代わりに I<old_select>()  と I<old_mmap>()  というルー"
21917 "チンがある (これらのルーチンは引き数ブロックへのポインタを使用する)。 現在で"
21918 "は 5つの引き数を渡すことはもはや問題ではなくなっており、 I<__NR__newselect> "
21919 "は I<sys_select>()  に直接対応するようになっている。 I<__NR_mmap2> についても"
21920 "同様である。"
21921
21922 #. type: Plain text
21923 #: build/C/man2/syscalls.2:851
21924 msgid ""
21925 "B<intro>(2), B<syscall>(2), B<unimplemented>(2), B<errno>(3), B<libc>(7), "
21926 "B<vdso>(7)"
21927 msgstr ""
21928 "B<intro>(2), B<syscall>(2), B<unimplemented>(2), B<errno>(3), B<libc>(7), "
21929 "B<vdso>(7)"
21930
21931 #. type: TH
21932 #: build/C/man3/sysconf.3:27
21933 #, no-wrap
21934 msgid "SYSCONF"
21935 msgstr "SYSCONF"
21936
21937 #. type: Plain text
21938 #: build/C/man3/sysconf.3:30
21939 msgid "sysconf - get configuration information at run time"
21940 msgstr "sysconf - 動作中に設定情報を取得する"
21941
21942 #. type: Plain text
21943 #: build/C/man3/sysconf.3:35
21944 #, no-wrap
21945 msgid "B<long sysconf(int >I<name>B<);>\n"
21946 msgstr "B<long sysconf(int >I<name>B<);>\n"
21947
21948 #. type: Plain text
21949 #: build/C/man3/sysconf.3:40
21950 msgid ""
21951 "POSIX allows an application to test at compile or run time whether certain "
21952 "options are supported, or what the value is of certain configurable "
21953 "constants or limits."
21954 msgstr ""
21955 "POSIX では、アプリケーションがコンパイル時や実行時に、 特定のオプションがサ"
21956 "ポートされているかや、 設定可能な特定の定数や制限 (limits) がどんな値かをテス"
21957 "トすることができる。"
21958
21959 #. type: Plain text
21960 #: build/C/man3/sysconf.3:46
21961 msgid ""
21962 "At compile time this is done by including I<E<lt>unistd.hE<gt>> and/or "
21963 "I<E<lt>limits.hE<gt>> and testing the value of certain macros."
21964 msgstr ""
21965 "コンパイル時に行うには、 I<E<lt>unistd.hE<gt>> と I<E<lt>limits.hE<gt>> の両"
21966 "方もしくは一方をインクルードし、 特定のマクロの値を確認する。"
21967
21968 #. type: Plain text
21969 #: build/C/man3/sysconf.3:56
21970 msgid ""
21971 "At run time, one can ask for numerical values using the present function "
21972 "B<sysconf>().  One can ask for numerical values that may depend on the "
21973 "filesystem a file is in using the calls B<fpathconf>(3)  and "
21974 "B<pathconf>(3).  One can ask for string values using B<confstr>(3)."
21975 msgstr ""
21976 "実行時には、ここで説明する関数 B<sysconf>()  を使って数値を問い合わせることが"
21977 "できる。 ファイルが存在するファイルシステムに関する数値は、 B<fpathconf>(3)  "
21978 "と B<pathconf>(3)  を使って確認できる。 文字列の値は B<confstr>(3)  を使って"
21979 "確認できる。"
21980
21981 #.  except that sysconf(_SC_OPEN_MAX) may change answer after a call
21982 #.  to setrlimit( ) which changes the RLIMIT_NOFILE soft limit
21983 #. type: Plain text
21984 #: build/C/man3/sysconf.3:61
21985 msgid ""
21986 "The values obtained from these functions are system configuration "
21987 "constants.  They do not change during the lifetime of a process."
21988 msgstr ""
21989 "これらの関数で取得される値は設定可能なシステム定数である。 これらはプロセスの"
21990 "生存期間の間は変化しない。"
21991
21992 #.  and 999 to indicate support for options no longer present in the latest
21993 #.  standard. (?)
21994 #. type: Plain text
21995 #: build/C/man3/sysconf.3:84
21996 msgid ""
21997 "For options, typically, there is a constant B<_POSIX_FOO> that may be "
21998 "defined in I<E<lt>unistd.hE<gt>>.  If it is undefined, one should ask at run "
21999 "time.  If it is defined to -1, then the option is not supported.  If it is "
22000 "defined to 0, then relevant functions and headers exist, but one has to ask "
22001 "at run time what degree of support is available.  If it is defined to a "
22002 "value other than -1 or 0, then the option is supported.  Usually the value "
22003 "(such as 200112L) indicates the year and month of the POSIX revision "
22004 "describing the option.  Glibc uses the value 1 to indicate support as long "
22005 "as the POSIX revision has not been published yet.  The B<sysconf>()  "
22006 "argument will be B<_SC_FOO>.  For a list of options, see B<posixoptions>(7)."
22007 msgstr ""
22008 "オプションを確認できるように、たいていは I<E<lt>unistd.hE<gt>> で定数 "
22009 "B<_POSIX_FOO> が定義されている。 定義されていないときは、実行時に問い合わせを"
22010 "行う必要がある。 その値が -1 に定義されているときは、そのオプションはサポート"
22011 "されていない。 0 に定義されているときは、関連する関数やヘッダファイルが存在す"
22012 "るが、 どの程度サポートされているかは実行時に確認しなければならない。 -1 で"
22013 "も 0 でもない値に定義されているときは、そのオプションがサポート されている。"
22014 "通常は、そのオプションについて記載した POSIX の改訂年月 を示す値になっている "
22015 "(例えば 200112L)。 glibc では 1 が設定されていると、そのオプションはサポート"
22016 "されているが、 POSIX の改訂版がまだ発行されていないことを示す。 "
22017 "B<sysconf>()  の引き数には B<_SC_FOO> を指定する。 オプションのリストについて"
22018 "は B<posixoptions>(7)  を参照のこと。"
22019
22020 #. type: Plain text
22021 #: build/C/man3/sysconf.3:104
22022 msgid ""
22023 "For variables or limits, typically, there is a constant B<_FOO>, maybe "
22024 "defined in I<E<lt>limits.hE<gt>>, or B<_POSIX_FOO>, maybe defined in "
22025 "I<E<lt>unistd.hE<gt>>.  The constant will not be defined if the limit is "
22026 "unspecified.  If the constant is defined, it gives a guaranteed value, and a "
22027 "greater value might actually be supported.  If an application wants to take "
22028 "advantage of values which may change between systems, a call to "
22029 "B<sysconf>()  can be made.  The B<sysconf>()  argument will be B<_SC_FOO>."
22030 msgstr ""
22031 "変数や制限を確認できるように、たいていは、 I<E<lt>limits.hE<gt>> で定数 "
22032 "B<_FOO> が、 I<E<lt>unistd.hE<gt>> で B<_POSIX_FOO> が定義されている。 制限が"
22033 "規定されていない場合は定数は定義されない。 定数が定義されているときには、その"
22034 "定数は保証できる値であり、 実際にはもっと大きな値がサポートされていることもあ"
22035 "る。 アプリケーションがシステム毎に変化する値を利用したい場合には、 "
22036 "B<sysconf>()  を呼び出すことで実現できる。 B<sysconf>()  の引き数には "
22037 "B<_SC_FOO> を指定する。"
22038
22039 #. type: SS
22040 #: build/C/man3/sysconf.3:104
22041 #, no-wrap
22042 msgid "POSIX.1 variables"
22043 msgstr "POSIX.1 変数"
22044
22045 #. type: Plain text
22046 #: build/C/man3/sysconf.3:109
22047 msgid ""
22048 "We give the name of the variable, the name of the B<sysconf>()  argument "
22049 "used to inquire about its value, and a short description."
22050 msgstr ""
22051 "変数名、その値を取得するのに使われる B<sysconf>()  のパラメータ名、簡単な説明"
22052 "を以下に示す。"
22053
22054 #.  [for the moment: only the things that are unconditionally present]
22055 #.  .TP
22056 #.  .BR AIO_LISTIO_MAX " - " _SC_AIO_LISTIO_MAX
22057 #.  (if _POSIX_ASYNCHRONOUS_IO)
22058 #.  Maximum number of I/O operations in a single list I/O call.
22059 #.  Must not be less than _POSIX_AIO_LISTIO_MAX.
22060 #.  .TP
22061 #.  .BR AIO_MAX " - " _SC_AIO_MAX
22062 #.  (if _POSIX_ASYNCHRONOUS_IO)
22063 #.  Maximum number of outstanding asynchronous I/O operations.
22064 #.  Must not be less than _POSIX_AIO_MAX.
22065 #.  .TP
22066 #.  .BR AIO_PRIO_DELTA_MAX " - " _SC_AIO_PRIO_DELTA_MAX
22067 #.  (if _POSIX_ASYNCHRONOUS_IO)
22068 #.  The maximum amount by which a process can decrease its
22069 #.  asynchronous I/O priority level from its own scheduling priority.
22070 #.  Must be nonnegative.
22071 #. type: Plain text
22072 #: build/C/man3/sysconf.3:128
22073 msgid "First, the POSIX.1 compatible values."
22074 msgstr "まず POSIX.1 互換の変数を示す。"
22075
22076 #. type: TP
22077 #: build/C/man3/sysconf.3:128
22078 #, no-wrap
22079 msgid "B<ARG_MAX> - B<_SC_ARG_MAX>"
22080 msgstr "B<ARG_MAX> - B<_SC_ARG_MAX>"
22081
22082 #. type: Plain text
22083 #: build/C/man3/sysconf.3:136
22084 msgid ""
22085 "The maximum length of the arguments to the B<exec>(3)  family of functions.  "
22086 "Must not be less than B<_POSIX_ARG_MAX> (4096)."
22087 msgstr ""
22088 "B<exec>(3)  関数群の引き数の最大長。 B<_POSIX_ARG_MAX> (4096) 未満であっては"
22089 "ならない。"
22090
22091 #. type: TP
22092 #: build/C/man3/sysconf.3:136
22093 #, no-wrap
22094 msgid "B<CHILD_MAX> - B<_SC_CHILD_MAX>"
22095 msgstr "B<CHILD_MAX> - B<_SC_CHILD_MAX>"
22096
22097 #. type: Plain text
22098 #: build/C/man3/sysconf.3:142
22099 msgid ""
22100 "The maximum number of simultaneous processes per user ID.  Must not be less "
22101 "than B<_POSIX_CHILD_MAX> (25)."
22102 msgstr ""
22103 "ユーザID あたりの同時に存在できるプロセスの最大数。 B<_POSIX_CHILD_MAX> (25) "
22104 "未満であってはならない。"
22105
22106 #. type: TP
22107 #: build/C/man3/sysconf.3:142
22108 #, no-wrap
22109 msgid "B<HOST_NAME_MAX> - B<_SC_HOST_NAME_MAX>"
22110 msgstr "B<HOST_NAME_MAX> - B<_SC_HOST_NAME_MAX>"
22111
22112 #. type: Plain text
22113 #: build/C/man3/sysconf.3:150
22114 msgid ""
22115 "Maximum length of a hostname, not including the terminating null byte, as "
22116 "returned by B<gethostname>(2).  Must not be less than "
22117 "B<_POSIX_HOST_NAME_MAX> (255)."
22118 msgstr ""
22119 "B<gethostname>(2)  で返されるホスト名の最大長。末尾のヌルバイトは長さに含まれ"
22120 "ない。 B<_POSIX_HOST_NAME_MAX> (255) 未満であってはならない。"
22121
22122 #. type: TP
22123 #: build/C/man3/sysconf.3:150
22124 #, no-wrap
22125 msgid "B<LOGIN_NAME_MAX> - B<_SC_LOGIN_NAME_MAX>"
22126 msgstr "B<LOGIN_NAME_MAX> - B<_SC_LOGIN_NAME_MAX>"
22127
22128 #. type: Plain text
22129 #: build/C/man3/sysconf.3:156
22130 msgid ""
22131 "Maximum length of a login name, including the terminating null byte.  Must "
22132 "not be less than B<_POSIX_LOGIN_NAME_MAX> (9)."
22133 msgstr ""
22134 "ログイン名の長さの最大値。末尾のヌルバイトも長さに含まれる。 "
22135 "B<_POSIX_LOGIN_NAME_MAX> (9) 未満であってはならない。"
22136
22137 #. type: TP
22138 #: build/C/man3/sysconf.3:156
22139 #, no-wrap
22140 msgid "B<NGROUPS_MAX> - B<_SC_NGROUPS_MAX>"
22141 msgstr "B<NGROUPS_MAX> - B<_SC_NGROUPS_MAX>"
22142
22143 #. type: Plain text
22144 #: build/C/man3/sysconf.3:159
22145 msgid "Maximum number of supplementary group IDs."
22146 msgstr "補助グループ ID の最大数。"
22147
22148 #. type: TP
22149 #: build/C/man3/sysconf.3:159
22150 #, no-wrap
22151 msgid "clock ticks - B<_SC_CLK_TCK>"
22152 msgstr "clock ticks - B<_SC_CLK_TCK>"
22153
22154 #. type: Plain text
22155 #: build/C/man3/sysconf.3:168
22156 msgid ""
22157 "The number of clock ticks per second.  The corresponding variable is "
22158 "obsolete.  It was of course called B<CLK_TCK>.  (Note: the macro "
22159 "B<CLOCKS_PER_SEC> does not give information: it must equal 1000000.)"
22160 msgstr ""
22161 "1秒あたりのクロックティック数。 対応する変数は廃止された。この変数は当然なが"
22162 "ら B<CLK_TCK> と呼ばれていた。 (注意: マクロ B<CLOCKS_PER_SEC> からは情報は得"
22163 "られない: この値は 1000000 でなければならない)"
22164
22165 #. type: TP
22166 #: build/C/man3/sysconf.3:168
22167 #, no-wrap
22168 msgid "B<OPEN_MAX> - B<_SC_OPEN_MAX>"
22169 msgstr "B<OPEN_MAX> - B<_SC_OPEN_MAX>"
22170
22171 #. type: Plain text
22172 #: build/C/man3/sysconf.3:174
22173 msgid ""
22174 "The maximum number of files that a process can have open at any time.  Must "
22175 "not be less than B<_POSIX_OPEN_MAX> (20)."
22176 msgstr ""
22177 "一つのプロセスが同時にオープンできるファイル数の上限。 B<_POSIX_OPEN_MAX> "
22178 "(20) 未満であってはならない。"
22179
22180 #. type: TP
22181 #: build/C/man3/sysconf.3:174
22182 #, no-wrap
22183 msgid "B<PAGESIZE> - B<_SC_PAGESIZE>"
22184 msgstr "B<PAGESIZE> - B<_SC_PAGESIZE>"
22185
22186 #. type: Plain text
22187 #: build/C/man3/sysconf.3:179
22188 msgid ""
22189 "Size of a page in bytes.  Must not be less than 1.  (Some systems use "
22190 "PAGE_SIZE instead.)"
22191 msgstr ""
22192 "バイト単位でのページサイズ。 1 より小さくなってはならない。 (この代わりに "
22193 "PAGE_SIZE を使うシステムもある)"
22194
22195 #. type: TP
22196 #: build/C/man3/sysconf.3:179 build/C/man3/sysconf.3:266
22197 #, no-wrap
22198 msgid "B<RE_DUP_MAX> - B<_SC_RE_DUP_MAX>"
22199 msgstr "B<RE_DUP_MAX> - B<_SC_RE_DUP_MAX>"
22200
22201 #. type: Plain text
22202 #: build/C/man3/sysconf.3:188
22203 msgid ""
22204 "The number of repeated occurrences of a BRE permitted by B<regexec>(3)  and "
22205 "B<regcomp>(3).  Must not be less than B<_POSIX2_RE_DUP_MAX> (255)."
22206 msgstr ""
22207 "B<regexec>(3)  と B<regcomp>(3)  で許容されている BRE (Basic Regular "
22208 "Expression; 基本正規表現)  の繰り返し出現回数の最大値。 "
22209 "B<_POSIX2_RE_DUP_MAX> (255) 未満であってはならない。"
22210
22211 #. type: TP
22212 #: build/C/man3/sysconf.3:188
22213 #, no-wrap
22214 msgid "B<STREAM_MAX> - B<_SC_STREAM_MAX>"
22215 msgstr "B<STREAM_MAX> - B<_SC_STREAM_MAX>"
22216
22217 #. type: Plain text
22218 #: build/C/man3/sysconf.3:197
22219 msgid ""
22220 "The maximum number of streams that a process can have open at any time.  If "
22221 "defined, it has the same value as the standard C macro B<FOPEN_MAX>.  Must "
22222 "not be less than B<_POSIX_STREAM_MAX> (8)."
22223 msgstr ""
22224 "一つのプロセスが同時にオープンできるストリーム数の上限。 定義されていた場合に"
22225 "は、この値は標準 C マクロの B<FOPEN_MAX> と同じである。 B<_POSIX_STREAM_MAX> "
22226 "(8) 未満であってはならない。"
22227
22228 #. type: TP
22229 #: build/C/man3/sysconf.3:197
22230 #, no-wrap
22231 msgid "B<SYMLOOP_MAX> - B<_SC_SYMLOOP_MAX>"
22232 msgstr "B<SYMLOOP_MAX> - B<_SC_SYMLOOP_MAX>"
22233
22234 #. type: Plain text
22235 #: build/C/man3/sysconf.3:205
22236 msgid ""
22237 "The maximum number of symbolic links seen in a pathname before resolution "
22238 "returns B<ELOOP>.  Must not be less than B<_POSIX_SYMLOOP_MAX> (8)."
22239 msgstr ""
22240 "パス名の解決時に現れてもよいシンボリックリンクの最大数。 この数を超えると、パ"
22241 "ス名解決時に B<ELOOP> が返される。 B<_POSIX_SYMLOOP_MAX> (8) 未満であってはな"
22242 "らない。"
22243
22244 #. type: TP
22245 #: build/C/man3/sysconf.3:205
22246 #, no-wrap
22247 msgid "B<TTY_NAME_MAX> - B<_SC_TTY_NAME_MAX>"
22248 msgstr "B<TTY_NAME_MAX> - B<_SC_TTY_NAME_MAX>"
22249
22250 #. type: Plain text
22251 #: build/C/man3/sysconf.3:212
22252 msgid ""
22253 "The maximum length of terminal device name, including the terminating null "
22254 "byte.  Must not be less than B<_POSIX_TTY_NAME_MAX> (9)."
22255 msgstr ""
22256 "端末デバイス名の最大長。長さには末尾のヌルバイトも含まれる。 "
22257 "B<_POSIX_TTY_NAME_MAX> (9) 未満であってはならない。"
22258
22259 #. type: TP
22260 #: build/C/man3/sysconf.3:212
22261 #, no-wrap
22262 msgid "B<TZNAME_MAX> - B<_SC_TZNAME_MAX>"
22263 msgstr "B<TZNAME_MAX> - B<_SC_TZNAME_MAX>"
22264
22265 #. type: Plain text
22266 #: build/C/man3/sysconf.3:218
22267 msgid ""
22268 "The maximum number of bytes in a timezone name.  Must not be less than "
22269 "B<_POSIX_TZNAME_MAX> (6)."
22270 msgstr ""
22271 "タイムゾーン名として使えるバイト数の最大値。 B<_POSIX_TZNAME_MAX> (6) 未満で"
22272 "あってはならない。"
22273
22274 #. type: TP
22275 #: build/C/man3/sysconf.3:218
22276 #, no-wrap
22277 msgid "B<_POSIX_VERSION> - B<_SC_VERSION>"
22278 msgstr "B<_POSIX_VERSION> - B<_SC_VERSION>"
22279
22280 #. type: Plain text
22281 #: build/C/man3/sysconf.3:226
22282 msgid ""
22283 "indicates the year and month the POSIX.1 standard was approved in the format "
22284 "B<YYYYMML>; the value B<199009L> indicates the Sept. 1990 revision."
22285 msgstr ""
22286 "POSIX.1 標準が承認された年月。 B<YYYYMML> という書式である。 B<199009L> とい"
22287 "う値は、1990年 9月 改訂であることを示す。"
22288
22289 #. type: SS
22290 #: build/C/man3/sysconf.3:226
22291 #, no-wrap
22292 msgid "POSIX.2 variables"
22293 msgstr "POSIX.2 変数"
22294
22295 #. type: Plain text
22296 #: build/C/man3/sysconf.3:228
22297 msgid "Next, the POSIX.2 values, giving limits for utilities."
22298 msgstr ""
22299 "次に、POSIX.2 の値を示す。 これらは各ユーティリティに対する制限を指定する。"
22300
22301 #. type: TP
22302 #: build/C/man3/sysconf.3:228
22303 #, no-wrap
22304 msgid "B<BC_BASE_MAX> - B<_SC_BC_BASE_MAX>"
22305 msgstr "B<BC_BASE_MAX> - B<_SC_BC_BASE_MAX>"
22306
22307 #. type: Plain text
22308 #: build/C/man3/sysconf.3:235
22309 msgid "indicates the maximum I<obase> value accepted by the B<bc>(1)  utility."
22310 msgstr "B<bc>(1)  ユーティリティで許容される I<obase> の最大値。"
22311
22312 #. type: TP
22313 #: build/C/man3/sysconf.3:235
22314 #, no-wrap
22315 msgid "B<BC_DIM_MAX> - B<_SC_BC_DIM_MAX>"
22316 msgstr "B<BC_DIM_MAX> - B<_SC_BC_DIM_MAX>"
22317
22318 #. type: Plain text
22319 #: build/C/man3/sysconf.3:239
22320 msgid ""
22321 "indicates the maximum value of elements permitted in an array by B<bc>(1)."
22322 msgstr "B<bc>(1)  で許容される一つの配列中の要素数の最大値。"
22323
22324 #. type: TP
22325 #: build/C/man3/sysconf.3:239
22326 #, no-wrap
22327 msgid "B<BC_SCALE_MAX> - B<_SC_BC_SCALE_MAX>"
22328 msgstr "B<BC_SCALE_MAX> - B<_SC_BC_SCALE_MAX>"
22329
22330 #. type: Plain text
22331 #: build/C/man3/sysconf.3:245
22332 msgid "indicates the maximum I<scale> value allowed by B<bc>(1)."
22333 msgstr "B<bc>(1)  で許される I<scale> の最大値。"
22334
22335 #. type: TP
22336 #: build/C/man3/sysconf.3:245
22337 #, no-wrap
22338 msgid "B<BC_STRING_MAX> - B<_SC_BC_STRING_MAX>"
22339 msgstr "B<BC_STRING_MAX> - B<_SC_BC_STRING_MAX>"
22340
22341 #. type: Plain text
22342 #: build/C/man3/sysconf.3:249
22343 msgid "indicates the maximum length of a string accepted by B<bc>(1)."
22344 msgstr "B<bc>(1)  で許容される文字列の最大長。"
22345
22346 #. type: TP
22347 #: build/C/man3/sysconf.3:249
22348 #, no-wrap
22349 msgid "B<COLL_WEIGHTS_MAX> - B<_SC_COLL_WEIGHTS_MAX>"
22350 msgstr "B<COLL_WEIGHTS_MAX> - B<_SC_COLL_WEIGHTS_MAX>"
22351
22352 #. type: Plain text
22353 #: build/C/man3/sysconf.3:255
22354 msgid ""
22355 "indicates the maximum numbers of weights that can be assigned to an entry of "
22356 "the B<LC_COLLATE order> keyword in the locale definition file,"
22357 msgstr ""
22358 "ロケール定義ファイル中の B<LC_COLLATE order> キーワードのエントリに割り当て可"
22359 "能な重みの最大値。"
22360
22361 #. type: TP
22362 #: build/C/man3/sysconf.3:255
22363 #, no-wrap
22364 msgid "B<EXPR_NEST_MAX> - B<_SC_EXPR_NEST_MAX>"
22365 msgstr "B<EXPR_NEST_MAX> - B<_SC_EXPR_NEST_MAX>"
22366
22367 #. type: Plain text
22368 #: build/C/man3/sysconf.3:260
22369 msgid ""
22370 "is the maximum number of expressions which can be nested within parentheses "
22371 "by B<expr>(1)."
22372 msgstr "B<expr>(1)  において、括弧で入れ子にできる式の最大数。"
22373
22374 #. type: TP
22375 #: build/C/man3/sysconf.3:260
22376 #, no-wrap
22377 msgid "B<LINE_MAX> - B<_SC_LINE_MAX>"
22378 msgstr "B<LINE_MAX> - B<_SC_LINE_MAX>"
22379
22380 #. type: Plain text
22381 #: build/C/man3/sysconf.3:266
22382 msgid ""
22383 "The maximum length of a utility's input line, either from standard input or "
22384 "from a file.  This includes space for a trailing newline."
22385 msgstr ""
22386 "ユーティリティの入力行の最大長。標準入力だけでなく、ファイルからの入力にも 適"
22387 "用される。長さには行の末尾の改行文字も含まれる。"
22388
22389 #. type: Plain text
22390 #: build/C/man3/sysconf.3:272
22391 msgid ""
22392 "The maximum number of repeated occurrences of a regular expression when the "
22393 "interval notation B<\\e{m,n\\e}> is used."
22394 msgstr ""
22395 "正規表現で区間表記 (interval notation)  B<\\e{m,n\\e}> が使用されたときに許容"
22396 "される繰り返し出現回数の最大値。"
22397
22398 #. type: TP
22399 #: build/C/man3/sysconf.3:272
22400 #, no-wrap
22401 msgid "B<POSIX2_VERSION> - B<_SC_2_VERSION>"
22402 msgstr "B<POSIX2_VERSION> - B<_SC_2_VERSION>"
22403
22404 #. type: Plain text
22405 #: build/C/man3/sysconf.3:276
22406 msgid "indicates the version of the POSIX.2 standard in the format of YYYYMML."
22407 msgstr "POSIX.2 標準のバージョン。YYYYMML という書式で表記される。"
22408
22409 #. type: TP
22410 #: build/C/man3/sysconf.3:276
22411 #, no-wrap
22412 msgid "B<POSIX2_C_DEV> - B<_SC_2_C_DEV>"
22413 msgstr "B<POSIX2_C_DEV> - B<_SC_2_C_DEV>"
22414
22415 #. type: Plain text
22416 #: build/C/man3/sysconf.3:280
22417 msgid ""
22418 "indicates whether the POSIX.2 C language development facilities are "
22419 "supported."
22420 msgstr "POSIX.2 の C 言語開発機能がサポートされているかを示す。"
22421
22422 #. type: TP
22423 #: build/C/man3/sysconf.3:280
22424 #, no-wrap
22425 msgid "B<POSIX2_FORT_DEV> - B<_SC_2_FORT_DEV>"
22426 msgstr "B<POSIX2_FORT_DEV> - B<_SC_2_FORT_DEV>"
22427
22428 #. type: Plain text
22429 #: build/C/man3/sysconf.3:284
22430 msgid ""
22431 "indicates whether the POSIX.2 FORTRAN development utilities are supported."
22432 msgstr "POSIX.2 の FORTRAN 開発ユーティリティがサポートされているかを示す。"
22433
22434 #. type: TP
22435 #: build/C/man3/sysconf.3:284
22436 #, no-wrap
22437 msgid "B<POSIX2_FORT_RUN> - B<_SC_2_FORT_RUN>"
22438 msgstr "B<POSIX2_FORT_RUN> - B<_SC_2_FORT_RUN>"
22439
22440 #. type: Plain text
22441 #: build/C/man3/sysconf.3:287
22442 msgid "indicates whether the POSIX.2 FORTRAN run-time utilities are supported."
22443 msgstr ""
22444 "POSIX.2 の FORTRAN ランタイムユーティリティがサポートされているかを示す。"
22445
22446 #. type: TP
22447 #: build/C/man3/sysconf.3:287
22448 #, no-wrap
22449 msgid "B<_POSIX2_LOCALEDEF> - B<_SC_2_LOCALEDEF>"
22450 msgstr "B<_POSIX2_LOCALEDEF> - B<_SC_2_LOCALEDEF>"
22451
22452 #. type: Plain text
22453 #: build/C/man3/sysconf.3:292
22454 msgid ""
22455 "indicates whether the POSIX.2 creation of locates via B<localedef>(1)  is "
22456 "supported."
22457 msgstr ""
22458 "B<localedef>(1)  を使った、POSIX.2 のロケールの作成をサポートしているかを示"
22459 "す。"
22460
22461 #. type: TP
22462 #: build/C/man3/sysconf.3:292
22463 #, no-wrap
22464 msgid "B<POSIX2_SW_DEV> - B<_SC_2_SW_DEV>"
22465 msgstr "B<POSIX2_SW_DEV> - B<_SC_2_SW_DEV>"
22466
22467 #. type: Plain text
22468 #: build/C/man3/sysconf.3:296
22469 msgid ""
22470 "indicates whether the POSIX.2 software development utilities option is "
22471 "supported."
22472 msgstr ""
22473 "POSIX.2 ソフトウェア開発ユーティリティオプションがサポートされているかを示"
22474 "す。"
22475
22476 #. type: Plain text
22477 #: build/C/man3/sysconf.3:298
22478 msgid "These values also exist, but may not be standard."
22479 msgstr "以下の値も存在するが、標準には含まれていない。"
22480
22481 #. type: TP
22482 #: build/C/man3/sysconf.3:298
22483 #, no-wrap
22484 msgid " - B<_SC_PHYS_PAGES>"
22485 msgstr " - B<_SC_PHYS_PAGES>"
22486
22487 #. type: Plain text
22488 #: build/C/man3/sysconf.3:305
22489 msgid ""
22490 "The number of pages of physical memory.  Note that it is possible for the "
22491 "product of this value and the value of B<_SC_PAGESIZE> to overflow."
22492 msgstr ""
22493 "物理メモリのページ数。 この値と B<_SC_PAGESIZE> 値の積は桁溢れする可能性があ"
22494 "るので注意すること。"
22495
22496 #. type: TP
22497 #: build/C/man3/sysconf.3:305
22498 #, no-wrap
22499 msgid " - B<_SC_AVPHYS_PAGES>"
22500 msgstr " - B<_SC_AVPHYS_PAGES>"
22501
22502 #. type: Plain text
22503 #: build/C/man3/sysconf.3:308
22504 msgid "The number of currently available pages of physical memory."
22505 msgstr "現在利用可能な物理メモリのページ数。"
22506
22507 #. type: TP
22508 #: build/C/man3/sysconf.3:308
22509 #, no-wrap
22510 msgid " - B<_SC_NPROCESSORS_CONF>"
22511 msgstr " - B<_SC_NPROCESSORS_CONF>"
22512
22513 #. type: Plain text
22514 #: build/C/man3/sysconf.3:311
22515 msgid "The number of processors configured."
22516 msgstr "設定されたプロセッサ数。"
22517
22518 #. type: TP
22519 #: build/C/man3/sysconf.3:311
22520 #, no-wrap
22521 msgid " - B<_SC_NPROCESSORS_ONLN>"
22522 msgstr " - B<_SC_NPROCESSORS_ONLN>"
22523
22524 #. type: Plain text
22525 #: build/C/man3/sysconf.3:314
22526 msgid "The number of processors currently online (available)."
22527 msgstr "現在オンラインの (利用可能な) プロセッサ数。"
22528
22529 #. type: Plain text
22530 #: build/C/man3/sysconf.3:327
22531 msgid ""
22532 "If I<name> is invalid, -1 is returned, and I<errno> is set to B<EINVAL>.  "
22533 "Otherwise, the value returned is the value of the system resource and "
22534 "I<errno> is not changed.  In the case of options, a positive value is "
22535 "returned if a queried option is available, and -1 if it is not.  In the case "
22536 "of limits, -1 means that there is no definite limit."
22537 msgstr ""
22538 "I<name> が不正な場合、-1 が返され、 I<errno> に B<EINVAL> が設定される。 それ"
22539 "以外の場合、システムリソースの値が返り値として返され、 I<errno> は変更されな"
22540 "い。問い合わせがオプションに関するものであれば、 そのオプションが利用できる場"
22541 "合には正の値が返され、 利用できない場合には -1 が返される。 問い合わせが制限"
22542 "に関するものであれば、その制限が設定されていない場合に -1 が返される。"
22543
22544 #. type: Plain text
22545 #: build/C/man3/sysconf.3:335
22546 msgid ""
22547 "It is difficult to use B<ARG_MAX> because it is not specified how much of "
22548 "the argument space for B<exec>(3)  is consumed by the user's environment "
22549 "variables."
22550 msgstr ""
22551 "B<ARG_MAX> を使うのは難しい、なぜなら、 B<exec>(3)  の引き数領域 (argument "
22552 "space) のうちどれくらいが ユーザの環境変数によって使われるかは分からないから"
22553 "である。"
22554
22555 #. type: Plain text
22556 #: build/C/man3/sysconf.3:347
22557 msgid ""
22558 "B<bc>(1), B<expr>(1), B<getconf>(1), B<locale>(1), B<confstr>(3), "
22559 "B<fpathconf>(3), B<pathconf>(3), B<posixoptions>(7)"
22560 msgstr ""
22561 "B<bc>(1), B<expr>(1), B<getconf>(1), B<locale>(1), B<confstr>(3), "
22562 "B<fpathconf>(3), B<pathconf>(3), B<posixoptions>(7)"
22563
22564 #. type: TH
22565 #: build/C/man2/sysctl.2:30
22566 #, no-wrap
22567 msgid "SYSCTL"
22568 msgstr "SYSCTL"
22569
22570 #. type: TH
22571 #: build/C/man2/sysctl.2:30
22572 #, no-wrap
22573 msgid "2012-12-22"
22574 msgstr "2012-12-22"
22575
22576 #. type: Plain text
22577 #: build/C/man2/sysctl.2:33
22578 msgid "sysctl - read/write system parameters"
22579 msgstr "sysctl - システムパラメーターを読み書きする"
22580
22581 #. type: Plain text
22582 #: build/C/man2/sysctl.2:38
22583 #, no-wrap
22584 msgid "B<#include E<lt>linux/sysctl.hE<gt>>\n"
22585 msgstr "B<#include E<lt>linux/sysctl.hE<gt>>\n"
22586
22587 #. type: Plain text
22588 #: build/C/man2/sysctl.2:40
22589 #, no-wrap
22590 msgid "B<int _sysctl(struct __sysctl_args *>I<args>B<);>\n"
22591 msgstr "B<int _sysctl(struct __sysctl_args *>I<args>B<);>\n"
22592
22593 #. type: Plain text
22594 #: build/C/man2/sysctl.2:47
22595 msgid "B<Do not use this system call!> See NOTES."
22596 msgstr "B<このシステムコールを使用しないこと!> 「注意」の節を参照。"
22597
22598 #. type: Plain text
22599 #: build/C/man2/sysctl.2:54
22600 msgid ""
22601 "The B<_sysctl>()  call reads and/or writes kernel parameters.  For example, "
22602 "the hostname, or the maximum number of open files.  The argument has the form"
22603 msgstr ""
22604 "B<_sysctl>()  コールはカーネルパラメーターを読み書きする。例えば、 ホストネー"
22605 "ムや同時にオープンできるファイルの最大数など。 引き数は以下の形式である。"
22606
22607 #. type: Plain text
22608 #: build/C/man2/sysctl.2:66
22609 #, no-wrap
22610 msgid ""
22611 "struct __sysctl_args {\n"
22612 "    int    *name;    /* integer vector describing variable */\n"
22613 "    int     nlen;    /* length of this vector */\n"
22614 "    void   *oldval;  /* 0 or address where to store old value */\n"
22615 "    size_t *oldlenp; /* available room for old value,\n"
22616 "                        overwritten by actual size of old value */\n"
22617 "    void   *newval;  /* 0 or address of new value */\n"
22618 "    size_t  newlen;  /* size of new value */\n"
22619 "};\n"
22620 msgstr ""
22621 "struct __sysctl_args {\n"
22622 "    int    *name;    /* integer vector describing variable */\n"
22623 "    int     nlen;    /* length of this vector */\n"
22624 "    void   *oldval;  /* 0 or address where to store old value */\n"
22625 "    size_t *oldlenp; /* available room for old value,\n"
22626 "                        overwritten by actual size of old value */\n"
22627 "    void   *newval;  /* 0 or address of new value */\n"
22628 "    size_t  newlen;  /* size of new value */\n"
22629 "};\n"
22630
22631 #. type: Plain text
22632 #: build/C/man2/sysctl.2:74
22633 msgid ""
22634 "This call does a search in a tree structure, possibly resembling a directory "
22635 "tree under I</proc/sys>, and if the requested item is found calls some "
22636 "appropriate routine to read or modify the value."
22637 msgstr ""
22638 "このコールは I</proc/sys> の下のディレクトリツリーに似た木構造(tree "
22639 "structure)を検索する。 そして、要求された項目が見つかった場合は適切なルーチン"
22640 "を呼び出して 値を読んだり修正したりする。"
22641
22642 #. type: Plain text
22643 #: build/C/man2/sysctl.2:81
22644 msgid ""
22645 "Upon successful completion, B<_sysctl>()  returns 0.  Otherwise, a value of "
22646 "-1 is returned and I<errno> is set to indicate the error."
22647 msgstr ""
22648 "成功した場合は B<_sysctl>()  は 0 を返す。失敗した場合、-1 が返され、 "
22649 "I<errno> がそのエラーを示す値に設定される。"
22650
22651 #. type: Plain text
22652 #: build/C/man2/sysctl.2:88
22653 msgid ""
22654 "The invocation asked for the previous value by setting I<oldval> non-NULL, "
22655 "but allowed zero room in I<oldlenp>."
22656 msgstr ""
22657 "I<oldval> に NULL でない値を設定して、以前の値を要求しているのに、 "
22658 "I<oldlenp> に空きがない。"
22659
22660 #. type: Plain text
22661 #: build/C/man2/sysctl.2:92
22662 msgid "I<name> was not found."
22663 msgstr "I<name> が見つからなかった。"
22664
22665 #. type: TP
22666 #: build/C/man2/sysctl.2:92
22667 #, no-wrap
22668 msgid "B<EACCES>, B<EPERM>"
22669 msgstr "B<EACCES> か B<EPERM>"
22670
22671 #. type: Plain text
22672 #: build/C/man2/sysctl.2:100
22673 msgid ""
22674 "No search permission for one of the encountered \"directories\", or no read "
22675 "permission where I<oldval> was nonzero, or no write permission where "
22676 "I<newval> was nonzero."
22677 msgstr ""
22678 "「ディレクトリ」のどれかに検索許可がなかったか、 I<oldval> が 0 でないのに読"
22679 "み込み許可がなかったか、 I<newval> が 0 でないのに書き込み許可がなかった。"
22680
22681 #. type: Plain text
22682 #: build/C/man2/sysctl.2:114
22683 msgid ""
22684 "This call is Linux-specific, and should not be used in programs intended to "
22685 "be portable.  A B<sysctl>()  call has been present in Linux since version "
22686 "1.3.57.  It originated in 4.4BSD.  Only Linux has the I</proc/sys> mirror, "
22687 "and the object naming schemes differ between Linux and 4.4BSD, but the "
22688 "declaration of the B<sysctl>()  function is the same in both."
22689 msgstr ""
22690 "このコールは Linux 特有であり、移植を意図したプログラムで使用しては いけな"
22691 "い。 B<sysctl>()  コールは Linux のバージョン 1.3.57 から存在している。 これ"
22692 "は 4.4BSD に由来している。Linux は I</proc/sys> に写し(mirror)をもっており、"
22693 "項目の名前の付け方が Linux と 4.4BSD では 異っている。しかし B<sysctl>()  関"
22694 "数の宣言は両方で同じである。"
22695
22696 #.  See http://lwn.net/Articles/247243/
22697 #.  Though comments in suggest that it is needed by old glibc binaries,
22698 #.  so maybe it's not going away.
22699 #. type: Plain text
22700 #: build/C/man2/sysctl.2:131
22701 msgid ""
22702 "Glibc does not provide a wrapper for this system call; call it using "
22703 "B<syscall>(2).  Or rather...  I<don't> call it: use of this system call has "
22704 "long been discouraged, and it is so unloved that B<it is likely to disappear "
22705 "in a future kernel version>.  Since Linux 2.6.24, uses of this system call "
22706 "result in warnings in the kernel log.  Remove it from your programs now; use "
22707 "the I</proc/sys> interface instead."
22708 msgstr ""
22709 "glibc はこのシステムコールに対するラッパー関数を提供していない。 "
22710 "B<syscall>(2) を使って呼び出すこと。というよりは・・・このシステムコールを呼"
22711 "び出さないこと。 長い間このシステムコールの使用は非推奨とされており、 「将来"
22712 "のバージョンのカーネルで削除されるようだ」と言われるほどである。 あなたのプロ"
22713 "グラムにこのシステムコールがあれば、すぐにでも削除すること。 代わりに I</"
22714 "proc/sys> インターフェースを使用すること。"
22715
22716 #. type: Plain text
22717 #: build/C/man2/sysctl.2:135
22718 msgid ""
22719 "This system call is available only if the kernel was configured with the "
22720 "B<CONFIG_SYSCTL_SYSCALL> option."
22721 msgstr ""
22722 "このシステムコールは、カーネルの B<CONFIG_SYSCTL_SYSCALL> オプションが有効に"
22723 "なっている場合のみ利用できる。"
22724
22725 #. type: Plain text
22726 #: build/C/man2/sysctl.2:138
22727 msgid ""
22728 "The object names vary between kernel versions, making this system call "
22729 "worthless for applications."
22730 msgstr ""
22731 "オブジェクトの名前は、カーネルのバージョンごとに異なっている。 このため、この"
22732 "システムコールはアプリケーションにとって 無価値なものとなっている。"
22733
22734 #. type: Plain text
22735 #: build/C/man2/sysctl.2:140
22736 msgid "Not all available objects are properly documented."
22737 msgstr "全ての可能な項目が正確に記述されているわけではない。"
22738
22739 #. type: Plain text
22740 #: build/C/man2/sysctl.2:143
22741 msgid ""
22742 "It is not yet possible to change operating system by writing to I</proc/sys/"
22743 "kernel/ostype>."
22744 msgstr ""
22745 "今のところ I</proc/sys/kernel/ostype> に書き込むことでオペーレーティングシス"
22746 "テムを変えることはできない。"
22747
22748 #. type: Plain text
22749 #: build/C/man2/sysctl.2:152
22750 #, no-wrap
22751 msgid ""
22752 "#define _GNU_SOURCE\n"
22753 "#include E<lt>unistd.hE<gt>\n"
22754 "#include E<lt>sys/syscall.hE<gt>\n"
22755 "#include E<lt>string.hE<gt>\n"
22756 "#include E<lt>stdio.hE<gt>\n"
22757 "#include E<lt>stdlib.hE<gt>\n"
22758 "#include E<lt>linux/sysctl.hE<gt>\n"
22759 msgstr ""
22760 "#define _GNU_SOURCE\n"
22761 "#include E<lt>unistd.hE<gt>\n"
22762 "#include E<lt>sys/syscall.hE<gt>\n"
22763 "#include E<lt>string.hE<gt>\n"
22764 "#include E<lt>stdio.hE<gt>\n"
22765 "#include E<lt>stdlib.hE<gt>\n"
22766 "#include E<lt>linux/sysctl.hE<gt>\n"
22767
22768 #. type: Plain text
22769 #: build/C/man2/sysctl.2:154
22770 #, no-wrap
22771 msgid "int _sysctl(struct __sysctl_args *args );\n"
22772 msgstr "int _sysctl(struct __sysctl_args *args );\n"
22773
22774 #. type: Plain text
22775 #: build/C/man2/sysctl.2:156
22776 #, no-wrap
22777 msgid "#define OSNAMESZ 100\n"
22778 msgstr "#define OSNAMESZ 100\n"
22779
22780 #. type: Plain text
22781 #: build/C/man2/sysctl.2:164
22782 #, no-wrap
22783 msgid ""
22784 "int\n"
22785 "main(void)\n"
22786 "{\n"
22787 "    struct __sysctl_args args;\n"
22788 "    char osname[OSNAMESZ];\n"
22789 "    size_t osnamelth;\n"
22790 "    int name[] = { CTL_KERN, KERN_OSTYPE };\n"
22791 msgstr ""
22792 "int\n"
22793 "main(void)\n"
22794 "{\n"
22795 "    struct __sysctl_args args;\n"
22796 "    char osname[OSNAMESZ];\n"
22797 "    size_t osnamelth;\n"
22798 "    int name[] = { CTL_KERN, KERN_OSTYPE };\n"
22799
22800 #. type: Plain text
22801 #: build/C/man2/sysctl.2:170
22802 #, no-wrap
22803 msgid ""
22804 "    memset(&args, 0, sizeof(struct __sysctl_args));\n"
22805 "    args.name = name;\n"
22806 "    args.nlen = sizeof(name)/sizeof(name[0]);\n"
22807 "    args.oldval = osname;\n"
22808 "    args.oldlenp = &osnamelth;\n"
22809 msgstr ""
22810 "    memset(&args, 0, sizeof(struct __sysctl_args));\n"
22811 "    args.name = name;\n"
22812 "    args.nlen = sizeof(name)/sizeof(name[0]);\n"
22813 "    args.oldval = osname;\n"
22814 "    args.oldlenp = &osnamelth;\n"
22815
22816 #. type: Plain text
22817 #: build/C/man2/sysctl.2:172
22818 #, no-wrap
22819 msgid "    osnamelth = sizeof(osname);\n"
22820 msgstr "    osnamelth = sizeof(osname);\n"
22821
22822 #. type: Plain text
22823 #: build/C/man2/sysctl.2:180
22824 #, no-wrap
22825 msgid ""
22826 "    if (syscall(SYS__sysctl, &args) == -1) {\n"
22827 "        perror(\"_sysctl\");\n"
22828 "        exit(EXIT_FAILURE);\n"
22829 "    }\n"
22830 "    printf(\"This machine is running %*s\\en\", osnamelth, osname);\n"
22831 "    exit(EXIT_SUCCESS);\n"
22832 "}\n"
22833 msgstr ""
22834 "    if (syscall(SYS__sysctl, &args) == -1) {\n"
22835 "        perror(\"_sysctl\");\n"
22836 "        exit(EXIT_FAILURE);\n"
22837 "    }\n"
22838 "    printf(\"This machine is running %*s\\en\", osnamelth, osname);\n"
22839 "    exit(EXIT_SUCCESS);\n"
22840 "}\n"
22841
22842 #. type: Plain text
22843 #: build/C/man2/sysctl.2:183 build/C/man2/sysinfo.2:92
22844 msgid "B<proc>(5)"
22845 msgstr "B<proc>(5)"
22846
22847 #. type: TH
22848 #: build/C/man2/sysinfo.2:14
22849 #, no-wrap
22850 msgid "SYSINFO"
22851 msgstr "SYSINFO"
22852
22853 #. type: Plain text
22854 #: build/C/man2/sysinfo.2:17
22855 msgid "sysinfo - returns information on overall system statistics"
22856 msgstr "sysinfo - システム全体の統計情報を返す。"
22857
22858 #. type: Plain text
22859 #: build/C/man2/sysinfo.2:21
22860 msgid "B<int sysinfo(struct sysinfo *>I<info>B<);>"
22861 msgstr "B<int sysinfo(struct sysinfo *>I<info>B<);>"
22862
22863 #. type: Plain text
22864 #: build/C/man2/sysinfo.2:25
22865 msgid ""
22866 "Until Linux 2.3.16, B<sysinfo>()  used to return information in the "
22867 "following structure:"
22868 msgstr "Linux 2.3.16 までは B<sysinfo>()  は以下の構造体に情報を入れて返す。"
22869
22870 #. type: Plain text
22871 #: build/C/man2/sysinfo.2:40
22872 #, no-wrap
22873 msgid ""
22874 "struct sysinfo {\n"
22875 "    long uptime;             /* Seconds since boot */\n"
22876 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22877 "    unsigned long totalram;  /* Total usable main memory size */\n"
22878 "    unsigned long freeram;   /* Available memory size */\n"
22879 "    unsigned long sharedram; /* Amount of shared memory */\n"
22880 "    unsigned long bufferram; /* Memory used by buffers */\n"
22881 "    unsigned long totalswap; /* Total swap space size */\n"
22882 "    unsigned long freeswap;  /* swap space still available */\n"
22883 "    unsigned short procs;    /* Number of current processes */\n"
22884 "    char _f[22];             /* Pads structure to 64 bytes */\n"
22885 "};\n"
22886 msgstr ""
22887 "struct sysinfo {\n"
22888 "    long uptime;             /* Seconds since boot */\n"
22889 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22890 "    unsigned long totalram;  /* Total usable main memory size */\n"
22891 "    unsigned long freeram;   /* Available memory size */\n"
22892 "    unsigned long sharedram; /* Amount of shared memory */\n"
22893 "    unsigned long bufferram; /* Memory used by buffers */\n"
22894 "    unsigned long totalswap; /* Total swap space size */\n"
22895 "    unsigned long freeswap;  /* swap space still available */\n"
22896 "    unsigned short procs;    /* Number of current processes */\n"
22897 "    char _f[22];             /* Pads structure to 64 bytes */\n"
22898 "};\n"
22899
22900 #. type: Plain text
22901 #: build/C/man2/sysinfo.2:44
22902 msgid "and the sizes were given in bytes."
22903 msgstr "ここでバイト単位で与えられる。"
22904
22905 #. type: Plain text
22906 #: build/C/man2/sysinfo.2:47
22907 msgid "Since Linux 2.3.23 (i386), 2.3.48 (all architectures) the structure is:"
22908 msgstr "Linux 2.3.23 (i386)、2.3.48 (全てのアーキテクチャ) からは構造体は"
22909
22910 #. type: Plain text
22911 #: build/C/man2/sysinfo.2:65
22912 #, no-wrap
22913 msgid ""
22914 "struct sysinfo {\n"
22915 "    long uptime;             /* Seconds since boot */\n"
22916 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22917 "    unsigned long totalram;  /* Total usable main memory size */\n"
22918 "    unsigned long freeram;   /* Available memory size */\n"
22919 "    unsigned long sharedram; /* Amount of shared memory */\n"
22920 "    unsigned long bufferram; /* Memory used by buffers */\n"
22921 "    unsigned long totalswap; /* Total swap space size */\n"
22922 "    unsigned long freeswap;  /* swap space still available */\n"
22923 "    unsigned short procs;    /* Number of current processes */\n"
22924 "    unsigned long totalhigh; /* Total high memory size */\n"
22925 "    unsigned long freehigh;  /* Available high memory size */\n"
22926 "    unsigned int mem_unit;   /* Memory unit size in bytes */\n"
22927 "    char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */\n"
22928 "};\n"
22929 msgstr ""
22930 "struct sysinfo {\n"
22931 "    long uptime;             /* Seconds since boot */\n"
22932 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22933 "    unsigned long totalram;  /* Total usable main memory size */\n"
22934 "    unsigned long freeram;   /* Available memory size */\n"
22935 "    unsigned long sharedram; /* Amount of shared memory */\n"
22936 "    unsigned long bufferram; /* Memory used by buffers */\n"
22937 "    unsigned long totalswap; /* Total swap space size */\n"
22938 "    unsigned long freeswap;  /* swap space still available */\n"
22939 "    unsigned short procs;    /* Number of current processes */\n"
22940 "    unsigned long totalhigh; /* Total high memory size */\n"
22941 "    unsigned long freehigh;  /* Available high memory size */\n"
22942 "    unsigned int mem_unit;   /* Memory unit size in bytes */\n"
22943 "    char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */\n"
22944 "};\n"
22945
22946 #. type: Plain text
22947 #: build/C/man2/sysinfo.2:69
22948 msgid "and the sizes are given as multiples of I<mem_unit> bytes."
22949 msgstr "となり、大きさは I<mem_unit> バイトの倍数で与えられる。"
22950
22951 #. type: Plain text
22952 #: build/C/man2/sysinfo.2:74
22953 msgid ""
22954 "B<sysinfo>()  provides a simple way of getting overall system statistics.  "
22955 "This is more portable than reading I</dev/kmem>."
22956 msgstr ""
22957 "B<sysinfo>()  はシステム全体の統計を取得する簡単な方法を提供する。 これは I</"
22958 "dev/kmem> を読むよりも移植性の高い方法である。"
22959
22960 #. type: Plain text
22961 #: build/C/man2/sysinfo.2:83
22962 msgid "pointer to I<struct\\ sysinfo> is invalid"
22963 msgstr "I<sysinfo 構造体> へのポインターが不正である。"
22964
22965 #. type: Plain text
22966 #: build/C/man2/sysinfo.2:87
22967 msgid "The Linux kernel has a B<sysinfo>()  system call since 0.98.pl6."
22968 msgstr ""
22969 "0.98.pl6 以降の Linux カーネルに B<sysinfo>() システムコールは存在する。"
22970
22971 #. type: TH
22972 #: build/C/man3/tcgetpgrp.3:25
22973 #, no-wrap
22974 msgid "TCGETPGRP"
22975 msgstr "TCGETPGRP"
22976
22977 #. type: TH
22978 #: build/C/man3/tcgetpgrp.3:25
22979 #, no-wrap
22980 msgid "2014-01-13"
22981 msgstr "2014-01-13"
22982
22983 #. type: Plain text
22984 #: build/C/man3/tcgetpgrp.3:28
22985 msgid "tcgetpgrp, tcsetpgrp - get and set terminal foreground process group"
22986 msgstr ""
22987 "tcgetpgrp, tcsetpgrp - 端末のフォアグラウンドプロセスグループの 取得/設定を行"
22988 "う"
22989
22990 #. type: Plain text
22991 #: build/C/man3/tcgetpgrp.3:32
22992 msgid "B<pid_t tcgetpgrp(int >I<fd>B<);>"
22993 msgstr "B<pid_t tcgetpgrp(int >I<fd>B<);>"
22994
22995 #. type: Plain text
22996 #: build/C/man3/tcgetpgrp.3:34
22997 msgid "B<int tcsetpgrp(int >I<fd>B<, pid_t >I<pgrp>B<);>"
22998 msgstr "B<int tcsetpgrp(int >I<fd>B<, pid_t >I<pgrp>B<);>"
22999
23000 #.  The process itself may be a background process.
23001 #. type: Plain text
23002 #: build/C/man3/tcgetpgrp.3:42
23003 msgid ""
23004 "The function B<tcgetpgrp>()  returns the process group ID of the foreground "
23005 "process group on the terminal associated to I<fd>, which must be the "
23006 "controlling terminal of the calling process."
23007 msgstr ""
23008 "関数 B<tcgetpgrp>()  は、 I<fd> に対応する端末のフォアグラウンドプロセスグ"
23009 "ループの プロセスグループ ID を返す。 I<fd> で指定された端末は、呼び出しを行"
23010 "うプロセスの制御端末でなければならない。"
23011
23012 #. type: Plain text
23013 #: build/C/man3/tcgetpgrp.3:55
23014 msgid ""
23015 "The function B<tcsetpgrp>()  makes the process group with process group ID "
23016 "I<pgrp> the foreground process group on the terminal associated to I<fd>, "
23017 "which must be the controlling terminal of the calling process, and still be "
23018 "associated with its session.  Moreover, I<pgrp> must be a (nonempty) process "
23019 "group belonging to the same session as the calling process."
23020 msgstr ""
23021 "関数 B<tcsetpgrp>()  は、プロセスグループID が I<pgrp> のプロセスグループを "
23022 "I<fd> に対応する端末のフォアグラウンドプロセスグループにする。 このとき、 "
23023 "I<fd> は B<tcsetpgrp>()  を呼び出すプロセスの制御端末でなければならない。 さ"
23024 "らに、 I<pgrp> は、呼び出しを行うプロセスと同じセッションに 属する (メンバが"
23025 "空でない) プロセスグループでなければならない。"
23026
23027 #. type: Plain text
23028 #: build/C/man3/tcgetpgrp.3:64
23029 msgid ""
23030 "If B<tcsetpgrp>()  is called by a member of a background process group in "
23031 "its session, and the calling process is not blocking or ignoring B<SIGTTOU>, "
23032 "a B<SIGTTOU> signal is sent to all members of this background process group."
23033 msgstr ""
23034 "B<tcsetpgrp>()  がセッションに属するバックグラウンドグループプロセスのメンバ"
23035 "から 呼び出され、かつ呼び出しを行うプロセスが B<SIGTTOU> をブロックしたり 無"
23036 "視したりするようになっていない場合、 B<SIGTTOU> シグナルは バックグラウンドプ"
23037 "ロセスグループの全てのメンバに送られる。"
23038
23039 #. type: Plain text
23040 #: build/C/man3/tcgetpgrp.3:79
23041 msgid ""
23042 "When I<fd> refers to the controlling terminal of the calling process, the "
23043 "function B<tcgetpgrp>()  will return the foreground process group ID of that "
23044 "terminal if there is one, and some value larger than 1 that is not presently "
23045 "a process group ID otherwise.  When I<fd> does not refer to the controlling "
23046 "terminal of the calling process, -1 is returned, and I<errno> is set "
23047 "appropriately."
23048 msgstr ""
23049 "I<fd> が呼び出しを行ったプロセスの制御端末を参照している場合、関数 "
23050 "B<tcgetpgrp>()  は、その制御端末のフォアグラウンドプロセスグループがあれば そ"
23051 "のプロセスグループの ID を返す。 そのようなプロセスグループがなければ、現在プ"
23052 "ロセスグループ ID として使用されていない、1より大きな何らかの値が返される。 "
23053 "I<fd> が呼び出しを行ったプロセスの制御端末を参照していない場合、 -1 が返さ"
23054 "れ、 I<errno> が適切に設定される。"
23055
23056 #. type: Plain text
23057 #: build/C/man3/tcgetpgrp.3:86
23058 msgid ""
23059 "When successful, B<tcsetpgrp>()  returns 0.  Otherwise, it returns -1, and "
23060 "I<errno> is set appropriately."
23061 msgstr ""
23062 "成功した場合、 B<tcsetpgrp>()  は 0 を返す。そうでない場合、 -1 を返し、 "
23063 "I<errno> を適切に設定する。"
23064
23065 #. type: Plain text
23066 #: build/C/man3/tcgetpgrp.3:95
23067 msgid "I<pgrp> has an unsupported value."
23068 msgstr "I<pgrp> が無効な値である。"
23069
23070 #. type: Plain text
23071 #: build/C/man3/tcgetpgrp.3:104
23072 msgid ""
23073 "The calling process does not have a controlling terminal, or it has one but "
23074 "it is not described by I<fd>, or, for B<tcsetpgrp>(), this controlling "
23075 "terminal is no longer associated with the session of the calling process."
23076 msgstr ""
23077 "呼び出しを行ったプロセスが制御端末を持っていない、もしくは 制御端末を持ってい"
23078 "るが I<fd> で参照されるものとは異なる、 B<tcsetpgrp>()  の場合は、 I<fd> で指"
23079 "定された制御端末がすでに呼び出しを行ったプロセスのセッション と関係のないもの"
23080 "になっている際にも、このエラーとなる。"
23081
23082 #. type: Plain text
23083 #: build/C/man3/tcgetpgrp.3:109
23084 msgid ""
23085 "I<pgrp> has a supported value, but is not the process group ID of a process "
23086 "in the same session as the calling process."
23087 msgstr ""
23088 "I<pgrp> が有効な値だが、呼び出しを行ったプロセスと同じセッションに属する プロ"
23089 "セスのプロセスグループ ID には該当するものがない。"
23090
23091 #. type: Plain text
23092 #: build/C/man3/tcgetpgrp.3:116
23093 msgid "The B<tcgetpgrp>()  and B<tcsetpgrp>()  functions are thread-safe."
23094 msgstr "関数 B<tcgetpgrp>() と B<tcsetpgrp>() はスレッドセーフである。"
23095
23096 #. type: Plain text
23097 #: build/C/man3/tcgetpgrp.3:124
23098 msgid ""
23099 "These functions are implemented via the B<TIOCGPGRP> and B<TIOCSPGRP> ioctls."
23100 msgstr "この関数は B<TIOCGPGRP> と B<TIOCGSID> の ioctl 経由で実現されている。"
23101
23102 #. type: SS
23103 #: build/C/man3/tcgetpgrp.3:124 build/C/man2/vfork.2:234
23104 #, no-wrap
23105 msgid "History"
23106 msgstr "歴史"
23107
23108 #. type: Plain text
23109 #: build/C/man3/tcgetpgrp.3:127
23110 msgid "The ioctls appeared in 4.2BSD.  The functions are POSIX inventions."
23111 msgstr ""
23112 "これらの ioctl は 4.2BSD で登場した。 これらの関数は POSIX で考案されたもので"
23113 "ある。"
23114
23115 #. type: Plain text
23116 #: build/C/man3/tcgetpgrp.3:131
23117 msgid "B<setpgid>(2), B<setsid>(2), B<credentials>(7)"
23118 msgstr "B<setpgid>(2), B<setsid>(2), B<credentials>(7)"
23119
23120 #. type: TH
23121 #: build/C/man2/truncate.2:43
23122 #, no-wrap
23123 msgid "TRUNCATE"
23124 msgstr "TRUNCATE"
23125
23126 #. type: Plain text
23127 #: build/C/man2/truncate.2:46
23128 msgid "truncate, ftruncate - truncate a file to a specified length"
23129 msgstr "truncate, ftruncate - 指定した長さにファイルを切り詰める"
23130
23131 #. type: Plain text
23132 #: build/C/man2/truncate.2:52
23133 msgid "B<int truncate(const char *>I<path>B<, off_t >I<length>B<);>"
23134 msgstr "B<int truncate(const char *>I<path>B<, off_t >I<length>B<);>"
23135
23136 #. type: Plain text
23137 #: build/C/man2/truncate.2:54
23138 msgid "B<int ftruncate(int >I<fd>B<, off_t >I<length>B<);>"
23139 msgstr "B<int ftruncate(int >I<fd>B<, off_t >I<length>B<);>"
23140
23141 #. type: Plain text
23142 #: build/C/man2/truncate.2:63
23143 msgid "B<truncate>():"
23144 msgstr "B<truncate>():"
23145
23146 #. type: Plain text
23147 #: build/C/man2/truncate.2:71
23148 msgid "B<ftruncate>():"
23149 msgstr "B<ftruncate>():"
23150
23151 #. type: Plain text
23152 #: build/C/man2/truncate.2:76
23153 msgid "|| /* Since glibc 2.3.5: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
23154 msgstr "|| /* glibc 2.3.5 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
23155
23156 #. type: Plain text
23157 #: build/C/man2/truncate.2:91
23158 msgid ""
23159 "The B<truncate>()  and B<ftruncate>()  functions cause the regular file "
23160 "named by I<path> or referenced by I<fd> to be truncated to a size of "
23161 "precisely I<length> bytes."
23162 msgstr ""
23163 "B<truncate>()  は I<path> で指定されるファイルを、 B<ftruncate>()  は I<fd> "
23164 "で参照されるファイルを I<length> バイトの長さになるように延長する、もしくは切"
23165 "り詰める。"
23166
23167 #. type: Plain text
23168 #: build/C/man2/truncate.2:95
23169 msgid ""
23170 "If the file previously was larger than this size, the extra data is lost.  "
23171 "If the file previously was shorter, it is extended, and the extended part "
23172 "reads as null bytes (\\(aq\\e0\\(aq)."
23173 msgstr ""
23174 "もし切り詰める前のファイルが I<length> より長ければ、length バイトを越える部"
23175 "分のデータは失われる。 もし切り詰める前のファイルが I<length> より短かけれ"
23176 "ば、伸張される。 伸張された部分を読んだ場合はヌルバイト (\\(aq\\e0\\(aq) の列"
23177 "が返される。"
23178
23179 #. type: Plain text
23180 #: build/C/man2/truncate.2:97
23181 msgid "The file offset is not changed."
23182 msgstr "ファイルオフセットは変更されない。"
23183
23184 #. type: Plain text
23185 #: build/C/man2/truncate.2:104
23186 msgid ""
23187 "If the size changed, then the st_ctime and st_mtime fields (respectively, "
23188 "time of last status change and time of last modification; see B<stat>(2))  "
23189 "for the file are updated, and the set-user-ID and set-group-ID permission "
23190 "bits may be cleared."
23191 msgstr ""
23192 "大きさが変更されると、ファイルの st_ctime と st_mtime フィールド (それぞれ最"
23193 "終状態変更時刻、最終修正時刻; B<stat>(2)  参照) が更新される。 また、set-"
23194 "user-ID と set-group-ID の許可ビットがクリアされるかもしれない。"
23195
23196 #. type: Plain text
23197 #: build/C/man2/truncate.2:110
23198 msgid ""
23199 "With B<ftruncate>(), the file must be open for writing; with B<truncate>(), "
23200 "the file must be writable."
23201 msgstr ""
23202 "B<ftruncate>()  の場合、ファイルは書き込み用に開いていなければならない。 "
23203 "B<truncate>()  の場合、ファイルは書き込み可能でなければならない。"
23204
23205 #. type: Plain text
23206 #: build/C/man2/truncate.2:118
23207 msgid "For B<truncate>():"
23208 msgstr "B<truncate>()  では以下のエラーコードが定義されている。"
23209
23210 #. type: Plain text
23211 #: build/C/man2/truncate.2:124
23212 msgid ""
23213 "Search permission is denied for a component of the path prefix, or the named "
23214 "file is not writable by the user.  (See also B<path_resolution>(7).)"
23215 msgstr ""
23216 "パスで指定されているディレクトリに検索許可のないものがある (訳注:x ビットが"
23217 "立っていない)。 あるいは、指定されたファイルに対する書き込み許可を持っていな"
23218 "い。 (B<path_resolution>(7)  も参照のこと)"
23219
23220 #. type: Plain text
23221 #: build/C/man2/truncate.2:129
23222 msgid ""
23223 "The argument I<path> points outside the process's allocated address space."
23224 msgstr ""
23225 "引き数 I<path> がプロセスに割り当てられているアドレス空間外を指している。"
23226
23227 #. type: TP
23228 #: build/C/man2/truncate.2:129
23229 #, no-wrap
23230 msgid "B<EFBIG>"
23231 msgstr "B<EFBIG>"
23232
23233 #. type: Plain text
23234 #: build/C/man2/truncate.2:134
23235 msgid "The argument I<length> is larger than the maximum file size. (XSI)"
23236 msgstr "引き数 I<length> が最大ファイルサイズより大きい。(XSI)"
23237
23238 #. type: Plain text
23239 #: build/C/man2/truncate.2:141
23240 msgid ""
23241 "While blocked waiting to complete, the call was interrupted by a signal "
23242 "handler; see B<fcntl>(2)  and B<signal>(7)."
23243 msgstr ""
23244 "完了待ちで停止 (block) している間に、呼び出しが シグナルハンドラにより割り込"
23245 "まれた。 B<fcntl>(2)  と B<signal>(7)  を参照。"
23246
23247 #. type: Plain text
23248 #: build/C/man2/truncate.2:146
23249 msgid ""
23250 "The argument I<length> is negative or larger than the maximum file size."
23251 msgstr "引き数 I<length> が負数であるか、最大ファイルサイズより大きい。"
23252
23253 #. type: Plain text
23254 #: build/C/man2/truncate.2:149
23255 msgid "An I/O error occurred updating the inode."
23256 msgstr "inode の更新時に I/O エラーが発生した。"
23257
23258 #. type: Plain text
23259 #: build/C/man2/truncate.2:152
23260 msgid "The named file is a directory."
23261 msgstr "指定されたファイルはディレクトリである。"
23262
23263 #. type: Plain text
23264 #: build/C/man2/truncate.2:155
23265 msgid "Too many symbolic links were encountered in translating the pathname."
23266 msgstr "パス名を解釈する際にシンボリックリンクが多すぎた。"
23267
23268 #. type: Plain text
23269 #: build/C/man2/truncate.2:159
23270 msgid ""
23271 "A component of a pathname exceeded 255 characters, or an entire pathname "
23272 "exceeded 1023 characters."
23273 msgstr ""
23274 "パス名中のディレクトリ名が 255 文字を越えている、もしくはパス名全体が 1023 文"
23275 "字を越えている。"
23276
23277 #. type: Plain text
23278 #: build/C/man2/truncate.2:162
23279 msgid "The named file does not exist."
23280 msgstr "指定された名前のファイルが存在しない。"
23281
23282 #.  This happens for at least MSDOS and VFAT filesystems
23283 #.  on kernel 2.6.13
23284 #. type: Plain text
23285 #: build/C/man2/truncate.2:171
23286 msgid ""
23287 "The underlying filesystem does not support extending a file beyond its "
23288 "current size."
23289 msgstr ""
23290 "下層にあるファイルシステムでは、現在のファイル長を越えて ファイルを伸長するこ"
23291 "とができない。"
23292
23293 #. type: Plain text
23294 #: build/C/man2/truncate.2:175
23295 msgid "The operation was prevented by a file seal; see B<fcntl>(2)."
23296 msgstr "操作が file seal により禁止されている。 B<fcntl>(2) 参照。"
23297
23298 #. type: Plain text
23299 #: build/C/man2/truncate.2:181
23300 msgid "The file is a pure procedure (shared text) file that is being executed."
23301 msgstr "指定されたファイルは実行されているファイルである。"
23302
23303 #. type: Plain text
23304 #: build/C/man2/truncate.2:188
23305 msgid ""
23306 "For B<ftruncate>()  the same errors apply, but instead of things that can be "
23307 "wrong with I<path>, we now have things that can be wrong with the file "
23308 "descriptor, I<fd>:"
23309 msgstr ""
23310 "B<ftruncate>()  にも同様のエラーが適用される。 但し、 I<path> に関するエラー"
23311 "の場合は、ファイルディスクリプター I<fd> に関するエラーとなる。"
23312
23313 #. type: TP
23314 #: build/C/man2/truncate.2:192
23315 #, no-wrap
23316 msgid "B<EBADF> or B<EINVAL>"
23317 msgstr "B<EBADF> または B<EINVAL>"
23318
23319 #. type: Plain text
23320 #: build/C/man2/truncate.2:196
23321 msgid "I<fd> is not open for writing."
23322 msgstr "I<fd> で指定されているものが書き込みモードで開かれていない。"
23323
23324 #. type: Plain text
23325 #: build/C/man2/truncate.2:200
23326 msgid "I<fd> does not reference a regular file."
23327 msgstr "I<fd> が通常のファイルを参照していない。"
23328
23329 #.  POSIX.1-1996 has
23330 #.  .BR ftruncate ().
23331 #.  POSIX.1-2001 also has
23332 #.  .BR truncate (),
23333 #.  as an XSI extension.
23334 #.  .LP
23335 #.  SVr4 documents additional
23336 #.  .BR truncate ()
23337 #.  error conditions EMFILE, EMULTIHP, ENFILE, ENOLINK.  SVr4 documents for
23338 #.  .BR ftruncate ()
23339 #.  an additional EAGAIN error condition.
23340 #. type: Plain text
23341 #: build/C/man2/truncate.2:213
23342 msgid "4.4BSD, SVr4, POSIX.1-2001 (these calls first appeared in 4.2BSD)."
23343 msgstr ""
23344 "4.4BSD, SVr4, POSIX.1-2001 (これらのコールは 4.2BSD で初めて登場した)。"
23345
23346 #.  At the very least: OSF/1, Solaris 7, and FreeBSD conform, mtk, Jan 2002
23347 #. type: Plain text
23348 #: build/C/man2/truncate.2:234
23349 msgid ""
23350 "The details in DESCRIPTION are for XSI-compliant systems.  For non-XSI-"
23351 "compliant systems, the POSIX standard allows two behaviors for "
23352 "B<ftruncate>()  when I<length> exceeds the file length (note that "
23353 "B<truncate>()  is not specified at all in such an environment): either "
23354 "returning an error, or extending the file.  Like most UNIX implementations, "
23355 "Linux follows the XSI requirement when dealing with native filesystems.  "
23356 "However, some nonnative filesystems do not permit B<truncate>()  and "
23357 "B<ftruncate>()  to be used to extend a file beyond its current length: a "
23358 "notable example on Linux is VFAT."
23359 msgstr ""
23360 "「説明」の節で述べた詳細は XSI 準拠のシステムについてのものである。\n"
23361 "XSI 非準拠のシステムの場合、POSIX 標準は B<ftruncate>() に対して I<length> "
23362 "が\n"
23363 "ファイルの長さより長かった場合、 エラーを返すかファイルを伸張するかの二つの\n"
23364 "動作を許容している。 B<truncate>() に対しては全く規定されていない。\n"
23365 "ほとんどの UNIX 実装と同様、Linux はネイティブ (Linux 由来) の ファイルシステ"
23366 "ム\n"
23367 "の扱いでは XSI 要求仕様にしたがっている。 しかしながら、いくつかの非ネイティ"
23368 "ブ\n"
23369 "のファイルシステムでは、 B<truncate>() や B<ftruncate>() を使って現在のファイ"
23370 "ル\n"
23371 "長を越えてファイルを伸長することができない。 Linux での有名な例としては\n"
23372 "VFAT がある。"
23373
23374 #. type: Plain text
23375 #: build/C/man2/truncate.2:248
23376 msgid ""
23377 "The original Linux B<truncate>()  and B<ftruncate>()  system calls were not "
23378 "designed to handle large file offsets.  Consequently, Linux 2.4 added "
23379 "B<truncate64>()  and B<ftruncate64>()  system calls that handle large "
23380 "files.  However, these details can be ignored by applications using glibc, "
23381 "whose wrapper functions transparently employ the more recent system calls "
23382 "where they are available."
23383 msgstr ""
23384 "元々の Linux の B<truncate>() と B<ftruncate>() システムコールは\n"
23385 "大きなファイルオフセットを扱えるように設計されていなかった。\n"
23386 "その結果、大きなファイルファイルを扱うことができる B<truncate64>() と "
23387 "B<ftruncate64>()\n"
23388 "システムコールが Linux 2.4 で追加された。\n"
23389 "ただし、glibc を使ったアプリケーションではこれらの詳細は気にする必要はな"
23390 "い。\n"
23391 "glibc のラッパー関数は新しいシステムコールが利用できる場合にはそれらを利用す"
23392 "る\n"
23393 "ようになっているからである。"
23394
23395 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=12037
23396 #. type: Plain text
23397 #: build/C/man2/truncate.2:261
23398 msgid ""
23399 "A header file bug in glibc 2.12 meant that the minimum value of "
23400 "B<_POSIX_C_SOURCE> required to expose the declaration of B<ftruncate>()  was "
23401 "200809L instead of 200112L.  This has been fixed in later glibc versions."
23402 msgstr ""
23403 "glibc 2.12 のヘッダファイルにはバグがあり、 B<ftruncate>()  の宣言を公開する"
23404 "のに必要な B<_POSIX_C_SOURCE> の最小値が 200112L ではなく 200809L となってい"
23405 "た。 このバグは、これ以降のバージョンの glibc では修正されている。"
23406
23407 #. type: Plain text
23408 #: build/C/man2/truncate.2:265
23409 msgid "B<open>(2), B<stat>(2), B<path_resolution>(7)"
23410 msgstr "B<open>(2), B<stat>(2), B<path_resolution>(7)"
23411
23412 #. type: TH
23413 #: build/C/man3/ualarm.3:24
23414 #, no-wrap
23415 msgid "UALARM"
23416 msgstr "UALARM"
23417
23418 #. type: TH
23419 #: build/C/man3/ualarm.3:24
23420 #, no-wrap
23421 msgid "2013-12-23"
23422 msgstr "2013-12-23"
23423
23424 #. type: Plain text
23425 #: build/C/man3/ualarm.3:27
23426 msgid "ualarm - schedule signal after given number of microseconds"
23427 msgstr "ualarm - 指定したマイクロ秒後にシグナルを送る予定をする"
23428
23429 #. type: Plain text
23430 #: build/C/man3/ualarm.3:32
23431 #, no-wrap
23432 msgid "B<useconds_t ualarm(useconds_t >I<usecs>B<, useconds_t >I<interval>B<);>\n"
23433 msgstr "B<useconds_t ualarm(useconds_t >I<usecs>B<, useconds_t >I<interval>B<);>\n"
23434
23435 #. type: Plain text
23436 #: build/C/man3/ualarm.3:40
23437 msgid "B<ualarm>():"
23438 msgstr "B<ualarm>():"
23439
23440 #. type: Plain text
23441 #: build/C/man3/ualarm.3:69
23442 msgid ""
23443 "The B<ualarm>()  function causes the signal B<SIGALRM> to be sent to the "
23444 "invoking process after (not less than)  I<usecs> microseconds.  The delay "
23445 "may be lengthened slightly by any system activity or by the time spent "
23446 "processing the call or by the granularity of system timers."
23447 msgstr ""
23448 "B<ualarm>()  関数は、呼び出し元のプロセスに対して I<usecs> マイクロ秒 (以上) "
23449 "後に B<SIGALRM> シグナルを送る。 遅れはシステムの活性度・呼び出しの処理時"
23450 "間・ システムタイマーの粒度によって長くなるかもしれない。"
23451
23452 #. type: Plain text
23453 #: build/C/man3/ualarm.3:73
23454 msgid ""
23455 "Unless caught or ignored, the B<SIGALRM> signal will terminate the process."
23456 msgstr ""
23457 "捕捉または無視されない限り、 B<SIGALRM> シグナルはプロセスを終了させる。"
23458
23459 #. type: Plain text
23460 #: build/C/man3/ualarm.3:81
23461 msgid ""
23462 "If the I<interval> argument is nonzero, further B<SIGALRM> signals will be "
23463 "sent every I<interval> microseconds after the first."
23464 msgstr ""
23465 "I<interval> 引き数が 0 でない場合、最初の B<SIGALRM> シグナルの後、 さらに "
23466 "I<interval> マイクロ秒毎に SIGALRM シグナルが送られる。"
23467
23468 #. type: Plain text
23469 #: build/C/man3/ualarm.3:84
23470 msgid ""
23471 "This function returns the number of microseconds remaining for any alarm "
23472 "that was previously set, or 0 if no alarm was pending."
23473 msgstr ""
23474 "この関数は、過去に設定された alarm の残りマイクロ秒数を返す。 実行中の alarm "
23475 "がない場合は 0 を返す。"
23476
23477 #. type: Plain text
23478 #: build/C/man3/ualarm.3:88
23479 msgid "Interrupted by a signal."
23480 msgstr "シグナルによって割り込まれた。"
23481
23482 #. type: Plain text
23483 #: build/C/man3/ualarm.3:92
23484 msgid ""
23485 "I<usecs> or I<interval> is not smaller than 1000000.  (On systems where that "
23486 "is considered an error.)"
23487 msgstr ""
23488 "I<usecs> または I<interval> が 1000000 未満でない (これがエラーとして扱われる"
23489 "システムの場合)。"
23490
23491 #. type: Plain text
23492 #: build/C/man3/ualarm.3:97
23493 msgid "The B<ualarm>()  function is thread-safe."
23494 msgstr "B<ualarm>() 関数はスレッドセーフである。"
23495
23496 #. type: Plain text
23497 #: build/C/man3/ualarm.3:105
23498 msgid ""
23499 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 marks B<ualarm>()  as obsolete.  "
23500 "POSIX.1-2008 removes the specification of B<ualarm>().  4.3BSD, SUSv2, and "
23501 "POSIX do not define any errors."
23502 msgstr ""
23503 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 では B<ualarm>()  は過去のものとされてい"
23504 "る。 POSIX.1-2008 では、 B<ualarm>()  の仕様が削除されている。 4.3BSD, "
23505 "SUSv2, POSIX はエラーを定義していない。"
23506
23507 #.  This case is not documented in HP-US, Solar, FreeBSD, NetBSD, or OpenBSD!
23508 #. type: Plain text
23509 #: build/C/man3/ualarm.3:112
23510 msgid ""
23511 "POSIX.1-2001 does not specify what happens if the I<usecs> argument is 0.  "
23512 "On Linux (and probably most other systems), the effect is to cancel any "
23513 "pending alarm."
23514 msgstr ""
23515 "POSIX.1-2001 では、 I<usecs> 引き数が 0 の場合、何が起こるかは規定されていな"
23516 "い。 Linux (やおそらく他ほとんどのシステム) では、 I<usecs> 引き数が 0 の場"
23517 "合、処理待ちのアラームがキャンセルされる。"
23518
23519 #. type: Plain text
23520 #: build/C/man3/ualarm.3:125
23521 msgid ""
23522 "The type I<useconds_t> is an unsigned integer type capable of holding "
23523 "integers in the range [0,1000000].  On the original BSD implementation, and "
23524 "in glibc before version 2.1, the arguments to B<ualarm>()  were instead "
23525 "typed as I<unsigned int>.  Programs will be more portable if they never "
23526 "mention I<useconds_t> explicitly."
23527 msgstr ""
23528 "I<useconds_t> 型は [0,1000000] の範囲の整数を保持できる符号なし整数型であ"
23529 "る。 もともとの BSD での実装や、バージョン 2.1 より前の glibc では、 "
23530 "B<ualarm>()  の引き数の型は I<unsigned int> であった。 プログラム中に明示的"
23531 "に I<useconds_t> と書かない方が、移植性が高くなる。"
23532
23533 #. type: Plain text
23534 #: build/C/man3/ualarm.3:139
23535 msgid ""
23536 "The interaction of this function with other timer functions such as "
23537 "B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), "
23538 "B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), "
23539 "B<timer_gettime>(2), B<timer_settime>(2), B<usleep>(3)  is unspecified."
23540 msgstr ""
23541 "この関数と B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), "
23542 "B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), "
23543 "B<timer_gettime>(2), B<timer_settime>(2), B<usleep>(3)  のような他のタイマー"
23544 "関数との相互作用は規定されていない。"
23545
23546 #. type: Plain text
23547 #: build/C/man3/ualarm.3:147
23548 msgid ""
23549 "This function is obsolete.  Use B<setitimer>(2)  or POSIX interval timers "
23550 "(B<timer_create>(2), etc.)  instead."
23551 msgstr ""
23552 "この関数は廃止予定である。 代わりに B<setitimer>(2)  もしくは POSIX インター"
23553 "バルタイマ (B<timer_create>(2)  など) を使うこと。"
23554
23555 #. type: Plain text
23556 #: build/C/man3/ualarm.3:155
23557 msgid ""
23558 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
23559 "B<setitimer>(2), B<usleep>(3), B<time>(7)"
23560 msgstr ""
23561 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
23562 "B<setitimer>(2), B<usleep>(3), B<time>(7)"
23563
23564 #. type: TH
23565 #: build/C/man2/umask.2:34
23566 #, no-wrap
23567 msgid "UMASK"
23568 msgstr "UMASK"
23569
23570 #. type: TH
23571 #: build/C/man2/umask.2:34
23572 #, no-wrap
23573 msgid "2008-01-09"
23574 msgstr "2008-01-09"
23575
23576 #. type: Plain text
23577 #: build/C/man2/umask.2:37
23578 msgid "umask - set file mode creation mask"
23579 msgstr "umask - ファイルモード作成マスクを設定する"
23580
23581 #. type: Plain text
23582 #: build/C/man2/umask.2:43
23583 msgid "B<mode_t umask(mode_t >I<mask>B<);>"
23584 msgstr "B<mode_t umask(mode_t >I<mask>B<);>"
23585
23586 #. type: Plain text
23587 #: build/C/man2/umask.2:50
23588 msgid ""
23589 "B<umask>()  sets the calling process's file mode creation mask (umask) to "
23590 "I<mask> & 0777 (i.e., only the file permission bits of I<mask> are used), "
23591 "and returns the previous value of the mask."
23592 msgstr ""
23593 "B<umask>()  は、呼び出し元プロセスのファイルモード作成マスク (umask) を "
23594 "I<mask> & 0777 に設定し (I<umask> のファイル許可に対応するビットのみを使用す"
23595 "る)、 変更前のマスク値を返す。"
23596
23597 #.  e.g., mkfifo(), creat(), mknod(), sem_open(), mq_open(), shm_open()
23598 #.  but NOT the System V IPC *get() calls
23599 #. type: Plain text
23600 #: build/C/man2/umask.2:65
23601 msgid ""
23602 "The umask is used by B<open>(2), B<mkdir>(2), and other system calls that "
23603 "create files to modify the permissions placed on newly created files or "
23604 "directories.  Specifically, permissions in the umask are turned off from the "
23605 "I<mode> argument to B<open>(2)  and B<mkdir>(2)."
23606 msgstr ""
23607 "umask は、 B<open>(2), B<mkdir>(2)  やファイル作成を行うその他のシステムコー"
23608 "ルで、 新しく作成されるファイルやディレクトリの許可 (permission) を 修正する"
23609 "ために使用される。 具体的には umask に設定されている許可が B<open>(2)  や "
23610 "B<mkdir>(2)  の I<mode> 引き数から取り消される。"
23611
23612 #. type: Plain text
23613 #: build/C/man2/umask.2:70
23614 msgid ""
23615 "The constants that should be used to specify I<mask> are described under "
23616 "B<stat>(2)."
23617 msgstr ""
23618 "I<mask> に指定するのに使用すべき定数については B<stat>(2)  で説明されている。"
23619
23620 #. type: Plain text
23621 #: build/C/man2/umask.2:79
23622 msgid ""
23623 "The typical default value for the process umask is I<S_IWGRP\\ |\\ S_IWOTH> "
23624 "(octal 022).  In the usual case where the I<mode> argument to B<open>(2)  is "
23625 "specified as:"
23626 msgstr ""
23627 "プロセスの umask のよくあるデフォルト値は I<S_IWGRP\\ |\\ S_IWOTH> (8進で "
23628 "022) である。 新しいファイルを作成する際に B<open>(2)  の I<mode> 引き数に"
23629
23630 #. type: Plain text
23631 #: build/C/man2/umask.2:82
23632 #, no-wrap
23633 msgid "    S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH\n"
23634 msgstr "    S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH\n"
23635
23636 #. type: Plain text
23637 #: build/C/man2/umask.2:86
23638 msgid ""
23639 "(octal 0666) when creating a new file, the permissions on the resulting file "
23640 "will be:"
23641 msgstr "を指定するというよくあるケースでは、作成されたファイルは"
23642
23643 #. type: Plain text
23644 #: build/C/man2/umask.2:89
23645 #, no-wrap
23646 msgid "    S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH\n"
23647 msgstr "    S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH\n"
23648
23649 #. type: Plain text
23650 #: build/C/man2/umask.2:92
23651 msgid "(because 0666 & ~022 = 0644; i.e., rw-r--r--)."
23652 msgstr ""
23653 "という許可を持つことになる (なぜなら 0666 & ~022 = 0644、つまり rw-r--r--)。"
23654
23655 #. type: Plain text
23656 #: build/C/man2/umask.2:95
23657 msgid ""
23658 "This system call always succeeds and the previous value of the mask is "
23659 "returned."
23660 msgstr "このシステムコールは必ず成功し、以前の umask 値を返す。"
23661
23662 #. type: Plain text
23663 #: build/C/man2/umask.2:103
23664 msgid ""
23665 "A child process created via B<fork>(2)  inherits its parent's umask.  The "
23666 "umask is left unchanged by B<execve>(2)."
23667 msgstr ""
23668 "B<fork>(2)  で作成された子プロセスは、親プロセスの umask を継承する。 "
23669 "B<execve>(2)  によって umask は変更されない。"
23670
23671 #. type: Plain text
23672 #: build/C/man2/umask.2:118
23673 msgid ""
23674 "The umask setting also affects the permissions assigned to POSIX IPC objects "
23675 "(B<mq_open>(3), B<sem_open>(3), B<shm_open>(3)), FIFOs (B<mkfifo>(3)), and "
23676 "UNIX domain sockets (B<unix>(7))  created by the process.  The umask does "
23677 "not affect the permissions assigned to System\\ V IPC objects created by the "
23678 "process (using B<msgget>(2), B<semget>(2), B<shmget>(2))."
23679 msgstr ""
23680 "umask の設定は、そのプロセスが生成する POSIX IPC オブジェクト "
23681 "(B<mq_open>(3), B<sem_open>(3), B<shm_open>(3))  や FIFO (B<mkfifo>(3))、 "
23682 "UNIX ドメインソケット (B<unix>(7))  に設定される許可にも影響を与える。 一方、"
23683 "umask は、そのプロセスが (B<msgget>(2), B<semget>(2), B<shmget>(2)  を使っ"
23684 "て) 生成する System\\ V IPC オブジェクトに設定される許可には 影響を与えない。"
23685
23686 #. type: Plain text
23687 #: build/C/man2/umask.2:124
23688 msgid "B<chmod>(2), B<mkdir>(2), B<open>(2), B<stat>(2), B<acl>(5)"
23689 msgstr "B<chmod>(2), B<mkdir>(2), B<open>(2), B<stat>(2), B<acl>(5)"
23690
23691 #. type: TH
23692 #: build/C/man2/uname.2:27
23693 #, no-wrap
23694 msgid "UNAME"
23695 msgstr "UNAME"
23696
23697 #. type: Plain text
23698 #: build/C/man2/uname.2:30
23699 msgid "uname - get name and information about current kernel"
23700 msgstr "uname - 現在稼働中のカーネルについての名前と情報を得る"
23701
23702 #. type: Plain text
23703 #: build/C/man2/uname.2:32
23704 msgid "B<#include E<lt>sys/utsname.hE<gt>>"
23705 msgstr "B<#include E<lt>sys/utsname.hE<gt>>"
23706
23707 #. type: Plain text
23708 #: build/C/man2/uname.2:34
23709 msgid "B<int uname(struct utsname *>I<buf>B<);>"
23710 msgstr "B<int uname(struct utsname *>I<buf>B<);>"
23711
23712 #. type: Plain text
23713 #: build/C/man2/uname.2:42
23714 msgid ""
23715 "B<uname>()  returns system information in the structure pointed to by "
23716 "I<buf>.  The I<utsname> struct is defined in I<E<lt>sys/utsname.hE<gt>>:"
23717 msgstr ""
23718 "B<uname>()  は I<buf> で指される構造体にシステム情報を返す。 I<utsname> 構造"
23719 "体は I<E<lt>sys/utsname.hE<gt>> で以下のように定義されている。"
23720
23721 #. type: Plain text
23722 #: build/C/man2/uname.2:56
23723 #, no-wrap
23724 msgid ""
23725 "struct utsname {\n"
23726 "    char sysname[];    /* Operating system name (e.g., \"Linux\") */\n"
23727 "    char nodename[];   /* Name within \"some implementation-defined\n"
23728 "                          network\" */\n"
23729 "    char release[];    /* Operating system release (e.g., \"2.6.28\") */\n"
23730 "    char version[];    /* Operating system version */\n"
23731 "    char machine[];    /* Hardware identifier */\n"
23732 "#ifdef _GNU_SOURCE\n"
23733 "    char domainname[]; /* NIS or YP domain name */\n"
23734 "#endif\n"
23735 "};\n"
23736 msgstr ""
23737 "struct utsname {\n"
23738 "    char sysname[];    /* OS の名前 (例: \"Linux\") */\n"
23739 "    char nodename[];   /* 「実装時に定義された、何らかの\n"
23740 "                          ネットワーク」におけるマシン名 */\n"
23741 "    char release[];    /* オペレーションシステムのリリース番号 (例: \"2.6.28\") */\n"
23742 "    char version[];    /* オペレーティングシステムのバージョン */\n"
23743 "    char machine[];    /* ハードウェア識別子 */\n"
23744 "#ifdef _GNU_SOURCE\n"
23745 "    char domainname[]; /* NIS や YP のドメイン名 */\n"
23746 "#endif\n"
23747 "};\n"
23748
23749 #. type: Plain text
23750 #: build/C/man2/uname.2:63
23751 msgid ""
23752 "The length of the arrays in a I<struct utsname> is unspecified (see NOTES); "
23753 "the fields are terminated by a null byte (\\(aq\\e0\\(aq)."
23754 msgstr ""
23755 "I<struct utsname> にある配列の長さは指定されていない (「注意」の節を参照)。 "
23756 "フィールドはヌルバイト (\\(aq\\e0\\(aq) で終端される。"
23757
23758 #. type: Plain text
23759 #: build/C/man2/uname.2:73
23760 msgid "I<buf> is not valid."
23761 msgstr "I<buf> が有効でない。"
23762
23763 #. type: Plain text
23764 #: build/C/man2/uname.2:78
23765 msgid "SVr4, POSIX.1-2001.  There is no B<uname>()  call in 4.3BSD."
23766 msgstr "SVr4, POSIX.1-2001.  4.3BSD には B<uname>()  コールがない。"
23767
23768 #. type: Plain text
23769 #: build/C/man2/uname.2:82
23770 msgid ""
23771 "The I<domainname> member (the NIS or YP domain name) is a GNU extension."
23772 msgstr ""
23773 "I<domainname> メンバー (NIS または YP ドメイン名) は GNU の拡張である。"
23774
23775 #. type: Plain text
23776 #: build/C/man2/uname.2:98
23777 msgid ""
23778 "This is a system call, and the operating system presumably knows its name, "
23779 "release and version.  It also knows what hardware it runs on.  So, four of "
23780 "the fields of the struct are meaningful.  On the other hand, the field "
23781 "I<nodename> is meaningless: it gives the name of the present machine in some "
23782 "undefined network, but typically machines are in more than one network and "
23783 "have several names.  Moreover, the kernel has no way of knowing about such "
23784 "things, so it has to be told what to answer here.  The same holds for the "
23785 "additional I<domainname> field."
23786 msgstr ""
23787 "これはシステムコールであり、OS は名前・リリース・バージョンなどを たぶん分"
23788 "かっているだろう。 さらにそれが稼働しているハードウェアも分かっているだろ"
23789 "う。 よって構造体の 4 つのフィールドには意味がある。 一方、I<nodename> フィー"
23790 "ルドには意味がない: このフィールドは現在のマシンの (定義されていない)  どこか"
23791 "のネットワークにおける名前を与えるが、 通常マシンは複数のネットワークに属し、"
23792 "複数の名前を持つ。 さらに、カーネルはこのような情報を知る術を持たないので、 "
23793 "ここでの答えは前もって教えてやらなければならない。 これは追加フィールドであ"
23794 "る I<domainname> についても同様である。"
23795
23796 #. type: Plain text
23797 #: build/C/man2/uname.2:116
23798 msgid ""
23799 "To this end, Linux uses the system calls B<sethostname>(2)  and "
23800 "B<setdomainname>(2).  Note that there is no standard that says that the "
23801 "hostname set by B<sethostname>(2)  is the same string as the I<nodename> "
23802 "field of the struct returned by B<uname>()  (indeed, some systems allow a "
23803 "256-byte hostname and an 8-byte nodename), but this is true on Linux.  The "
23804 "same holds for B<setdomainname>(2)  and the I<domainname> field."
23805 msgstr ""
23806 "このため Linux ではシステムコール B<sethostname>(2)  と B<setdomainname>(2)  "
23807 "が使われる。 「B<sethostname>(2)  で設定されるホスト名は、 B<uname>()  で返さ"
23808 "れる構造体の I<nodename> フィールドと同じ文字列である」 と規定している標準規"
23809 "格はない (実際、256 バイトのホスト名と 8 バイトのノード名を許可しているシステ"
23810 "ムもある)。 しかし、Linux では同じ文字列が返される。 B<setdomainname>(2)  と "
23811 "I<domainname> フィールドについても同じことが成り立つ。"
23812
23813 #. type: Plain text
23814 #: build/C/man2/uname.2:131
23815 msgid ""
23816 "The length of the fields in the struct varies.  Some operating systems or "
23817 "libraries use a hardcoded 9 or 33 or 65 or 257.  Other systems use "
23818 "B<SYS_NMLN> or B<_SYS_NMLN> or B<UTSLEN> or B<_UTSNAME_LENGTH>.  Clearly, it "
23819 "is a bad idea to use any of these constants; just use sizeof(...).  Often "
23820 "257 is chosen in order to have room for an internet hostname."
23821 msgstr ""
23822 "構造体のフィールドの長さはさまざまである。 OS やライブラリの中には、 ハード"
23823 "コードされた 9, 33, 65, 257 などの値を使っているものもある。 また "
23824 "B<SYS_NMLN>, B<_SYS_NMLN>, B<UTSLEN>, B<_UTSNAME_LENGTH> などを使っているシス"
23825 "テムもある。 はっきり言って、これらの定数を使うのは悪い考え方であり、 "
23826 "sizeof(...) を使うべきである。 インターネットホスト名で使う領域を持たせるため"
23827 "に、 257 が選ばれることが多い。"
23828
23829 #. type: Plain text
23830 #: build/C/man2/uname.2:138
23831 msgid ""
23832 "Part of the utsname information is also accessible via I</proc/sys/kernel/"
23833 ">{I<ostype>, I<hostname>, I<osrelease>, I<version>, I<domainname>}."
23834 msgstr ""
23835 "utsname の情報は、 I</proc/sys/kernel/>{I<ostype>, I<hostname>, "
23836 "I<osrelease>, I<version>, I<domainname>} を使ってアクセスすることもできる。"
23837
23838 #.  That was back before Linux 1.0
23839 #.  That was also back before Linux 1.0
23840 #. type: Plain text
23841 #: build/C/man2/uname.2:167
23842 msgid ""
23843 "Over time, increases in the size of the I<utsname> structure have led to "
23844 "three successive versions of B<uname>(): I<sys_olduname>()  (slot "
23845 "I<__NR_oldolduname>), I<sys_uname>()  (slot I<__NR_olduname>), and "
23846 "I<sys_newuname>()  (slot I<__NR_uname)>.  The first one used length 9 for "
23847 "all fields; the second used 65; the third also uses 65 but adds the "
23848 "I<domainname> field.  The glibc B<uname>()  wrapper function hides these "
23849 "details from applications, invoking the most recent version of the system "
23850 "call provided by the kernel."
23851 msgstr ""
23852 "時間の経過とともに、 I<utsname> 構造体のサイズが大きくなり、この影響で "
23853 "B<uname>()  には 3つのバージョンが存在する: I<sys_olduname>()  (スロットは "
23854 "I<__NR_oldolduname>)、 I<sys_uname>()  (スロットは I<__NR_olduname>)、 "
23855 "I<sys_newuname>()  (スロットは I<__NR_uname>)。 I<sys_olduname>()  はすべての"
23856 "フィールドが長さ 9 を使っていた。 I<sys_uname>()  は長さ 65 を使っていた。 "
23857 "I<sys_newuname>()  も長さ 65 を使っているが、 I<domainname> フィールドが追加"
23858 "されている。 glibc の B<uname>()  ラッパー関数は、これらの詳細をアプリケー"
23859 "ションから隠蔽し、 カーネルが提供しているシステムコールのうち最新のバージョン"
23860 "を起動する。"
23861
23862 #. type: Plain text
23863 #: build/C/man2/uname.2:172
23864 msgid "B<uname>(1), B<getdomainname>(2), B<gethostname>(2), B<namespaces>(7)"
23865 msgstr "B<uname>(1), B<getdomainname>(2), B<gethostname>(2), B<namespaces>(7)"
23866
23867 #. type: TH
23868 #: build/C/man2/uselib.2:31
23869 #, no-wrap
23870 msgid "USELIB"
23871 msgstr "USELIB"
23872
23873 #. type: TH
23874 #: build/C/man2/uselib.2:31
23875 #, no-wrap
23876 msgid "2005-01-09"
23877 msgstr "2005-01-09"
23878
23879 #. type: Plain text
23880 #: build/C/man2/uselib.2:34
23881 msgid "uselib - load shared library"
23882 msgstr "uselib - 共有ライブラリを選択する"
23883
23884 #. type: Plain text
23885 #: build/C/man2/uselib.2:38
23886 msgid "B<int uselib(const char *>I<library>B<);>"
23887 msgstr "B<int uselib(const char *>I<library>B<);>"
23888
23889 #. type: Plain text
23890 #: build/C/man2/uselib.2:48
23891 msgid ""
23892 "The system call B<uselib>()  serves to load a shared library to be used by "
23893 "the calling process.  It is given a pathname.  The address where to load is "
23894 "found in the library itself.  The library can have any recognized binary "
23895 "format."
23896 msgstr ""
23897 "システムコール B<uselib>()  は、呼び出し元プロセスが使用する 共有ライブラリを"
23898 "ロードする際に使用される。 このシステムコールにはライブラリのパス名を指定す"
23899 "る。 ライブラリをロードするアドレスはライブラリ自身に書かれている。 ライブラ"
23900 "リは認識可能なバイナリ形式であればどんな形式でもよい。"
23901
23902 #. type: Plain text
23903 #: build/C/man2/uselib.2:59
23904 msgid ""
23905 "In addition to all of the error codes returned by B<open>(2)  and "
23906 "B<mmap>(2), the following may also be returned:"
23907 msgstr ""
23908 "B<open>(2)  と B<mmap>(2)  が返すエラーコードに加えて、以下のエラーコードが設"
23909 "定されることがある。"
23910
23911 #. type: Plain text
23912 #: build/C/man2/uselib.2:67
23913 msgid ""
23914 "The library specified by I<library> does not have read or execute "
23915 "permission, or the caller does not have search permission for one of the "
23916 "directories in the path prefix.  (See also B<path_resolution>(7).)"
23917 msgstr ""
23918 "I<library> で指定されたライブラリに対する読み込み許可、または実行許可がな"
23919 "い。 もしくは I<library> が存在するディレクトリかその上位のいずれかに対する検"
23920 "索許可がない (B<path_resolution>(7)  も参照)。"
23921
23922 #. type: Plain text
23923 #: build/C/man2/uselib.2:76
23924 msgid ""
23925 "The file specified by I<library> is not an executable of a known type; for "
23926 "example, it does not have the correct magic numbers."
23927 msgstr ""
23928 "I<library> で指定されたファイルが、実行可能ファイルと認識されるファイル種別で"
23929 "はない。 例えば、正しいマジックナンバーが付いていない。"
23930
23931 #. type: Plain text
23932 #: build/C/man2/uselib.2:80
23933 msgid ""
23934 "B<uselib>()  is Linux-specific, and should not be used in programs intended "
23935 "to be portable."
23936 msgstr ""
23937 "B<uselib>()  は Linux 特有の関数であり、移植性を持たせたいプログラム には使用"
23938 "すべきでない。"
23939
23940 #. type: Plain text
23941 #: build/C/man2/uselib.2:85
23942 msgid ""
23943 "B<uselib>()  was used by early libc startup code to load the shared "
23944 "libraries with names found in an array of names in the binary."
23945 msgstr ""
23946 "初期の libc の起動コードは、 B<uselib>()  を使って、 バイナリ中のリストに書か"
23947 "れている共有ライブラリを リスト中のそのままの名前でロードしていた。"
23948
23949 #.  libc 4.3.1f - changelog 1993-03-02
23950 #.  libc 4.3.4 - changelog 1993-04-21
23951 #. type: Plain text
23952 #: build/C/man2/uselib.2:95
23953 msgid ""
23954 "Since libc 4.3.2, startup code tries to prefix these names with \"/usr/lib"
23955 "\", \"/lib\" and \"\" before giving up.  In libc 4.3.4 and later these names "
23956 "are looked for in the directories found in B<LD_LIBRARY_PATH>, and if not "
23957 "found there, prefixes \"/usr/lib\", \"/lib\" and \"/\" are tried."
23958 msgstr ""
23959 "libc 4.3.2 以降では、これらの名前の前に \"/usr/lib\", \"/lib\", \"\" を つけ"
23960 "て共有ライブラリを探すようになった。 libc 4.3.4 以降では、これらの名前の共有"
23961 "ライブラリをまず B<LD_LIBRARY_PATH> で指定されたディレクトリで探し、見つから"
23962 "なければ、 名前の前に \"/usr/lib\", \"/lib\", \"/\" をつけて探す。"
23963
23964 #. type: Plain text
23965 #: build/C/man2/uselib.2:100
23966 msgid ""
23967 "From libc 4.4.4 on only the library \"/lib/ld.so\" is loaded, so that this "
23968 "dynamic library can load the remaining libraries needed (again using this "
23969 "call).  This is also the state of affairs in libc5."
23970 msgstr ""
23971 "libc 4.4.4 以降では、ライブラリ \"/lib/ld.so\" だけがロードされ、その後で こ"
23972 "の動的ライブラリが (このシステムコールをもう一度使って)  必要な残りのライブラ"
23973 "リをロードできるようになっている。"
23974
23975 #. type: Plain text
23976 #: build/C/man2/uselib.2:102
23977 msgid "glibc2 does not use this call."
23978 msgstr "glibc2 は、このシステムコールを使用しない。"
23979
23980 #. type: Plain text
23981 #: build/C/man2/uselib.2:112
23982 msgid ""
23983 "B<ar>(1), B<gcc>(1), B<ld>(1), B<ldd>(1), B<mmap>(2), B<open>(2), "
23984 "B<dlopen>(3), B<capabilities>(7), B<ld.so>(8)"
23985 msgstr ""
23986 "B<ar>(1), B<gcc>(1), B<ld>(1), B<ldd>(1), B<mmap>(2), B<open>(2), "
23987 "B<dlopen>(3), B<capabilities>(7), B<ld.so>(8)"
23988
23989 #. type: TH
23990 #: build/C/man3/usleep.3:33
23991 #, no-wrap
23992 msgid "USLEEP"
23993 msgstr "USLEEP"
23994
23995 #. type: TH
23996 #: build/C/man3/usleep.3:33
23997 #, no-wrap
23998 msgid "2013-12-10"
23999 msgstr "2013-12-10"
24000
24001 #. type: Plain text
24002 #: build/C/man3/usleep.3:36
24003 msgid "usleep - suspend execution for microsecond intervals"
24004 msgstr "usleep - マイクロ秒単位で実行を延期する"
24005
24006 #. type: Plain text
24007 #: build/C/man3/usleep.3:41
24008 #, no-wrap
24009 msgid "B<int usleep(useconds_t >I<usec>B<);>\n"
24010 msgstr "B<int usleep(useconds_t >I<usec>B<);>\n"
24011
24012 #. type: Plain text
24013 #: build/C/man3/usleep.3:49
24014 msgid "B<usleep>():"
24015 msgstr "B<usleep>():"
24016
24017 #. type: Plain text
24018 #: build/C/man3/usleep.3:75
24019 msgid ""
24020 "The B<usleep>()  function suspends execution of the calling thread for (at "
24021 "least) I<usec> microseconds.  The sleep may be lengthened slightly by any "
24022 "system activity or by the time spent processing the call or by the "
24023 "granularity of system timers."
24024 msgstr ""
24025 "B<usleep>()  関数は (少なくとも) I<usec>マイクロ秒の間、 呼び出し元スレッドの"
24026 "実行を延期する。 システムの動作状況や呼び出しによる時間の消費やシステムタイマ"
24027 "の粒度によって、 停止時間は設定した値よりも少し延ばされるかもしれない。"
24028
24029 #. type: Plain text
24030 #: build/C/man3/usleep.3:82
24031 msgid ""
24032 "The B<usleep>()  function returns 0 on success.  On error, -1 is returned, "
24033 "with I<errno> set to indicate the cause of the error."
24034 msgstr ""
24035 "B<usleep>() 関数は成功すると 0 を返す。 エラーの場合、 -1 が返され、 "
24036 "I<errno> にエラーの原因を示す値が設定される。"
24037
24038 #. type: Plain text
24039 #: build/C/man3/usleep.3:87
24040 msgid "Interrupted by a signal; see B<signal>(7)."
24041 msgstr "シグナルによって中断された。 B<signal>(7)  参照。"
24042
24043 #. type: Plain text
24044 #: build/C/man3/usleep.3:91
24045 msgid ""
24046 "I<usec> is not smaller than 1000000.  (On systems where that is considered "
24047 "an error.)"
24048 msgstr "I<usec> が 1000000 以上だった。 (これをエラーとみなすシステムのみ)"
24049
24050 #. type: Plain text
24051 #: build/C/man3/usleep.3:96
24052 msgid "The B<usleep>()  function is thread-safe."
24053 msgstr "B<usleep>() 関数はスレッドセーフである。"
24054
24055 #. type: Plain text
24056 #: build/C/man3/usleep.3:103
24057 msgid ""
24058 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 declares this function obsolete; use "
24059 "B<nanosleep>(2)  instead.  POSIX.1-2008 removes the specification of "
24060 "B<usleep>()."
24061 msgstr ""
24062 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 では、この関数は過去のものと宣言されてい"
24063 "る。 代わりに B<nanosleep>(2)  を使うこと。 POSIX.1-2008 では、 B<usleep>()  "
24064 "の規定が削除されている。"
24065
24066 #. type: Plain text
24067 #: build/C/man3/usleep.3:110
24068 msgid ""
24069 "On the original BSD implementation, and in glibc before version 2.2.2, the "
24070 "return type of this function is I<void>.  The POSIX version returns I<int>, "
24071 "and this is also the prototype used since glibc 2.2.2."
24072 msgstr ""
24073 "もともとの BSD の実装や、バージョン 2.2.2 より前の glibc では、 この関数の返"
24074 "り値の型は I<void> である。 POSIX 版は I<int> を返し、このプロトタイプは "
24075 "glibc 2.2.2 以降で使用されている。"
24076
24077 #. type: Plain text
24078 #: build/C/man3/usleep.3:114
24079 msgid ""
24080 "Only the B<EINVAL> error return is documented by SUSv2 and POSIX.1-2001."
24081 msgstr ""
24082 "エラーとして B<EINVAL> を返すというのは SUSv2 と POSIX.1-2001 でのみ文書化さ"
24083 "れている。"
24084
24085 #. type: Plain text
24086 #: build/C/man3/usleep.3:122
24087 msgid ""
24088 "The type I<useconds_t> is an unsigned integer type capable of holding "
24089 "integers in the range [0,1000000].  Programs will be more portable if they "
24090 "never mention this type explicitly.  Use"
24091 msgstr ""
24092 "I<useconds_t> 型は [0,1000000] の範囲の整数を扱うことができる 符号なし整数型"
24093 "である。 明示的にこの型を使わないことでプログラムの移植性がより高まる。 以下"
24094 "のように使うこと。"
24095
24096 #. type: Plain text
24097 #: build/C/man3/usleep.3:130
24098 #, no-wrap
24099 msgid ""
24100 "#include E<lt>unistd.hE<gt>\n"
24101 "\\&...\n"
24102 "    unsigned int usecs;\n"
24103 "\\&...\n"
24104 "    usleep(usecs);\n"
24105 msgstr ""
24106 "#include E<lt>unistd.hE<gt>\n"
24107 "\\&...\n"
24108 "    unsigned int usecs;\n"
24109 "\\&...\n"
24110 "    usleep(usecs);\n"
24111
24112 #. type: Plain text
24113 #: build/C/man3/usleep.3:147
24114 msgid ""
24115 "The interaction of this function with the B<SIGALRM> signal, and with other "
24116 "timer functions such as B<alarm>(2), B<sleep>(3), B<nanosleep>(2), "
24117 "B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), "
24118 "B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), "
24119 "B<ualarm>(3)  is unspecified."
24120 msgstr ""
24121 "この関数と、 B<SIGALRM> シグナルあるいは B<alarm>(2), B<sleep>(3), "
24122 "B<nanosleep>(2), B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), "
24123 "B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), "
24124 "B<ualarm>(3)  といったその他のタイマー関数を同時に使った場合の動作は未定義で"
24125 "ある。"
24126
24127 #. type: Plain text
24128 #: build/C/man3/usleep.3:156
24129 msgid ""
24130 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
24131 "B<setitimer>(2), B<sleep>(3), B<ualarm>(3), B<time>(7)"
24132 msgstr ""
24133 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
24134 "B<setitimer>(2), B<sleep>(3), B<ualarm>(3), B<time>(7)"
24135
24136 #. type: TH
24137 #: build/C/man2/vfork.2:28
24138 #, no-wrap
24139 msgid "VFORK"
24140 msgstr "VFORK"
24141
24142 #. type: TH
24143 #: build/C/man2/vfork.2:28
24144 #, no-wrap
24145 msgid "2012-08-05"
24146 msgstr "2012-08-05"
24147
24148 #. type: Plain text
24149 #: build/C/man2/vfork.2:31
24150 msgid "vfork - create a child process and block parent"
24151 msgstr "vfork - 子プロセスを生成し親プロセスを停止させる"
24152
24153 #. type: Plain text
24154 #: build/C/man2/vfork.2:37
24155 msgid "B<pid_t vfork(void);>"
24156 msgstr "B<pid_t vfork(void);>"
24157
24158 #. type: Plain text
24159 #: build/C/man2/vfork.2:44
24160 msgid "B<vfork>():"
24161 msgstr "B<vfork>():"
24162
24163 #. type: SS
24164 #: build/C/man2/vfork.2:63
24165 #, no-wrap
24166 msgid "Standard description"
24167 msgstr "規格の説明"
24168
24169 #. type: Plain text
24170 #: build/C/man2/vfork.2:82
24171 msgid ""
24172 "(From POSIX.1)  The B<vfork>()  function has the same effect as B<fork>(2), "
24173 "except that the behavior is undefined if the process created by B<vfork>()  "
24174 "either modifies any data other than a variable of type I<pid_t> used to "
24175 "store the return value from B<vfork>(), or returns from the function in "
24176 "which B<vfork>()  was called, or calls any other function before "
24177 "successfully calling B<_exit>(2)  or one of the B<exec>(3)  family of "
24178 "functions."
24179 msgstr ""
24180 "(POSIX.1 より引用)  B<vfork>()  関数は B<fork>(2)  と同じ働きをするが、 "
24181 "B<vfork>()  で作成されたプロセスが B<vfork>()  からの返り値を格納している "
24182 "I<pid_t> 型の変数以外を変更したり、 B<vfork>()  を呼び出している関数から "
24183 "return したり、 B<_exit>(2)  や B<exec>(3)  族の関数をコールする前に他の関数"
24184 "をコールした場合の動作が 未定義であるという点が異なる。"
24185
24186 #. type: SS
24187 #: build/C/man2/vfork.2:82
24188 #, no-wrap
24189 msgid "Linux description"
24190 msgstr "LINUX での説明"
24191
24192 #. type: Plain text
24193 #: build/C/man2/vfork.2:89
24194 msgid ""
24195 "B<vfork>(), just like B<fork>(2), creates a child process of the calling "
24196 "process.  For details and return value and errors, see B<fork>(2)."
24197 msgstr ""
24198 "B<vfork>()  は B<fork>(2)  と全く同じように呼び出したプロセスの子プロセスを生"
24199 "成する。 詳しい説明と返り値、エラーについては B<fork>(2)  を参照すること。"
24200
24201 #. type: Plain text
24202 #: build/C/man2/vfork.2:98
24203 msgid ""
24204 "B<vfork>()  is a special case of B<clone>(2).  It is used to create new "
24205 "processes without copying the page tables of the parent process.  It may be "
24206 "useful in performance-sensitive applications where a child is created which "
24207 "then immediately issues an B<execve>(2)."
24208 msgstr ""
24209 "B<vfork>()  は B<clone>(2)  の特殊な場合である。 親プロセスのページテーブルの"
24210 "コピーを行わずに新しいプロセスを 作成するために使用する。これは性能に敏感なア"
24211 "プリケーションにおいて 子プロセスを生成してすぐに B<execve>(2)  する場合に有"
24212 "用かもしれない。"
24213
24214 #. type: Plain text
24215 #: build/C/man2/vfork.2:115
24216 msgid ""
24217 "B<vfork>()  differs from B<fork>(2)  in that the calling thread is suspended "
24218 "until the child terminates (either normally, by calling B<_exit>(2), or "
24219 "abnormally, after delivery of a fatal signal), or it makes a call to "
24220 "B<execve>(2).  Until that point, the child shares all memory with its "
24221 "parent, including the stack.  The child must not return from the current "
24222 "function or call B<exit>(3), but may call B<_exit>(2)."
24223 msgstr ""
24224 "B<vfork>() は B<fork>(2) と違い、子プロセスが終了するか、\n"
24225 "B<execve>(2) をコールするまで呼び出し元のスレッドを停止 (suspend) させる。\n"
24226 "子プロセスの終了は、B<_exit>(2) の呼び出しによる通常終了、致命的なシグナル"
24227 "の\n"
24228 "配送後の異常終了の二つのケースがある。\n"
24229 "この時点までは、子プロセスはスタックを含む全てのメモリを親プロセスと共有す"
24230 "る。\n"
24231 "子プロセスは現在の関数から return してはならず、\n"
24232 "B<exit>(3) もコールしてはならないが、B<_exit>(2) ならばコールしてもよい。"
24233
24234 #. type: Plain text
24235 #: build/C/man2/vfork.2:126
24236 msgid ""
24237 "As with B<fork>(2), the child process created by B<vfork>()  inherits copies "
24238 "of various of the caller's process attributes (e.g., file descriptors, "
24239 "signal dispositions, and current working directory); the B<vfork>()  call "
24240 "differs only in the treatment of the virtual address space, as described "
24241 "above."
24242 msgstr ""
24243 "B<fork>(2) と同様に、 B<vfork>() で作成された子プロセスは、\n"
24244 "(ファイルディスクリプタ、シグナル配送定義、カレントワーキングディレクトリなど"
24245 "の)\n"
24246 "呼び出し元のプロセスの各種の属性を継承する。\n"
24247 "B<vfork>() では、上で説明した仮想アドレス空間の扱いだけが異なる。"
24248
24249 #. type: Plain text
24250 #: build/C/man2/vfork.2:132
24251 msgid ""
24252 "Signals sent to the parent arrive after the child releases the parent's "
24253 "memory (i.e., after the child terminates or calls B<execve>(2))."
24254 msgstr ""
24255 "親プロセスへ送られたシグナルは、子プロセスが親プロセスのメモリを解放した後\n"
24256 "(すなわち、子プロセスが終了するか B<execve>(2) を呼んだ後) に到着する。"
24257
24258 #. type: SS
24259 #: build/C/man2/vfork.2:132
24260 #, no-wrap
24261 msgid "Historic description"
24262 msgstr "歴史的な説明"
24263
24264 #. type: Plain text
24265 #: build/C/man2/vfork.2:159
24266 msgid ""
24267 "Under Linux, B<fork>(2)  is implemented using copy-on-write pages, so the "
24268 "only penalty incurred by B<fork>(2)  is the time and memory required to "
24269 "duplicate the parent's page tables, and to create a unique task structure "
24270 "for the child.  However, in the bad old days a B<fork>(2)  would require "
24271 "making a complete copy of the caller's data space, often needlessly, since "
24272 "usually immediately afterward an B<exec>(3)  is done.  Thus, for greater "
24273 "efficiency, BSD introduced the B<vfork>()  system call, which did not fully "
24274 "copy the address space of the parent process, but borrowed the parent's "
24275 "memory and thread of control until a call to B<execve>(2)  or an exit "
24276 "occurred.  The parent process was suspended while the child was using its "
24277 "resources.  The use of B<vfork>()  was tricky: for example, not modifying "
24278 "data in the parent process depended on knowing which variables were held in "
24279 "a register."
24280 msgstr ""
24281 "Linux において B<fork>(2)  は書き込み時コピー (copy-on-write) ページを使用し"
24282 "て実装されている。 そのため B<fork>(2)  を使用することによって被る損害は親プ"
24283 "ロセスのページテーブルを 複製するために必要な時間とメモリだけである。 しかし"
24284 "ながら、忌しき昔には B<fork>(2)  は呼び出したプロセスのデータ空間の全てのコ"
24285 "ピーしていたが、 これはしばしば不必要であった。なぜなら、たいていはすぐ後に "
24286 "B<exec>(3)  を実行していたからである。 この場合の効率を上げるために BSD は "
24287 "B<vfork>()  システムコールを導入して親プロセスのアドレス空間を完全にコピー す"
24288 "るかわりに、 B<execve>(2)  をコールするか exit が起きるまで親プロセスのメモリ"
24289 "と制御スレッド を借りるようにした。 親プロセスは子プロセスがその資源を使用し"
24290 "ている間は停止された。 B<vfork>()  は使いにくいものであった: 例えば、親プロセ"
24291 "スの変数を変更しな いようにするためにはどの変数がレジスタに保持されているかを"
24292 "知らな ければならなかった。"
24293
24294 #. type: Plain text
24295 #: build/C/man2/vfork.2:163
24296 msgid ""
24297 "4.3BSD; POSIX.1-2001 (but marked OBSOLETE).  POSIX.1-2008 removes the "
24298 "specification of B<vfork>()."
24299 msgstr ""
24300 "4.3BSD; POSIX.1-2001 (廃止予定とされている)。\n"
24301 "POSIX.1-2008 では B<vfork>() の規定が削除されている。"
24302
24303 #.  In AIXv3.1 vfork is equivalent to fork.
24304 #. type: Plain text
24305 #: build/C/man2/vfork.2:174
24306 msgid ""
24307 "The requirements put on B<vfork>()  by the standards are weaker than those "
24308 "put on B<fork>(2), so an implementation where the two are synonymous is "
24309 "compliant.  In particular, the programmer cannot rely on the parent "
24310 "remaining blocked until the child either terminates or calls B<execve>(2), "
24311 "and cannot rely on any specific behavior with respect to shared memory."
24312 msgstr ""
24313 "B<vfork>() コールは他のオペレーティングシステムの同名のコールと ちょっと似\n"
24314 "ているかもしれない。規格が B<vfork>() に要求していることは、 B<fork>(2) に"
24315 "要\n"
24316 "求していることよりは弱い。したがって、 両者を同じものとして実装しても、規格"
24317 "に\n"
24318 "準拠していることになる。 特にプログラマーは、子プロセスが終了するか\n"
24319 "B<execve>(2) を呼び出すまで親プロセスが停止していることや、メモリを共有する"
24320 "こ\n"
24321 "とによる特殊な動作をあてにすべきではない。"
24322
24323 #. type: Plain text
24324 #: build/C/man2/vfork.2:193
24325 msgid ""
24326 "Some consider the semantics of B<vfork>()  to be an architectural blemish, "
24327 "and the 4.2BSD man page stated: \"This system call will be eliminated when "
24328 "proper system sharing mechanisms are implemented.  Users should not depend "
24329 "on the memory sharing semantics of B<vfork>()  as it will, in that case, be "
24330 "made synonymous to B<fork>(2).\" However, even though modern memory "
24331 "management hardware has decreased the performance difference between "
24332 "B<fork>(2)  and B<vfork>(), there are various reasons why Linux and other "
24333 "systems have retained B<vfork>():"
24334 msgstr ""
24335 "B<vfork>() の動作は構造的な欠陥と考える人もいるだろうし、\n"
24336 "BSD のマニュアルには、「このシステムコールは妥当なシステム共有機構が実装さ\n"
24337 "れた場合には削除される。ユーザは B<vfork>() のメモリ共有機能に依存するべき\n"
24338 "ではない。何故ならば、このシステムコール が削除された場合には、それは\n"
24339 "B<fork>(2) の同義語とされるからである。」と書かれている。しかしながら、\n"
24340 "最近のメモリ管理ハードウェアにより B<fork>(2) と B<vfork>() の間の性能差が\n"
24341 "減ったとはいえ、 Linux や他のシステムで B<vfork>() が残されているのには\n"
24342 "いくつか理由がある:"
24343
24344 #. type: Plain text
24345 #: build/C/man2/vfork.2:197
24346 msgid ""
24347 "Some performance-critical applications require the small performance "
24348 "advantage conferred by B<vfork>()."
24349 msgstr ""
24350 "性能に厳しいアプリケーションでは、 B<vfork>() により得られる\n"
24351 "小さな性能上のメリットが必要な場合がある。"
24352
24353 #.  http://stackoverflow.com/questions/4259629/what-is-the-difference-between-fork-and-vfork
24354 #.  http://developers.sun.com/solaris/articles/subprocess/subprocess.html
24355 #.  http://mailman.uclinux.org/pipermail/uclinux-dev/2009-April/000684.html
24356 #. type: Plain text
24357 #: build/C/man2/vfork.2:213
24358 msgid ""
24359 "B<vfork>()  can be implemented on systems that lack a memory-management unit "
24360 "(MMU), but B<fork>(2)  can't be implemented on such systems.  (POSIX.1-2008 "
24361 "removed B<vfork>()  from the standard; the POSIX rationale for the "
24362 "B<posix_spawn>(3)  function notes that that function, which provides "
24363 "functionality equivalent to B<fork>(2)+B<exec>(3), is designed to be "
24364 "implementable on systems that lack an MMU.)"
24365 msgstr ""
24366 "B<vfork>() はメモリ管理ユニット (MMU) を持たないシステムでも実装すること\n"
24367 "ができるが、そのようなシステムで B<fork>(2) を実装することはできない。\n"
24368 "(POSIX.1-2008 では B<vfork>() が標準から削除された。\n"
24369 "B<posix_spawn>(3) 関数の POSIX の原理 (rationale) には、\n"
24370 "B<fork>(2)+B<exec>(3) と等価な機能を提供する B<posix_spawn>(3) は、\n"
24371 "MMU を持たないシステムでも実装できるように設計されたとの注記がある。)"
24372
24373 #. type: SS
24374 #: build/C/man2/vfork.2:213
24375 #, no-wrap
24376 msgid "Linux notes"
24377 msgstr "Linux での注意"
24378
24379 #. type: Plain text
24380 #: build/C/man2/vfork.2:224
24381 msgid ""
24382 "Fork handlers established using B<pthread_atfork>(3)  are not called when a "
24383 "multithreaded program employing the NPTL threading library calls "
24384 "B<vfork>().  Fork handlers are called in this case in a program using the "
24385 "LinuxThreads threading library.  (See B<pthreads>(7)  for a description of "
24386 "Linux threading libraries.)"
24387 msgstr ""
24388 "B<pthread_atfork>(3)  を使って設定された fork ハンドラは NPTL スレッドライブ"
24389 "ラリコールを採用したマルチスレッドプログラムでは 呼び出されない。一方、"
24390 "LinuxThreads スレッドライブラリを使った プログラムでは、fork ハンドラは呼び出"
24391 "される。 (Linux のスレッドライブラリの説明は B<pthreads>(7)  を参照。)"
24392
24393 #. type: Plain text
24394 #: build/C/man2/vfork.2:232
24395 msgid ""
24396 "A call to B<vfork>()  is equivalent to calling B<clone>(2)  with I<flags> "
24397 "specified as:"
24398 msgstr ""
24399 "B<vfork>() の呼び出しは、以下の I<flags> を指定して B<clone>(2) を呼び出す\n"
24400 "のと等価である。"
24401
24402 #. type: Plain text
24403 #: build/C/man2/vfork.2:234
24404 #, no-wrap
24405 msgid "     CLONE_VM | CLONE_VFORK | SIGCHLD\n"
24406 msgstr "     CLONE_VM | CLONE_VFORK | SIGCHLD\n"
24407
24408 #.  In the release notes for 4.2BSD Sam Leffler wrote: `vfork: Is still
24409 #.  present, but definitely on its way out'.
24410 #. type: Plain text
24411 #: build/C/man2/vfork.2:252
24412 msgid ""
24413 "The B<vfork>()  system call appeared in 3.0BSD.  In 4.4BSD it was made "
24414 "synonymous to B<fork>(2)  but NetBSD introduced it again, cf.  E<.UR http://"
24415 "www.netbsd.org\\:/Documentation\\:/kernel\\:/vfork.html> E<.UE .> In Linux, "
24416 "it has been equivalent to B<fork>(2)  until 2.2.0-pre6 or so.  Since 2.2.0-"
24417 "pre9 (on i386, somewhat later on other architectures) it is an independent "
24418 "system call.  Support was added in glibc 2.0.112."
24419 msgstr ""
24420 "B<vfork>()  システムコールは 3.0BSD に現われた。 4.4BSD において B<fork>(2)  "
24421 "の同義語となったが、NetBSD では再び導入された。 E<.UR http://www.netbsd.org"
24422 "\\:/Documentation\\:/kernel\\:/vfork.html> E<.UE> を参照。 Linux では 2.2.0-"
24423 "pre6 あたりまでは B<fork>(2)  と等価であった。(i386 では) 2.2.0-pre9 から (他"
24424 "のアーキテクチャでは 少し遅れて) 独立したシステムコールとなった。 glibc での"
24425 "サポートは glibc-2.0.112 で追加された。"
24426
24427 #.  As far as I can tell, the following is not true in 2.6.19:
24428 #.  Currently (Linux 2.3.25),
24429 #.  .BR strace (1)
24430 #.  cannot follow
24431 #.  .BR vfork ()
24432 #.  and requires a kernel patch.
24433 #. type: Plain text
24434 #: build/C/man2/vfork.2:273
24435 msgid ""
24436 "Details of the signal handling are obscure and differ between systems.  The "
24437 "BSD man page states: \"To avoid a possible deadlock situation, processes "
24438 "that are children in the middle of a B<vfork>()  are never sent B<SIGTTOU> "
24439 "or B<SIGTTIN> signals; rather, output or I<ioctl>s are allowed and input "
24440 "attempts result in an end-of-file indication.\""
24441 msgstr ""
24442 "シグナルの扱いの詳細は不明瞭でシステムごとに異っている。 BSD のマニュアルに"
24443 "は、 「デッドロック状態になる可能性があるので B<vfork>()  の途中の子プロセス"
24444 "に B<SIGTTOU> や B<SIGTTIN> シグナルを送信してはならない; さらに出力や "
24445 "I<ioctl> は許されるが、入力を試みた場合には結果はファイル終端 (EOF) にな"
24446 "る。」 と書かれている。"
24447
24448 #. type: Plain text
24449 #: build/C/man2/vfork.2:279
24450 msgid "B<clone>(2), B<execve>(2), B<fork>(2), B<unshare>(2), B<wait>(2)"
24451 msgstr "B<clone>(2), B<execve>(2), B<fork>(2), B<unshare>(2), B<wait>(2)"
24452
24453 #. type: TH
24454 #: build/C/man2/vhangup.2:28
24455 #, no-wrap
24456 msgid "VHANGUP"
24457 msgstr "VHANGUP"
24458
24459 #. type: TH
24460 #: build/C/man2/vhangup.2:28
24461 #, no-wrap
24462 msgid "2007-07-26"
24463 msgstr "2007-07-26"
24464
24465 #. type: Plain text
24466 #: build/C/man2/vhangup.2:31
24467 msgid "vhangup - virtually hangup the current terminal"
24468 msgstr "vhangup - 現在の端末を仮想的に (virtualy) ハングアップ (hangup) させる"
24469
24470 #. type: Plain text
24471 #: build/C/man2/vhangup.2:35
24472 msgid "B<int vhangup(void);>"
24473 msgstr "B<int vhangup(void);>"
24474
24475 #. type: Plain text
24476 #: build/C/man2/vhangup.2:44
24477 msgid ""
24478 "B<vhangup>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
24479 msgstr ""
24480 "B<vhangup>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
24481
24482 #. type: Plain text
24483 #: build/C/man2/vhangup.2:50
24484 msgid ""
24485 "B<vhangup>()  simulates a hangup on the current terminal.  This call "
24486 "arranges for other users to have a ``clean'' terminal at login time."
24487 msgstr ""
24488 "B<vhangup>()  は現在の端末 (terminal) でハングアップをシミュレートする。この"
24489 "コールは他のユーザーがログインした時に綺麗 (clean) な端末を得ることができるよ"
24490 "う手配する。"
24491
24492 #. type: Plain text
24493 #: build/C/man2/vhangup.2:63
24494 msgid ""
24495 "The calling process has insufficient privilege to call B<vhangup>(); the "
24496 "B<CAP_SYS_TTY_CONFIG> capability is required."
24497 msgstr ""
24498 "呼び出し元プロセスに B<vhangup>()  を呼び出すための十分な特権がない。 "
24499 "B<CAP_SYS_TTY_CONFIG> ケーパビリティ (capability) が必要である。"
24500
24501 #. type: Plain text
24502 #: build/C/man2/vhangup.2:66
24503 msgid ""
24504 "This call is Linux-specific, and should not be used in programs intended to "
24505 "be portable."
24506 msgstr ""
24507 "このコールは Linux 特有であり、移植を意図したプログラムで 使用してはいけな"
24508 "い。"
24509
24510 #. type: Plain text
24511 #: build/C/man2/vhangup.2:69
24512 msgid "B<capabilities>(7), B<init>(1)"
24513 msgstr "B<capabilities>(7), B<init>(1)"
24514
24515 #. type: TH
24516 #: build/C/man2/execveat.2:26
24517 #, no-wrap
24518 msgid "EXECVEAT"
24519 msgstr "EXECVEAT"
24520
24521 #. type: Plain text
24522 #: build/C/man2/execveat.2:29
24523 msgid "execveat - execute program relative to a directory file descriptor"
24524 msgstr ""
24525 "execveat - ディレクトリファイルディスクリプターからの相対パスで指定されるプロ"
24526 "グラムを実行する"
24527
24528 #. type: Plain text
24529 #: build/C/man2/execveat.2:33
24530 msgid "B<int execveat(int >I<dirfd>B<, const char *>I<pathname>B<,>"
24531 msgstr "B<int execveat(int >I<dirfd>B<, const char *>I<pathname>B<,>"
24532
24533 #. type: Plain text
24534 #: build/C/man2/execveat.2:35
24535 msgid "B< char *const >I<argv>B<[], char *const >I<envp>B<[],>"
24536 msgstr "B< char *const >I<argv>B<[], char *const >I<envp>B<[],>"
24537
24538 #. type: Plain text
24539 #: build/C/man2/execveat.2:37
24540 msgid "B< int >I<flags>B<);>"
24541 msgstr "B< int >I<flags>B<);>"
24542
24543 #.  commit 51f39a1f0cea1cacf8c787f652f26dfee9611874
24544 #. type: Plain text
24545 #: build/C/man2/execveat.2:48
24546 msgid ""
24547 "The B<execveat>()  system call executes the program referred to by the "
24548 "combination of I<dirfd> and I<pathname>.  It operates in exactly the same "
24549 "way as B<execve>(2), except for the differences described in this manual "
24550 "page."
24551 msgstr ""
24552 "B<execveat>() システムコールは I<dirfd> と I<pathname> の組み合わせで参照され"
24553 "るプログラムを実行する。 B<execve>(2) と全く同様に動作するが、 以下で説明する"
24554 "点が異なる。"
24555
24556 #. type: Plain text
24557 #: build/C/man2/execveat.2:58
24558 msgid ""
24559 "If the pathname given in I<pathname> is relative, then it is interpreted "
24560 "relative to the directory referred to by the file descriptor I<dirfd> "
24561 "(rather than relative to the current working directory of the calling "
24562 "process, as is done by B<execve>(2)  for a relative pathname)."
24563 msgstr ""
24564 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
24565 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
24566 "(B<execve>(2) に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
24567 "ワーキングディレクトリに対する相対パスではない)。"
24568
24569 #. type: Plain text
24570 #: build/C/man2/execveat.2:70
24571 msgid ""
24572 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
24573 "then I<pathname> is interpreted relative to the current working directory of "
24574 "the calling process (like B<execve>(2))."
24575 msgstr ""
24576 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
24577 "の場合、 (B<execve>(2) と同様に) I<pathname> は呼び出したプロセスのカレント"
24578 "ワーキングディレクトリに対する相対パスと解釈される。"
24579
24580 #. type: Plain text
24581 #: build/C/man2/execveat.2:86
24582 msgid ""
24583 "If I<pathname> is an empty string and the B<AT_EMPTY_PATH> flag is "
24584 "specified, then the file descriptor I<dirfd> specifies the file to be "
24585 "executed (i.e., I<dirfd> refers to an executable file, rather than a "
24586 "directory)."
24587 msgstr ""
24588 "I<pathname> が空文字列で、 B<AT_EMPTY_PATH> フラグが指定されている場合、 ファ"
24589 "イルディスクリプター I<dirfd> は実行するファイルを指定する (すなわち "
24590 "I<dirfd> はディレクトリではなく実行ファイルを参照する)。"
24591
24592 #. type: Plain text
24593 #: build/C/man2/execveat.2:90
24594 msgid ""
24595 "The I<flags> argument is a bit mask that can include zero or more of the "
24596 "following flags:"
24597 msgstr ""
24598 "I<flags> 引き数は、以下に示す値の 0 個以上を指定できるビットマスクである。"
24599
24600 #. type: TP
24601 #: build/C/man2/execveat.2:90
24602 #, no-wrap
24603 msgid "B<AT_EMPTY_PATH>"
24604 msgstr "B<AT_EMPTY_PATH>"
24605
24606 #. type: Plain text
24607 #: build/C/man2/execveat.2:100
24608 msgid ""
24609 "If I<pathname> is an empty string, operate on the file referred to by "
24610 "I<dirfd> (which may have been obtained using the B<open>(2)  B<O_PATH> flag)."
24611 msgstr ""
24612 "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して動作を行う "
24613 "(I<dirfd> は B<open>(2() B<O_PATH> フラグを使って取得できる)。"
24614
24615 #. type: Plain text
24616 #: build/C/man2/execveat.2:108
24617 msgid ""
24618 "If the file identified by I<dirfd> and a non-NULL I<pathname> is a symbolic "
24619 "link, then the call fails with the error B<ELOOP>."
24620 msgstr ""
24621 "I<dirfd> と NULL でない I<pathname> で指定されたファイルがシンボリックリンク"
24622 "の場合、 呼び出しはエラー B<ELOOP> で失敗する。"
24623
24624 #. type: Plain text
24625 #: build/C/man2/execveat.2:115
24626 msgid ""
24627 "On success, B<execveat>()  does not return.  On error, -1 is returned, and "
24628 "I<errno> is set appropriately."
24629 msgstr ""
24630 "成功すると B<execveat>()  は返らない。エラーの場合は -1 を返し、 I<errno> を"
24631 "適切に設定する。"
24632
24633 #. type: Plain text
24634 #: build/C/man2/execveat.2:122
24635 msgid ""
24636 "The same errors that occur for B<execve>(2)  can also occur for "
24637 "B<execveat>().  The following additional errors can occur for B<execveat>():"
24638 msgstr ""
24639 "B<execve>() で発生するのと同じエラーが B<execveat>() でも起こる。 "
24640 "B<execveat>() では以下のエラーも発生する。"
24641
24642 #. type: Plain text
24643 #: build/C/man2/execveat.2:140
24644 msgid ""
24645 "I<flags> includes B<AT_SYMLINK_NOFOLLOW> and the file identified by I<dirfd> "
24646 "and a non-NULL I<pathname> is a symbolic link."
24647 msgstr ""
24648 "I<flags> に B<AT_SYMLINK_NOFOLLOW> が指定されていて、 I<dirfd> と NULL でな"
24649 "い I<pathname> で指定されたファイルがシンボリックリンクである。"
24650
24651 #. type: Plain text
24652 #: build/C/man2/execveat.2:154
24653 msgid ""
24654 "The program identified by I<dirfd> and I<pathname> requires the use of an "
24655 "interpreter program (such as a script starting with \"#!\"), but the file "
24656 "descriptor I<dirfd> was opened with the B<O_CLOEXEC> flag, with the result "
24657 "that the program file is inaccessible to the launched interpreter.  See BUGS."
24658 msgstr ""
24659 "I<dirfd> と I<pathname> で指定されるプログラムはインタープリタープログラムを"
24660 "使用する必要があるが (例えば \"#!\" で始まるスクリプト)、 ファイルディスクリ"
24661 "プター I<dirfd> が B<O_CLOEXEC> フラグ付きでオープンされており、 その結果プロ"
24662 "グラムファイルは起動されたインタープリターにアクセスできないことになる。 「バ"
24663 "グ」を参照。"
24664
24665 #.  FIXME . check for glibc support in a future release
24666 #. type: Plain text
24667 #: build/C/man2/execveat.2:165
24668 msgid ""
24669 "B<execveat>()  was added to Linux in kernel 3.19.  GNU C library support is "
24670 "pending."
24671 msgstr ""
24672 "B<execveat>()  はバージョン 3.19 で Linux に追加された。 GNU C ライブラリによ"
24673 "るサポートは検討中である。"
24674
24675 #. type: Plain text
24676 #: build/C/man2/execveat.2:169
24677 msgid "The B<execveat>()  system call is Linux-specific."
24678 msgstr "B<execveat>() システムコールは Linux 固有である。"
24679
24680 #. type: Plain text
24681 #: build/C/man2/execveat.2:179
24682 msgid ""
24683 "In addition to the reasons explained in B<openat>(2), the B<execveat>()  "
24684 "system call is also needed to allow B<fexecve>(3)  to be implemented on "
24685 "systems that do not have the I</proc> filesystem mounted."
24686 msgstr ""
24687 "B<openat>(2) で説明されている理由に加え、 B<execveat>() システムコールは、 "
24688 "B<fexecve>(3) を I</proc> ファイルシステムがマウントされていないシステムで実"
24689 "装するためにも必要である。"
24690
24691 #. type: Plain text
24692 #: build/C/man2/execveat.2:202
24693 msgid ""
24694 "When asked to execute a script file, the I<argv[0]> that is passed to the "
24695 "script interpreter is a string of the form I</dev/fd/N> or I</dev/fd/N/P>, "
24696 "where I<N> is the number of the file descriptor passed via the I<dirfd> "
24697 "argument.  A string of the first form occurs when B<AT_EMPTY_PATH> is "
24698 "employed.  A string of the second form occurs when the script is specified "
24699 "via both I<dirfd> and I<pathname>; in this case, I<P> is the value given in "
24700 "I<pathname>."
24701 msgstr ""
24702 "スクリプトファイルを実行するように要求された際、 スクリプトインタープリターに"
24703 "渡される I<argv[0]> は、 I</dev/fd/N> 形式または I</dev/fd/N/P> 形式の文字列"
24704 "である。 ここで I<N> は I<dirfd> 引き数で渡されたファイルディスクリプター数で"
24705 "ある。 最初の形式の文字列となるのは、 B<AT_EMPTY_PATH> が使用された場合であ"
24706 "る。 2 番目の形式の文字列になるのは、 スクリプトが I<dirfd> と I<pathname> の"
24707 "両方を使って指定された場合である。 このとき I<P> は I<pathname> に指定された"
24708 "値である。"
24709
24710 #. type: Plain text
24711 #: build/C/man2/execveat.2:210
24712 msgid ""
24713 "For the same reasons described in B<fexecve>(3), the natural idiom when "
24714 "using B<execveat>(2)  is to set the close-on-exec flag on I<dirfd>.  (But "
24715 "see BUGS.)"
24716 msgstr ""
24717 "B<fexecve>(3) で説明されているのと同じ理由で、 B<execveat>(2) を使う際の理に"
24718 "かなった方法は I<dirfd> に close-on-exec フラグをセットすることである (ただし"
24719 "「バグ」を参照のこと)。"
24720
24721 #. type: Plain text
24722 #: build/C/man2/execveat.2:215
24723 msgid ""
24724 "The B<ENOENT> error described above means that it is not possible to set the "
24725 "close-on-exec flag on the file descriptor given to a call of the form:"
24726 msgstr ""
24727 "上記で説明したエラー B<ENOENT> は、 以下の形式の呼び出しに渡すファイルディス"
24728 "クリプターで close-on-exec フラグをセットできないことを意味している。"
24729
24730 #. type: Plain text
24731 #: build/C/man2/execveat.2:217
24732 #, no-wrap
24733 msgid "    execveat(fd, \"\", argv, envp, AT_EMPTY_PATH);\n"
24734 msgstr "    execveat(fd, \"\", argv, envp, AT_EMPTY_PATH);\n"
24735
24736 #
24737 #.  For an example, see Michael Kerrisk's 2015-01-10 reply in this LKML
24738 #.  thread (http://thread.gmane.org/gmane.linux.kernel/1836105/focus=20229):
24739 #.      Subject: [PATCHv10 man-pages 5/5] execveat.2: initial man page.\"                        for execveat(2
24740 #.      Date: Mon, 24 Nov 2014 11:53:59 +0000
24741 #. type: Plain text
24742 #: build/C/man2/execveat.2:229
24743 msgid ""
24744 "However, the inability to set the close-on-exec flag means that a file "
24745 "descriptor referring to the script leaks through to the script itself.  As "
24746 "well as wasting a file descriptor, this leakage can lead to file-descriptor "
24747 "exhaustion in scenarios where scripts recursively employ B<execveat>()."
24748 msgstr ""
24749 "しかしながら、 close-on-exec フラグをセットできないということは、 スクリプト"
24750 "を参照するファイルディスクリプターはスクリプト自身に見えてしまうということで"
24751 "ある。 ファイルディスクリプターを無駄に使うだけでなく、 ファイルディスクリプ"
24752 "ターが見えてしまうことにより、 スクリプトが B<execveat>() を再帰的に利用する"
24753 "状況ではファイルディスクリプターの枯渇につながる可能性がある。"
24754
24755 #. type: Plain text
24756 #: build/C/man2/execveat.2:233
24757 msgid "B<execve>(2), B<openat>(2), B<fexecve>(3)"
24758 msgstr "B<execve>(2), B<openat>(2), B<fexecve>(3)"