OSDN Git Service

LDP: Update POT and ja.po to LDP v3.79
[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-02-04 23:31+0900\n"
10 "PO-Revision-Date: 2015-01-25 07:32+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:519 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:527 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 #, fuzzy
644 #| msgid ""
645 #| "This page is part of release 3.78 of the Linux I<man-pages> project.  A "
646 #| "description of the project, information about reporting bugs, and the "
647 #| "latest version of this page, can be found at \\%http://www.kernel.org/doc/"
648 #| "man-pages/."
649 msgid ""
650 "This page is part of release 3.79 of the Linux I<man-pages> project.  A "
651 "description of the project, information about reporting bugs, and the latest "
652 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
653 "pages/."
654 msgstr ""
655 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
656 "である。プロジェクトの説明とバグ報告に関する情報は\n"
657 "http://www.kernel.org/doc/man-pages/ に書かれている。"
658
659 #. type: TH
660 #: build/C/man2/access.2:43
661 #, no-wrap
662 msgid "ACCESS"
663 msgstr "ACCESS"
664
665 #. type: TH
666 #: build/C/man2/access.2:43 build/C/man2/brk.2:29 build/C/man2/chmod.2:32
667 #: build/C/man2/chown.2:38 build/C/man3/des_crypt.3:14
668 #: build/C/man7/environ.7:34 build/C/man2/fsync.2:38 build/C/man3/getcwd.3:32
669 #: build/C/man3/getdtablesize.3:27 build/C/man2/gethostname.2:32
670 #: build/C/man2/getpagesize.2:25 build/C/man2/ioperm.2:34
671 #: build/C/man2/mkdir.2:11 build/C/man2/sysinfo.2:14
672 #, no-wrap
673 msgid "2014-08-19"
674 msgstr "2014-08-19"
675
676 #. type: Plain text
677 #: build/C/man2/access.2:46
678 msgid "access, faccessat - check user's permissions for a file"
679 msgstr "access, faccessat - ユーザーのファイルへのアクセス権をチェックする"
680
681 #. type: Plain text
682 #: build/C/man2/access.2:49 build/C/man2/alarm.2:36 build/C/man2/chown.2:44
683 #: build/C/man2/close.2:41 build/C/man3/confstr.3:38 build/C/man3/crypt.3:44
684 #: build/C/man2/dup.2:43 build/C/man3/fexecve.3:31 build/C/man3/fpathconf.3:47
685 #: build/C/man3/getcwd.3:38 build/C/man3/getopt.3:48
686 #: build/C/man3/getusershell.3:36 build/C/man3/sleep.3:32
687 #: build/C/man3/sysconf.3:33 build/C/man2/sysctl.2:36 build/C/man3/ualarm.3:30
688 #: build/C/man3/usleep.3:39
689 #, no-wrap
690 msgid "B<#include E<lt>unistd.hE<gt>>\n"
691 msgstr "B<#include E<lt>unistd.hE<gt>>\n"
692
693 #. type: Plain text
694 #: build/C/man2/access.2:51
695 #, no-wrap
696 msgid "B<int access(const char *>I<pathname>B<, int >I<mode>B<);>\n"
697 msgstr "B<int access(const char *>I<pathname>B<, int >I<mode>B<);>\n"
698
699 #. type: Plain text
700 #: build/C/man2/access.2:54 build/C/man2/chown.2:53
701 #, no-wrap
702 msgid ""
703 "B<#include E<lt>fcntl.hE<gt>           >/* Definition of AT_* constants */\n"
704 "B<#include E<lt>unistd.hE<gt>>\n"
705 msgstr ""
706 "B<#include E<lt>fcntl.hE<gt>           >/* AT_* 定数の定義 */\n"
707 "B<#include E<lt>unistd.hE<gt>>\n"
708
709 #. type: Plain text
710 #: build/C/man2/access.2:57
711 #, no-wrap
712 msgid "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, int >I<flags>B<);>\n"
713 msgstr "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, int >I<flags>B<);>\n"
714
715 #. type: Plain text
716 #: build/C/man2/access.2:62 build/C/man2/brk.2:42 build/C/man2/chdir.2:46
717 #: build/C/man2/chmod.2:53 build/C/man2/chown.2:62 build/C/man2/chroot.2:44
718 #: build/C/man3/confstr.3:45 build/C/man3/daemon.3:47 build/C/man3/exec.3:68
719 #: build/C/man3/fexecve.3:38 build/C/man2/fsync.2:51 build/C/man3/getcwd.3:49
720 #: build/C/man2/getdomainname.2:42 build/C/man3/getdtablesize.3:38
721 #: build/C/man3/gethostid.3:42 build/C/man2/gethostname.2:45
722 #: build/C/man3/getlogin.3:45 build/C/man3/getopt.3:69
723 #: build/C/man2/getpagesize.2:36 build/C/man3/getusershell.3:47
724 #: build/C/man3/lockf.3:39 build/C/man2/mincore.2:47 build/C/man2/mkdir.2:31
725 #: build/C/man2/nice.2:42 build/C/man2/pread.2:40 build/C/man2/truncate.2:58
726 #: build/C/man3/ualarm.3:37 build/C/man3/usleep.3:46 build/C/man2/vfork.2:41
727 #: build/C/man2/vhangup.2:39
728 msgid ""
729 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
730 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
731
732 #. type: Plain text
733 #: build/C/man2/access.2:65
734 msgid "B<faccessat>():"
735 msgstr "B<faccessat>():"
736
737 #. type: TP
738 #: build/C/man2/access.2:68 build/C/man2/chmod.2:71 build/C/man2/chown.2:79
739 #: build/C/man3/fexecve.3:44 build/C/man2/mkdir.2:37
740 #, no-wrap
741 msgid "Since glibc 2.10:"
742 msgstr "glibc 2.10 以降:"
743
744 #. type: Plain text
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 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
748 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
749
750 #. type: TP
751 #: build/C/man2/access.2:71 build/C/man2/chmod.2:74 build/C/man2/chown.2:82
752 #: build/C/man3/fexecve.3:47 build/C/man2/mkdir.2:40
753 #, no-wrap
754 msgid "Before glibc 2.10:"
755 msgstr "glibc 2.10 より前:"
756
757 #. type: Plain text
758 #: build/C/man2/access.2:74 build/C/man2/chmod.2:77 build/C/man2/chown.2:85
759 #: build/C/man2/mkdir.2:43
760 msgid "_ATFILE_SOURCE"
761 msgstr "_ATFILE_SOURCE"
762
763 #. type: Plain text
764 #: build/C/man2/access.2:85
765 msgid ""
766 "B<access>()  checks whether the calling process can access the file "
767 "I<pathname>.  If I<pathname> is a symbolic link, it is dereferenced."
768 msgstr ""
769 "B<access>()  は、呼び出し元プロセスがファイル I<pathname> にアクセスできるか"
770 "どうかをチェックする。 I<pathname> がシンボリックリンクの場合、シンボリックリ"
771 "ンクは展開される。"
772
773 #.  F_OK is defined as 0 on every system that I know of.
774 #. type: Plain text
775 #: build/C/man2/access.2:99
776 msgid ""
777 "The I<mode> specifies the accessibility check(s) to be performed, and is "
778 "either the value B<F_OK>, or a mask consisting of the bitwise OR of one or "
779 "more of B<R_OK>, B<W_OK>, and B<X_OK>.  B<F_OK> tests for the existence of "
780 "the file.  B<R_OK>, B<W_OK>, and B<X_OK> test whether the file exists and "
781 "grants read, write, and execute permissions, respectively."
782 msgstr ""
783 "I<mode> はチェックを行うアクセス権を指定するもので、その値は B<F_OK>、 もしく"
784 "は B<R_OK>, B<W_OK>, B<X_OK> の 1個以上のビット単位の論理和から構成されるマス"
785 "クである。 B<F_OK> はファイルが存在するかどうかのみを検査する。 B<R_OK>, "
786 "B<W_OK>, B<X_OK> は、ファイルが存在して、それぞれ読み込み、書き込み、実行の許"
787 "可があるか を検査する。"
788
789 #. type: Plain text
790 #: build/C/man2/access.2:108
791 msgid ""
792 "The check is done using the calling process's I<real> UID and GID, rather "
793 "than the effective IDs as is done when actually attempting an operation (e."
794 "g., B<open>(2))  on the file.  This allows set-user-ID programs to easily "
795 "determine the invoking user's authority."
796 msgstr ""
797 "チェックは、実際に操作が行われる際に使用される実効 (effective) ID でなく、 呼"
798 "び出し元プロセスの I<実 (real)> UID と I<実 (real)> GID を使って行われる。 こ"
799 "れにより、set-user-ID プログラムで、プログラムを起動するユーザーの権限を 簡単"
800 "に決定することができる。"
801
802 #. type: Plain text
803 #: build/C/man2/access.2:114
804 msgid ""
805 "If the calling process is privileged (i.e., its real UID is zero), then an "
806 "B<X_OK> check is successful for a regular file if execute permission is "
807 "enabled for any of the file owner, group, or other."
808 msgstr ""
809 "呼び出し元プロセスが特権プロセス (つまり、プロセスの実 UID が 0) の場合、 通"
810 "常のファイルに対する B<X_OK> のチェックは、そのファイルの所有者、グループ、他"
811 "人のいずれかの 実行許可が有効になっていれば成功する。"
812
813 #. type: SS
814 #: build/C/man2/access.2:114
815 #, no-wrap
816 msgid "faccessat()"
817 msgstr "faccessat()"
818
819 #. type: Plain text
820 #: build/C/man2/access.2:120
821 msgid ""
822 "The B<faccessat>()  system call operates in exactly the same way as "
823 "B<access>(), except for the differences described here."
824 msgstr ""
825 "B<faccessat>() システムコールは B<access>() と全く同様に動作するが、以下で説"
826 "明する点が異なる。"
827
828 #. type: Plain text
829 #: build/C/man2/access.2:130
830 msgid ""
831 "If the pathname given in I<pathname> is relative, then it is interpreted "
832 "relative to the directory referred to by the file descriptor I<dirfd> "
833 "(rather than relative to the current working directory of the calling "
834 "process, as is done by B<access>()  for a relative pathname)."
835 msgstr ""
836 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
837 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
838 "(B<access>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
839 "ワーキングディレクトリに対する相対パスではない)。"
840
841 #. type: Plain text
842 #: build/C/man2/access.2:142
843 msgid ""
844 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
845 "then I<pathname> is interpreted relative to the current working directory of "
846 "the calling process (like B<access>())."
847 msgstr ""
848 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
849 "の場合、 (B<access>() と同様に) I<pathname> は呼び出したプロセスのカレント"
850 "ワーキングディレクトリに対する相対パスと解釈される。"
851
852 #. type: Plain text
853 #: build/C/man2/access.2:148 build/C/man2/chmod.2:216 build/C/man2/chown.2:179
854 #: build/C/man2/mkdir.2:110 build/C/man2/execveat.2:76
855 msgid "If I<pathname> is absolute, then I<dirfd> is ignored."
856 msgstr ""
857 "I<pathname> で指定されたパス名が絶対パスの場合、 I<dirfd> は無視される。"
858
859 #. type: Plain text
860 #: build/C/man2/access.2:151
861 msgid ""
862 "I<flags> is constructed by ORing together zero or more of the following "
863 "values:"
864 msgstr "I<flags> は以下に示す値の 0 個以上の OR (論理和) をとって作成される。"
865
866 #. type: TP
867 #: build/C/man2/access.2:151
868 #, no-wrap
869 msgid "B<AT_EACCESS>"
870 msgstr "B<AT_EACCESS>"
871
872 #. type: Plain text
873 #: build/C/man2/access.2:158
874 msgid ""
875 "Perform access checks using the effective user and group IDs.  By default, "
876 "B<faccessat>()  uses the real IDs (like B<access>())."
877 msgstr ""
878 "アクセスチェックを実行ユーザー/グループ ID を使って行う。デフォルトでは、"
879 "B<faccessat>() は (B<access>() と同様に) 実 ID を使用する。"
880
881 #. type: TP
882 #: build/C/man2/access.2:158 build/C/man2/chmod.2:219 build/C/man2/chown.2:208
883 #: build/C/man2/execveat.2:100
884 #, no-wrap
885 msgid "B<AT_SYMLINK_NOFOLLOW>"
886 msgstr "B<AT_SYMLINK_NOFOLLOW>"
887
888 #. type: Plain text
889 #: build/C/man2/access.2:164
890 msgid ""
891 "If I<pathname> is a symbolic link, do not dereference it: instead return "
892 "information about the link itself."
893 msgstr ""
894 "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リ"
895 "ンク自身の情報を返す。"
896
897 #. type: Plain text
898 #: build/C/man2/access.2:169
899 msgid "See B<openat>(2)  for an explanation of the need for B<faccessat>()."
900 msgstr "B<faccessat>() の必要性についての説明については B<openat>(2) を参照。"
901
902 #. type: SH
903 #: build/C/man2/access.2:169 build/C/man2/alarm.2:54 build/C/man2/brk.2:93
904 #: build/C/man2/chdir.2:70 build/C/man2/chmod.2:231 build/C/man2/chown.2:224
905 #: build/C/man2/chroot.2:90 build/C/man2/close.2:64 build/C/man3/confstr.3:95
906 #: build/C/man3/crypt.3:120 build/C/man3/daemon.3:73
907 #: build/C/man3/des_crypt.3:106 build/C/man2/dup.2:148
908 #: build/C/man3/encrypt.3:113 build/C/man3/euidaccess.3:58
909 #: build/C/man3/exec.3:183 build/C/man2/execve.2:355
910 #: build/C/man2/exit_group.2:39 build/C/man2/fcntl.2:1444
911 #: build/C/man3/fexecve.3:67 build/C/man2/flock.2:112 build/C/man2/fork.2:178
912 #: build/C/man3/fpathconf.3:160 build/C/man2/fsync.2:108
913 #: build/C/man3/get_nprocs_conf.3:46 build/C/man2/get_thread_area.2:29
914 #: build/C/man3/getcwd.3:156 build/C/man2/getdomainname.2:75
915 #: build/C/man3/getdtablesize.3:61 build/C/man3/gethostid.3:71
916 #: build/C/man2/gethostname.2:89 build/C/man3/getlogin.3:95
917 #: build/C/man3/getopt.3:274 build/C/man2/gettid.2:50
918 #: build/C/man3/getusershell.3:85 build/C/man2/idle.2:52
919 #: build/C/man2/ioctl.2:85 build/C/man2/ioctl_list.2:107
920 #: build/C/man2/ioperm.2:79 build/C/man3/lockf.3:116 build/C/man2/mincore.2:94
921 #: build/C/man2/mkdir.2:115 build/C/man2/nice.2:56 build/C/man2/pread.2:79
922 #: build/C/man2/set_thread_area.2:44 build/C/man2/setup.2:53
923 #: build/C/man3/sleep.3:40 build/C/man3/swab.3:68 build/C/man2/swapon.2:111
924 #: build/C/man2/syscall.2:74 build/C/man3/sysconf.3:314
925 #: build/C/man2/sysctl.2:74 build/C/man2/sysinfo.2:74
926 #: build/C/man3/tcgetpgrp.3:64 build/C/man2/truncate.2:110
927 #: build/C/man3/ualarm.3:81 build/C/man2/umask.2:92 build/C/man2/uname.2:63
928 #: build/C/man2/uselib.2:48 build/C/man3/usleep.3:75 build/C/man2/vhangup.2:50
929 #: build/C/man2/execveat.2:108
930 #, no-wrap
931 msgid "RETURN VALUE"
932 msgstr "返り値"
933
934 #. type: Plain text
935 #: build/C/man2/access.2:185
936 msgid ""
937 "On success (all requested permissions granted, or I<mode> is B<F_OK> and the "
938 "file exists), zero is returned.  On error (at least one bit in I<mode> asked "
939 "for a permission that is denied, or I<mode> is B<F_OK> and the file does not "
940 "exist, or some other error occurred), -1 is returned, and I<errno> is set "
941 "appropriately."
942 msgstr ""
943 "成功した場合 (要求した全てについて許可が得られたか、 I<mode> が B<F_OK> で"
944 "ファイルが存在した場合)、ゼロが返される。 エラーの場合 (I<mode> の少なくとも"
945 "一つのビットで要求した許可がなかった場合、 I<mode> が B<F_OK> でファイルが存"
946 "在しなかった場合、他のエラーが起こった場合)、-1 が返され、 I<errno> が適切に"
947 "設定される。"
948
949 #. type: SH
950 #: build/C/man2/access.2:185 build/C/man2/chdir.2:75 build/C/man2/chmod.2:236
951 #: build/C/man2/chown.2:229 build/C/man2/chroot.2:95 build/C/man2/close.2:70
952 #: build/C/man3/confstr.3:122 build/C/man3/crypt.3:123 build/C/man2/dup.2:154
953 #: build/C/man3/encrypt.3:115 build/C/man3/euidaccess.3:66
954 #: build/C/man3/exec.3:190 build/C/man2/execve.2:361 build/C/man2/fcntl.2:1482
955 #: build/C/man3/fexecve.3:74 build/C/man2/flock.2:117 build/C/man2/fork.2:185
956 #: build/C/man2/fsync.2:113 build/C/man2/get_thread_area.2:35
957 #: build/C/man3/getcwd.3:172 build/C/man2/getdomainname.2:80
958 #: build/C/man3/getdtablesize.3:63 build/C/man3/gethostid.3:81
959 #: build/C/man2/gethostname.2:94 build/C/man3/getlogin.3:103
960 #: build/C/man2/gettid.2:52 build/C/man2/idle.2:55 build/C/man2/ioctl.2:94
961 #: build/C/man2/ioperm.2:84 build/C/man3/lockf.3:121
962 #: build/C/man2/mincore.2:101 build/C/man2/mkdir.2:122 build/C/man2/nice.2:61
963 #: build/C/man2/pread.2:89 build/C/man2/set_thread_area.2:49
964 #: build/C/man2/setup.2:56 build/C/man2/swapon.2:116 build/C/man2/sysctl.2:81
965 #: build/C/man2/sysinfo.2:79 build/C/man3/tcgetpgrp.3:86
966 #: build/C/man2/truncate.2:115 build/C/man3/ualarm.3:84
967 #: build/C/man2/uname.2:68 build/C/man2/uselib.2:53 build/C/man3/usleep.3:82
968 #: build/C/man2/vhangup.2:55 build/C/man2/execveat.2:115
969 #, no-wrap
970 msgid "ERRORS"
971 msgstr "エラー"
972
973 #. type: Plain text
974 #: build/C/man2/access.2:190
975 msgid "B<access>()  and B<faccessat>()  shall fail if:"
976 msgstr "B<access>() と B<faccessat>() は以下の場合に失敗する。"
977
978 #. type: TP
979 #: build/C/man2/access.2:190 build/C/man2/chdir.2:81 build/C/man2/chdir.2:117
980 #: build/C/man2/chmod.2:243 build/C/man2/chown.2:236 build/C/man2/chroot.2:98
981 #: build/C/man2/execve.2:369 build/C/man2/execve.2:376
982 #: build/C/man2/execve.2:379 build/C/man2/execve.2:382
983 #: build/C/man3/getcwd.3:173 build/C/man3/gethostid.3:84
984 #: build/C/man2/mkdir.2:123 build/C/man2/truncate.2:118
985 #: build/C/man2/uselib.2:59
986 #, no-wrap
987 msgid "B<EACCES>"
988 msgstr "B<EACCES>"
989
990 #. type: Plain text
991 #: build/C/man2/access.2:197
992 msgid ""
993 "The requested access would be denied to the file, or search permission is "
994 "denied for one of the directories in the path prefix of I<pathname>.  (See "
995 "also B<path_resolution>(7).)"
996 msgstr ""
997 "要求されたアクセスは そのファイル自身に拒否されたか I<pathname> へ至るまで"
998 "ディレクトリのいずれかに対する検索許可 (search permission) が得られなかっ"
999 "た。 (B<path_resolution>(7)  も参照のこと)"
1000
1001 #. type: TP
1002 #: build/C/man2/access.2:197 build/C/man2/chdir.2:94 build/C/man2/chmod.2:255
1003 #: build/C/man2/chown.2:245 build/C/man2/chroot.2:112
1004 #: build/C/man2/execve.2:417 build/C/man2/mkdir.2:145
1005 #: build/C/man2/truncate.2:152 build/C/man2/execveat.2:130
1006 #, no-wrap
1007 msgid "B<ELOOP>"
1008 msgstr "B<ELOOP>"
1009
1010 #. type: Plain text
1011 #: build/C/man2/access.2:201 build/C/man2/chmod.2:259 build/C/man2/chown.2:249
1012 #: build/C/man2/mkdir.2:149
1013 msgid "Too many symbolic links were encountered in resolving I<pathname>."
1014 msgstr "I<pathname> を解決するときに、解決すべきシンボリックリンクが多すぎた。"
1015
1016 #. type: TP
1017 #: build/C/man2/access.2:201 build/C/man2/chdir.2:98 build/C/man2/chmod.2:259
1018 #: build/C/man2/chown.2:249 build/C/man2/chroot.2:116
1019 #: build/C/man2/execve.2:425 build/C/man2/gethostname.2:109
1020 #: build/C/man2/mkdir.2:153 build/C/man2/truncate.2:155
1021 #, no-wrap
1022 msgid "B<ENAMETOOLONG>"
1023 msgstr "B<ENAMETOOLONG>"
1024
1025 #. type: Plain text
1026 #: build/C/man2/access.2:205 build/C/man2/chmod.2:263 build/C/man2/chown.2:253
1027 msgid "I<pathname> is too long."
1028 msgstr "I<pathname> が長過ぎる。"
1029
1030 #. type: TP
1031 #: build/C/man2/access.2:205 build/C/man2/chdir.2:102 build/C/man2/chmod.2:263
1032 #: build/C/man2/chown.2:253 build/C/man2/chown.2:279 build/C/man2/chroot.2:120
1033 #: build/C/man2/execve.2:432 build/C/man3/getcwd.3:198
1034 #: build/C/man3/getlogin.3:122 build/C/man2/mkdir.2:156
1035 #: build/C/man2/swapon.2:147 build/C/man2/truncate.2:159
1036 #: build/C/man2/execveat.2:140
1037 #, no-wrap
1038 msgid "B<ENOENT>"
1039 msgstr "B<ENOENT>"
1040
1041 #. type: Plain text
1042 #: build/C/man2/access.2:210
1043 msgid ""
1044 "A component of I<pathname> does not exist or is a dangling symbolic link."
1045 msgstr ""
1046 "I<pathname> を構成するパスのいずれかが、存在しないか、 参照先のない "
1047 "(dangling) シンボリックリンクになっている。"
1048
1049 #. type: TP
1050 #: build/C/man2/access.2:210 build/C/man2/access.2:252
1051 #: build/C/man2/chdir.2:108 build/C/man2/chmod.2:269 build/C/man2/chmod.2:314
1052 #: build/C/man2/chown.2:259 build/C/man2/chown.2:303 build/C/man2/chroot.2:126
1053 #: build/C/man2/execve.2:446 build/C/man2/fcntl.2:1617
1054 #: build/C/man2/mkdir.2:173 build/C/man2/mkdir.2:194 build/C/man2/sysctl.2:88
1055 #: build/C/man2/truncate.2:162 build/C/man2/execveat.2:154
1056 #, no-wrap
1057 msgid "B<ENOTDIR>"
1058 msgstr "B<ENOTDIR>"
1059
1060 #. type: Plain text
1061 #: build/C/man2/access.2:215 build/C/man2/mkdir.2:178
1062 msgid ""
1063 "A component used as a directory in I<pathname> is not, in fact, a directory."
1064 msgstr "I<pathname> のディレクトリ部分が実際にはディレクトリでない。"
1065
1066 #. type: TP
1067 #: build/C/man2/access.2:215 build/C/man2/chmod.2:278 build/C/man2/chmod.2:296
1068 #: build/C/man2/chown.2:266 build/C/man2/chown.2:285 build/C/man2/mkdir.2:183
1069 #: build/C/man2/truncate.2:175
1070 #, no-wrap
1071 msgid "B<EROFS>"
1072 msgstr "B<EROFS>"
1073
1074 #. type: Plain text
1075 #: build/C/man2/access.2:218
1076 msgid "Write permission was requested for a file on a read-only filesystem."
1077 msgstr ""
1078 "読み込み専用 (read-only) のファイルシステムに対して書き込み許可を 要求した。"
1079
1080 #. type: Plain text
1081 #: build/C/man2/access.2:223
1082 msgid "B<access>()  and B<faccessat>()  may fail if:"
1083 msgstr "B<access>() と B<faccessat>() は以下の理由により失敗することがある。"
1084
1085 #. type: TP
1086 #: build/C/man2/access.2:223 build/C/man2/chdir.2:87 build/C/man2/chmod.2:248
1087 #: build/C/man2/chown.2:241 build/C/man2/chroot.2:105
1088 #: build/C/man2/execve.2:396 build/C/man2/fcntl.2:1527
1089 #: build/C/man2/get_thread_area.2:36 build/C/man3/getcwd.3:176
1090 #: build/C/man2/getdomainname.2:83 build/C/man2/gethostname.2:95
1091 #: build/C/man2/ioctl.2:99 build/C/man2/mincore.2:104 build/C/man2/mkdir.2:142
1092 #: build/C/man2/set_thread_area.2:53 build/C/man2/sysctl.2:82
1093 #: build/C/man2/sysinfo.2:80 build/C/man2/truncate.2:124
1094 #: build/C/man2/uname.2:69
1095 #, no-wrap
1096 msgid "B<EFAULT>"
1097 msgstr "B<EFAULT>"
1098
1099 #. type: Plain text
1100 #: build/C/man2/access.2:227 build/C/man2/chmod.2:252 build/C/man2/chown.2:245
1101 #: build/C/man2/mkdir.2:145
1102 msgid "I<pathname> points outside your accessible address space."
1103 msgstr "I<pathname> がアクセス可能なアドレス空間の外を指している。"
1104
1105 #. type: TP
1106 #: build/C/man2/access.2:227 build/C/man2/access.2:248
1107 #: build/C/man2/chmod.2:310 build/C/man2/chown.2:299
1108 #: build/C/man3/confstr.3:123 build/C/man3/crypt.3:124 build/C/man2/dup.2:184
1109 #: build/C/man2/dup.2:189 build/C/man2/execve.2:404 build/C/man2/fcntl.2:1553
1110 #: build/C/man2/fcntl.2:1558 build/C/man2/fcntl.2:1566
1111 #: build/C/man2/fcntl.2:1576 build/C/man2/fcntl.2:1588
1112 #: build/C/man2/fcntl.2:1596 build/C/man3/fexecve.3:78
1113 #: build/C/man2/flock.2:127 build/C/man2/get_thread_area.2:39
1114 #: build/C/man3/getcwd.3:180 build/C/man2/getdomainname.2:87
1115 #: build/C/man2/getdomainname.2:99 build/C/man2/gethostname.2:99
1116 #: build/C/man2/ioctl.2:103 build/C/man2/ioperm.2:85 build/C/man3/lockf.3:147
1117 #: build/C/man2/mincore.2:108 build/C/man2/set_thread_area.2:50
1118 #: build/C/man2/swapon.2:124 build/C/man2/swapon.2:129
1119 #: build/C/man2/swapon.2:139 build/C/man3/tcgetpgrp.3:91
1120 #: build/C/man2/truncate.2:141 build/C/man2/truncate.2:196
1121 #: build/C/man3/ualarm.3:88 build/C/man3/usleep.3:87
1122 #: build/C/man2/execveat.2:126
1123 #, no-wrap
1124 msgid "B<EINVAL>"
1125 msgstr "B<EINVAL>"
1126
1127 #. type: Plain text
1128 #: build/C/man2/access.2:231
1129 msgid "I<mode> was incorrectly specified."
1130 msgstr "I<mode> に不正な値が指定された。"
1131
1132 #. type: TP
1133 #: build/C/man2/access.2:231 build/C/man2/chdir.2:91 build/C/man2/chmod.2:252
1134 #: build/C/man2/chmod.2:290 build/C/man2/chown.2:276 build/C/man2/chroot.2:109
1135 #: build/C/man2/close.2:81 build/C/man2/execve.2:408 build/C/man2/fsync.2:118
1136 #: build/C/man2/ioperm.2:91 build/C/man2/truncate.2:146
1137 #, no-wrap
1138 msgid "B<EIO>"
1139 msgstr "B<EIO>"
1140
1141 #. type: Plain text
1142 #: build/C/man2/access.2:234 build/C/man2/chdir.2:94 build/C/man2/chmod.2:255
1143 #: build/C/man2/chroot.2:112 build/C/man2/close.2:84 build/C/man2/execve.2:411
1144 msgid "An I/O error occurred."
1145 msgstr "I/O エラーが発生した。"
1146
1147 #. type: TP
1148 #: build/C/man2/access.2:234 build/C/man2/chdir.2:105 build/C/man2/chmod.2:266
1149 #: build/C/man2/chown.2:256 build/C/man2/chroot.2:123
1150 #: build/C/man2/execve.2:443 build/C/man2/fork.2:216
1151 #: build/C/man3/getlogin.3:125 build/C/man2/ioperm.2:94
1152 #: build/C/man2/mincore.2:112 build/C/man2/mincore.2:124
1153 #: build/C/man2/mkdir.2:161 build/C/man2/swapon.2:152
1154 #, no-wrap
1155 msgid "B<ENOMEM>"
1156 msgstr "B<ENOMEM>"
1157
1158 #. type: Plain text
1159 #: build/C/man2/access.2:237 build/C/man2/chdir.2:108 build/C/man2/chmod.2:269
1160 #: build/C/man2/chown.2:259 build/C/man2/chroot.2:126
1161 #: build/C/man2/execve.2:446 build/C/man2/mkdir.2:164
1162 msgid "Insufficient kernel memory was available."
1163 msgstr "カーネルに十分なメモリーがない。"
1164
1165 #. type: TP
1166 #: build/C/man2/access.2:237 build/C/man2/execve.2:461
1167 #: build/C/man2/truncate.2:178
1168 #, no-wrap
1169 msgid "B<ETXTBSY>"
1170 msgstr "B<ETXTBSY>"
1171
1172 #. type: Plain text
1173 #: build/C/man2/access.2:241
1174 msgid "Write access was requested to an executable which is being executed."
1175 msgstr "実行中のファイルに対して書き込みを要求した。"
1176
1177 #. type: Plain text
1178 #: build/C/man2/access.2:244
1179 msgid "The following additional errors can occur for B<faccessat>():"
1180 msgstr "B<faccessat>() では以下のエラーも発生する。"
1181
1182 #. type: TP
1183 #: build/C/man2/access.2:244 build/C/man2/chdir.2:121 build/C/man2/chmod.2:285
1184 #: build/C/man2/chmod.2:306 build/C/man2/chown.2:273 build/C/man2/chown.2:295
1185 #: build/C/man2/close.2:71 build/C/man2/dup.2:155 build/C/man2/dup.2:159
1186 #: build/C/man2/fcntl.2:1490 build/C/man2/fcntl.2:1494
1187 #: build/C/man2/flock.2:118 build/C/man2/fsync.2:114 build/C/man2/ioctl.2:95
1188 #: build/C/man3/lockf.3:130 build/C/man2/mkdir.2:190
1189 #: build/C/man3/tcgetpgrp.3:87 build/C/man2/truncate.2:188
1190 #: build/C/man2/execveat.2:122
1191 #, no-wrap
1192 msgid "B<EBADF>"
1193 msgstr "B<EBADF>"
1194
1195 #. type: Plain text
1196 #: build/C/man2/access.2:248 build/C/man2/chmod.2:310 build/C/man2/chown.2:299
1197 #: build/C/man2/mkdir.2:194 build/C/man2/execveat.2:126
1198 msgid "I<dirfd> is not a valid file descriptor."
1199 msgstr "I<dirfd> が適切なファイルディスクリプターでない。"
1200
1201 #. type: Plain text
1202 #: build/C/man2/access.2:252 build/C/man2/chmod.2:314 build/C/man2/chown.2:303
1203 #: build/C/man2/execveat.2:130
1204 msgid "Invalid flag specified in I<flags>."
1205 msgstr "I<flags> に無効なフラグが指定された。"
1206
1207 #. type: Plain text
1208 #: build/C/man2/access.2:258 build/C/man2/chmod.2:320 build/C/man2/chown.2:309
1209 #: build/C/man2/mkdir.2:200 build/C/man2/execveat.2:160
1210 msgid ""
1211 "I<pathname> is relative and I<dirfd> is a file descriptor referring to a "
1212 "file other than a directory."
1213 msgstr ""
1214 "I<pathname> が相対パスで、 I<dirfd> がディレクトリ以外のファイルを参照してい"
1215 "るファイルディスクリプターである。"
1216
1217 #. type: SH
1218 #: build/C/man2/access.2:258 build/C/man2/chmod.2:326 build/C/man2/chown.2:309
1219 #: build/C/man3/des_crypt.3:131 build/C/man2/dup.2:203
1220 #: build/C/man3/euidaccess.3:69 build/C/man3/exec.3:195
1221 #: build/C/man2/exit_group.2:41 build/C/man3/fexecve.3:91
1222 #: build/C/man2/get_thread_area.2:42 build/C/man2/gettid.2:54
1223 #: build/C/man2/idle.2:59 build/C/man2/mincore.2:132 build/C/man2/mkdir.2:200
1224 #: build/C/man2/pread.2:104 build/C/man2/set_thread_area.2:59
1225 #: build/C/man2/setup.2:60 build/C/man2/sysinfo.2:83
1226 #: build/C/man2/execveat.2:160
1227 #, no-wrap
1228 msgid "VERSIONS"
1229 msgstr "バージョン"
1230
1231 #. type: Plain text
1232 #: build/C/man2/access.2:262
1233 msgid ""
1234 "B<faccessat>()  was added to Linux in kernel 2.6.16; library support was "
1235 "added to glibc in version 2.4."
1236 msgstr ""
1237 "B<faccessat>()  はバージョン 2.6.16 で Linux に追加された。 ライブラリによる"
1238 "サポートは glibc バージョン 2.4 で追加された。"
1239
1240 #. type: Plain text
1241 #: build/C/man2/access.2:265
1242 msgid "B<access>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008."
1243 msgstr "B<access>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008."
1244
1245 #. type: Plain text
1246 #: build/C/man2/access.2:268
1247 msgid "B<faccessat>(): POSIX.1-2008."
1248 msgstr "B<faccessat>(): POSIX.1-2008."
1249
1250 #. type: Plain text
1251 #: build/C/man2/access.2:281
1252 msgid ""
1253 "B<Warning>: Using these calls to check if a user is authorized to, for "
1254 "example, open a file before actually doing so using B<open>(2)  creates a "
1255 "security hole, because the user might exploit the short time interval "
1256 "between checking and opening the file to manipulate it.  B<For this reason, "
1257 "the use of this system call should be avoided>.  (In the example just "
1258 "described, a safer alternative would be to temporarily switch the process's "
1259 "effective user ID to the real ID and then call B<open>(2).)"
1260 msgstr ""
1261 "B<警告>: あるユーザーが、例えば B<open>(2) によるアクセスが可能かどうかを、 "
1262 "(実際に行う前に) これらのシステムコールを使ってチェックするのは、セキュリティ"
1263 "ホールの原因になる。なぜならチェックをしてから 実際にファイルのオープン操作を"
1264 "する間の短い間隔を悪用できるからである。 B<この理由があるので、このシステム"
1265 "コールを使うのは避けるべきである。> (ここで説明した例の場合には、より安全な方"
1266 "法としては、 そのプロセスの実効ユーザー ID を実ユーザー ID に一時的に切り替え"
1267 "てから B<open>(2) を呼び出す方法がある。)"
1268
1269 #. type: Plain text
1270 #: build/C/man2/access.2:288
1271 msgid ""
1272 "B<access>()  always dereferences symbolic links.  If you need to check the "
1273 "permissions on a symbolic link, use B<faccessat>(2)  with the flag "
1274 "B<AT_SYMLINK_NOFOLLOW>."
1275 msgstr ""
1276 "B<access>() は常にシンボリックリンクの展開を行う。\n"
1277 "シンボリックリンクのアクセス許可を確認する必要がある場合は、\n"
1278 "B<AT_SYMLINK_NOFOLLOW> フラグ付きで B<faccessat>(2) を使うこと。"
1279
1280 #. type: Plain text
1281 #: build/C/man2/access.2:294
1282 msgid ""
1283 "These calls return an error if any of the access types in I<mode> is denied, "
1284 "even if some of the other access types in I<mode> are permitted."
1285 msgstr ""
1286 "I<mode> で指定されたアクセス種別のいずれか一つでも拒否されると、 たとえ "
1287 "I<mode> で指定された他のアクセス種別が許可されたとしても、 これらのシステム"
1288 "コールはエラーを返す。"
1289
1290 #.  HPU-UX 11 and Tru64 5.1 do this.
1291 #. type: Plain text
1292 #: build/C/man2/access.2:301
1293 msgid ""
1294 "If the calling process has appropriate privileges (i.e., is superuser), "
1295 "POSIX.1-2001 permits an implementation to indicate success for an B<X_OK> "
1296 "check even if none of the execute file permission bits are set.  Linux does "
1297 "not do this."
1298 msgstr ""
1299 "POSIX.1-2001 では、 呼び出し元プロセスが適切な特権を持っている場合 (つまり、"
1300 "スーパーユーザーの場合)、 たとえファイルの実行許可ビットが全くセットされてい"
1301 "なくても B<X_OK> のチェックとして成功を返す実装が認められている。 Linux はこ"
1302 "のようにはなっていない。"
1303
1304 #. type: Plain text
1305 #: build/C/man2/access.2:309
1306 msgid ""
1307 "A file is accessible only if the permissions on each of the directories in "
1308 "the path prefix of I<pathname> grant search (i.e., execute) access.  If any "
1309 "directory is inaccessible, then the B<access>()  call will fail, regardless "
1310 "of the permissions on the file itself."
1311 msgstr ""
1312 "I<pathname> のプレフィックスを構成するディレクトリの全てに対して 検索アクセ"
1313 "ス (すなわち、実行アクセス) が許可された場合にのみ、 ファイルはアクセス可能と"
1314 "なる。 いずれかのディレクトリがアクセス不可の場合、 ファイル自身のアクセス許"
1315 "可に関わらず、 B<access>()  は失敗する。"
1316
1317 #. type: Plain text
1318 #: build/C/man2/access.2:317
1319 msgid ""
1320 "Only access bits are checked, not the file type or contents.  Therefore, if "
1321 "a directory is found to be writable, it probably means that files can be "
1322 "created in the directory, and not that the directory can be written as a "
1323 "file.  Similarly, a DOS file may be found to be \"executable,\" but the "
1324 "B<execve>(2)  call will still fail."
1325 msgstr ""
1326 "アクセスビットのみがチェックされ、ファイルの種類や内容はチェックされない。 "
1327 "従って、ディレクトリが書き込み可能となった場合は、ディレクトリに ファイルを作"
1328 "成することが可能なことを意味するのであり、ディレクトリに ファイルとして書き込"
1329 "むことができるわけではない。 同様に DOS のファイルは「実行可能」と判断される"
1330 "が、 B<execve>(2)  コールは失敗するだろう。"
1331
1332 #. type: Plain text
1333 #: build/C/man2/access.2:326
1334 msgid ""
1335 "These calls may not work correctly on NFSv2 filesystems with UID mapping "
1336 "enabled, because UID mapping is done on the server and hidden from the "
1337 "client, which checks permissions.  (NFS versions 3 and higher perform the "
1338 "check on the server.)  Similar problems can occur to FUSE mounts."
1339 msgstr ""
1340 "これらのシステムコールは、 UID マッピングを使用した NFSv2 ファイルシステムで"
1341 "は正常に機能しないかもしれない。なぜならば UID のマッピングはサーバーで 行な"
1342 "われ、権利のチェックをするクライアントには見えないからである。 (NFS バージョ"
1343 "ン 3 以降ではサーバー側でチェックが実行される。) 同様の問題は FUSE マウントで"
1344 "も起こり得る。"
1345
1346 #. type: SS
1347 #: build/C/man2/access.2:326 build/C/man2/brk.2:140 build/C/man2/chmod.2:338
1348 #: build/C/man2/gethostname.2:140 build/C/man2/uname.2:138
1349 #, no-wrap
1350 msgid "C library/kernel ABI differences"
1351 msgstr "C ライブラリとカーネル ABI の違い"
1352
1353 #. type: Plain text
1354 #: build/C/man2/access.2:339
1355 msgid ""
1356 "The raw B<faccessat>()  system call takes only the first three arguments.  "
1357 "The B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are actually implemented "
1358 "within the glibc wrapper function for B<faccessat>().  If either of these "
1359 "flags is specified, then the wrapper function employs B<fstatat>(2)  to "
1360 "determine access permissions."
1361 msgstr ""
1362 "生の B<faccessat>() システムコールは、最初の 3 つの引き数だけを取る。フラグ "
1363 "B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> は実際には B<faccessat>() の glibc の"
1364 "ラッパー関数内で実装されている。これらのフラグのいずれかが指定された場合、"
1365 "ラッパー関数は B<fstatat>(2) を使ってアクセス許可の判定を行う。"
1366
1367 #. type: SS
1368 #: build/C/man2/access.2:339 build/C/man2/chmod.2:348 build/C/man2/chown.2:380
1369 #: build/C/man3/crypt.3:189 build/C/man2/mkdir.2:223
1370 #, no-wrap
1371 msgid "Glibc notes"
1372 msgstr "glibc での注意"
1373
1374 #. type: Plain text
1375 #: build/C/man2/access.2:357
1376 msgid ""
1377 "On older kernels where B<faccessat>()  is unavailable (and when the "
1378 "B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are not specified), the glibc "
1379 "wrapper function falls back to the use of B<access>().  When I<pathname> is "
1380 "a relative pathname, glibc constructs a pathname based on the symbolic link "
1381 "in I</proc/self/fd> that corresponds to the I<dirfd> argument."
1382 msgstr ""
1383 "B<faccessat>() が利用できない古いカーネルでは、(フラグ B<AT_EACCESS> と "
1384 "B<AT_SYMLINK_NOFOLLOW> が指定されていない場合) glibc ラッパー関数は "
1385 "B<access>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
1386 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
1387 "に基づいてパス名を構成する。"
1388
1389 #. type: SH
1390 #: build/C/man2/access.2:357 build/C/man7/environ.7:209
1391 #: build/C/man2/fcntl.2:1818 build/C/man3/fexecve.3:146
1392 #: build/C/man3/gethostid.3:122 build/C/man3/getlogin.3:177
1393 #: build/C/man3/getopt.3:369 build/C/man2/mincore.2:144
1394 #: build/C/man2/pread.2:146 build/C/man3/sleep.3:46 build/C/man3/sysconf.3:329
1395 #: build/C/man2/sysctl.2:135 build/C/man2/truncate.2:253
1396 #: build/C/man2/vfork.2:252 build/C/man2/execveat.2:210
1397 #, no-wrap
1398 msgid "BUGS"
1399 msgstr "バグ"
1400
1401 #.  This behavior appears to have been an implementation accident.
1402 #. type: Plain text
1403 #: build/C/man2/access.2:380
1404 msgid ""
1405 "In kernel 2.4 (and earlier) there is some strangeness in the handling of "
1406 "B<X_OK> tests for superuser.  If all categories of execute permission are "
1407 "disabled for a nondirectory file, then the only B<access>()  test that "
1408 "returns -1 is when I<mode> is specified as just B<X_OK>; if B<R_OK> or "
1409 "B<W_OK> is also specified in I<mode>, then B<access>()  returns 0 for such "
1410 "files.  Early 2.6 kernels (up to and including 2.6.3)  also behaved in the "
1411 "same way as kernel 2.4."
1412 msgstr ""
1413 "バージョン 2.4 (とそれ以前) のカーネルには、スーパーユーザーでの B<X_OK> の"
1414 "チェックの扱いに奇妙な点がある。 ディレクトリ以外のファイルで (ユーザー、グ"
1415 "ループ、他人の) 全てのカテゴリーについて 実行許可がない場合、 B<access>()  の"
1416 "チェックで -1 が返るのは I<mode> に B<X_OK> だけが指定されたときだけであり "
1417 "I<mode> に B<R_OK> や B<W_OK> が一緒に指定された場合には B<access>()  は 0 を"
1418 "返す。 (バージョン 2.6.3 以前の) 初期の 2.6 系のカーネルも 2.4 系のカーネルと"
1419 "同様の動作をする。"
1420
1421 #. type: Plain text
1422 #: build/C/man2/access.2:390
1423 msgid ""
1424 "In kernels before 2.6.20, these calls ignored the effect of the B<MS_NOEXEC> "
1425 "flag if it was used to B<mount>(2)  the underlying filesystem.  Since kernel "
1426 "2.6.20, the B<MS_NOEXEC> is honored"
1427 msgstr ""
1428 "2.6.20 より前のカーネルでは、 これらのシステムコールはファイルが存在するファ"
1429 "イルシステムを B<mount>(2) する際に指定された B<MS_NOEXEC> フラグの効果を無視"
1430 "していた。 カーネル 2.6.20 以降では、 B<MS_NOEXEC> フラグは考慮されるように"
1431 "なっている。"
1432
1433 #. type: Plain text
1434 #: build/C/man2/access.2:401
1435 msgid ""
1436 "B<chmod>(2), B<chown>(2), B<open>(2), B<setgid>(2), B<setuid>(2), "
1437 "B<stat>(2), B<euidaccess>(3), B<credentials>(7), B<path_resolution>(7), "
1438 "B<symlink>(7)"
1439 msgstr ""
1440 "B<chmod>(2), B<chown>(2), B<open>(2), B<setgid>(2), B<setuid>(2), "
1441 "B<stat>(2), B<euidaccess>(3), B<credentials>(7), B<path_resolution>(7), "
1442 "B<symlink>(7)"
1443
1444 #. type: TH
1445 #: build/C/man2/alarm.2:30
1446 #, no-wrap
1447 msgid "ALARM"
1448 msgstr "ALARM"
1449
1450 #. type: TH
1451 #: build/C/man2/alarm.2:30
1452 #, no-wrap
1453 msgid "2014-02-23"
1454 msgstr "2014-02-23"
1455
1456 #. type: Plain text
1457 #: build/C/man2/alarm.2:33
1458 msgid "alarm - set an alarm clock for delivery of a signal"
1459 msgstr "alarm - シグナル配送のためのアラームクロックを設定する"
1460
1461 #. type: Plain text
1462 #: build/C/man2/alarm.2:38
1463 #, no-wrap
1464 msgid "B<unsigned int alarm(unsigned int >I<seconds>B<);>\n"
1465 msgstr "B<unsigned int alarm(unsigned int >I<seconds>B<);>\n"
1466
1467 #. type: Plain text
1468 #: build/C/man2/alarm.2:46
1469 msgid ""
1470 "B<alarm>()  arranges for a B<SIGALRM> signal to be delivered to the calling "
1471 "process in I<seconds> seconds."
1472 msgstr ""
1473 "B<alarm>()  は B<SIGALRM> シグナルを I<seconds> 秒後に呼び出したプロセスに配"
1474 "送するように手配する。"
1475
1476 #. type: Plain text
1477 #: build/C/man2/alarm.2:50
1478 msgid "If I<seconds> is zero, any pending alarm is canceled."
1479 msgstr ""
1480 "I<seconds> がゼロならば、処理待ち (pending) のアラームはすべてキャンセルされ"
1481 "る。"
1482
1483 #. type: Plain text
1484 #: build/C/man2/alarm.2:54
1485 msgid "In any event any previously set B<alarm>()  is canceled."
1486 msgstr "今までに設定されていた B<alarm>()  は中断される。"
1487
1488 #. type: Plain text
1489 #: build/C/man2/alarm.2:59
1490 msgid ""
1491 "B<alarm>()  returns the number of seconds remaining until any previously "
1492 "scheduled alarm was due to be delivered, or zero if there was no previously "
1493 "scheduled alarm."
1494 msgstr ""
1495 "B<alarm>()  は以前に予定されていたアラームの配送までの残り時間を返す。以前に "
1496 "アラームが予定されていなければゼロを返す。"
1497
1498 #. type: Plain text
1499 #: build/C/man2/alarm.2:61
1500 msgid "SVr4, POSIX.1-2001, 4.3BSD."
1501 msgstr "SVr4, POSIX.1-2001, 4.3BSD."
1502
1503 #. type: Plain text
1504 #: build/C/man2/alarm.2:67
1505 msgid ""
1506 "B<alarm>()  and B<setitimer>(2)  share the same timer; calls to one will "
1507 "interfere with use of the other."
1508 msgstr ""
1509 "B<alarm>()  と B<setitimer>(2)  は同じタイマーを共有している; 片方を呼び出す"
1510 "ことはもう一方の 使用に影響を与える。"
1511
1512 #. type: Plain text
1513 #: build/C/man2/alarm.2:74
1514 msgid ""
1515 "Alarms created by B<alarm>()  are preserved across B<execve>(2)  and are not "
1516 "inherited by children created via B<fork>(2)."
1517 msgstr ""
1518 "B<alarm>() で作成されたアラームは B<execve>(2) の前後で保持され、 B<fork>(2) "
1519 "で作成された子プロセスには継承されない。"
1520
1521 #. type: Plain text
1522 #: build/C/man2/alarm.2:83
1523 msgid ""
1524 "B<sleep>(3)  may be implemented using B<SIGALRM>; mixing calls to "
1525 "B<alarm>()  and B<sleep>(3)  is a bad idea."
1526 msgstr ""
1527 "B<sleep>(3)  は B<SIGALRM> を利用して実装されているかもしれない。 "
1528 "B<alarm>()  と B<sleep>(3)  を混ぜて使用してはならない。"
1529
1530 #. type: Plain text
1531 #: build/C/man2/alarm.2:86
1532 msgid ""
1533 "Scheduling delays can, as ever, cause the execution of the process to be "
1534 "delayed by an arbitrary amount of time."
1535 msgstr ""
1536 "スケジューリング(scheduling)の遅延により、プロセスの実行に不定量の 遅延が起き"
1537 "る可能性がある。"
1538
1539 #. type: Plain text
1540 #: build/C/man2/alarm.2:95
1541 msgid ""
1542 "B<gettimeofday>(2), B<pause>(2), B<select>(2), B<setitimer>(2), "
1543 "B<sigaction>(2), B<signal>(2), B<sleep>(3), B<time>(7)"
1544 msgstr ""
1545 "B<gettimeofday>(2), B<pause>(2), B<select>(2), B<setitimer>(2), "
1546 "B<sigaction>(2), B<signal>(2), B<sleep>(3), B<time>(7)"
1547
1548 #. type: TH
1549 #: build/C/man2/brk.2:29
1550 #, no-wrap
1551 msgid "BRK"
1552 msgstr "BRK"
1553
1554 #. type: Plain text
1555 #: build/C/man2/brk.2:32
1556 msgid "brk, sbrk - change data segment size"
1557 msgstr "brk, sbrk - データセグメントのサイズの変更する"
1558
1559 #. type: Plain text
1560 #: build/C/man2/brk.2:34 build/C/man2/chdir.2:38 build/C/man2/chroot.2:38
1561 #: build/C/man3/daemon.3:41 build/C/man3/encrypt.3:37 build/C/man3/exec.3:46
1562 #: build/C/man2/execve.2:42 build/C/man2/fork.2:44 build/C/man2/fsync.2:43
1563 #: build/C/man2/getdomainname.2:34 build/C/man3/getdtablesize.3:32
1564 #: build/C/man3/gethostid.3:34 build/C/man2/gethostname.2:37
1565 #: build/C/man3/getlogin.3:33 build/C/man2/getpagesize.2:30
1566 #: build/C/man2/idle.2:37 build/C/man3/lockf.3:33 build/C/man2/mincore.2:39
1567 #: build/C/man2/nice.2:36 build/C/man2/pread.2:30 build/C/man2/setup.2:39
1568 #: build/C/man2/swapon.2:47 build/C/man3/tcgetpgrp.3:30
1569 #: build/C/man2/truncate.2:48 build/C/man2/uselib.2:36 build/C/man2/vfork.2:35
1570 #: build/C/man2/vhangup.2:33 build/C/man2/execveat.2:31
1571 msgid "B<#include E<lt>unistd.hE<gt>>"
1572 msgstr "B<#include E<lt>unistd.hE<gt>>"
1573
1574 #. type: Plain text
1575 #: build/C/man2/brk.2:36
1576 msgid "B<int brk(void *>I<addr>B<);>"
1577 msgstr "B<int brk(void *>I<addr>B<);>"
1578
1579 #. type: Plain text
1580 #: build/C/man2/brk.2:38
1581 msgid "B<void *sbrk(intptr_t >I<increment>B<);>"
1582 msgstr "B<void *sbrk(intptr_t >I<increment>B<);>"
1583
1584 #. type: Plain text
1585 #: build/C/man2/brk.2:46
1586 msgid "B<brk>(), B<sbrk>():"
1587 msgstr "B<brk>(), B<sbrk>():"
1588
1589 #. type: TP
1590 #: build/C/man2/brk.2:49 build/C/man3/getcwd.3:60
1591 #: build/C/man3/getdtablesize.3:44 build/C/man2/getpagesize.2:42
1592 #: build/C/man3/ualarm.3:43 build/C/man3/usleep.3:52 build/C/man2/vfork.2:47
1593 #, no-wrap
1594 msgid "Since glibc 2.12:"
1595 msgstr "glibc 2.12 以降:"
1596
1597 #. type: Plain text
1598 #: build/C/man2/brk.2:56
1599 #, no-wrap
1600 msgid ""
1601 "_BSD_SOURCE || _SVID_SOURCE ||\n"
1602 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
1603 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
1604 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
1605 msgstr ""
1606 "_BSD_SOURCE || _SVID_SOURCE ||\n"
1607 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
1608 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
1609 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
1610
1611 #. type: Plain text
1612 #: build/C/man2/brk.2:61
1613 msgid ""
1614 "Before glibc 2.12: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ "
1615 "500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1616 msgstr ""
1617 "glibc 2.12 より前: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ "
1618 "500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1619
1620 #. type: Plain text
1621 #: build/C/man2/brk.2:76
1622 msgid ""
1623 "B<brk>()  and B<sbrk>()  change the location of the I<program break>, which "
1624 "defines the end of the process's data segment (i.e., the program break is "
1625 "the first location after the end of the uninitialized data segment).  "
1626 "Increasing the program break has the effect of allocating memory to the "
1627 "process; decreasing the break deallocates memory."
1628 msgstr ""
1629 "B<brk>()  と B<sbrk>()  は I<プログラムブレーク (program break)> の場所を変更"
1630 "する。 プログラムブレークはプロセスのデータセグメント (data segment) の 末尾"
1631 "を示す (プログラムブレークは、初期化されていない データセグメントの末尾の直後"
1632 "の場所となる)。 プログラムブレークを増やすということは、そのプロセスへの メモ"
1633 "リーを割り当てる効果があり、 プログラムブレークを減らすということは、メモリー"
1634 "を解放する ということである。"
1635
1636 #. type: Plain text
1637 #: build/C/man2/brk.2:83
1638 msgid ""
1639 "B<brk>()  sets the end of the data segment to the value specified by "
1640 "I<addr>, when that value is reasonable, the system has enough memory, and "
1641 "the process does not exceed its maximum data size (see B<setrlimit>(2))."
1642 msgstr ""
1643 "B<brk>()  は、データセグメントの末尾を I<addr> で指定した値に設定する。 設定"
1644 "が行われるのは、指定した値が有効で、 システムに十分なメモリーがあり、 プロセ"
1645 "スのデータサイズの最大値を超えていない場合である (B<setrlimit>(2)  を参照)。"
1646
1647 #. type: Plain text
1648 #: build/C/man2/brk.2:93
1649 msgid ""
1650 "B<sbrk>()  increments the program's data space by I<increment> bytes.  "
1651 "Calling B<sbrk>()  with an I<increment> of 0 can be used to find the current "
1652 "location of the program break."
1653 msgstr ""
1654 "B<sbrk>()  は、プログラムのデータ空間を I<increment> バイトだけ増やす。 "
1655 "I<increment> を 0 にして B<sbrk>()  を呼び出すことで、プログラムの現在のブ"
1656 "レーク (break) 場所を知ることができる。"
1657
1658 #. type: Plain text
1659 #: build/C/man2/brk.2:101
1660 msgid ""
1661 "On success, B<brk>()  returns zero.  On error, -1 is returned, and I<errno> "
1662 "is set to B<ENOMEM>."
1663 msgstr ""
1664 "成功した場合、 B<brk>()  は 0 を返す。 エラーの場合には、-1 を返し、 "
1665 "I<errno> に B<ENOMEM> を設定する。"
1666
1667 #. type: Plain text
1668 #: build/C/man2/brk.2:113
1669 msgid ""
1670 "On success, B<sbrk>()  returns the previous program break.  (If the break "
1671 "was increased, then this value is a pointer to the start of the newly "
1672 "allocated memory).  On error, I<(void\\ *)\\ -1> is returned, and I<errno> "
1673 "is set to B<ENOMEM>."
1674 msgstr ""
1675 "成功した場合、 B<sbrk>()  は変更前のプログラムブレークを返す (プログラムブ"
1676 "レークが増やされた場合、この値は 新しく割り当てられたメモリーの先頭を指すポイ"
1677 "ンターとなる)。 エラーの場合には、 I<(void\\ *)\\ -1> を返し、 I<errno> に "
1678 "B<ENOMEM> を設定する。"
1679
1680 #.  .BR brk ()
1681 #.  and
1682 #.  .BR sbrk ()
1683 #.  are not defined in the C Standard and are deliberately excluded from the
1684 #.  POSIX.1-1990 standard (see paragraphs B.1.1.1.3 and B.8.3.3).
1685 #. type: Plain text
1686 #: build/C/man2/brk.2:121
1687 msgid "4.3BSD; SUSv1, marked LEGACY in SUSv2, removed in POSIX.1-2001."
1688 msgstr ""
1689 "4.3BSD, SUSv1.  SUSv2 では「過去の名残 (LEGACY)」と位置付けられており、 "
1690 "POSIX.1-2001 で削除された。"
1691
1692 #. type: Plain text
1693 #: build/C/man2/brk.2:130
1694 msgid ""
1695 "Avoid using B<brk>()  and B<sbrk>(): the B<malloc>(3)  memory allocation "
1696 "package is the portable and comfortable way of allocating memory."
1697 msgstr ""
1698 "B<brk>()  や B<sbrk>()  を使用するのは避けること。 B<malloc>(3)  メモリー割り"
1699 "当てパッケージの方が、移植性が高く、 使いやすいメモリー割り当て方法を提供して"
1700 "いる。"
1701
1702 #.  One sees
1703 #.  \fIint\fP (e.g., XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
1704 #.  \fIssize_t\fP (OSF1 2.0, Irix 5.3, 6.5),
1705 #.  \fIptrdiff_t\fP (libc4, libc5, ulibc, glibc 2.0, 2.1),
1706 #.  \fIintptr_t\fP (e.g., XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7, NetBSD 1.6,
1707 #.  Tru64 5.1, glibc2.2).
1708 #. type: Plain text
1709 #: build/C/man2/brk.2:140
1710 msgid ""
1711 "Various systems use various types for the argument of B<sbrk>().  Common are "
1712 "I<int>, I<ssize_t>, I<ptrdiff_t>, I<intptr_t>."
1713 msgstr ""
1714 "いろいろなシステムにおいて、 B<sbrk>()  の引き数に様々な型が使われている。 一"
1715 "般的なのは I<int>, I<ssize_t>, I<ptrdiff_t>, I<intptr_t> である。"
1716
1717 #. type: Plain text
1718 #: build/C/man2/brk.2:156
1719 msgid ""
1720 "The return value described above for B<brk>()  is the behavior provided by "
1721 "the glibc wrapper function for the Linux B<brk>()  system call.  (On most "
1722 "other implementations, the return value from B<brk>()  is the same; this "
1723 "return value was also specified in SUSv2.)  However, the actual Linux system "
1724 "call returns the new program break on success.  On failure, the system call "
1725 "returns the current break.  The glibc wrapper function does some work (i.e., "
1726 "checks whether the new break is less than I<addr>)  to provide the 0 and -1 "
1727 "return values described above."
1728 msgstr ""
1729 "上で説明した B<brk>()  の返り値についての動作は、 Linux の B<brk>()  システム"
1730 "コールをラップする glibc の関数によるものである。 (その他の多くの実装でも、 "
1731 "B<brk>()  の返り値はこれと同じである。 この返り値は SUSv2 でも規定されてい"
1732 "る。)  しかし、実際の Linux システムコールは、成功した場合、 プログラムの新し"
1733 "いブレークを返す。 失敗した場合、このシステムコールは現在のブレークを返す。 "
1734 "glibc ラッパー関数は同様の働きをし (すなわち、新しいブレークが I<addr> より小"
1735 "さいかどうかをチェックし)、 上で説明した 0 と -1 という返り値を返す。"
1736
1737 #. type: Plain text
1738 #: build/C/man2/brk.2:163
1739 msgid ""
1740 "On Linux, B<sbrk>()  is implemented as a library function that uses the "
1741 "B<brk>()  system call, and does some internal bookkeeping so that it can "
1742 "return the old break value."
1743 msgstr ""
1744 "Linux では B<sbrk>()  は B<brk>()  システムコールを使うライブラリ関数として実"
1745 "装されており、 以前のブレークの値を返すことができるように内部で調整が行われて"
1746 "いる。"
1747
1748 #. type: Plain text
1749 #: build/C/man2/brk.2:168
1750 msgid "B<execve>(2), B<getrlimit>(2), B<end>(3), B<malloc>(3)"
1751 msgstr "B<execve>(2), B<getrlimit>(2), B<end>(3), B<malloc>(3)"
1752
1753 #. type: TH
1754 #: build/C/man2/chdir.2:33
1755 #, no-wrap
1756 msgid "CHDIR"
1757 msgstr "CHDIR"
1758
1759 #. type: TH
1760 #: build/C/man2/chdir.2:33
1761 #, no-wrap
1762 msgid "2010-11-25"
1763 msgstr "2010-11-25"
1764
1765 #. type: Plain text
1766 #: build/C/man2/chdir.2:36
1767 msgid "chdir, fchdir - change working directory"
1768 msgstr "chdir, fchdir - 作業ディレクトリの変更"
1769
1770 #. type: Plain text
1771 #: build/C/man2/chdir.2:40
1772 msgid "B<int chdir(const char *>I<path>B<);>"
1773 msgstr "B<int chdir(const char *>I<path>B<);>"
1774
1775 #. type: Plain text
1776 #: build/C/man2/chdir.2:42
1777 msgid "B<int fchdir(int >I<fd>B<);>"
1778 msgstr "B<int fchdir(int >I<fd>B<);>"
1779
1780 #. type: Plain text
1781 #: build/C/man2/chdir.2:49
1782 msgid "B<fchdir>():"
1783 msgstr "B<fchdir>():"
1784
1785 #. type: Plain text
1786 #: build/C/man2/chdir.2:54 build/C/man2/chmod.2:62 build/C/man2/chown.2:71
1787 #: build/C/man3/gethostid.3:50 build/C/man2/truncate.2:66
1788 #: build/C/man2/truncate.2:74
1789 msgid ""
1790 "_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
1791 "_XOPEN_SOURCE_EXTENDED"
1792 msgstr ""
1793 "_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
1794 "_XOPEN_SOURCE_EXTENDED"
1795
1796 #. type: Plain text
1797 #: build/C/man2/chdir.2:56 build/C/man2/chmod.2:64 build/C/man2/chown.2:73
1798 #: build/C/man2/pread.2:50 build/C/man2/truncate.2:68
1799 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1800 msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1801
1802 #. type: Plain text
1803 #: build/C/man2/chdir.2:64
1804 msgid ""
1805 "B<chdir>()  changes the current working directory of the calling process to "
1806 "the directory specified in I<path>."
1807 msgstr ""
1808 "B<chdir>()  は、呼び出し元プロセスの現在の作業ディレクトリ (current working "
1809 "directory) を、 I<path> に指定されたディレクトリに変更する。"
1810
1811 #. type: Plain text
1812 #: build/C/man2/chdir.2:70
1813 msgid ""
1814 "B<fchdir>()  is identical to B<chdir>(); the only difference is that the "
1815 "directory is given as an open file descriptor."
1816 msgstr ""
1817 "B<fchdir>()  は、ディレクトリがオープンされたファイルディスクリプターとして "
1818 "指定される以外は、 B<chdir>()  と同じである。"
1819
1820 #. type: Plain text
1821 #: build/C/man2/chdir.2:75 build/C/man2/chmod.2:236 build/C/man2/chown.2:229
1822 #: build/C/man2/chroot.2:95 build/C/man2/flock.2:117
1823 #: build/C/man2/getdomainname.2:80 build/C/man2/gethostname.2:94
1824 #: build/C/man2/ioperm.2:84 build/C/man3/lockf.3:121 build/C/man2/swapon.2:116
1825 #: build/C/man2/sysinfo.2:79 build/C/man2/truncate.2:115
1826 #: build/C/man2/uname.2:68 build/C/man2/uselib.2:53 build/C/man2/vhangup.2:55
1827 msgid ""
1828 "On success, zero is returned.  On error, -1 is returned, and I<errno> is set "
1829 "appropriately."
1830 msgstr ""
1831 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
1832 "定される。"
1833
1834 #. type: Plain text
1835 #: build/C/man2/chdir.2:81
1836 msgid ""
1837 "Depending on the filesystem, other errors can be returned.  The more general "
1838 "errors for B<chdir>()  are listed below:"
1839 msgstr ""
1840 "ファイルシステムによっては他のエラーが返される事がある。 B<chdir>()  で一般的"
1841 "なエラーを以下に挙げる:"
1842
1843 #. type: Plain text
1844 #: build/C/man2/chdir.2:87
1845 msgid ""
1846 "Search permission is denied for one of the components of I<path>.  (See also "
1847 "B<path_resolution>(7).)"
1848 msgstr ""
1849 "I<path> の構成要素のいずれかに検索許可 (search permission) がない "
1850 "(B<path_resolution>(7)  も参照すること)。"
1851
1852 #. type: Plain text
1853 #: build/C/man2/chdir.2:91 build/C/man2/chroot.2:109
1854 msgid "I<path> points outside your accessible address space."
1855 msgstr "I<path> がアクセスできるアドレス空間外を指している。"
1856
1857 #. type: Plain text
1858 #: build/C/man2/chdir.2:98 build/C/man2/chroot.2:116
1859 msgid "Too many symbolic links were encountered in resolving I<path>."
1860 msgstr "I<path> を解決する際に遭遇したシンボリックリンクが多過ぎる。"
1861
1862 #. type: Plain text
1863 #: build/C/man2/chdir.2:102 build/C/man2/chroot.2:120
1864 msgid "I<path> is too long."
1865 msgstr "I<path> が長過ぎる。"
1866
1867 #. type: Plain text
1868 #: build/C/man2/chdir.2:105 build/C/man2/chmod.2:266 build/C/man2/chown.2:256
1869 #: build/C/man2/chroot.2:123
1870 msgid "The file does not exist."
1871 msgstr "ファイルが存在しない。"
1872
1873 #. type: Plain text
1874 #: build/C/man2/chdir.2:113 build/C/man2/chroot.2:131
1875 msgid "A component of I<path> is not a directory."
1876 msgstr "I<path> の構成要素がディレクトリではない。"
1877
1878 #. type: Plain text
1879 #: build/C/man2/chdir.2:117
1880 msgid "The general errors for B<fchdir>()  are listed below:"
1881 msgstr "B<fchdir>()  で一般的なエラーを以下に挙げる:"
1882
1883 #. type: Plain text
1884 #: build/C/man2/chdir.2:121
1885 msgid "Search permission was denied on the directory open on I<fd>."
1886 msgstr "I<fd> をディレクトリとしてオープンするための検索許可がない。"
1887
1888 #. type: Plain text
1889 #: build/C/man2/chdir.2:125 build/C/man3/tcgetpgrp.3:91
1890 msgid "I<fd> is not a valid file descriptor."
1891 msgstr "I<fd> が適切なファイルディスクリプターでない。"
1892
1893 #. type: Plain text
1894 #: build/C/man2/chdir.2:127
1895 msgid "SVr4, 4.4BSD, POSIX.1-2001."
1896 msgstr "SVr4, 4.4BSD, POSIX.1-2001."
1897
1898 #. type: Plain text
1899 #: build/C/man2/chdir.2:130
1900 msgid ""
1901 "The current working directory is the starting point for interpreting "
1902 "relative pathnames (those not starting with \\(aq/\\(aq)."
1903 msgstr ""
1904 "現在の作業ディレクトリは、相対パス名 (\\(aq/\\(aq) で始まっていないパス名) "
1905 "を 解釈する際の開始点である。"
1906
1907 #. type: Plain text
1908 #: build/C/man2/chdir.2:136
1909 msgid ""
1910 "A child process created via B<fork>(2)  inherits its parent's current "
1911 "working directory.  The current working directory is left unchanged by "
1912 "B<execve>(2)."
1913 msgstr ""
1914 "B<fork>(2)  で作成された子プロセスは、親プロセスの現在の作業ディレクトリを 継"
1915 "承する。 B<execve>(2)  の前後で、現在の作業ディレクトリは変更されない。"
1916
1917 #. type: Plain text
1918 #: build/C/man2/chdir.2:140
1919 msgid "B<chroot>(2), B<getcwd>(3), B<path_resolution>(7)"
1920 msgstr "B<chroot>(2), B<getcwd>(3), B<path_resolution>(7)"
1921
1922 #. type: TH
1923 #: build/C/man2/chmod.2:32
1924 #, no-wrap
1925 msgid "CHMOD"
1926 msgstr "CHMOD"
1927
1928 #. type: Plain text
1929 #: build/C/man2/chmod.2:35
1930 msgid "chmod, fchmod, fchmodat - change permissions of a file"
1931 msgstr "chmod, fchmod, fchmodat - ファイルのモードを変更する"
1932
1933 #. type: Plain text
1934 #: build/C/man2/chmod.2:38
1935 #, no-wrap
1936 msgid "B<#include E<lt>sys/stat.hE<gt>>\n"
1937 msgstr "B<#include E<lt>sys/stat.hE<gt>>\n"
1938
1939 #. type: Plain text
1940 #: build/C/man2/chmod.2:40
1941 #, no-wrap
1942 msgid "B<int chmod(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
1943 msgstr "B<int chmod(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
1944
1945 #. type: Plain text
1946 #: build/C/man2/chmod.2:42
1947 #, no-wrap
1948 msgid "B<int fchmod(int >I<fd>B<, mode_t >I<mode>B<);>\n"
1949 msgstr "B<int fchmod(int >I<fd>B<, mode_t >I<mode>B<);>\n"
1950
1951 #. type: Plain text
1952 #: build/C/man2/chmod.2:45
1953 #, no-wrap
1954 msgid ""
1955 "B<#include E<lt>fcntl.hE<gt>>           /* Definition of AT_* constants */\n"
1956 "B<#include E<lt>sys/stat.hE<gt>>\n"
1957 msgstr ""
1958 "B<#include E<lt>fcntl.hE<gt>>           /* AT_* 定数の定義 */\n"
1959 "B<#include E<lt>sys/stat.hE<gt>>\n"
1960
1961 #. type: Plain text
1962 #: build/C/man2/chmod.2:48
1963 #, no-wrap
1964 msgid "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<, int >I<flags>B<);>\n"
1965 msgstr "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<, int >I<flags>B<);>\n"
1966
1967 #. type: Plain text
1968 #: build/C/man2/chmod.2:58
1969 msgid "B<fchmod>():"
1970 msgstr "B<fchmod>():"
1971
1972 #. type: Plain text
1973 #: build/C/man2/chmod.2:68
1974 msgid "B<fchmodat>():"
1975 msgstr "B<fchmodat>():"
1976
1977 #. type: Plain text
1978 #: build/C/man2/chmod.2:88
1979 msgid ""
1980 "The B<chmod>()  and B<fchmod>()  system calls change the permissions of a "
1981 "file.  They differ only in how the file is specified:"
1982 msgstr ""
1983 "システムコール B<chmod>() と B<fchmod>() は、ファイルのアクセス許可 "
1984 "(permission) を変更する。 システムコール間の違いは、ファイルの指定の仕方だけ"
1985 "である。"
1986
1987 #. type: IP
1988 #: build/C/man2/chmod.2:88 build/C/man2/chmod.2:93 build/C/man2/chown.2:96
1989 #: build/C/man2/chown.2:101 build/C/man2/chown.2:105 build/C/man2/chown.2:353
1990 #: build/C/man2/chown.2:358 build/C/man2/chown.2:364 build/C/man2/dup.2:106
1991 #: build/C/man2/dup.2:112 build/C/man2/dup.2:129 build/C/man2/dup.2:138
1992 #: build/C/man2/execve.2:122 build/C/man2/execve.2:126
1993 #: build/C/man2/execve.2:129 build/C/man2/execve.2:132
1994 #: build/C/man2/execve.2:135 build/C/man2/execve.2:138
1995 #: build/C/man2/execve.2:141 build/C/man2/execve.2:144
1996 #: build/C/man2/execve.2:147 build/C/man2/execve.2:150
1997 #: build/C/man2/execve.2:154 build/C/man2/execve.2:158
1998 #: build/C/man2/execve.2:167 build/C/man2/execve.2:174
1999 #: build/C/man2/execve.2:179 build/C/man2/execve.2:186
2000 #: build/C/man2/execve.2:193 build/C/man2/execve.2:200
2001 #: build/C/man2/execve.2:207 build/C/man2/execve.2:211
2002 #: build/C/man2/execve.2:214 build/C/man2/execve.2:222
2003 #: build/C/man2/execve.2:226 build/C/man2/execve.2:231
2004 #: build/C/man2/fcntl.2:452 build/C/man2/fcntl.2:468 build/C/man2/fork.2:52
2005 #: build/C/man2/fork.2:56 build/C/man2/fork.2:58 build/C/man2/fork.2:62
2006 #: build/C/man2/fork.2:68 build/C/man2/fork.2:71 build/C/man2/fork.2:74
2007 #: build/C/man2/fork.2:82 build/C/man2/fork.2:87 build/C/man2/fork.2:99
2008 #: build/C/man2/fork.2:106 build/C/man2/fork.2:112 build/C/man2/fork.2:119
2009 #: build/C/man2/fork.2:125 build/C/man2/fork.2:130 build/C/man2/fork.2:138
2010 #: build/C/man2/fork.2:147 build/C/man2/fork.2:161 build/C/man2/fork.2:170
2011 #: build/C/man2/syscalls.2:87 build/C/man2/syscalls.2:90
2012 #: build/C/man2/syscalls.2:96 build/C/man2/syscalls.2:112
2013 #: build/C/man2/syscalls.2:118 build/C/man2/syscalls.2:124
2014 #: build/C/man2/syscalls.2:130 build/C/man2/syscalls.2:137
2015 #: build/C/man2/syscalls.2:703 build/C/man2/syscalls.2:724
2016 #: build/C/man2/syscalls.2:735 build/C/man2/syscalls.2:742
2017 #: build/C/man2/syscalls.2:753 build/C/man2/syscalls.2:765
2018 #: build/C/man2/syscalls.2:786 build/C/man2/syscalls.2:794
2019 #: build/C/man2/vfork.2:193 build/C/man2/vfork.2:197
2020 #, no-wrap
2021 msgid "*"
2022 msgstr "*"
2023
2024 #. type: Plain text
2025 #: build/C/man2/chmod.2:93
2026 msgid ""
2027 "B<chmod>()  changes the permissions of the file specified whose pathname is "
2028 "given in I<pathname>, which is dereferenced if it is a symbolic link."
2029 msgstr ""
2030 "B<chmod>()  は、 I<pathname> で指定されたパス名を持つファイルの許可を変更す"
2031 "る。 I<pathname> がシンボリックリンクの場合は、リンクの展開が行われる。"
2032
2033 #. type: Plain text
2034 #: build/C/man2/chmod.2:97
2035 msgid ""
2036 "B<fchmod>()  changes the permissions of the file referred to by the open "
2037 "file descriptor I<fd>."
2038 msgstr ""
2039 "B<fchmod>()  は、オープンされたファイルディスクリプター I<fd> により参照され"
2040 "るファイルの許可を変更する。"
2041
2042 #. type: Plain text
2043 #: build/C/man2/chmod.2:102
2044 msgid ""
2045 "The new file permissions are specified in I<mode>, which is a bit mask "
2046 "created by ORing together zero or more of the following:"
2047 msgstr ""
2048 "新しいファイル許可は I<mode> で指定される。 I<mode> は、以下に示す値の 0 個以"
2049 "上の OR (論理和) をとって作成される ビットマスクである。"
2050
2051 #. type: TP
2052 #: build/C/man2/chmod.2:102
2053 #, no-wrap
2054 msgid "B<S_ISUID>  (04000)"
2055 msgstr "B<S_ISUID>  (04000)"
2056
2057 #. type: Plain text
2058 #: build/C/man2/chmod.2:106
2059 msgid "set-user-ID (set process effective user ID on B<execve>(2))"
2060 msgstr ""
2061 "set-user-ID (B<execve>(2)  時にプロセスの実効ユーザー ID にセットされる)"
2062
2063 #. type: TP
2064 #: build/C/man2/chmod.2:106
2065 #, no-wrap
2066 msgid "B<S_ISGID>  (02000)"
2067 msgstr "B<S_ISGID>  (02000)"
2068
2069 #. type: Plain text
2070 #: build/C/man2/chmod.2:116
2071 msgid ""
2072 "set-group-ID (set process effective group ID on B<execve>(2); mandatory "
2073 "locking, as described in B<fcntl>(2); take a new file's group from parent "
2074 "directory, as described in B<chown>(2)  and B<mkdir>(2))"
2075 msgstr ""
2076 "set-group-ID (以下の場合に (B<execve>(2)  実行時にプロセスの実効グループ ID "
2077 "にセットされる、 強制ロック (mandatory locking) を行う (B<fcntl>(2)  の説明を"
2078 "参照)、 新しいファイルのグループとして親ディレクトリと同じものを使う "
2079 "(B<chown>(2)  と B<(>mkdirB<(2)> の説明を参照)"
2080
2081 #. type: TP
2082 #: build/C/man2/chmod.2:116
2083 #, no-wrap
2084 msgid "B<S_ISVTX>  (01000)"
2085 msgstr "B<S_ISVTX>  (01000)"
2086
2087 #. type: Plain text
2088 #: build/C/man2/chmod.2:120
2089 msgid "sticky bit (restricted deletion flag, as described in B<unlink>(2))"
2090 msgstr ""
2091 "スティッキービット (sticky bit) (削除制限フラグ、 B<unlink>(2)  の説明を参照)"
2092
2093 #. type: TP
2094 #: build/C/man2/chmod.2:120
2095 #, no-wrap
2096 msgid "B<S_IRUSR>  (00400)"
2097 msgstr "B<S_IRUSR>  (00400)"
2098
2099 #. type: Plain text
2100 #: build/C/man2/chmod.2:123
2101 msgid "read by owner"
2102 msgstr "所有者による読み取り"
2103
2104 #. type: TP
2105 #: build/C/man2/chmod.2:123
2106 #, no-wrap
2107 msgid "B<S_IWUSR>  (00200)"
2108 msgstr "B<S_IWUSR>  (00200)"
2109
2110 #. type: Plain text
2111 #: build/C/man2/chmod.2:126
2112 msgid "write by owner"
2113 msgstr "所有者による書き込み"
2114
2115 #. type: TP
2116 #: build/C/man2/chmod.2:126
2117 #, no-wrap
2118 msgid "B<S_IXUSR>  (00100)"
2119 msgstr "B<S_IXUSR>  (00100)"
2120
2121 #. type: Plain text
2122 #: build/C/man2/chmod.2:130
2123 msgid ""
2124 "execute/search by owner (\"search\" applies for directories, and means that "
2125 "entries within the directory can be accessed)"
2126 msgstr ""
2127 "所有者による実行 (execute) / 検索 (search)  (「検索」はディレクトリに対して適"
2128 "用されるもので、 そのディレクトリ内のエントリーへアクセスできるかを意味する)"
2129
2130 #. type: TP
2131 #: build/C/man2/chmod.2:130
2132 #, no-wrap
2133 msgid "B<S_IRGRP>  (00040)"
2134 msgstr "B<S_IRGRP>  (00040)"
2135
2136 #. type: Plain text
2137 #: build/C/man2/chmod.2:133
2138 msgid "read by group"
2139 msgstr "グループによる読み取り"
2140
2141 #. type: TP
2142 #: build/C/man2/chmod.2:133
2143 #, no-wrap
2144 msgid "B<S_IWGRP>  (00020)"
2145 msgstr "B<S_IWGRP>  (00020)"
2146
2147 #. type: Plain text
2148 #: build/C/man2/chmod.2:136
2149 msgid "write by group"
2150 msgstr "グループによる書き込み"
2151
2152 #. type: TP
2153 #: build/C/man2/chmod.2:136
2154 #, no-wrap
2155 msgid "B<S_IXGRP>  (00010)"
2156 msgstr "B<S_IXGRP>  (00010)"
2157
2158 #. type: Plain text
2159 #: build/C/man2/chmod.2:139
2160 msgid "execute/search by group"
2161 msgstr "グループによる実行 / 検索"
2162
2163 #. type: TP
2164 #: build/C/man2/chmod.2:139
2165 #, no-wrap
2166 msgid "B<S_IROTH>  (00004)"
2167 msgstr "B<S_IROTH>  (00004)"
2168
2169 #. type: Plain text
2170 #: build/C/man2/chmod.2:142
2171 msgid "read by others"
2172 msgstr "他人 (others) による読み取り"
2173
2174 #. type: TP
2175 #: build/C/man2/chmod.2:142
2176 #, no-wrap
2177 msgid "B<S_IWOTH>  (00002)"
2178 msgstr "B<S_IWOTH>  (00002)"
2179
2180 #. type: Plain text
2181 #: build/C/man2/chmod.2:145
2182 msgid "write by others"
2183 msgstr "他人による書き込み"
2184
2185 #. type: TP
2186 #: build/C/man2/chmod.2:145
2187 #, no-wrap
2188 msgid "B<S_IXOTH>  (00001)"
2189 msgstr "B<S_IXOTH>  (00001)"
2190
2191 #. type: Plain text
2192 #: build/C/man2/chmod.2:148
2193 msgid "execute/search by others"
2194 msgstr "他人による実行 / 検索"
2195
2196 #. type: Plain text
2197 #: build/C/man2/chmod.2:153
2198 msgid ""
2199 "The effective UID of the calling process must match the owner of the file, "
2200 "or the process must be privileged (Linux: it must have the B<CAP_FOWNER> "
2201 "capability)."
2202 msgstr ""
2203 "呼び出したプロセスの実効 (effective) UID がファイルの所有者と一致するか、 そ"
2204 "のプロセスが特権を持たなければならない (Linux では B<CAP_FOWNER> ケーパビリ"
2205 "ティ (capability) を持たなければならない)。"
2206
2207 #. type: Plain text
2208 #: build/C/man2/chmod.2:162
2209 msgid ""
2210 "If the calling process is not privileged (Linux: does not have the "
2211 "B<CAP_FSETID> capability), and the group of the file does not match the "
2212 "effective group ID of the process or one of its supplementary group IDs, the "
2213 "B<S_ISGID> bit will be turned off, but this will not cause an error to be "
2214 "returned."
2215 msgstr ""
2216 "呼び出したプロセスに特権がなく (Linux では B<CAP_FSETID> ケーパビリティがな"
2217 "く)、かつファイルのグループ ID が プロセスの実効グループ ID または補助的なグ"
2218 "ループ ID にマッチしない場合、 B<S_ISGID> ビットはオフにされるが、これによっ"
2219 "てエラーが返されることはない。"
2220
2221 #. type: Plain text
2222 #: build/C/man2/chmod.2:174
2223 msgid ""
2224 "As a security measure, depending on the filesystem, the set-user-ID and set-"
2225 "group-ID execution bits may be turned off if a file is written.  (On Linux "
2226 "this occurs if the writing process does not have the B<CAP_FSETID> "
2227 "capability.)  On some filesystems, only the superuser can set the sticky "
2228 "bit, which may have a special meaning.  For the sticky bit, and for set-user-"
2229 "ID and set-group-ID bits on directories, see B<stat>(2)."
2230 msgstr ""
2231 "安全のための処置として、 ファイルシステムによっては、ファイルの書き込みを行う"
2232 "時に set-user-ID とset-group-ID ビットと実行ビットが オフにされることがあ"
2233 "る。 (Linux では、書き込みプロセスが B<CAP_FSETID> ケーパビリティを持っていな"
2234 "い場合に、これが起こる。)  ファイルシステムの中には、スーパーユーザーだけが "
2235 "特別の意味を持つスティッキービットを設定できるものがある。 スティッキービット"
2236 "とディレクトリに対する set-user-ID (set-group-ID) ビットについては、 "
2237 "B<stat>(2)  を見よ。"
2238
2239 #. type: Plain text
2240 #: build/C/man2/chmod.2:182
2241 msgid ""
2242 "On NFS filesystems, restricting the permissions will immediately influence "
2243 "already open files, because the access control is done on the server, but "
2244 "open files are maintained by the client.  Widening the permissions may be "
2245 "delayed for other clients if attribute caching is enabled on them."
2246 msgstr ""
2247 "NFS ファイルシステム上では、パーミッションを制限すると、 既にオープンされてい"
2248 "るファイルに対してすぐに影響が及ぶ。 これはアクセス制御がサーバー上で行われて"
2249 "いるが、 オープンされているファイルはクライアント側で管理されているためであ"
2250 "る。 クライアント側でファイル属性のキャッシュが有効になっている場合に、 パー"
2251 "ミッションの制限を緩くすると、 他のクライアントに情報が伝わるのが遅れるかもし"
2252 "れない。"
2253
2254 #. type: SS
2255 #: build/C/man2/chmod.2:182
2256 #, no-wrap
2257 msgid "fchmodat()"
2258 msgstr "fchmodat()"
2259
2260 #. type: Plain text
2261 #: build/C/man2/chmod.2:188
2262 msgid ""
2263 "The B<fchmodat>()  system call operates in exactly the same way as "
2264 "B<chmod>(), except for the differences described here."
2265 msgstr ""
2266 "B<fchmodat>() システムコールは B<chmod>() と全く同様に動作するが、以下で説明"
2267 "する点が異なる。"
2268
2269 #. type: Plain text
2270 #: build/C/man2/chmod.2:198
2271 msgid ""
2272 "If the pathname given in I<pathname> is relative, then it is interpreted "
2273 "relative to the directory referred to by the file descriptor I<dirfd> "
2274 "(rather than relative to the current working directory of the calling "
2275 "process, as is done by B<chmod>()  for a relative pathname)."
2276 msgstr ""
2277 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
2278 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
2279 "(B<chmod>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
2280 "ワーキングディレクトリに対する相対パスではない)。"
2281
2282 #. type: Plain text
2283 #: build/C/man2/chmod.2:210
2284 msgid ""
2285 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
2286 "then I<pathname> is interpreted relative to the current working directory of "
2287 "the calling process (like B<chmod>())."
2288 msgstr ""
2289 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
2290 "の場合、 (B<chmod>() と同様に) I<pathname> は呼び出したプロセスのカレントワー"
2291 "キングディレクトリに対する相対パスと解釈される。"
2292
2293 #. type: Plain text
2294 #: build/C/man2/chmod.2:219
2295 msgid "I<flags> can either be 0, or include the following flag:"
2296 msgstr "I<flags> には 0 か、以下のフラグを指定することができる。"
2297
2298 #. type: Plain text
2299 #: build/C/man2/chmod.2:226
2300 msgid ""
2301 "If I<pathname> is a symbolic link, do not dereference it: instead operate on "
2302 "the link itself.  This flag is not currently implemented."
2303 msgstr ""
2304 "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リ"
2305 "ンク自身に対して操作を行う。このフラグは現在のところ実装されていない。"
2306
2307 #. type: Plain text
2308 #: build/C/man2/chmod.2:231
2309 msgid "See B<openat>(2)  for an explanation of the need for B<fchmodat>()."
2310 msgstr "B<fchmodat>() の必要性についての説明については B<openat>(2) を参照。"
2311
2312 #. type: Plain text
2313 #: build/C/man2/chmod.2:239 build/C/man2/chown.2:232
2314 msgid ""
2315 "Depending on the filesystem, errors other than those listed below can be "
2316 "returned."
2317 msgstr ""
2318 "ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。"
2319
2320 #. type: Plain text
2321 #: build/C/man2/chmod.2:243
2322 msgid "The more general errors for B<chmod>()  are listed below:"
2323 msgstr "B<chmod>() のごく一般的なエラーを挙げる:"
2324
2325 #.  Also search permission is required on the final component,
2326 #.  maybe just to guarantee that it is a directory?
2327 #. type: Plain text
2328 #: build/C/man2/chmod.2:248 build/C/man2/chown.2:241 build/C/man2/chroot.2:105
2329 msgid ""
2330 "Search permission is denied on a component of the path prefix.  (See also "
2331 "B<path_resolution>(7).)"
2332 msgstr "パス名の構成要素に検索許可がない (B<path_resolution>(7)  も見よ)。"
2333
2334 #. type: Plain text
2335 #: build/C/man2/chmod.2:272 build/C/man2/chown.2:262
2336 #: build/C/man2/truncate.2:165
2337 msgid "A component of the path prefix is not a directory."
2338 msgstr "パス名の構成要素がディレクトリではない。"
2339
2340 #. type: TP
2341 #: build/C/man2/chmod.2:272 build/C/man2/chmod.2:293 build/C/man2/chown.2:262
2342 #: build/C/man2/chown.2:282 build/C/man2/chroot.2:131 build/C/man3/crypt.3:169
2343 #: build/C/man2/execve.2:451 build/C/man2/execve.2:457
2344 #: build/C/man2/fcntl.2:1625 build/C/man2/fcntl.2:1630
2345 #: build/C/man2/getdomainname.2:91 build/C/man3/gethostid.3:88
2346 #: build/C/man2/gethostname.2:117 build/C/man2/idle.2:56
2347 #: build/C/man2/ioperm.2:98 build/C/man2/mkdir.2:178 build/C/man2/nice.2:62
2348 #: build/C/man2/setup.2:57 build/C/man2/swapon.2:155
2349 #: build/C/man3/tcgetpgrp.3:104 build/C/man2/truncate.2:165
2350 #: build/C/man2/truncate.2:171 build/C/man2/vhangup.2:56
2351 #, no-wrap
2352 msgid "B<EPERM>"
2353 msgstr "B<EPERM>"
2354
2355 #. type: Plain text
2356 #: build/C/man2/chmod.2:278
2357 msgid ""
2358 "The effective UID does not match the owner of the file, and the process is "
2359 "not privileged (Linux: it does not have the B<CAP_FOWNER> capability)."
2360 msgstr ""
2361 "実効 UID がファイルの所有者と一致せず、プロセスに特権がない (Linux では "
2362 "B<CAP_FOWNER> ケーパビリティを持たない)。"
2363
2364 #. type: Plain text
2365 #: build/C/man2/chmod.2:281 build/C/man2/chown.2:269
2366 #: build/C/man2/truncate.2:178
2367 msgid "The named file resides on a read-only filesystem."
2368 msgstr "ファイルが読み込み専用 (read only) のファイルシステム上にある。"
2369
2370 #. type: Plain text
2371 #: build/C/man2/chmod.2:285
2372 msgid "The general errors for B<fchmod>()  are listed below:"
2373 msgstr "B<fchmod>()  で一般的なエラーを挙げる:"
2374
2375 #. type: Plain text
2376 #: build/C/man2/chmod.2:290
2377 msgid "The file descriptor I<fd> is not valid."
2378 msgstr "ファイルディスクリプター I<fd> が有効でない。"
2379
2380 #. type: Plain text
2381 #: build/C/man2/chmod.2:293 build/C/man2/chmod.2:296 build/C/man2/chmod.2:299
2382 #: build/C/man2/chown.2:282 build/C/man2/chown.2:285 build/C/man2/chown.2:288
2383 msgid "See above."
2384 msgstr "上記を参照。"
2385
2386 #. type: Plain text
2387 #: build/C/man2/chmod.2:306
2388 msgid ""
2389 "The same errors that occur for B<chmod>()  can also occur for "
2390 "B<fchmodat>().  The following additional errors can occur for B<fchmodat>():"
2391 msgstr ""
2392 "B<chmod>() で発生するのと同じエラーが B<fchmodat>() でも起こる。 "
2393 "B<fchmodat>() では以下のエラーも発生する。"
2394
2395 #. type: TP
2396 #: build/C/man2/chmod.2:320
2397 #, no-wrap
2398 msgid "B<ENOTSUP>"
2399 msgstr "B<ENOTSUP>"
2400
2401 #. type: Plain text
2402 #: build/C/man2/chmod.2:326
2403 msgid "I<flags> specified B<AT_SYMLINK_NOFOLLOW>, which is not supported."
2404 msgstr "I<flags> に対応していないフラグ B<AT_SYMLINK_NOFOLLOW> が指定された。"
2405
2406 #. type: Plain text
2407 #: build/C/man2/chmod.2:330
2408 msgid ""
2409 "B<fchmodat>()  was added to Linux in kernel 2.6.16; library support was "
2410 "added to glibc in version 2.4."
2411 msgstr ""
2412 "B<fchmodat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサ"
2413 "ポートはバージョン 2.4 以降の glibc で利用できる。"
2414
2415 #. type: Plain text
2416 #: build/C/man2/chmod.2:334
2417 msgid "B<chmod>(), B<fchmod>(): 4.4BSD, SVr4, POSIX.1-2001i, POSIX.1-2008."
2418 msgstr "B<chmod>(), B<fchmod>(): 4.4BSD, SVr4, POSIX.1-2001i, POSIX.1-2008."
2419
2420 #. type: Plain text
2421 #: build/C/man2/chmod.2:337
2422 msgid "B<fchmodat>(): POSIX.1-2008."
2423 msgstr "B<fchmodat>(): POSIX.1-2008."
2424
2425 #. type: Plain text
2426 #: build/C/man2/chmod.2:348
2427 msgid ""
2428 "The GNU C library B<fchmodat>()  wrapper function implements the POSIX-"
2429 "specified interface described in this page.  This interface differs from the "
2430 "underlying Linux system call, which does I<not> have a I<flags> argument."
2431 msgstr ""
2432 "GNU C ライブラリの B<fchmodat>() ラッパー関数は、このページで説明している "
2433 "POSIX で規定されたインターフェースを実装している。このインターフェースは、内"
2434 "部で呼ばれる Linux のシステムコールとは異なる。システムコールは I<flags> 引き"
2435 "数をI<持たない>。"
2436
2437 #. type: Plain text
2438 #: build/C/man2/chmod.2:361
2439 msgid ""
2440 "On older kernels where B<fchmodat>()  is unavailable, the glibc wrapper "
2441 "function falls back to the use of B<chmod>().  When I<pathname> is a "
2442 "relative pathname, glibc constructs a pathname based on the symbolic link in "
2443 "I</proc/self/fd> that corresponds to the I<dirfd> argument."
2444 msgstr ""
2445 "B<fchmodat>() が利用できない古いカーネルでは、 glibc ラッパー関数は "
2446 "B<chmod>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
2447 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
2448 "に基づいてパス名を構成する。"
2449
2450 #. type: Plain text
2451 #: build/C/man2/chmod.2:368
2452 msgid ""
2453 "B<chown>(2), B<execve>(2), B<open>(2), B<stat>(2), B<path_resolution>(7), "
2454 "B<symlink>(7)"
2455 msgstr ""
2456 "B<chown>(2), B<execve>(2), B<open>(2), B<stat>(2), B<path_resolution>(7), "
2457 "B<symlink>(7)"
2458
2459 #. type: TH
2460 #: build/C/man2/chown.2:38
2461 #, no-wrap
2462 msgid "CHOWN"
2463 msgstr "CHOWN"
2464
2465 #. type: Plain text
2466 #: build/C/man2/chown.2:41
2467 msgid "chown, fchown, lchown, fchownat - change ownership of a file"
2468 msgstr "chown, fchown, lchown, fchownat - ファイルの所有者を変更する"
2469
2470 #. type: Plain text
2471 #: build/C/man2/chown.2:46
2472 #, no-wrap
2473 msgid "B<int chown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2474 msgstr "B<int chown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2475
2476 #. type: Plain text
2477 #: build/C/man2/chown.2:48
2478 #, no-wrap
2479 msgid "B<int fchown(int >I<fd>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2480 msgstr "B<int fchown(int >I<fd>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2481
2482 #. type: Plain text
2483 #: build/C/man2/chown.2:50
2484 #, no-wrap
2485 msgid "B<int lchown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2486 msgstr "B<int lchown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
2487
2488 #. type: Plain text
2489 #: build/C/man2/chown.2:56
2490 #, no-wrap
2491 msgid ""
2492 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
2493 "B<             uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
2494 msgstr ""
2495 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
2496 "B<             uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
2497
2498 #. type: Plain text
2499 #: build/C/man2/chown.2:66
2500 msgid "B<fchown>(), B<lchown>():"
2501 msgstr "B<fchown>(), B<lchown>():"
2502
2503 #. type: Plain text
2504 #: build/C/man2/chown.2:76
2505 msgid "B<fchownat>():"
2506 msgstr "B<fchownat>():"
2507
2508 #. type: Plain text
2509 #: build/C/man2/chown.2:96
2510 msgid ""
2511 "These system calls change the owner and group of a file.  The B<chown>(), "
2512 "B<fchown>(), and B<lchown>()  system calls differ only in how the file is "
2513 "specified:"
2514 msgstr ""
2515 "これらのシステムコールは、いずれもファイルの所有者 (owner) とグループを変更す"
2516 "る。システムコール B<chown>(), B<fchown>(), B<lchown>() 間の違いは、ファイル"
2517 "の指定の仕方だけである。"
2518
2519 #. type: Plain text
2520 #: build/C/man2/chown.2:101
2521 msgid ""
2522 "B<chown>()  changes the ownership of the file specified by I<pathname>, "
2523 "which is dereferenced if it is a symbolic link."
2524 msgstr ""
2525 "B<chown>()  は I<pathname> で指定されたファイルの所有権を変更する。 "
2526 "I<pathname> がシンボリックリンクの場合は、リンクの展開が行われる。"
2527
2528 #. type: Plain text
2529 #: build/C/man2/chown.2:105
2530 msgid ""
2531 "B<fchown>()  changes the ownership of the file referred to by the open file "
2532 "descriptor I<fd>."
2533 msgstr ""
2534 "B<fchown>()  はオープンされたファイルディスクリプター I<fd> により参照される"
2535 "ファイルの所有権を変更する。"
2536
2537 #. type: Plain text
2538 #: build/C/man2/chown.2:110
2539 msgid ""
2540 "B<lchown>()  is like B<chown>(), but does not dereference symbolic links."
2541 msgstr ""
2542 "B<lchown>()  は B<chown>()  と同じだが、シンボリックリンクを展開しない点が異"
2543 "なる。"
2544
2545 #. type: Plain text
2546 #: build/C/man2/chown.2:119
2547 msgid ""
2548 "Only a privileged process (Linux: one with the B<CAP_CHOWN> capability) may "
2549 "change the owner of a file.  The owner of a file may change the group of the "
2550 "file to any group of which that owner is a member.  A privileged process "
2551 "(Linux: with B<CAP_CHOWN>)  may change the group arbitrarily."
2552 msgstr ""
2553 "特権を持つプロセス (Linux では B<CAP_CHOWN> ケーパビリティ (capability) を持"
2554 "つプロセス) だけが ファイルの所有者を変更できる。 ファイルの所有者は、その所"
2555 "有者が属しているグループのいずれかに ファイルのグループを変更することができ"
2556 "る。 特権 (Linux では B<CAP_CHOWN>)  を持つプロセスは、任意のグループに変更で"
2557 "きる。"
2558
2559 #. type: Plain text
2560 #: build/C/man2/chown.2:125
2561 msgid ""
2562 "If the I<owner> or I<group> is specified as -1, then that ID is not changed."
2563 msgstr ""
2564 "I<owner> または I<group> に -1 が指定された場合、それらの ID は変更されない。"
2565
2566 #.  In Linux 2.0 kernels, superuser was like everyone else
2567 #.  In 2.2, up to 2.2.12, these bits were not cleared for superuser.
2568 #.  Since 2.2.13, superuser is once more like everyone else.
2569 #. type: Plain text
2570 #: build/C/man2/chown.2:145
2571 msgid ""
2572 "When the owner or group of an executable file are changed by an unprivileged "
2573 "user the B<S_ISUID> and B<S_ISGID> mode bits are cleared.  POSIX does not "
2574 "specify whether this also should happen when root does the B<chown>(); the "
2575 "Linux behavior depends on the kernel version.  In case of a non-group-"
2576 "executable file (i.e., one for which the B<S_IXGRP> bit is not set) the "
2577 "B<S_ISGID> bit indicates mandatory locking, and is not cleared by a "
2578 "B<chown>()."
2579 msgstr ""
2580 "非特権ユーザーにより実行ファイルの所有者またはグループが 変更された場合は "
2581 "B<S_ISUID> と B<ISGID> モードビットはクリアされる。 POSIX はこの動作やルート"
2582 "が B<chown>()  を行なった場合については特に指定されていない。 Linux における"
2583 "動作はカーネルのバージョンに依存する。 非グループ実行ファイル (B<S_IXGRP> "
2584 "ビットが設定されていないファイル) の場合には B<S_ISGID> ビットは強制ロック "
2585 "(mandatory locking) を意味している。 そしてそれは B<chown>()  ではクリアでき"
2586 "ない。"
2587
2588 #. type: SS
2589 #: build/C/man2/chown.2:145
2590 #, no-wrap
2591 msgid "fchownat()"
2592 msgstr "fchownat()"
2593
2594 #. type: Plain text
2595 #: build/C/man2/chown.2:151
2596 msgid ""
2597 "The B<fchownat>()  system call operates in exactly the same way as "
2598 "B<chown>(), except for the differences described here."
2599 msgstr ""
2600 "B<fchownat>() システムコールは B<chown>() と全く同様に動作するが、以下で説明"
2601 "する点が異なる。"
2602
2603 #. type: Plain text
2604 #: build/C/man2/chown.2:161
2605 msgid ""
2606 "If the pathname given in I<pathname> is relative, then it is interpreted "
2607 "relative to the directory referred to by the file descriptor I<dirfd> "
2608 "(rather than relative to the current working directory of the calling "
2609 "process, as is done by B<chown>()  for a relative pathname)."
2610 msgstr ""
2611 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
2612 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
2613 "(B<chown>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
2614 "ワーキングディレクトリに対する相対パスではない)。"
2615
2616 #. type: Plain text
2617 #: build/C/man2/chown.2:173
2618 msgid ""
2619 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
2620 "then I<pathname> is interpreted relative to the current working directory of "
2621 "the calling process (like B<chown>())."
2622 msgstr ""
2623 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
2624 "の場合、 (B<chown>() と同様に) I<pathname> は呼び出したプロセスのカレントワー"
2625 "キングディレクトリに対する相対パスと解釈される。"
2626
2627 #. type: Plain text
2628 #: build/C/man2/chown.2:184
2629 msgid ""
2630 "The I<flags> argument is a bit mask created by ORing together 0 or more of "
2631 "the following values;"
2632 msgstr ""
2633 "I<flags> 引き数は、以下に示す値の 0 個以上の OR (論理和) をとって作成される "
2634 "ビットマスクである。"
2635
2636 #. type: TP
2637 #: build/C/man2/chown.2:184
2638 #, no-wrap
2639 msgid "B<AT_EMPTY_PATH> (since Linux 2.6.39)"
2640 msgstr "B<AT_EMPTY_PATH> (Linux 2.6.39 以降)"
2641
2642 #.  commit 65cfc6722361570bfe255698d9cd4dccaf47570d
2643 #.  Before glibc 2.16, defining _ATFILE_SOURCE sufficed
2644 #. type: Plain text
2645 #: build/C/man2/chown.2:207
2646 msgid ""
2647 "If I<pathname> is an empty string, operate on the file referred to by "
2648 "I<dirfd> (which may have been obtained using the B<open>(2)  B<O_PATH> "
2649 "flag).  In this case, I<dirfd> can refer to any type of file, not just a "
2650 "directory.  If I<dirfd> is B<AT_FDCWD>, the call operates on the current "
2651 "working directory.  This flag is Linux-specific; define B<_GNU_SOURCE> to "
2652 "obtain its definition."
2653 msgstr ""
2654 "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して操作を行う "
2655 "(I<dirfd> は B<open>(2) B<O_PATH> フラグを使って取得することができる)。この場"
2656 "合、 I<dirfd> は、ディレクトリだけでなく、任意のタイプのファイルを参照するこ"
2657 "とができる。 I<dirfd> が B<AT_FDCWD> の場合、この呼び出しはカレントワーキング"
2658 "ディレクトリに対して操作を行う。このフラグは Linux 固有であり、その定義を得る"
2659 "には B<_GNU_SOURCE> を定義すること。"
2660
2661 #. type: Plain text
2662 #: build/C/man2/chown.2:219
2663 msgid ""
2664 "If I<pathname> is a symbolic link, do not dereference it: instead operate on "
2665 "the link itself, like B<lchown>().  (By default, B<fchownat>()  dereferences "
2666 "symbolic links, like B<chown>().)"
2667 msgstr ""
2668 "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、"
2669 "B<lchown>() 同様、リンク自身に対して操作を行う。(デフォルトでは "
2670 "B<fchownat>() は B<chown>() と同様にシンボリックリンクの展開を行う。)"
2671
2672 #. type: Plain text
2673 #: build/C/man2/chown.2:224
2674 msgid "See B<openat>(2)  for an explanation of the need for B<fchownat>()."
2675 msgstr "B<fchownat>() の必要性についての説明については B<openat>(2) を参照。"
2676
2677 #. type: Plain text
2678 #: build/C/man2/chown.2:236
2679 msgid "The more general errors for B<chown>()  are listed below."
2680 msgstr "B<chown>()  でごく一般的なエラーを以下に挙げる:"
2681
2682 #. type: Plain text
2683 #: build/C/man2/chown.2:266
2684 msgid ""
2685 "The calling process did not have the required permissions (see above) to "
2686 "change owner and/or group."
2687 msgstr ""
2688 "呼び出したプロセスに所有者またはグループ (もしくはその両方) を変更するために "
2689 "要求される許可 (上記を参照) がない。"
2690
2691 #. type: Plain text
2692 #: build/C/man2/chown.2:273
2693 msgid "The general errors for B<fchown>()  are listed below:"
2694 msgstr "B<fchown>()  で一般的なエラーを以下に挙げる:"
2695
2696 #. type: Plain text
2697 #: build/C/man2/chown.2:276
2698 msgid "The descriptor is not valid."
2699 msgstr "ディスクリプターが有効でない。"
2700
2701 #. type: Plain text
2702 #: build/C/man2/chown.2:279
2703 msgid "A low-level I/O error occurred while modifying the inode."
2704 msgstr "i ノード (inode) を変更する際に低レベル I/O エラーが発生した。"
2705
2706 #. type: Plain text
2707 #: build/C/man2/chown.2:295
2708 msgid ""
2709 "The same errors that occur for B<chown>()  can also occur for "
2710 "B<fchownat>().  The following additional errors can occur for B<fchownat>():"
2711 msgstr ""
2712 "B<chown>() で発生するのと同じエラーが B<fchownat>() でも起こる。 "
2713 "B<fchownat>() では以下のエラーも発生する。"
2714
2715 #. type: Plain text
2716 #: build/C/man2/chown.2:313
2717 msgid ""
2718 "B<fchownat>()  was added to Linux in kernel 2.6.16; library support was "
2719 "added to glibc in version 2.4."
2720 msgstr ""
2721 "B<fchownat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサ"
2722 "ポートはバージョン 2.4 以降の glibc で利用できる。"
2723
2724 #. type: Plain text
2725 #: build/C/man2/chown.2:318
2726 msgid ""
2727 "B<chown>(), B<fchown>(), B<lchown>(): 4.4BSD, SVr4, POSIX.1-2001, "
2728 "POSIX.1-2008."
2729 msgstr ""
2730 "B<chown>(), B<fchown>(), B<lchown>(): 4.4BSD, SVr4, POSIX.1-2001, "
2731 "POSIX.1-2008."
2732
2733 #.  chown():
2734 #.  SVr4 documents EINVAL, EINTR, ENOLINK and EMULTIHOP returns, but no
2735 #.  ENOMEM.  POSIX.1 does not document ENOMEM or ELOOP error conditions.
2736 #.  fchown():
2737 #.  SVr4 documents additional EINVAL, EIO, EINTR, and ENOLINK
2738 #.  error conditions.
2739 #. type: Plain text
2740 #: build/C/man2/chown.2:327
2741 msgid ""
2742 "The 4.4BSD version can be used only by the superuser (that is, ordinary "
2743 "users cannot give away files)."
2744 msgstr ""
2745 "4.4BSD 版ではスーパーユーザーのみが使用できる (つまり、普通のユーザーはファイ"
2746 "ルを手放すことはできない)。"
2747
2748 #. type: Plain text
2749 #: build/C/man2/chown.2:330
2750 msgid "B<fchownat>(): POSIX.1-2008."
2751 msgstr "B<fchownat>(): POSIX.1-2008."
2752
2753 #. type: SS
2754 #: build/C/man2/chown.2:331
2755 #, no-wrap
2756 msgid "Ownership of new files"
2757 msgstr "新しいファイルの所有権"
2758
2759 #. type: Plain text
2760 #: build/C/man2/chown.2:353
2761 msgid ""
2762 "When a new file is created (by, for example, B<open>(2)  or B<mkdir>(2)), "
2763 "its owner is made the same as the filesystem user ID of the creating "
2764 "process.  The group of the file depends on a range of factors, including the "
2765 "type of filesystem, the options used to mount the filesystem, and whether or "
2766 "not the set-group-ID permission bit is enabled on the parent directory.  If "
2767 "the filesystem supports the I<-o\\ grpid> (or, synonymously I<-o\\ "
2768 "bsdgroups>)  and I<-o\\ nogrpid> (or, synonymously I<-o\\ sysvgroups>)  "
2769 "B<mount>(8)  options, then the rules are as follows:"
2770 msgstr ""
2771 "(B<open>(2)  や B<mkdir>(2)  などにより) 新しいファイルが作成されるとき、 そ"
2772 "の所有者は呼び出したプロセスのファイルシステムユーザー ID と 同じに設定され"
2773 "る。 そのファイルのグループはいくつかの要因により決定される。 その要因として"
2774 "は、 ファイルシステムの種類、そのファイルシステムのマウント時に 使用されたオ"
2775 "プション、親ディレクトリで set-group-ID 許可ビットが 有効になっているどうか、"
2776 "がある。 ファイルシステムが B<mount>(8)  オプションの I<-o\\ grpid> (I<-o\\ "
2777 "bsdgroups> も同義語) と I<-o\\ nogrpid> (I<-o sysvgroups> も同義語) に対応し"
2778 "ている場合、ルールは以下の通りとなる。"
2779
2780 #. type: Plain text
2781 #: build/C/man2/chown.2:358
2782 msgid ""
2783 "If the filesystem is mounted with I<-o\\ grpid>, then the group of a new "
2784 "file is made the same as that of the parent directory."
2785 msgstr ""
2786 "ファイルシステムが I<-o\\ grpid> 付きでマウントされている場合、新しいファイル"
2787 "のグループは 親ディレクトリのグループと同じになる。"
2788
2789 #. type: Plain text
2790 #: build/C/man2/chown.2:364
2791 msgid ""
2792 "If the filesystem is mounted with I<-o\\ nogrpid> and the set-group-ID bit "
2793 "is disabled on the parent directory, then the group of a new file is made "
2794 "the same as the process's filesystem GID."
2795 msgstr ""
2796 "ファイルシステムが I<-o\\ nogrpid> 付きでマウントされており、親ディレクトリで"
2797 "は set-group-ID ビットが 無効になっている場合、新しいファイルのグループは プ"
2798 "ロセスのファイルシステム GID と同じになる。"
2799
2800 #. type: Plain text
2801 #: build/C/man2/chown.2:370
2802 msgid ""
2803 "If the filesystem is mounted with I<-o\\ nogrpid> and the set-group-ID bit "
2804 "is enabled on the parent directory, then the group of a new file is made the "
2805 "same as that of the parent directory."
2806 msgstr ""
2807 "ファイルシステムが I<-o\\ nogrpid> 付きでマウントされており、親ディレクトリで"
2808 "は set-group-ID ビットが 有効になっている場合、新しいファイルのグループは 親"
2809 "ディレクトリのグループと同じになる。"
2810
2811 #. type: Plain text
2812 #: build/C/man2/chown.2:380
2813 msgid ""
2814 "As at Linux 2.6.25, the I<-o\\ grpid> and I<-o\\ nogrpid> mount options are "
2815 "supported by ext2, ext3, ext4, and XFS.  Filesystems that don't support "
2816 "these mount options follow the I<-o\\ nogrpid> rules."
2817 msgstr ""
2818 "Linux 2.6.25 では、マウントオプション I<-o\\ grpid> と I<-o\\ nogrpid> に対応"
2819 "しているファイルシステムは ext2, ext3, ext4, XFS である。 これらのマウントオ"
2820 "プションに対応していないファイルシステムでは、 I<-o\\ nogrpid> に関するルール"
2821 "が適用される。"
2822
2823 #. type: Plain text
2824 #: build/C/man2/chown.2:395
2825 msgid ""
2826 "On older kernels where B<fchownat>()  is unavailable, the glibc wrapper "
2827 "function falls back to the use of B<chown>()  and B<lchown>().  When "
2828 "I<pathname> is a relative pathname, glibc constructs a pathname based on the "
2829 "symbolic link in I</proc/self/fd> that corresponds to the I<dirfd> argument."
2830 msgstr ""
2831 "B<fchownat>() が利用できない古いカーネルでは、 glibc ラッパー関数は "
2832 "B<chown>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
2833 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
2834 "に基づいてパス名を構成する。"
2835
2836 #. type: SS
2837 #: build/C/man2/chown.2:395
2838 #, no-wrap
2839 msgid "NFS"
2840 msgstr "NFS"
2841
2842 #. type: Plain text
2843 #: build/C/man2/chown.2:408
2844 msgid ""
2845 "The B<chown>()  semantics are deliberately violated on NFS filesystems which "
2846 "have UID mapping enabled.  Additionally, the semantics of all system calls "
2847 "which access the file contents are violated, because B<chown>()  may cause "
2848 "immediate access revocation on already open files.  Client side caching may "
2849 "lead to a delay between the time where ownership have been changed to allow "
2850 "access for a user and the time where the file can actually be accessed by "
2851 "the user on other clients."
2852 msgstr ""
2853 "B<chown>()  方式は UID マッピングを使用した NFS ファイルシステムを侵害する。 "
2854 "さらにファイルの内容にアクセスする全てのシステムコールを侵害する。 これは "
2855 "B<chown>()  が既にオープンされたファイルに対する アクセスをただちに取り消すこ"
2856 "とによる。 クライアント側のキャッシュにより所有権が変更されて ユーザーのアク"
2857 "セスが許した時点と、実際に他のクライアントでユーザーによって ファイルにアクセ"
2858 "スできる時点との間に時間差があるかもしれない。"
2859
2860 #. type: SS
2861 #: build/C/man2/chown.2:408
2862 #, no-wrap
2863 msgid "Historical details"
2864 msgstr "歴史的な詳細"
2865
2866 #. type: Plain text
2867 #: build/C/man2/chown.2:427
2868 msgid ""
2869 "The original Linux B<chown>(), B<fchown>(), and B<lchown>()  system calls "
2870 "supported only 16-bit user and group IDs.  Subsequently, Linux 2.4 added "
2871 "B<chown32>(), B<fchown32>(), and B<lchown32>(), supporting 32-bit IDs.  The "
2872 "glibc B<chown>(), B<fchown>(), and B<lchown>()  wrapper functions "
2873 "transparently deal with the variations across kernel versions."
2874 msgstr ""
2875 "元々の Linux の B<chown>(), B<fchown>(), B<lchown>() システムコールは、\n"
2876 "16 ビットのユーザー ID とグループ ID だけに対応していた。\n"
2877 "その後、 32 ビットの ID に対応した B<chown32>(), B<fchown32>(), "
2878 "B<lchown32>()\n"
2879 "が Linux 2.4 で追加された。\n"
2880 "B<chown>(), B<fchown>(), and B<lchown>() の glibc のラッパー関数は、\n"
2881 "カーネルのバージョンによる違いを吸収している。"
2882
2883 #. type: Plain text
2884 #: build/C/man2/chown.2:442
2885 msgid ""
2886 "In versions of Linux prior to 2.1.81 (and distinct from 2.1.46), B<chown>()  "
2887 "did not follow symbolic links.  Since Linux 2.1.81, B<chown>()  does follow "
2888 "symbolic links, and there is a new system call B<lchown>()  that does not "
2889 "follow symbolic links.  Since Linux 2.1.86, this new call (that has the same "
2890 "semantics as the old B<chown>())  has got the same syscall number, and "
2891 "B<chown>()  got the newly introduced number."
2892 msgstr ""
2893 "Linux の 2.1.81 より前のバージョン (特に 2.1.46 以前) では、 B<chown>()  はシ"
2894 "ンボリックリンクを追跡しない。 Linux 2.1.81 以降では B<chown>()  はシンボリッ"
2895 "クリンクを追跡し、新たなシステムコール B<lchown>()  はシンボリックリンクを追"
2896 "跡しない。 Linux 2.1.86 以降ではこの新しいコール (古い B<chown>()  と全く同じ"
2897 "動作を行なう) は同じシステムコール番号を持ち B<chown>()  は新しく導入された番"
2898 "号を持つ。"
2899
2900 #. type: Plain text
2901 #: build/C/man2/chown.2:451
2902 msgid ""
2903 "The following program changes the ownership of the file named in its second "
2904 "command-line argument to the value specified in its first command-line "
2905 "argument.  The new owner can be specified either as a numeric user ID, or as "
2906 "a username (which is converted to a user ID by using B<getpwnam>(3)  to "
2907 "perform a lookup in the system password file)."
2908 msgstr ""
2909 "以下のプログラムは、 二つ目のコマンドライン引き数で指定された名前のファイルの"
2910 "所有者を、 一つ目のコマンドライン引き数で指定された値に変更する。 新しい所有"
2911 "者は、数字のユーザー ID かユーザー名のいずれかで指定できる (ユーザー名で指定"
2912 "した場合には、 B<getpwnam>(3)  を使ってシステムのパスワードファイルの検索が行"
2913 "われ、 ユーザー ID への変換が行われる)。"
2914
2915 #. type: SS
2916 #: build/C/man2/chown.2:451
2917 #, no-wrap
2918 msgid "Program source"
2919 msgstr "プログラムのソース"
2920
2921 #. type: Plain text
2922 #: build/C/man2/chown.2:457
2923 #, no-wrap
2924 msgid ""
2925 "#include E<lt>pwd.hE<gt>\n"
2926 "#include E<lt>stdio.hE<gt>\n"
2927 "#include E<lt>stdlib.hE<gt>\n"
2928 "#include E<lt>unistd.hE<gt>\n"
2929 msgstr ""
2930 "#include E<lt>pwd.hE<gt>\n"
2931 "#include E<lt>stdio.hE<gt>\n"
2932 "#include E<lt>stdlib.hE<gt>\n"
2933 "#include E<lt>unistd.hE<gt>\n"
2934
2935 #. type: Plain text
2936 #: build/C/man2/chown.2:464
2937 #, no-wrap
2938 msgid ""
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 msgstr ""
2946 "int\n"
2947 "main(int argc, char *argv[])\n"
2948 "{\n"
2949 "    uid_t uid;\n"
2950 "    struct passwd *pwd;\n"
2951 "    char *endptr;\n"
2952
2953 #. type: Plain text
2954 #: build/C/man2/chown.2:469
2955 #, no-wrap
2956 msgid ""
2957 "    if (argc != 3 || argv[1][0] == \\(aq\\e0\\(aq) {\n"
2958 "        fprintf(stderr, \"%s E<lt>ownerE<gt> E<lt>fileE<gt>\\en\", argv[0]);\n"
2959 "        exit(EXIT_FAILURE);\n"
2960 "    }\n"
2961 msgstr ""
2962 "    if (argc != 3 || argv[1][0] == \\(aq\\e0\\(aq) {\n"
2963 "        fprintf(stderr, \"%s E<lt>ownerE<gt> E<lt>fileE<gt>\\en\", argv[0]);\n"
2964 "        exit(EXIT_FAILURE);\n"
2965 "    }\n"
2966
2967 #. type: Plain text
2968 #: build/C/man2/chown.2:471
2969 #, no-wrap
2970 msgid "    uid = strtol(argv[1], &endptr, 10);  /* Allow a numeric string */\n"
2971 msgstr "    uid = strtol(argv[1], &endptr, 10);  /* Allow a numeric string */\n"
2972
2973 #. type: Plain text
2974 #: build/C/man2/chown.2:478
2975 #, no-wrap
2976 msgid ""
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 msgstr ""
2984 "    if (*endptr != \\(aq\\e0\\(aq) {         /* Was not pure numeric string */\n"
2985 "        pwd = getpwnam(argv[1]);   /* Try getting UID for username */\n"
2986 "        if (pwd == NULL) {\n"
2987 "            perror(\"getpwnam\");\n"
2988 "            exit(EXIT_FAILURE);\n"
2989 "        }\n"
2990
2991 #. type: Plain text
2992 #: build/C/man2/chown.2:481
2993 #, no-wrap
2994 msgid ""
2995 "        uid = pwd-E<gt>pw_uid;\n"
2996 "    }\n"
2997 msgstr ""
2998 "        uid = pwd-E<gt>pw_uid;\n"
2999 "    }\n"
3000
3001 #. type: Plain text
3002 #: build/C/man2/chown.2:486
3003 #, no-wrap
3004 msgid ""
3005 "    if (chown(argv[2], uid, -1) == -1) {\n"
3006 "        perror(\"chown\");\n"
3007 "        exit(EXIT_FAILURE);\n"
3008 "    }\n"
3009 msgstr ""
3010 "    if (chown(argv[2], uid, -1) == -1) {\n"
3011 "        perror(\"chown\");\n"
3012 "        exit(EXIT_FAILURE);\n"
3013 "    }\n"
3014
3015 #. type: Plain text
3016 #: build/C/man2/chown.2:489 build/C/man2/execve.2:677
3017 #: build/C/man3/getopt.3:430 build/C/man3/getopt.3:515
3018 #, no-wrap
3019 msgid ""
3020 "    exit(EXIT_SUCCESS);\n"
3021 "}\n"
3022 msgstr ""
3023 "    exit(EXIT_SUCCESS);\n"
3024 "}\n"
3025
3026 #. type: Plain text
3027 #: build/C/man2/chown.2:495
3028 msgid "B<chmod>(2), B<flock>(2), B<path_resolution>(7), B<symlink>(7)"
3029 msgstr "B<chmod>(2), B<flock>(2), B<path_resolution>(7), B<symlink>(7)"
3030
3031 #. type: TH
3032 #: build/C/man2/chroot.2:33
3033 #, no-wrap
3034 msgid "CHROOT"
3035 msgstr "CHROOT"
3036
3037 #. type: TH
3038 #: build/C/man2/chroot.2:33 build/C/man3/gethostid.3:29
3039 #, no-wrap
3040 msgid "2010-09-20"
3041 msgstr "2010-09-20"
3042
3043 #. type: Plain text
3044 #: build/C/man2/chroot.2:36
3045 msgid "chroot - change root directory"
3046 msgstr "chroot - ルートディレクトリを変更する"
3047
3048 #. type: Plain text
3049 #: build/C/man2/chroot.2:40
3050 msgid "B<int chroot(const char *>I<path>B<);>"
3051 msgstr "B<int chroot(const char *>I<path>B<);>"
3052
3053 #. type: Plain text
3054 #: build/C/man2/chroot.2:47
3055 msgid "B<chroot>():"
3056 msgstr "B<chroot>():"
3057
3058 #. type: TP
3059 #: build/C/man2/chroot.2:50
3060 #, no-wrap
3061 msgid "Since glibc 2.2.2:"
3062 msgstr "glibc 2.2.2 以降:"
3063
3064 #. type: Plain text
3065 #: build/C/man2/chroot.2:57
3066 #, no-wrap
3067 msgid ""
3068 "_BSD_SOURCE ||\n"
3069 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
3070 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
3071 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
3072 msgstr ""
3073 "_BSD_SOURCE ||\n"
3074 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
3075 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
3076 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
3077
3078 #. type: Plain text
3079 #: build/C/man2/chroot.2:60
3080 msgid "Before glibc 2.2.2: none"
3081 msgstr "glibc 2.2.2 より前: なし"
3082
3083 #. type: Plain text
3084 #: build/C/man2/chroot.2:69
3085 msgid ""
3086 "B<chroot>()  changes the root directory of the calling process to that "
3087 "specified in I<path>.  This directory will be used for pathnames beginning "
3088 "with I</>.  The root directory is inherited by all children of the calling "
3089 "process."
3090 msgstr ""
3091 "B<chroot>()  は、呼び出し元プロセスのルートディレクトリを I<path> で指定され"
3092 "たディレクトリに変更する。 このディレクトリ以下が I</> から始まるパス名として"
3093 "使われる。 このルートディレクトリは呼び出し元のプロセスの全ての子プロセスに受"
3094 "け継がれる。"
3095
3096 #. type: Plain text
3097 #: build/C/man2/chroot.2:74
3098 msgid ""
3099 "Only a privileged process (Linux: one with the B<CAP_SYS_CHROOT> capability) "
3100 "may call B<chroot>()."
3101 msgstr ""
3102 "特権プロセス (Linux では、 B<CAP_SYS_CHROOT> ケーパビリティを持つプロセス) の"
3103 "みが B<chroot>()  を呼び出すことができる。"
3104
3105 #. type: Plain text
3106 #: build/C/man2/chroot.2:77
3107 msgid ""
3108 "This call changes an ingredient in the pathname resolution process and does "
3109 "nothing else."
3110 msgstr ""
3111 "このコールはパス名解決の過程で構成要素を変更するのみで、 その他には何も行わな"
3112 "い。"
3113
3114 #. type: Plain text
3115 #: build/C/man2/chroot.2:83
3116 msgid ""
3117 "This call does not change the current working directory, so that after the "
3118 "call \\(aqI<.>\\(aq can be outside the tree rooted at \\(aqI</>\\(aq.  In "
3119 "particular, the superuser can escape from a \"chroot jail\" by doing:"
3120 msgstr ""
3121 "このコールは現在の作業ディレクトリ (working directory) を変更しない。 そのた"
3122 "め、このコールの後に \\(aqI<.>\\(aq が \\(aqI</>\\(aq を 根とするツリーの外に"
3123 "なる場合がある。 特に、スーパーユーザーは以下のようにすることで \"chroot jail"
3124 "\" から逃げ出せてしまう。"
3125
3126 #. type: Plain text
3127 #: build/C/man2/chroot.2:86
3128 #, no-wrap
3129 msgid "    mkdir foo; chroot foo; cd ..\n"
3130 msgstr "    mkdir foo; chroot foo; cd ..\n"
3131
3132 #. type: Plain text
3133 #: build/C/man2/chroot.2:90
3134 msgid ""
3135 "This call does not close open file descriptors, and such file descriptors "
3136 "may allow access to files outside the chroot tree."
3137 msgstr ""
3138 "このコールはオープンファイルディスクリプターをクローズしないので、 このような"
3139 "ファイルディスクリプターは chroot ツリーの外にある ファイルにアクセスできる。"
3140
3141 #. type: Plain text
3142 #: build/C/man2/chroot.2:98
3143 msgid ""
3144 "Depending on the filesystem, other errors can be returned.  The more general "
3145 "errors are listed below:"
3146 msgstr ""
3147 "ファイルシステムによっては他のエラーが返される事がある。 一般的なエラーを以下"
3148 "に挙げる:"
3149
3150 #. type: Plain text
3151 #: build/C/man2/chroot.2:134
3152 msgid "The caller has insufficient privilege."
3153 msgstr "呼び出し側に十分な特権がない。"
3154
3155 #.  SVr4 documents additional EINTR, ENOLINK and EMULTIHOP error conditions.
3156 #.  X/OPEN does not document EIO, ENOMEM or EFAULT error conditions.
3157 #. type: Plain text
3158 #: build/C/man2/chroot.2:139
3159 msgid ""
3160 "SVr4, 4.4BSD, SUSv2 (marked LEGACY).  This function is not part of "
3161 "POSIX.1-2001."
3162 msgstr ""
3163 "SVr4, 4.4BSD, SUSv2 (但し、SUSv2 では過去の名残とされている)。 この関数は "
3164 "POSIX.1-2001 にはない。"
3165
3166 #. type: Plain text
3167 #: build/C/man2/chroot.2:145
3168 msgid ""
3169 "A child process created via B<fork>(2)  inherits its parent's root "
3170 "directory.  The root directory is left unchanged by B<execve>(2)."
3171 msgstr ""
3172 "B<fork>(2)  で作成された子プロセスは、 親プロセスのルートディレクトリを継承す"
3173 "る。 B<execve>(2)  の場合も、ルートディレクトリは変更されない。"
3174
3175 #.  FIXME . eventually say something about containers,
3176 #.  virtual servers, etc.?
3177 #. type: Plain text
3178 #: build/C/man2/chroot.2:151
3179 msgid "FreeBSD has a stronger B<jail>()  system call."
3180 msgstr "FreeBSD にはより強力な B<jail>()  システムコールがある。"
3181
3182 #. type: Plain text
3183 #: build/C/man2/chroot.2:154
3184 msgid "B<chdir>(2), B<path_resolution>(7)"
3185 msgstr "B<chdir>(2), B<path_resolution>(7)"
3186
3187 #. type: TH
3188 #: build/C/man2/close.2:35
3189 #, no-wrap
3190 msgid "CLOSE"
3191 msgstr "CLOSE"
3192
3193 #. type: TH
3194 #: build/C/man2/close.2:35
3195 #, no-wrap
3196 msgid "2013-12-30"
3197 msgstr "2013-12-30"
3198
3199 #. type: Plain text
3200 #: build/C/man2/close.2:38
3201 msgid "close - close a file descriptor"
3202 msgstr "close - ファイルディスクリプターをクローズする"
3203
3204 #. type: Plain text
3205 #: build/C/man2/close.2:43
3206 #, no-wrap
3207 msgid "B<int close(int >I<fd>B<);>\n"
3208 msgstr "B<int close(int >I<fd>B<);>\n"
3209
3210 #. type: Plain text
3211 #: build/C/man2/close.2:53
3212 msgid ""
3213 "B<close>()  closes a file descriptor, so that it no longer refers to any "
3214 "file and may be reused.  Any record locks (see B<fcntl>(2))  held on the "
3215 "file it was associated with, and owned by the process, are removed "
3216 "(regardless of the file descriptor that was used to obtain the lock)."
3217 msgstr ""
3218 "B<close>()  は、ファイルディスクリプターをクローズする。 そのディスクリプター"
3219 "は、どのファイルも参照していない状態になり、 再利用が可能になる。 そのファイ"
3220 "ルディスクリプターに関連づけられたファイルに かけられたレコードロック "
3221 "(B<fcntl>(2)  参照) のうち、そのプロセスが保有しているものは、 (そのファイル"
3222 "ディスクリプターがロック取得に利用されたか どうかによらず) すべて削除される。"
3223
3224 #. type: Plain text
3225 #: build/C/man2/close.2:64
3226 msgid ""
3227 "If I<fd> is the last file descriptor referring to the underlying open file "
3228 "description (see B<open>(2)), the resources associated with the open file "
3229 "description are freed; if the descriptor was the last reference to a file "
3230 "which has been removed using B<unlink>(2), the file is deleted."
3231 msgstr ""
3232 "I<fd> が、対応するオープンファイル記述 (open file description)  (B<open>(2)  "
3233 "参照) を参照する最後のファイルディスクリプターだった場合、 オープンファイル記"
3234 "述に関連するリソースが解放される。 そのディスクリプターが、 B<unlink> を使用"
3235 "して削除 (remove) されたファイルに対する最後の参照だった場合には、 そのファイ"
3236 "ルは削除 (delete) される。"
3237
3238 #. type: Plain text
3239 #: build/C/man2/close.2:70
3240 msgid ""
3241 "B<close>()  returns zero on success.  On error, -1 is returned, and I<errno> "
3242 "is set appropriately."
3243 msgstr ""
3244 "B<close>()  は成功した場合は 0 を返す。 エラーが発生した場合は -1 を返して、 "
3245 "I<errno> を適切に設定する。"
3246
3247 #. type: Plain text
3248 #: build/C/man2/close.2:75
3249 msgid "I<fd> isn't a valid open file descriptor."
3250 msgstr "I<fd> が有効なオープンされたディスクリプターでない。"
3251
3252 #. type: TP
3253 #: build/C/man2/close.2:75 build/C/man2/dup.2:176 build/C/man2/fcntl.2:1531
3254 #: build/C/man2/fcntl.2:1540 build/C/man2/flock.2:122
3255 #: build/C/man2/truncate.2:134 build/C/man3/ualarm.3:85
3256 #: build/C/man3/usleep.3:83
3257 #, no-wrap
3258 msgid "B<EINTR>"
3259 msgstr "B<EINTR>"
3260
3261 #. type: Plain text
3262 #: build/C/man2/close.2:81
3263 msgid "The B<close>()  call was interrupted by a signal; see B<signal>(7)."
3264 msgstr ""
3265 "B<close>()  コールがシグナルにより中断 (interrupt) された。 B<signal>(7)  参"
3266 "照。"
3267
3268 #. type: Plain text
3269 #: build/C/man2/close.2:87 build/C/man2/fork.2:228 build/C/man3/swab.3:79
3270 #: build/C/man2/umask.2:97
3271 msgid "SVr4, 4.3BSD, POSIX.1-2001."
3272 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
3273
3274 #. type: Plain text
3275 #: build/C/man2/close.2:107
3276 #, fuzzy
3277 #| msgid ""
3278 #| "Not checking the return value of B<close>()  is a common but nevertheless "
3279 #| "serious programming error.  It is quite possible that errors on a "
3280 #| "previous B<write>(2)  operation are first reported at the final "
3281 #| "B<close>().  Not checking the return value when closing the file may lead "
3282 #| "to silent loss of data.  This can especially be observed with NFS and "
3283 #| "with disk quota.  Note that the return value should only be used for "
3284 #| "diagnostics.  In particular B<close>()  should not be retried after an "
3285 #| "B<EINTR> since this may cause a reused descriptor from another thread to "
3286 #| "be closed."
3287 msgid ""
3288 "Not checking the return value of B<close>()  is a common but nevertheless "
3289 "serious programming error.  It is quite possible that errors on a previous "
3290 "B<write>(2)  operation are first reported at the final B<close>().  Not "
3291 "checking the return value when closing the file may lead to silent loss of "
3292 "data.  This can especially be observed with NFS and with disk quota.  Note "
3293 "that the return value should be used only for diagnostics.  In particular "
3294 "B<close>()  should not be retried after an B<EINTR> since this may cause a "
3295 "reused descriptor from another thread to be closed."
3296 msgstr ""
3297 "B<close>()  の返り値のチェックはよく省略されるが、 これは深刻なプログラミング"
3298 "エラーである。 前の B<write>(2)  処理に関するエラーが最後の B<close>()  のと"
3299 "きになって初めて通知される場合がありうる。 ファイルクローズの際に返り値を"
3300 "チェックしないと、 気付かないうちにデータを失ってしまうかもしれない。 これは"
3301 "特に NFS やディスククォータを使用した場合に見られる。返り値は状態確認用にのみ"
3302 "利用すべき点に注意すること。特に、B<EINTR> 後に B<close>() を再度行うべきでは"
3303 "ない。なぜなら、これにより、別のスレッドが再利用したディスクリプターをクロー"
3304 "ズしてしまう可能性があるからだ。"
3305
3306 #. type: Plain text
3307 #: build/C/man2/close.2:116
3308 msgid ""
3309 "A successful close does not guarantee that the data has been successfully "
3310 "saved to disk, as the kernel defers writes.  It is not common for a "
3311 "filesystem to flush the buffers when the stream is closed.  If you need to "
3312 "be sure that the data is physically stored, use B<fsync>(2).  (It will "
3313 "depend on the disk hardware at this point.)"
3314 msgstr ""
3315 "クローズに成功しても、データがディスクに保存されたかどうかは 保証されない "
3316 "(カーネルが書きこみを遅延させることがあるためである)。 ストリームがクローズさ"
3317 "れるときにバッファーをフラッシュするかどうかは、 ファイルシステムによって異な"
3318 "る。 データが物理的に保存されることを保証する必要がある場合には、 "
3319 "B<fsync>(2)  を使用すること (B<fsync>(3)  を行った時点で、データの保存はディ"
3320 "スクのハードウェアに依存する 問題となる)。"
3321
3322 #.  Date: Tue, 4 Sep 2007 13:57:35 +0200
3323 #.  From: Fredrik Noring <noring@nocrew.org>
3324 #.  One such race involves signals and ERESTARTSYS. If a file descriptor
3325 #.  in use by a system call is closed and then reused by e.g. an
3326 #.  independent open() in some unrelated thread, before the original system
3327 #.  call has restarted after ERESTARTSYS, the original system call will
3328 #.  later restart with the reused file descriptor. This is most likely a
3329 #.  serious programming error.
3330 #. type: Plain text
3331 #: build/C/man2/close.2:131
3332 msgid ""
3333 "It is probably unwise to close file descriptors while they may be in use by "
3334 "system calls in other threads in the same process.  Since a file descriptor "
3335 "may be reused, there are some obscure race conditions that may cause "
3336 "unintended side effects."
3337 msgstr ""
3338 "同じプロセス内の他のスレッドのシステムコールが使用している可能性がある間に、 "
3339 "ファイルディスクリプターをクローズするのは、おそらく賢明ではないだろう。 ファ"
3340 "イルディスクリプターは再利用されるかもしれないので、 あいまいな競合条件となる"
3341 "ことがあり、意図しない副作用の原因となりうる。"
3342
3343 #. type: Plain text
3344 #: build/C/man2/close.2:138
3345 msgid ""
3346 "B<fcntl>(2), B<fsync>(2), B<open>(2), B<shutdown>(2), B<unlink>(2), "
3347 "B<fclose>(3)"
3348 msgstr ""
3349 "B<fcntl>(2), B<fsync>(2), B<open>(2), B<shutdown>(2), B<unlink>(2), "
3350 "B<fclose>(3)"
3351
3352 #. type: TH
3353 #: build/C/man3/confstr.3:32
3354 #, no-wrap
3355 msgid "CONFSTR"
3356 msgstr "CONFSTR"
3357
3358 #. type: TH
3359 #: build/C/man3/confstr.3:32
3360 #, no-wrap
3361 msgid "2014-03-20"
3362 msgstr "2014-03-20"
3363
3364 #. type: TH
3365 #: build/C/man3/confstr.3:32 build/C/man3/daemon.3:36 build/C/man3/exec.3:41
3366 #: build/C/man3/fpathconf.3:41 build/C/man3/get_nprocs_conf.3:26
3367 #: build/C/man3/getcwd.3:32 build/C/man3/getlogin.3:28
3368 #: build/C/man3/getopt.3:41 build/C/man3/getumask.3:28
3369 #: build/C/man3/getusershell.3:30 build/C/man3/lockf.3:28
3370 #: build/C/man3/sleep.3:26 build/C/man3/sysconf.3:27
3371 #: build/C/man3/tcgetpgrp.3:25
3372 #, no-wrap
3373 msgid "GNU"
3374 msgstr "GNU"
3375
3376 #. type: Plain text
3377 #: build/C/man3/confstr.3:35
3378 msgid "confstr - get configuration dependent string variables"
3379 msgstr "confstr - コンフィグレーションに依存した文字列変数の取得"
3380
3381 #. type: Plain text
3382 #: build/C/man3/confstr.3:40
3383 #, no-wrap
3384 msgid "B<size_t confstr(int >I<name>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
3385 msgstr "B<size_t confstr(int >I<name>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
3386
3387 #. type: Plain text
3388 #: build/C/man3/confstr.3:49
3389 msgid "B<confstr>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
3390 msgstr "B<confstr>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
3391
3392 #. type: Plain text
3393 #: build/C/man3/confstr.3:52
3394 msgid ""
3395 "B<confstr>()  gets the value of configuration-dependent string variables."
3396 msgstr ""
3397 "B<confstr>()  はコンフィグレーションに依存した文字列変数の値を取得する。"
3398
3399 #. type: Plain text
3400 #: build/C/man3/confstr.3:57
3401 msgid ""
3402 "The I<name> argument is the system variable to be queried.  The following "
3403 "variables are supported:"
3404 msgstr ""
3405 "引き数 I<name> は、問い合わせ内容を表すシステム変数である。 以下の変数がサ"
3406 "ポートされている。"
3407
3408 #. type: TP
3409 #: build/C/man3/confstr.3:57
3410 #, no-wrap
3411 msgid "B<_CS_GNU_LIBC_VERSION> (GNU C library only; since glibc 2.3.2)"
3412 msgstr "B<_CS_GNU_LIBC_VERSION> (GNU C library 限定; glibc 2.3.2 以降)"
3413
3414 #. type: Plain text
3415 #: build/C/man3/confstr.3:61
3416 msgid ""
3417 "A string which identifies the GNU C library version on this system (e.g, "
3418 "\"glibc 2.3.4\")."
3419 msgstr ""
3420 "そのシステムの GNU C ライブラリのバージョンを示す文字列 (例えば \"glibc "
3421 "2.3.4\")。"
3422
3423 #. type: TP
3424 #: build/C/man3/confstr.3:61
3425 #, no-wrap
3426 msgid "B<_CS_GNU_LIBPTHREAD_VERSION> (GNU C library only; since glibc 2.3.2)"
3427 msgstr "B<_CS_GNU_LIBPTHREAD_VERSION> (GNU C library 限定; glibc 2.3.2 以降)"
3428
3429 #. type: Plain text
3430 #: build/C/man3/confstr.3:65
3431 msgid ""
3432 "A string which identifies the POSIX implementation supplied by this C "
3433 "library (e.g, \"NPTL 2.3.4\" or \"linuxthreads-0.10\")."
3434 msgstr ""
3435 "その C ライブラリが提供している POSIX 実装を示す文字列 (例えば \"NPTL "
3436 "2.3.4\" や \"linuxthreads-0.10\")。"
3437
3438 #. type: TP
3439 #: build/C/man3/confstr.3:65
3440 #, no-wrap
3441 msgid "B<_CS_PATH>"
3442 msgstr "B<_CS_PATH>"
3443
3444 #. type: Plain text
3445 #: build/C/man3/confstr.3:71
3446 msgid ""
3447 "A value for the B<PATH> variable which indicates where all the POSIX.2 "
3448 "standard utilities can be found."
3449 msgstr "すべての POSIX.2 標準ユーティリティが見つかるような B<PATH> の値。"
3450
3451 #. type: Plain text
3452 #: build/C/man3/confstr.3:87
3453 msgid ""
3454 "If I<buf> is not NULL and I<len> is not zero, B<confstr>()  copies the value "
3455 "of the string to I<buf> truncated to I<len - 1> bytes if necessary, with a "
3456 "null byte (\\(aq\\e0\\(aq) as terminator.  This can be detected by comparing "
3457 "the return value of B<confstr>()  against I<len>."
3458 msgstr ""
3459 "I<buf> が NULL でなく、かつ I<len> が 0 でなければ B<confstr>() は取得\n"
3460 "した文字列の内容を I<buf> にコピーする。必要ならば長さが I<len - 1> \n"
3461 "バイトに切り捨てられて、NULL バイト (\\(aq\\e0\\(aq) で終端される。\n"
3462 "末尾が切り捨てられたかどうかを判定するには、 B<confstr>() の返り値を\n"
3463 "I<len> と比較すればよい。"
3464
3465 #. type: Plain text
3466 #: build/C/man3/confstr.3:95
3467 msgid ""
3468 "If I<len> is zero and I<buf> is NULL, B<confstr>()  just returns the value "
3469 "as defined below."
3470 msgstr ""
3471 "I<len> が 0 で I<buf> が NULL ならば、 B<confstr>()  は以下で定義された値 (訳"
3472 "注: 切り捨てる前の、取得した文字列の長さ) を返す。"
3473
3474 #. type: Plain text
3475 #: build/C/man3/confstr.3:107
3476 msgid ""
3477 "If I<name> is a valid configuration variable, B<confstr>()  returns the "
3478 "number of bytes (including the terminating null byte)  that would be "
3479 "required to hold the entire value of that variable.  This value may be "
3480 "greater than I<len>, which means that the value in I<buf> is truncated."
3481 msgstr ""
3482 "I<name> が有効なコンフィギュレーション変数の場合、 B<confstr>()  はその変数の"
3483 "値全体を保持するのに必要であったバイト数を返す (文字列終端のヌルバイトも含"
3484 "む)。この値は I<len> より大きいこともある。この場合には、 I<buf> に格納された"
3485 "値の末尾が切り詰められたことを意味する。"
3486
3487 #. type: Plain text
3488 #: build/C/man3/confstr.3:122
3489 msgid ""
3490 "If I<name> is a valid configuration variable, but that variable does not "
3491 "have a value, then B<confstr>()  returns 0.  If I<name> does not correspond "
3492 "to a valid configuration variable, B<confstr>()  returns 0, and I<errno> is "
3493 "set to B<EINVAL>."
3494 msgstr ""
3495 "I<name> が有効なコンフィギュレーション変数だが、 変数が値を持っていない場"
3496 "合、 B<confstr>()  は 0 を返す。 I<name> が有効なコンフィグレーション変数に対"
3497 "応していなければ、 B<confstr>()  は 0 を返し、 I<errno> に B<EINVAL> を設定す"
3498 "る。"
3499
3500 #. type: Plain text
3501 #: build/C/man3/confstr.3:128
3502 msgid "The value of I<name> is invalid."
3503 msgstr "I<name> の値が不正である。"
3504
3505 #. type: Plain text
3506 #: build/C/man3/confstr.3:130 build/C/man3/fpathconf.3:171
3507 #: build/C/man2/pread.2:117 build/C/man3/sleep.3:46 build/C/man3/sysconf.3:329
3508 #: build/C/man3/tcgetpgrp.3:118
3509 msgid "POSIX.1-2001."
3510 msgstr "POSIX.1-2001."
3511
3512 #. type: Plain text
3513 #: build/C/man3/confstr.3:133
3514 msgid ""
3515 "The following code fragment determines the path where to find the POSIX.2 "
3516 "system utilities:"
3517 msgstr ""
3518 "次の部分的なコードは、 POSIX.2 システムのユーティリティがあるパス を取得する"
3519 "ものである。"
3520
3521 #. type: Plain text
3522 #: build/C/man3/confstr.3:139
3523 #, no-wrap
3524 msgid ""
3525 "char *pathbuf;\n"
3526 "size_t n;\n"
3527 msgstr ""
3528 "char *pathbuf;\n"
3529 "size_t n;\n"
3530
3531 #. type: Plain text
3532 #: build/C/man3/confstr.3:145
3533 #, no-wrap
3534 msgid ""
3535 "n = confstr(_CS_PATH, NULL, (size_t) 0);\n"
3536 "pathbuf = malloc(n);\n"
3537 "if (pathbuf == NULL)\n"
3538 "    abort();\n"
3539 "confstr(_CS_PATH, pathbuf, n);\n"
3540 msgstr ""
3541 "n = confstr(_CS_PATH, NULL, (size_t) 0);\n"
3542 "pathbuf = malloc(n);\n"
3543 "if (pathbuf == NULL)\n"
3544 "    abort();\n"
3545 "confstr(_CS_PATH, pathbuf, n);\n"
3546
3547 #. type: Plain text
3548 #: build/C/man3/confstr.3:155
3549 msgid ""
3550 "B<getconf>(1), B<sh>(1), B<exec>(3), B<fpathconf>(3)  B<sysconf>(3)  "
3551 "B<pathconf>(3)  B<system>(3)"
3552 msgstr ""
3553 "B<getconf>(1), B<sh>(1), B<exec>(3), B<fpathconf>(3)  B<sysconf>(3)  "
3554 "B<pathconf>(3)  B<system>(3)"
3555
3556 #. type: TH
3557 #: build/C/man3/crypt.3:36
3558 #, no-wrap
3559 msgid "CRYPT"
3560 msgstr "CRYPT"
3561
3562 #. type: TH
3563 #: build/C/man3/crypt.3:36
3564 #, no-wrap
3565 msgid "2014-02-26"
3566 msgstr "2014-02-26"
3567
3568 #. type: Plain text
3569 #: build/C/man3/crypt.3:39
3570 msgid "crypt, crypt_r - password and data encryption"
3571 msgstr "crypt, crypt_r - パスワードとデータの暗号化"
3572
3573 #. type: Plain text
3574 #: build/C/man3/crypt.3:42
3575 #, no-wrap
3576 msgid "B<#define _XOPEN_SOURCE>       /* See feature_test_macros(7) */\n"
3577 msgstr "B<#define _XOPEN_SOURCE>       /* feature_test_macros(7) 参照 */\n"
3578
3579 #. type: Plain text
3580 #: build/C/man3/crypt.3:46
3581 #, no-wrap
3582 msgid "B<char *crypt(const char *>I<key>B<, const char *>I<salt>B<);>\n"
3583 msgstr "B<char *crypt(const char *>I<key>B<, const char *>I<salt>B<);>\n"
3584
3585 #. type: Plain text
3586 #: build/C/man3/crypt.3:48
3587 #, no-wrap
3588 msgid "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
3589 msgstr "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
3590
3591 #. type: Plain text
3592 #: build/C/man3/crypt.3:50
3593 #, no-wrap
3594 msgid "B<#include E<lt>crypt.hE<gt>>\n"
3595 msgstr "B<#include E<lt>crypt.hE<gt>>\n"
3596
3597 #. type: Plain text
3598 #: build/C/man3/crypt.3:53
3599 #, no-wrap
3600 msgid ""
3601 "B<char *crypt_r(const char *>I<key>B<, const char *>I<salt>B<,>\n"
3602 "B<              struct crypt_data *>I<data>B<);>\n"
3603 msgstr ""
3604 "B<char *crypt_r(const char *>I<key>B<, const char *>I<salt>B<,>\n"
3605 "B<              struct crypt_data *>I<data>B<);>\n"
3606
3607 #. type: Plain text
3608 #: build/C/man3/crypt.3:56
3609 msgid "Link with I<-lcrypt>."
3610 msgstr "I<-lcrypt> でリンクする。"
3611
3612 #. type: Plain text
3613 #: build/C/man3/crypt.3:62
3614 msgid ""
3615 "B<crypt>()  is the password encryption function.  It is based on the Data "
3616 "Encryption Standard algorithm with variations intended (among other things) "
3617 "to discourage use of hardware implementations of a key search."
3618 msgstr ""
3619 "B<crypt>()  はパスワード暗号化関数である。 鍵探索のハードウェアによる実装を妨"
3620 "げるように(その他にもいろいろ)  変更した Data Encryption Standard アルゴリズ"
3621 "ムを元にしている。"
3622
3623 #. type: Plain text
3624 #: build/C/man3/crypt.3:65
3625 msgid "I<key> is a user's typed password."
3626 msgstr "I<key> はユーザーが入力するパスワードである。"
3627
3628 #. type: Plain text
3629 #: build/C/man3/crypt.3:71
3630 msgid ""
3631 "I<salt> is a two-character string chosen from the set [B<a-zA-Z0-9./>].  "
3632 "This string is used to perturb the algorithm in one of 4096 different ways."
3633 msgstr ""
3634 "I<salt> は集合 [B<a-zA-Z0-9./>] から選ばれた 2 文字の文字列である。 この文字"
3635 "列はアルゴリズムの出力を 4096 通りにかき乱すのに使われる。"
3636
3637 #. type: Plain text
3638 #: build/C/man3/crypt.3:82
3639 msgid ""
3640 "By taking the lowest 7 bits of each of the first eight characters of the "
3641 "I<key>, a 56-bit key is obtained.  This 56-bit key is used to encrypt "
3642 "repeatedly a constant string (usually a string consisting of all zeros).  "
3643 "The returned value points to the encrypted password, a series of 13 "
3644 "printable ASCII characters (the first two characters represent the salt "
3645 "itself).  The return value points to static data whose content is "
3646 "overwritten by each call."
3647 msgstr ""
3648 "I<key> の最初の 8 文字の各文字から下位 7 ビットをとって 56 ビットの鍵が得られ"
3649 "る。 この 56 ビットの鍵は特定の文字列(ふつうはすべて 0 の文字列)  を繰り返し"
3650 "暗号化するのに用いられる。 返り値は暗号化されたパスワードへのポインターで、"
3651 "13 の印字可能な ASCII 文字 からなる(最初の 2 文字は salt そのもの)。 返り値"
3652 "は、関数呼出しのたびに上書きされる静的なデータへのポインターである。"
3653
3654 #. type: Plain text
3655 #: build/C/man3/crypt.3:84
3656 msgid "Warning: The key space consists of"
3657 msgstr "警告: 鍵空間は"
3658
3659 #. type: Plain text
3660 #: build/C/man3/crypt.3:99
3661 msgid ""
3662 "equal 7.2e16 possible values.  Exhaustive searches of this key space are "
3663 "possible using massively parallel computers.  Software, such as B<crack>(1), "
3664 "is available which will search the portion of this key space that is "
3665 "generally used by humans for passwords.  Hence, password selection should, "
3666 "at minimum, avoid common words and names.  The use of a B<passwd>(1)  "
3667 "program that checks for crackable passwords during the selection process is "
3668 "recommended."
3669 msgstr ""
3670 "= 7.2e16 の可能な値から成る。 この鍵空間の全探索は強力な並列計算機を使えば可"
3671 "能である。また B<crack>(1)  のようなソフトウェアはこの鍵空間の中で、多くの人"
3672 "にパスワードとして 使われるような鍵についての全探索が可能である。 それゆえ、"
3673 "パスワードを選択するときには、すくなくとも、 一般的に使われる単語と名前は避け"
3674 "るべきである。 B<passwd>(1)  を使う時にはクラックされうるパスワードについての"
3675 "検査をすることが 推奨される。"
3676
3677 #. type: Plain text
3678 #: build/C/man3/crypt.3:108
3679 msgid ""
3680 "The DES algorithm itself has a few quirks which make the use of the "
3681 "B<crypt>()  interface a very poor choice for anything other than password "
3682 "authentication.  If you are planning on using the B<crypt>()  interface for "
3683 "a cryptography project, don't do it: get a good book on encryption and one "
3684 "of the widely available DES libraries."
3685 msgstr ""
3686 "DES アルゴリズムにはいくつかの癖があり、それによってパスワード認証以外に "
3687 "B<crypt>()  を使うのはたいへんよくない選択となっている。もし B<crypt>()  を暗"
3688 "号プロジェクトに使おうという案をもっているならば、それはやめたほうが よい。暗"
3689 "号化についてのよい本と誰でも入手できる DES ライブラリのひとつを 手にいれるべ"
3690 "きだ。"
3691
3692 #. type: Plain text
3693 #: build/C/man3/crypt.3:120
3694 msgid ""
3695 "B<crypt_r>()  is a reentrant version of B<crypt>().  The structure pointed "
3696 "to by I<data> is used to store result data and bookkeeping information.  "
3697 "Other than allocating it, the only thing that the caller should do with this "
3698 "structure is to set I<data-E<gt>initialized> to zero before the first call "
3699 "to B<crypt_r>()."
3700 msgstr ""
3701 "B<crypt_r>()  は B<crypt>()  の再入可能版である。 I<data> で示される構造体は"
3702 "結果データの保存と情報の管理に使われる。 この構造体に対して(メモリーを割り当"
3703 "てること以外に)呼び出し元がするべき唯一の ことは、 B<crypt_r>()  の初回の呼び"
3704 "出しの前に I<data-E<gt>initialized> をゼロにすることだけである。"
3705
3706 #. type: Plain text
3707 #: build/C/man3/crypt.3:123
3708 msgid ""
3709 "On success, a pointer to the encrypted password is returned.  On error, NULL "
3710 "is returned."
3711 msgstr ""
3712 "成功の場合には、暗号化されたパスワードへのポインターが返される。 エラーの場合"
3713 "には NULL が返される。"
3714
3715 #. type: Plain text
3716 #: build/C/man3/crypt.3:128
3717 msgid "I<salt> has the wrong format."
3718 msgstr "I<salt> が間違ったフォーマットである。"
3719
3720 #. type: TP
3721 #: build/C/man3/crypt.3:130 build/C/man3/encrypt.3:120
3722 #: build/C/man3/fexecve.3:86 build/C/man2/fork.2:220
3723 #, no-wrap
3724 msgid "B<ENOSYS>"
3725 msgstr "B<ENOSYS>"
3726
3727 #.  This level of detail is not necessary in this man page. . .
3728 #.  .PP
3729 #.  When encrypting a plain text P using DES with the key K results in the
3730 #.  encrypted text C, then the complementary plain text P' being encrypted
3731 #.  using the complementary key K' will result in the complementary encrypted
3732 #.  text C'.
3733 #.  .PP
3734 #.  Weak keys are keys which stay invariant under the DES key transformation.
3735 #.  The four known weak keys 0101010101010101, fefefefefefefefe,
3736 #.  1f1f1f1f0e0e0e0e and e0e0e0e0f1f1f1f1 must be avoided.
3737 #.  .PP
3738 #.  There are six known half weak key pairs, which keys lead to the same
3739 #.  encrypted data.  Keys which are part of such key clusters should be
3740 #.  avoided.
3741 #.  Sorry, I could not find out what they are.
3742 #. "
3743 #.  .PP
3744 #.  Heavily redundant data causes trouble with DES encryption, when used in the
3745 #.  .I codebook
3746 #.  mode that
3747 #.  .BR crypt ()
3748 #.  implements.  The
3749 #.  .BR crypt ()
3750 #.  interface should be used only for its intended purpose of password
3751 #.  verification, and should not be used as part of a data encryption tool.
3752 #.  .PP
3753 #.  The first and last three output bits of the fourth S-box can be
3754 #.  represented as function of their input bits.  Empiric studies have
3755 #.  shown that S-boxes partially compute the same output for similar input.
3756 #.  It is suspected that this may contain a back door which could allow the
3757 #.  NSA to decrypt DES encrypted data.
3758 #.  .PP
3759 #.  Making encrypted data computed using crypt() publicly available has
3760 #.  to be considered insecure for the given reasons.
3761 #. type: Plain text
3762 #: build/C/man3/crypt.3:169
3763 msgid ""
3764 "The B<crypt>()  function was not implemented, probably because of U.S.A. "
3765 "export restrictions."
3766 msgstr "B<crypt>()  関数が実装されていない。多分アメリカの輸出規制のために。"
3767
3768 #. type: Plain text
3769 #: build/C/man3/crypt.3:174
3770 msgid ""
3771 "I</proc/sys/crypto/fips_enabled> has a nonzero value, and an attempt was "
3772 "made to use a weak encryption type, such as DES."
3773 msgstr ""
3774 "I</proc/sys/crypto/fips_enabled> が 0 でない値で、 DES などの弱い暗号タイプを"
3775 "利用しようとした。"
3776
3777 #. type: SH
3778 #: build/C/man3/crypt.3:174 build/C/man3/daemon.3:91
3779 #: build/C/man3/des_crypt.3:134 build/C/man3/encrypt.3:124
3780 #: build/C/man3/euidaccess.3:73 build/C/man3/getdtablesize.3:69
3781 #: build/C/man3/getlogin.3:140 build/C/man3/getusershell.3:93
3782 #: build/C/man3/lockf.3:154 build/C/man3/swab.3:72
3783 #: build/C/man3/tcgetpgrp.3:109 build/C/man3/ualarm.3:92
3784 #: build/C/man3/usleep.3:91
3785 #, no-wrap
3786 msgid "ATTRIBUTES"
3787 msgstr "属性"
3788
3789 #. type: SS
3790 #: build/C/man3/crypt.3:175 build/C/man3/daemon.3:92
3791 #: build/C/man3/des_crypt.3:135 build/C/man3/encrypt.3:125
3792 #: build/C/man3/euidaccess.3:74 build/C/man3/getdtablesize.3:70
3793 #: build/C/man3/getlogin.3:141 build/C/man3/getusershell.3:94
3794 #: build/C/man3/lockf.3:155 build/C/man3/swab.3:73
3795 #: build/C/man3/tcgetpgrp.3:110 build/C/man3/ualarm.3:93
3796 #: build/C/man3/usleep.3:92
3797 #, no-wrap
3798 msgid "Multithreading (see pthreads(7))"
3799 msgstr "マルチスレッディング (pthreads(7) 参照)"
3800
3801 #. type: Plain text
3802 #: build/C/man3/crypt.3:179
3803 msgid "The B<crypt>()  function is not thread-safe."
3804 msgstr "B<crypt>() 関数はスレッドセーフではない。"
3805
3806 #. type: Plain text
3807 #: build/C/man3/crypt.3:183
3808 msgid "The B<crypt_r>()  function is thread-safe."
3809 msgstr "B<crypt_r>() 関数はスレッドセーフである。"
3810
3811 #. type: Plain text
3812 #: build/C/man3/crypt.3:188
3813 msgid ""
3814 "B<crypt>(): SVr4, 4.3BSD, POSIX.1-2001.  B<crypt_r>()  is a GNU extension."
3815 msgstr ""
3816 "B<crypt>(): SVr4, 4.3BSD, POSIX.1-2001.  B<crypt_r>()  は GNU 拡張である。"
3817
3818 #. type: Plain text
3819 #: build/C/man3/crypt.3:192
3820 msgid ""
3821 "The glibc2 version of this function supports additional encryption "
3822 "algorithms."
3823 msgstr "この関数の glibc2 版は追加の暗号化アルゴリズムに対応している。"
3824
3825 #. type: Plain text
3826 #: build/C/man3/crypt.3:197
3827 msgid ""
3828 "If I<salt> is a character string starting with the characters \"$I<id>$\" "
3829 "followed by a string terminated by \"$\":"
3830 msgstr ""
3831 "もし I<salt> の文字列が \"$I<id>$\" で始まっていて、\"$\" で終わっている文字"
3832 "列が 続いている場合:"
3833
3834 #. type: Plain text
3835 #: build/C/man3/crypt.3:200
3836 msgid "$I<id>$I<salt>$I<encrypted>"
3837 msgstr "$I<id>$I<salt>$I<encrypted>"
3838
3839 #. type: Plain text
3840 #: build/C/man3/crypt.3:209
3841 msgid ""
3842 "then instead of using the DES machine, I<id> identifies the encryption "
3843 "method used and this then determines how the rest of the password string is "
3844 "interpreted.  The following values of I<id> are supported:"
3845 msgstr ""
3846 "DES を使う代わりに、 I<id> で使用する暗号化手法を識別し、これがパスワード文字"
3847 "列の残りの部分を解釈する 方法を決定する。 I<id> の値として、以下の値に対応し"
3848 "ている:"
3849
3850 #. type: tbl table
3851 #: build/C/man3/crypt.3:212
3852 #, no-wrap
3853 msgid "ID  | Method\n"
3854 msgstr "ID  | Method\n"
3855
3856 #. type: tbl table
3857 #: build/C/man3/crypt.3:213 build/C/man2/syscall.2:160
3858 #: build/C/man2/syscall.2:198
3859 #, no-wrap
3860 msgid "_\n"
3861 msgstr "_\n"
3862
3863 #. type: tbl table
3864 #: build/C/man3/crypt.3:214
3865 #, no-wrap
3866 msgid "1   | MD5\n"
3867 msgstr "1   | MD5\n"
3868
3869 #. type: tbl table
3870 #: build/C/man3/crypt.3:215
3871 #, no-wrap
3872 msgid "2a  | Blowfish (not in mainline glibc; added in some\n"
3873 msgstr "2a  | Blowfish (本流の glibc には入っていない;\n"
3874
3875 #. type: tbl table
3876 #: build/C/man3/crypt.3:216
3877 #, no-wrap
3878 msgid "    | Linux distributions)\n"
3879 msgstr "    | いくつかの Linux ディストリビューションで追加されている)\n"
3880
3881 #.  openSUSE has Blowfish, but AFAICS, this option is not supported
3882 #.  natively by glibc -- mtk, Jul 08
3883 #.  md5 | Sun MD5
3884 #.  glibc doesn't appear to natively support Sun MD5; I don't know
3885 #.  if any distros add the support.
3886 #. type: tbl table
3887 #: build/C/man3/crypt.3:223
3888 #, no-wrap
3889 msgid "5   | SHA-256 (since glibc 2.7)\n"
3890 msgstr "5   | SHA-256 (glibc 2.7 以降)\n"
3891
3892 #. type: tbl table
3893 #: build/C/man3/crypt.3:224
3894 #, no-wrap
3895 msgid "6   | SHA-512 (since glibc 2.7)\n"
3896 msgstr "6   | SHA-512 (glibc 2.7 以降)\n"
3897
3898 #. type: Plain text
3899 #: build/C/man3/crypt.3:231
3900 msgid ""
3901 "So $5$I<salt>$I<encrypted> is an SHA-256 encoded password and $6$I<salt>"
3902 "$I<encrypted> is an SHA-512 encoded one."
3903 msgstr ""
3904 "従って、$5$I<salt>$I<encrypted> は SHA-256 でエンコードされた パスワードであ"
3905 "り、$6$I<salt>$I<encrypted> は SHA-512 で エンコードされたパスワードである。"
3906
3907 #. type: Plain text
3908 #: build/C/man3/crypt.3:236
3909 msgid ""
3910 "\"I<salt>\" stands for the up to 16 characters following \"$I<id>$\" in the "
3911 "salt.  The encrypted part of the password string is the actual computed "
3912 "password.  The size of this string is fixed:"
3913 msgstr ""
3914 "\"I<salt>\" は salt における \"$I<id>$\" に引き続く 16 文字以下の 文字列であ"
3915 "る。 パスワード文字列の暗号化部分は実際に計算されたパスワードである。 この文"
3916 "字列のサイズは固定である:"
3917
3918 #. type: tbl table
3919 #: build/C/man3/crypt.3:238
3920 #, no-wrap
3921 msgid "MD5     | 22 characters\n"
3922 msgstr "MD5     | 22 characters\n"
3923
3924 #. type: tbl table
3925 #: build/C/man3/crypt.3:239
3926 #, no-wrap
3927 msgid "SHA-256 | 43 characters\n"
3928 msgstr "SHA-256 | 43 characters\n"
3929
3930 #. type: tbl table
3931 #: build/C/man3/crypt.3:240
3932 #, no-wrap
3933 msgid "SHA-512 | 86 characters\n"
3934 msgstr "SHA-512 | 86 characters\n"
3935
3936 #. type: Plain text
3937 #: build/C/man3/crypt.3:249
3938 msgid ""
3939 "The characters in \"I<salt>\" and \"I<encrypted>\" are drawn from the set "
3940 "[B<a-zA-Z0-9./>].  In the MD5 and SHA implementations the entire I<key> is "
3941 "significant (instead of only the first 8 bytes in DES)."
3942 msgstr ""
3943 "\"I<salt>\" と \"I<encrypted>\" の文字は [B<a-zA-Z0-9./>] の集合から 選ばれ"
3944 "る。 MD5 と SHA の実装では、 I<key> 全体が意味がある (DES の場合には最初の 8 "
3945 "文字だけに意味がある)。"
3946
3947 #. type: Plain text
3948 #: build/C/man3/crypt.3:255
3949 msgid "B<login>(1), B<passwd>(1), B<encrypt>(3), B<getpass>(3), B<passwd>(5)"
3950 msgstr "B<login>(1), B<passwd>(1), B<encrypt>(3), B<getpass>(3), B<passwd>(5)"
3951
3952 #. type: TH
3953 #: build/C/man3/daemon.3:36
3954 #, no-wrap
3955 msgid "DAEMON"
3956 msgstr "DAEMON"
3957
3958 #. type: TH
3959 #: build/C/man3/daemon.3:36
3960 #, no-wrap
3961 msgid "2013-10-28"
3962 msgstr "2013-10-28"
3963
3964 #. type: Plain text
3965 #: build/C/man3/daemon.3:39
3966 msgid "daemon - run in the background"
3967 msgstr "daemon - バックグラウンドで動作させる"
3968
3969 #. type: Plain text
3970 #: build/C/man3/daemon.3:43
3971 msgid "B<int daemon(int >I<nochdir>B<, int >I<noclose>B<);>"
3972 msgstr "B<int daemon(int >I<nochdir>B<, int >I<noclose>B<);>"
3973
3974 #. type: Plain text
3975 #: build/C/man3/daemon.3:51
3976 msgid ""
3977 "B<daemon>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
3978 msgstr ""
3979 "B<daemon>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
3980
3981 #. type: Plain text
3982 #: build/C/man3/daemon.3:56
3983 msgid ""
3984 "The B<daemon>()  function is for programs wishing to detach themselves from "
3985 "the controlling terminal and run in the background as system daemons."
3986 msgstr ""
3987 "B<daemon>()  は、制御端末から分離させてシステムデーモンとして動作させたい プ"
3988 "ログラムのための関数である。"
3989
3990 #. type: Plain text
3991 #: build/C/man3/daemon.3:64
3992 msgid ""
3993 "If I<nochdir> is zero, B<daemon>()  changes the calling process's current "
3994 "working directory to the root directory (\"/\"); otherwise, the current "
3995 "working directory is left unchanged."
3996 msgstr ""
3997 "I<nochdir> が 0 の場合、 B<daemon>()  は呼び出したプロセスの現在の作業ディレ"
3998 "クトリ (current working directory)  をルートディレクトリ (\"/\") に変更す"
3999 "る。 それ以外の場合、現在の作業ディレクトリは変更されない。"
4000
4001 #. type: Plain text
4002 #: build/C/man3/daemon.3:73
4003 msgid ""
4004 "If I<noclose> is zero, B<daemon>()  redirects standard input, standard "
4005 "output and standard error to I</dev/null>; otherwise, no changes are made to "
4006 "these file descriptors."
4007 msgstr ""
4008 "I<noclose> が 0 の場合、 B<daemon>()  は標準入力・標準出力・標準エラーを I</"
4009 "dev/null> にリダイレクトする。 それ以外の場合、これらのファイルディスクリプ"
4010 "ターは変更されない。"
4011
4012 #.  not .IR in order not to underline _
4013 #. type: Plain text
4014 #: build/C/man3/daemon.3:91
4015 msgid ""
4016 "(This function forks, and if the B<fork>(2)  succeeds, the parent calls "
4017 "B<_exit>(2), so that further errors are seen by the child only.)  On success "
4018 "B<daemon>()  returns zero.  If an error occurs, B<daemon>()  returns -1 and "
4019 "sets I<errno> to any of the errors specified for the B<fork>(2)  and "
4020 "B<setsid>(2)."
4021 msgstr ""
4022 "(この関数が fork して B<fork>(2)  が成功すると、親プロセスでは B<_exit>(2)  "
4023 "を呼び出すので、これ以降のエラーは子プロセスからしか見れない)。 成功した場"
4024 "合、 B<daemon>()  は 0 を返す。 エラーが起こった場合、 B<daemon>()  は -1 を"
4025 "返す。 さらに、 I<errno> に B<fork>(2)  と B<setsid>(2)  に関して規定されたエ"
4026 "ラーを設定する。"
4027
4028 #. type: Plain text
4029 #: build/C/man3/daemon.3:96
4030 msgid "The B<daemon>()  function is thread-safe."
4031 msgstr "B<daemon>() 関数はスレッドセーフである。"
4032
4033 #. type: Plain text
4034 #: build/C/man3/daemon.3:102
4035 msgid ""
4036 "Not in POSIX.1-2001.  A similar function appears on the BSDs.  The "
4037 "B<daemon>()  function first appeared in 4.4BSD."
4038 msgstr ""
4039 "POSIX.1-2001 にはない。 同様の関数が BSD には見られる。 B<daemon>()  関数は "
4040 "4.4BSD で始めて登場した。"
4041
4042 #. type: Plain text
4043 #: build/C/man3/daemon.3:110
4044 msgid ""
4045 "The glibc implementation can also return -1 when I</dev/null> exists but is "
4046 "not a character device with the expected major and minor numbers.  In this "
4047 "case, I<errno> need not be set."
4048 msgstr ""
4049 "The glibc implementation can also return -1 when I</dev/null> exists but is "
4050 "not a character device with the expected major and minor numbers.  In this "
4051 "case, I<errno> need not be set."
4052
4053 #. type: Plain text
4054 #: build/C/man3/daemon.3:113
4055 msgid "B<fork>(2), B<setsid>(2)"
4056 msgstr "B<fork>(2), B<setsid>(2)"
4057
4058 #. type: TH
4059 #: build/C/man3/des_crypt.3:14
4060 #, no-wrap
4061 msgid "DES_CRYPT"
4062 msgstr "DES_CRYPT"
4063
4064 #. type: Plain text
4065 #: build/C/man3/des_crypt.3:18
4066 msgid ""
4067 "des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - fast DES "
4068 "encryption"
4069 msgstr ""
4070 "des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - 高速な DES 暗号"
4071 "化"
4072
4073 #.  Sun version
4074 #.  .B #include <des_crypt.h>
4075 #. type: Plain text
4076 #: build/C/man3/des_crypt.3:23
4077 #, no-wrap
4078 msgid "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
4079 msgstr "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
4080
4081 #. type: Plain text
4082 #: build/C/man3/des_crypt.3:26
4083 #, no-wrap
4084 msgid ""
4085 "B<int ecb_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4086 "B<              unsigned >I<mode>B<);>\n"
4087 msgstr ""
4088 "B<int ecb_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4089 "B<              unsigned >I<mode>B<);>\n"
4090
4091 #. type: Plain text
4092 #: build/C/man3/des_crypt.3:29
4093 #, no-wrap
4094 msgid ""
4095 "B<int cbc_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4096 "B<              unsigned >I<mode>B<, char *>I<ivec>B<);>\n"
4097 msgstr ""
4098 "B<int cbc_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
4099 "B<              unsigned >I<mode>B<, char *>I<ivec>B<);>\n"
4100
4101 #. type: Plain text
4102 #: build/C/man3/des_crypt.3:31
4103 #, no-wrap
4104 msgid "B<void des_setparity(char *>I<key>B<);>\n"
4105 msgstr "B<void des_setparity(char *>I<key>B<);>\n"
4106
4107 #. type: Plain text
4108 #: build/C/man3/des_crypt.3:33
4109 #, no-wrap
4110 msgid "B<int DES_FAILED(int >I<status>B<);>\n"
4111 msgstr "B<int DES_FAILED(int >I<status>B<);>\n"
4112
4113 #. type: Plain text
4114 #: build/C/man3/des_crypt.3:63
4115 msgid ""
4116 "B<ecb_crypt>()  and B<cbc_crypt>()  implement the NBS DES (Data Encryption "
4117 "Standard).  These routines are faster and more general purpose than "
4118 "B<crypt>(3).  They also are able to utilize DES hardware if it is "
4119 "available.  B<ecb_crypt>()  encrypts in ECB (Electronic Code Book)  mode, "
4120 "which encrypts blocks of data independently.  B<cbc_crypt>()  encrypts in "
4121 "CBC (Cipher Block Chaining)  mode, which chains together successive blocks.  "
4122 "CBC mode protects against insertions, deletions and substitutions of "
4123 "blocks.  Also, regularities in the clear text will not appear in the cipher "
4124 "text."
4125 msgstr ""
4126 "B<ecb_crypt>()  と B<cbc_crypt>()  は NBS DES (Data Encryption Standard, デー"
4127 "タ暗号化規格) を実装している。 これらのルーチンは B<crypt>(3)  よりも高速でよ"
4128 "り一般的な目的に使用できる。 利用可能であれば、これらのルーチンは DES ハード"
4129 "ウェアを使用することもできる。 B<ecb_crypt>()  は ECB (Electronic Code Book) "
4130 "モードで暗号化する。 このモードでは (個々の) データのブロックを独立して暗号化"
4131 "する B<cbc_crypt>()  は CBC (Cipher Block Chaining) モードで暗号化する。 この"
4132 "モードでは連続するブロックを互いに連鎖させて暗号化する。 CBC はブロックの挿"
4133 "入・削除・置き換えから保護する。 また平文の規則性が暗号文に現れない。"
4134
4135 #. type: Plain text
4136 #: build/C/man3/des_crypt.3:106
4137 msgid ""
4138 "Here is how to use these routines.  The first argument, I<key>, is the 8-"
4139 "byte encryption key with parity.  To set the key's parity, which for DES is "
4140 "in the low bit of each byte, use B<des_setparity>().  The second argument, "
4141 "I<data>, contains the data to be encrypted or decrypted.  The third "
4142 "argument, I<datalen>, is the length in bytes of I<data>, which must be a "
4143 "multiple of 8.  The fourth argument, I<mode>, is formed by ORing together "
4144 "some things.  For the encryption direction OR in either B<DES_ENCRYPT> or "
4145 "B<DES_DECRYPT>.  For software versus hardware encryption, OR in either "
4146 "B<DES_HW> or B<DES_SW>.  If B<DES_HW> is specified, and there is no "
4147 "hardware, then the encryption is performed in software and the routine "
4148 "returns B<DESERR_NOHWDEVICE>.  For B<cbc_crypt>(), the argument I<ivec> is "
4149 "the 8-byte initialization vector for the chaining.  It is updated to the "
4150 "next initialization vector upon return."
4151 msgstr ""
4152 "これらのルーチンの使用法を示す。 第 1 引き数 I<key> はパリティ付きの 8 バイト"
4153 "の暗号化鍵である。 鍵のパリティを設定するには B<des_setparity>()  を使うこ"
4154 "と。 DES の場合、鍵のパリティは各バイトの最下位ビットである。 第 2 引き数 "
4155 "I<data> は暗号化または復号化されるデータを含む。 第 3 引き数 I<datalen> は "
4156 "I<data> のバイト長であり、8 の倍数でなければならない。 第 4 引き数 I<mode> は"
4157 "いくつかの値を OR することで作成する。 暗号化の方向 (訳註: 暗号化なのか復号化"
4158 "なのか) を指定するため、 B<DES_ENCRYPT> または B<DES_DECRYPT> を OR する。 暗"
4159 "号化をソフトウェアで行うかハードウェアで行うかを指定するため、 B<DES_HW> また"
4160 "は B<DES_SW> を OR する。 B<DES_HW> が指定されていて、かつハードウェアがない"
4161 "場合、 暗号化はソフトウェアで実行されて、ルーチンは B<DESERR_NOHWDEVICE> を返"
4162 "す。 B<cbc_crypt>()  において、引き数 I<ivec> はデータブロックを連鎖させる際"
4163 "の 8 バイトの初期化ベクトルである。 この引き数はルーチンから戻るときに次の初"
4164 "期化ベクトルに更新される。"
4165
4166 #. type: TP
4167 #: build/C/man3/des_crypt.3:108
4168 #, no-wrap
4169 msgid "B<DESERR_NONE>"
4170 msgstr "B<DESERR_NONE>"
4171
4172 #. type: Plain text
4173 #: build/C/man3/des_crypt.3:111
4174 msgid "No error."
4175 msgstr "エラーなし。"
4176
4177 #. type: TP
4178 #: build/C/man3/des_crypt.3:111
4179 #, no-wrap
4180 msgid "B<DESERR_NOHWDEVICE>"
4181 msgstr "B<DESERR_NOHWDEVICE>"
4182
4183 #. type: Plain text
4184 #: build/C/man3/des_crypt.3:114
4185 msgid ""
4186 "Encryption succeeded, but done in software instead of the requested hardware."
4187 msgstr ""
4188 "暗号化は成功したが、要求されたハードウェアの代わりにソフトウェアで実行され"
4189 "た。"
4190
4191 #. type: TP
4192 #: build/C/man3/des_crypt.3:114
4193 #, no-wrap
4194 msgid "B<DESERR_HWERROR>"
4195 msgstr "B<DESERR_HWERROR>"
4196
4197 #. type: Plain text
4198 #: build/C/man3/des_crypt.3:117
4199 msgid "An error occurred in the hardware or driver."
4200 msgstr "ハードウェアまたはドライバでエラーが発生した。"
4201
4202 #. type: TP
4203 #: build/C/man3/des_crypt.3:117
4204 #, no-wrap
4205 msgid "B<DESERR_BADPARAM>"
4206 msgstr "B<DESERR_BADPARAM>"
4207
4208 #. type: Plain text
4209 #: build/C/man3/des_crypt.3:120
4210 msgid "Bad argument to routine."
4211 msgstr "ルーチンへの引き数が不正である。"
4212
4213 #.  .BR DES_FAILED\c
4214 #.  .BR ( stat )
4215 #.  So far the Sun page
4216 #.  Some additions - aeb
4217 #. type: Plain text
4218 #: build/C/man3/des_crypt.3:131
4219 msgid ""
4220 "Given a result status I<stat>, the macro B<DES_FAILED(>I<stat>B<)> is false "
4221 "only for the first two statuses."
4222 msgstr ""
4223 "結果の状態 I<stat> を与えたとき、マクロ B<DES_FAILED(>I<stat>B<)> が false に"
4224 "なるのは、最初の 2 つだけである。"
4225
4226 #. type: Plain text
4227 #: build/C/man3/des_crypt.3:134
4228 msgid "These functions are present in glibc 2.1 and later."
4229 msgstr "これらの関数は glibc 2.1 以降に存在する。"
4230
4231 #. type: Plain text
4232 #: build/C/man3/des_crypt.3:142
4233 msgid ""
4234 "The B<ecb_crypt>(), B<cbc_crypt>(), and B<des_setparity>()  functions are "
4235 "thread-safe."
4236 msgstr ""
4237 "関数 B<ecb_crypt>(), B<cbc_crypt>(), B<des_setparity>() はスレッドセーフであ"
4238 "る。"
4239
4240 #. type: Plain text
4241 #: build/C/man3/des_crypt.3:145
4242 msgid "4.3BSD.  Not in POSIX.1-2001."
4243 msgstr "4.3BSD. POSIX.1-2001 にはない。"
4244
4245 #. type: Plain text
4246 #: build/C/man3/des_crypt.3:149
4247 msgid "B<des>(1), B<crypt>(3), B<xcrypt>(3)"
4248 msgstr "B<des>(1), B<crypt>(3), B<xcrypt>(3)"
4249
4250 #. type: TH
4251 #: build/C/man2/dup.2:37
4252 #, no-wrap
4253 msgid "DUP"
4254 msgstr "DUP"
4255
4256 #. type: TH
4257 #: build/C/man2/dup.2:37 build/C/man3/exec.3:41 build/C/man2/execve.2:37
4258 #: build/C/man2/fcntl.2:65 build/C/man3/fexecve.3:25 build/C/man2/syscall.2:42
4259 #: build/C/man2/syscalls.2:31 build/C/man2/truncate.2:43
4260 #: build/C/man2/execveat.2:26
4261 #, no-wrap
4262 msgid "2015-01-22"
4263 msgstr "2015-01-22"
4264
4265 #. type: Plain text
4266 #: build/C/man2/dup.2:40
4267 msgid "dup, dup2, dup3 - duplicate a file descriptor"
4268 msgstr "dup, dup2, dup3 - ファイルディスクリプターを複製する"
4269
4270 #. type: Plain text
4271 #: build/C/man2/dup.2:46
4272 #, no-wrap
4273 msgid ""
4274 "B<int dup(int >I<oldfd>B<);>\n"
4275 "B<int dup2(int >I<oldfd>B<, int >I<newfd>B<);>\n"
4276 msgstr ""
4277 "B<int dup(int >I<oldfd>B<);>\n"
4278 "B<int dup2(int >I<oldfd>B<, int >I<newfd>B<);>\n"
4279
4280 #. type: Plain text
4281 #: build/C/man2/dup.2:50
4282 #, no-wrap
4283 msgid ""
4284 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
4285 "B<#include E<lt>fcntl.hE<gt>>              /* Obtain O_* constant definitions */\n"
4286 "B<#include E<lt>unistd.hE<gt>>\n"
4287 msgstr ""
4288 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
4289 "B<#include E<lt>fcntl.hE<gt>>              /* 定数 O_* の定義の取得 */\n"
4290 "B<#include E<lt>unistd.hE<gt>>\n"
4291
4292 #. type: Plain text
4293 #: build/C/man2/dup.2:52
4294 #, no-wrap
4295 msgid "B<int dup3(int >I<oldfd>B<, int >I<newfd>B<, int >I<flags>B<);>\n"
4296 msgstr "B<int dup3(int >I<oldfd>B<, int >I<newfd>B<, int >I<flags>B<);>\n"
4297
4298 #. type: Plain text
4299 #: build/C/man2/dup.2:59
4300 msgid ""
4301 "The B<dup>()  system call creates a copy of the file descriptor I<oldfd>, "
4302 "using the lowest-numbered unused descriptor for the new descriptor."
4303 msgstr ""
4304 "B<dup>() システムコールは、 ファイルディスクリプター I<oldfd> のコピーを作成"
4305 "し、 最も小さい番号の未使用のディスクリプターを 新しいディスクリプターとして"
4306 "使用する。"
4307
4308 #. type: Plain text
4309 #: build/C/man2/dup.2:68
4310 msgid ""
4311 "After a successful return, the old and new file descriptors may be used "
4312 "interchangeably.  They refer to the same open file description (see "
4313 "B<open>(2))  and thus share file offset and file status flags; for example, "
4314 "if the file offset is modified by using B<lseek>(2)  on one of the "
4315 "descriptors, the offset is also changed for the other."
4316 msgstr ""
4317 "成功が返された場合には、 古いファイルディスクリプターと新しいファイルディスク"
4318 "リプターは 互いに可換なものとして使うことができる。 2つのファイルディスクリプ"
4319 "ターは同じファイル記述 (description)  (B<open>(2)  参照) を参照しており、した"
4320 "がってファイルオフセットやファイル状態フラグが 共有される。例えば、一方のディ"
4321 "スクリプターに対して B<lseek>(2)  を使ってファイルオフセットを変更した場合、"
4322 "もう一方のディスクリプターの オフセットも変化する。"
4323
4324 #. type: Plain text
4325 #: build/C/man2/dup.2:77
4326 msgid ""
4327 "The two descriptors do not share file descriptor flags (the close-on-exec "
4328 "flag).  The close-on-exec flag (B<FD_CLOEXEC>; see B<fcntl>(2))  for the "
4329 "duplicate descriptor is off."
4330 msgstr ""
4331 "2つのディスクリプターはファイルディスクリプターフラグ (close-on-exec flag)  "
4332 "を共有しない。複製されたディスクリプターの close-on-exec flag (B<fcntl>(2)  "
4333 "参照) は off となる。"
4334
4335 #. type: SS
4336 #: build/C/man2/dup.2:77
4337 #, no-wrap
4338 msgid "dup2()"
4339 msgstr "dup2()"
4340
4341 #. type: Plain text
4342 #: build/C/man2/dup.2:88
4343 msgid ""
4344 "The B<dup2>()  system call performs the same task as B<dup>(), but instead "
4345 "of using the lowest-numbered unused file descriptor, it uses the descriptor "
4346 "number specified in I<newfd>.  If the descriptor I<newfd> was previously "
4347 "open, it is silently closed before being reused."
4348 msgstr ""
4349 "B<dup2>() システムコールは B<dup>() と同じ処理を実行するが、\n"
4350 "番号が最も小さい未使用のファイルディスクリプターを使用する代わりに、\n"
4351 "I<newfd> で指定されたディスクリプター番号を使用する。\n"
4352 "ディスクリプター I<newfd> が以前にオープンされていた場合には、\n"
4353 "黙ってそのディスクリプターをクローズしてから再利用する。"
4354
4355 #. type: Plain text
4356 #: build/C/man2/dup.2:104
4357 msgid ""
4358 "The steps of closing and reusing the file descriptor I<newfd> are performed "
4359 "I<atomically>.  This is important, because trying to implement equivalent "
4360 "functionality using B<close>(2)  and B<dup>()  would be subject to race "
4361 "conditions, whereby I<newfd> might be reused between the two steps.  Such "
4362 "reuse could happen because the main program is interrupted by a signal "
4363 "handler that allocates a file descriptor, or because a parallel thread "
4364 "allocates a file descriptor."
4365 msgstr ""
4366 "ファイルディスクリプター I<newfd> をクローズして再利用する処理は\n"
4367 "I<アトミック(不可分)に>実行される。これは重要な点である。 なぜなら、\n"
4368 "等価な機能を B<close>(2) と B<dup>() を使って実装しようとすると、\n"
4369 "2 つの処理の間に I<newfd> が再利用されてしまうという、\n"
4370 "競合状態にさらされることになるからだ。\n"
4371 "このような再利用が起こるのは、\n"
4372 "メインプログラムがファイルディスクリプターを割り当てる\n"
4373 "シグナルハンドラーにより割り込まれたり、並行動作するスレッドが\n"
4374 "ファイルディスクリプターを割り当てたりすることがあるからだ。"
4375
4376 #. type: Plain text
4377 #: build/C/man2/dup.2:106
4378 msgid "Note the following points:"
4379 msgstr "以下の点について注意すること:"
4380
4381 #. type: Plain text
4382 #: build/C/man2/dup.2:112
4383 msgid ""
4384 "If I<oldfd> is not a valid file descriptor, then the call fails, and "
4385 "I<newfd> is not closed."
4386 msgstr ""
4387 "I<oldfd> が有効なファイルディスクリプターでない場合、その呼び出しは失敗し、 "
4388 "I<newfd> はクローズされない。"
4389
4390 #. type: Plain text
4391 #: build/C/man2/dup.2:124
4392 msgid ""
4393 "If I<oldfd> is a valid file descriptor, and I<newfd> has the same value as "
4394 "I<oldfd>, then B<dup2>()  does nothing, and returns I<newfd>."
4395 msgstr ""
4396 "I<oldfd> が有効なファイルディスクリプターで、 I<newfd> が I<oldfd> と同じ値の"
4397 "場合、 B<dup2>()  は何もせず、 I<newfd> を返す。"
4398
4399 #. type: SS
4400 #: build/C/man2/dup.2:124
4401 #, no-wrap
4402 msgid "dup3()"
4403 msgstr "dup3()"
4404
4405 #. type: Plain text
4406 #: build/C/man2/dup.2:129
4407 msgid "B<dup3>()  is the same as B<dup2>(), except that:"
4408 msgstr "B<dup3>()  は B<dup2>()  と同じだが、以下の点が異なる。"
4409
4410 #. type: Plain text
4411 #: build/C/man2/dup.2:138
4412 msgid ""
4413 "The caller can force the close-on-exec flag to be set for the new file "
4414 "descriptor by specifying B<O_CLOEXEC> in I<flags>.  See the description of "
4415 "the same flag in B<open>(2)  for reasons why this may be useful."
4416 msgstr ""
4417 "呼び出し元が、新しいファイルディスクリプターに対して close-on-exec フラグを強"
4418 "制的に設定することができる。 これを行うには、 I<flags> に B<O_CLOEXEC> を指定"
4419 "する。 このフラグが役に立つ理由については、 B<open>(2)  の B<O_CLOEXEC> フラ"
4420 "グの説明を参照のこと。"
4421
4422 #.  FIXME . To confirm with Al Viro that this was intended, and its rationale
4423 #. type: Plain text
4424 #: build/C/man2/dup.2:148
4425 msgid ""
4426 "If I<oldfd> equals I<newfd>, then B<dup3>()  fails with the error B<EINVAL>."
4427 msgstr ""
4428 "I<oldfd> が I<newfd> と同じ場合、 B<dup3>()  は B<EINVAL> エラーで失敗する。"
4429
4430 #. type: Plain text
4431 #: build/C/man2/dup.2:154
4432 msgid ""
4433 "On success, these system calls return the new descriptor.  On error, -1 is "
4434 "returned, and I<errno> is set appropriately."
4435 msgstr ""
4436 "成功すると、これらのシステムコールは新しいディスクリプターを返す。 エラーの場"
4437 "合、-1 を返し、 I<errno> を適切に設定する。"
4438
4439 #. type: Plain text
4440 #: build/C/man2/dup.2:159
4441 msgid "I<oldfd> isn't an open file descriptor."
4442 msgstr "I<oldfd> がオープンされたファイルディスクリプターではない。"
4443
4444 #. type: Plain text
4445 #: build/C/man2/dup.2:166
4446 msgid ""
4447 "I<newfd> is out of the allowed range for file descriptors (see the "
4448 "discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
4449 msgstr ""
4450 "I<newfd> がファイルディスクリプターとして許可されている範囲ではない "
4451 "(B<getrlimit>(2) の B<RLIMIT_NOFILE> の議論を参照)。"
4452
4453 #. type: TP
4454 #: build/C/man2/dup.2:166 build/C/man2/fcntl.2:1503 build/C/man2/fcntl.2:1512
4455 #: build/C/man2/swapon.2:117
4456 #, no-wrap
4457 msgid "B<EBUSY>"
4458 msgstr "B<EBUSY>"
4459
4460 #. type: Plain text
4461 #: build/C/man2/dup.2:176
4462 msgid ""
4463 "(Linux only) This may be returned by B<dup2>()  or B<dup3>()  during a race "
4464 "condition with B<open>(2)  and B<dup>()."
4465 msgstr ""
4466 "(Linux のみ)  B<open>(2)  や B<dup>()  との競合状態の場合に、 B<dup2>()  や "
4467 "B<dup3>()  はこのエラーを返すかもしれない。"
4468
4469 #. type: Plain text
4470 #: build/C/man2/dup.2:184
4471 msgid ""
4472 "The B<dup2>()  or B<dup3>()  call was interrupted by a signal; see "
4473 "B<signal>(7)."
4474 msgstr ""
4475 "B<dup2>()  や B<dup3>()  の呼び出しがシグナルにより割り込まれた。 "
4476 "B<signal>(7)  参照。"
4477
4478 #. type: Plain text
4479 #: build/C/man2/dup.2:189
4480 msgid "(B<dup3>())  I<flags> contain an invalid value."
4481 msgstr "(B<dup3>())  I<flags> に無効な値が入っている。"
4482
4483 #.  FIXME . To confirm with Al Viro that this was intended, and its rationale
4484 #. type: Plain text
4485 #: build/C/man2/dup.2:196
4486 msgid "(B<dup3>())  I<oldfd> was equal to I<newfd>."
4487 msgstr "(B<dup3>()) I<oldfd> が I<newfd> と同じであった。"
4488
4489 #. type: TP
4490 #: build/C/man2/dup.2:196 build/C/man2/execve.2:422 build/C/man2/fcntl.2:1607
4491 #: build/C/man3/getlogin.3:105
4492 #, no-wrap
4493 msgid "B<EMFILE>"
4494 msgstr "B<EMFILE>"
4495
4496 #. type: Plain text
4497 #: build/C/man2/dup.2:203
4498 msgid ""
4499 "The process already has the maximum number of file descriptors open and "
4500 "tried to open a new one (see the discussion of B<RLIMIT_NOFILE> in "
4501 "B<getrlimit>(2))."
4502 msgstr ""
4503 "プロセスがすでにオープンできる最大数までファイルディスクリプター を開いてい"
4504 "て、さらに新しいものを開こうとした (B<getrlimit>(2) のリソース上限 "
4505 "B<RLIMIT_NOFILE> を参照)。"
4506
4507 #. type: Plain text
4508 #: build/C/man2/dup.2:208
4509 msgid ""
4510 "B<dup3>()  was added to Linux in version 2.6.27; glibc support is available "
4511 "starting with version 2.9."
4512 msgstr ""
4513 "B<dup3>()  はバージョン 2.6.27 で Linux に追加された。 glibc によるサポートは"
4514 "バージョン 2.9 以降で利用できる。"
4515
4516 #. type: Plain text
4517 #: build/C/man2/dup.2:212
4518 msgid "B<dup>(), B<dup2>(): SVr4, 4.3BSD, POSIX.1-2001."
4519 msgstr "B<dup>(), B<dup2>(): SVr4, 4.3BSD, POSIX.1-2001."
4520
4521 #.  SVr4 documents additional
4522 #.  EINTR and ENOLINK error conditions.  POSIX.1 adds EINTR.
4523 #.  The EBUSY return is Linux-specific.
4524 #. type: Plain text
4525 #: build/C/man2/dup.2:218
4526 msgid "B<dup3>()  is Linux-specific."
4527 msgstr "B<dup3>()  は Linux 固有である。"
4528
4529 #. type: Plain text
4530 #: build/C/man2/dup.2:232
4531 msgid ""
4532 "The error returned by B<dup2>()  is different from that returned by "
4533 "B<fcntl(>..., B<F_DUPFD>, ...B<)> when I<newfd> is out of range.  On some "
4534 "systems, B<dup2>()  also sometimes returns B<EINVAL> like B<F_DUPFD>."
4535 msgstr ""
4536 "I<newfd> が範囲を超えた時に返されるエラーは、 B<dup2>()  と B<fcntl(>..., "
4537 "B<F_DUPFD>, ...B<)> では異っている。 B<dup2>()  が B<F_DUPFD> と同じように "
4538 "B<EINVAL> を返すシステムもある。"
4539
4540 #. type: Plain text
4541 #: build/C/man2/dup.2:248
4542 msgid ""
4543 "If I<newfd> was open, any errors that would have been reported at "
4544 "B<close>(2)  time are lost.  If this is of concern, then\\(emunless the "
4545 "program is single-threaded and does not allocate file descriptors in signal "
4546 "handlers\\(emthe correct approach is I<not> to close I<newfd> before calling "
4547 "B<dup2>(), because of the race condition described above.  Instead, code "
4548 "something like the following could be used:"
4549 msgstr ""
4550 "I<newfd> がオープンされていた場合、\n"
4551 "B<close>(2) 時に報告されることになるエラーはすべて失われる。\n"
4552 "これが心配で、シングルスレッドかつシグナルハンドラーで\n"
4553 "ファイルディスクリプターを割り当てるようなプログラムでない場合には、\n"
4554 "正しい方法は B<dup2>() を呼び出す前に\n"
4555 "I<newfd> をクローズ「しない」ことである。\n"
4556 "なぜなら、上で説明した競合状況があるからである。\n"
4557 "代わりに、以下のようなコードが使用できることだろう。"
4558
4559 #. type: Plain text
4560 #: build/C/man2/dup.2:253
4561 #, no-wrap
4562 msgid ""
4563 "    /* Obtain a duplicate of 'newfd' that can subsequently\n"
4564 "       be used to check for close() errors; an EBADF error\n"
4565 "       means that 'newfd' was not open. */\n"
4566 msgstr ""
4567 "    /* あとで close() エラーをチェックするのに使用できる\n"
4568 "       ように 'newfd' の複製を取得する。 EBADF エラーは\n"
4569 "       'newfd' がオープンされていないことを意味する。 */\n"
4570
4571 #. type: Plain text
4572 #: build/C/man2/dup.2:258
4573 #, no-wrap
4574 msgid ""
4575 "    tmpfd = dup(newfd);\n"
4576 "    if (tmpfd == -1 && errno != EBADF) {\n"
4577 "        /* Handle unexpected dup() error */\n"
4578 "    }\n"
4579 msgstr ""
4580 "    tmpfd = dup(newfd);\n"
4581 "    if (tmpfd == -1 && errno != EBADF) {\n"
4582 "        /* 予期しない dup() のエラーを処理する */\n"
4583 "    }\n"
4584
4585 #. type: Plain text
4586 #: build/C/man2/dup.2:260
4587 #, no-wrap
4588 msgid "    /* Atomically duplicate 'oldfd' on 'newfd' */\n"
4589 msgstr "    /* アトミックに 'oldfd' を 'newfd' に複製する */\n"
4590
4591 #. type: Plain text
4592 #: build/C/man2/dup.2:264
4593 #, no-wrap
4594 msgid ""
4595 "    if (dup2(oldfd, newfd) == -1) {\n"
4596 "        /* Handle dup2() error */\n"
4597 "    }\n"
4598 msgstr ""
4599 "    if (dup2(oldfd, newfd) == -1) {\n"
4600 "        /* dup2() のエラーを処理する */\n"
4601 "    }\n"
4602
4603 #. type: Plain text
4604 #: build/C/man2/dup.2:267
4605 #, no-wrap
4606 msgid ""
4607 "    /* Now check for close() errors on the file originally\n"
4608 "       referred to by 'newfd' */\n"
4609 msgstr ""
4610 "    /* ここでもともと 'newfd' で参照されていたファイルの\n"
4611 "       close() エラーをチェックする */\n"
4612
4613 #. type: Plain text
4614 #: build/C/man2/dup.2:273
4615 #, no-wrap
4616 msgid ""
4617 "    if (tmpfd != -1) {\n"
4618 "        if (close(tmpfd) == -1) {\n"
4619 "            /* Handle errors from close */\n"
4620 "        }\n"
4621 "    }\n"
4622 msgstr ""
4623 "    if (tmpfd != -1) {\n"
4624 "        if (close(tmpfd) == -1) {\n"
4625 "            /* close からのエラーを処理する */\n"
4626 "        }\n"
4627 "    }\n"
4628
4629 #. type: Plain text
4630 #: build/C/man2/dup.2:278
4631 msgid "B<close>(2), B<fcntl>(2), B<open>(2)"
4632 msgstr "B<close>(2), B<fcntl>(2), B<open>(2)"
4633
4634 #. type: TH
4635 #: build/C/man3/encrypt.3:30
4636 #, no-wrap
4637 msgid "ENCRYPT"
4638 msgstr "ENCRYPT"
4639
4640 #. type: TH
4641 #: build/C/man3/encrypt.3:30
4642 #, no-wrap
4643 msgid "2013-07-22"
4644 msgstr "2013-07-22"
4645
4646 #. type: Plain text
4647 #: build/C/man3/encrypt.3:33
4648 msgid "encrypt, setkey, encrypt_r, setkey_r - encrypt 64-bit messages"
4649 msgstr ""
4650 "encrypt, setkey, encrypt_r, setkey_r - 64 ビットのメッセージを暗号化する"
4651
4652 #. type: Plain text
4653 #: build/C/man3/encrypt.3:35 build/C/man3/encrypt.3:41
4654 msgid "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */"
4655 msgstr "B<#define _XOPEN_SOURCE> /* feature_test_macros(7) 参照 */"
4656
4657 #. type: Plain text
4658 #: build/C/man3/encrypt.3:39
4659 msgid "B<void encrypt(char >I<block>B<[64], int >I<edflag>B<);>"
4660 msgstr "B<void encrypt(char >I<block>B<[64], int >I<edflag>B<);>"
4661
4662 #. type: Plain text
4663 #: build/C/man3/encrypt.3:43
4664 msgid "B<#include E<lt>stdlib.hE<gt>>"
4665 msgstr "B<#include E<lt>stdlib.hE<gt>>"
4666
4667 #. type: Plain text
4668 #: build/C/man3/encrypt.3:45
4669 msgid "B<void setkey(const char *>I<key>B<);>"
4670 msgstr "B<void setkey(const char *>I<key>B<);>"
4671
4672 #. type: Plain text
4673 #: build/C/man3/encrypt.3:47 build/C/man3/getumask.3:33
4674 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
4675 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
4676
4677 #. type: Plain text
4678 #: build/C/man3/encrypt.3:49
4679 msgid "B<#include E<lt>crypt.hE<gt>>"
4680 msgstr "B<#include E<lt>crypt.hE<gt>>"
4681
4682 #. type: Plain text
4683 #: build/C/man3/encrypt.3:51
4684 msgid "B<void setkey_r(const char *>I<key>B<, struct crypt_data *>I<data>B<);>"
4685 msgstr ""
4686 "B<void setkey_r(const char *>I<key>B<, struct crypt_data *>I<data>B<);>"
4687
4688 #. type: Plain text
4689 #: build/C/man3/encrypt.3:54
4690 msgid ""
4691 "B<void encrypt_r(char *>I<block>B<, int >I<edflag>B<, struct crypt_data "
4692 "*>I<data>B<);>"
4693 msgstr ""
4694 "B<void encrypt_r(char *>I<block>B<, int >I<edflag>B<, struct crypt_data "
4695 "*>I<data>B<);>"
4696
4697 #. type: Plain text
4698 #: build/C/man3/encrypt.3:56
4699 msgid "Each of these requires linking with I<-lcrypt>."
4700 msgstr "これらの関数は I<-lcrypt> でリンクする必要がある。"
4701
4702 #. type: Plain text
4703 #: build/C/man3/encrypt.3:68
4704 msgid ""
4705 "These functions encrypt and decrypt 64-bit messages.  The B<setkey>()  "
4706 "function sets the key used by B<encrypt>().  The I<key> argument used here "
4707 "is an array of 64 bytes, each of which has numerical value 1 or 0.  The "
4708 "bytes key[n] where n=8*i-1 are ignored, so that the effective key length is "
4709 "56 bits."
4710 msgstr ""
4711 "これらの関数は、64 ビットのメッセージの暗号化と復号化を行う。 B<setkey>()  関"
4712 "数は B<encrypt>()  によって使われる暗号鍵を設定する。 ここで使われる引き数 "
4713 "I<key> は 64 バイトの配列であり、各バイトは数値 1 または 0 である。 n=8*i-1 "
4714 "に対するバイト key[n] は無視されるので、 有効な暗号鍵の長さは 56 ビットにな"
4715 "る。"
4716
4717 #. type: Plain text
4718 #: build/C/man3/encrypt.3:80
4719 msgid ""
4720 "The B<encrypt>()  function modifies the passed buffer, encoding if I<edflag> "
4721 "is 0, and decoding if 1 is being passed.  Like the I<key> argument, also "
4722 "I<block> is a bit vector representation of the actual value that is "
4723 "encoded.  The result is returned in that same vector."
4724 msgstr ""
4725 "B<encrypt>()  関数は、 I<edflag> が 0 の場合は暗号化し、1 が渡された場合は復"
4726 "号化するというように、 渡されたバッファーを変更する。 引き数 I<key> と同様"
4727 "に、 I<block> はエンコードされた実際の値を表現するビットの配列である。 結果は"
4728 "この同じ配列を使って返される。"
4729
4730 #. type: Plain text
4731 #: build/C/man3/encrypt.3:90
4732 msgid ""
4733 "These two functions are not reentrant, that is, the key data is kept in "
4734 "static storage.  The functions B<setkey_r>()  and B<encrypt_r>()  are the "
4735 "reentrant versions.  They use the following structure to hold the key data:"
4736 msgstr ""
4737 "これら 2 つの関数はリエントラント (reentrant) ではない。 つまり暗号鍵データは"
4738 "静的な領域に保存される。 関数 B<setkey_r>()  と B<encrypt_r>()  はリエントラ"
4739 "ントなバージョンである。 これらの関数は暗号鍵データを保持するために以下のよう"
4740 "な構造体を使う。"
4741
4742 #. type: Plain text
4743 #: build/C/man3/encrypt.3:105
4744 #, no-wrap
4745 msgid ""
4746 "struct crypt_data {\n"
4747 "    char     keysched[16 * 8];\n"
4748 "    char     sb0[32768];\n"
4749 "    char     sb1[32768];\n"
4750 "    char     sb2[32768];\n"
4751 "    char     sb3[32768];\n"
4752 "    char     crypt_3_buf[14];\n"
4753 "    char     current_salt[2];\n"
4754 "    long int current_saltbits;\n"
4755 "    int      direction;\n"
4756 "    int      initialized;\n"
4757 "};\n"
4758 msgstr ""
4759 "struct crypt_data {\n"
4760 "    char     keysched[16 * 8];\n"
4761 "    char     sb0[32768];\n"
4762 "    char     sb1[32768];\n"
4763 "    char     sb2[32768];\n"
4764 "    char     sb3[32768];\n"
4765 "    char     crypt_3_buf[14];\n"
4766 "    char     current_salt[2];\n"
4767 "    long int current_saltbits;\n"
4768 "    int      direction;\n"
4769 "    int      initialized;\n"
4770 "};\n"
4771
4772 #. type: Plain text
4773 #: build/C/man3/encrypt.3:113
4774 msgid "Before calling B<setkey_r>()  set I<data-E<gt>initialized> to zero."
4775 msgstr ""
4776 "B<setkey_r>()  を呼び出す前には、 I<data-E<gt>initialized> を 0 に設定するこ"
4777 "と。"
4778
4779 #. type: Plain text
4780 #: build/C/man3/encrypt.3:115
4781 msgid "These functions do not return any value."
4782 msgstr "これらの関数は、なにも値を返さない。"
4783
4784 #. type: Plain text
4785 #: build/C/man3/encrypt.3:120
4786 msgid ""
4787 "Set I<errno> to zero before calling the above functions.  On success, it is "
4788 "unchanged."
4789 msgstr ""
4790 "上記の関数を呼び出す前に I<errno> を 0 に設定すること。 成功した場合、この値"
4791 "は変更されない。"
4792
4793 #. type: Plain text
4794 #: build/C/man3/encrypt.3:124
4795 msgid ""
4796 "The function is not provided.  (For example because of former USA export "
4797 "restrictions.)"
4798 msgstr ""
4799 "(例えば以前のアメリカ合衆国輸出規制などにより)  この関数が提供されていない。"
4800
4801 #. type: Plain text
4802 #: build/C/man3/encrypt.3:131
4803 msgid "The B<encrypt>()  and B<setkey>()  functions are not thread-safe."
4804 msgstr "関数 B<encrypt>() と B<setkey>() はスレッドセーフではない。"
4805
4806 #. type: Plain text
4807 #: build/C/man3/encrypt.3:137
4808 msgid "The B<encrypt_r>()  and B<setkey_r>()  functions are thread-safe."
4809 msgstr "関数 B<encrypt_r>() と B<setkey_r>() はスレッドセーフである。"
4810
4811 #. type: Plain text
4812 #: build/C/man3/encrypt.3:148
4813 msgid ""
4814 "The functions B<encrypt>()  and B<setkey>()  conform to SVr4, SUSv2, and "
4815 "POSIX.1-2001.  The functions B<encrypt_r>()  and B<setkey_r>()  are GNU "
4816 "extensions."
4817 msgstr ""
4818 "関数 B<encrypt>()  と B<setkey>()  は SVr4, SUSv2, and POSIX.1-2001 に準拠す"
4819 "る。 関数 B<encrypt_r>()  と B<setkey_r>()  は GNU 拡張である。"
4820
4821 #. type: Plain text
4822 #: build/C/man3/encrypt.3:150
4823 msgid "In glibc 2.2, these functions use the DES algorithm."
4824 msgstr "glibc 2.2 では、これらの関数は DES アルゴリズムを使う。"
4825
4826 #. type: Plain text
4827 #: build/C/man3/encrypt.3:157
4828 msgid ""
4829 "You need to link with libcrypt to compile this example with glibc.  To do "
4830 "useful work, the I<key[]> and I<txt[]> arrays must be filled with a useful "
4831 "bit pattern."
4832 msgstr ""
4833 "この例を glibc でコンパイルするには libcrypt とリンクする必要がある。 実際に"
4834 "動作させるためには、配列 I<key[]> と I<txt[]> に有効なビットパターンを指定し"
4835 "なければならない。"
4836
4837 #. type: Plain text
4838 #: build/C/man3/encrypt.3:162
4839 #, no-wrap
4840 msgid ""
4841 "#define _XOPEN_SOURCE\n"
4842 "#include E<lt>unistd.hE<gt>\n"
4843 "#include E<lt>stdlib.hE<gt>\n"
4844 msgstr ""
4845 "#define _XOPEN_SOURCE\n"
4846 "#include E<lt>unistd.hE<gt>\n"
4847 "#include E<lt>stdlib.hE<gt>\n"
4848
4849 #. type: Plain text
4850 #: build/C/man3/encrypt.3:168
4851 #, no-wrap
4852 msgid ""
4853 "int\n"
4854 "main(void)\n"
4855 "{\n"
4856 "    char key[64];      /* bit pattern for key */\n"
4857 "    char txt[64];      /* bit pattern for messages */\n"
4858 msgstr ""
4859 "int\n"
4860 "main(void)\n"
4861 "{\n"
4862 "    char key[64];      /* bit pattern for key */\n"
4863 "    char txt[64];      /* bit pattern for messages */\n"
4864
4865 #. type: Plain text
4866 #: build/C/man3/encrypt.3:173
4867 #, no-wrap
4868 msgid ""
4869 "    setkey(key);\n"
4870 "    encrypt(txt, 0);   /* encode */\n"
4871 "    encrypt(txt, 1);   /* decode */\n"
4872 "}\n"
4873 msgstr ""
4874 "    setkey(key);\n"
4875 "    encrypt(txt, 0);   /* encode */\n"
4876 "    encrypt(txt, 1);   /* decode */\n"
4877 "}\n"
4878
4879 #.  .BR fcrypt (3)
4880 #. type: Plain text
4881 #: build/C/man3/encrypt.3:179
4882 msgid "B<cbc_crypt>(3), B<crypt>(3), B<ecb_crypt>(3),"
4883 msgstr "B<cbc_crypt>(3), B<crypt>(3), B<ecb_crypt>(3)"
4884
4885 #. type: TH
4886 #: build/C/man7/environ.7:34
4887 #, no-wrap
4888 msgid "ENVIRON"
4889 msgstr "ENVIRON"
4890
4891 #. type: Plain text
4892 #: build/C/man7/environ.7:37
4893 msgid "environ - user environment"
4894 msgstr "environ - ユーザー環境"
4895
4896 #. type: Plain text
4897 #: build/C/man7/environ.7:40
4898 #, no-wrap
4899 msgid "B<extern char **>I<environ>B<;>\n"
4900 msgstr "B<extern char **>I<environ>B<;>\n"
4901
4902 #. type: Plain text
4903 #: build/C/man7/environ.7:56
4904 msgid ""
4905 "The variable I<environ> points to an array of pointers to strings called the "
4906 "\"environment\".  The last pointer in this array has the value NULL.  (This "
4907 "variable must be declared in the user program, but is declared in the header "
4908 "file I<E<lt>unistd.hE<gt>> if the B<_GNU_SOURCE> feature test macro is "
4909 "defined.)  This array of strings is made available to the process by the "
4910 "B<exec>(3)  call that started the process."
4911 msgstr ""
4912 "変数 I<environ> は「環境 (environment)」と呼ばれる文字列へのポインターの配列"
4913 "である。 この配列の最後のポインターの値は NULL である。 (この変数はユーザープ"
4914 "ログラムで宣言しなければならないが、 機能検査マクロ B<_GNU_SOURCE> が定義され"
4915 "ていればヘッダーファイル I<E<lt>unistd.hE<gt>> で宣言される)。 この文字列配列"
4916 "は、 プロセスを起動する B<exec>(3)  によって、その起動されたプロセスで利用で"
4917 "きるようになる。"
4918
4919 #. type: Plain text
4920 #: build/C/man7/environ.7:61
4921 msgid ""
4922 "By convention the strings in I<environ> have the form \"I<name>B<=>I<value>"
4923 "\".  Common examples are:"
4924 msgstr ""
4925 "通例では、 I<environ> の文字列は \"I<name>B<=>I<value>\" という書式をとる。 "
4926 "よく用いられる例を以下に示す。"
4927
4928 #. type: TP
4929 #: build/C/man7/environ.7:61
4930 #, no-wrap
4931 msgid "B<USER>"
4932 msgstr "B<USER>"
4933
4934 #. type: Plain text
4935 #: build/C/man7/environ.7:64
4936 msgid "The name of the logged-in user (used by some BSD-derived programs)."
4937 msgstr "ユーザーのログイン名 (BSD 起源のプログラムなどによって使用される)。"
4938
4939 #. type: TP
4940 #: build/C/man7/environ.7:64
4941 #, no-wrap
4942 msgid "B<LOGNAME>"
4943 msgstr "B<LOGNAME>"
4944
4945 #. type: Plain text
4946 #: build/C/man7/environ.7:67
4947 msgid ""
4948 "The name of the logged-in user (used by some System-V derived programs)."
4949 msgstr ""
4950 "ユーザーのログイン名(System V 起源のプログラムなどによって使用される)。"
4951
4952 #. type: TP
4953 #: build/C/man7/environ.7:67
4954 #, no-wrap
4955 msgid "B<HOME>"
4956 msgstr "B<HOME>"
4957
4958 #. type: Plain text
4959 #: build/C/man7/environ.7:73
4960 msgid ""
4961 "A user's login directory, set by B<login>(1)  from the password file "
4962 "B<passwd>(5)."
4963 msgstr ""
4964 "ユーザーのログインディレクトリ。 B<login>(1)  がパスワードファイル "
4965 "B<passwd>(5)  から取得して設定する。"
4966
4967 #. type: TP
4968 #: build/C/man7/environ.7:73
4969 #, no-wrap
4970 msgid "B<LANG>"
4971 msgstr "B<LANG>"
4972
4973 #. type: Plain text
4974 #: build/C/man7/environ.7:91
4975 msgid ""
4976 "The name of a locale to use for locale categories when not overridden by "
4977 "B<LC_ALL> or more specific environment variables such as B<LC_COLLATE>, "
4978 "B<LC_CTYPE>, B<LC_MESSAGES>, B<LC_MONETARY>, B<LC_NUMERIC>, and B<LC_TIME> "
4979 "(see B<locale>(7)  for further details of the B<LC_*> environment variables)."
4980 msgstr ""
4981 "ロケールの各カテゴリーで使用されるロケールの名前。B<LC_ALL> や、 より狭い範囲"
4982 "を対象とする環境変数 (B<LC_COLLATE>, B<LC_CTYPE>, B<LC_MESSAGES>, "
4983 "B<LC_MONETARY>, B<LC_NUMERIC>, B<LC_TIME> など)  によって上書きされることもあ"
4984 "る (B<LC_*> 環境変数のさらなる詳細は B<locale>(7) 参照)。"
4985
4986 #. type: TP
4987 #: build/C/man7/environ.7:91
4988 #, no-wrap
4989 msgid "B<PATH>"
4990 msgstr "B<PATH>"
4991
4992 #. type: Plain text
4993 #: build/C/man7/environ.7:106
4994 msgid ""
4995 "The sequence of directory prefixes that B<sh>(1)  and many other programs "
4996 "apply in searching for a file known by an incomplete pathname.  The prefixes "
4997 "are separated by \\(aqB<:>\\(aq.  (Similarly one has B<CDPATH> used by some "
4998 "shells to find the target of a change directory command, B<MANPATH> used by "
4999 "B<man>(1)  to find manual pages, and so on)"
5000 msgstr ""
5001 "B<sh>(1)  や他のプログラムが、フルパスで与えられなかった実行ファイルを検索す"
5002 "るとき、 ファイル名に前置されるディレクトリの配列。 各ディレクトリは \\(aqB<:"
5003 ">\\(aq によって区切られる。 (同じようなものに、 シェルがディレクトリ変更コマ"
5004 "ンドの変更先を探すために用いる B<CDPATH> や、 B<man>(1)  がマニュアルページの"
5005 "検索に用いる B<MANPATH> などがある。)"
5006
5007 #. type: TP
5008 #: build/C/man7/environ.7:106
5009 #, no-wrap
5010 msgid "B<PWD>"
5011 msgstr "B<PWD>"
5012
5013 #. type: Plain text
5014 #: build/C/man7/environ.7:110
5015 msgid "The current working directory.  Set by some shells."
5016 msgstr "現在のワーキングディレクトリ。いくつかのシェルが設定する。"
5017
5018 #. type: TP
5019 #: build/C/man7/environ.7:110
5020 #, no-wrap
5021 msgid "B<SHELL>"
5022 msgstr "B<SHELL>"
5023
5024 #. type: Plain text
5025 #: build/C/man7/environ.7:113
5026 msgid "The pathname of the user's login shell."
5027 msgstr "ユーザーのログインシェルのパス名。"
5028
5029 #. type: TP
5030 #: build/C/man7/environ.7:113
5031 #, no-wrap
5032 msgid "B<TERM>"
5033 msgstr "B<TERM>"
5034
5035 #. type: Plain text
5036 #: build/C/man7/environ.7:116
5037 msgid "The terminal type for which output is to be prepared."
5038 msgstr "端末の種類。出力はこれにあわせて用意される。"
5039
5040 #. type: TP
5041 #: build/C/man7/environ.7:116
5042 #, no-wrap
5043 msgid "B<PAGER>"
5044 msgstr "B<PAGER>"
5045
5046 #. type: Plain text
5047 #: build/C/man7/environ.7:119
5048 msgid "The user's preferred utility to display text files."
5049 msgstr ""
5050 "テキストファイルを表示するユーテリティ。ユーザーが好みのものを設定する。"
5051
5052 #. type: TP
5053 #: build/C/man7/environ.7:119
5054 #, no-wrap
5055 msgid "B<EDITOR>/B<VISUAL>"
5056 msgstr "B<EDITOR>/B<VISUAL>"
5057
5058 #.  .TP
5059 #.  .B BROWSER
5060 #.  The user's preferred utility to browse URLs. Sequence of colon-separated
5061 #.  browser commands. See http://www.catb.org/~esr/BROWSER/ .
5062 #. type: Plain text
5063 #: build/C/man7/environ.7:126
5064 msgid "The user's preferred utility to edit text files."
5065 msgstr ""
5066 "テキストファイルを編集するユーテリティ。ユーザーが好みのものを設定する。"
5067
5068 #. type: Plain text
5069 #: build/C/man7/environ.7:144
5070 msgid ""
5071 "Further names may be placed in the environment by the I<export> command and "
5072 "\"name=value\" in B<sh>(1), or by the I<setenv> command if you use "
5073 "B<csh>(1).  Arguments may also be placed in the environment at the point of "
5074 "an B<exec>(3).  A C program can manipulate its environment using the "
5075 "functions B<getenv>(3), B<putenv>(3), B<setenv>(3), and B<unsetenv>(3)."
5076 msgstr ""
5077 "環境に名前を追加する場合には、 B<sh>(1)  では I<export> コマンドと "
5078 "\"name=value\" を使用する。 B<csh>(1)  では I<setenv> コマンドを使用する。 "
5079 "B<exec>(3)  の引数としても環境を設定することができる。 C プログラムからは、 "
5080 "B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3)  などの関数を用いて"
5081 "環境を扱うことができる。"
5082
5083 #. type: Plain text
5084 #: build/C/man7/environ.7:148
5085 msgid ""
5086 "Note that the behavior of many programs and library routines is influenced "
5087 "by the presence or value of certain environment variables.  A random "
5088 "collection:"
5089 msgstr ""
5090 "プログラムやライブラリルーチンの多くは、それぞれ適当な環境変数の存在 や値に"
5091 "よって、動作に影響を受けることがある。以下、適宜挙げてみよう。"
5092
5093 #. type: Plain text
5094 #: build/C/man7/environ.7:157
5095 msgid ""
5096 "The variables B<LANG>, B<LANGUAGE>, B<NLSPATH>, B<LOCPATH>, B<LC_ALL>, "
5097 "B<LC_MESSAGES>, and so on influence locale handling; see B<catopen>(3), "
5098 "B<gettext>(3), and B<locale>(7)."
5099 msgstr ""
5100 "B<LANG>, B<LANGUAGE>, B<NLSPATH>, B<LOCPATH>, B<LC_ALL>, B<LC_MESSAGES>, など"
5101 "の変数は、ロケールの扱いに影響する。 B<catopen>(3), B<gettext>(3), "
5102 "B<locale>(5) を参照。"
5103
5104 #. type: Plain text
5105 #: build/C/man7/environ.7:164
5106 msgid ""
5107 "B<TMPDIR> influences the path prefix of names created by B<tmpnam>(3)  and "
5108 "other routines, and the temporary directory used by B<sort>(1)  and other "
5109 "programs."
5110 msgstr ""
5111 "B<TMPDIR> は、 B<tmpnam>(3) などのルーチンによって作成されるファイル名や "
5112 "B<sort>(1) や他のプログラムが使用する一時ディレクトリに前置されるパスに影響す"
5113 "る。"
5114
5115 #. type: Plain text
5116 #: build/C/man7/environ.7:168
5117 msgid ""
5118 "B<LD_LIBRARY_PATH>, B<LD_PRELOAD> and other LD_* variables influence the "
5119 "behavior of the dynamic loader/linker."
5120 msgstr ""
5121 "B<LD_LIBRARY_PATH>, B<LD_PRELOAD> などの LD_* 変数はダイナミックローダーリン"
5122 "カーの動作に影響する。"
5123
5124 #. type: Plain text
5125 #: build/C/man7/environ.7:172
5126 msgid ""
5127 "B<POSIXLY_CORRECT> makes certain programs and library routines follow the "
5128 "prescriptions of POSIX."
5129 msgstr ""
5130 "B<POSIXLY_CORRECT> が指定されると、ある種のプログラムやライブラリルーチンは "
5131 "POSIX の規定に従うようになる。"
5132
5133 #. type: Plain text
5134 #: build/C/man7/environ.7:178
5135 msgid "The behavior of B<malloc>(3)  is influenced by B<MALLOC_*> variables."
5136 msgstr "B<malloc>(3)  の動作は B<MALLOC_*> 変数によって影響される。"
5137
5138 #. type: Plain text
5139 #: build/C/man7/environ.7:184
5140 msgid ""
5141 "The variable B<HOSTALIASES> gives the name of a file containing aliases to "
5142 "be used with B<gethostbyname>(3)."
5143 msgstr ""
5144 "B<HOSTALIAS> 変数は、 B<gethostbyname>(3)  が用いるエイリアスが書かれている"
5145 "ファイル名を与える。"
5146
5147 #. type: Plain text
5148 #: build/C/man7/environ.7:195
5149 msgid ""
5150 "B<TZ> and B<TZDIR> give timezone information used by B<tzset>(3)  and "
5151 "through that by functions like B<ctime>(3), B<localtime>(3), B<mktime>(3), "
5152 "B<strftime>(3).  See also B<tzselect>(8)."
5153 msgstr ""
5154 "B<TZ> と B<TZDIR> は B<tzset>(3)  および、この関数を使う B<ctime>(3), "
5155 "B<localtime>(3), B<mktime>(3), B<strftime>(3)  といった関数で用いられるタイム"
5156 "ゾーンの情報を与える。 B<tzselect>(8)  も参照のこと。"
5157
5158 #. type: Plain text
5159 #: build/C/man7/environ.7:199
5160 msgid ""
5161 "B<TERMCAP> gives information on how to address a given terminal (or gives "
5162 "the name of a file containing such information)."
5163 msgstr ""
5164 "B<TERMCAP> は、現在の端末情報の取得先 (あるいはそのような情報が書かれている"
5165 "ファイル名) を与える。"
5166
5167 #. type: Plain text
5168 #: build/C/man7/environ.7:202
5169 msgid ""
5170 "B<COLUMNS> and B<LINES> tell applications about the window size, possibly "
5171 "overriding the actual size."
5172 msgstr ""
5173 "B<COLUMNS> と B<LINES> アプリケーションにウインドウのサイズを伝える。 実際の"
5174 "サイズとは違う値を与えることもできる。"
5175
5176 #. type: Plain text
5177 #: build/C/man7/environ.7:207
5178 msgid ""
5179 "B<PRINTER> or B<LPDEST> may specify the desired printer to use.  See "
5180 "B<lpr>(1)."
5181 msgstr ""
5182 "B<PRINTER> または B<LPDEST> 用いたいプリンタを指定する。 B<lpr>(1)  を参照の"
5183 "こと。"
5184
5185 #. type: Plain text
5186 #: build/C/man7/environ.7:209
5187 msgid "Etc."
5188 msgstr "などなど..."
5189
5190 #. type: Plain text
5191 #: build/C/man7/environ.7:214
5192 msgid ""
5193 "Clearly there is a security risk here.  Many a system command has been "
5194 "tricked into mischief by a user who specified unusual values for B<IFS> or "
5195 "B<LD_LIBRARY_PATH>."
5196 msgstr ""
5197 "これらの中には、明らかにセキュリティ上の危険が存在する。 ユーザーが B<IFS> "
5198 "や B<LD_LIBRARY_PATH> に異常な値を与えたことによって、 これまで多くのシステム"
5199 "コマンドがだまされて、 システムをひどい目にあわせてきた。"
5200
5201 #. type: Plain text
5202 #: build/C/man7/environ.7:247
5203 msgid ""
5204 "There is also the risk of name space pollution.  Programs like I<make> and "
5205 "I<autoconf> allow overriding of default utility names from the environment "
5206 "with similarly named variables in all caps.  Thus one uses B<CC> to select "
5207 "the desired C compiler (and similarly B<MAKE>, B<AR>, B<AS>, B<FC>, B<LD>, "
5208 "B<LEX>, B<RM>, B<YACC>, etc.).  However, in some traditional uses such an "
5209 "environment variable gives options for the program instead of a pathname.  "
5210 "Thus, one has B<MORE>, B<LESS>, and B<GZIP>.  Such usage is considered "
5211 "mistaken, and to be avoided in new programs.  The authors of I<gzip> should "
5212 "consider renaming their option to B<GZIP_OPT>."
5213 msgstr ""
5214 "名前空間が汚染される危険性も存在する。 I<make> や I<autoconf> のようなプログ"
5215 "ラムでは、デフォルトのユーティリティを 環境にある似たような名前の変数で上書き"
5216 "することができる (通常はすべて大文字の変数を用いる)。 すなわち、利用したい C "
5217 "コンパイラは B<CC> で選択できる。また同様に B<MAKE>, B<AR>, B<AS>, B<FC>, "
5218 "B<LD>, B<LEX>, B<RM>, B<YACC> なども用いることができる。 ところが一方では、こ"
5219 "のような変数を (パス名ではなく)  プログラムに対するオプションとして扱うような"
5220 "流儀も存在してきた。 例えば B<MORE>, B<LESS>, B<GZIP> などがそうである。 この"
5221 "ような利用法は間違っていると考えるべきで、 新しいプログラムでは避けるべきであ"
5222 "る。 I<gzip> の作者たちは、オプションを与える環境変数を B<GZIP_OPT> に改名す"
5223 "ることを考えるほうがよい。"
5224
5225 #. type: Plain text
5226 #: build/C/man7/environ.7:264
5227 msgid ""
5228 "B<env>(1), B<bash>(1), B<csh>(1), B<login>(1), B<printenv>(1), B<sh>(1), "
5229 "B<tcsh>(1), B<execve>(2), B<clearenv>(3), B<exec>(3), B<getenv>(3), "
5230 "B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<locale>(7), B<ld.so>(8)"
5231 msgstr ""
5232 "B<env>(1), B<bash>(1), B<csh>(1), B<login>(1), B<printenv>(1), B<sh>(1), "
5233 "B<tcsh>(1), B<execve>(2), B<clearenv>(3), B<exec>(3), B<getenv>(3), "
5234 "B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<locale>(7), B<ld.so>(8)"
5235
5236 #. type: TH
5237 #: build/C/man3/euidaccess.3:25
5238 #, no-wrap
5239 msgid "EUIDACCESS"
5240 msgstr "EUIDACCESS"
5241
5242 #. type: TH
5243 #: build/C/man3/euidaccess.3:25
5244 #, no-wrap
5245 msgid "2013-09-25"
5246 msgstr "2013-09-25"
5247
5248 #. type: Plain text
5249 #: build/C/man3/euidaccess.3:28
5250 msgid "euidaccess, eaccess - check effective user's permissions for a file"
5251 msgstr ""
5252 "euidaccess, eaccess - ファイルへのアクセス権を実効ユーザーでチェックする"
5253
5254 #. type: Plain text
5255 #: build/C/man3/euidaccess.3:32
5256 #, no-wrap
5257 msgid ""
5258 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
5259 "B<#include E<lt>unistd.hE<gt>>\n"
5260 msgstr ""
5261 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
5262 "B<#include E<lt>unistd.hE<gt>>\n"
5263
5264 #. type: Plain text
5265 #: build/C/man3/euidaccess.3:35
5266 #, no-wrap
5267 msgid ""
5268 "B<int euidaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5269 "B<int eaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5270 msgstr ""
5271 "B<int euidaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5272 "B<int eaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
5273
5274 #. type: Plain text
5275 #: build/C/man3/euidaccess.3:47
5276 msgid ""
5277 "Like B<access>(2), B<euidaccess>()  checks permissions and existence of the "
5278 "file identified by its argument I<pathname>.  However, whereas B<access>(2)  "
5279 "performs checks using the real user and group identifiers of the process, "
5280 "B<euidaccess>()  uses the effective identifiers."
5281 msgstr ""
5282 "B<access>(2)  と同様、 B<euidaccess>()  は引き数 I<pathname> で指定されたファ"
5283 "イルの許可 (permission) と存在のチェックを行う。 B<access>(2)  はプロセスの"
5284 "実 (real) ユーザーID / 実グループID を用いてチェックを行うのに対し、 "
5285 "B<euidaccess>()  は実効 (effective) ID を用いる。"
5286
5287 #. type: Plain text
5288 #: build/C/man3/euidaccess.3:53
5289 msgid ""
5290 "I<mode> is a mask consisting of one or more of B<R_OK>, B<W_OK>, B<X_OK>, "
5291 "and B<F_OK>, with the same meanings as for B<access>(2)."
5292 msgstr ""
5293 "I<mode> は B<R_OK>, B<W_OK>, B<X_OK>, B<F_OK> の一つ以上から構成されるマスク"
5294 "である。 B<R_OK>, B<W_OK>, B<X_OK>, B<F_OK> は B<access>(2)  と同じ意味を持"
5295 "つ。"
5296
5297 #. type: Plain text
5298 #: build/C/man3/euidaccess.3:58
5299 msgid ""
5300 "B<eaccess>()  is a synonym for B<euidaccess>(), provided for compatibility "
5301 "with some other systems."
5302 msgstr ""
5303 "B<eaccess>()  は B<euidaccess>()  の同義語であり、他のいくつかのシステムとの"
5304 "互換性のために提供されている。"
5305
5306 #. type: Plain text
5307 #: build/C/man3/euidaccess.3:66
5308 msgid ""
5309 "On success (all requested permissions granted), zero is returned.  On error "
5310 "(at least one bit in I<mode> asked for a permission that is denied, or some "
5311 "other error occurred), -1 is returned, and I<errno> is set appropriately."
5312 msgstr ""
5313 "成功した場合 (要求した全てについて許可が得られたら)、ゼロが返される。 エラー"
5314 "の場合 (I<mode> の少なくとも一つのビットで要求した許可がなかった場合や、 他の"
5315 "エラーが起こった場合)、-1 が返され、 I<errno> が適切に設定される。"
5316
5317 #. type: Plain text
5318 #: build/C/man3/euidaccess.3:69
5319 msgid "As for B<access>(2)."
5320 msgstr "B<access>(2)  と同じ。"
5321
5322 #. type: Plain text
5323 #: build/C/man3/euidaccess.3:73
5324 msgid "The B<eaccess>()  function was added to glibc in version 2.4."
5325 msgstr "B<eaccess>()  関数は glibc のバージョン 2.4 で追加された。"
5326
5327 #. type: Plain text
5328 #: build/C/man3/euidaccess.3:80
5329 msgid "The B<euidaccess>()  and B<eaccess>()  functions are thread-safe."
5330 msgstr "関数 B<euidaccess>() と B<eaccess>() はスレッドセーフである。"
5331
5332 #.  e.g., FreeBSD 6.1.
5333 #. type: Plain text
5334 #: build/C/man3/euidaccess.3:86
5335 msgid ""
5336 "These functions are nonstandard.  Some other systems have an B<eaccess>()  "
5337 "function."
5338 msgstr ""
5339 "これらの関数は非標準である。 他のいくつかのシステムには B<eaccess>()  関数が"
5340 "ある。"
5341
5342 #. type: Plain text
5343 #: build/C/man3/euidaccess.3:93
5344 msgid ""
5345 "I<Warning>: Using this function to check a process's permissions on a file "
5346 "before performing some operation based on that information leads to race "
5347 "conditions: the file permissions may change between the two steps.  "
5348 "Generally, it is safer just to attempt the desired operation and handle any "
5349 "permission error that occurs."
5350 msgstr ""
5351 "I<警告>: \n"
5352 "ある操作を実行する前にこの関数を使ってファイルに対するプロセスのアクセス許可"
5353 "を\n"
5354 "確認してから、その情報に基づいて操作を行うと、競合条件が発生する可能性があ"
5355 "る。\n"
5356 "これは二つの操作の間でファイルのアクセス許可が変化する場合があるからであ"
5357 "る。\n"
5358 "一般的には、必要な操作のみを行い、その際に発生したアクセス許可に関するエラー"
5359 "を\n"
5360 "処理する方が安全である。"
5361
5362 #. type: Plain text
5363 #: build/C/man3/euidaccess.3:101
5364 msgid ""
5365 "This function always dereferences symbolic links.  If you need to check the "
5366 "permissions on a symbolic link, use B<faccessat>(2)  with the flags "
5367 "B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW>."
5368 msgstr ""
5369 "この関数は常にシンボリックリンクの展開を行う。\n"
5370 "シンボリックリンクのアクセス許可を確認する必要がある場合は、\n"
5371 "フラグ B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> を付けて\n"
5372 "B<faccessat>(2) を使うこと。"
5373
5374 #. type: Plain text
5375 #: build/C/man3/euidaccess.3:112
5376 msgid ""
5377 "B<access>(2), B<chmod>(2), B<chown>(2), B<faccessat>(2), B<open>(2), "
5378 "B<setgid>(2), B<setuid>(2), B<stat>(2), B<credentials>(7), "
5379 "B<path_resolution>(7)"
5380 msgstr ""
5381 "B<access>(2), B<chmod>(2), B<chown>(2), B<faccessat>(2), B<open>(2), "
5382 "B<setgid>(2), B<setuid>(2), B<stat>(2), B<credentials>(7), "
5383 "B<path_resolution>(7)"
5384
5385 #. type: TH
5386 #: build/C/man3/exec.3:41
5387 #, no-wrap
5388 msgid "EXEC"
5389 msgstr "EXEC"
5390
5391 #. type: Plain text
5392 #: build/C/man3/exec.3:44
5393 msgid "execl, execlp, execle, execv, execvp, execvpe - execute a file"
5394 msgstr "execl, execlp, execle, execv, execvp, execvpe - ファイルを実行する"
5395
5396 #. type: Plain text
5397 #: build/C/man3/exec.3:48
5398 msgid "B<extern char **environ;>"
5399 msgstr "B<extern char **environ;>"
5400
5401 #. type: Plain text
5402 #: build/C/man3/exec.3:50
5403 msgid "B<int execl(const char *>I<path>B<, const char *>I<arg>B<, ...);>"
5404 msgstr "B<int execl(const char *>I<path>B<, const char *>I<arg>B<, ...);>"
5405
5406 #. type: Plain text
5407 #: build/C/man3/exec.3:52
5408 msgid "B<int execlp(const char *>I<file>B<, const char *>I<arg>B<, ...);>"
5409 msgstr "B<int execlp(const char *>I<file>B<, const char *>I<arg>B<, ...);>"
5410
5411 #. type: Plain text
5412 #: build/C/man3/exec.3:54
5413 msgid "B<int execle(const char *>I<path>B<, const char *>I<arg>B<,>"
5414 msgstr "B<int execle(const char *>I<path>B<, const char *>I<arg>B<,>"
5415
5416 #. type: Plain text
5417 #: build/C/man3/exec.3:56
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:58
5423 msgid "B<int execv(const char *>I<path>B<, char *const >I<argv>B<[]);>"
5424 msgstr "B<int execv(const char *>I<path>B<, char *const >I<argv>B<[]);>"
5425
5426 #. type: Plain text
5427 #: build/C/man3/exec.3:60
5428 msgid "B<int execvp(const char *>I<file>B<, char *const >I<argv>B<[]);>"
5429 msgstr "B<int execvp(const char *>I<file>B<, char *const >I<argv>B<[]);>"
5430
5431 #. type: Plain text
5432 #: build/C/man3/exec.3:62
5433 msgid "B<int execvpe(const char *>I<file>B<, char *const >I<argv>B<[],>"
5434 msgstr "B<int execvpe(const char *>I<file>B<, char *const >I<argv>B<[],>"
5435
5436 #. type: Plain text
5437 #: build/C/man3/exec.3:64 build/C/man2/execve.2:46
5438 msgid "B< char *const >I<envp>B<[]);>"
5439 msgstr "B< char *const >I<envp>B<[]);>"
5440
5441 #. type: Plain text
5442 #: build/C/man3/exec.3:72
5443 msgid "B<execvpe>(): _GNU_SOURCE"
5444 msgstr "B<execvpe>(): _GNU_SOURCE"
5445
5446 #. type: Plain text
5447 #: build/C/man3/exec.3:82
5448 msgid ""
5449 "The B<exec>()  family of functions replaces the current process image with a "
5450 "new process image.  The functions described in this manual page are front-"
5451 "ends for B<execve>(2).  (See the manual page for B<execve>(2)  for further "
5452 "details about the replacement of the current process image.)"
5453 msgstr ""
5454 "B<exec>()  ファミリーの関数は現在のプロセスイメージを新しいプロセスイメージで"
5455 "置き 換える。このマニュアルで説明されている関数は B<execve>(2)  のフロントエ"
5456 "ンドである。 (現在のプロセスイメージの置き換えについての詳細は B<execve>(2)  "
5457 "のマニュアルを参照)"
5458
5459 #. type: Plain text
5460 #: build/C/man3/exec.3:85
5461 msgid ""
5462 "The initial argument for these functions is the name of a file that is to be "
5463 "executed."
5464 msgstr "これらの関数の最初の引き数は、実行されるファイルの名前である。"
5465
5466 #. type: Plain text
5467 #: build/C/man3/exec.3:107
5468 msgid ""
5469 "The I<const char\\ *arg> and subsequent ellipses in the B<execl>(), "
5470 "B<execlp>(), and B<execle>()  functions can be thought of as I<arg0>, "
5471 "I<arg1>, \\&..., I<argn>.  Together they describe a list of one or more "
5472 "pointers to null-terminated strings that represent the argument list "
5473 "available to the executed program.  The first argument, by convention, "
5474 "should point to the filename associated with the file being executed.  The "
5475 "list of arguments I<must> be terminated by a null pointer, and, since these "
5476 "are variadic functions, this pointer must be cast I<(char\\ *) NULL>."
5477 msgstr ""
5478 "関数 B<execl>(), B<execlp>(), B<execle>()  の I<const char\\ *arg> とそれに続"
5479 "く省略部分は I<arg0>, I<arg1>, \\&..., I<argn> とみなされる。 これらには、実"
5480 "行されるプログラムで利用可能な引き数のリストを指定する (引き数のリストは ヌル"
5481 "で終端された文字列へのポインターから構成される)。 慣習として、最初の引き数"
5482 "は、実行されるファイル名 へのポインターにする。引き数のリストは必ず NULL で終"
5483 "わらなければならず、これらの関数は可変長引き数関数なので、 このポインターは "
5484 "I<(char\\ *) NULL> とキャストしなければならない。"
5485
5486 #. type: Plain text
5487 #: build/C/man3/exec.3:120
5488 msgid ""
5489 "The B<execv>(), B<execvp>(), and B<execvpe>()  functions provide an array of "
5490 "pointers to null-terminated strings that represent the argument list "
5491 "available to the new program.  The first argument, by convention, should "
5492 "point to the filename associated with the file being executed.  The array of "
5493 "pointers I<must> be terminated by a null pointer."
5494 msgstr ""
5495 "関数 B<execv>(), B<execvp>(), B<execvpe>()  は、利用可能な引き数リスト (ヌル"
5496 "で終端された文字列への ポインターの配列) を新しいプログラムに渡す。 慣習とし"
5497 "て、最初の引き数は実行されるファイル名へ のポインターにする。ポインターの配列"
5498 "は必ず NULL で終わらなければならない。"
5499
5500 #. type: Plain text
5501 #: build/C/man3/exec.3:137
5502 msgid ""
5503 "The B<execle>()  and B<execvpe>()  functions allow the caller to specify the "
5504 "environment of the executed program via the argument I<envp>.  The I<envp> "
5505 "argument is an array of pointers to null-terminated strings and I<must> be "
5506 "terminated by a null pointer.  The other functions take the environment for "
5507 "the new process image from the external variable I<environ> in the calling "
5508 "process."
5509 msgstr ""
5510 "関数 B<execle>(), B<execvpe>()  では、呼び出し元が引き数 I<envp> 経由実行され"
5511 "るプログラムの環境を指定することができる。 I<envp> 引き数は、NULL で終端され"
5512 "た文字列へのポインターの配列であり、ヌルポインターで終わらなければならない。 "
5513 "他の関数では、呼び出し元のプロセスの外部変数 B<environ> から新しいプロセス用"
5514 "の環境を与える。"
5515
5516 #. type: SS
5517 #: build/C/man3/exec.3:137
5518 #, no-wrap
5519 msgid "Special semantics for execlp() and execvp()"
5520 msgstr "execlp() と execvp() の特別な動作"
5521
5522 #. type: Plain text
5523 #: build/C/man3/exec.3:157
5524 msgid ""
5525 "The B<execlp>(), B<execvp>(), and B<execvpe>()  functions duplicate the "
5526 "actions of the shell in searching for an executable file if the specified "
5527 "filename does not contain a slash (/) character.  The file is sought in the "
5528 "colon-separated list of directory pathnames specified in the B<PATH> "
5529 "environment variable.  If this variable isn't defined, the path list "
5530 "defaults to the current directory followed by the list of directories "
5531 "returned by I<confstr(_CS_PATH)>.  (This B<confstr>(3)  call typically "
5532 "returns the value \"/bin:/usr/bin\".)"
5533 msgstr ""
5534 "関数 B<execlp>(), B<execvp>(), B<execvpe>()  は、指定されたファイル名がスラッ"
5535 "シュ (/) を含んでいない場合、 シェルと同じ動作で実行可能なファイルを探索す"
5536 "る。 ファイルの検索は、環境変数 B<PATH> で指定されたコロン区切りのディレクト"
5537 "リのパス名のリストを対象に行われる。 この変数が定義されていない場合、パス名の"
5538 "リストのデフォルト値として、 カレントディレクトリの後ろに、 "
5539 "I<confstr(_CS_PATH)> が返すディレクトリのリストをつなげた値が使用される (こ"
5540 "の B<confstr>(3)  の呼び出しでは通常 \"/bin:/usr/bin\" が返される)。"
5541
5542 #. type: Plain text
5543 #: build/C/man3/exec.3:161
5544 msgid ""
5545 "If the specified filename includes a slash character, then B<PATH> is "
5546 "ignored, and the file at the specified pathname is executed."
5547 msgstr ""
5548 "指定されたファイル名がスラッシュを含む場合、 B<PATH> は無視され、指定されたパ"
5549 "ス名のファイルが実行される。"
5550
5551 #. type: Plain text
5552 #: build/C/man3/exec.3:163
5553 msgid "In addition, certain errors are treated specially."
5554 msgstr "さらに、いくつかのエラーは特別に処理される。"
5555
5556 #. type: Plain text
5557 #: build/C/man3/exec.3:174
5558 msgid ""
5559 "If permission is denied for a file (the attempted B<execve>(2)  failed with "
5560 "the error B<EACCES>), these functions will continue searching the rest of "
5561 "the search path.  If no other file is found, however, they will return with "
5562 "I<errno> set to B<EACCES>."
5563 msgstr ""
5564 "ファイルが実行ファイルでない場合 (このとき呼び出そうとした B<execve>(2)  はエ"
5565 "ラー B<EACCES> で失敗する)、これらの関数は残りの検索パスの検索を続ける。 他に"
5566 "ファイルが見つからなくなった場合 I<errno> に B<EACCES> を設定し復帰する。"
5567
5568 #. type: Plain text
5569 #: build/C/man3/exec.3:183
5570 msgid ""
5571 "If the header of a file isn't recognized (the attempted B<execve>(2)  failed "
5572 "with the error B<ENOEXEC>), these functions will execute the shell (I</bin/"
5573 "sh>)  with the path of the file as its first argument.  (If this attempt "
5574 "fails, no further searching is done.)"
5575 msgstr ""
5576 "ファイルのヘッダーが実行形式として認識できない場合 (このとき呼び出そうとした "
5577 "B<execve>(2)  はエラー B<ENOEXEC> で失敗する)、これらの関数はそのファイルを最"
5578 "初の引き数としたシェル (I</bin/sh>)  を実行する (これにも失敗した場合、これ以"
5579 "上の検索は行われない)。"
5580
5581 #. type: Plain text
5582 #: build/C/man3/exec.3:190
5583 msgid ""
5584 "The B<exec>()  functions return only if an error has occurred.  The return "
5585 "value is -1, and I<errno> is set to indicate the error."
5586 msgstr ""
5587 "B<exec>()  群の関数が復帰するのは、エラーが発生した場合のみである。 返り値は "
5588 "-1 で、 I<errno> にエラーの内容がセットされる。"
5589
5590 #. type: Plain text
5591 #: build/C/man3/exec.3:195
5592 msgid ""
5593 "All of these functions may fail and set I<errno> for any of the errors "
5594 "specified for B<execve>(2)."
5595 msgstr ""
5596 "これら全ての関数は失敗する場合がある。その場合、 B<execve>(2)  に対して規定さ"
5597 "れたエラーが I<errno> に設定される。"
5598
5599 #. type: Plain text
5600 #: build/C/man3/exec.3:199
5601 msgid "The B<execvpe>()  function first appeared in glibc 2.11."
5602 msgstr "B<execvpe>()  関数は glibc 2.11 で初めて登場した。"
5603
5604 #. type: Plain text
5605 #: build/C/man3/exec.3:201
5606 msgid "POSIX.1-2001, POSIX.1-2008."
5607 msgstr "POSIX.1-2001, POSIX.1-2008."
5608
5609 #. type: Plain text
5610 #: build/C/man3/exec.3:205
5611 msgid "The B<execvpe>()  function is a GNU extension."
5612 msgstr "B<execvpe>()  関数は GNU による拡張である。"
5613
5614 #. type: Plain text
5615 #: build/C/man3/exec.3:215
5616 msgid ""
5617 "On some other systems, the default path (used when the environment does not "
5618 "contain the variable B<PATH>) has the current working directory listed after "
5619 "I</bin> and I</usr/bin>, as an anti-Trojan-horse measure.  Linux uses here "
5620 "the traditional \"current directory first\" default path."
5621 msgstr ""
5622 "Linux 以外のシステムには、 (環境変数 B<PATH> が定義されていないときの)  デ"
5623 "フォルトのパスにおいて、カレントディレクトリが I</bin> と I</usr/bin> の後ろ"
5624 "に配置されるものもある。 これはトロイの木馬対策のためである。 Linux では、デ"
5625 "フォルトのパスに、昔ながらの「現在のディレクトリを 先に探索」というルールを"
5626 "使っている。"
5627
5628 #. type: Plain text
5629 #: build/C/man3/exec.3:229
5630 msgid ""
5631 "The behavior of B<execlp>()  and B<execvp>()  when errors occur while "
5632 "attempting to execute the file is historic practice, but has not "
5633 "traditionally been documented and is not specified by the POSIX standard.  "
5634 "BSD (and possibly other systems) do an automatic sleep and retry if "
5635 "B<ETXTBSY> is encountered.  Linux treats it as a hard error and returns "
5636 "immediately."
5637 msgstr ""
5638 "ファイルを実行しようとしている間にエラーが発生した時の B<execlp>()  と "
5639 "B<execvp>()  のふるまいについて歴史的な慣習はあるが、伝統的に文書として記載さ"
5640 "れておらず、 POSIX 標準でも規定されていない。BSD (またおそらく他のシステム) "
5641 "では、 B<ETXTBSY> が発生した場合、自動的に中断 (sleep) し再試行を行う。 "
5642 "Linux はそれをハードエラーとして取り扱い即座に復帰する。"
5643
5644 #. type: Plain text
5645 #: build/C/man3/exec.3:241
5646 msgid ""
5647 "Traditionally, the functions B<execlp>()  and B<execvp>()  ignored all "
5648 "errors except for the ones described above and B<ENOMEM> and B<E2BIG>, upon "
5649 "which they returned.  They now return if any error other than the ones "
5650 "described above occurs."
5651 msgstr ""
5652 "伝統的に、関数 B<execlp>()  と B<execvp>()  は、上で説明したエラーと、これら "
5653 "2 つの関数自身が返す B<ENOMEM> と B<E2BIG> 以外の全てのエラーを無視していた"
5654 "が、 今では、上で説明した以外のエラーが発生した場合でも、 返ってくるよう変更"
5655 "された。"
5656
5657 #. type: Plain text
5658 #: build/C/man3/exec.3:249
5659 msgid ""
5660 "B<sh>(1), B<execve>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), "
5661 "B<fexecve>(3), B<environ>(7)"
5662 msgstr ""
5663 "B<sh>(1), B<execve>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), "
5664 "B<fexecve>(3), B<environ>(7)"
5665
5666 #. type: TH
5667 #: build/C/man2/execve.2:37
5668 #, no-wrap
5669 msgid "EXECVE"
5670 msgstr "EXECVE"
5671
5672 #. type: Plain text
5673 #: build/C/man2/execve.2:40
5674 msgid "execve - execute program"
5675 msgstr "execve - プログラムを実行する"
5676
5677 #. type: Plain text
5678 #: build/C/man2/execve.2:44
5679 msgid "B<int execve(const char *>I<filename>B<, char *const >I<argv>B<[], >"
5680 msgstr "B<int execve(const char *>I<filename>B<, char *const >I<argv>B<[], >"
5681
5682 #. type: Plain text
5683 #: build/C/man2/execve.2:51
5684 msgid ""
5685 "B<execve>()  executes the program pointed to by I<filename>.  I<filename> "
5686 "must be either a binary executable, or a script starting with a line of the "
5687 "form:"
5688 msgstr ""
5689 "B<execve>()  は、I<filename> によって指定されたプログラムを実行する。 "
5690 "I<filename> は、バイナリ実行形式か、 以下の形式の行で始まるスクリプトでなけれ"
5691 "ばならない。"
5692
5693 #. type: Plain text
5694 #: build/C/man2/execve.2:55 build/C/man2/execve.2:265
5695 #, no-wrap
5696 msgid "B<#!> I<interpreter >[optional-arg]\n"
5697 msgstr "B<#!> I<interpreter >[optional-arg]\n"
5698
5699 #. type: Plain text
5700 #: build/C/man2/execve.2:59
5701 msgid "For details of the latter case, see \"Interpreter scripts\" below."
5702 msgstr "後者の詳細は、後ろの「インタープリタースクリプト」の節を参照のこと。"
5703
5704 #. type: Plain text
5705 #: build/C/man2/execve.2:68
5706 msgid ""
5707 "I<argv> is an array of argument strings passed to the new program.  By "
5708 "convention, the first of these strings should contain the filename "
5709 "associated with the file being executed.  I<envp> is an array of strings, "
5710 "conventionally of the form B<key=value>, which are passed as environment to "
5711 "the new program.  Both I<argv> and I<envp> must be terminated by a null "
5712 "pointer.  The argument vector and environment can be accessed by the called "
5713 "program's main function, when it is defined as:"
5714 msgstr ""
5715 "I<argv> は新しいプログラムに渡される引き数文字列の配列である。\n"
5716 "慣例では、引き数文字列の最初の要素には実行されたファイルに関連付けられた\n"
5717 "ファイル名を含めることになっている。\n"
5718 "I<envp> は文字列の配列であり、伝統的に B<key=value> の形式をしており、\n"
5719 "新しいプログラムの環境変数として渡される。\n"
5720 "I<argv> と I<envp> はいずれものヌルポインターで終わっている必要がある。\n"
5721 "引き数配列と環境変数は、呼び出されたプログラムの main 関数を\n"
5722 "以下のように定義することによってアクセス可能になる。"
5723
5724 #. type: Plain text
5725 #: build/C/man2/execve.2:72
5726 #, no-wrap
5727 msgid "int main(int argc, char *argv[], char *envp[])\n"
5728 msgstr "int main(int argc, char *argv[], char *envp[])\n"
5729
5730 #. type: Plain text
5731 #: build/C/man2/execve.2:79
5732 msgid ""
5733 "B<execve>()  does not return on success, and the text, data, bss, and stack "
5734 "of the calling process are overwritten by that of the program loaded."
5735 msgstr ""
5736 "成功した場合、 B<execve>()  は返らない。 そして、呼び出し元のプロセスの "
5737 "text, data, bss, スタックは、 読み込まれたプログラムによって上書きされる。"
5738
5739 #. type: Plain text
5740 #: build/C/man2/execve.2:83
5741 msgid ""
5742 "If the current program is being ptraced, a B<SIGTRAP> is sent to it after a "
5743 "successful B<execve>()."
5744 msgstr ""
5745 "元のプログラムが ptrace されている場合、 B<execve>()  が成功した後に そのプロ"
5746 "グラムに B<SIGTRAP> が送られる。"
5747
5748 #. type: Plain text
5749 #: build/C/man2/execve.2:98
5750 msgid ""
5751 "If the set-user-ID bit is set on the program file pointed to by I<filename>, "
5752 "and the underlying filesystem is not mounted I<nosuid> (the B<MS_NOSUID> "
5753 "flag for B<mount>(2)), and the calling process is not being ptraced, then "
5754 "the effective user ID of the calling process is changed to that of the owner "
5755 "of the program file.  Similarly, when the set-group-ID bit of the program "
5756 "file is set the effective group ID of the calling process is set to the "
5757 "group of the program file."
5758 msgstr ""
5759 "I<filename> で指定されたプログラムファイルに set-user-ID ビットが設定されてお"
5760 "り、 ファイルが存在するファイルシステムが I<nosuid> (B<mount>(2)  の "
5761 "B<MS_NOSUID> フラグ) でマウントされておらず、 呼び出したプロセスが ptrace さ"
5762 "れていない場合、 呼び出したプロセスの実効 (effective) ユーザー ID は プログラ"
5763 "ムファイルの所有者 (owner) に変更される。 同様に、プログラムファイルに set-"
5764 "group-ID ビットが設定されていた場合、 呼び出したプロセスの有効グループ ID は "
5765 "プログラムファイルのグループに変更される。"
5766
5767 #. type: Plain text
5768 #: build/C/man2/execve.2:103
5769 msgid ""
5770 "The effective user ID of the process is copied to the saved set-user-ID; "
5771 "similarly, the effective group ID is copied to the saved set-group-ID.  This "
5772 "copying takes place after any effective ID changes that occur because of the "
5773 "set-user-ID and set-group-ID permission bits."
5774 msgstr ""
5775 "プロセスの実効ユーザー ID は保存 (saved) set-user-ID にコピーされる。 同様"
5776 "に、実効グループ ID は保存 set-group-ID にコピーされる。 このコピーは、set-"
5777 "user-ID / set-group-ID 許可ビットにより発生する 実効 ID の変更後に行われる。"
5778
5779 #. type: Plain text
5780 #: build/C/man2/execve.2:111
5781 msgid ""
5782 "If the executable is an a.out dynamically linked binary executable "
5783 "containing shared-library stubs, the Linux dynamic linker B<ld.so>(8)  is "
5784 "called at the start of execution to bring needed shared libraries into "
5785 "memory and link the executable with them."
5786 msgstr ""
5787 "実行ファイルが動的リンクされた a.out 実行形式で、共有ライブラリの スタブを含"
5788 "むものだった場合、実行の開始時に Linux の ダイナミックリンカー B<ld.so>(8)  "
5789 "が呼び出され、必要な共有ライブラリをメモリーに読み込んでリンクを行う。"
5790
5791 #. type: Plain text
5792 #: build/C/man2/execve.2:118
5793 msgid ""
5794 "If the executable is a dynamically linked ELF executable, the interpreter "
5795 "named in the PT_INTERP segment is used to load the needed shared libraries.  "
5796 "This interpreter is typically I</lib/ld-linux.so.2> for binaries linked with "
5797 "glibc."
5798 msgstr ""
5799 "実行ファイルがダイナミックリンクされた ELF 実行形式だった場合、\n"
5800 "PT_INTERP セグメントに指定されたインタープリターが必要な 共有ライブラリ\n"
5801 "(shared library) を読み込むのに使用される。\n"
5802 "通常、インタープリターは glibc をリンクしたバイナリでは\n"
5803 "I</lib/ld-linux.so.2> である。"
5804
5805 #. type: Plain text
5806 #: build/C/man2/execve.2:122
5807 msgid ""
5808 "All process attributes are preserved during an B<execve>(), except the "
5809 "following:"
5810 msgstr ""
5811 "以下に示す以外のすべてのプロセス属性は B<execve>()  の前後で保持される。"
5812
5813 #. type: Plain text
5814 #: build/C/man2/execve.2:126
5815 msgid ""
5816 "The dispositions of any signals that are being caught are reset to the "
5817 "default (B<signal>(7))."
5818 msgstr ""
5819 "捕捉されたシグナルの処理方法 (disposition) は デフォルト動作にリセットされる "
5820 "(B<signal>(7))。"
5821
5822 #. type: Plain text
5823 #: build/C/man2/execve.2:129
5824 msgid "Any alternate signal stack is not preserved (B<sigaltstack>(2))."
5825 msgstr "代替シグナルスタックはどれも保持されない (B<sigaltstack>(2))。"
5826
5827 #. type: Plain text
5828 #: build/C/man2/execve.2:132
5829 msgid "Memory mappings are not preserved (B<mmap>(2))."
5830 msgstr "メモリーマッピングは保持されない (B<mmap>(2))。"
5831
5832 #. type: Plain text
5833 #: build/C/man2/execve.2:135
5834 msgid "Attached System\\ V shared memory segments are detached (B<shmat>(2))."
5835 msgstr ""
5836 "付加された (attached) System\\ V 共有メモリーセグメントは分離される "
5837 "(B<shmat>(2))。"
5838
5839 #. type: Plain text
5840 #: build/C/man2/execve.2:138
5841 msgid "POSIX shared memory regions are unmapped (B<shm_open>(3))."
5842 msgstr "POSIX 共有メモリー領域はマッピングを解除される (B<shm_open>(3))。"
5843
5844 #. type: Plain text
5845 #: build/C/man2/execve.2:141
5846 msgid "Open POSIX message queue descriptors are closed (B<mq_overview>(7))."
5847 msgstr ""
5848 "オープンされた POSIX メッセージキューディスクリプターはクローズされる "
5849 "(B<mq_overview>(7))。"
5850
5851 #. type: Plain text
5852 #: build/C/man2/execve.2:144
5853 msgid "Any open POSIX named semaphores are closed (B<sem_overview>(7))."
5854 msgstr ""
5855 "オープンされた POSIX 名前付きセマフォはいずれもクローズされる "
5856 "(B<sem_overview>(7))。"
5857
5858 #. type: Plain text
5859 #: build/C/man2/execve.2:147
5860 msgid "POSIX timers are not preserved (B<timer_create>(2))."
5861 msgstr "POSIX タイマーは保持されない (B<timer_create>(2))。"
5862
5863 #. type: Plain text
5864 #: build/C/man2/execve.2:150
5865 msgid "Any open directory streams are closed (B<opendir>(3))."
5866 msgstr ""
5867 "オープンされたディレクトリストリームはいずれもクローズされる "
5868 "(B<opendir>(3))。"
5869
5870 #. type: Plain text
5871 #: build/C/man2/execve.2:154
5872 msgid "Memory locks are not preserved (B<mlock>(2), B<mlockall>(2))."
5873 msgstr "メモリーロックは保持されない (B<mlock>(2), B<mlockall>(2))。"
5874
5875 #. type: Plain text
5876 #: build/C/man2/execve.2:158
5877 msgid "Exit handlers are not preserved (B<atexit>(3), B<on_exit>(3))."
5878 msgstr "終了 (exit) ハンドラーは保持されない (B<atexit>(3), B<on_exit>(3))。"
5879
5880 #. type: Plain text
5881 #: build/C/man2/execve.2:161
5882 msgid ""
5883 "The floating-point environment is reset to the default (see B<fenv>(3))."
5884 msgstr "浮動小数点関連の環境はデフォルトにリセットされる (B<fenv>(3)  参照)。"
5885
5886 #. type: Plain text
5887 #: build/C/man2/execve.2:167
5888 msgid ""
5889 "The process attributes in the preceding list are all specified in "
5890 "POSIX.1-2001.  The following Linux-specific process attributes are also not "
5891 "preserved during an B<execve>():"
5892 msgstr ""
5893 "上記のリストのプロセス属性はいずれも POSIX.1-2001 で規定されている。 以下に示"
5894 "す Linux 固有のプロセス属性も B<execve>()  の前後で保持されない。"
5895
5896 #. type: Plain text
5897 #: build/C/man2/execve.2:174
5898 msgid ""
5899 "The B<prctl>(2)  B<PR_SET_DUMPABLE> flag is set, unless a set-user-ID or set-"
5900 "group ID program is being executed, in which case it is cleared."
5901 msgstr ""
5902 "set-user-ID か set-group-ID されたプログラムが実行されている場合、 "
5903 "B<prctl>(2)  の B<PR_SET_DUMPABLE> フラグはクリアされる。それ以外の場合、この"
5904 "フラグはセットされる。"
5905
5906 #. type: Plain text
5907 #: build/C/man2/execve.2:179
5908 msgid "The B<prctl>(2)  B<PR_SET_KEEPCAPS> flag is cleared."
5909 msgstr "B<prctl>(2)  の B<PR_SET_KEEPCAPS> フラグはクリアされる。"
5910
5911 #. type: Plain text
5912 #: build/C/man2/execve.2:186
5913 msgid ""
5914 "(Since Linux 2.4.36 / 2.6.23)  If a set-user-ID or set-group-ID program is "
5915 "being executed, then the parent death signal set by B<prctl>(2)  "
5916 "B<PR_SET_PDEATHSIG> flag is cleared."
5917 msgstr ""
5918 "(Linux 2.4.36 以降 / 2.6.23 以降)  set-user-ID や set-group-ID されたプログラ"
5919 "ムが実行された場合、 B<prctl>(2) の B<PR_SET_PDEATHSIG> フラグで設定された "
5920 "parent death シグナルはクリアされる。"
5921
5922 #. type: Plain text
5923 #: build/C/man2/execve.2:193
5924 msgid ""
5925 "The process name, as set by B<prctl>(2)  B<PR_SET_NAME> (and displayed by "
5926 "I<ps\\ -o comm>), is reset to the name of the new executable file."
5927 msgstr ""
5928 "プロセス名は新しい実行ファイルの名前にリセットされる。 プロセス名は "
5929 "B<prctl>(2)  の B<PR_SET_NAME> で設定でき、 I<ps\\ -o comm> で表示できる。"
5930
5931 #. type: Plain text
5932 #: build/C/man2/execve.2:200
5933 msgid ""
5934 "The B<SECBIT_KEEP_CAPS> I<securebits> flag is cleared.  See "
5935 "B<capabilities>(7)."
5936 msgstr ""
5937 "B<SECBIT_KEEP_CAPS> の I<securebits> フラグはクリアされる。 "
5938 "B<capabilities>(7) 参照。"
5939
5940 #. type: Plain text
5941 #: build/C/man2/execve.2:205
5942 msgid "The termination signal is reset to B<SIGCHLD> (see B<clone>(2))."
5943 msgstr ""
5944 "終了シグナル (termination signal) は B<SIGCHLD> にリセットされる "
5945 "(B<clone>(2)  参照)。"
5946
5947 #. type: Plain text
5948 #: build/C/man2/execve.2:207 build/C/man2/fork.2:138
5949 msgid "Note the following further points:"
5950 msgstr "以下の点についても注意すること:"
5951
5952 #. type: Plain text
5953 #: build/C/man2/execve.2:211
5954 msgid ""
5955 "All threads other than the calling thread are destroyed during an "
5956 "B<execve>().  Mutexes, condition variables, and other pthreads objects are "
5957 "not preserved."
5958 msgstr ""
5959 "呼び出し元スレッド以外の全てのスレッドは B<execve>()  中に破棄される。 "
5960 "mutex、条件変数、その他の pthread オブジェクトは保持されない。"
5961
5962 #. type: Plain text
5963 #: build/C/man2/execve.2:214
5964 msgid ""
5965 "The equivalent of I<setlocale(LC_ALL, \"C\")> is executed at program start-"
5966 "up."
5967 msgstr "I<setlocale(LC_ALL, \"C\")> 相当の処理がプログラム開始時に実行される。"
5968
5969 #. type: Plain text
5970 #: build/C/man2/execve.2:222
5971 msgid ""
5972 "POSIX.1-2001 specifies that the dispositions of any signals that are ignored "
5973 "or set to the default are left unchanged.  POSIX.1-2001 specifies one "
5974 "exception: if B<SIGCHLD> is being ignored, then an implementation may leave "
5975 "the disposition unchanged or reset it to the default; Linux does the former."
5976 msgstr ""
5977 "POSIX.1-2001 は、動作が無視かデフォルトに設定されている全てのシグナル の処理"
5978 "方法は変更せずそのままにする、と規定している。 但し、POSIX.1-2001 には一つ例"
5979 "外があり、 B<SIGCHLD> が無視になっている場合、 その処理方法を変更せずにそのま"
5980 "まにするか、デフォルト動作にリセットするかは 実装依存となっている。 Linux で"
5981 "は前者 (変更しない) となっている。"
5982
5983 #. type: Plain text
5984 #: build/C/man2/execve.2:226
5985 msgid ""
5986 "Any outstanding asynchronous I/O operations are canceled (B<aio_read>(3), "
5987 "B<aio_write>(3))."
5988 msgstr ""
5989 "完了していない非同期 I/O 操作はキャンセルされる (B<aio_read>(3), "
5990 "B<aio_write>(3))。"
5991
5992 #. type: Plain text
5993 #: build/C/man2/execve.2:231
5994 msgid ""
5995 "For the handling of capabilities during B<execve>(), see B<capabilities>(7)."
5996 msgstr ""
5997 "B<execve>(2)  時のケーパビリティの扱いについては、 B<capabilities>(7)  を参"
5998 "照。"
5999
6000 #.  On Linux it appears that these file descriptors are
6001 #.  always open after an execve(), and it looks like
6002 #.  Solaris 8 and FreeBSD 6.1 are the same. -- mtk, 30 Apr 2007
6003 #. type: Plain text
6004 #: build/C/man2/execve.2:258
6005 msgid ""
6006 "By default, file descriptors remain open across an B<execve>().  File "
6007 "descriptors that are marked close-on-exec are closed; see the description of "
6008 "B<FD_CLOEXEC> in B<fcntl>(2).  (If a file descriptor is closed, this will "
6009 "cause the release of all record locks obtained on the underlying file by "
6010 "this process.  See B<fcntl>(2)  for details.)  POSIX.1-2001 says that if "
6011 "file descriptors 0, 1, and 2 would otherwise be closed after a successful "
6012 "B<execve>(), and the process would gain privilege because the set-user_ID or "
6013 "set-group_ID permission bit was set on the executed file, then the system "
6014 "may open an unspecified file for each of these file descriptors.  As a "
6015 "general principle, no portable program, whether privileged or not, can "
6016 "assume that these three file descriptors will remain closed across an "
6017 "B<execve>()."
6018 msgstr ""
6019 "デフォルトでは、ファイルディスクリプターは B<execve>()  を行った後でもオープ"
6020 "ンされたままである。 close-on-exec の印が付いているファイルディスクリプターは"
6021 "クローズされる。 B<fcntl>(2)  の B<FD_CLOEXEC> の説明を参照。 (ファイルディス"
6022 "クリプターがクローズされると、このプロセスが ファイルディスクリプターに対応す"
6023 "るファイルに対して獲得していた レコードのロックが全て解放されることにな"
6024 "る。)  POSIX.1-2001 では、 ファイルディスクリプター 0, 1, 2 が B<execve>()  "
6025 "成功後にどこかでクローズされ、かつ 実行されるファイルに set-user_ID か set-"
6026 "group_ID の許可ビットが セットされていてプロセスが特権を獲得した場合、 システ"
6027 "ムは何らかのファイルをオープンする際に これらの番号のディスクリプターのどれか"
6028 "を使うことがある、 とされている。 原則として、移植性が必要なプログラムでは、 "
6029 "特権の有無に関わらず、 B<execve>()  の前後でこれら 3つのファイルディスクリプ"
6030 "ターがクローズされたままで あることを前提にすることはできない。"
6031
6032 #. type: SS
6033 #: build/C/man2/execve.2:258 build/C/man2/execve.2:528
6034 #, no-wrap
6035 msgid "Interpreter scripts"
6036 msgstr "インタープリタースクリプト"
6037
6038 #. type: Plain text
6039 #: build/C/man2/execve.2:261
6040 msgid ""
6041 "An interpreter script is a text file that has execute permission enabled and "
6042 "whose first line is of the form:"
6043 msgstr ""
6044 "インタープリタースクリプトとは、実行許可が有効になっていて、 最初の行が以下の"
6045 "形になっているテキストファイルのことである。"
6046
6047 #. type: Plain text
6048 #: build/C/man2/execve.2:279
6049 msgid ""
6050 "The I<interpreter> must be a valid pathname for an executable which is not "
6051 "itself a script.  If the I<filename> argument of B<execve>()  specifies an "
6052 "interpreter script, then I<interpreter> will be invoked with the following "
6053 "arguments:"
6054 msgstr ""
6055 "I<interpreter> は有効な実行ファイルのパス名でなければならず、 それ自身がスク"
6056 "リプトであってはならない。 B<execve>()  の I<filename> 引き数がインタープリ"
6057 "タースクリプトを指定している場合、 I<interpreter> は以下の引き数で起動され"
6058 "る。"
6059
6060 #. type: Plain text
6061 #: build/C/man2/execve.2:283
6062 #, no-wrap
6063 msgid "I<interpreter> [optional-arg] I<filename> arg...\n"
6064 msgstr "I<interpreter> [optional-arg] I<filename> arg...\n"
6065
6066 #. type: Plain text
6067 #: build/C/man2/execve.2:294
6068 msgid ""
6069 "where I<arg...> is the series of words pointed to by the I<argv> argument of "
6070 "B<execve>(), starting at I<argv>[1]."
6071 msgstr ""
6072 "I<arg...> は、 B<execve>() の I<argv> 引き数が指すワード列である。 "
6073 "I<argv>[1] から始まる。"
6074
6075 #. type: Plain text
6076 #: build/C/man2/execve.2:299
6077 msgid ""
6078 "For portable use, I<optional-arg> should either be absent, or be specified "
6079 "as a single word (i.e., it should not contain white space); see NOTES below."
6080 msgstr ""
6081 "移植性を持たすには、 I<optional-arg> は空か 1ワードだけにすべきである (つま"
6082 "り、ホワイトスペースを含めるべきではない)。 下記の「注意」の節を参照。"
6083
6084 #. type: SS
6085 #: build/C/man2/execve.2:299
6086 #, no-wrap
6087 msgid "Limits on size of arguments and environment"
6088 msgstr "引き数と環境変数の合計サイズの上限"
6089
6090 #. type: Plain text
6091 #: build/C/man2/execve.2:312
6092 msgid ""
6093 "Most UNIX implementations impose some limit on the total size of the command-"
6094 "line argument (I<argv>)  and environment (I<envp>)  strings that may be "
6095 "passed to a new program.  POSIX.1 allows an implementation to advertise this "
6096 "limit using the B<ARG_MAX> constant (either defined in I<E<lt>limits.hE<gt>> "
6097 "or available at run time using the call I<sysconf(_SC_ARG_MAX)>)."
6098 msgstr ""
6099 "ほとんどの UNIX の実装は、新しいプログラムに渡すことができる コマンドライン引"
6100 "き数 (I<argv>)  と環境変数 (I<envp>)  の文字列群の合計サイズに何らかの上限を"
6101 "設けている。 POSIX.1 は、 B<ARG_MAX> 定数を使ってこの上限を決める実装を認めて"
6102 "いる (B<ARG_MAX> は I<E<lt>limits.hE<gt>> で定義されるか、実行時に "
6103 "I<sysconf(_SC_ARG_MAX)> の呼び出しで入手できるかのいずれかである)。"
6104
6105 #. type: Plain text
6106 #: build/C/man2/execve.2:319
6107 msgid ""
6108 "On Linux prior to kernel 2.6.23, the memory used to store the environment "
6109 "and argument strings was limited to 32 pages (defined by the kernel constant "
6110 "B<MAX_ARG_PAGES>).  On architectures with a 4-kB page size, this yields a "
6111 "maximum size of 128 kB."
6112 msgstr ""
6113 "カーネル 2.6.23 より前の Linux では、環境変数と引き数の文字列群を 格納するの"
6114 "に使用されるメモリーは 32 ページに制限されていた (32 ページというのはカーネル"
6115 "定数 B<MAX_ARG_PAGES> で定義される)。したがって、 ページサイズが 4 kB のアー"
6116 "キテクチャーでは、 最大サイズは 128 kB ということになる。"
6117
6118 #.  For some background on the changes to ARG_MAX in kernels 2.6.23 and
6119 #.  2.6.25, see:
6120 #.      http://sourceware.org/bugzilla/show_bug.cgi?id=5786
6121 #.      http://bugzilla.kernel.org/show_bug.cgi?id=10095
6122 #.      http://thread.gmane.org/gmane.linux.kernel/646709/focus=648101,
6123 #.      checked into 2.6.25 as commit a64e715fc74b1a7dcc5944f848acc38b2c4d4ee2.
6124 #.  Ollie: That doesn't include the lists of pointers, though,
6125 #.  so the actual usage is a bit higher (1 pointer per argument).
6126 #. type: Plain text
6127 #: build/C/man2/execve.2:355
6128 msgid ""
6129 "On kernel 2.6.23 and later, most architectures support a size limit derived "
6130 "from the soft B<RLIMIT_STACK> resource limit (see B<getrlimit>(2))  that is "
6131 "in force at the time of the B<execve>()  call.  (Architectures with no "
6132 "memory management unit are excepted: they maintain the limit that was in "
6133 "effect before kernel 2.6.23.)  This change allows programs to have a much "
6134 "larger argument and/or environment list.  For these architectures, the total "
6135 "size is limited to 1/4 of the allowed stack size.  (Imposing the 1/4-limit "
6136 "ensures that the new program always has some stack space.)  Since Linux "
6137 "2.6.25, the kernel places a floor of 32 pages on this size limit, so that, "
6138 "even when B<RLIMIT_STACK> is set very low, applications are guaranteed to "
6139 "have at least as much argument and environment space as was provided by "
6140 "Linux 2.6.23 and earlier.  (This guarantee was not provided in Linux 2.6.23 "
6141 "and 2.6.24.)  Additionally, the limit per string is 32 pages (the kernel "
6142 "constant B<MAX_ARG_STRLEN>), and the maximum number of strings is 0x7FFFFFFF."
6143 msgstr ""
6144 "カーネル 2.6.23 以降では、ほとんどのアーキテクチャーにおいて、 B<execve>()  "
6145 "が呼び出された時点で適用されているリソースのソフト上限 B<RLIMIT_STACK> に基づ"
6146 "いたサイズ上限が使われる (メモリー管理ユニット (MMU) を持たないアーキテク"
6147 "チャーは上記の変更の 例外であり、これらのアーキテクチャーではカーネル 2.6.23 "
6148 "より前と 同じ上限がそのまま使用される)。 これらのアーキテクチャーでは、合計サ"
6149 "イズは許可されたスタックサイズの 1/4 に制限されている (1/4 の上限を設けている"
6150 "のは、新しいプログラムが必ずある程度の スタック空間を持てることを保証するため"
6151 "である)。 Linux 2.6.25 以降では、カーネルはこのサイズ上限に 32 ページの下限"
6152 "を 設けている。これにより、 B<RLIMIT_STACK> が非常に小さく設定された場合で"
6153 "も、アプリケーションが少なくとも Linux 2.6.23 以前で提供されていたのと同じ大"
6154 "きさの引き数と環境変数の空間 と同じだけは確保できることが保証されている (この"
6155 "最低限の保証は Linux 2.6.23 と 2.6.24 では提供されていない)。 また、各文字列"
6156 "の上限は 32 ページ (カーネル定数 B<MAX_ARG_STRLEN>)  で、文字列数の最大値は "
6157 "0x7FFFFFFF である。"
6158
6159 #. type: Plain text
6160 #: build/C/man2/execve.2:361
6161 msgid ""
6162 "On success, B<execve>()  does not return, on error -1 is returned, and "
6163 "I<errno> is set appropriately."
6164 msgstr ""
6165 "成功すると B<execve>()  は返らない。エラーの場合は -1 を返し、 I<errno> を適"
6166 "切に設定する。"
6167
6168 #. type: TP
6169 #: build/C/man2/execve.2:362
6170 #, no-wrap
6171 msgid "B<E2BIG>"
6172 msgstr "B<E2BIG>"
6173
6174 #. type: Plain text
6175 #: build/C/man2/execve.2:369
6176 msgid ""
6177 "The total number of bytes in the environment (I<envp>)  and argument list "
6178 "(I<argv>)  is too large."
6179 msgstr ""
6180 "環境変数 (I<envp>)  と引き数リスト (I<argv>)  の合計バイト数が大き過ぎる。"
6181
6182 #. type: Plain text
6183 #: build/C/man2/execve.2:376
6184 msgid ""
6185 "Search permission is denied on a component of the path prefix of I<filename> "
6186 "or the name of a script interpreter.  (See also B<path_resolution>(7).)"
6187 msgstr ""
6188 "I<filename> やスクリプトインタープリター名の構成要素に検索許可 (search "
6189 "permission)  が与えられていない (B<path_resolution>(7)  も参照すること)。"
6190
6191 #. type: Plain text
6192 #: build/C/man2/execve.2:379
6193 msgid "The file or a script interpreter is not a regular file."
6194 msgstr ""
6195 "ファイルもしくはスクリプトのインタープリターが通常ファイル (regular file)  で"
6196 "ない。"
6197
6198 #. type: Plain text
6199 #: build/C/man2/execve.2:382
6200 msgid ""
6201 "Execute permission is denied for the file or a script or ELF interpreter."
6202 msgstr ""
6203 "ファイルやスクリプトや ELF インタープリターに 実行許可 (execute permission) "
6204 "が与えられていない。"
6205
6206 #. type: Plain text
6207 #: build/C/man2/execve.2:386
6208 msgid "The filesystem is mounted I<noexec>."
6209 msgstr "ファイルシステムが I<noexec> でマウントされている。"
6210
6211 #. type: TP
6212 #: build/C/man2/execve.2:386
6213 #, no-wrap
6214 msgid "B<EAGAIN> (since Linux 3.1)"
6215 msgstr "B<EAGAIN> (Linux 3.1 以降)"
6216
6217 #.  commit 72fa59970f8698023045ab0713d66f3f4f96945c
6218 #. type: Plain text
6219 #: build/C/man2/execve.2:396
6220 msgid ""
6221 "Having changed its real UID using one of the B<set*uid>()  calls, the caller "
6222 "was\\(emand is now still\\(emabove its B<RLIMIT_NPROC> resource limit (see "
6223 "B<setrlimit>(2)).  For a more detailed explanation of this error, see NOTES."
6224 msgstr ""
6225 "B<set*uid>() のいずれかの呼び出しでプロセスの実 UID が変更されたとすると、呼"
6226 "び出し元の B<RLIMIT_NPROC> リソース上限 (B<setrlimit>(2) 参照) を超えてしま"
6227 "う、 現在もまだ超えている。 このエラーの詳細な説明については「注意」の節を参"
6228 "照。"
6229
6230 #. type: Plain text
6231 #: build/C/man2/execve.2:404
6232 msgid ""
6233 "I<filename> or one of the pointers in the vectors I<argv> or I<envp> points "
6234 "outside your accessible address space."
6235 msgstr ""
6236 "I<filename> または配列 I<argv> か I<envp> のポインターの一つがアクセス可能な"
6237 "アドレス空間の外を指している。"
6238
6239 #. type: Plain text
6240 #: build/C/man2/execve.2:408
6241 msgid ""
6242 "An ELF executable had more than one PT_INTERP segment (i.e., tried to name "
6243 "more than one interpreter)."
6244 msgstr ""
6245 "ELF 実行形式で複数の PT_INTERP セグメントが存在する。 (すなわち複数のインター"
6246 "プリターを指定した。)"
6247
6248 #. type: TP
6249 #: build/C/man2/execve.2:411 build/C/man2/truncate.2:149
6250 #, no-wrap
6251 msgid "B<EISDIR>"
6252 msgstr "B<EISDIR>"
6253
6254 #. type: Plain text
6255 #: build/C/man2/execve.2:414
6256 msgid "An ELF interpreter was a directory."
6257 msgstr "ELF インタープリターがディレクトリだった。"
6258
6259 #. type: TP
6260 #: build/C/man2/execve.2:414
6261 #, no-wrap
6262 msgid "B<ELIBBAD>"
6263 msgstr "B<ELIBBAD>"
6264
6265 #. type: Plain text
6266 #: build/C/man2/execve.2:417
6267 msgid "An ELF interpreter was not in a recognized format."
6268 msgstr "ELF インタープリターが理解できるフォーマットでなかった。"
6269
6270 #. type: Plain text
6271 #: build/C/man2/execve.2:422
6272 msgid ""
6273 "Too many symbolic links were encountered in resolving I<filename> or the "
6274 "name of a script or ELF interpreter."
6275 msgstr ""
6276 "I<filename> やスクリプトや ELF のインタープリターを解決する際に遭遇した シン"
6277 "ボリックリンクが多過ぎる。"
6278
6279 #. type: Plain text
6280 #: build/C/man2/execve.2:425
6281 msgid "The process has the maximum number of files open."
6282 msgstr "そのプロセスがオープンできるファイル数の上限まで既にオープンしている。"
6283
6284 #. type: Plain text
6285 #: build/C/man2/execve.2:429
6286 msgid "I<filename> is too long."
6287 msgstr "I<filename> が長過ぎる。"
6288
6289 #. type: TP
6290 #: build/C/man2/execve.2:429 build/C/man3/getlogin.3:108
6291 #: build/C/man2/swapon.2:144 build/C/man2/uselib.2:67
6292 #, no-wrap
6293 msgid "B<ENFILE>"
6294 msgstr "B<ENFILE>"
6295
6296 #. type: Plain text
6297 #: build/C/man2/execve.2:432 build/C/man2/swapon.2:147
6298 #: build/C/man2/uselib.2:70
6299 msgid "The system limit on the total number of open files has been reached."
6300 msgstr "オープンされたファイルの総数がシステム全体の上限に達していた。"
6301
6302 #. type: Plain text
6303 #: build/C/man2/execve.2:438
6304 msgid ""
6305 "The file I<filename> or a script or ELF interpreter does not exist, or a "
6306 "shared library needed for file or interpreter cannot be found."
6307 msgstr ""
6308 "ファイル I<filename> かスクリプトや ELF のインタープリターが存在しない。"
6309
6310 #. type: TP
6311 #: build/C/man2/execve.2:438 build/C/man2/uselib.2:70
6312 #, no-wrap
6313 msgid "B<ENOEXEC>"
6314 msgstr "B<ENOEXEC>"
6315
6316 #. type: Plain text
6317 #: build/C/man2/execve.2:443
6318 msgid ""
6319 "An executable is not in a recognized format, is for the wrong architecture, "
6320 "or has some other format error that means it cannot be executed."
6321 msgstr ""
6322 "実行ファイルが理解できない形式であるか、違うアーキテクチャーのものか、 その他"
6323 "のフォーマットエラーにより実行ができなかった。"
6324
6325 #. type: Plain text
6326 #: build/C/man2/execve.2:451
6327 msgid ""
6328 "A component of the path prefix of I<filename> or a script or ELF interpreter "
6329 "is not a directory."
6330 msgstr ""
6331 "I<filename> やスクリプトや ELF のインタープリターの構成要素がディレクトリでな"
6332 "い。"
6333
6334 #. type: Plain text
6335 #: build/C/man2/execve.2:457
6336 msgid ""
6337 "The filesystem is mounted I<nosuid>, the user is not the superuser, and the "
6338 "file has the set-user-ID or set-group-ID bit set."
6339 msgstr ""
6340 "ファイルシステムが I<nosuid> でマウントされ、ユーザーがスーパーユーザーでな"
6341 "く、 ファイルに set-user-ID あるいは set-group-ID ビットが設定されている。"
6342
6343 #. type: Plain text
6344 #: build/C/man2/execve.2:461
6345 msgid ""
6346 "The process is being traced, the user is not the superuser and the file has "
6347 "the set-user-ID or set-group-ID bit set."
6348 msgstr ""
6349 "プロセスがトレースされ、ユーザーがスーパーユーザーでなく、 ファイルに set-"
6350 "user-ID あるいは set-group-ID ビットが設定されている。"
6351
6352 #. type: Plain text
6353 #: build/C/man2/execve.2:464
6354 msgid "Executable was open for writing by one or more processes."
6355 msgstr "実行ファイルを書き込み用にオープンしているプロセスがある。"
6356
6357 #.  SVr4 documents additional error
6358 #.  conditions EAGAIN, EINTR, ELIBACC, ENOLINK, EMULTIHOP; POSIX does not
6359 #.  document ETXTBSY, EPERM, EFAULT, ELOOP, EIO, ENFILE, EMFILE, EINVAL,
6360 #.  EISDIR or ELIBBAD error conditions.
6361 #. type: Plain text
6362 #: build/C/man2/execve.2:472
6363 msgid ""
6364 "SVr4, 4.3BSD, POSIX.1-2001.  POSIX.1-2001 does not document the #! behavior "
6365 "but is otherwise compatible."
6366 msgstr ""
6367 "SVr4, 4.3BSD, POSIX.1-2001.  POSIX.1-2001 には #! 動作についての記述はない"
6368 "が、 他は互換性がある。"
6369
6370 #. type: Plain text
6371 #: build/C/man2/execve.2:475
6372 msgid "Set-user-ID and set-group-ID processes can not be B<ptrace>(2)d."
6373 msgstr ""
6374 "set-user-id プロセスと set-group-ID プロセスは B<ptrace>(2)  できない。"
6375
6376 #.  e.g., EFAULT on Solaris 8 and FreeBSD 6.1; but
6377 #.  HP-UX 11 is like Linux -- mtk, Apr 2007
6378 #.  Bug filed 30 Apr 2007: http://bugzilla.kernel.org/show_bug.cgi?id=8408
6379 #.  Bug rejected (because fix would constitute an ABI change).
6380 #. type: Plain text
6381 #: build/C/man2/execve.2:502
6382 msgid ""
6383 "The result of mounting a filesystem I<nosuid> varies across Linux kernel "
6384 "versions: some will refuse execution of set-user-ID and set-group-ID "
6385 "executables when this would give the user powers she did not have already "
6386 "(and return B<EPERM>), some will just ignore the set-user-ID and set-group-"
6387 "ID bits and B<exec>()  successfully.  On Linux, I<argv> and I<envp> can be "
6388 "specified as NULL.  In both cases, this has the same effect as specifying "
6389 "the argument as a pointer to a list containing a single null pointer.  B<Do "
6390 "not take advantage of this misfeature!> It is nonstandard and nonportable: "
6391 "on most other UNIX systems doing this will result in an error (B<EFAULT>)."
6392 msgstr ""
6393 "ファイルシステムを I<nosuid> でマウントした場合に set-user-ID/set-group-ID の"
6394 "実行ファイルを どの様に扱うかは、Linux カーネルのバージョンによって異なる: あ"
6395 "るバージョンでは、すでに必要な権限を持っている場合を除いて、 その実行を拒否す"
6396 "る (そして B<EPERM> を返す)。別のあるバージョンでは set-user-ID/set-group-ID "
6397 "ビットのみを無視し B<exec>()  は成功する。 Linux では、 I<argv> と I<envp> "
6398 "に NULL を指定することができる。 どちらに NULL を指定した場合も、 これらの引"
6399 "き数にヌルポインター 1 個だけを含むリストへのポインターを指定したのと同じ効果"
6400 "を持つ。 B<「この間違った機能を利用しないこと」>。 これは非標準で、移植性もな"
6401 "い。 他のほとんどの UNIX システムでは、これを行うとエラー (B<EFAULT>)  にな"
6402 "る。"
6403
6404 #. type: Plain text
6405 #: build/C/man2/execve.2:513
6406 msgid ""
6407 "POSIX.1-2001 says that values returned by B<sysconf>(3)  should be invariant "
6408 "over the lifetime of a process.  However, since Linux 2.6.23, if the "
6409 "B<RLIMIT_STACK> resource limit changes, then the value reported by "
6410 "B<_SC_ARG_MAX> will also change, to reflect the fact that the limit on space "
6411 "for holding command-line arguments and environment variables has changed."
6412 msgstr ""
6413 "POSIX.1-2001 は、 B<sysconf>(3)  が返す値はプロセスの生存中は変化しないべきだ"
6414 "としている。 しかしながら、Linux 2.6.23 以降では、リソース上限 "
6415 "B<RLIMIT_STACK> が変化した場合、 コマンドライン引き数と環境変数を保持するため"
6416 "の空間に対する上限が 変化したことを反映して、 B<_SC_ARG_MAX> が返す値も変化す"
6417 "る。"
6418
6419 #. type: Plain text
6420 #: build/C/man2/execve.2:528
6421 msgid ""
6422 "In most cases where B<execve>()  fails, control returns to the original "
6423 "executable image, and the caller of B<execve>()  can then handle the error.  "
6424 "However, in (rare) cases (typically caused by resource exhaustion), failure "
6425 "may occur past the point of no return: the original executable image has "
6426 "been torn down, but the new image could not be completely built.  In such "
6427 "cases, the kernel kills the process with a B<SIGKILL> signal."
6428 msgstr ""
6429 "B<execve>() が失敗するほとんどの場合、 制御は元の実行可能イメージに戻り、 "
6430 "B<execve>() の呼び出し元がエラーを処理することができる。 しかしながら、 (リ"
6431 "ソース枯渇が原因となった場合など、まれに) 呼び出し元に制御が戻る時点を過ぎて"
6432 "からエラーが発生する場合がある。 元の実行可能イメージはすでに破棄されている"
6433 "が、 新しいイメージが完全には構築されていないという状況である。 このような場"
6434 "合、カーネルはそのプロセスをシグナル B<SIGKILL> で停止 (kill) する。"
6435
6436 #. type: Plain text
6437 #: build/C/man2/execve.2:531
6438 msgid ""
6439 "A maximum line length of 127 characters is allowed for the first line in an "
6440 "interpreter scripts."
6441 msgstr ""
6442 "インタープリタースクリプトの 1行目に許されている文字数は、 最大 127 文字であ"
6443 "る。"
6444
6445 #.  e.g., Solaris 8
6446 #.  e.g., FreeBSD before 6.0, but not FreeBSD 6.0 onward
6447 #. type: Plain text
6448 #: build/C/man2/execve.2:550
6449 msgid ""
6450 "The semantics of the I<optional-arg> argument of an interpreter script vary "
6451 "across implementations.  On Linux, the entire string following the "
6452 "I<interpreter> name is passed as a single argument to the interpreter, and "
6453 "this string can include white space.  However, behavior differs on some "
6454 "other systems.  Some systems use the first white space to terminate "
6455 "I<optional-arg>.  On some systems, an interpreter script can have multiple "
6456 "arguments, and white spaces in I<optional-arg> are used to delimit the "
6457 "arguments."
6458 msgstr ""
6459 "インタープリタースクリプトの I<optional-arg> 引き数の解釈方法は実装により異な"
6460 "る。 Linux では、インタープリター名 I<interpreter> に続く文字列全体がインター"
6461 "プリターに 1個の引き数として渡される。 しかし、動作が異なるシステムもある。 "
6462 "あるシステムでは、 I<optional-arg> のうち最初のホワイトスペースまでが 引き数"
6463 "として渡される。 また、別のシステムでは インタープリタースクリプトは複数の引"
6464 "き数を持つことができ、 I<optional-arg> 内のホワイトスペースが引き数の区切りと"
6465 "なる。"
6466
6467 #.  .SH BUGS
6468 #.  Some Linux versions have failed to check permissions on ELF
6469 #.  interpreters.  This is a security hole, because it allows users to
6470 #.  open any file, such as a rewinding tape device, for reading.  Some
6471 #.  Linux versions have also had other security holes in
6472 #.  .BR execve ()
6473 #.  that could be exploited for denial of service by a suitably crafted
6474 #.  ELF binary. There are no known problems with 2.0.34 or 2.2.15.
6475 #. type: Plain text
6476 #: build/C/man2/execve.2:561
6477 msgid "Linux ignores the set-user-ID and set-group-ID bits on scripts."
6478 msgstr "Linux はスクリプトの set-user-ID と set-group-ID ビットを無視する。"
6479
6480 #. type: SS
6481 #: build/C/man2/execve.2:561
6482 #, no-wrap
6483 msgid "execve() and EAGAIN"
6484 msgstr "execve() と EAGAIN"
6485
6486 #. type: Plain text
6487 #: build/C/man2/execve.2:567
6488 msgid ""
6489 "A more detailed explanation of the B<EAGAIN> error that can occur (since "
6490 "Linux 3.1) when calling B<execve>()  is as follows."
6491 msgstr ""
6492 "B<execve>() を呼び出した際に (Linux 3.1 以降で) 起こり得る B<EAGAIN> エラーの"
6493 "詳細な説明を以下で行う。"
6494
6495 #.  commit 909cc4ae86f3380152a18e2a3c44523893ee11c4
6496 #. type: Plain text
6497 #: build/C/man2/execve.2:589
6498 msgid ""
6499 "The B<EAGAIN> error can occur when a I<preceding> call to B<setuid>(2), "
6500 "B<setreuid>(2), or B<setresuid>(2)  caused the real user ID of the process "
6501 "to change, and that change caused the process to exceed its B<RLIMIT_NPROC> "
6502 "resource limit (i.e., the number of processes belonging to the new real UID "
6503 "exceeds the resource limit).  From Linux 2.6.0 to 3.0, this caused the "
6504 "B<set*uid>()  call to fail.  (Prior to 2.6, the resource limit was not "
6505 "imposed on processes that changed their user IDs.)"
6506 msgstr ""
6507 "I<直前の> B<setuid>(2), B<setreuid>(2), B<setresuid>(2) の呼び出しで、 そのプ"
6508 "ロセスの実ユーザー ID が変更され、 その変更によりそのプロセスが "
6509 "B<RLIMIT_NPROC> リソース上限を超過してしまった場合 (すなわち、新しい実ユー"
6510 "ザー ID に属するプロセス数が B<RLIMIT_NPROC> リソース上限を超過した場合) "
6511 "に、 B<EAGAIN> エラーが発生する。 Linux 2.6.0 以上 3.0 以下では、これにより "
6512 "B<set*uid>() の呼び出しが失敗していた。 (Linux 2.6 より前では、このリソース上"
6513 "限はユーザー ID を変更したプロセスには適用されていなかった。)"
6514
6515 #. type: Plain text
6516 #: build/C/man2/execve.2:620
6517 msgid ""
6518 "Since Linux 3.1, the scenario just described no longer causes the "
6519 "B<set*uid>()  call to fail, because it too often led to security holes where "
6520 "buggy applications didn't check the return status and assumed that\\(emif "
6521 "the caller had root privileges\\(emthe call would always succeed.  Instead, "
6522 "the B<set*uid>()  calls now successfully change the real UID, but the kernel "
6523 "sets an internal flag, named B<PF_NPROC_EXCEEDED>, to note that the "
6524 "B<RLIMIT_NPROC> resource limit has been exceeded.  If the "
6525 "B<PF_NPROC_EXCEEDED> flag is set and the resource limit is still exceeded at "
6526 "the time of a subsequent B<execve>()  call, that call fails with the error "
6527 "B<EAGAIN>.  This kernel logic ensures that the B<RLIMIT_NPROC> resource "
6528 "limit is still enforced for the common privileged daemon workflow"
6529 "\\(emnamely, B<fork>(2)  + B<set*uid>()  + B<execve>()."
6530 msgstr ""
6531 "Linux 3.1 以降では、上で説明したシナリオでは B<set*uid>() の呼び出しは失敗し"
6532 "ない。 なぜなら、 返されたステータスの確認を行わず「呼び出し元が特権を持って"
6533 "いる場合には」呼び出しは必ず成功するとみなしているバグがあるアプリケーション"
6534 "では、セキュリティホールにつながることが非常によくあるからだ。 その代わり、 "
6535 "B<set*uid>() の呼び出しによる実 UID の変更は成功するが、 カーネルは "
6536 "B<PF_NPROC_EXCEEDED> という名前の内部フラグをセットする。 このフラグは "
6537 "B<RLIMIT_NPROC> リソース上限が超過したことを示す。 B<PF_NPROC_EXCEEDED> フラ"
6538 "グがセットされていて、その後で B<execve>() が呼ばれた際にリソース上限がまだ超"
6539 "過していれば、 その B<execve>() の呼び出しは B<EAGAIN> エラーで失敗する。 こ"
6540 "のカーネルのロジックにより、 特権デーモンでよく行われる処理フロー、 すなわち "
6541 "B<fork>(2)  + B<set*uid>()  + B<execve>() に対して、前と変わらず "
6542 "B<RLIMIT_NPROC> リソース上限を適用できることが保証される。"
6543
6544 #. type: Plain text
6545 #: build/C/man2/execve.2:636
6546 msgid ""
6547 "If the resource limit was not still exceeded at the time of the B<execve>()  "
6548 "call (because other processes belonging to this real UID terminated between "
6549 "the B<set*uid>()  call and the B<execve>()  call), then the B<execve>()  "
6550 "call succeeds and the kernel clears the B<PF_NPROC_EXCEEDED> process flag.  "
6551 "The flag is also cleared if a subsequent call to B<fork>(2)  by this process "
6552 "succeeds."
6553 msgstr ""
6554 "(B<set*uid>() と B<execve>() の呼び出しの間に、この実 UID に属する他のプロセ"
6555 "スが終了して) 次に B<execve>() が呼び出された際にこのリソース上限が超過してな"
6556 "ければ、 B<execve>() の呼び出しは成功し、カーネルは B<PF_NPROC_EXCEEDED> プロ"
6557 "セスフラグをクリアする。 同じプロセスによって B<fork>(2) の呼び出しが後で行わ"
6558 "れた場合にも、このフラグはクリアされる。"
6559
6560 #. type: SS
6561 #: build/C/man2/execve.2:636
6562 #, no-wrap
6563 msgid "Historical"
6564 msgstr "歴史"
6565
6566 #.  .SH BUGS
6567 #.  Some Linux versions have failed to check permissions on ELF
6568 #.  interpreters.  This is a security hole, because it allows users to
6569 #.  open any file, such as a rewinding tape device, for reading.  Some
6570 #.  Linux versions have also had other security holes in
6571 #.  .BR execve ()
6572 #.  that could be exploited for denial of service by a suitably crafted
6573 #.  ELF binary. There are no known problems with 2.0.34 or 2.2.15.
6574 #. type: Plain text
6575 #: build/C/man2/execve.2:656
6576 msgid ""
6577 "With UNIX\\ V6, the argument list of an B<exec>()  call was ended by 0, "
6578 "while the argument list of I<main> was ended by -1.  Thus, this argument "
6579 "list was not directly usable in a further B<exec>()  call.  Since UNIX\\ V7, "
6580 "both are NULL."
6581 msgstr ""
6582 "UNIX\\ V6 では B<exec>()  コールの引き数リストは 0 で終端され、 I<main> の引"
6583 "き数リストは -1 で終端されていた。 そのため、 I<main> の引き数リストは、その"
6584 "後の B<exec>()  コールには直接使用できなかった。 UNIX\\ V7 以降では、ともに "
6585 "NULL で終端される。"
6586
6587 #. type: Plain text
6588 #: build/C/man2/execve.2:659
6589 msgid ""
6590 "The following program is designed to be execed by the second program below.  "
6591 "It just echoes its command-line arguments, one per line."
6592 msgstr ""
6593 "このプログラムは、以下の二つ目のプログラムから実行するためのものである。 コマ"
6594 "ンドライン引き数を 1行に 1個ずつ表示するだけのプログラムである。"
6595
6596 #. type: Plain text
6597 #: build/C/man2/execve.2:663
6598 #, no-wrap
6599 msgid "/* myecho.c */\n"
6600 msgstr "/* myecho.c */\n"
6601
6602 #. type: Plain text
6603 #: build/C/man2/execve.2:666
6604 #, no-wrap
6605 msgid ""
6606 "#include E<lt>stdio.hE<gt>\n"
6607 "#include E<lt>stdlib.hE<gt>\n"
6608 msgstr ""
6609 "#include E<lt>stdio.hE<gt>\n"
6610 "#include E<lt>stdlib.hE<gt>\n"
6611
6612 #. type: Plain text
6613 #: build/C/man2/execve.2:671
6614 #, no-wrap
6615 msgid ""
6616 "int\n"
6617 "main(int argc, char *argv[])\n"
6618 "{\n"
6619 "    int j;\n"
6620 msgstr ""
6621 "int\n"
6622 "main(int argc, char *argv[])\n"
6623 "{\n"
6624 "    int j;\n"
6625
6626 #. type: Plain text
6627 #: build/C/man2/execve.2:674
6628 #, no-wrap
6629 msgid ""
6630 "    for (j = 0; j E<lt> argc; j++)\n"
6631 "        printf(\"argv[%d]: %s\\en\", j, argv[j]);\n"
6632 msgstr ""
6633 "    for (j = 0; j E<lt> argc; j++)\n"
6634 "        printf(\"argv[%d]: %s\\en\", j, argv[j]);\n"
6635
6636 #. type: Plain text
6637 #: build/C/man2/execve.2:682
6638 msgid ""
6639 "This program can be used to exec the program named in its command-line "
6640 "argument:"
6641 msgstr ""
6642 "以下のプログラムは、コマンドライン引き数で指定した名前のプログラムを 実行する"
6643 "のに使う。"
6644
6645 #. type: Plain text
6646 #: build/C/man2/execve.2:686
6647 #, no-wrap
6648 msgid "/* execve.c */\n"
6649 msgstr "/* execve.c */\n"
6650
6651 #. type: Plain text
6652 #: build/C/man2/execve.2:690
6653 #, no-wrap
6654 msgid ""
6655 "#include E<lt>stdio.hE<gt>\n"
6656 "#include E<lt>stdlib.hE<gt>\n"
6657 "#include E<lt>unistd.hE<gt>\n"
6658 msgstr ""
6659 "#include E<lt>stdio.hE<gt>\n"
6660 "#include E<lt>stdlib.hE<gt>\n"
6661 "#include E<lt>unistd.hE<gt>\n"
6662
6663 #. type: Plain text
6664 #: build/C/man2/execve.2:696
6665 #, no-wrap
6666 msgid ""
6667 "int\n"
6668 "main(int argc, char *argv[])\n"
6669 "{\n"
6670 "    char *newargv[] = { NULL, \"hello\", \"world\", NULL };\n"
6671 "    char *newenviron[] = { NULL };\n"
6672 msgstr ""
6673 "int\n"
6674 "main(int argc, char *argv[])\n"
6675 "{\n"
6676 "    char *newargv[] = { NULL, \"hello\", \"world\", NULL };\n"
6677 "    char *newenviron[] = { NULL };\n"
6678
6679 #. type: Plain text
6680 #: build/C/man2/execve.2:701
6681 #, no-wrap
6682 msgid ""
6683 "    if (argc != 2) {\n"
6684 "        fprintf(stderr, \"Usage: %s E<lt>file-to-execE<gt>\\en\", argv[0]);\n"
6685 "        exit(EXIT_FAILURE);\n"
6686 "    }\n"
6687 msgstr ""
6688 "    if (argc != 2) {\n"
6689 "        fprintf(stderr, \"Usage: %s E<lt>file-to-execE<gt>\\en\", argv[0]);\n"
6690 "        exit(EXIT_FAILURE);\n"
6691 "    }\n"
6692
6693 #. type: Plain text
6694 #: build/C/man2/execve.2:703
6695 #, no-wrap
6696 msgid "    newargv[0] = argv[1];\n"
6697 msgstr "    newargv[0] = argv[1];\n"
6698
6699 #. type: Plain text
6700 #: build/C/man2/execve.2:708
6701 #, fuzzy, no-wrap
6702 #| msgid ""
6703 #| "    execve(argv[1], newargv, newenviron);\n"
6704 #| "    perror(\"execve\");   /* execve() only returns on error */\n"
6705 #| "    exit(EXIT_FAILURE);\n"
6706 #| "}\n"
6707 msgid ""
6708 "    execve(argv[1], newargv, newenviron);\n"
6709 "    perror(\"execve\");   /* execve() returns only on error */\n"
6710 "    exit(EXIT_FAILURE);\n"
6711 "}\n"
6712 msgstr ""
6713 "    execve(argv[1], newargv, newenviron);\n"
6714 "    perror(\"execve\");   /* execve() only returns on error */\n"
6715 "    exit(EXIT_FAILURE);\n"
6716 "}\n"
6717
6718 #. type: Plain text
6719 #: build/C/man2/execve.2:712
6720 msgid "We can use the second program to exec the first as follows:"
6721 msgstr ""
6722 "二つ目のプログラムを使って一つ目のプログラムを実行するには 以下のようにする。"
6723
6724 #. type: Plain text
6725 #: build/C/man2/execve.2:721
6726 #, no-wrap
6727 msgid ""
6728 "$B< cc myecho.c -o myecho>\n"
6729 "$B< cc execve.c -o execve>\n"
6730 "$B< ./execve ./myecho>\n"
6731 "argv[0]: ./myecho\n"
6732 "argv[1]: hello\n"
6733 "argv[2]: world\n"
6734 msgstr ""
6735 "$B< cc myecho.c -o myecho>\n"
6736 "$B< cc execve.c -o execve>\n"
6737 "$B< ./execve ./myecho>\n"
6738 "argv[0]: ./myecho\n"
6739 "argv[1]: hello\n"
6740 "argv[2]: world\n"
6741
6742 #. type: Plain text
6743 #: build/C/man2/execve.2:729
6744 msgid ""
6745 "We can also use these programs to demonstrate the use of a script "
6746 "interpreter.  To do this we create a script whose \"interpreter\" is our "
6747 "I<myecho> program:"
6748 msgstr ""
6749 "さらに、これらのプログラムを使って、スクリプトインタープリターの例を示す。 こ"
6750 "のために、「インタープリター」として先ほど作成したプログラム I<myecho> を使う"
6751 "スクリプトを作成する。"
6752
6753 #. type: Plain text
6754 #: build/C/man2/execve.2:736
6755 #, no-wrap
6756 msgid ""
6757 "$B< cat E<gt> script>\n"
6758 "B<#!./myecho script-arg>\n"
6759 "B<^D>\n"
6760 "$B< chmod +x script>\n"
6761 msgstr ""
6762 "$B< cat E<gt> script>\n"
6763 "B<#!./myecho script-arg>\n"
6764 "B<^D>\n"
6765 "$B< chmod +x script>\n"
6766
6767 #. type: Plain text
6768 #: build/C/man2/execve.2:740
6769 msgid "We can then use our program to exec the script:"
6770 msgstr "作成しておいたプログラムを使ってスクリプトを実行する。"
6771
6772 #. type: Plain text
6773 #: build/C/man2/execve.2:749
6774 #, no-wrap
6775 msgid ""
6776 "$B< ./execve ./script>\n"
6777 "argv[0]: ./myecho\n"
6778 "argv[1]: script-arg\n"
6779 "argv[2]: ./script\n"
6780 "argv[3]: hello\n"
6781 "argv[4]: world\n"
6782 msgstr ""
6783 "$B< ./execve ./script>\n"
6784 "argv[0]: ./myecho\n"
6785 "argv[1]: script-arg\n"
6786 "argv[2]: ./script\n"
6787 "argv[3]: hello\n"
6788 "argv[4]: world\n"
6789
6790 #. type: Plain text
6791 #: build/C/man2/execve.2:763
6792 msgid ""
6793 "B<chmod>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<execl>(3), "
6794 "B<fexecve>(3), B<getopt>(3), B<credentials>(7), B<environ>(7), "
6795 "B<path_resolution>(7), B<ld.so>(8)"
6796 msgstr ""
6797 "B<chmod>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<execl>(3), "
6798 "B<fexecve>(3), B<getopt>(3), B<credentials>(7), B<environ>(7), "
6799 "B<path_resolution>(7), B<ld.so>(8)"
6800
6801 #. type: TH
6802 #: build/C/man2/exit_group.2:25
6803 #, no-wrap
6804 msgid "EXIT_GROUP"
6805 msgstr "EXIT_GROUP"
6806
6807 #. type: TH
6808 #: build/C/man2/exit_group.2:25
6809 #, no-wrap
6810 msgid "2008-11-27"
6811 msgstr "2008-11-27"
6812
6813 #. type: Plain text
6814 #: build/C/man2/exit_group.2:28
6815 msgid "exit_group - exit all threads in a process"
6816 msgstr "exit_group - プロセス中の全てのスレッドを exit させる"
6817
6818 #. type: Plain text
6819 #: build/C/man2/exit_group.2:31
6820 #, no-wrap
6821 msgid "B<#include E<lt>linux/unistd.hE<gt>>\n"
6822 msgstr "B<#include E<lt>linux/unistd.hE<gt>>\n"
6823
6824 #. type: Plain text
6825 #: build/C/man2/exit_group.2:33
6826 #, no-wrap
6827 msgid "B<void exit_group(int >I<status>B<);>\n"
6828 msgstr "B<void exit_group(int >I<status>B<);>\n"
6829
6830 #. type: Plain text
6831 #: build/C/man2/exit_group.2:39
6832 msgid ""
6833 "This system call is equivalent to B<exit>(2)  except that it terminates not "
6834 "only the calling thread, but all threads in the calling process's thread "
6835 "group."
6836 msgstr ""
6837 "このシステムコールは、基本的に B<exit>(2)  と等しいが、 呼び出し元のスレッド"
6838 "だけでなく、呼び出し元のプロセスのスレッドグループに ある全てのスレッドを終了"
6839 "させる点が異なる。"
6840
6841 #. type: Plain text
6842 #: build/C/man2/exit_group.2:41
6843 msgid "This system call does not return."
6844 msgstr "このシステムコールは値を返さない。"
6845
6846 #. type: Plain text
6847 #: build/C/man2/exit_group.2:43
6848 msgid "This call is present since Linux 2.5.35."
6849 msgstr "このコールは、Linux 2.5.35 以降に存在する。"
6850
6851 #. type: Plain text
6852 #: build/C/man2/exit_group.2:45
6853 msgid "This call is Linux-specific."
6854 msgstr "このシステムコールは Linux 固有である。"
6855
6856 #. type: Plain text
6857 #: build/C/man2/exit_group.2:49
6858 msgid ""
6859 "Since glibc 2.3, this is the system call invoked when the B<exit>(2)  "
6860 "wrapper function is called."
6861 msgstr ""
6862 "glibc 2.3 以降では、 B<exit>(2)  のラッパー関数が呼び出された際に、 このシス"
6863 "テムコールが起動される。"
6864
6865 #. type: Plain text
6866 #: build/C/man2/exit_group.2:51
6867 msgid "B<exit>(2)"
6868 msgstr "B<exit>(2)"
6869
6870 #. type: TH
6871 #: build/C/man2/fcntl.2:65
6872 #, no-wrap
6873 msgid "FCNTL"
6874 msgstr "FCNTL"
6875
6876 #. type: Plain text
6877 #: build/C/man2/fcntl.2:68
6878 msgid "fcntl - manipulate file descriptor"
6879 msgstr "fcntl - ファイルディスクリプターの操作を行う"
6880
6881 #. type: Plain text
6882 #: build/C/man2/fcntl.2:72
6883 #, no-wrap
6884 msgid ""
6885 "B<#include E<lt>unistd.hE<gt>>\n"
6886 "B<#include E<lt>fcntl.hE<gt>>\n"
6887 msgstr ""
6888 "B<#include E<lt>unistd.hE<gt>>\n"
6889 "B<#include E<lt>fcntl.hE<gt>>\n"
6890
6891 #. type: Plain text
6892 #: build/C/man2/fcntl.2:74
6893 #, no-wrap
6894 msgid "B<int fcntl(int >I<fd>B<, int >I<cmd>B<, ... /* >I<arg>B< */ );>\n"
6895 msgstr "B<int fcntl(int >I<fd>B<, int >I<cmd>B<, ... /* >I<arg>B< */ );>\n"
6896
6897 #. type: Plain text
6898 #: build/C/man2/fcntl.2:81
6899 msgid ""
6900 "B<fcntl>()  performs one of the operations described below on the open file "
6901 "descriptor I<fd>.  The operation is determined by I<cmd>."
6902 msgstr ""
6903 "B<fcntl>()  は、オープンされたファイルディスクリプター I<fd> に関して下記の操"
6904 "作を行う。操作は I<cmd> によって決まる:"
6905
6906 #. type: Plain text
6907 #: build/C/man2/fcntl.2:95
6908 msgid ""
6909 "B<fcntl>()  can take an optional third argument.  Whether or not this "
6910 "argument is required is determined by I<cmd>.  The required argument type is "
6911 "indicated in parentheses after each I<cmd> name (in most cases, the required "
6912 "type is I<int>, and we identify the argument using the name I<arg>), or "
6913 "I<void> is specified if the argument is not required."
6914 msgstr ""
6915 "B<fcntl>() はオプションとして第三引き数をとることができる。 第三引き数が必"
6916 "要\n"
6917 "かどうかは I<cmd> により決まる。必要な引き数の型は I<cmd> 名の後ろの括弧内"
6918 "で\n"
6919 "指定されている (ほとんどの場合、必要な型は I<int> であり、この引き数を表す"
6920 "の\n"
6921 "に I<arg> という名前を使っている)。引き数が必要ない場合には I<void> が指定"
6922 "さ\n"
6923 "れている。"
6924
6925 #. type: Plain text
6926 #: build/C/man2/fcntl.2:106
6927 msgid ""
6928 "Certain of the operations below are supported only since a particular Linux "
6929 "kernel version.  The preferred method of checking whether the host kernel "
6930 "supports a particular operation is to invoke B<fcntl>()  with the desired "
6931 "I<cmd> value and then test whether the call failed with B<EINVAL>, "
6932 "indicating that the kernel does not recognize this value."
6933 msgstr ""
6934 "下記のいくつかの操作は特定のバージョンの Linux カーネルでのみサポートされてい"
6935 "る。 ホストカーネルが特定の操作をサポートしているかを確認する推奨の方法は、 "
6936 "B<fcntl>() を所望の I<cmd> 値で呼び出し、 B<EINVAL> で失敗するかを検査するこ"
6937 "とである。 B<EINVAL> が返った場合、カーネルがこの値を認識していないことを示"
6938 "す。"
6939
6940 #. type: SS
6941 #: build/C/man2/fcntl.2:106
6942 #, no-wrap
6943 msgid "Duplicating a file descriptor"
6944 msgstr "ファイルディスクリプターの複製"
6945
6946 #. type: TP
6947 #: build/C/man2/fcntl.2:107
6948 #, no-wrap
6949 msgid "B<F_DUPFD> (I<int>)"
6950 msgstr "B<F_DUPFD> (I<int>)"
6951
6952 #. type: Plain text
6953 #: build/C/man2/fcntl.2:117
6954 msgid ""
6955 "Find the lowest numbered available file descriptor greater than or equal to "
6956 "I<arg> and make it be a copy of I<fd>.  This is different from B<dup2>(2), "
6957 "which uses exactly the descriptor specified."
6958 msgstr ""
6959 "利用可能なファイルディスクリプターのうち、 I<arg> 以上で最小のものを探し、 "
6960 "I<fd> のコピーとする。これは別の形の B<dup2>(2)  である。 B<dup2>(2)  では指"
6961 "定されたディスクリプターが使われる点が違う。"
6962
6963 #. type: Plain text
6964 #: build/C/man2/fcntl.2:119
6965 msgid "On success, the new descriptor is returned."
6966 msgstr "成功すると、新しいディスクリプターが返される。"
6967
6968 #. type: Plain text
6969 #: build/C/man2/fcntl.2:123
6970 msgid "See B<dup>(2)  for further details."
6971 msgstr "詳細は B<dup>(2)  を参照のこと。"
6972
6973 #. type: TP
6974 #: build/C/man2/fcntl.2:123
6975 #, no-wrap
6976 msgid "B<F_DUPFD_CLOEXEC> (I<int>; since Linux 2.6.24)"
6977 msgstr "B<F_DUPFD_CLOEXEC> (I<int>; Linux 2.6.24 以降)"
6978
6979 #. type: Plain text
6980 #: build/C/man2/fcntl.2:140
6981 msgid ""
6982 "As for B<F_DUPFD>, but additionally set the close-on-exec flag for the "
6983 "duplicate descriptor.  Specifying this flag permits a program to avoid an "
6984 "additional B<fcntl>()  B<F_SETFD> operation to set the B<FD_CLOEXEC> flag.  "
6985 "For an explanation of why this flag is useful, see the description of "
6986 "B<O_CLOEXEC> in B<open>(2)."
6987 msgstr ""
6988 "B<F_DUPFD> と同様だが、それに加えて複製されたディスクリプターに対して close-"
6989 "on-exec フラグをセットする。 このフラグを指定することで、プログラムは "
6990 "B<FD_CLOEXEC> フラグをセットするために B<fcntl>()  の B<F_SETFD> 操作を追加で"
6991 "行う必要がなくなる。 このフラグがなぜ有用かについては、 B<open>(2)  の "
6992 "B<O_CLOEXEC> の説明を参照のこと。"
6993
6994 #. type: SS
6995 #: build/C/man2/fcntl.2:140
6996 #, no-wrap
6997 msgid "File descriptor flags"
6998 msgstr "ファイルディスクリプターフラグ"
6999
7000 #. type: Plain text
7001 #: build/C/man2/fcntl.2:151
7002 msgid ""
7003 "The following commands manipulate the flags associated with a file "
7004 "descriptor.  Currently, only one such flag is defined: B<FD_CLOEXEC>, the "
7005 "close-on-exec flag.  If the B<FD_CLOEXEC> bit is 0, the file descriptor will "
7006 "remain open across an B<execve>(2), otherwise it will be closed."
7007 msgstr ""
7008 "以下のコマンドを使って、ファイルディスクリプターに関連するフラグ を操作するこ"
7009 "とができる。 現在のところ、定義されているフラグは一つだけである: "
7010 "B<FD_CLOEXEC> (close-on-exec フラグ)。 B<FD_CLOEXEC> ビットが 0 なら、ファイ"
7011 "ルディスクリプターは B<execve>(2)  を行ってもオープンされたままだが、そうでな"
7012 "い場合はクローズされる。"
7013
7014 #. type: TP
7015 #: build/C/man2/fcntl.2:151
7016 #, no-wrap
7017 msgid "B<F_GETFD> (I<void>)"
7018 msgstr "B<F_GETFD> (I<void>)"
7019
7020 #. type: Plain text
7021 #: build/C/man2/fcntl.2:156
7022 msgid "Read the file descriptor flags; I<arg> is ignored."
7023 msgstr "ファイルディスクリプターフラグを読み出す。 I<arg> は無視される。"
7024
7025 #. type: TP
7026 #: build/C/man2/fcntl.2:156
7027 #, no-wrap
7028 msgid "B<F_SETFD> (I<int>)"
7029 msgstr "B<F_SETFD> (I<int>)"
7030
7031 #. type: Plain text
7032 #: build/C/man2/fcntl.2:160
7033 msgid "Set the file descriptor flags to the value specified by I<arg>."
7034 msgstr "ファイルディスクリプターフラグに I<arg> で指定した値を設定する。"
7035
7036 #. type: Plain text
7037 #: build/C/man2/fcntl.2:175
7038 msgid ""
7039 "In multithreaded programs, using B<fcntl>()  B<F_SETFD> to set the close-on-"
7040 "exec flag at the same time as another thread performs a B<fork>(2)  plus "
7041 "B<execve>(2)  is vulnerable to a race condition that may unintentionally "
7042 "leak the file descriptor to the program executed in the child process.  See "
7043 "the discussion of the B<O_CLOEXEC> flag in B<open>(2)  for details and a "
7044 "remedy to the problem."
7045 msgstr ""
7046 "マルチスレッドプログラムでは、 B<fcntl>() の B<F_SETFD> を使って close-on-"
7047 "exec フラグを設定するのと同時に、 別のスレッドで B<execve>(2) と B<fork>(2) "
7048 "を実行することは、競合条件次第では、 そのファイルディスクリプターが子プロセス"
7049 "で実行されるプログラムに意図せず見えてしまうという危険性がある。 詳細とこの問"
7050 "題への対処法については B<open>(2) の B<O_CLOEXEC> フラグの議論を参照のこと。"
7051
7052 #. type: SS
7053 #: build/C/man2/fcntl.2:175
7054 #, no-wrap
7055 msgid "File status flags"
7056 msgstr "ファイル状態フラグ"
7057
7058 #.  or
7059 #.  .BR creat (2),
7060 #. type: Plain text
7061 #: build/C/man2/fcntl.2:190
7062 msgid ""
7063 "Each open file description has certain associated status flags, initialized "
7064 "by B<open>(2)  and possibly modified by B<fcntl>().  Duplicated file "
7065 "descriptors (made with B<dup>(2), B<fcntl>(F_DUPFD), B<fork>(2), etc.) refer "
7066 "to the same open file description, and thus share the same file status flags."
7067 msgstr ""
7068 "オープンファイル記述 (open file description) には、 ファイル記述毎に設定され"
7069 "る状態フラグがいくつかある。これらのフラグは B<open>(2)  によって初期化さ"
7070 "れ、 B<fcntl>(2)  により変更することもできる。これらは、 (B<dup>(2), "
7071 "B<fcntl>(F_DUPFD), B<fork>(2)  などで) 複製されたファイルディスクリプター同士"
7072 "は 同じオープンファイル記述を参照する。 そのため、 同じファイル状態フラグが共"
7073 "有される。"
7074
7075 #. type: Plain text
7076 #: build/C/man2/fcntl.2:193
7077 msgid "The file status flags and their semantics are described in B<open>(2)."
7078 msgstr "ファイル状態フラグとその意味は B<open>(2)  で説明されている。"
7079
7080 #. type: TP
7081 #: build/C/man2/fcntl.2:193
7082 #, no-wrap
7083 msgid "B<F_GETFL> (I<void>)"
7084 msgstr "B<F_GETFL> (I<void>)"
7085
7086 #. type: Plain text
7087 #: build/C/man2/fcntl.2:198
7088 msgid "Get the file access mode and the file status flags; I<arg> is ignored."
7089 msgstr ""
7090 "ファイルのアクセスモードとファイル状態フラグを取得する。\n"
7091 "I<arg> は無視される。"
7092
7093 #. type: TP
7094 #: build/C/man2/fcntl.2:198
7095 #, no-wrap
7096 msgid "B<F_SETFL> (I<int>)"
7097 msgstr "B<F_SETFL> (I<int>)"
7098
7099 #. type: Plain text
7100 #: build/C/man2/fcntl.2:223
7101 msgid ""
7102 "Set the file status flags to the value specified by I<arg>.  File access "
7103 "mode (B<O_RDONLY>, B<O_WRONLY>, B<O_RDWR>)  and file creation flags (i.e., "
7104 "B<O_CREAT>, B<O_EXCL>, B<O_NOCTTY>, B<O_TRUNC>)  in I<arg> are ignored.  On "
7105 "Linux this command can change only the B<O_APPEND>, B<O_ASYNC>, B<O_DIRECT>, "
7106 "B<O_NOATIME>, and B<O_NONBLOCK> flags.  It is not possible to change the "
7107 "B<O_DSYNC> and B<O_SYNC> flags; see BUGS, below."
7108 msgstr ""
7109 "ファイル状態フラグに I<arg> で指定された値を設定する。 I<arg> のうち、ファイ"
7110 "ルのアクセスモード (B<O_RDONLY>, B<O_WRONLY>, B<O_RDWR>)  とファイル作成フラ"
7111 "グ (すなわち B<O_CREAT>, B<O_EXCL>, B<O_NOCTTY>, B<O_TRUNC>)  に関するビット"
7112 "は無視される。 Linux では、このコマンドで変更できるのは B<O_APPEND>, "
7113 "B<O_ASYNC>, B<O_DIRECT>, B<O_NOATIME>, B<O_NONBLOCK> フラグだけである。フラ"
7114 "グ B<O_DSYNC>, B<O_SYNC> を変更することはできない。下記の「バグ」を参照。"
7115
7116 #. type: SS
7117 #: build/C/man2/fcntl.2:223
7118 #, no-wrap
7119 msgid "Advisory record locking"
7120 msgstr "アドバイザリーレコードロック"
7121
7122 #. type: Plain text
7123 #: build/C/man2/fcntl.2:228
7124 msgid ""
7125 "Linux implements traditional (\"process-associated\") UNIX record locks, as "
7126 "standardized by POSIX.  For a Linux-specific alternative with better "
7127 "semantics, see the discussion of open file description locks below."
7128 msgstr ""
7129 "Linux は昔からある (「プロセスに関連付けられる」) UNIX のレコードロックを実装"
7130 "している。 このレコードロックは POSIX で標準化されている。 Linux 固有のより良"
7131 "い動作を行うロックについては、下記のオープンファイル記述ロックの議論を参照の"
7132 "こと。"
7133
7134 #. type: Plain text
7135 #: build/C/man2/fcntl.2:239
7136 msgid ""
7137 "B<F_SETLK>, B<F_SETLKW>, and B<F_GETLK> are used to acquire, release, and "
7138 "test for the existence of record locks (also known as byte-range, file-"
7139 "segment, or file-region locks).  The third argument, I<lock>, is a pointer "
7140 "to a structure that has at least the following fields (in unspecified order)."
7141 msgstr ""
7142 "B<F_SETLK>, B<F_SETLKW>, B<F_GETLK> は、レコードロックの獲得/解放/テストの"
7143 "ために使用する (レコードロックは、バイト範囲ロック、ファイルセグメントロッ"
7144 "ク、ファイル領域ロックとも呼ばれる)。 三番目の引き数 I<lock> は、以下に示す"
7145 "フィールドを含む構造体へのポインターである (フィールドの順序は関係なく、構造"
7146 "体に他のフィールドがあってもよい)。"
7147
7148 #. type: Plain text
7149 #: build/C/man2/fcntl.2:254
7150 #, no-wrap
7151 msgid ""
7152 "struct flock {\n"
7153 "    ...\n"
7154 "    short l_type;    /* Type of lock: F_RDLCK,\n"
7155 "                        F_WRLCK, F_UNLCK */\n"
7156 "    short l_whence;  /* How to interpret l_start:\n"
7157 "                        SEEK_SET, SEEK_CUR, SEEK_END */\n"
7158 "    off_t l_start;   /* Starting offset for lock */\n"
7159 "    off_t l_len;     /* Number of bytes to lock */\n"
7160 "    pid_t l_pid;     /* PID of process blocking our lock\n"
7161 "                        (set by F_GETLK and F_OFD_GETLK) */\n"
7162 "    ...\n"
7163 "};\n"
7164 msgstr ""
7165 "struct flock {\n"
7166 "    ...\n"
7167 "    short l_type;    /* Type of lock: F_RDLCK,\n"
7168 "                        F_WRLCK, F_UNLCK */\n"
7169 "    short l_whence;  /* How to interpret l_start:\n"
7170 "                        SEEK_SET, SEEK_CUR, SEEK_END */\n"
7171 "    off_t l_start;   /* Starting offset for lock */\n"
7172 "    off_t l_len;     /* Number of bytes to lock */\n"
7173 "    pid_t l_pid;     /* PID of process blocking our lock\n"
7174 "                        (set by F_GETLK and F_OFD_GETLK) */\n"
7175 "    ...\n"
7176 "};\n"
7177
7178 #. type: Plain text
7179 #: build/C/man2/fcntl.2:262
7180 msgid ""
7181 "The I<l_whence>, I<l_start>, and I<l_len> fields of this structure specify "
7182 "the range of bytes we wish to lock.  Bytes past the end of the file may be "
7183 "locked, but not bytes before the start of the file."
7184 msgstr ""
7185 "この構造体の I<l_whence>, I<l_start>, I<l_len> フィールドで、ロックを行いたい"
7186 "バイト範囲を指定する。 ファイルの末尾より後ろのバイトをロックすることはできる"
7187 "が、 ファイルの先頭より前のバイトをロックすることはできない。"
7188
7189 #. type: Plain text
7190 #: build/C/man2/fcntl.2:282
7191 msgid ""
7192 "I<l_start> is the starting offset for the lock, and is interpreted relative "
7193 "to either: the start of the file (if I<l_whence> is B<SEEK_SET>); the "
7194 "current file offset (if I<l_whence> is B<SEEK_CUR>); or the end of the file "
7195 "(if I<l_whence> is B<SEEK_END>).  In the final two cases, I<l_start> can be "
7196 "a negative number provided the offset does not lie before the start of the "
7197 "file."
7198 msgstr ""
7199 "I<l_start> はロックを行う領域の開始オフセットである。 その意味は I<l_whence> "
7200 "により異なる: I<l_whence> が B<SEEK_SET> の場合はファイルの先頭からのオフセッ"
7201 "ト、 I<l_whence> が B<SEEK_CUR> の場合は現在のファイルオフセットからのオフ"
7202 "セット、 I<l_whence> が B<SEEK_END> の場合はファイルの末尾からのオフセットと"
7203 "解釈される。 後ろの2つの場合には、 ファイルの先頭より前にならない範囲で、 "
7204 "I<l_start> に負の値を指定することができる。"
7205
7206 #. type: Plain text
7207 #: build/C/man2/fcntl.2:297
7208 msgid ""
7209 "I<l_len> specifies the number of bytes to be locked.  If I<l_len> is "
7210 "positive, then the range to be locked covers bytes I<l_start> up to and "
7211 "including I<l_start>+I<l_len>-1.  Specifying 0 for I<l_len> has the special "
7212 "meaning: lock all bytes starting at the location specified by I<l_whence> "
7213 "and I<l_start> through to the end of file, no matter how large the file "
7214 "grows."
7215 msgstr ""
7216 "I<l_len> はロックしたいバイト数を示す。 I<l_len> が正の場合、ロックされるバイ"
7217 "ト範囲は I<l_start> 以上 I<l_start>+I<l_len>-1 以下となる。 I<l_len> に 0 を"
7218 "指定した場合は特別な意味を持つ: I<l_whence> and I<l_start> で指定される位置か"
7219 "らファイルの末尾までの全てのバイトをロックする (ファイルがどんなに大きくなっ"
7220 "たとしてもファイルの末尾までロックする)。"
7221
7222 #. type: Plain text
7223 #: build/C/man2/fcntl.2:310
7224 msgid ""
7225 "POSIX.1-2001 allows (but does not require)  an implementation to support a "
7226 "negative I<l_len> value; if I<l_len> is negative, the interval described by "
7227 "I<lock> covers bytes I<l_start>+I<l_len> up to and including I<l_start>-1.  "
7228 "This is supported by Linux since kernel versions 2.4.21 and 2.5.49."
7229 msgstr ""
7230 "POSIX.1-2001 では、負の値の I<l_len> をサポートする実装を認めている (必須では"
7231 "ない)。 I<l_len> が負の場合、ロックされるバイト範囲は I<l_start>+I<l_len> 以"
7232 "上 I<l_start>-1 以下となる。 この動作はカーネル 2.4.21 以降および 2.5.49 以降"
7233 "の Linux で サポートされている。"
7234
7235 #. type: Plain text
7236 #: build/C/man2/fcntl.2:329
7237 msgid ""
7238 "The I<l_type> field can be used to place a read (B<F_RDLCK>)  or a write "
7239 "(B<F_WRLCK>)  lock on a file.  Any number of processes may hold a read lock "
7240 "(shared lock)  on a file region, but only one process may hold a write lock "
7241 "(exclusive lock).  An exclusive lock excludes all other locks, both shared "
7242 "and exclusive.  A single process can hold only one type of lock on a file "
7243 "region; if a new lock is applied to an already-locked region, then the "
7244 "existing lock is converted to the new lock type.  (Such conversions may "
7245 "involve splitting, shrinking, or coalescing with an existing lock if the "
7246 "byte range specified by the new lock does not precisely coincide with the "
7247 "range of the existing lock.)"
7248 msgstr ""
7249 "I<l_type> フィールドは、ファイルに対して読み出しロック (B<F_RDLCK>)  と書き込"
7250 "みロック (B<F_WRLCK>)  のどちらを 設定するかを指定する。 ファイルのある領域に"
7251 "対して、読み出しロック (共有ロック) を保持できる プロセス数に制限はないが、書"
7252 "き込みロック (排他ロック) を保持できる のは一つのプロセスだけである。排他ロッ"
7253 "クを設定すると、(共有ロックか 排他ロックにかかわらず) 他のロックは何も設定で"
7254 "きない。 一つのプロセスは、ファイルのある領域に対して一種類のロックしか保持で"
7255 "きない。 新規のロックがロックが設定されている領域に対して適用されると、既存の"
7256 "ロック は新規のロックの種別に変換される (新規のロックで指定されたバイト範囲が"
7257 "既存ロックの範囲と一致する場合以外では、 変換の過程で既存のロックの分割、縮"
7258 "小、結合が行われることがある)。"
7259
7260 #. type: TP
7261 #: build/C/man2/fcntl.2:329
7262 #, no-wrap
7263 msgid "B<F_SETLK> (I<struct flock *>)"
7264 msgstr "B<F_SETLK> (I<struct flock *>)"
7265
7266 #. type: Plain text
7267 #: build/C/man2/fcntl.2:354
7268 msgid ""
7269 "Acquire a lock (when I<l_type> is B<F_RDLCK> or B<F_WRLCK>)  or release a "
7270 "lock (when I<l_type> is B<F_UNLCK>)  on the bytes specified by the "
7271 "I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>.  If a conflicting "
7272 "lock is held by another process, this call returns -1 and sets I<errno> to "
7273 "B<EACCES> or B<EAGAIN>.  (The error returned in this case differs across "
7274 "implementations, so POSIX requires a portable application to check for both "
7275 "errors.)"
7276 msgstr ""
7277 "(I<l_type> が B<F_RDLCK> か B<F_WRLCK> の場合は) ロックの獲得を、 "
7278 "(B<F_UNLCK> の場合は) ロックの解放を、 I<flock> 構造体のフィールド "
7279 "I<l_whence>, I<l_start>, I<l_len> で指定された範囲のバイトに対して行う。 指定"
7280 "されたロックが他のプロセスが設定しているロックと衝突する場合は、 -1 を返し、 "
7281 "I<errno> に B<EACCES> か B<EAGAIN> を設定する。 (この場合に返されるエラーは実"
7282 "装により異なる。 そのため、 POSIX では移植性が必要なアプリケーションでは、 こ"
7283 "れらの両方のエラーをチェックすることが必要としている。)"
7284
7285 #. type: TP
7286 #: build/C/man2/fcntl.2:354
7287 #, no-wrap
7288 msgid "B<F_SETLKW> (I<struct flock *>)"
7289 msgstr "B<F_SETLKW> (I<struct flock *>)"
7290
7291 #. type: Plain text
7292 #: build/C/man2/fcntl.2:368
7293 msgid ""
7294 "As for B<F_SETLK>, but if a conflicting lock is held on the file, then wait "
7295 "for that lock to be released.  If a signal is caught while waiting, then the "
7296 "call is interrupted and (after the signal handler has returned)  returns "
7297 "immediately (with return value -1 and I<errno> set to B<EINTR>; see "
7298 "B<signal>(7))."
7299 msgstr ""
7300 "B<F_SETLK> と同様だが、こちらではそのファイルに対して衝突するロックが 適用さ"
7301 "れていた場合に、そのロックが解放されるのを待つ点が異なる。 待っている間にシグ"
7302 "ナルを受けた場合は、システムコールは中断され、 (シグナルハンドラーが戻った直"
7303 "後に) 返り値 -1 を返す (また I<errno> に B<EINTR> が設定される; "
7304 "B<signal>(7)  参照)。"
7305
7306 #. type: TP
7307 #: build/C/man2/fcntl.2:368
7308 #, no-wrap
7309 msgid "B<F_GETLK> (I<struct flock *>)"
7310 msgstr "B<F_GETLK> (I<struct flock *>)"
7311
7312 #. type: Plain text
7313 #: build/C/man2/fcntl.2:382
7314 msgid ""
7315 "On input to this call, I<lock> describes a lock we would like to place on "
7316 "the file.  If the lock could be placed, B<fcntl>()  does not actually place "
7317 "it, but returns B<F_UNLCK> in the I<l_type> field of I<lock> and leaves the "
7318 "other fields of the structure unchanged."
7319 msgstr ""
7320 "このコールの呼び出し時には、 I<lock> にはそのファイルに適用しようとするロック"
7321 "に関する情報が入っている。 ロックを適用できる場合には、 B<fcntl>()  は実際に"
7322 "はロックを行わず、 構造体 I<lock> の I<l_type> フィールドに B<F_UNLCK> を返"
7323 "し、 他のフィールドは変更しない。 "
7324
7325 #. type: Plain text
7326 #: build/C/man2/fcntl.2:399
7327 msgid ""
7328 "If one or more incompatible locks would prevent this lock being placed, then "
7329 "B<fcntl>()  returns details about one of those locks in the I<l_type>, "
7330 "I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>.  If the conflicting "
7331 "lock is a traditional (process-associated) record lock, then the I<l_pid> "
7332 "field is set to the PID of the process holding that lock.  If the "
7333 "conflicting lock is an open file description lock, then I<l_pid> is set to "
7334 "-1.  Note that the returned information may already be out of date by the "
7335 "time the caller inspects it."
7336 msgstr ""
7337 "違う種別のロックが (一つもしくは複数) 適用されていてロックを適用できないよう"
7338 "な場合には、 B<fcntl>() は、 原因となったロックの一つについての詳細を、 "
7339 "I<lock> のフィールド I<l_type>, I<l_whence>, I<l_start>, I<l_len> で返す。 衝"
7340 "突するロックが昔からある (プロセスに関連付けられる) レコードロックの場合、 "
7341 "I<l_pid> フィールドにロックを保持しているプロセスの PID が設定される。 衝突す"
7342 "るロックがオープンファイル記述ロックの場合、 I<l_pid> に -1 が設定される。 呼"
7343 "び出し元がその内容を参照した時点では、 返された情報はすでに古いものとなってい"
7344 "る可能性がある点に注意すること。"
7345
7346 #. type: Plain text
7347 #: build/C/man2/fcntl.2:407
7348 msgid ""
7349 "In order to place a read lock, I<fd> must be open for reading.  In order to "
7350 "place a write lock, I<fd> must be open for writing.  To place both types of "
7351 "lock, open a file read-write."
7352 msgstr ""
7353 "読み出しロックを適用するには、 I<fd> は読み出し用にオープンされていなければな"
7354 "らない。 書き込みロックを適用するには、 I<fd> は書き込み用にオープンされてい"
7355 "なければならない。 読み書き両方のロックを適用するには、読み書き両用で ファイ"
7356 "ルをオープンしなければならない。"
7357
7358 #. type: Plain text
7359 #: build/C/man2/fcntl.2:430
7360 msgid ""
7361 "When placing locks with B<F_SETLKW>, the kernel detects I<deadlocks>, "
7362 "whereby two or more processes have their lock requests mutually blocked by "
7363 "locks held by the other processes.  For example, suppose process A holds a "
7364 "write lock on byte 100 of a file, and process B holds a write lock on byte "
7365 "200.  If each process then attempts to lock the byte already locked by the "
7366 "other process using B<F_SETLKW>, then, without deadlock detection, both "
7367 "processes would remain blocked indefinitely.  When the kernel detects such "
7368 "deadlocks, it causes one of the blocking lock requests to immediately fail "
7369 "with the error B<EDEADLK>; an application that encounters such an error "
7370 "should release some of its locks to allow other applications to proceed "
7371 "before attempting regain the locks that it requires.  Circular deadlocks "
7372 "involving more than two processes are also detected.  Note, however, that "
7373 "there are limitations to the kernel's deadlock-detection algorithm; see BUGS."
7374 msgstr ""
7375 "B<F_SETLKW> でロックを適用する際、 カーネルはI<デッドロック>の検出を行う。 2 "
7376 "つ以上のプロセスが、 他のプロセスが保持するロックにより互いにブロックされるよ"
7377 "うなロック要求を行っているかを検査する。 例えば、 プロセス A があるファイルの"
7378 "バイト 100 に対して書き込みロックを保持していて、 プロセス B がバイト 200 に"
7379 "対して書き込みロックを保持しているとする。 各プロセスが B<F_SETLKW> を使って"
7380 "他のプロセスによるすでにロックされているバイトをロックしようとすると、 デッド"
7381 "ロック検出がない場合、 両方のプロセスが無限に停止することになる。 カーネルは"
7382 "このようなデッドロックを検出すると、 停止していたロック要求の一つをエラー "
7383 "B<EDEADLK> ですぐに失敗させる。 このエラーを受け取ったアプリケーションは、 必"
7384 "要なロックを再度獲得しようとする前に、 他のアプリケーションが実行できるように"
7385 "自分が保持するロックのいくつかを解放する必要がある。 3 つ以上のプロセスが関連"
7386 "する循環するデッドロックも検出される。 ただし、 カーネルのデッドロック検出ア"
7387 "ルゴリズムには制限がある点に注意すること。 「バグ」を参照。"
7388
7389 #. type: Plain text
7390 #: build/C/man2/fcntl.2:434
7391 msgid ""
7392 "As well as being removed by an explicit B<F_UNLCK>, record locks are "
7393 "automatically released when the process terminates."
7394 msgstr ""
7395 "ろコードロックは B<F_UNLCK> で明示的に削除されるだけでなく、 そのプロセスが終"
7396 "了した際には自動的に解放される。"
7397
7398 #. type: Plain text
7399 #: build/C/man2/fcntl.2:439
7400 msgid ""
7401 "Record locks are not inherited by a child created via B<fork>(2), but are "
7402 "preserved across an B<execve>(2)."
7403 msgstr ""
7404 "レコードのロックは B<fork>(2)  で作成された子プロセスには継承されないが、 "
7405 "B<execve>(2)  の前後では保存される。"
7406
7407 #. type: Plain text
7408 #: build/C/man2/fcntl.2:448
7409 msgid ""
7410 "Because of the buffering performed by the B<stdio>(3)  library, the use of "
7411 "record locking with routines in that package should be avoided; use "
7412 "B<read>(2)  and B<write>(2)  instead."
7413 msgstr ""
7414 "B<stdio>(3)  ではバッファーリングが行われるので、 stdio 関連の関数ではレコー"
7415 "ドのロックの使用は回避される; 代わりに B<read>(2)  や B<write>(2)  を使用する"
7416 "こと。"
7417
7418 #. type: Plain text
7419 #: build/C/man2/fcntl.2:452
7420 msgid ""
7421 "The record locks described above are associated with the process (unlike the "
7422 "open file description locks described below).  This has some unfortunate "
7423 "consequences:"
7424 msgstr ""
7425 "上記で説明したレコードロックはプロセスと関連付けられる (以下で説明するオープ"
7426 "ンファイル記述ロックと異なる点である)。 そのため、 残念ながら以下のようなこと"
7427 "が起こる。"
7428
7429 #.  (Additional file descriptors referring to the same file
7430 #.  may have been obtained by calls to
7431 #.  .BR open "(2), " dup "(2), " dup2 "(2), or " fcntl ().)
7432 #. type: Plain text
7433 #: build/C/man2/fcntl.2:468
7434 msgid ""
7435 "If a process closes I<any> file descriptor referring to a file, then all of "
7436 "the process's locks on that file are released, regardless of the file "
7437 "descriptor(s) on which the locks were obtained.  This is bad: it means that "
7438 "a process can lose its locks on a file such as I</etc/passwd> or I</etc/"
7439 "mtab> when for some reason a library function decides to open, read, and "
7440 "close the same file."
7441 msgstr ""
7442 "プロセスがロックが適用されているファイルを参照しているファイルディスクリプ"
7443 "ターの「いずれか」をクローズした場合、 そのファイルに対するそのプロセスのすべ"
7444 "てのロックが解放される。 この動作はまずい。 あるプロセスが I</etc/passwd> や "
7445 "I</etc/mtab> といったファイルにロックを適用しているときに、 あるライブラリ関"
7446 "数が何かの理由で同じファイルを open, read, close すると、そのファイルへのロッ"
7447 "クが失われることになる。"
7448
7449 #. type: Plain text
7450 #: build/C/man2/fcntl.2:473
7451 msgid ""
7452 "The threads in a process share locks.  In other words, a multithreaded "
7453 "program can't use record locking to ensure that threads don't simultaneously "
7454 "access the same region of a file."
7455 msgstr ""
7456 "1 つのプロセス内のスレッドはロックを共有する。 言い換えると、 マルチスレッド"
7457 "のプログラムで、 レコードロックを使って、 複数のスレッドが同時に 1 つのファイ"
7458 "ルの同じ領域にアクセスしないようにすることはできないということだ。"
7459
7460 #. type: Plain text
7461 #: build/C/man2/fcntl.2:475
7462 msgid "Open file description locks solve both of these problems."
7463 msgstr "オープンファイル記述ロックを使うとこれらの問題が解決できる。"
7464
7465 #. type: SS
7466 #: build/C/man2/fcntl.2:475
7467 #, no-wrap
7468 msgid "Open file description locks (non-POSIX)"
7469 msgstr "オープンファイル記述ロック (非 POSIX)"
7470
7471 #. type: Plain text
7472 #: build/C/man2/fcntl.2:482
7473 msgid ""
7474 "Open file description locks are advisory byte-range locks whose operation is "
7475 "in most respects identical to the traditional record locks described above.  "
7476 "This lock type is Linux-specific, and available since Linux 3.15.  For an "
7477 "explanation of open file descriptions, see B<open>(2)."
7478 msgstr ""
7479 "オープンファイル記述ロックはバイト範囲に対するアドバイザリーロックで、 ほとん"
7480 "どの点で上述の昔からあるレコードロックと等価である。 このロック種別は Linux "
7481 "固有であり、 Linux 3.15 以降で利用できる。 オープンファイル記述の説明は "
7482 "B<open>(2) を参照。"
7483
7484 #. type: Plain text
7485 #: build/C/man2/fcntl.2:500
7486 msgid ""
7487 "The principal difference between the two lock types is that whereas "
7488 "traditional record locks are associated with a process, open file "
7489 "description locks are associated with the open file description on which "
7490 "they are acquired, much like locks acquired with B<flock>(2).  Consequently "
7491 "(and unlike traditional advisory record locks), open file description locks "
7492 "are inherited across B<fork>(2)  (and B<clone>(2)  with B<CLONE_FILES>), and "
7493 "are only automatically released on the last close of the open file "
7494 "description, instead of being released on any close of the file."
7495 msgstr ""
7496 "2 つのロック種別の主な違いは、 昔からあるレコードロックはプロセスに関連付けら"
7497 "れるのに対して、 オープンファイル記述ロックはロックが獲得されるオープンファイ"
7498 "ル記述に関連付けられる点である。 この動作は B<flock>(2) で獲得されるロックに"
7499 "よく似ている。 結果として (昔からあるアドバイザリーレコードロックと違い)、 "
7500 "オープンファイル記述ロックは B<fork>(2) (や B<CLONE_FILES> 付きの "
7501 "B<clone>(2)) の前後で継承され、 ファイルのクローズ時に解放されるのではなく、 "
7502 "オープンファイル記述の最後のクローズ時にのみ自動的に解放される。"
7503
7504 #. type: Plain text
7505 #: build/C/man2/fcntl.2:503
7506 msgid ""
7507 "Open file description locks always conflict with traditional record locks, "
7508 "even when they are acquired by the same process on the same file descriptor."
7509 msgstr ""
7510 "オープンファイル記述ロックは常に昔からあるレコードロックと競合する。 たと"
7511 "え、 ロックが同じプロセスによって同じファイルディスクリプターに対して行われた"
7512 "としてもである。"
7513
7514 #. type: Plain text
7515 #: build/C/man2/fcntl.2:516
7516 msgid ""
7517 "Open file description locks placed via the same open file description (i.e., "
7518 "via the same file descriptor, or via a duplicate of the file descriptor "
7519 "created by B<fork>(2), B<dup>(2), B<fcntl>(2)  B<F_DUPFD>, and so on) are "
7520 "always compatible: if a new lock is placed on an already locked region, then "
7521 "the existing lock is converted to the new lock type.  (Such conversions may "
7522 "result in splitting, shrinking, or coalescing with an existing lock as "
7523 "discussed above.)"
7524 msgstr ""
7525 "同じオープンファイル記述経由 (同じファイルディスクリプター経由や B<fork>(2), "
7526 "B<dup>(2), B<fcntl>(2) B<F_DUPFD> などで作成されたファイルディスクリプターの"
7527 "複製経由) で適用されたオープンファイル記述ロックは常に互換性がある。 つま"
7528 "り、 すでにロックされている領域に対して新しいロックが適用された場合、 既存の"
7529 "ロックは新しいロック種別に変換される。 (上記で説明した通り、 このような変換の"
7530 "結果、 既存のロックの分割、 縮小、 結合が行われることがある。)"
7531
7532 #. type: Plain text
7533 #: build/C/man2/fcntl.2:524
7534 msgid ""
7535 "On the other hand, open file description locks may conflict with each other "
7536 "when they are acquired via different open file descriptions.  Thus, the "
7537 "threads in a multithreaded program can use open file description locks to "
7538 "synchronize access to a file region by having each thread perform its own "
7539 "B<open>(2)  on the file and applying locks via the resulting file descriptor."
7540 msgstr ""
7541 "一方、 異なるオープンファイル記述経由で獲得されると、 オープンファイル記述"
7542 "ロックは互いに競合する。 したがって、 マルチスレッドプログラムのスレッドは、 "
7543 "各スレッドがそれぞれ自分で B<open>(2) を実行し、 得られたファイルディスクリプ"
7544 "ター経由でロックを適用することで、 オープンファイル記述ロックを使って一つの"
7545 "ファイル領域えのアクセスを同期させることができる。"
7546
7547 #. type: Plain text
7548 #: build/C/man2/fcntl.2:535
7549 msgid ""
7550 "As with traditional advisory locks, the third argument to B<fcntl>(), "
7551 "I<lock>, is a pointer to an I<flock> structure.  By contrast with "
7552 "traditional record locks, the I<l_pid> field of that structure must be set "
7553 "to zero when using the commands described below."
7554 msgstr ""
7555 "昔からあるレコードロックの場合と同様、 B<fcntl>() の第 3 引き数 I<lock> は "
7556 "I<flock> 構造体へのポインターである。 昔からあるレコードロックと違い、 下記で"
7557 "説明するコマンドを使う際には、 この構造体のフィールド I<l_pid> に 0 を設定し"
7558 "なければならない。"
7559
7560 #. type: Plain text
7561 #: build/C/man2/fcntl.2:538
7562 msgid ""
7563 "The commands for working with open file description locks are analogous to "
7564 "those used with traditional locks:"
7565 msgstr ""
7566 "オープンファイル記述ロックで使用できるコマンドは、 昔からあるロックのコマンド"
7567 "と同じである。"
7568
7569 #. type: TP
7570 #: build/C/man2/fcntl.2:538
7571 #, no-wrap
7572 msgid "B<F_OFD_SETLK> (I<struct flock *>)"
7573 msgstr "B<F_OFD_SETLK> (I<struct flock *>)"
7574
7575 #. type: Plain text
7576 #: build/C/man2/fcntl.2:559
7577 msgid ""
7578 "Acquire an open file description lock (when I<l_type> is B<F_RDLCK> or "
7579 "B<F_WRLCK>)  or release an open file description lock (when I<l_type> is "
7580 "B<F_UNLCK>)  on the bytes specified by the I<l_whence>, I<l_start>, and "
7581 "I<l_len> fields of I<lock>.  If a conflicting lock is held by another "
7582 "process, this call returns -1 and sets I<errno> to B<EAGAIN>."
7583 msgstr ""
7584 "(I<l_type> が B<F_RDLCK> か B<F_WRLCK> の場合は) オープンファイル記述のロック"
7585 "の獲得を、 (B<F_UNLCK> の場合は) オープンファイル記述のロックの解放を、 "
7586 "I<flock> 構造体のフィールド I<l_whence>, I<l_start>, I<l_len> で指定された範"
7587 "囲のバイトに対して行う。 指定されたロックが他のプロセスが設定しているロックと"
7588 "衝突する場合は、 -1 を返し、 I<errno> に B<EAGAIN> を設定する。"
7589
7590 #. type: TP
7591 #: build/C/man2/fcntl.2:559
7592 #, no-wrap
7593 msgid "B<F_OFD_SETLKW> (I<struct flock *>)"
7594 msgstr "B<F_OFD_SETLKW> (I<struct flock *>)"
7595
7596 #. type: Plain text
7597 #: build/C/man2/fcntl.2:573
7598 msgid ""
7599 "As for B<F_OFD_SETLK>, but if a conflicting lock is held on the file, then "
7600 "wait for that lock to be released.  If a signal is caught while waiting, "
7601 "then the call is interrupted and (after the signal handler has returned) "
7602 "returns immediately (with return value -1 and I<errno> set to B<EINTR>; see "
7603 "B<signal>(7))."
7604 msgstr ""
7605 "B<F_OFD_SETLK> と同様だが、こちらではそのファイルに対して衝突するロックが 適"
7606 "用されていた場合に、そのロックが解放されるのを待つ点が異なる。 待っている間に"
7607 "シグナルを受けた場合は、システムコールは中断され、 (シグナルハンドラーが戻っ"
7608 "た直後に) 返り値 -1 を返す (また I<errno> に B<EINTR> が設定される; "
7609 "B<signal>(7)  参照)。"
7610
7611 #. type: TP
7612 #: build/C/man2/fcntl.2:573
7613 #, no-wrap
7614 msgid "B<F_OFD_GETLK> (I<struct flock *>)"
7615 msgstr "B<F_OFD_GETLK> (I<struct flock *>)"
7616
7617 #. type: Plain text
7618 #: build/C/man2/fcntl.2:592
7619 msgid ""
7620 "On input to this call, I<lock> describes an open file description lock we "
7621 "would like to place on the file.  If the lock could be placed, B<fcntl>()  "
7622 "does not actually place it, but returns B<F_UNLCK> in the I<l_type> field of "
7623 "I<lock> and leaves the other fields of the structure unchanged.  If one or "
7624 "more incompatible locks would prevent this lock being placed, then details "
7625 "about one of these locks are returned via I<lock>, as described above for "
7626 "B<F_GETLK>."
7627 msgstr ""
7628 "このコールの呼び出し時には、 I<lock> にはそのファイルに適用しようとするロック"
7629 "に関する情報が入っている。 ロックを適用できる場合には、 B<fcntl>()  は実際に"
7630 "はロックを行わず、 構造体 I<lock> の I<l_type> フィールドで B<F_UNLCK> を返"
7631 "し、 他のフィールドは変更しない。 違う種別のロックが (一つもしくは複数) 適用"
7632 "されていてロックを適用できないような場合には、 原因となったロックの一つについ"
7633 "ての詳細が I<lock> で返される。 詳細は上記の B<F_GETLK> を参照。"
7634
7635 #.  commit 57b65325fe34ec4c917bc4e555144b4a94d9e1f7
7636 #. type: Plain text
7637 #: build/C/man2/fcntl.2:599
7638 msgid ""
7639 "In the current implementation, no deadlock detection is performed for open "
7640 "file description locks.  (This contrasts with process-associated record "
7641 "locks, for which the kernel does perform deadlock detection.)"
7642 msgstr ""
7643 "現在の実装では、 オープンファイル記述ロクではデッドロックの検出は行われな"
7644 "い。 (これがプロセスと関連付けられるレコードロックとは異なる点である。 プロセ"
7645 "スと関連付けられるレコードロックではカーネルはデッドロックの検出を行う。)"
7646
7647 #. type: SS
7648 #: build/C/man2/fcntl.2:599 build/C/man2/fcntl.2:1894
7649 #, no-wrap
7650 msgid "Mandatory locking"
7651 msgstr "強制ロック (mandatory locking)"
7652
7653 #. type: Plain text
7654 #: build/C/man2/fcntl.2:603
7655 msgid ""
7656 "I<Warning>: the Linux implementation of mandatory locking is unreliable.  "
7657 "See BUGS below."
7658 msgstr ""
7659 "I<警告>: Linux の強制ロックの実装は信頼性に欠けるものである。 下記の「バグ」"
7660 "の節を参照のこと。"
7661
7662 #. type: Plain text
7663 #: build/C/man2/fcntl.2:608
7664 msgid ""
7665 "By default, both traditional (process-associated) and open file description "
7666 "record locks are advisory.  Advisory locks are not enforced and are useful "
7667 "only between cooperating processes."
7668 msgstr ""
7669 "デフォルトでは、 昔からある (プロセスに関連付けられる) レコードロックも、 "
7670 "オープンファイル記述のろコードロックも、 アドバイザリーロックである。 アドバ"
7671 "イザリーロックに強制力はなく、協調して動作するプロセス間でのみ有効である。"
7672
7673 #. type: Plain text
7674 #: build/C/man2/fcntl.2:628
7675 msgid ""
7676 "Both lock types can also be mandatory.  Mandatory locks are enforced for all "
7677 "processes.  If a process tries to perform an incompatible access (e.g., "
7678 "B<read>(2)  or B<write>(2))  on a file region that has an incompatible "
7679 "mandatory lock, then the result depends upon whether the B<O_NONBLOCK> flag "
7680 "is enabled for its open file description.  If the B<O_NONBLOCK> flag is not "
7681 "enabled, then the system call is blocked until the lock is removed or "
7682 "converted to a mode that is compatible with the access.  If the "
7683 "B<O_NONBLOCK> flag is enabled, then the system call fails with the error "
7684 "B<EAGAIN>."
7685 msgstr ""
7686 "両方のタイプのロックも強制ロックにすることもできる。 強制ロックは全てのプロセ"
7687 "スに対して効果がある。 あるプロセスが互換性のない強制ロックが適用されたファイ"
7688 "ル領域に対して (B<read>(2)  や B<write>(2)  により) 互換性のないアクセスを実"
7689 "行しようとした場合、 アクセスの結果は そのファイルのオープンファイル記述で "
7690 "B<O_NONBLOCK> フラグが有効になっているかにより決まる。 B<O_NONBLOCK> フラグが"
7691 "有効になっていないときは、ロックが削除されるか、 ロックがアクセスと互換性のあ"
7692 "るモードに変換されるまで、 システムコールは停止 (block) される。 "
7693 "B<O_NONBLOCK> フラグが有効になっているときは、システムコールはエラー "
7694 "B<EAGAIN> で失敗する。"
7695
7696 #. type: Plain text
7697 #: build/C/man2/fcntl.2:645
7698 msgid ""
7699 "To make use of mandatory locks, mandatory locking must be enabled both on "
7700 "the filesystem that contains the file to be locked, and on the file itself.  "
7701 "Mandatory locking is enabled on a filesystem using the \"-o mand\" option to "
7702 "B<mount>(8), or the B<MS_MANDLOCK> flag for B<mount>(2).  Mandatory locking "
7703 "is enabled on a file by disabling group execute permission on the file and "
7704 "enabling the set-group-ID permission bit (see B<chmod>(1)  and B<chmod>(2))."
7705 msgstr ""
7706 "強制ロックを使用するためには、ロック対象のファイルが含まれるファイルシステム "
7707 "と、ロック対象のファイル自身の両方について、強制ロックが有効になっていなけれ "
7708 "ばならない。ファイルシステムについて強制ロックを有効にするには、 "
7709 "B<mount>(8)  に \"-o mand\" オプションを渡すか、 B<mount>(2)  に "
7710 "B<MS_MANDLOCK> フラグを指定する。ファイルについて強制ロックを有効にするに"
7711 "は、 そのファイルのグループ実行許可 (group execute permission) を無効とし、 "
7712 "かつ set-group-ID 許可ビットを有効にする (B<chmod>(1)  と B<chmod>(2)  を参"
7713 "照)。"
7714
7715 #. type: Plain text
7716 #: build/C/man2/fcntl.2:649
7717 msgid ""
7718 "Mandatory locking is not specified by POSIX.  Some other systems also "
7719 "support mandatory locking, although the details of how to enable it vary "
7720 "across systems."
7721 msgstr ""
7722 "強制ロックは POSIX では規定されていない。 他のいくつかのシステムでも強制ロッ"
7723 "クはサポートされているが、 強制ロックをどのようにして有効にするかの詳細はシス"
7724 "テムより異なる。"
7725
7726 #. type: SS
7727 #: build/C/man2/fcntl.2:649
7728 #, no-wrap
7729 msgid "Managing signals"
7730 msgstr "シグナルの管理"
7731
7732 #. type: Plain text
7733 #: build/C/man2/fcntl.2:658
7734 msgid ""
7735 "B<F_GETOWN>, B<F_SETOWN>, B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG> and "
7736 "B<F_SETSIG> are used to manage I/O availability signals:"
7737 msgstr ""
7738 "B<F_GETOWN>, B<F_SETOWN>, B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, "
7739 "B<F_SETSIG> は、I/O が利用可能になったことを示すシグナルを管理するために使用"
7740 "される。"
7741
7742 #. type: TP
7743 #: build/C/man2/fcntl.2:658
7744 #, no-wrap
7745 msgid "B<F_GETOWN> (I<void>)"
7746 msgstr "B<F_GETOWN> (I<void>)"
7747
7748 #. type: Plain text
7749 #: build/C/man2/fcntl.2:671
7750 msgid ""
7751 "Return (as the function result)  the process ID or process group currently "
7752 "receiving B<SIGIO> and B<SIGURG> signals for events on file descriptor "
7753 "I<fd>.  Process IDs are returned as positive values; process group IDs are "
7754 "returned as negative values (but see BUGS below).  I<arg> is ignored."
7755 msgstr ""
7756 "ファイルディスクリプター I<fd> のイベントに対するシグナル B<SIGIO> および "
7757 "B<SIGURG> を受けているプロセスのプロセスID かプロセスグループを (関数の結果と"
7758 "して) 返す。 プロセスID は正の値として返される。 プロセスグループID は負の値"
7759 "として返される (下記のバグの章を参照)。 I<arg> は無視される。"
7760
7761 #. type: TP
7762 #: build/C/man2/fcntl.2:671
7763 #, no-wrap
7764 msgid "B<F_SETOWN> (I<int>)"
7765 msgstr "B<F_SETOWN> (I<int>)"
7766
7767 #. type: Plain text
7768 #: build/C/man2/fcntl.2:688
7769 msgid ""
7770 "Set the process ID or process group ID that will receive B<SIGIO> and "
7771 "B<SIGURG> signals for events on file descriptor I<fd> to the ID given in "
7772 "I<arg>.  A process ID is specified as a positive value; a process group ID "
7773 "is specified as a negative value.  Most commonly, the calling process "
7774 "specifies itself as the owner (that is, I<arg> is specified as B<getpid>(2))."
7775 msgstr ""
7776 "ファイルディスクリプター I<fd> のイベント発生を知らせるシグナル B<SIGIO> や "
7777 "B<SIGURG> を受けるプロセスの プロセス ID またはプロセスグループID を I<arg> "
7778 "で指定された ID に設定する。 プロセスID は正の値として指定し、 プロセスグルー"
7779 "プID は負の値として指定する。 ほとんどの場合、呼び出し元プロセスは所有者とし"
7780 "て自分自身を指定する (つまり I<arg> に B<getpid>(2)  を指定する)。"
7781
7782 #.  From glibc.info:
7783 #. type: Plain text
7784 #: build/C/man2/fcntl.2:705
7785 msgid ""
7786 "If you set the B<O_ASYNC> status flag on a file descriptor by using the "
7787 "B<F_SETFL> command of B<fcntl>(), a B<SIGIO> signal is sent whenever input "
7788 "or output becomes possible on that file descriptor.  B<F_SETSIG> can be used "
7789 "to obtain delivery of a signal other than B<SIGIO>.  If this permission "
7790 "check fails, then the signal is silently discarded."
7791 msgstr ""
7792 "B<fcntl>()  の B<F_SETFL> コマンドを使用してファイルディスクリプターに "
7793 "B<O_ASYNC> 状態フラグを設定した場合には、そのファイルディスクリプターへの 入"
7794 "出力が可能になる度に B<SIGIO> シグナルが送られる。 B<F_SETSIG> は B<SIGIO> 以"
7795 "外の別のシグナルの配送を受けられるように するのにも使うことができる。 許可 "
7796 "(permission) のチェックで失敗した場合には、 シグナルは黙って捨てられる。"
7797
7798 #. type: Plain text
7799 #: build/C/man2/fcntl.2:713
7800 msgid ""
7801 "Sending a signal to the owner process (group) specified by B<F_SETOWN> is "
7802 "subject to the same permissions checks as are described for B<kill>(2), "
7803 "where the sending process is the one that employs B<F_SETOWN> (but see BUGS "
7804 "below)."
7805 msgstr ""
7806 "B<F_SETOWN> により指定された所有者のプロセス (またはプロセスグループ) に シグ"
7807 "ナルを送る際には、 B<kill>(2)  に書かれているのと同じ許可のチェックが行われ"
7808 "る。 このとき、シグナルを送信するプロセスは B<F_SETOWN> を使ったプロセスであ"
7809 "る (但し、下記の「バグ」の章を参照のこと)。"
7810
7811 #.  The following appears to be rubbish.  It doesn't seem to
7812 #.  be true according to the kernel source, and I can write
7813 #.  a program that gets a terminal-generated SIGIO even though
7814 #.  it is not the foreground process group of the terminal.
7815 #.  -- MTK, 8 Apr 05
7816 #.  If the file descriptor
7817 #.  .I fd
7818 #.  refers to a terminal device, then SIGIO
7819 #.  signals are sent to the foreground process group of the terminal.
7820 #. type: Plain text
7821 #: build/C/man2/fcntl.2:737
7822 msgid ""
7823 "If the file descriptor I<fd> refers to a socket, B<F_SETOWN> also selects "
7824 "the recipient of B<SIGURG> signals that are delivered when out-of-band data "
7825 "arrives on that socket.  (B<SIGURG> is sent in any situation where "
7826 "B<select>(2)  would report the socket as having an \"exceptional condition"
7827 "\".)"
7828 msgstr ""
7829 "ファイルディスクリプターがソケットを参照している場合は、 B<F_SETOWN> を使用し"
7830 "て、ソケットに帯域外 (out-of-band) データが届いた時に B<SIGURG> シグナルを配"
7831 "送する相手を選択することもできる (B<SIGURG> が送られた場合には B<select>(2)  "
7832 "がソケットが「特別な状態」にあると報告することだろう)。"
7833
7834 #. type: Plain text
7835 #: build/C/man2/fcntl.2:740
7836 msgid ""
7837 "The following was true in 2.6.x kernels up to and including kernel 2.6.11:"
7838 msgstr "バージョン 2.6.11 以前の 2.6.x カーネルでは、以下に示す動作であった。"
7839
7840 #.  The relevant place in the (2.6) kernel source is the
7841 #.  'switch' in fs/fcntl.c::send_sigio_to_task() -- MTK, Apr 2005
7842 #.  send_sigurg()/send_sigurg_to_task() bypasses
7843 #.  kill_fasync()/send_sigio()/send_sigio_to_task()
7844 #.  to directly call send_group_sig_info()
7845 #.      -- MTK, Apr 2005 (kernel 2.6.11)
7846 #. type: Plain text
7847 #: build/C/man2/fcntl.2:780
7848 msgid ""
7849 "If a nonzero value is given to B<F_SETSIG> in a multithreaded process "
7850 "running with a threading library that supports thread groups (e.g., NPTL), "
7851 "then a positive value given to B<F_SETOWN> has a different meaning: instead "
7852 "of being a process ID identifying a whole process, it is a thread ID "
7853 "identifying a specific thread within a process.  Consequently, it may be "
7854 "necessary to pass B<F_SETOWN> the result of B<gettid>(2)  instead of "
7855 "B<getpid>(2)  to get sensible results when B<F_SETSIG> is used.  (In current "
7856 "Linux threading implementations, a main thread's thread ID is the same as "
7857 "its process ID.  This means that a single-threaded program can equally use "
7858 "B<gettid>(2)  or B<getpid>(2)  in this scenario.)  Note, however, that the "
7859 "statements in this paragraph do not apply to the B<SIGURG> signal generated "
7860 "for out-of-band data on a socket: this signal is always sent to either a "
7861 "process or a process group, depending on the value given to B<F_SETOWN>."
7862 msgstr ""
7863 "スレッドグループをサポートしているスレッドライブラリ (例えば NPTL) を 使って"
7864 "動作しているマルチスレッドプロセスで B<F_SETSIG> に 0 以外の値を指定した場"
7865 "合、 B<F_SETOWN> に正の値を渡すと、その意味が違ってくる: プロセス全体を示すプ"
7866 "ロセスID ではなく、プロセス内の特定の スレッドを示すスレッドID と解釈され"
7867 "る。 したがって、 B<F_SETSIG> を使う場合には、きちんと結果を受け取るには、 "
7868 "B<F_SETOWN> に渡す値を B<getpid>(2)  ではなく B<gettid>(2)  の返り値にする必"
7869 "要があるだろう。 (現状の Linux スレッド実装では、メインスレッドのスレッドID "
7870 "は そのスレッドのプロセスID と同じである。つまり、 シグナルスレッドのプログラ"
7871 "ムではこの場合 B<gettid>(2)  と B<getpid>(2)  は全く同じように使うことができ"
7872 "る。)  ただし、注意すべき点として、この段落で述べたことは、 ソケットの帯域外"
7873 "データが届いたときに生成される B<SIGURG> シグナルにはあてはまらない。 このシ"
7874 "グナルは常にプロセスかプロセスグループに送られ、 送信先は B<F_SETOWN> に渡さ"
7875 "れた値にしたがって決められる。"
7876
7877 #. type: Plain text
7878 #: build/C/man2/fcntl.2:791
7879 msgid ""
7880 "The above behavior was accidentally dropped in Linux 2.6.12, and won't be "
7881 "restored.  From Linux 2.6.32 onward, use B<F_SETOWN_EX> to target B<SIGIO> "
7882 "and B<SIGURG> signals at a particular thread."
7883 msgstr ""
7884 "上記の動作は、Linux 2.6.12 で図らずも削除され、 元に戻されない予定である。 "
7885 "Linux 2.6.32 以降で、特定のスレッド宛にシグナル B<SIGIO> と B<SIGURG> を送る"
7886 "には B<F_SETOWN_EX> を使うこと。"
7887
7888 #. type: TP
7889 #: build/C/man2/fcntl.2:791
7890 #, no-wrap
7891 msgid "B<F_GETOWN_EX> (struct f_owner_ex *) (since Linux 2.6.32)"
7892 msgstr "B<F_GETOWN_EX> (struct f_owner_ex *) (Linux 2.6.32 以降)"
7893
7894 #. type: Plain text
7895 #: build/C/man2/fcntl.2:800
7896 msgid ""
7897 "Return the current file descriptor owner settings as defined by a previous "
7898 "B<F_SETOWN_EX> operation.  The information is returned in the structure "
7899 "pointed to by I<arg>, which has the following form:"
7900 msgstr ""
7901 "直前の B<F_SETOWN_EX> 操作で定義された現在のファイルディスクリプターの所有者"
7902 "設定 を返す。情報は I<arg> が指す構造体に格納されて返される。構造体は以下の通"
7903 "りである。"
7904
7905 #. type: Plain text
7906 #: build/C/man2/fcntl.2:807
7907 #, no-wrap
7908 msgid ""
7909 "struct f_owner_ex {\n"
7910 "    int   type;\n"
7911 "    pid_t pid;\n"
7912 "};\n"
7913 msgstr ""
7914 "struct f_owner_ex {\n"
7915 "    int   type;\n"
7916 "    pid_t pid;\n"
7917 "};\n"
7918
7919 #. type: Plain text
7920 #: build/C/man2/fcntl.2:824
7921 msgid ""
7922 "The I<type> field will have one of the values B<F_OWNER_TID>, "
7923 "B<F_OWNER_PID>, or B<F_OWNER_PGRP>.  The I<pid> field is a positive integer "
7924 "representing a thread ID, process ID, or process group ID.  See "
7925 "B<F_SETOWN_EX> for more details."
7926 msgstr ""
7927 "I<type> フィールドは、 B<F_OWNER_TID ,> B<F_OWNER_PID ,> B<F_OWNER_PGRP> のい"
7928 "ずれか一つの値となる。 I<pid> フィールドは、スレッド ID、プロセス ID、プロセ"
7929 "スグループ ID を 表す正の整数である。詳細は B<F_SETOWN_EX> を参照。"
7930
7931 #. type: TP
7932 #: build/C/man2/fcntl.2:824
7933 #, no-wrap
7934 msgid "B<F_SETOWN_EX> (struct f_owner_ex *) (since Linux 2.6.32)"
7935 msgstr "B<F_SETOWN_EX> (struct f_owner_ex *) (Linux 2.6.32 以降)"
7936
7937 #. type: Plain text
7938 #: build/C/man2/fcntl.2:840
7939 msgid ""
7940 "This operation performs a similar task to B<F_SETOWN>.  It allows the caller "
7941 "to direct I/O availability signals to a specific thread, process, or process "
7942 "group.  The caller specifies the target of signals via I<arg>, which is a "
7943 "pointer to a I<f_owner_ex> structure.  The I<type> field has one of the "
7944 "following values, which define how I<pid> is interpreted:"
7945 msgstr ""
7946 "この操作は B<F_SETOWN> と同様の処理を行う。 この操作を使うと、I/O が利用可能"
7947 "になったことを示すシグナルを、 特定のスレッド、プロセス、プロセスグループに送"
7948 "ることができる ようになる。 呼び出し元は、 I<arg> 経由でシグナルの配送先を指"
7949 "定する。 I<arg> は I<f_owner_ex> 構造体へのポインターである。 I<type> フィー"
7950 "ルドは以下のいずれかの値を取り、 この値により I<pid> がどのように解釈されるか"
7951 "が規定される。"
7952
7953 #. type: TP
7954 #: build/C/man2/fcntl.2:841
7955 #, no-wrap
7956 msgid "B<F_OWNER_TID>"
7957 msgstr "B<F_OWNER_TID>"
7958
7959 #. type: Plain text
7960 #: build/C/man2/fcntl.2:850
7961 msgid ""
7962 "Send the signal to the thread whose thread ID (the value returned by a call "
7963 "to B<clone>(2)  or B<gettid>(2))  is specified in I<pid>."
7964 msgstr ""
7965 "スレッド ID が I<pid> で指定された値のスレッドにそのシグナルを送る (スレッド "
7966 "ID は B<clone>(2)  や B<gettid>(2)  の呼び出しで返される値である)。"
7967
7968 #. type: TP
7969 #: build/C/man2/fcntl.2:850
7970 #, no-wrap
7971 msgid "B<F_OWNER_PID>"
7972 msgstr "B<F_OWNER_PID>"
7973
7974 #. type: Plain text
7975 #: build/C/man2/fcntl.2:855
7976 msgid "Send the signal to the process whose ID is specified in I<pid>."
7977 msgstr "ID が I<pid> で指定された値のプロセスにそのシグナルを送る。"
7978
7979 #. type: TP
7980 #: build/C/man2/fcntl.2:855
7981 #, no-wrap
7982 msgid "B<F_OWNER_PGRP>"
7983 msgstr "B<F_OWNER_PGRP>"
7984
7985 #. type: Plain text
7986 #: build/C/man2/fcntl.2:863
7987 msgid ""
7988 "Send the signal to the process group whose ID is specified in I<pid>.  (Note "
7989 "that, unlike with B<F_SETOWN>, a process group ID is specified as a positive "
7990 "value here.)"
7991 msgstr ""
7992 "ID が I<pid> で指定された値のプロセスグループにそのシグナルを送る。 "
7993 "(B<F_SETOWN> と異なり、プロセスグループ ID には正の値を指定する点に注意するこ"
7994 "と。)"
7995
7996 #. type: TP
7997 #: build/C/man2/fcntl.2:864
7998 #, no-wrap
7999 msgid "B<F_GETSIG> (I<void>)"
8000 msgstr "B<F_GETSIG> (I<void>)"
8001
8002 #. type: Plain text
8003 #: build/C/man2/fcntl.2:879
8004 msgid ""
8005 "Return (as the function result)  the signal sent when input or output "
8006 "becomes possible.  A value of zero means B<SIGIO> is sent.  Any other value "
8007 "(including B<SIGIO>)  is the signal sent instead, and in this case "
8008 "additional info is available to the signal handler if installed with "
8009 "B<SA_SIGINFO>.  I<arg> is ignored."
8010 msgstr ""
8011 "入力や出力が可能になった場合に送るシグナルを (関数の結果として) 返す。 値ゼロ"
8012 "は B<SIGIO> を送ることを意味する。 (B<SIGIO> を含む) 他の値はいずれも、 "
8013 "B<SIGIO> の代わりに送るシグナル番号を表す。 後者の場合、シグナルハンドラーを "
8014 "B<SA_SIGINFO> フラグ付きで設定すれば、ハンドラーで追加の情報を得ることができ"
8015 "る。 I<arg> は無視される。"
8016
8017 #. type: TP
8018 #: build/C/man2/fcntl.2:879
8019 #, no-wrap
8020 msgid "B<F_SETSIG> (I<int>)"
8021 msgstr "B<F_SETSIG> (I<int>)"
8022
8023 #.  The following was true only up until 2.6.11:
8024 #.  Additionally, passing a nonzero value to
8025 #.  .B F_SETSIG
8026 #.  changes the signal recipient from a whole process to a specific thread
8027 #.  within a process.
8028 #.  See the description of
8029 #.  .B F_SETOWN
8030 #.  for more details.
8031 #. type: Plain text
8032 #: build/C/man2/fcntl.2:902
8033 msgid ""
8034 "Set the signal sent when input or output becomes possible to the value given "
8035 "in I<arg>.  A value of zero means to send the default B<SIGIO> signal.  Any "
8036 "other value (including B<SIGIO>)  is the signal to send instead, and in this "
8037 "case additional info is available to the signal handler if installed with "
8038 "B<SA_SIGINFO>."
8039 msgstr ""
8040 "入力や出力が可能になった場合に送るシグナルを I<arg> に指定された値に設定す"
8041 "る。 値ゼロは B<SIGIO> を送ることを意味する。 (B<SIGIO> を含む) 他の値はいず"
8042 "れも、 B<SIGIO> の代わりに送るシグナル番号を表す。 後者の場合、シグナルハンド"
8043 "ラーを B<SA_SIGINFO> フラグ付きで設定すれば、 ハンドラーで追加の情報を得るこ"
8044 "とができる。"
8045
8046 #. type: Plain text
8047 #: build/C/man2/fcntl.2:930
8048 msgid ""
8049 "By using B<F_SETSIG> with a nonzero value, and setting B<SA_SIGINFO> for the "
8050 "signal handler (see B<sigaction>(2)), extra information about I/O events is "
8051 "passed to the handler in a I<siginfo_t> structure.  If the I<si_code> field "
8052 "indicates the source is B<SI_SIGIO>, the I<si_fd> field gives the file "
8053 "descriptor associated with the event.  Otherwise, there is no indication "
8054 "which file descriptors are pending, and you should use the usual mechanisms "
8055 "(B<select>(2), B<poll>(2), B<read>(2)  with B<O_NONBLOCK> set etc.) to "
8056 "determine which file descriptors are available for I/O."
8057 msgstr ""
8058 "B<F_SETSIG> にゼロ以外の値を設定し、シグナルハンドラーに B<SA_SIGINFO> フラグ"
8059 "を設定すると、 (B<sigaction>(2)  を参照) I/O イベントに関する追加の情報が "
8060 "I<siginfo_t> 構造体でシグナルハンドラーへ渡される。 I<si_code> フィールドが示"
8061 "すシグナルの原因が B<SI_SIGIO> である場合、 I<si_fd> フィールドにはイベントに"
8062 "対応するファイルディスクリプターが入っている。 それ以外の場合は、どのファイル"
8063 "ディスクリプターが利用可能かを示す情報は ないので、どのファイルディスクリプ"
8064 "ターで I/O が可能かを判断するためには 通常の機構 (B<select>(2), B<poll>(2), "
8065 "B<O_NONBLOCK> を設定した B<read>(2)  など) を使用しなければならない。"
8066
8067 #. type: Plain text
8068 #: build/C/man2/fcntl.2:939
8069 msgid ""
8070 "By selecting a real time signal (value E<gt>= B<SIGRTMIN>), multiple I/O "
8071 "events may be queued using the same signal numbers.  (Queuing is dependent "
8072 "on available memory).  Extra information is available if B<SA_SIGINFO> is "
8073 "set for the signal handler, as above."
8074 msgstr ""
8075 "リアルタイムシグナル (値が B<SIGRTMIN> 以上) を選択している場合は、 同じシグ"
8076 "ナル番号を持つ複数の I/O イベントがキューに入ることがある (キューに入れるかど"
8077 "うかは利用可能なメモリーに依存している)。 上記と同様、 B<SA_SIGINFO> が設定さ"
8078 "れている場合、シグナルハンドラーのための追加の情報が得られる。"
8079
8080 #.  See fs/fcntl.c::send_sigio_to_task() (2.4/2.6) sources -- MTK, Apr 05
8081 #. type: Plain text
8082 #: build/C/man2/fcntl.2:952
8083 msgid ""
8084 "Note that Linux imposes a limit on the number of real-time signals that may "
8085 "be queued to a process (see B<getrlimit>(2)  and B<signal>(7))  and if this "
8086 "limit is reached, then the kernel reverts to delivering B<SIGIO>, and this "
8087 "signal is delivered to the entire process rather than to a specific thread."
8088 msgstr ""
8089 "以下の点に注意すること。 Linux では一つのプロセスに対してキューに入れられるリ"
8090 "アルタイム シグナルの数に上限が設けられており (B<getrlimit>(2)  と "
8091 "B<signal>(7)  を参照)、この上限に達するとカーネルは B<SIGIO> シグナルを配送す"
8092 "る。この B<SIGIO> シグナルは、指定されたスレッドではなくプロセス全体に送られ"
8093 "る。"
8094
8095 #. type: Plain text
8096 #: build/C/man2/fcntl.2:959
8097 msgid ""
8098 "Using these mechanisms, a program can implement fully asynchronous I/O "
8099 "without using B<select>(2)  or B<poll>(2)  most of the time."
8100 msgstr ""
8101 "これらの機構を使用することで、ほとんどの場合で B<select>(2)  や B<poll>(2)  "
8102 "を使用せずに完全な非同期 I/O を実装することができる。"
8103
8104 #. type: Plain text
8105 #: build/C/man2/fcntl.2:983
8106 msgid ""
8107 "The use of B<O_ASYNC> is specific to BSD and Linux.  The only use of "
8108 "B<F_GETOWN> and B<F_SETOWN> specified in POSIX.1 is in conjunction with the "
8109 "use of the B<SIGURG> signal on sockets.  (POSIX does not specify the "
8110 "B<SIGIO> signal.)  B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, and "
8111 "B<F_SETSIG> are Linux-specific.  POSIX has asynchronous I/O and the "
8112 "I<aio_sigevent> structure to achieve similar things; these are also "
8113 "available in Linux as part of the GNU C Library (Glibc)."
8114 msgstr ""
8115 "B<O_ASYNC> の使用方法は BSD と Linux に特有である。 POSIX.1 で規定されている "
8116 "B<F_GETOWN> と B<F_SETOWN> の使用方法は、ソケットに対する B<SIGURG> シグナル"
8117 "との組み合わせだけである (POSIX は B<SIGIO> シグナルは規定していない)。 "
8118 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, B<F_SETSIG> は Linux 固有であ"
8119 "る。POSIX には、同様のことを行うために、非同期 I/O と I<aio_sigevent> 構造体"
8120 "がある。Linux では、GNU C ライブラリ (Glibc) の一部として これらも利用可能で"
8121 "ある。"
8122
8123 #. type: SS
8124 #: build/C/man2/fcntl.2:983
8125 #, no-wrap
8126 msgid "Leases"
8127 msgstr "リース (leases)"
8128
8129 #. type: Plain text
8130 #: build/C/man2/fcntl.2:998
8131 msgid ""
8132 "B<F_SETLEASE> and B<F_GETLEASE> (Linux 2.4 onward) are used (respectively) "
8133 "to establish a new lease, and retrieve the current lease, on the open file "
8134 "description referred to by the file descriptor I<fd>.  A file lease provides "
8135 "a mechanism whereby the process holding the lease (the \"lease holder\") is "
8136 "notified (via delivery of a signal)  when a process (the \"lease breaker\") "
8137 "tries to B<open>(2)  or B<truncate>(2)  the file referred to by that file "
8138 "descriptor."
8139 msgstr ""
8140 "(Linix 2.4 以降で利用可能)  B<F_SETLEASE> は、 I<fd> が参照するオープンファイ"
8141 "ル記述に対して新しいリースを設定するのに使用される。 B<F_GETLEASE> は、 "
8142 "I<fd> が参照するオープンファイル記述に対して設定されている 現在のリースを取得"
8143 "するのに使用される。 ファイルのリースにより、 あるプロセス (\"lease breaker"
8144 "\") がそのファイルディスクリプターが参照 しているファイルに対して "
8145 "B<open>(2)  や B<truncate>(2)  を行おうとした際に、リースを保持しているプロセ"
8146 "ス (\"lease holder\") へ (シグナルの配送による) 通知が行われるという機構が提"
8147 "供される。"
8148
8149 #. type: TP
8150 #: build/C/man2/fcntl.2:998
8151 #, no-wrap
8152 msgid "B<F_SETLEASE> (I<int>)"
8153 msgstr "B<F_SETLEASE> (I<int>)"
8154
8155 #. type: Plain text
8156 #: build/C/man2/fcntl.2:1003
8157 msgid ""
8158 "Set or remove a file lease according to which of the following values is "
8159 "specified in the integer I<arg>:"
8160 msgstr ""
8161 "I<arg> の内容に基いてファイルのリースの設定、削除を行う。整数 I<arg> には以下"
8162 "の値が指定できる:"
8163
8164 #. type: TP
8165 #: build/C/man2/fcntl.2:1004
8166 #, no-wrap
8167 msgid "B<F_RDLCK>"
8168 msgstr "B<F_RDLCK>"
8169
8170 #.  The following became true in kernel 2.6.10:
8171 #.  See the man-pages-2.09 Changelog for further info.
8172 #. type: Plain text
8173 #: build/C/man2/fcntl.2:1013
8174 msgid ""
8175 "Take out a read lease.  This will cause the calling process to be notified "
8176 "when the file is opened for writing or is truncated.  A read lease can be "
8177 "placed only on a file descriptor that is opened read-only."
8178 msgstr ""
8179 "読み出しリースを取得する。これにより、 そのファイルが書き込み用にオープンされ"
8180 "たり、ファイルが切り詰められた場合に、 呼び出し元のプロセスに通知が行われるよ"
8181 "うになる。 読み出しリースを設定できるのは、読み出し専用でオープンされている "
8182 "ファイルディスクリプターに対してのみである。"
8183
8184 #. type: TP
8185 #: build/C/man2/fcntl.2:1013
8186 #, no-wrap
8187 msgid "B<F_WRLCK>"
8188 msgstr "B<F_WRLCK>"
8189
8190 #. type: Plain text
8191 #: build/C/man2/fcntl.2:1020
8192 msgid ""
8193 "Take out a write lease.  This will cause the caller to be notified when the "
8194 "file is opened for reading or writing or is truncated.  A write lease may be "
8195 "placed on a file only if there are no other open file descriptors for the "
8196 "file."
8197 msgstr ""
8198 "書き込みリースを取得する。これにより、 (読み出し用か書き込み用にかかわらず) "
8199 "そのファイルがオープンされたり、 ファイルが切り詰められた場合に、呼び出し元の"
8200 "プロセスに通知が行われるようになる。 書き込みリースは、そのファイルに対する"
8201 "オープンされたファイルディスクリプターが 他にない場合にのみ設定できる。"
8202
8203 #. type: TP
8204 #: build/C/man2/fcntl.2:1020
8205 #, no-wrap
8206 msgid "B<F_UNLCK>"
8207 msgstr "B<F_UNLCK>"
8208
8209 #. type: Plain text
8210 #: build/C/man2/fcntl.2:1023
8211 msgid "Remove our lease from the file."
8212 msgstr "そのファイルからリースを削除する。"
8213
8214 #. type: Plain text
8215 #: build/C/man2/fcntl.2:1037
8216 msgid ""
8217 "Leases are associated with an open file description (see B<open>(2)).  This "
8218 "means that duplicate file descriptors (created by, for example, B<fork>(2)  "
8219 "or B<dup>(2))  refer to the same lease, and this lease may be modified or "
8220 "released using any of these descriptors.  Furthermore, the lease is released "
8221 "by either an explicit B<F_UNLCK> operation on any of these duplicate "
8222 "descriptors, or when all such descriptors have been closed."
8223 msgstr ""
8224 "リースはオープンファイル記述に対して関連付けられる (B<open>(2)  参照)。 つま"
8225 "り、 (B<fork>(2)  や B<dup>(2)  などにより作成された) ファイルディスクリプ"
8226 "ターの複製は同じリースを参照し、 複製も含めたどのファイルディスクリプターを"
8227 "使ってもこのリースを変更したり 解放したりできる。 また、これらのファイルディ"
8228 "スクリプターのいずれかに対して B<F_UNLCK> 操作が明示的に実行された場合や、す"
8229 "べてのファイルディスクリプターが 閉じられた場合にも、リースは解放される。"
8230
8231 #. type: Plain text
8232 #: build/C/man2/fcntl.2:1044
8233 msgid ""
8234 "Leases may be taken out only on regular files.  An unprivileged process may "
8235 "take out a lease only on a file whose UID (owner) matches the filesystem UID "
8236 "of the process.  A process with the B<CAP_LEASE> capability may take out "
8237 "leases on arbitrary files."
8238 msgstr ""
8239 "リースの取得は通常のファイル (regular file) に対してのみ可能である。 非特権プ"
8240 "ロセスがリースを取得できるのは、UID (所有者) がプロセスの ファイルシステム "
8241 "UID と一致するファイルに対してだけである。 B<CAP_LEASE> ケーパビリティを持つ"
8242 "プロセスは任意のファイルに対してリースを取得できる。"
8243
8244 #. type: TP
8245 #: build/C/man2/fcntl.2:1044
8246 #, no-wrap
8247 msgid "B<F_GETLEASE> (I<void>)"
8248 msgstr "B<F_GETLEASE> (I<void>)"
8249
8250 #. type: Plain text
8251 #: build/C/man2/fcntl.2:1053
8252 msgid ""
8253 "Indicates what type of lease is associated with the file descriptor I<fd> by "
8254 "returning either B<F_RDLCK>, B<F_WRLCK>, or B<F_UNLCK>, indicating, "
8255 "respectively, a read lease , a write lease, or no lease.  I<arg> is ignored."
8256 msgstr ""
8257 "ファイルディスクリプター I<fd> に対して設定されているリースの種別を取得す"
8258 "る。 B<F_RDLCK>, B<F_WRLCK>, B<F_UNLCK> のいずれかが返される。 B<F_RDLCK>, "
8259 "B<F_WRLCK> はそれぞれ、読み出しリース、書き込みリースが設定されていることを示"
8260 "し、 B<F_UNLCK> はリースが何も設定されていないことを示す。 I<arg> は無視され"
8261 "る。"
8262
8263 #. type: Plain text
8264 #: build/C/man2/fcntl.2:1084
8265 msgid ""
8266 "When a process (the \"lease breaker\") performs an B<open>(2)  or "
8267 "B<truncate>(2)  that conflicts with a lease established via B<F_SETLEASE>, "
8268 "the system call is blocked by the kernel and the kernel notifies the lease "
8269 "holder by sending it a signal (B<SIGIO> by default).  The lease holder "
8270 "should respond to receipt of this signal by doing whatever cleanup is "
8271 "required in preparation for the file to be accessed by another process (e."
8272 "g., flushing cached buffers) and then either remove or downgrade its lease.  "
8273 "A lease is removed by performing an B<F_SETLEASE> command specifying I<arg> "
8274 "as B<F_UNLCK>.  If the lease holder currently holds a write lease on the "
8275 "file, and the lease breaker is opening the file for reading, then it is "
8276 "sufficient for the lease holder to downgrade the lease to a read lease.  "
8277 "This is done by performing an B<F_SETLEASE> command specifying I<arg> as "
8278 "B<F_RDLCK>."
8279 msgstr ""
8280 "あるプロセス (\"lease breaker\") が B<F_SETLEASE> で設定されたリースと矛\n"
8281 "盾するような B<open>(2) や B<truncate>(2) を実行した場合、 そのシステム\n"
8282 "コールはカーネルによって停止され、 カーネルは lease holder にシグナル\n"
8283 "(デフォルトでは B<SIGIO>) を送って通知を行う。 lease holder はこのシグ\n"
8284 "ナルを受信したときにはきちんと対応すべきである。 具体的には、別のプロセ\n"
8285 "スがそのファイルにアクセスするための準備として 必要な後片付け (例えば、\n"
8286 "キャッシュされたバッファーのフラッシュ) を すべて行ってから、そのファイル\n"
8287 "のリースの削除または格下げを行う。リースを削除をするには、 I<arg> に\n"
8288 "B<F_UNLCK> を指定して B<F_SETLEASE> を実行する。lease holder がファイル\n"
8289 "に書き込みリースを保持していて、 lease breaker が読み出し用にそのファイ\n"
8290 "ルをオープンしている場合、 lease holder が保持しているリースを読み出し\n"
8291 "リースに格下げすれば 十分である。これをするには、 I<arg> に B<F_RDLCK>\n"
8292 "を指定して B<F_SETLEASE> を実行する。"
8293
8294 #. type: Plain text
8295 #: build/C/man2/fcntl.2:1089
8296 msgid ""
8297 "If the lease holder fails to downgrade or remove the lease within the number "
8298 "of seconds specified in I</proc/sys/fs/lease-break-time>, then the kernel "
8299 "forcibly removes or downgrades the lease holder's lease."
8300 msgstr ""
8301 "If the lease holder fails to downgrade or remove the lease within the number "
8302 "of seconds specified in I</proc/sys/fs/lease-break-time>, then the kernel "
8303 "forcibly removes or downgrades the lease holder's lease."
8304
8305 #. type: Plain text
8306 #: build/C/man2/fcntl.2:1099
8307 msgid ""
8308 "Once a lease break has been initiated, B<F_GETLEASE> returns the target "
8309 "lease type (either B<F_RDLCK> or B<F_UNLCK>, depending on what would be "
8310 "compatible with the lease breaker)  until the lease holder voluntarily "
8311 "downgrades or removes the lease or the kernel forcibly does so after the "
8312 "lease break timer expires."
8313 msgstr ""
8314 "いったん lease break が開始されると、 lease holder が自発的にそのリース\n"
8315 "の格下げか削除を行うか、lease break timer の満了後にカーネルが強制的に\n"
8316 "リースの格下げか削除を行うまで、 B<F_GETLEASE> は対象となるリースの型を\n"
8317 "返す (リースの型は B<F_RDLCK> か B<F_UNLCK> のどちらであり、lease\n"
8318 "breaker と互換性のある型となる)。"
8319
8320 #. type: Plain text
8321 #: build/C/man2/fcntl.2:1103
8322 msgid ""
8323 "Once the lease has been voluntarily or forcibly removed or downgraded, and "
8324 "assuming the lease breaker has not unblocked its system call, the kernel "
8325 "permits the lease breaker's system call to proceed."
8326 msgstr ""
8327 "一度リースの削除か格下げが自発的もしくは強制的に行われると、 lease breaker が"
8328 "まだシステムコールを再開していない場合には、 カーネルが lease breaker のシス"
8329 "テムコールの続行を許可する。"
8330
8331 #. type: Plain text
8332 #: build/C/man2/fcntl.2:1124
8333 msgid ""
8334 "If the lease breaker's blocked B<open>(2)  or B<truncate>(2)  is interrupted "
8335 "by a signal handler, then the system call fails with the error B<EINTR>, but "
8336 "the other steps still occur as described above.  If the lease breaker is "
8337 "killed by a signal while blocked in B<open>(2)  or B<truncate>(2), then the "
8338 "other steps still occur as described above.  If the lease breaker specifies "
8339 "the B<O_NONBLOCK> flag when calling B<open>(2), then the call immediately "
8340 "fails with the error B<EWOULDBLOCK>, but the other steps still occur as "
8341 "described above."
8342 msgstr ""
8343 "lease breaker が実行した B<open>(2)  や B<truncate>(2)  が停止中にシグナルハ"
8344 "ンドラーにより中断された場合、 そのシステムコールは B<EINTR> エラーで失敗する"
8345 "が、上で述べた他の処理は そのまま行われる。 B<open>(2)  や B<truncate>(2)  が"
8346 "停止中に lease breaker がシグナルにより kill された場合、 上で述べた他の処理"
8347 "はそのまま行われる。 lease breaker が B<open>(2)  を呼ぶ際に B<O_NONBLOCK> フ"
8348 "ラグを指定した場合、そのシステムコールは B<EWOULDBLOCK> エラーで直ちに失敗す"
8349 "るが、上で述べた他の処理はそのまま行われる。"
8350
8351 #. type: Plain text
8352 #: build/C/man2/fcntl.2:1145
8353 msgid ""
8354 "The default signal used to notify the lease holder is B<SIGIO>, but this can "
8355 "be changed using the B<F_SETSIG> command to B<fcntl>().  If a B<F_SETSIG> "
8356 "command is performed (even one specifying B<SIGIO>), and the signal handler "
8357 "is established using B<SA_SIGINFO>, then the handler will receive a "
8358 "I<siginfo_t> structure as its second argument, and the I<si_fd> field of "
8359 "this argument will hold the descriptor of the leased file that has been "
8360 "accessed by another process.  (This is useful if the caller holds leases "
8361 "against multiple files)."
8362 msgstr ""
8363 "lease holder への通知に使われるデフォルトのシグナルは B<SIGIO> だが、 "
8364 "B<fcntl>()  の B<F_SETSIG> コマンドで変更することができる。 B<F_SETSIG> コマ"
8365 "ンドが実行され (B<SIGIO> を指定された場合も含む)、 B<SA_SIGINFO> フラグ付きで"
8366 "シグナルハンドラーが設定されている場合には、 ハンドラーの第二引き数として "
8367 "I<siginfo_t> 構造体が渡され、この引き数の I<si_fd> フィールドには別のプロセス"
8368 "がアクセスしたリース設定済みファイルの ディスクリプターが入っている (この機能"
8369 "は複数のファイルに対してリースを設定する場合に有用である)。"
8370
8371 #. type: SS
8372 #: build/C/man2/fcntl.2:1145
8373 #, no-wrap
8374 msgid "File and directory change notification (dnotify)"
8375 msgstr "ファイルやディレクトリの変更の通知 (dnotify)"
8376
8377 #. type: TP
8378 #: build/C/man2/fcntl.2:1146
8379 #, no-wrap
8380 msgid "B<F_NOTIFY> (I<int>)"
8381 msgstr "B<F_NOTIFY> (I<int>)"
8382
8383 #. type: Plain text
8384 #: build/C/man2/fcntl.2:1156
8385 msgid ""
8386 "(Linux 2.4 onward)  Provide notification when the directory referred to by "
8387 "I<fd> or any of the files that it contains is changed.  The events to be "
8388 "notified are specified in I<arg>, which is a bit mask specified by ORing "
8389 "together zero or more of the following bits:"
8390 msgstr ""
8391 "(Linux 2.4 以降)  I<fd> で参照されるディレクトリか、その中にあるファイルに変"
8392 "更があった場合に 通知を行う。どのイベントを通知するかは I<arg> で指定する。 "
8393 "I<arg> はビットマスクで、以下のビットの 0個以上の論理和をとったものを指定す"
8394 "る。"
8395
8396 #. type: TP
8397 #: build/C/man2/fcntl.2:1159
8398 #, no-wrap
8399 msgid "B<DN_ACCESS>"
8400 msgstr "B<DN_ACCESS>"
8401
8402 #. type: Plain text
8403 #: build/C/man2/fcntl.2:1166
8404 msgid "A file was accessed (B<read>(2), B<pread>(2), B<readv>(2), and similar)"
8405 msgstr ""
8406 "ファイルへのアクセスがあった (B<read>(2), B<pread>(2), B<readv>(2) や同様のシ"
8407 "ステムコール)"
8408
8409 #. type: TP
8410 #: build/C/man2/fcntl.2:1166
8411 #, no-wrap
8412 msgid "B<DN_MODIFY>"
8413 msgstr "B<DN_MODIFY>"
8414
8415 #. type: Plain text
8416 #: build/C/man2/fcntl.2:1175
8417 msgid ""
8418 "A file was modified (B<write>(2), B<pwrite>(2), B<writev>(2), "
8419 "B<truncate>(2), B<ftruncate>(2), and similar)."
8420 msgstr ""
8421 "ファイルの内容が変更された (B<write>(2), B<pwrite>(2), B<writev>(2), "
8422 "B<truncate>(2), B<ftruncate>(2) や同様のシステムコール)"
8423
8424 #. type: TP
8425 #: build/C/man2/fcntl.2:1175
8426 #, no-wrap
8427 msgid "B<DN_CREATE>"
8428 msgstr "B<DN_CREATE>"
8429
8430 #. type: Plain text
8431 #: build/C/man2/fcntl.2:1186
8432 msgid ""
8433 "A file was created (B<open>(2), B<creat>(2), B<mknod>(2), B<mkdir>(2), "
8434 "B<link>(2), B<symlink>(2), B<rename>(2)  into this directory)."
8435 msgstr ""
8436 "ファイルが作成された (B<open>(2), B<creat>(2), B<mknod>(2), B<mkdir>(2), \"\n"
8437 "\"B<link>(2), B<symlink>(2), このディレクトリへの B<rename>(2))"
8438
8439 #. type: TP
8440 #: build/C/man2/fcntl.2:1186
8441 #, no-wrap
8442 msgid "B<DN_DELETE>"
8443 msgstr "B<DN_DELETE>"
8444
8445 #. type: Plain text
8446 #: build/C/man2/fcntl.2:1193
8447 msgid ""
8448 "A file was unlinked (B<unlink>(2), B<rename>(2)  to another directory, "
8449 "B<rmdir>(2))."
8450 msgstr ""
8451 "ファイルが削除 (unlink) された (B<unlink>(2), 別のディレクトリへの "
8452 "B<rename>(2), B<rmdir>(2))"
8453
8454 #. type: TP
8455 #: build/C/man2/fcntl.2:1193
8456 #, no-wrap
8457 msgid "B<DN_RENAME>"
8458 msgstr "B<DN_RENAME>"
8459
8460 #. type: Plain text
8461 #: build/C/man2/fcntl.2:1197
8462 msgid "A file was renamed within this directory (B<rename>(2))."
8463 msgstr "ディレクトリ内でのファイル名の変更があった (B<rename>(2))"
8464
8465 #. type: TP
8466 #: build/C/man2/fcntl.2:1197
8467 #, no-wrap
8468 msgid "B<DN_ATTRIB>"
8469 msgstr "B<DN_ATTRIB>"
8470
8471 #. type: Plain text
8472 #: build/C/man2/fcntl.2:1205
8473 msgid ""
8474 "The attributes of a file were changed (B<chown>(2), B<chmod>(2), "
8475 "B<utime>(2), B<utimensat>(2), and similar)."
8476 msgstr ""
8477 "ファイル属性が変更された (B<chown>(2), B<chmod>(2), B<utime>(2), "
8478 "B<utimensat>(2) や同様のシステムコール)"
8479
8480 #. type: Plain text
8481 #: build/C/man2/fcntl.2:1213
8482 msgid ""
8483 "(In order to obtain these definitions, the B<_GNU_SOURCE> feature test macro "
8484 "must be defined before including I<any> header files.)"
8485 msgstr ""
8486 "(上記の定義を利用するには、I<どの> ヘッダーファイルをインクルードするより前"
8487 "に、\n"
8488 "B<_GNU_SOURCE> 機能検査マクロを定義しなければならない。)"
8489
8490 #. type: Plain text
8491 #: build/C/man2/fcntl.2:1221
8492 msgid ""
8493 "Directory notifications are normally \"one-shot\", and the application must "
8494 "reregister to receive further notifications.  Alternatively, if "
8495 "B<DN_MULTISHOT> is included in I<arg>, then notification will remain in "
8496 "effect until explicitly removed."
8497 msgstr ""
8498 "ディレクトリの変更通知は通常「一回限り (one-shot)」であり、 アプリケーション"
8499 "側でその後さらに通知を受信したい場合は 再登録しなければならない。 I<arg> に "
8500 "B<DN_MULTISHOT> が含まれていた場合には、 変更通知は明示的に解除されるまで有効"
8501 "状態が継続する。"
8502
8503 #.  The following does seem a poor API-design choice...
8504 #. type: Plain text
8505 #: build/C/man2/fcntl.2:1233
8506 msgid ""
8507 "A series of B<F_NOTIFY> requests is cumulative, with the events in I<arg> "
8508 "being added to the set already monitored.  To disable notification of all "
8509 "events, make an B<F_NOTIFY> call specifying I<arg> as 0."
8510 msgstr ""
8511 "B<F_NOTIFY> 要求は積算されていく。つまり、 I<arg> で指定されたイベントがすで"
8512 "にモニタされている イベント集合に加算される形になる。 すべてのイベントの通知"
8513 "を無効にするには、 I<arg> に 0 を指定して B<F_NOTIFY> を呼び出す必要がある。"
8514
8515 #. type: Plain text
8516 #: build/C/man2/fcntl.2:1256
8517 msgid ""
8518 "Notification occurs via delivery of a signal.  The default signal is "
8519 "B<SIGIO>, but this can be changed using the B<F_SETSIG> command to "
8520 "B<fcntl>().  (Note that B<SIGIO> is one of the nonqueuing standard signals; "
8521 "switching to the use of a real-time signal means that multiple notifications "
8522 "can be queued to the process.)  In the latter case, the signal handler "
8523 "receives a I<siginfo_t> structure as its second argument (if the handler was "
8524 "established using B<SA_SIGINFO>)  and the I<si_fd> field of this structure "
8525 "contains the file descriptor which generated the notification (useful when "
8526 "establishing notification on multiple directories)."
8527 msgstr ""
8528 "通知はシグナルの配送で行われる。 デフォルトのシグナルは B<SIGIO> だが、 "
8529 "B<fcntl>()  の B<F_SETSIG> コマンドで変更することができる。 (B<SIGIO> は"
8530 "キューイングされない標準のシグナルの一つである点に注意。 リアルタイムシグナル"
8531 "を使うように変更すると、 複数の通知がそのプロセス宛のキューに入ることがあるこ"
8532 "とを意味する。) 後者の場合には、 (B<SA_SIGINFO> フラグ付きでシグナルハンド"
8533 "ラーが設定されている場合には)  ハンドラーの第二引き数として I<siginfo_t> 構造"
8534 "体が渡され、この構造体の I<si_fd> フィールドには通知の行われたファイルディス"
8535 "クリプターが入っている (この機能は複数のディレクトリに対して通知を設定する場"
8536 "合に有用である)。"
8537
8538 #. type: Plain text
8539 #: build/C/man2/fcntl.2:1261
8540 msgid ""
8541 "Especially when using B<DN_MULTISHOT>, a real time signal should be used for "
8542 "notification, so that multiple notifications can be queued."
8543 msgstr ""
8544 "特に B<DN_MULTISHOT> を使う場合は、通知にはリアルタイムシグナルを使うべきであ"
8545 "る。 それは、リアルタイムシグナルを使うことで、複数の通知をキューに入れる こ"
8546 "とができるからである。"
8547
8548 #. type: Plain text
8549 #: build/C/man2/fcntl.2:1270
8550 msgid ""
8551 "B<NOTE:> New applications should use the I<inotify> interface (available "
8552 "since kernel 2.6.13), which provides a much superior interface for obtaining "
8553 "notifications of filesystem events.  See B<inotify>(7)."
8554 msgstr ""
8555 "B<注意:> 新しくアプリケーションを書く際には、(カーネル 2.6.13 以降で利用可能"
8556 "となった)  I<inotify> インターフェースを使用すべきである。 I<inotify> はファ"
8557 "イルシステムイベントの通知を取得するための ずっと優れたインターフェースであ"
8558 "る。 B<inotify>(7)  を参照。"
8559
8560 #. type: SS
8561 #: build/C/man2/fcntl.2:1270
8562 #, no-wrap
8563 msgid "Changing the capacity of a pipe"
8564 msgstr "パイプの容量の変更"
8565
8566 #. type: TP
8567 #: build/C/man2/fcntl.2:1271
8568 #, no-wrap
8569 msgid "B<F_SETPIPE_SZ> (I<int>; since Linux 2.6.35)"
8570 msgstr "B<F_SETPIPE_SZ> (I<int>; Linux 2.6.35 以降)"
8571
8572 #. type: Plain text
8573 #: build/C/man2/fcntl.2:1300
8574 msgid ""
8575 "Change the capacity of the pipe referred to by I<fd> to be at least I<arg> "
8576 "bytes.  An unprivileged process can adjust the pipe capacity to any value "
8577 "between the system page size and the limit defined in I</proc/sys/fs/pipe-"
8578 "max-size> (see B<proc>(5)).  Attempts to set the pipe capacity below the "
8579 "page size are silently rounded up to the page size.  Attempts by an "
8580 "unprivileged process to set the pipe capacity above the limit in I</proc/sys/"
8581 "fs/pipe-max-size> yield the error B<EPERM>; a privileged process "
8582 "(B<CAP_SYS_RESOURCE>)  can override the limit.  When allocating the buffer "
8583 "for the pipe, the kernel may use a capacity larger than I<arg>, if that is "
8584 "convenient for the implementation.  The actual capacity that is set is "
8585 "returned as the function result.  Attempting to set the pipe capacity "
8586 "smaller than the amount of buffer space currently used to store data "
8587 "produces the error B<EBUSY>."
8588 msgstr ""
8589 "I<fd> が参照するパイプの容量を少なくとも I<arg> バイトに変更する。\n"
8590 "非特権プロセスは、パイプの容量として、\n"
8591 "システムのページサイズと I</proc/sys/fs/pipe-max-size> で定義される\n"
8592 "上限値 (B<proc>(5) 参照) の間の任意の値を設定できる。\n"
8593 "パイプの容量をページサイズよりも小さな値に設定しようとした場合は、\n"
8594 "暗黙のうちにページサイズに切り上げられる。\n"
8595 "非特権プロセスがパイプの容量を I</proc/sys/fs/pipe-max-size> で定義\n"
8596 "された上限より大きな値に設定しようとした場合は、エラー B<EPERM> が\n"
8597 "発生する。特権プロセス (B<CAP_SYS_RESOURCE> ケーパビリティを持つ\n"
8598 "プロセス) はこの上限を上書きできる。\n"
8599 "パイプにバッファーを割り当てる場合、実装側の都合に応じて、\n"
8600 "カーネルは I<arg> よりも大きな容量を割り当ててもよい。\n"
8601 "実際に設定された大きさが関数の返り値として返される。\n"
8602 "パイプの容量を現在データを格納するのに使用されているバッファーの\n"
8603 "サイズよりも小さくしようとした場合は、エラー B<EBUSY> が発生する。"
8604
8605 #. type: TP
8606 #: build/C/man2/fcntl.2:1300
8607 #, no-wrap
8608 msgid "B<F_GETPIPE_SZ> (I<void>; since Linux 2.6.35)"
8609 msgstr "B<F_GETPIPE_SZ> (I<void>; Linux 2.6.35 以降)"
8610
8611 #. type: Plain text
8612 #: build/C/man2/fcntl.2:1305
8613 msgid ""
8614 "Return (as the function result) the capacity of the pipe referred to by "
8615 "I<fd>."
8616 msgstr "I<fd> が参照するパイプの容量を (関数の結果として) 返す。"
8617
8618 #. type: SS
8619 #: build/C/man2/fcntl.2:1305
8620 #, no-wrap
8621 msgid "File Sealing"
8622 msgstr "File Sealing"
8623
8624 #. type: Plain text
8625 #: build/C/man2/fcntl.2:1317
8626 msgid ""
8627 "File seals limit the set of allowed operations on a given file.  For each "
8628 "seal that is set on a file, a specific set of operations will fail with "
8629 "B<EPERM> on this file from now on.  The file is said to be sealed.  The "
8630 "default set of seals depends on the type of the underlying file and "
8631 "filesystem.  For an overview of file sealing, a discussion of its purpose, "
8632 "and some code examples, see B<memfd_create>(2)."
8633 msgstr ""
8634 "file seal は指定されたファイルで許可される操作の集合を制限する。 ファイルに設"
8635 "定される seal 毎に対応する操作の集合が規定されており、 それ以降のそのファイル"
8636 "に対する対応する操作は B<EPERM> で失敗する。 このようなファイルは sealed "
8637 "(seal が適用されている) と呼ばれる。 デフォルトの seal の集合は、適用される"
8638 "ファイルやファイルシステムに依存する。 file seal の概要、 その目的、 サンプル"
8639 "コードについては B<memfd_create>(2) を参照。"
8640
8641 #. type: Plain text
8642 #: build/C/man2/fcntl.2:1325
8643 msgid ""
8644 "Currently, only the I<tmpfs> filesystem supports sealing.  On other "
8645 "filesystems, all B<fcntl>(2)  operations that operate on seals will return "
8646 "B<EINVAL>."
8647 msgstr ""
8648 "現在のところ I<tmpfs> ファイルシステムだけが sealing をサポートしている。 他"
8649 "のファイルシステムでは、 seal に関連する B<fcntl>(2) の操作はすべて "
8650 "B<EINVAL> を返す。"
8651
8652 #. type: Plain text
8653 #: build/C/man2/fcntl.2:1330
8654 msgid ""
8655 "Seals are a property of an inode.  Thus, all open file descriptors referring "
8656 "to the same inode share the same set of seals.  Furthermore, seals can never "
8657 "be removed, only added."
8658 msgstr ""
8659 "seal は inode の属性である。 したがって、 同じ inode を参照するすべてのオープ"
8660 "ンされたファイルディスクリプターは、 同じ seal の集合を共有する。 さらに、 "
8661 "seal は削除することはできず、 追加のみ可能である。"
8662
8663 #. type: TP
8664 #: build/C/man2/fcntl.2:1330
8665 #, no-wrap
8666 msgid "B<F_ADD_SEALS> (I<int>; since Linux 3.17)"
8667 msgstr "B<F_ADD_SEALS> (I<int>; Linux 3.17 以降)"
8668
8669 #. type: Plain text
8670 #: build/C/man2/fcntl.2:1348
8671 msgid ""
8672 "Add the seals given in the bit-mask argument I<arg> to the set of seals of "
8673 "the inode referred to by the file descriptor I<fd>.  Seals cannot be removed "
8674 "again.  Once this call succeeds, the seals are enforced by the kernel "
8675 "immediately.  If the current set of seals includes B<F_SEAL_SEAL> (see "
8676 "below), then this call will be rejected with B<EPERM>.  Adding a seal that "
8677 "is already set is a no-op, in case B<F_SEAL_SEAL> is not set already.  In "
8678 "order to place a seal, the file descriptor I<fd> must be writable."
8679 msgstr ""
8680 "ビットマスク引き数 I<arg> で指定された seal を、 ファイルディスクリプター "
8681 "I<fd> が参照する inode の seal の集合に追加する。 一度追加した seal を削除す"
8682 "ることはできない。 この呼び出しが成功すると、 seal はただちにカーネルにより適"
8683 "用される。 現在の seal の集合に B<F_SEAL_SEAL> (下記参照) が含まれている場"
8684 "合、 この呼び出しは B<EPERM> で拒否される。 すでに設定されている seal を追加"
8685 "した場合、 B<F_SEAL_SEAL> がまだ設定されていない場合は no-op (何もしない) と"
8686 "なる。 seal を設定するには、 ファイルディスクリプター I<fd> が書き込み可能で"
8687 "なければならない。"
8688
8689 #. type: TP
8690 #: build/C/man2/fcntl.2:1348
8691 #, no-wrap
8692 msgid "B<F_GET_SEALS> (I<void>; since Linux 3.17)"
8693 msgstr "B<F_GET_SEALS> (I<void>; Linux 3.17 以降)"
8694
8695 #. type: Plain text
8696 #: build/C/man2/fcntl.2:1358
8697 msgid ""
8698 "Return (as the function result) the current set of seals of the inode "
8699 "referred to by I<fd>.  If no seals are set, 0 is returned.  If the file does "
8700 "not support sealing, -1 is returned and I<errno> is set to B<EINVAL>."
8701 msgstr ""
8702 "(関数の結果として) I<fd> が参照する inode の seal の現在の集合を返す。 seal "
8703 "が何も設定されていない場合、 0 が返される。 ファイルが sealing をサポートして"
8704 "いない場合、 -1 が返され、 I<errno> に B<EINVAL> が設定される。"
8705
8706 #. type: Plain text
8707 #: build/C/man2/fcntl.2:1360
8708 msgid "The following seals are available:"
8709 msgstr "以下の seal が利用できる。"
8710
8711 #. type: TP
8712 #: build/C/man2/fcntl.2:1360
8713 #, no-wrap
8714 msgid "B<F_SEAL_SEAL>"
8715 msgstr "B<F_SEAL_SEAL>"
8716
8717 #. type: Plain text
8718 #: build/C/man2/fcntl.2:1372
8719 msgid ""
8720 "If this seal is set, any further call to B<fcntl>(2)  with B<F_ADD_SEALS> "
8721 "will fail with B<EPERM>.  Therefore, this seal prevents any modifications to "
8722 "the set of seals itself.  If the initial set of seals of a file includes "
8723 "B<F_SEAL_SEAL>, then this effectively causes the set of seals to be constant "
8724 "and locked."
8725 msgstr ""
8726 "この seal が設定されると、  これ以降の B<F_ADD_SEALS> を指定した B<fcntl>(2) "
8727 "の呼び出しはすべて B<EPERM> で失敗する。 したがって、 この seal を設定すると "
8728 "seal の集合自身の変更を防止できる。 ファイルの最初の seal の集合に "
8729 "B<F_SEAL_SEAL> が含まれていた場合、 結果的に seal の集合が定数になりロックさ"
8730 "れることになる。"
8731
8732 #. type: TP
8733 #: build/C/man2/fcntl.2:1372
8734 #, no-wrap
8735 msgid "B<F_SEAL_SHRINK>"
8736 msgstr "B<F_SEAL_SHRINK>"
8737
8738 #. type: Plain text
8739 #: build/C/man2/fcntl.2:1387
8740 msgid ""
8741 "If this seal is set, the file in question cannot be reduced in size.  This "
8742 "affects B<open>(2)  with the B<O_TRUNC> flag as well as B<truncate>(2)  and "
8743 "B<ftruncate>(2).  Those calls will fail with B<EPERM> if you try to shrink "
8744 "the file in question.  Increasing the file size is still possible."
8745 msgstr ""
8746 "この seal が設定されると、 設定されたファイルのサイズを小さくできなくなる。 "
8747 "この seal は B<open>(2) の B<O_TRUNC> フラグに影響する。 B<truncate>(2) と "
8748 "B<ftruncate>(2) についても同様である。 対象のファイルのサイズを小さくしようと"
8749 "した場合、 これらの呼び出しは B<EPERM> で失敗する。 ファイルサイズを増やすこ"
8750 "とはこの場合でも可能である。"
8751
8752 #. type: TP
8753 #: build/C/man2/fcntl.2:1387
8754 #, no-wrap
8755 msgid "B<F_SEAL_GROW>"
8756 msgstr "B<F_SEAL_GROW>"
8757
8758 #. type: Plain text
8759 #: build/C/man2/fcntl.2:1401
8760 msgid ""
8761 "If this seal is set, the size of the file in question cannot be increased.  "
8762 "This affects B<write>(2)  beyond the end of the file, B<truncate>(2), "
8763 "B<ftruncate>(2), and B<fallocate>(2).  These calls will fail with B<EPERM> "
8764 "if you use them to increase the file size.  If you keep the size or shrink "
8765 "it, those calls still work as expected."
8766 msgstr ""
8767 "この seal が設定されると、 設定されたファイルのサイズを増やせなくなる。 この "
8768 "seal はファイルの末尾を超えての B<write>(2) や B<truncate>(2), "
8769 "B<ftruncate>(2), B<fallocate>(2) に影響する。 対象のファイルのサイズを大きく"
8770 "しようとした場合、 これらの呼び出しは B<EPERM> で失敗する。 ファイルサイズが"
8771 "変わらない場合、 小さくなる場合は、 これらの呼び出しはそのまま動作する。"
8772
8773 #. type: TP
8774 #: build/C/man2/fcntl.2:1401
8775 #, no-wrap
8776 msgid "B<F_SEAL_WRITE>"
8777 msgstr "B<F_SEAL_WRITE>"
8778
8779 #.  One or more other seals are typically used with F_SEAL_WRITE
8780 #.  because, given a file with the F_SEAL_WRITE seal set, then,
8781 #.  while it would no longer be possinle to (say) write zeros into
8782 #.  the last 100 bytes of a file, it would still be possible
8783 #.  to (say) shrink the file by 100 bytes using ftruncate(), and
8784 #.  then increase the file size by 100 bytes, which would have
8785 #.  the effect of replacing the last hundred bytes by zeros.
8786 #. type: Plain text
8787 #: build/C/man2/fcntl.2:1429
8788 msgid ""
8789 "If this seal is set, you cannot modify the contents of the file.  Note that "
8790 "shrinking or growing the size of the file is still possible and allowed.  "
8791 "Thus, this seal is normally used in combination with one of the other "
8792 "seals.  This seal affects B<write>(2)  and B<fallocate>(2)  (only in "
8793 "combination with the B<FALLOC_FL_PUNCH_HOLE> flag).  Those calls will fail "
8794 "with B<EPERM> if this seal is set.  Furthermore, trying to create new "
8795 "shared, writable memory-mappings via B<mmap>(2)  will also fail with "
8796 "B<EPERM>."
8797 msgstr ""
8798 "この seal が設定されていると、 ファイルの内容を変更できない。 ファイルのサイ"
8799 "ズを縮小したり伸張したりすることは可能で許可されている。 したがって、 この "
8800 "seal は通常は他の seal のいずれかと組み合わせて使用される。 この seal は "
8801 "B<write>(2) と B<fallocate>(2) (B<FALLOC_FL_PUNCH_HOLE> フラグとの組み合わせ"
8802 "の場合のみ) に影響する。 この seal が設定されると、 これらの呼び出しは "
8803 "B<EPERM> で失敗する。 また、 B<mmap>(2) による新しい書き込み可能な共有メモ"
8804 "リーマッピングの作成も B<EPERM> で失敗する。"
8805
8806 #. type: Plain text
8807 #: build/C/man2/fcntl.2:1444
8808 msgid ""
8809 "Setting B<F_SEAL_WRITE> via B<fcntl>(2)  with B<F_ADD_SEALS> will fail with "
8810 "B<EBUSY> if any writable, shared mapping exists.  Such mappings must be "
8811 "unmapped before you can add this seal.  Furthermore, if there are any "
8812 "asynchronous I/O operations (B<io_submit>(2))  pending on the file, all "
8813 "outstanding writes will be discarded."
8814 msgstr ""
8815 "B<fcntl>(2) の B<F_ADD_SEALS> で B<F_SEAL_WRITE> を設定しようとした場合、 書"
8816 "き込み可能な共有マッピングが存在すると B<EBUSY> で失敗する。 このようなマッピ"
8817 "ングは、 この seal を追加する前にアンマップしなければならない。 また、 ファイ"
8818 "ルに対して処理待ちの非同期 I/O 操作 (B<io_submit>(2) がある場合、 処理されて"
8819 "いない書き込みは破棄される。"
8820
8821 #. type: Plain text
8822 #: build/C/man2/fcntl.2:1446
8823 msgid "For a successful call, the return value depends on the operation:"
8824 msgstr "成功した場合の返り値は操作の種類により違う:"
8825
8826 #. type: TP
8827 #: build/C/man2/fcntl.2:1446
8828 #, no-wrap
8829 msgid "B<F_DUPFD>"
8830 msgstr "B<F_DUPFD>"
8831
8832 #. type: Plain text
8833 #: build/C/man2/fcntl.2:1449
8834 msgid "The new descriptor."
8835 msgstr "新しいディスクリプターを返す。"
8836
8837 #. type: TP
8838 #: build/C/man2/fcntl.2:1449
8839 #, no-wrap
8840 msgid "B<F_GETFD>"
8841 msgstr "B<F_GETFD>"
8842
8843 #. type: Plain text
8844 #: build/C/man2/fcntl.2:1452
8845 msgid "Value of file descriptor flags."
8846 msgstr "ファイルディスクリプターフラグの値"
8847
8848 #. type: TP
8849 #: build/C/man2/fcntl.2:1452
8850 #, no-wrap
8851 msgid "B<F_GETFL>"
8852 msgstr "B<F_GETFL>"
8853
8854 #. type: Plain text
8855 #: build/C/man2/fcntl.2:1455
8856 msgid "Value of file status flags."
8857 msgstr "ファイル状態フラグの値"
8858
8859 #. type: TP
8860 #: build/C/man2/fcntl.2:1455
8861 #, no-wrap
8862 msgid "B<F_GETLEASE>"
8863 msgstr "B<F_GETLEASE>"
8864
8865 #. type: Plain text
8866 #: build/C/man2/fcntl.2:1458
8867 msgid "Type of lease held on file descriptor."
8868 msgstr "ファイルディスクリプターに対して保持されているリースの種別を返す。"
8869
8870 #. type: TP
8871 #: build/C/man2/fcntl.2:1458
8872 #, no-wrap
8873 msgid "B<F_GETOWN>"
8874 msgstr "B<F_GETOWN>"
8875
8876 #. type: Plain text
8877 #: build/C/man2/fcntl.2:1461
8878 msgid "Value of descriptor owner."
8879 msgstr "ディスクリプターの所有者を返す。"
8880
8881 #. type: TP
8882 #: build/C/man2/fcntl.2:1461
8883 #, no-wrap
8884 msgid "B<F_GETSIG>"
8885 msgstr "B<F_GETSIG>"
8886
8887 #. type: Plain text
8888 #: build/C/man2/fcntl.2:1467
8889 msgid ""
8890 "Value of signal sent when read or write becomes possible, or zero for "
8891 "traditional B<SIGIO> behavior."
8892 msgstr ""
8893 "読み込みや書き出しが可能になった時に送られるシグナルの値、もしくは 伝統的な "
8894 "B<SIGIO> 動作の場合にはゼロを返す。"
8895
8896 #. type: TP
8897 #: build/C/man2/fcntl.2:1467
8898 #, no-wrap
8899 msgid "B<F_GETPIPE_SZ>, B<F_SETPIPE_SZ>"
8900 msgstr "B<F_GETPIPE_SZ>, B<F_SETPIPE_SZ>"
8901
8902 #. type: Plain text
8903 #: build/C/man2/fcntl.2:1470
8904 msgid "The pipe capacity."
8905 msgstr "パイプの容量。"
8906
8907 #. type: TP
8908 #: build/C/man2/fcntl.2:1470
8909 #, no-wrap
8910 msgid "B<F_GET_SEALS>"
8911 msgstr "B<F_GET_SEALS>"
8912
8913 #. type: Plain text
8914 #: build/C/man2/fcntl.2:1475
8915 msgid ""
8916 "A bit mask identifying the seals that have been set for the inode referred "
8917 "to by I<fd>."
8918 msgstr "I<fd> が参照する inode に設定されている seal を示すビットマスク。"
8919
8920 #. type: TP
8921 #: build/C/man2/fcntl.2:1475
8922 #, no-wrap
8923 msgid "All other commands"
8924 msgstr "他の全てのコマンド"
8925
8926 #. type: Plain text
8927 #: build/C/man2/fcntl.2:1478
8928 msgid "Zero."
8929 msgstr "0 を返す。"
8930
8931 #. type: Plain text
8932 #: build/C/man2/fcntl.2:1482
8933 msgid "On error, -1 is returned, and I<errno> is set appropriately."
8934 msgstr "エラーの時は -1 が返され、 I<errno> に適切な値が設定される。"
8935
8936 #. type: TP
8937 #: build/C/man2/fcntl.2:1483 build/C/man3/lockf.3:122
8938 #, no-wrap
8939 msgid "B<EACCES> or B<EAGAIN>"
8940 msgstr "B<EACCES> か B<EAGAIN>"
8941
8942 #. type: Plain text
8943 #: build/C/man2/fcntl.2:1486
8944 msgid "Operation is prohibited by locks held by other processes."
8945 msgstr "他のプロセスが保持しているロックによって操作が禁止されている。"
8946
8947 #. type: TP
8948 #: build/C/man2/fcntl.2:1486 build/C/man2/fork.2:186 build/C/man2/fork.2:191
8949 #: build/C/man2/fork.2:209
8950 #, no-wrap
8951 msgid "B<EAGAIN>"
8952 msgstr "B<EAGAIN>"
8953
8954 #. type: Plain text
8955 #: build/C/man2/fcntl.2:1490
8956 msgid ""
8957 "The operation is prohibited because the file has been memory-mapped by "
8958 "another process."
8959 msgstr ""
8960 "そのファイルは他のプロセスによってメモリーマップされているため、 操作が禁止さ"
8961 "れている。"
8962
8963 #. type: Plain text
8964 #: build/C/man2/fcntl.2:1494
8965 msgid "I<fd> is not an open file descriptor"
8966 msgstr "I<fd> がオープンされたファイルディスクリプターではない。"
8967
8968 #. type: Plain text
8969 #: build/C/man2/fcntl.2:1503
8970 msgid ""
8971 "I<cmd> is B<F_SETLK> or B<F_SETLKW> and the file descriptor open mode "
8972 "doesn't match with the type of lock requested."
8973 msgstr ""
8974 "I<cmd> が B<F_SETLK> または B<F_SETLKW> だったが、対象のファイルディスクリプ"
8975 "ターのオープンモードが 必要となるロックの型にマッチしていない。"
8976
8977 #. type: Plain text
8978 #: build/C/man2/fcntl.2:1512
8979 msgid ""
8980 "I<cmd> is B<F_SETPIPE_SZ> and the new pipe capacity specified in I<arg> is "
8981 "smaller than the amount of buffer space currently used to store data in the "
8982 "pipe."
8983 msgstr ""
8984 "I<cmd> が B<F_SETPIPE_SZ> で、 I<arg> で指定されたパイプの新しい容量がパイプ"
8985 "が、 現在パイプにあるデータを格納するのに使用されているバッファー容量よりも小"
8986 "さい。"
8987
8988 #. type: Plain text
8989 #: build/C/man2/fcntl.2:1522
8990 msgid ""
8991 "I<cmd> is B<F_ADD_SEALS>, I<arg> includes B<F_SEAL_WRITE>, and there exists "
8992 "a writable, shared mapping on the file referred to by I<fd>."
8993 msgstr ""
8994 "I<cmd> が B<F_ADD_SEALS> で、 I<arg> に B<F_SEAL_WRITE> が含まれており、 "
8995 "I<fd> が参照するファイルに対する書き込み可能な共有マッピングが存在する。"
8996
8997 #. type: TP
8998 #: build/C/man2/fcntl.2:1522 build/C/man3/lockf.3:142
8999 #, no-wrap
9000 msgid "B<EDEADLK>"
9001 msgstr "B<EDEADLK>"
9002
9003 #. type: Plain text
9004 #: build/C/man2/fcntl.2:1527
9005 msgid ""
9006 "It was detected that the specified B<F_SETLKW> command would cause a "
9007 "deadlock."
9008 msgstr ""
9009 "指定された B<F_SETLKW> コマンドを実行した場合にはデッドロックになることが検出"
9010 "された。"
9011
9012 #. type: Plain text
9013 #: build/C/man2/fcntl.2:1531
9014 msgid "I<lock> is outside your accessible address space."
9015 msgstr "I<lock> が利用可能なアドレス空間の外部にある。"
9016
9017 #. type: Plain text
9018 #: build/C/man2/fcntl.2:1540
9019 msgid ""
9020 "I<cmd> is B<F_SETLKW> or B<F_OFD_SETLKW> and the operation was interrupted "
9021 "by a signal; see B<signal>(7)."
9022 msgstr ""
9023 "I<cmd> が B<F_SETLKW> か B<F_OFD_SETLKW> で、 操作がシグナルにより割り込まれ"
9024 "た。 B<signal>(7)  参照。"
9025
9026 #. type: Plain text
9027 #: build/C/man2/fcntl.2:1553
9028 msgid ""
9029 "I<cmd> is B<F_GETLK>, B<F_SETLK>, B<F_OFD_GETLK>, or B<F_OFD_SETLK>, and the "
9030 "operation was interrupted by a signal before the lock was checked or "
9031 "acquired.  Most likely when locking a remote file (e.g., locking over NFS), "
9032 "but can sometimes happen locally."
9033 msgstr ""
9034 "I<cmd> が B<F_GETLK>, B<F_SETLK>, B<F_OFD_GETLK>, B<F_OFD_SETLK> で、 操作が"
9035 "シグナルにより割り込まれた (B<signal>(7)  参照)。 B<F_GETLK> と B<F_SETLK> の"
9036 "場合、ロックを確認したり取得したりする前にシグナルによって割り込まれた。 これ"
9037 "はたいていリモートのファイルをロックする場合 (例えば NFS 上でロックする場合) "
9038 "に起こる。 しかしローカルでも起こる場合がある。"
9039
9040 #. type: Plain text
9041 #: build/C/man2/fcntl.2:1558
9042 msgid "The value specified in I<cmd> is not recognized by this kernel."
9043 msgstr "カーネルが認識しない値が I<cmd> で指定された。"
9044
9045 #. type: Plain text
9046 #: build/C/man2/fcntl.2:1566
9047 msgid ""
9048 "I<cmd> is B<F_ADD_SEALS> and I<arg> includes an unrecognized sealing bit."
9049 msgstr ""
9050 "I<cmd> が B<F_ADD_SEALS> で、 I<arg> に認識できない seal を示すビットが含まれ"
9051 "ている。"
9052
9053 #. type: Plain text
9054 #: build/C/man2/fcntl.2:1576
9055 msgid ""
9056 "I<cmd> is B<F_ADD_SEALS> or B<F_GET_SEALS> and the filesystem containing the "
9057 "inode referred to by I<fd> does not support sealing."
9058 msgstr ""
9059 "I<cmd> が B<F_ADD_SEALS> か B<F_GET_SEALS> で、 I<fd> が参照している inode が"
9060 "格納されているファイルシステムが sealing をサポートしていない。"
9061
9062 #. type: Plain text
9063 #: build/C/man2/fcntl.2:1588
9064 msgid ""
9065 "I<cmd> is B<F_DUPFD> and I<arg> is negative or is greater than the maximum "
9066 "allowable value (see the discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
9067 msgstr ""
9068 "I<cmd> が B<F_DUPFD> で、 I<arg> が負か、もしくは許される最大値よりも大きい "
9069 "(B<getrlimit>(2) の B<RLIMIT_NOFILE> の議論を参照)。"
9070
9071 #. type: Plain text
9072 #: build/C/man2/fcntl.2:1596
9073 msgid "I<cmd> is B<F_SETSIG> and I<arg> is not an allowable signal number."
9074 msgstr "I<cmd> が B<F_SETSIG> で、 I<arg> が許可されたシグナル番号ではない。"
9075
9076 #. type: Plain text
9077 #: build/C/man2/fcntl.2:1607
9078 msgid ""
9079 "I<cmd> is B<F_OFD_SETLK>, B<F_OFD_SETLKW>, or B<F_OFD_GETLK>, and I<l_pid> "
9080 "was not specified as zero."
9081 msgstr ""
9082 "I<cmd> が B<F_OFD_SETLK>, B<F_OFD_SETLKW>, B<F_OFD_GETLK> のいずれかで、 "
9083 "I<l_pid> に 0 が指定されなかった。"
9084
9085 #. type: Plain text
9086 #: build/C/man2/fcntl.2:1613
9087 msgid ""
9088 "I<cmd> is B<F_DUPFD> and the process already has the maximum number of file "
9089 "descriptors open."
9090 msgstr ""
9091 "I<cmd> が B<F_DUPFD>で、 プロセスがすでに最大数までファイルディスクリプターを"
9092 "オープンしている。"
9093
9094 #. type: TP
9095 #: build/C/man2/fcntl.2:1613 build/C/man2/flock.2:131 build/C/man3/lockf.3:151
9096 #, no-wrap
9097 msgid "B<ENOLCK>"
9098 msgstr "B<ENOLCK>"
9099
9100 #. type: Plain text
9101 #: build/C/man2/fcntl.2:1617
9102 msgid ""
9103 "Too many segment locks open, lock table is full, or a remote locking "
9104 "protocol failed (e.g., locking over NFS)."
9105 msgstr ""
9106 "オープンされているロックの数が多過ぎて、ロックテーブルがいっぱいである。 また"
9107 "は remote locking protocol (例えば NFS 上のロック) が失敗した。"
9108
9109 #. type: Plain text
9110 #: build/C/man2/fcntl.2:1625
9111 msgid ""
9112 "B<F_NOTIFY> was specified in I<cmd>, but I<fd> does not refer to a directory."
9113 msgstr ""
9114 "B<F_NOTIFY> が I<cmd> に指定されたが、 I<fd> がディレクトリを参照していない。"
9115
9116 #. type: Plain text
9117 #: build/C/man2/fcntl.2:1630
9118 msgid ""
9119 "Attempted to clear the B<O_APPEND> flag on a file that has the append-only "
9120 "attribute set."
9121 msgstr ""
9122 "追加専用属性が設定されたファイルの B<O_APPEND> フラグをクリアしようと試みた。"
9123
9124 #. type: Plain text
9125 #: build/C/man2/fcntl.2:1640
9126 msgid ""
9127 "I<cmd> was B<F_ADD_SEALS>, but I<fd> was not open for writing or the current "
9128 "set of seals on the file already includes B<F_SEAL_SEAL>."
9129 msgstr ""
9130 "I<cmd> が B<F_ADD_SEALS> だが、 I<fd> が書き込み用にオープンされていないか、 "
9131 "ファイルの現在の seal の集合にすでに B<F_SEAL_SEAL> が含まれている。"
9132
9133 #. type: Plain text
9134 #: build/C/man2/fcntl.2:1653
9135 msgid ""
9136 "SVr4, 4.3BSD, POSIX.1-2001.  Only the operations B<F_DUPFD>, B<F_GETFD>, "
9137 "B<F_SETFD>, B<F_GETFL>, B<F_SETFL>, B<F_GETLK>, B<F_SETLK>, and B<F_SETLKW> "
9138 "are specified in POSIX.1-2001."
9139 msgstr ""
9140 "SVr4, 4.3BSD, POSIX.1-2001.  POSIX.1-2001 で規定されている操作は、\n"
9141 "B<F_DUPFD>, B<F_GETFD>, B<F_SETFD>, B<F_GETFL>, B<F_SETFL>, \n"
9142 "B<F_GETLK>, B<F_SETLK>, B<F_SETLKW> だけである。"
9143
9144 #. type: Plain text
9145 #: build/C/man2/fcntl.2:1665
9146 msgid ""
9147 "B<F_GETOWN> and B<F_SETOWN> are specified in POSIX.1-2001.  (To get their "
9148 "definitions, define either B<_BSD_SOURCE>, or B<_XOPEN_SOURCE> with the "
9149 "value 500 or greater, or B<_POSIX_C_SOURCE> with the value 200809L or "
9150 "greater.)"
9151 msgstr ""
9152 "B<F_GETOWN> と B<F_SETOWN> は POSIX.1-2001 で規定されている。 (これら定義する"
9153 "には、 B<_BSD_SOURCE> を定義するか、 B<_XOPEN_SOURCE> を 500 以上の値で定義す"
9154 "るか、 B<_POSIX_C_SOURCE> を 200809L 以上の値で定義するか、 のいずれが必要で"
9155 "ある。)"
9156
9157 #. type: Plain text
9158 #: build/C/man2/fcntl.2:1673
9159 msgid ""
9160 "B<F_DUPFD_CLOEXEC> is specified in POSIX.1-2008.  (To get this definition, "
9161 "define B<_POSIX_C_SOURCE> with the value 200809L or greater, or "
9162 "B<_XOPEN_SOURCE> with the value 700 or greater.)"
9163 msgstr ""
9164 "B<F_DUPFD_CLOEXEC> は POSIX.1-2008 で規定されている。\n"
9165 "(これら定義するには、\n"
9166 "B<_POSIX_C_SOURCE> を 200809L 以上の値で定義するか、\n"
9167 "B<_XOPEN_SOURCE> を 700 以上の値で定義すること。)"
9168
9169 #.  .PP
9170 #.  SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions.
9171 #. type: Plain text
9172 #: build/C/man2/fcntl.2:1690
9173 msgid ""
9174 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_SETPIPE_SZ>, B<F_GETPIPE_SZ>, "
9175 "B<F_GETSIG>, B<F_SETSIG>, B<F_NOTIFY>, B<F_GETLEASE>, and B<F_SETLEASE> are "
9176 "Linux-specific.  (Define the B<_GNU_SOURCE> macro to obtain these "
9177 "definitions.)"
9178 msgstr ""
9179 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_SETPIPE_SZ>, B<F_GETPIPE_SZ>, "
9180 "B<F_GETSIG>, \n"
9181 "B<F_SETSIG>, B<F_NOTIFY>, B<F_GETLEASE>, B<F_SETLEASE> は Linux 固有である\n"
9182 "(これらの定義を有効にするには B<_GNU_SOURCE> マクロを定義すること)。"
9183
9184 #. type: Plain text
9185 #: build/C/man2/fcntl.2:1699
9186 msgid ""
9187 "B<F_OFD_SETLK>, B<F_OFD_SETLKW>, and B<F_OFD_GETLK> are Linux-specific (and "
9188 "one must define B<_GNU_SOURCE> to obtain their definitions), but work is "
9189 "being done to have them included in the next version of POSIX.1."
9190 msgstr ""
9191 "B<F_OFD_SETLK>, B<F_OFD_SETLKW>, B<F_OFD_GETLK> は Linux 固有だが (これらの定"
9192 "義を得るには B<_GNU_SOURCE> を定義しなければならない)、 POSIX.1 の次のバー"
9193 "ジョンに含めようという活動が進められている。"
9194
9195 #.  FIXME . Once glibc adds support, add a note about FTM requirements
9196 #. type: Plain text
9197 #: build/C/man2/fcntl.2:1705
9198 msgid "B<F_ADD_SEALS> and B<F_GET_SEALS> are Lnux-specific."
9199 msgstr "B<F_ADD_SEALS> と B<F_GET_SEALS> は Linux 固有である。"
9200
9201 #. type: Plain text
9202 #: build/C/man2/fcntl.2:1711 build/C/man2/fcntl.2:1737
9203 msgid ""
9204 "The errors returned by B<dup2>(2)  are different from those returned by "
9205 "B<F_DUPFD>."
9206 msgstr "エラーの際の返り値が B<dup2>(2)  と B<F_DUPFD> では異なっている。"
9207
9208 #. type: SS
9209 #: build/C/man2/fcntl.2:1711
9210 #, no-wrap
9211 msgid "File locking"
9212 msgstr "ファイルロック"
9213
9214 #. type: Plain text
9215 #: build/C/man2/fcntl.2:1732 build/C/man2/fcntl.2:1776
9216 msgid ""
9217 "The original Linux B<fcntl>()  system call was not designed to handle large "
9218 "file offsets (in the I<flock> structure).  Consequently, an B<fcntl64>()  "
9219 "system call was added in Linux 2.4.  The newer system call employs a "
9220 "different structure for file locking, I<flock64>, and corresponding "
9221 "commands, B<F_GETLK64>, B<F_SETLK64>, and B<F_SETLKW64>.  However, these "
9222 "details can be ignored by applications using glibc, whose B<fcntl>()  "
9223 "wrapper function transparently employs the more recent system call where it "
9224 "is available."
9225 msgstr ""
9226 "元々の Linux の B<fcntl>() システムコールは (I<flock> 構造体で) 大きな\n"
9227 "ファイルオフセットを扱えるように設計されていなかった。\n"
9228 "その結果、Linux 2.4 で B<fcntl64>() システムコールが追加された。\n"
9229 "この新しいシステムコールは、ファイルのロックに I<flock64> という別の\n"
9230 "構造体を利用し、これに対応するコマンドとして B<F_GETLK64>,\n"
9231 "B<F_SETLK64>, B<F_SETLKW64> を使用する。\n"
9232 "しかし、 glibc を使うアプリケーションではこれらの詳細を無視することが\n"
9233 "できる。 glibc の B<fcntl> のラッパー関数は新しいシステムコールが\n"
9234 "利用できる場合はそれを利用するようになっているからである。"
9235
9236 #. type: SS
9237 #: build/C/man2/fcntl.2:1737
9238 #, no-wrap
9239 msgid "Record locks"
9240 msgstr "レコードロック"
9241
9242 #. type: Plain text
9243 #: build/C/man2/fcntl.2:1743
9244 msgid ""
9245 "Since kernel 2.0, there is no interaction between the types of lock placed "
9246 "by B<flock>(2)  and B<fcntl>()."
9247 msgstr ""
9248 "カーネル 2.0 以降では、 B<flock>(2)  と B<fcntl>()  が設定するロック種別の間"
9249 "に相互作用はない。"
9250
9251 #.  e.g., Solaris 8 documents this field in fcntl(2), and Irix 6.5
9252 #.  documents it in fcntl(5).  mtk, May 2007
9253 #.  Also, FreeBSD documents it (Apr 2014).
9254 #. type: Plain text
9255 #: build/C/man2/fcntl.2:1755
9256 msgid ""
9257 "Several systems have more fields in I<struct flock> such as, for example, "
9258 "I<l_sysid>.  Clearly, I<l_pid> alone is not going to be very useful if the "
9259 "process holding the lock may live on a different machine."
9260 msgstr ""
9261 "システムによっては、 I<struct flock> に上記以外のフィールドがあるものもある "
9262 "(例えば I<l_sysid>)。 はっきりと言えることは、ロックを保持しているプロセスが"
9263 "別のマシンに存在 する場合には、 I<l_pid> だけはあまり役にたたないだろうという"
9264 "ことである。"
9265
9266 #. type: SS
9267 #: build/C/man2/fcntl.2:1776
9268 #, no-wrap
9269 msgid "Record locking and NFS"
9270 msgstr "レコードロックと NFS"
9271
9272 #
9273 #
9274 #
9275 #.  Neil Brown: With NFSv3 the failure mode is the reverse.  If
9276 #.      the server loses contact with a client then any lock stays in place
9277 #.      indefinitely ("why can't I read my mail"... I remember it well).
9278 #.  Jeff Layton:
9279 #.      Note that this is not a firm timeout. The server runs a job
9280 #.      periodically to clean out expired stateful objects, and it's likely
9281 #.      that there is some time (maybe even up to another whole lease period)
9282 #.      between when the timeout expires and the job actually runs. If the
9283 #.      client gets a RENEW in there within that window, its lease will be
9284 #.      renewed and its state preserved.
9285 #. type: Plain text
9286 #: build/C/man2/fcntl.2:1804
9287 msgid ""
9288 "Before Linux 3.12, if an NFSv4 client loses contact with the server for a "
9289 "period of time (defined as more than 90 seconds with no communication), it "
9290 "might lose and regain a lock without ever being aware of the fact.  (The "
9291 "period of time after which contact is assumed lost is known as the NFSv4 "
9292 "leasetime.  On a Linux NFS server, this can be determined by looking at I</"
9293 "proc/fs/nfsd/nfsv4leasetime>, which expresses the period in seconds.  The "
9294 "default value for this file is 90.)  This scenario potentially risks data "
9295 "corruption, since another process might acquire a lock in the intervening "
9296 "period and perform file I/O."
9297 msgstr ""
9298 "Linux 3.12 より前では、 NFSv4 クライアントが一定時間サーバーと通信がなかった"
9299 "場合 (90 秒間通信がない場合と定義されている)、 クライアントが気付かずにロック"
9300 "を失い再獲得する場合がある。 (通信がなくなったみなす時間は NFSv4 leastime と"
9301 "呼ばれる。 Linux NFS サーバーでは、 この値は I</proc/fs/nfsd/nfsv4leasetime> "
9302 "を見て決定される。 このファイルの値の単位は秒であり、 このファイルのデフォル"
9303 "ト値は 90 である。) この状況では潜在的にデータ破壊が起こる危険性がある。 通信"
9304 "がなかった間に他のプロセスがロックを獲得しファイル入出力を行う場合があるから"
9305 "である。"
9306
9307 #.  commit ef1820f9be27b6ad158f433ab38002ab8131db4d
9308 #.  commit f6de7a39c181dfb8a2c534661a53c73afb3081cd
9309 #. type: Plain text
9310 #: build/C/man2/fcntl.2:1818
9311 msgid ""
9312 "Since Linux 3.12, if an NFSv4 client loses contact with the server, any I/O "
9313 "to the file by a process which \"thinks\" it holds a lock will fail until "
9314 "that process closes and reopens the file.  A kernel parameter, I<nfs."
9315 "recover_lost_locks>, can be set to 1 to obtain the pre-3.12 behavior, "
9316 "whereby the client will attempt to recover lost locks when contact is "
9317 "reestablished with the server.  Because of the attendant risk of data "
9318 "corruption, this parameter defaults to 0 (disabled)."
9319 msgstr ""
9320 "Linux 3.12 以降、 NFSv4 クライアントがサーバーと通信がなかった場合、 ロックを"
9321 "持っていると「思っている」プロセスがそのファイルに入出力を行うと失敗する。 そ"
9322 "のプロセスがそのファイルをいったんクローズし再オープンするまでは入出力は失敗"
9323 "する。 カーネルパラメーター I<nfs.recover_lost_locks> を 1 に設定すると、 "
9324 "Linux 3.12 より前の動作にすることができる。 この場合、 サーバーとの通信が再確"
9325 "立された場合、 クライアントがは失われたロックを回復しようとする。 データ破壊"
9326 "が起こる危険性があるため、 このパラメーターはデフォルトでは 0 (無効) になって"
9327 "いる。"
9328
9329 #. type: SS
9330 #: build/C/man2/fcntl.2:1819
9331 #, no-wrap
9332 msgid "F_SETFL"
9333 msgstr "F_SETFL"
9334
9335 #.  FIXME . According to POSIX.1-2001, O_SYNC should also be modifiable
9336 #.  via fcntl(2), but currently Linux does not permit this
9337 #.  See http://bugzilla.kernel.org/show_bug.cgi?id=5994
9338 #. type: Plain text
9339 #: build/C/man2/fcntl.2:1831
9340 msgid ""
9341 "It is not possible to use B<F_SETFL> to change the state of the B<O_DSYNC> "
9342 "and B<O_SYNC> flags.  Attempts to change the state of these flags are "
9343 "silently ignored."
9344 msgstr ""
9345 "B<F_SETFL> を使って、 フラグ B<O_DSYNC> と B<O_SYNC> の状態を変更することはで"
9346 "きない。これらのフラグの状態を変更しようとした場合には、黙って無視される。"
9347
9348 #. type: SS
9349 #: build/C/man2/fcntl.2:1831
9350 #, no-wrap
9351 msgid "F_GETOWN"
9352 msgstr "F_GETOWN"
9353
9354 #.  glibc source: sysdeps/unix/sysv/linux/i386/sysdep.h
9355 #.  mtk, Dec 04: some limited testing on alpha and ia64 seems to
9356 #.  indicate that ANY negative PGID value will cause F_GETOWN
9357 #.  to misinterpret the return as an error. Some other architectures
9358 #.  seem to have the same range check as i386.
9359 #. type: Plain text
9360 #: build/C/man2/fcntl.2:1857
9361 msgid ""
9362 "A limitation of the Linux system call conventions on some architectures "
9363 "(notably i386) means that if a (negative)  process group ID to be returned "
9364 "by B<F_GETOWN> falls in the range -1 to -4095, then the return value is "
9365 "wrongly interpreted by glibc as an error in the system call; that is, the "
9366 "return value of B<fcntl>()  will be -1, and I<errno> will contain the "
9367 "(positive) process group ID.  The Linux-specific B<F_GETOWN_EX> operation "
9368 "avoids this problem.  Since glibc version 2.11, glibc makes the kernel "
9369 "B<F_GETOWN> problem invisible by implementing B<F_GETOWN> using "
9370 "B<F_GETOWN_EX>."
9371 msgstr ""
9372 "いくつかのアーキテクチャー (特に i386) における Linux システムコールの慣習\n"
9373 "のため以下の制限が存在する。\n"
9374 "B<F_GETOWN> が返す (負の) プロセスグループID が -1 から -4095 の範囲に入った"
9375 "場合、\n"
9376 "glibc はこの返り値をシステムコールでエラーが起こったと間違って解釈してしま"
9377 "う。\n"
9378 "つまり、 B<fcntl>() の返り値は -1 となり、 I<errno> には (正の) プロセスグ"
9379 "ループID\n"
9380 "が設定されることになる。Linux 固有の B<F_GETOWN_EX> ではこの問題を回避でき"
9381 "る。\n"
9382 "glibc バージョン 2.11 以降では、glibc では B<F_GETOWN_EX> を使って\n"
9383 "B<F_GETOWN> を実装することで、カーネルの B<F_GETOWN> の問題を見えないようにし"
9384 "ている。"
9385
9386 #. type: SS
9387 #: build/C/man2/fcntl.2:1857
9388 #, no-wrap
9389 msgid "F_SETOWN"
9390 msgstr "F_SETOWN"
9391
9392 #. type: Plain text
9393 #: build/C/man2/fcntl.2:1875
9394 msgid ""
9395 "In Linux 2.4 and earlier, there is bug that can occur when an unprivileged "
9396 "process uses B<F_SETOWN> to specify the owner of a socket file descriptor as "
9397 "a process (group) other than the caller.  In this case, B<fcntl>()  can "
9398 "return -1 with I<errno> set to B<EPERM>, even when the owner process (group) "
9399 "is one that the caller has permission to send signals to.  Despite this "
9400 "error return, the file descriptor owner is set, and signals will be sent to "
9401 "the owner."
9402 msgstr ""
9403 "Linux 2.4 以前では、非特権プロセスが B<F_SETOWN> を使って、ソケットのファイル"
9404 "ディスクリプターの所有者に 呼び出し元以外のプロセス (やプロセスグループ) を指"
9405 "定すると 発生するバグがある。この場合、 呼び出し元が所有者として指定したプロ"
9406 "セス (やプロセスグループ) に シグナルを送る許可を持っていたとしても、 "
9407 "B<fcntl>()  が -1 を返し I<errno> に B<EPERM> を設定することがある。 このエ"
9408 "ラーが返ったにもかかわらず、ファイルディスクリプターの所有者 は設定され、シグ"
9409 "ナルはその所有者に送られる。"
9410
9411 #. type: SS
9412 #: build/C/man2/fcntl.2:1875
9413 #, no-wrap
9414 msgid "Deadlock detection"
9415 msgstr "デッドロックの検出"
9416
9417 #. type: Plain text
9418 #: build/C/man2/fcntl.2:1894
9419 msgid ""
9420 "The deadlock-detection algorithm employed by the kernel when dealing with "
9421 "B<F_SETLKW> requests can yield both false negatives (failures to detect "
9422 "deadlocks, leaving a set of deadlocked processes blocked indefinitely)  and "
9423 "false positives (B<EDEADLK> errors when there is no deadlock).  For example, "
9424 "the kernel limits the lock depth of its dependency search to 10 steps, "
9425 "meaning that circular deadlock chains that exceed that size will not be "
9426 "detected.  In addition, the kernel may falsely indicate a deadlock when two "
9427 "or more processes created using the B<clone>(2)  B<CLONE_FILES> flag place "
9428 "locks that appear (to the kernel) to conflict."
9429 msgstr ""
9430 "B<F_SETLKW> 要求を処理する際にカーネルが使用するデッドロック検出アルゴリズム"
9431 "は、 false negative になる場合 (デッドロックを検出できず、 デッドロックになっ"
9432 "たプロセスは無限に停止する) も false positive になる場合 (デッドロックがない"
9433 "場合でも B<EDEADLK> エラーとなる) もある。 例えば、 カーネルは依存関係の検索"
9434 "を行うロックの深さを 10 ステップに限定しているが、 このためこれよりも長い循環"
9435 "するデッドロックは検出されない。 また、 B<clone>(2) の B<CLONE_FILES> フラグ"
9436 "を使って作成された 2 つ以上のプロセスが (カーネルにとって) 衝突するように見え"
9437 "るロックを適用した場合、 カーネルはデッドロックを誤って検出する。"
9438
9439 #.  http://marc.info/?l=linux-kernel&m=119013491707153&w=2
9440 #.  Reconfirmed by Jeff Layton
9441 #.      From: Jeff Layton <jlayton <at> redhat.com>
9442 #.      Subject: Re: Status of fcntl() mandatory locking
9443 #.      Newsgroups: gmane.linux.file-systems
9444 #.      Date: 2014-04-28 10:07:57 GMT
9445 #.      http://thread.gmane.org/gmane.linux.file-systems/84481/focus=84518
9446 #. type: Plain text
9447 #: build/C/man2/fcntl.2:1916
9448 msgid ""
9449 "The Linux implementation of mandatory locking is subject to race conditions "
9450 "which render it unreliable: a B<write>(2)  call that overlaps with a lock "
9451 "may modify data after the mandatory lock is acquired; a B<read>(2)  call "
9452 "that overlaps with a lock may detect changes to data that were made only "
9453 "after a write lock was acquired.  Similar races exist between mandatory "
9454 "locks and B<mmap>(2).  It is therefore inadvisable to rely on mandatory "
9455 "locking."
9456 msgstr ""
9457 "Linux の強制ロックの実装は、 競合条件下で強制ロックが不完全になるような場合が"
9458 "ある。 ロックと重なって実行された B<write>(2)  の呼び出しは強制ロックが獲得さ"
9459 "れた後にもデータを変更することができる。 ロックと重なって実行された "
9460 "B<read>(2)  の呼び出しは強制ロックが獲得された後になって行われたデータの変更"
9461 "を 検出することができる。 同様の競合条件が強制ロックと B<mmap>(2)  の間にも存"
9462 "在する。それゆえ、強制ロックに頼るのはお薦めできない。"
9463
9464 #. type: Plain text
9465 #: build/C/man2/fcntl.2:1924
9466 msgid ""
9467 "B<dup2>(2), B<flock>(2), B<open>(2), B<socket>(2), B<lockf>(3), "
9468 "B<capabilities>(7), B<feature_test_macros>(7)"
9469 msgstr ""
9470 "B<dup2>(2), B<flock>(2), B<open>(2), B<socket>(2), B<lockf>(3), "
9471 "B<capabilities>(7), B<feature_test_macros>(7)"
9472
9473 #. type: Plain text
9474 #: build/C/man2/fcntl.2:1937
9475 msgid ""
9476 "I<locks.txt>, I<mandatory-locking.txt>, and I<dnotify.txt> in the Linux "
9477 "kernel source directory I<Documentation/filesystems/> (on older kernels, "
9478 "these files are directly under the I<Documentation/> directory, and "
9479 "I<mandatory-locking.txt> is called I<mandatory.txt>)"
9480 msgstr ""
9481 "Linux カーネルソースの I<Documentation/filesystems/> ディレクトリ内の "
9482 "I<locks.txt>, I<mandatory-locking.txt>, I<dnotify.txt> (以前のカーネルでは、"
9483 "これらのファイルは I<Documentation/> ディレクトリ直下にあり、 I<mandatory-"
9484 "locking.txt> は I<mandatory.txt> という名前であった)"
9485
9486 #. type: TH
9487 #: build/C/man3/fexecve.3:25
9488 #, no-wrap
9489 msgid "FEXECVE"
9490 msgstr "FEXECVE"
9491
9492 #. type: Plain text
9493 #: build/C/man3/fexecve.3:28
9494 msgid "fexecve - execute program specified via file descriptor"
9495 msgstr "fexecve - ファイルディスクリプターで指定されたプログラムを実行する"
9496
9497 #. type: Plain text
9498 #: build/C/man3/fexecve.3:33
9499 #, no-wrap
9500 msgid "B<int fexecve(int >I<fd>B<, char *const >I<argv>B<[], char *const >I<envp>B<[]);>\n"
9501 msgstr "B<int fexecve(int >I<fd>B<, char *const >I<argv>B<[], char *const >I<envp>B<[]);>\n"
9502
9503 #. type: Plain text
9504 #: build/C/man3/fexecve.3:41
9505 msgid "B<fexecve>():"
9506 msgstr "B<fexecve>():"
9507
9508 #. type: Plain text
9509 #: build/C/man3/fexecve.3:50 build/C/man3/getcwd.3:54
9510 msgid "_GNU_SOURCE"
9511 msgstr "_GNU_SOURCE"
9512
9513 #.  POSIX.1-2008 specifies the O_EXEC flag for open as an alternative,
9514 #.  but Linux doesn't support this flag yet.
9515 #. type: Plain text
9516 #: build/C/man3/fexecve.3:67
9517 msgid ""
9518 "B<fexecve>()  performs the same task as B<execve>(2), with the difference "
9519 "that the file to be executed is specified via a file descriptor, I<fd>, "
9520 "rather than via a pathname.  The file descriptor I<fd> must be opened read-"
9521 "only, and the caller must have permission to execute the file that it refers "
9522 "to."
9523 msgstr ""
9524 "B<fexecve>()  は B<execve>(2)  と同じ作業を行う。違うのは、 実行するファイル"
9525 "を、パス名ではなく、 ファイルディスクリプター I<fd> を用いて指定する点であ"
9526 "る。 ファイルディスクリプター I<fd> は、読み込み専用でオープンされていなけれ"
9527 "ばならず、 呼び出し元はファイルディスクリプターが参照するファイルに対する 実"
9528 "行許可を持っていなければならない。"
9529
9530 #. type: Plain text
9531 #: build/C/man3/fexecve.3:74
9532 msgid ""
9533 "A successful call to B<fexecve>()  never returns.  On error, the function "
9534 "does return, with a result value of -1, and I<errno> is set appropriately."
9535 msgstr ""
9536 "B<fexecve>()  は呼び出しに成功した場合、戻ることはない。 エラーの場合、返り"
9537 "値 -1 で関数が返り、 I<errno> が適切に設定される。"
9538
9539 #. type: Plain text
9540 #: build/C/man3/fexecve.3:78
9541 msgid "Errors are as for B<execve>(2), with the following additions:"
9542 msgstr "エラーは B<execve>(2)  と同じだが、以下のエラーが追加になっている:"
9543
9544 #. type: Plain text
9545 #: build/C/man3/fexecve.3:86
9546 msgid ""
9547 "I<fd> is not a valid file descriptor, or I<argv> is NULL, or I<envp> is NULL."
9548 msgstr ""
9549 "I<fd> が有効なファイルディスクリプターでない。または I<argv> が NULL である。"
9550 "または I<envp> が NULL である。"
9551
9552 #. type: Plain text
9553 #: build/C/man3/fexecve.3:91
9554 msgid "The I</proc> filesystem could not be accessed."
9555 msgstr "I</proc> ファイルシステムにアクセスできなかった。"
9556
9557 #. type: Plain text
9558 #: build/C/man3/fexecve.3:94
9559 msgid "B<fexecve>()  is implemented since glibc 2.3.2."
9560 msgstr "B<fexecve>()  は glibc 2.3.2 以降で実装されている。"
9561
9562 #. type: Plain text
9563 #: build/C/man3/fexecve.3:99
9564 msgid ""
9565 "POSIX.1-2008.  This function is not specified in POSIX.1-2001, and is not "
9566 "widely available on other systems.  It is specified in POSIX.1-2008."
9567 msgstr ""
9568 "POSIX.1-2008.  この関数は POSIX.1-2001 では規定されておらず、 他のシステムで"
9569 "広く利用できるわけではない。 POSIX.1-2008 で規定されている。"
9570
9571 #.  FIXME .
9572 #.  With the addition of the execveat(2), fexecve() can be implemented
9573 #.  even where /proc is unavailable. Review future glibc releases to
9574 #.  see if the implementation is changed to use execveat(2).
9575 #. type: Plain text
9576 #: build/C/man3/fexecve.3:111
9577 msgid ""
9578 "On Linux, B<fexecve>()  is implemented using the B<proc>(5)  filesystem, so "
9579 "I</proc> needs to be mounted and available at the time of the call."
9580 msgstr ""
9581 "Linux では、 B<fexecve>()  は B<proc>(5)  ファイルシステムを使って実装されて"
9582 "いる。 そのため、この関数を呼び出す時点では I</proc> がマウントされて利用可能"
9583 "となっている必要がある。"
9584
9585 #. type: Plain text
9586 #: build/C/man3/fexecve.3:128
9587 msgid ""
9588 "The idea behind B<fexecve>()  is to allow the caller to verify (checksum) "
9589 "the contents of an executable before executing it.  Simply opening the file, "
9590 "checksumming the contents, and then doing an B<execve>(2)  would not "
9591 "suffice, since, between the two steps, the filename, or a directory prefix "
9592 "of the pathname, could have been exchanged (by, for example, modifying the "
9593 "target of a symbolic link).  B<fexecve>()  does not mitigate the problem "
9594 "that the I<contents> of a file could be changed between the checksumming and "
9595 "the call to B<fexecve>(); for that, the solution is to ensure that the "
9596 "permissions on the file prevent it from being modified by malicious users."
9597 msgstr ""
9598 "B<fexecve>() の裏にある考えは、呼び出し元が、ファイルを実行する前に実行ファイ"
9599 "ルの内容を検査 (チェックサムを確認) できるようにすることである。単に、ファイ"
9600 "ルをオープンして内容のチェックサムを検査し、それから B<execve>(2) を行うのは"
9601 "十分ではない。なぜなら、2 つのステップの間で、ファイル名や、パス名のディレク"
9602 "トリの前の方が入れ換えられる可能性があるからだ (例えば、シンボリックリンクの"
9603 "リンク先を変更するなど)。B<fexecve>() は、チェックサムの検査と B<fexecve>() "
9604 "の呼び出しの間で、ファイルのI<内容>を変更できる可能性があるという問題への対策"
9605 "にはならない。この問題に対する対応策は、確実に、ファイルのアクセス許可を設定"
9606 "し、悪意のあるユーザーがファイルを変更できないようにすることである。"
9607
9608 #. type: Plain text
9609 #: build/C/man3/fexecve.3:146
9610 msgid ""
9611 "The natural idiom when using B<fexecve>()  is to set the close-on-exec flag "
9612 "on I<fd>, so that the file descriptor does not leak through to the program "
9613 "that is executed.  This approach is natural for two reasons.  First, it "
9614 "prevents file descriptors being consumed unnecessarily.  (The executed "
9615 "program normally has no need of a file descriptor that refers to the program "
9616 "itself.)  Second, if B<fexecve>()  is used recursively, employing the close-"
9617 "on-exec flag prevents the file descriptor exhaustion that would result from "
9618 "the fact that each step in the recursion would cause one more file "
9619 "descriptor to be passed to the new program.  (But see BUGS.)"
9620 msgstr ""
9621 "B<fexecve>() を使用する際の理にかなった方法は、 I<fd> に close-on-exec フラグ"
9622 "をセットし、 実行するプログラムを通じてそのファイルディスクリプターが外部にも"
9623 "れないようにすることである。 この方法は 2 つの理由から理にかなっている。 1 つ"
9624 "目は、 これにより不必要にファイルディスクリプターが消費されるのを防ぐことがで"
9625 "きる (実行されるプログラムは普通プログラム自身が参照するファイルを参照する必"
9626 "要はない)。 2 つ目は、 B<fexecve>() が再帰的に使用された場合、 close-on-exec "
9627 "フラグを利用することで、 再帰の各ステップで新しいプログラムに一つ余計にファイ"
9628 "ルディスクリプターが渡されることによる、 ファイルディスクリプターの枯渇を防ぐ"
9629 "ことができる (ただし「バグ」を参照)。"
9630
9631 #. type: Plain text
9632 #: build/C/man3/fexecve.3:165
9633 msgid ""
9634 "If I<fd> refers to a script (i.e., it is an executable text file that names "
9635 "a script interpreter with a first line that begins with the characters I<#!"
9636 ">)  and the close-on-exec flag has been set for I<fd>, then B<fexecve>()  "
9637 "fails with the error B<ENOENT>.  This error occurs because, by the time the "
9638 "script interpreter is executed, I<fd> has already been closed because of the "
9639 "close-on-exec flag.  Thus, the close-on-exec flag can't be set on I<fd> if "
9640 "it refers to a script, leading to the problems described in NOTES."
9641 msgstr ""
9642 "I<fd> がスクリプトを参照していて (つまり、 最初の行に文字 I<#!> で始まるスク"
9643 "リプトインタープリターの指示がある実行テキストファイルである)、 I<fd> に "
9644 "close-on-exec フラグがセットされていた場合、 B<fexecve>() はエラー B<ENOENT> "
9645 "で失敗する。 このエラーが起こるのは、 スクリプトインタープリターが実行される"
9646 "時点までに、 close-on-exec フラグにより I<fd> がすでにクローズされてしまって"
9647 "いるからである。 そのため、 スクリプトを参照する場合には、 close-on-exec フラ"
9648 "グを I<fd> にセットすることはできず、 「注意」の節で説明されている問題が起こ"
9649 "り得る。"
9650
9651 #. type: Plain text
9652 #: build/C/man3/fexecve.3:168
9653 msgid "B<execve>(2), B<execveat>(2)"
9654 msgstr "B<execve>(2), B<execveat>(2)"
9655
9656 #. type: TH
9657 #: build/C/man2/flock.2:35
9658 #, no-wrap
9659 msgid "FLOCK"
9660 msgstr "FLOCK"
9661
9662 #. type: TH
9663 #: build/C/man2/flock.2:35 build/C/man2/uname.2:27
9664 #, no-wrap
9665 msgid "2014-09-21"
9666 msgstr "2014-09-21"
9667
9668 #. type: Plain text
9669 #: build/C/man2/flock.2:38
9670 msgid "flock - apply or remove an advisory lock on an open file"
9671 msgstr ""
9672 "flock - オープンされたファイルに対するアドバイザリロックの適用、解除を行う"
9673
9674 #. type: Plain text
9675 #: build/C/man2/flock.2:40
9676 msgid "B<#include E<lt>sys/file.hE<gt>>"
9677 msgstr "B<#include E<lt>sys/file.hE<gt>>"
9678
9679 #. type: Plain text
9680 #: build/C/man2/flock.2:42
9681 msgid "B<int flock(int >I<fd>B<, int >I<operation>B<);>"
9682 msgstr "B<int flock(int >I<fd>B<, int >I<operation>B<);>"
9683
9684 #. type: Plain text
9685 #: build/C/man2/flock.2:48
9686 msgid ""
9687 "Apply or remove an advisory lock on the open file specified by I<fd>.  The "
9688 "argument I<operation> is one of the following:"
9689 msgstr ""
9690 "オープンされたファイルにアドバイザリロック (advisory lock) の適用 や解除を行"
9691 "う。 ファイルは I<fd> で指定する。引き数 I<operation> には以下のいずれか一つ"
9692 "を指定する:"
9693
9694 #. type: TP
9695 #: build/C/man2/flock.2:49
9696 #, no-wrap
9697 msgid "B<LOCK_SH>"
9698 msgstr "B<LOCK_SH>"
9699
9700 #. type: Plain text
9701 #: build/C/man2/flock.2:54
9702 msgid ""
9703 "Place a shared lock.  More than one process may hold a shared lock for a "
9704 "given file at a given time."
9705 msgstr ""
9706 "共有ロックを適用する。 指定したファイルに対して、 一つ以上のプロセスが同時に"
9707 "共有ロックを保持することができる。"
9708
9709 #. type: TP
9710 #: build/C/man2/flock.2:54
9711 #, no-wrap
9712 msgid "B<LOCK_EX>"
9713 msgstr "B<LOCK_EX>"
9714
9715 #. type: Plain text
9716 #: build/C/man2/flock.2:59
9717 msgid ""
9718 "Place an exclusive lock.  Only one process may hold an exclusive lock for a "
9719 "given file at a given time."
9720 msgstr ""
9721 "排他ロックを適用する。 指定したファイルに対して、 ただ一つのプロセスだけが同"
9722 "時に排他ロックを保持することができる。"
9723
9724 #. type: TP
9725 #: build/C/man2/flock.2:59
9726 #, no-wrap
9727 msgid "B<LOCK_UN>"
9728 msgstr "B<LOCK_UN>"
9729
9730 #. type: Plain text
9731 #: build/C/man2/flock.2:62
9732 msgid "Remove an existing lock held by this process."
9733 msgstr "このプロセスが保持している既存のロックを解除する。"
9734
9735 #. type: Plain text
9736 #: build/C/man2/flock.2:71
9737 msgid ""
9738 "A call to B<flock>()  may block if an incompatible lock is held by another "
9739 "process.  To make a nonblocking request, include B<LOCK_NB> (by ORing)  with "
9740 "any of the above operations."
9741 msgstr ""
9742 "B<flock>()  を呼び出したときに、指定したロック種別と異なるロックが別プロセス"
9743 "によって 保持されていると、 B<flock>()  は停止 (block) されることがある。 非"
9744 "停止 (nonblocking) タイプの要求を行うためには、 上記の操作 (operation) に "
9745 "B<LOCK_NB> を論理和の形で指定する。"
9746
9747 #. type: Plain text
9748 #: build/C/man2/flock.2:73
9749 msgid ""
9750 "A single file may not simultaneously have both shared and exclusive locks."
9751 msgstr "一つのファイルに共有ロックと排他ロックを同時に設定することはできない。"
9752
9753 #. type: Plain text
9754 #: build/C/man2/flock.2:88
9755 msgid ""
9756 "Locks created by B<flock>()  are associated with an open file description "
9757 "(see B<open>(2)).  This means that duplicate file descriptors (created by, "
9758 "for example, B<fork>(2)  or B<dup>(2))  refer to the same lock, and this "
9759 "lock may be modified or released using any of these descriptors.  "
9760 "Furthermore, the lock is released either by an explicit B<LOCK_UN> operation "
9761 "on any of these duplicate descriptors, or when all such descriptors have "
9762 "been closed."
9763 msgstr ""
9764 "B<flock>() によって作られるロックは、 オープンファイル記述 (open file "
9765 "description) (B<open>(2) 参照) と関連付けられる。 したがって、ファイルディス"
9766 "クリプターの複製 (B<fork>(2)  や B<dup>(2)  などにより作成される) は同じロッ"
9767 "クを参照し、 これらのファイルディスクリプターのどれを使っても このロックを変"
9768 "更したり解放したりできる。 また、ロックの解放は、 上記の複数のファイルディス"
9769 "クリプターのいずれかに対して 明示的に B<LOCK_UN> 操作を指示した場合か、これら"
9770 "のファイルディスクリプターがすべて 閉じられた場合に行われる。"
9771
9772 #. type: Plain text
9773 #: build/C/man2/flock.2:97
9774 msgid ""
9775 "If a process uses B<open>(2)  (or similar) to obtain more than one "
9776 "descriptor for the same file, these descriptors are treated independently by "
9777 "B<flock>().  An attempt to lock the file using one of these file descriptors "
9778 "may be denied by a lock that the calling process has already placed via "
9779 "another descriptor."
9780 msgstr ""
9781 "あるプロセスが B<open>(2)  (もしくは同様の方法) を使って同じファイルに対して "
9782 "複数のディスクリプターを取得した場合、 B<flock>()  はこれら複数のディスクリプ"
9783 "ターを各々独立のものとして扱う。 これらのファイルディスクリプターの一つを使っ"
9784 "てファイルをロックしようと した際、そのロック要求は、呼び出し元のプロセスがそ"
9785 "のファイルの別の ディスクリプター経由ですでに設定しているロックによって拒否さ"
9786 "れる場合がある。"
9787
9788 #. type: Plain text
9789 #: build/C/man2/flock.2:104
9790 msgid ""
9791 "A process may hold only one type of lock (shared or exclusive)  on a file.  "
9792 "Subsequent B<flock>()  calls on an already locked file will convert an "
9793 "existing lock to the new lock mode."
9794 msgstr ""
9795 "一つのプロセスは、一つのファイルに対して (共有ロックと排他ロックのうち)  いず"
9796 "れか一種類のロックしか設定できない。 既にロックされたファイルに対して "
9797 "B<flock>()  を呼び出すと、既存のロックを新しいロックモードに変更することにな"
9798 "る。"
9799
9800 #. type: Plain text
9801 #: build/C/man2/flock.2:109
9802 msgid "Locks created by B<flock>()  are preserved across an B<execve>(2)."
9803 msgstr ""
9804 "B<flock>()  により作成されたロックは B<execve>(2)  の前後で保存される。"
9805
9806 #. type: Plain text
9807 #: build/C/man2/flock.2:112
9808 msgid ""
9809 "A shared or exclusive lock can be placed on a file regardless of the mode in "
9810 "which the file was opened."
9811 msgstr ""
9812 "共有ロックも排他ロックも、ファイルがどのモードでオープンされたかに 関係なく適"
9813 "用することができる。"
9814
9815 #. type: Plain text
9816 #: build/C/man2/flock.2:122
9817 msgid "I<fd> is not an open file descriptor."
9818 msgstr "I<fd> がオープンされたファイルディスクリプターではない。"
9819
9820 #. type: Plain text
9821 #: build/C/man2/flock.2:127
9822 msgid ""
9823 "While waiting to acquire a lock, the call was interrupted by delivery of a "
9824 "signal caught by a handler; see B<signal>(7)."
9825 msgstr ""
9826 "ロックの獲得を待っている間に、ハンドラーにより捕捉されたシグナルを 受信し、 "
9827 "B<flock>()  が中断された。 B<signal>(7)  参照。"
9828
9829 #. type: Plain text
9830 #: build/C/man2/flock.2:131
9831 msgid "I<operation> is invalid."
9832 msgstr "I<oepration> が無効である。"
9833
9834 #. type: Plain text
9835 #: build/C/man2/flock.2:134
9836 msgid "The kernel ran out of memory for allocating lock records."
9837 msgstr "ロックレコードを割り当てるためのメモリーが不足している。"
9838
9839 #. type: TP
9840 #: build/C/man2/flock.2:134
9841 #, no-wrap
9842 msgid "B<EWOULDBLOCK>"
9843 msgstr "B<EWOULDBLOCK>"
9844
9845 #. type: Plain text
9846 #: build/C/man2/flock.2:139
9847 msgid "The file is locked and the B<LOCK_NB> flag was selected."
9848 msgstr ""
9849 "指定したファイルがロックされており、 B<LOCK_NB> フラグが指定されている。"
9850
9851 #. type: Plain text
9852 #: build/C/man2/flock.2:148
9853 msgid ""
9854 "4.4BSD (the B<flock>()  call first appeared in 4.2BSD).  A version of "
9855 "B<flock>(), possibly implemented in terms of B<fcntl>(2), appears on most "
9856 "UNIX systems."
9857 msgstr ""
9858 "4.4BSD (B<flock>()  コールは 4.2BSD で最初に登場した)。 B<fcntl>(2)  で実装さ"
9859 "れているものなどを含めると、 B<flock>()  の機能はほとんどの UNIX システムで実"
9860 "装されている。"
9861
9862 #.  E.g., according to the flock(2) man page, FreeBSD since at least 5.3
9863 #. type: Plain text
9864 #: build/C/man2/flock.2:171
9865 msgid ""
9866 "Since kernel 2.0, B<flock>()  is implemented as a system call in its own "
9867 "right rather than being emulated in the GNU C library as a call to "
9868 "B<fcntl>(2).  With this implementation, there is no interaction between the "
9869 "types of lock placed by B<flock>()  and B<fcntl>(2), and B<flock>()  does "
9870 "not detect deadlock.  (Note, however, that on some systems, such as the "
9871 "modern BSDs, B<flock>()  and B<fcntl>(2)  locks I<do> interact with one "
9872 "another.)"
9873 msgstr ""
9874 "kernel 2.0 以降では、 B<flock>()  は、GNU C ライブラリでの B<fcntl>(2)  を呼"
9875 "び出してのエミュレーションではなく、 それ自体がシステムコールとして実装されて"
9876 "いる。 この実装では、 B<flock>()  と B<fcntl>(2)  で適用されるロックの種別に"
9877 "は相互作用がなくなり、 B<flock>()  がデッドロックを検出しなくなる。 (ただし、"
9878 "最近の BSD などいくつかのシステムでは、 B<flock>() と B<fcntl>(2) ロックが互"
9879 "いに影響することが「ある」という点に注意すること。)"
9880
9881 #.  commit 5eebde23223aeb0ad2d9e3be6590ff8bbfab0fc2
9882 #. type: Plain text
9883 #: build/C/man2/flock.2:202
9884 msgid ""
9885 "In Linux kernels up to 2.6.11, B<flock>()  does not lock files over NFS (i."
9886 "e., the scope of locks was limited to the local system).  Instead, one could "
9887 "use B<fcntl>(2)  byte-range locking, which does work over NFS, given a "
9888 "sufficiently recent version of Linux and a server which supports locking.  "
9889 "Since Linux 2.6.12, NFS clients support B<flock>()  locks by emulating them "
9890 "as byte-range locks on the entire file.  This means that B<fcntl>(2)  and "
9891 "B<flock>()  locks I<do> interact with one another over NFS.  Since Linux "
9892 "2.6.37, the kernel supports a compatibility mode that allows B<flock>()  "
9893 "locks (and also B<fcntl>(2)  byte region locks) to be treated as local; see "
9894 "the discussion of the I<local_lock> option in B<nfs>(5)."
9895 msgstr ""
9896 "バージョン 2.6.11 以前の Linux カーネルでは、 B<flock>() は NFS 上のファイル"
9897 "のロックを行わない (つまり、ロックの対象はローカルシステムに限定されてい"
9898 "た)。 その代わり、十分に最近のバージョンの Linux とロックをサポートするサー"
9899 "バーであれば、 B<fcntl>(2) のバイト範囲ロックを使うことができた。 "
9900 "B<fcntl>(2) のバイト範囲ロックは NFS 上で動作する。 Linux 2.6.12 以降では、"
9901 "NFS クライアントは、 ファイル全体に対するバイト範囲ロックでエミュレートするこ"
9902 "とで、 B<flock>() ロックをサポートしている。 これは、B<fcntl>(2) と "
9903 "B<flock>() ロックが NFS 上では互いに影響しあうことを意味する。 Linux 2.6.37 "
9904 "以降では、 B<flock>() ロック (と B<fcntl>(2) のバイト範囲ロック) をローカルシ"
9905 "ステムに対するものとして扱う互換性モードが、 カーネルでサポートされている。 "
9906 "B<nfs>(5) の I<local_lock> オプションの議論を参照。"
9907
9908 #. type: Plain text
9909 #: build/C/man2/flock.2:208
9910 msgid ""
9911 "B<flock>()  places advisory locks only; given suitable permissions on a "
9912 "file, a process is free to ignore the use of B<flock>()  and perform I/O on "
9913 "the file."
9914 msgstr ""
9915 "B<flock>()  アドバイザリロックだけを適用する。したがって、ファイルに適切なア"
9916 "クセス権を 付与していれば、プロセスは B<flock>()  の使用に無視して、ファイル"
9917 "への入出力を行うことができる。"
9918
9919 #. type: Plain text
9920 #: build/C/man2/flock.2:221
9921 msgid ""
9922 "B<flock>()  and B<fcntl>(2)  locks have different semantics with respect to "
9923 "forked processes and B<dup>(2).  On systems that implement B<flock>()  using "
9924 "B<fcntl>(2), the semantics of B<flock>()  will be different from those "
9925 "described in this manual page."
9926 msgstr ""
9927 "B<flock>()  と B<fcntl>(2)  は fork されたプロセスと B<dup>(2)  で違った動作"
9928 "をする。 B<flock>()  を B<fcntl>(2)  を使って実装しているシステムでは、 "
9929 "B<flock>()  の動作はこのマニュアルページに記載されているものとは違うだろう。"
9930
9931 #.  Kernel 2.5.21 changed things a little: during lock conversion
9932 #.  it is now the highest priority process that will get the lock -- mtk
9933 #. type: Plain text
9934 #: build/C/man2/flock.2:234
9935 msgid ""
9936 "Converting a lock (shared to exclusive, or vice versa) is not guaranteed to "
9937 "be atomic: the existing lock is first removed, and then a new lock is "
9938 "established.  Between these two steps, a pending lock request by another "
9939 "process may be granted, with the result that the conversion either blocks, "
9940 "or fails if B<LOCK_NB> was specified.  (This is the original BSD behavior, "
9941 "and occurs on many other implementations.)"
9942 msgstr ""
9943 "ロックの変換 (共有ロックから排他ロックへ、もしくはその反対) がアトミックに 行"
9944 "われることは保証されていない: 既存のロックがまず削除され、それから新しい ロッ"
9945 "クが設定される。この 2つのステップの間に、他のプロセスからの処理待ちの ロック"
9946 "要求が認められるかもしれず、結果として変換は停止 (block) したり、 "
9947 "(B<LOCK_NB> が指定された場合には) 失敗したりする。 (これは元々の BSD の動作で"
9948 "あり、多くの他の実装でも起こる。)"
9949
9950 #. type: Plain text
9951 #: build/C/man2/flock.2:243
9952 msgid ""
9953 "B<flock>(1), B<close>(2), B<dup>(2), B<execve>(2), B<fcntl>(2), B<fork>(2), "
9954 "B<open>(2), B<lockf>(3)"
9955 msgstr ""
9956 "B<flock>(1), B<close>(2), B<dup>(2), B<execve>(2), B<fcntl>(2), B<fork>(2), "
9957 "B<open>(2), B<lockf>(3)"
9958
9959 #. type: Plain text
9960 #: build/C/man2/flock.2:248
9961 msgid ""
9962 "I<Documentation/filesystems/locks.txt> in the Linux kernel source tree "
9963 "(I<Documentation/locks.txt> in older kernels)"
9964 msgstr ""
9965 "Linux カーネルソース内の I<Documentation/filesystems/locks.txt> (以前のカーネ"
9966 "ルでは I<Documentation/locks.txt>)"
9967
9968 #. type: TH
9969 #: build/C/man2/fork.2:39
9970 #, no-wrap
9971 msgid "FORK"
9972 msgstr "FORK"
9973
9974 #. type: TH
9975 #: build/C/man2/fork.2:39 build/C/man3/fpathconf.3:41 build/C/man2/swapon.2:42
9976 #, no-wrap
9977 msgid "2014-05-28"
9978 msgstr "2014-05-28"
9979
9980 #. type: Plain text
9981 #: build/C/man2/fork.2:42
9982 msgid "fork - create a child process"
9983 msgstr "fork - 子プロセスを生成する"
9984
9985 #. type: Plain text
9986 #: build/C/man2/fork.2:46
9987 msgid "B<pid_t fork(void);>"
9988 msgstr "B<pid_t fork(void);>"
9989
9990 #. type: Plain text
9991 #: build/C/man2/fork.2:52
9992 msgid ""
9993 "B<fork>()  creates a new process by duplicating the calling process.  The "
9994 "new process, referred to as the I<child>, is an exact duplicate of the "
9995 "calling process, referred to as the I<parent>, except for the following "
9996 "points:"
9997 msgstr ""
9998 "B<fork>()  は呼び出し元プロセスを複製して新しいプロセスを生成する。 I<child> "
9999 "で参照される新しいプロセスは、以下の点を除き、 I<parent> で参照される呼び出し"
10000 "元プロセスの完全な複製である:"
10001
10002 #. type: Plain text
10003 #: build/C/man2/fork.2:56
10004 msgid ""
10005 "The child has its own unique process ID, and this PID does not match the ID "
10006 "of any existing process group (B<setpgid>(2))."
10007 msgstr ""
10008 "子プロセスは独自のプロセス ID を持ち、 この PID は既存のどのプロセスグループ "
10009 "(B<setpgid>(2))  の ID とも一致しない。"
10010
10011 #. type: Plain text
10012 #: build/C/man2/fork.2:58
10013 msgid "The child's parent process ID is the same as the parent's process ID."
10014 msgstr "子プロセスの親プロセス ID は、親プロセスのプロセス ID と同じである。"
10015
10016 #. type: Plain text
10017 #: build/C/man2/fork.2:62
10018 msgid ""
10019 "The child does not inherit its parent's memory locks (B<mlock>(2), "
10020 "B<mlockall>(2))."
10021 msgstr ""
10022 "子プロセスは親プロセスのメモリーロック (B<mlock>(2), B<mlockall>(2))  を引き"
10023 "継がない。"
10024
10025 #. type: Plain text
10026 #: build/C/man2/fork.2:68
10027 msgid ""
10028 "Process resource utilizations (B<getrusage>(2))  and CPU time counters "
10029 "(B<times>(2))  are reset to zero in the child."
10030 msgstr ""
10031 "プロセスの資源利用量 (B<getrusage>(2))  と CPU タイムカウンター "
10032 "(B<times>(2))  が、子プロセスでは 0 にリセットされる。"
10033
10034 #. type: Plain text
10035 #: build/C/man2/fork.2:71
10036 msgid ""
10037 "The child's set of pending signals is initially empty (B<sigpending>(2))."
10038 msgstr ""
10039 "子プロセスの処理待ちのシグナルの集合 (B<sigpending>(2))  は、初期状態では空に"
10040 "なる。"
10041
10042 #. type: Plain text
10043 #: build/C/man2/fork.2:74
10044 msgid ""
10045 "The child does not inherit semaphore adjustments from its parent "
10046 "(B<semop>(2))."
10047 msgstr "子プロセスは親プロセスからセマフォ調整 (B<semop>(2))  を引き継がない。"
10048
10049 #. type: Plain text
10050 #: build/C/man2/fork.2:82
10051 msgid ""
10052 "The child does not inherit process-associated record locks from its parent "
10053 "(B<fcntl>(2)).  (On the other hand, it does inherit B<fcntl>(2)  open file "
10054 "description locks and B<flock>(2)  locks from its parent.)"
10055 msgstr ""
10056 "子プロセスは親プロセスからプロセスに関連付けられたレコードロックを引き継がな"
10057 "い (B<fcntl>(2))。 (一方、子プロセスは親プロセスから B<fcntl>(2) オープンファ"
10058 "イル記述ロックと B<flock>(2) ロックを引き継ぐ。)"
10059
10060 #. type: Plain text
10061 #: build/C/man2/fork.2:87
10062 msgid ""
10063 "The child does not inherit timers from its parent (B<setitimer>(2), "
10064 "B<alarm>(2), B<timer_create>(2))."
10065 msgstr ""
10066 "子プロセスは親プロセスからタイマー (B<setitimer>(2), B<alarm>(2), "
10067 "B<timer_create>(2))  を引き継がない。"
10068
10069 #. type: Plain text
10070 #: build/C/man2/fork.2:94
10071 msgid ""
10072 "The child does not inherit outstanding asynchronous I/O operations from its "
10073 "parent (B<aio_read>(3), B<aio_write>(3)), nor does it inherit any "
10074 "asynchronous I/O contexts from its parent (see B<io_setup>(2))."
10075 msgstr ""
10076 "子プロセスは親プロセスから主だった非同期 I/O 操作を引き継がない "
10077 "(B<aio_read>(3), B<aio_write>(3)  参照)。 また、親プロセスから非同期 I/O コン"
10078 "テキストを引き継がない (B<io_setup>(2)  参照)。"
10079
10080 #. type: Plain text
10081 #: build/C/man2/fork.2:99
10082 msgid ""
10083 "The process attributes in the preceding list are all specified in "
10084 "POSIX.1-2001.  The parent and child also differ with respect to the "
10085 "following Linux-specific process attributes:"
10086 msgstr ""
10087 "上記のリストにあるプロセス属性は、POSIX.1-2001 で全て指定されている。 親プロ"
10088 "セスと子プロセスは、以下の Linux 固有のプロセス属性も異なる:"
10089
10090 #. type: Plain text
10091 #: build/C/man2/fork.2:106
10092 msgid ""
10093 "The child does not inherit directory change notifications (dnotify)  from "
10094 "its parent (see the description of B<F_NOTIFY> in B<fcntl>(2))."
10095 msgstr ""
10096 "子プロセスは親プロセスからディレクトリ変更通知 (dnotify)  (B<fcntl>(2)  にお"
10097 "ける B<F_NOTIFY> の説明を参照) を引き継がない。"
10098
10099 #. type: Plain text
10100 #: build/C/man2/fork.2:112
10101 msgid ""
10102 "The B<prctl>(2)  B<PR_SET_PDEATHSIG> setting is reset so that the child does "
10103 "not receive a signal when its parent terminates."
10104 msgstr ""
10105 "B<prctl>(2)  の B<PR_SET_PDEATHSIG> の設定がリセットされ、子プロセスは親プロ"
10106 "セスが終了したときに シグナルを受信しない。"
10107
10108 #. type: Plain text
10109 #: build/C/man2/fork.2:119
10110 msgid ""
10111 "The default timer slack value is set to the parent's current timer slack "
10112 "value.  See the description of B<PR_SET_TIMERSLACK> in B<prctl>(2)."
10113 msgstr ""
10114 "timer slack value のデフォルト値には、親プロセスの現在の timer slack value が"
10115 "設定される。 B<prctl>(2) の B<PR_SET_TIMERSLACK> の説明を参照。"
10116
10117 #. type: Plain text
10118 #: build/C/man2/fork.2:125
10119 msgid ""
10120 "Memory mappings that have been marked with the B<madvise>(2)  "
10121 "B<MADV_DONTFORK> flag are not inherited across a B<fork>()."
10122 msgstr ""
10123 "B<madvise>(2)  の B<MADV_DONTFORK> フラグでマークされたメモリーマッピング"
10124 "は、 B<fork>()  によって引き継がれない。"
10125
10126 #. type: Plain text
10127 #: build/C/man2/fork.2:130
10128 msgid ""
10129 "The termination signal of the child is always B<SIGCHLD> (see B<clone>(2))."
10130 msgstr ""
10131 "子プロセスの終了シグナルは常に B<SIGCHLD> である (B<clone>(2)  を参照)。"
10132
10133 #. type: Plain text
10134 #: build/C/man2/fork.2:136
10135 msgid ""
10136 "The port access permission bits set by B<ioperm>(2)  are not inherited by "
10137 "the child; the child must turn on any bits that it requires using "
10138 "B<ioperm>(2)."
10139 msgstr ""
10140 "B<ioperm>(2) で設定されるポートアクセス許可ビットは、子プロセスには継承されな"
10141 "い。子プロセスでは、 B<ioperm>(2) を使って必要なビットをセットしなければなら"
10142 "ない。"
10143
10144 #. type: Plain text
10145 #: build/C/man2/fork.2:147
10146 msgid ""
10147 "The child process is created with a single thread\\(emthe one that called "
10148 "B<fork>().  The entire virtual address space of the parent is replicated in "
10149 "the child, including the states of mutexes, condition variables, and other "
10150 "pthreads objects; the use of B<pthread_atfork>(3)  may be helpful for "
10151 "dealing with problems that this can cause."
10152 msgstr ""
10153 "子プロセスはシングルスレッドで生成される。つまり、 B<fork>()  を呼び出したス"
10154 "レッドとなる。 親プロセスの仮想アドレス空間全体が子プロセスに複製される。 こ"
10155 "れにはミューテックス (mutex) の状態・条件変数・ pthread オブジェクトが含まれ"
10156 "る。 これが引き起こす問題を扱うには、 B<pthread_atfork>(3)  を使うと良いだろ"
10157 "う。"
10158
10159 #. type: Plain text
10160 #: build/C/man2/fork.2:161
10161 msgid ""
10162 "The child inherits copies of the parent's set of open file descriptors.  "
10163 "Each file descriptor in the child refers to the same open file description "
10164 "(see B<open>(2))  as the corresponding file descriptor in the parent.  This "
10165 "means that the two descriptors share open file status flags, current file "
10166 "offset, and signal-driven I/O attributes (see the description of B<F_SETOWN> "
10167 "and B<F_SETSIG> in B<fcntl>(2))."
10168 msgstr ""
10169 "子プロセスは親プロセスが持つ オープンファイルディスクリプターの集合のコピーを"
10170 "引き継ぐ。 子プロセスの各ファイルディスクリプターは、 親プロセスのファイル"
10171 "ディスクリプターに対応する 同じオープンファイル記述 (file description) を参照"
10172 "する (B<open>(2)  を参照)。 これは 2 つのディスクリプターが、ファイル状態フラ"
10173 "グ・ 現在のファイルオフセット、シグナル駆動 (signal-driven) I/O 属性 "
10174 "(B<fcntl>(2)  における B<F_SETOWN>, B<F_SETSIG> の説明を参照) を共有すること"
10175 "を意味する。"
10176
10177 #. type: Plain text
10178 #: build/C/man2/fork.2:170
10179 msgid ""
10180 "The child inherits copies of the parent's set of open message queue "
10181 "descriptors (see B<mq_overview>(7)).  Each descriptor in the child refers to "
10182 "the same open message queue description as the corresponding descriptor in "
10183 "the parent.  This means that the two descriptors share the same flags "
10184 "(I<mq_flags>)."
10185 msgstr ""
10186 "子プロセスは親プロセスが持つオープンメッセージキューディスクリプター "
10187 "(B<mq_overview>(7)  を参照) の集合のコピーを引き継ぐ。 子プロセスの各ディスク"
10188 "リプターは、 親プロセスのディスクリプターに対応する 同じオープンメッセージ"
10189 "キューディスクリプターを参照する。 これは 2 つのディスクリプターが同じフラグ "
10190 "(I<mq_flags>)  を共有することを意味する。"
10191
10192 #. type: Plain text
10193 #: build/C/man2/fork.2:178
10194 msgid ""
10195 "The child inherits copies of the parent's set of open directory streams (see "
10196 "B<opendir>(3)).  POSIX.1-2001 says that the corresponding directory streams "
10197 "in the parent and child I<may> share the directory stream positioning; on "
10198 "Linux/glibc they do not."
10199 msgstr ""
10200 "子プロセスは、親プロセスのオープン済みのディレクトリストリームの集合 "
10201 "(B<opendir>(3)  参照) のコピーを継承する。 POSIX.1-2001 では、親プロセスと子"
10202 "プロセス間の対応するディレクトリストリーム はディレクトリストリームの位置 "
10203 "(positioning) を共有してもよいとされている。 Linux/glibc ではディレクトリスト"
10204 "リームの位置の共有は行われていない。"
10205
10206 #. type: Plain text
10207 #: build/C/man2/fork.2:185
10208 msgid ""
10209 "On success, the PID of the child process is returned in the parent, and 0 is "
10210 "returned in the child.  On failure, -1 is returned in the parent, no child "
10211 "process is created, and I<errno> is set appropriately."
10212 msgstr ""
10213 "成功した場合、親プロセスには子プロセスの PID が返され、 子プロセスには 0 が返"
10214 "される。 失敗した場合、親プロセスに -1 が返され、子プロセスは生成されず、 "
10215 "I<errno> が適切に設定される。"
10216
10217 #. type: Plain text
10218 #: build/C/man2/fork.2:191
10219 msgid ""
10220 "B<fork>()  cannot allocate sufficient memory to copy the parent's page "
10221 "tables and allocate a task structure for the child."
10222 msgstr ""
10223 "親プロセスのページテーブルのコピーと 子プロセスのタスク構造に生成に必要なメモ"
10224 "リーを B<fork>()  が割り当てることができなかった。"
10225
10226 #.  NOTE! The following should match the description in pthread_create(3)
10227 #. type: Plain text
10228 #: build/C/man2/fork.2:209
10229 msgid ""
10230 "A system-imposed limit on the number of threads was encountered.  There are "
10231 "a number of limits that may trigger this error: the B<RLIMIT_NPROC> soft "
10232 "resource limit (set via B<setrlimit>(2)), which limits the number of "
10233 "processes and threads for a real user ID, was reached; the kernel's system-"
10234 "wide limit on the number of processes and threads, I</proc/sys/kernel/"
10235 "threads-max>, was reached (see B<proc>(5)); or the maximum number of PIDs, "
10236 "I</proc/sys/kernel/pid_max>, was reached (see B<proc>(5))."
10237 msgstr ""
10238 "システムで設定されたスレッド数の上限に達していた。 このエラーの原因となる上限"
10239 "値はいくつかある。 実ユーザー ID 当たりのプロセス数とスレッド数の上限である、"
10240 "ソフトリソース上限 B<RLIMIT_NPROC> に達していた (B<setrlimit>(2) で設定でき"
10241 "る)。 カーネルのシステム全体のプロセスとスレッドの上限数である I</proc/sys/"
10242 "kernel/threads-max> が達していた (B<proc>(5) 参照)。 PID の最大値 I</proc/"
10243 "sys/kernel/pid_max> に達していた (B<proc>(5) 参照)。"
10244
10245 #. type: Plain text
10246 #: build/C/man2/fork.2:216
10247 msgid ""
10248 "The caller is operating under the B<SCHED_DEADLINE> scheduling policy and "
10249 "does not have the reset-on-fork flag set.  See B<sched>(7)."
10250 msgstr ""
10251 "呼び出し元は、スケジューリングポリシー B<SCHED_DEADLINE> で動作しており、か"
10252 "つ reset-on-fork フラグがセットされていない。 B<sched>(7) 参照。"
10253
10254 #. type: Plain text
10255 #: build/C/man2/fork.2:220
10256 msgid ""
10257 "B<fork>()  failed to allocate the necessary kernel structures because memory "
10258 "is tight."
10259 msgstr ""
10260 "メモリーが足りないために、 B<fork>()  は必要なカーネル構造体を割り当てること"
10261 "ができなかった。"
10262
10263 #.  e.g., arm (optionally), blackfin, c6x, frv, h8300, microblaze, xtensa
10264 #. type: Plain text
10265 #: build/C/man2/fork.2:226
10266 msgid ""
10267 "B<fork>()  is not supported on this platform (for example, hardware without "
10268 "a Memory-Management Unit)."
10269 msgstr ""
10270 "B<fork>() はこのプラットフォームではサポートされていない\n"
10271 "(例えば、メモリー管理ユニット (MMU) がないハードウェア)。"
10272
10273 #. type: Plain text
10274 #: build/C/man2/fork.2:235
10275 msgid ""
10276 "Under Linux, B<fork>()  is implemented using copy-on-write pages, so the "
10277 "only penalty that it incurs is the time and memory required to duplicate the "
10278 "parent's page tables, and to create a unique task structure for the child."
10279 msgstr ""
10280 "Linux では、 B<fork>()  を 書き込み時コピー (copy-on-write) ページを用いて実"
10281 "装している。 したがって、fork を行うことの唯一のデメリットは、 親プロセスの"
10282 "ページテーブルを複製と 子プロセス自身のタスク構造の作成のための時間とメモリー"
10283 "が必要なことである。"
10284
10285 #.  nptl/sysdeps/unix/sysv/linux/fork.c
10286 #.  and does some magic to ensure that getpid(2) returns the right value.
10287 #. type: Plain text
10288 #: build/C/man2/fork.2:259
10289 msgid ""
10290 "Since version 2.3.3, rather than invoking the kernel's B<fork>()  system "
10291 "call, the glibc B<fork>()  wrapper that is provided as part of the NPTL "
10292 "threading implementation invokes B<clone>(2)  with flags that provide the "
10293 "same effect as the traditional system call.  (A call to B<fork>()  is "
10294 "equivalent to a call to B<clone>(2)  specifying I<flags> as just "
10295 "B<SIGCHLD>.)  The glibc wrapper invokes any fork handlers that have been "
10296 "established using B<pthread_atfork>(3)."
10297 msgstr ""
10298 "glibc 2.3.3 以降では、 NPTL スレッド実装の一部として提供されている\n"
10299 "glibc のB<fork>() ラッパー関数は、 カーネルの B<fork>() システムコール\n"
10300 "を起動するのではなく、B<clone>(2) を起動する。\n"
10301 "B<clone>(2) に渡すフラグとして、伝統的な B<fork>() システムコールと\n"
10302 "同じ効果が得られるようなフラグが指定される (B<fork>() の呼び出しは、\n"
10303 "I<flags> に B<SIGCHLD> だけを指定して B<clone>(2) を呼び出すのと等価であ"
10304 "る)。\n"
10305 "glibc のラッパー関数は B<pthread_atfork>(3) を使って設定されている\n"
10306 "任意の fork ハンドラーを起動する。"
10307
10308 #. type: Plain text
10309 #: build/C/man2/fork.2:264
10310 msgid "See B<pipe>(2)  and B<wait>(2)."
10311 msgstr "B<pipe>(2)  および B<wait>(2)  を参照。"
10312
10313 #. type: Plain text
10314 #: build/C/man2/fork.2:275
10315 msgid ""
10316 "B<clone>(2), B<execve>(2), B<exit>(2), B<setrlimit>(2), B<unshare>(2), "
10317 "B<vfork>(2), B<wait>(2), B<daemon>(3), B<capabilities>(7), B<credentials>(7)"
10318 msgstr ""
10319 "B<clone>(2), B<execve>(2), B<exit>(2), B<setrlimit>(2), B<unshare>(2), "
10320 "B<vfork>(2), B<wait>(2), B<daemon>(3), B<capabilities>(7), B<credentials>(7)"
10321
10322 #. type: TH
10323 #: build/C/man3/fpathconf.3:41
10324 #, no-wrap
10325 msgid "FPATHCONF"
10326 msgstr "FPATHCONF"
10327
10328 #. type: Plain text
10329 #: build/C/man3/fpathconf.3:44
10330 msgid "fpathconf, pathconf - get configuration values for files"
10331 msgstr "fpathconf, pathconf - ファイルの設定値を取得する"
10332
10333 #. type: Plain text
10334 #: build/C/man3/fpathconf.3:49
10335 #, no-wrap
10336 msgid "B<long fpathconf(int >I<fd>B<, int >I<name>B<);>\n"
10337 msgstr "B<long fpathconf(int >I<fd>B<, int >I<name>B<);>\n"
10338
10339 #. type: Plain text
10340 #: build/C/man3/fpathconf.3:51
10341 #, no-wrap
10342 msgid "B<long pathconf(const char *>I<path>B<, int >I<name>B<);>\n"
10343 msgstr "B<long pathconf(const char *>I<path>B<, int >I<name>B<);>\n"
10344
10345 #. type: Plain text
10346 #: build/C/man3/fpathconf.3:58
10347 msgid ""
10348 "B<fpathconf>()  gets a value for the configuration option I<name> for the "
10349 "open file descriptor I<fd>."
10350 msgstr ""
10351 "B<fpathconf>()  はオープンされているファイルディスクリプター I<fd> に対して設"
10352 "定されているオプション I<name> の値を取得する。"
10353
10354 #. type: Plain text
10355 #: build/C/man3/fpathconf.3:64
10356 msgid ""
10357 "B<pathconf>()  gets a value for configuration option I<name> for the "
10358 "filename I<path>."
10359 msgstr ""
10360 "B<pathconf>()  はファイル名 I<path> に対して設定されているオプション I<name> "
10361 "の値を取得する。"
10362
10363 #. type: Plain text
10364 #: build/C/man3/fpathconf.3:73
10365 msgid ""
10366 "The corresponding macros defined in I<E<lt>unistd.hE<gt>> are minimum "
10367 "values; if an application wants to take advantage of values which may "
10368 "change, a call to B<fpathconf>()  or B<pathconf>()  can be made, which may "
10369 "yield more liberal results."
10370 msgstr ""
10371 "対応するマクロのうち I<E<lt>unistd.hE<gt>> で定義されているものは最小値であ"
10372 "る。アプリケーションによってはこれらの 値を変更してより有利な動作を行おうとす"
10373 "るものがある。この場合でも B<fpathconf>()  または B<pathconf>()  は呼び出すこ"
10374 "とができる。この場合はより大きな値が返ることになろう。"
10375
10376 #. type: Plain text
10377 #: build/C/man3/fpathconf.3:78
10378 msgid ""
10379 "Setting I<name> equal to one of the following constants returns the "
10380 "following configuration options:"
10381 msgstr ""
10382 "I<name> を以下の定数のどれかにすると、対応する設定オプションが返される。"
10383
10384 #. type: TP
10385 #: build/C/man3/fpathconf.3:78
10386 #, no-wrap
10387 msgid "B<_PC_LINK_MAX>"
10388 msgstr "B<_PC_LINK_MAX>"
10389
10390 #. type: Plain text
10391 #: build/C/man3/fpathconf.3:88
10392 msgid ""
10393 "returns the maximum number of links to the file.  If I<fd> or I<path> refer "
10394 "to a directory, then the value applies to the whole directory.  The "
10395 "corresponding macro is B<_POSIX_LINK_MAX>."
10396 msgstr ""
10397 "ファイルへのリンクの最大数を返す。 I<fd> または I<path> がディレクトリの場合"
10398 "は、この値はディレクトリ全体に適用される。対応する マクロは "
10399 "B<_POSIX_LINK_MAX> である。"
10400
10401 #. type: TP
10402 #: build/C/man3/fpathconf.3:88
10403 #, no-wrap
10404 msgid "B<_PC_MAX_CANON>"
10405 msgstr "B<_PC_MAX_CANON>"
10406
10407 #. type: Plain text
10408 #: build/C/man3/fpathconf.3:97
10409 msgid ""
10410 "returns the maximum length of a formatted input line, where I<fd> or I<path> "
10411 "must refer to a terminal.  The corresponding macro is B<_POSIX_MAX_CANON>."
10412 msgstr ""
10413 "フォーマット付き入力行の最大長を返す。このとき I<fd> または I<path> は端末を"
10414 "参照していなければならない。 対応するマクロは B<_POSIX_MAX_CANON> である。"
10415
10416 #. type: TP
10417 #: build/C/man3/fpathconf.3:97
10418 #, no-wrap
10419 msgid "B<_PC_MAX_INPUT>"
10420 msgstr "B<_PC_MAX_INPUT>"
10421
10422 #. type: Plain text
10423 #: build/C/man3/fpathconf.3:106
10424 msgid ""
10425 "returns the maximum length of an input line, where I<fd> or I<path> must "
10426 "refer to a terminal.  The corresponding macro is B<_POSIX_MAX_INPUT>."
10427 msgstr ""
10428 "入力行の最大長を返す。このとき I<fd> または I<path> は端末を参照していなけれ"
10429 "ばならない。 対応するマクロは B<_POSIX_MAX_INPUT> である。"
10430
10431 #. type: TP
10432 #: build/C/man3/fpathconf.3:106
10433 #, no-wrap
10434 msgid "B<_PC_NAME_MAX>"
10435 msgstr "B<_PC_NAME_MAX>"
10436
10437 #. type: Plain text
10438 #: build/C/man3/fpathconf.3:115
10439 msgid ""
10440 "returns the maximum length of a filename in the directory I<path> or I<fd> "
10441 "that the process is allowed to create.  The corresponding macro is "
10442 "B<_POSIX_NAME_MAX>."
10443 msgstr ""
10444 "ディレクトリ I<path> または I<fd> 内に、そのプロセスが作成することができる"
10445 "ファイル名の最大長を返す。 対応するマクロは B<_POSIX_NAME_MAX> である。"
10446
10447 #. type: TP
10448 #: build/C/man3/fpathconf.3:115
10449 #, no-wrap
10450 msgid "B<_PC_PATH_MAX>"
10451 msgstr "B<_PC_PATH_MAX>"
10452
10453 #. type: Plain text
10454 #: build/C/man3/fpathconf.3:124
10455 msgid ""
10456 "returns the maximum length of a relative pathname when I<path> or I<fd> is "
10457 "the current working directory.  The corresponding macro is "
10458 "B<_POSIX_PATH_MAX>."
10459 msgstr ""
10460 "I<path> または I<fd> がカレントディレクトリの場合、相対パス名の最大長を返"
10461 "す。 対応するマクロは B<_POSIX_PATH_MAX> である。"
10462
10463 #. type: TP
10464 #: build/C/man3/fpathconf.3:124
10465 #, no-wrap
10466 msgid "B<_PC_PIPE_BUF>"
10467 msgstr "B<_PC_PIPE_BUF>"
10468
10469 #. type: Plain text
10470 #: build/C/man3/fpathconf.3:133
10471 msgid ""
10472 "returns the size of the pipe buffer, where I<fd> must refer to a pipe or "
10473 "FIFO and I<path> must refer to a FIFO.  The corresponding macro is "
10474 "B<_POSIX_PIPE_BUF>."
10475 msgstr ""
10476 "パイプ (pipe) バッファーのサイズを返す。このとき I<fd> はパイプか FIFO を参照"
10477 "していなければならず、 I<path> は FIFO を参照していなければならない。 対応す"
10478 "るマクロは B<_POSIX_PIPE_BUF> である。"
10479
10480 #. type: TP
10481 #: build/C/man3/fpathconf.3:133
10482 #, no-wrap
10483 msgid "B<_PC_CHOWN_RESTRICTED>"
10484 msgstr "B<_PC_CHOWN_RESTRICTED>"
10485
10486 #. type: Plain text
10487 #: build/C/man3/fpathconf.3:146
10488 msgid ""
10489 "returns nonzero if the B<chown>(2)  call may not be used on this file.  If "
10490 "I<fd> or I<path> refer to a directory, then this applies to all files in "
10491 "that directory.  The corresponding macro is B<_POSIX_CHOWN_RESTRICTED>."
10492 msgstr ""
10493 "このファイルに対する B<chown>(2)  の呼び出しが許されていない場合には 0 以外の"
10494 "値を返す。 I<fd> または I<path> がディレクトリを参照している場合は、この制限"
10495 "はそのディレクトリのすべて のファイルに適用される。 対応するマクロは "
10496 "B<_POSIX_CHOWN_RESTRICTED> である。"
10497
10498 #. type: TP
10499 #: build/C/man3/fpathconf.3:146
10500 #, no-wrap
10501 msgid "B<_PC_NO_TRUNC>"
10502 msgstr "B<_PC_NO_TRUNC>"
10503
10504 #. type: Plain text
10505 #: build/C/man3/fpathconf.3:153
10506 msgid ""
10507 "returns nonzero if accessing filenames longer than B<_POSIX_NAME_MAX> "
10508 "generates an error.  The corresponding macro is B<_POSIX_NO_TRUNC>."
10509 msgstr ""
10510 "アクセス中のファイル名が B<_POSIX_NAME_MAX> よりも長く、エラーとなる場合には "
10511 "0 以外の値を返す。 対応するマクロは B<_POSIX_NAME_MAX> である。"
10512
10513 #. type: TP
10514 #: build/C/man3/fpathconf.3:153
10515 #, no-wrap
10516 msgid "B<_PC_VDISABLE>"
10517 msgstr "B<_PC_VDISABLE>"
10518
10519 #. type: Plain text
10520 #: build/C/man3/fpathconf.3:160
10521 msgid ""
10522 "returns nonzero if special character processing can be disabled, where I<fd> "
10523 "or I<path> must refer to a terminal."
10524 msgstr ""
10525 "特殊文字 (special character) の処理が許されていない場合は 0 以外の値を 返す。"
10526 "このとき I<fd> または I<path> は端末を参照していなければならない。"
10527
10528 #. type: Plain text
10529 #: build/C/man3/fpathconf.3:169
10530 msgid ""
10531 "The limit is returned, if one exists.  If the system does not have a limit "
10532 "for the requested resource, -1 is returned, and I<errno> is unchanged.  If "
10533 "there is an error, -1 is returned, and I<errno> is set to reflect the nature "
10534 "of the error."
10535 msgstr ""
10536 "(存在していれば) 制限値が返される。要求されたリソースへのシステムの制 限が存"
10537 "在していなければ -1 が返され、 I<errno> は変更されない。エラーが起こった場合"
10538 "には -1 が返され、 I<errno> がエラーに対応した値に設定される。"
10539
10540 #. type: Plain text
10541 #: build/C/man3/fpathconf.3:177
10542 msgid ""
10543 "Files with name lengths longer than the value returned for I<name> equal to "
10544 "B<_PC_NAME_MAX> may exist in the given directory."
10545 msgstr ""
10546 "I<name> に B<_PC_NAME_MAX> を入れて返された値よりも長いファイル名を持つファイ"
10547 "ルが、与えられたディ レクトリに存在するかもしれない。"
10548
10549 #. type: Plain text
10550 #: build/C/man3/fpathconf.3:180 build/C/man3/sysconf.3:338
10551 msgid ""
10552 "Some returned values may be huge; they are not suitable for allocating "
10553 "memory."
10554 msgstr ""
10555 "いくつかの返り値はとても大きくなることがある。これらを使って メモリーの割り当"
10556 "てを行うのは適当ではない。"
10557
10558 #. type: Plain text
10559 #: build/C/man3/fpathconf.3:186
10560 msgid "B<getconf>(1), B<open>(2), B<statfs>(2), B<confstr>(3), B<sysconf>(3)"
10561 msgstr "B<getconf>(1), B<open>(2), B<statfs>(2), B<confstr>(3), B<sysconf>(3)"
10562
10563 #. type: TH
10564 #: build/C/man2/fsync.2:38
10565 #, no-wrap
10566 msgid "FSYNC"
10567 msgstr "FSYNC"
10568
10569 #. type: Plain text
10570 #: build/C/man2/fsync.2:41
10571 msgid ""
10572 "fsync, fdatasync - synchronize a file's in-core state with storage device"
10573 msgstr ""
10574 "fsync - メモリー上にあるファイルの内容をストレージデバイス上のものと同期させ"
10575 "る"
10576
10577 #. type: Plain text
10578 #: build/C/man2/fsync.2:45
10579 msgid "B<int fsync(int >I<fd>B<);>"
10580 msgstr "B<int fsync(int >I<fd>B<);>"
10581
10582 #. type: Plain text
10583 #: build/C/man2/fsync.2:47
10584 msgid "B<int fdatasync(int >I<fd>B<);>"
10585 msgstr "B<int fdatasync(int >I<fd>B<);>"
10586
10587 #. type: Plain text
10588 #: build/C/man2/fsync.2:55
10589 msgid "B<fsync>(): _BSD_SOURCE || _XOPEN_SOURCE"
10590 msgstr "B<fsync>(): _BSD_SOURCE || _XOPEN_SOURCE"
10591
10592 #.  _POSIX_C_SOURCE\ >=\ 200112L only since glibc 2.8
10593 #. type: Plain text
10594 #: build/C/man2/fsync.2:58
10595 #, no-wrap
10596 msgid "         || /* since glibc 2.8: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L\n"
10597 msgstr "         || /* glibc 2.8 以降では: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L\n"
10598
10599 #. type: Plain text
10600 #: build/C/man2/fsync.2:61
10601 msgid ""
10602 "B<fdatasync>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L || _XOPEN_SOURCE\\ E<gt>="
10603 "\\ 500"
10604 msgstr ""
10605 "B<fdatasync>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L || _XOPEN_SOURCE\\ E<gt>="
10606 "\\ 500"
10607
10608 #. type: Plain text
10609 #: build/C/man2/fsync.2:74
10610 msgid ""
10611 "B<fsync>()  transfers (\"flushes\") all modified in-core data of (i.e., "
10612 "modified buffer cache pages for) the file referred to by the file descriptor "
10613 "I<fd> to the disk device (or other permanent storage device) so that all "
10614 "changed information can be retrieved even after the system crashed or was "
10615 "rebooted.  This includes writing through or flushing a disk cache if "
10616 "present.  The call blocks until the device reports that the transfer has "
10617 "completed.  It also flushes metadata information associated with the file "
10618 "(see B<stat>(2))."
10619 msgstr ""
10620 "B<fsync>() は、ファイルディスクリプター I<fd> で参照されるファイルの、メモ"
10621 "リー内で存在す\n"
10622 "る修正されたデータ (つまり修正されたバッファーキャッシュページ) を、ディスク"
10623 "デ\n"
10624 "バイス(またはその他の永続ストレージデバイス) に転送 (「フラッシュ」) し、こ"
10625 "れ\n"
10626 "により、システムがクラッシュしたり、再起動された後も、変更された全ての情報"
10627 "が\n"
10628 "取り出せるようになる。「フラッシュ」には、ライトスルー (write through) や\n"
10629 "(存在する場合には) ディスクキャッシュのフラッシュも含まれる。この呼び出しは\n"
10630 "転送が終わったとデバイスが報告するまでブロックする。またファイルに結びつい"
10631 "た\n"
10632 "メタデータ情報 (B<stat>(2) 参照) もフラッシュする。"
10633
10634 #. type: Plain text
10635 #: build/C/man2/fsync.2:82
10636 msgid ""
10637 "Calling B<fsync>()  does not necessarily ensure that the entry in the "
10638 "directory containing the file has also reached disk.  For that an explicit "
10639 "B<fsync>()  on a file descriptor for the directory is also needed."
10640 msgstr ""
10641 "B<fsync>()  の呼び出しは、ファイルが存在しているディレクトリのエントリーが"
10642 "ディスクへ 書き込まれたことを保証するわけではない。 保証するためには明示的に"
10643 "そのディレクトリのファイルディスクリプターに対しても B<fsync>()  する必要があ"
10644 "る。"
10645
10646 #. type: Plain text
10647 #: build/C/man2/fsync.2:103
10648 msgid ""
10649 "B<fdatasync>()  is similar to B<fsync>(), but does not flush modified "
10650 "metadata unless that metadata is needed in order to allow a subsequent data "
10651 "retrieval to be correctly handled.  For example, changes to I<st_atime> or "
10652 "I<st_mtime> (respectively, time of last access and time of last "
10653 "modification; see B<stat>(2))  do not require flushing because they are not "
10654 "necessary for a subsequent data read to be handled correctly.  On the other "
10655 "hand, a change to the file size (I<st_size>, as made by say "
10656 "B<ftruncate>(2)), would require a metadata flush."
10657 msgstr ""
10658 "B<fdatasync>()  は B<fsync>()  と同様であるが、メタデータの扱いが異なる。 "
10659 "B<fdatasync>()  は、それ以降のデータ読み込みを正しく扱うためにそのメタデータ"
10660 "が必要に ならない限り、変更されたメタデータをフラッシュしない。 例えば、 "
10661 "st_atime や st_mtime (それぞれ最終アクセス時刻、最終修正時刻; B<stat>(2)  参"
10662 "照) の変更はフラッシュを必要としない。 なぜならこれらはそれ以降のデータ読み込"
10663 "みを正しく扱うために 必要ではないからである。 一方、ファイルサイズ "
10664 "(B<ftruncate>(2)  では I<st_size>)  の変更はメタデータのフラッシュが必要であ"
10665 "る。"
10666
10667 #. type: Plain text
10668 #: build/C/man2/fsync.2:108
10669 msgid ""
10670 "The aim of B<fdatasync>()  is to reduce disk activity for applications that "
10671 "do not require all metadata to be synchronized with the disk."
10672 msgstr ""
10673 "B<fdatasync>()  の狙いは、全てのメタデータをディスクと同期する必要のない アプ"
10674 "リケーションに対して、ディスクアクセスを減らすことである。"
10675
10676 #. type: Plain text
10677 #: build/C/man2/fsync.2:113
10678 msgid ""
10679 "On success, these system calls return zero.  On error, -1 is returned, and "
10680 "I<errno> is set appropriately."
10681 msgstr ""
10682 "成功した場合、これらのシステムコールはゼロを返す。 エラーの場合、-1 が返さ"
10683 "れ、 I<errno> が適切に設定される。"
10684
10685 #. type: Plain text
10686 #: build/C/man2/fsync.2:118
10687 msgid "I<fd> is not a valid open file descriptor."
10688 msgstr "I<fd> が有効なオープンされたディスクリプターでない。"
10689
10690 #. type: Plain text
10691 #: build/C/man2/fsync.2:121
10692 msgid "An error occurred during synchronization."
10693 msgstr "同期操作の間にエラーが発生した。"
10694
10695 #. type: TP
10696 #: build/C/man2/fsync.2:121
10697 #, no-wrap
10698 msgid "B<EROFS>, B<EINVAL>"
10699 msgstr "B<EROFS>, B<EINVAL>"
10700
10701 #. type: Plain text
10702 #: build/C/man2/fsync.2:125
10703 msgid ""
10704 "I<fd> is bound to a special file which does not support synchronization."
10705 msgstr "I<fd> が同期操作をサポートしてない特殊なファイルを参照している。"
10706
10707 #. type: Plain text
10708 #: build/C/man2/fsync.2:127
10709 msgid "4.3BSD, POSIX.1-2001."
10710 msgstr "4.3BSD, POSIX.1-2001."
10711
10712 #. type: SH
10713 #: build/C/man2/fsync.2:127
10714 #, no-wrap
10715 msgid "AVAILABILITY"
10716 msgstr "可用性"
10717
10718 #.  POSIX.1-2001: It shall be defined to -1 or 0 or 200112L.
10719 #.  -1: unavailable, 0: ask using sysconf().
10720 #.  glibc defines them to 1.
10721 #. type: Plain text
10722 #: build/C/man2/fsync.2:140
10723 msgid ""
10724 "On POSIX systems on which B<fdatasync>()  is available, "
10725 "B<_POSIX_SYNCHRONIZED_IO> is defined in I<E<lt>unistd.hE<gt>> to a value "
10726 "greater than 0.  (See also B<sysconf>(3).)"
10727 msgstr ""
10728 "B<fdatasync>()  が利用可能な POSIX システムでは、 B<_POSIX_SYNCHRONIZED_IO> "
10729 "が I<E<lt>unistd.hE<gt>> で 0 より大きな値に定義される (B<sysconf>(3)  参"
10730 "照)。"
10731
10732 #. type: Plain text
10733 #: build/C/man2/fsync.2:146
10734 msgid ""
10735 "On some UNIX systems (but not Linux), I<fd> must be a I<writable> file "
10736 "descriptor."
10737 msgstr ""
10738 "(Linux はそうではないが) いくつかの UNIX システムでは\n"
10739 "I<fd> がI<書き込み可能な>ファイルディスクリプターでなければならない。"
10740
10741 #. type: Plain text
10742 #: build/C/man2/fsync.2:152
10743 msgid ""
10744 "In Linux 2.2 and earlier, B<fdatasync>()  is equivalent to B<fsync>(), and "
10745 "so has no performance advantage."
10746 msgstr ""
10747 "Linux 2.2 以前では、 B<fdatasync>()  は B<fsync>()  と等価であり、性能面での"
10748 "メリットはない。"
10749
10750 #. type: Plain text
10751 #: build/C/man2/fsync.2:162
10752 msgid ""
10753 "The B<fsync>()  implementations in older kernels and lesser used filesystems "
10754 "does not know how to flush disk caches.  In these cases disk caches need to "
10755 "be disabled using B<hdparm>(8)  or B<sdparm>(8)  to guarantee safe operation."
10756 msgstr ""
10757 "古いカーネルやあまり使われていないファイルシステムの B<fsync>() の実装で"
10758 "は、\n"
10759 "ディスクキャッシュをフラッシュする方法が分からない場合がある。そのような場"
10760 "合\n"
10761 "には、安全に操作が行われることを保証するため、B<hdparm>(8) や B<sdparm>(8) "
10762 "を\n"
10763 "使ってディスクキャッシュを無効にする必要がある。"
10764
10765 #. type: Plain text
10766 #: build/C/man2/fsync.2:170
10767 msgid ""
10768 "B<bdflush>(2), B<open>(2), B<sync>(2), B<sync_file_range>(2), B<hdparm>(8), "
10769 "B<mount>(8), B<sync>(1)"
10770 msgstr ""
10771 "B<bdflush>(2), B<open>(2), B<sync>(2), B<sync_file_range>(2), B<hdparm>(8), "
10772 "B<mount>(8), B<sync>(1)"
10773
10774 #. type: TH
10775 #: build/C/man3/get_nprocs_conf.3:26
10776 #, no-wrap
10777 msgid "GET_NPROCS"
10778 msgstr "GET_NPROCS"
10779
10780 #. type: TH
10781 #: build/C/man3/get_nprocs_conf.3:26
10782 #, no-wrap
10783 msgid "2012-03-20"
10784 msgstr "2012-03-20"
10785
10786 #. type: Plain text
10787 #: build/C/man3/get_nprocs_conf.3:29
10788 msgid "get_nprocs, get_nprocs_conf - get number of processors"
10789 msgstr "get_nprocs, get_nprocs_conf - プロセッサ数を取得する"
10790
10791 #. type: Plain text
10792 #: build/C/man3/get_nprocs_conf.3:31 build/C/man2/sysinfo.2:19
10793 msgid "B<#include E<lt>sys/sysinfo.hE<gt>>"
10794 msgstr "B<#include E<lt>sys/sysinfo.hE<gt>>"
10795
10796 #. type: Plain text
10797 #: build/C/man3/get_nprocs_conf.3:33
10798 msgid "B<int get_nprocs(void);>"
10799 msgstr "B<int get_nprocs(void);>"
10800
10801 #. type: Plain text
10802 #: build/C/man3/get_nprocs_conf.3:35
10803 msgid "B<int get_nprocs_conf(void);>"
10804 msgstr "B<int get_nprocs_conf(void);>"
10805
10806 #. type: Plain text
10807 #: build/C/man3/get_nprocs_conf.3:39
10808 msgid ""
10809 "The function B<get_nprocs_conf>()  returns the number of processors "
10810 "configured by the operating system."
10811 msgstr ""
10812 "B<get_nprocs_conf>() 関数は、オペレーティングシステムで\n"
10813 "設定されているプロセッサ数を返す。"
10814
10815 #. type: Plain text
10816 #: build/C/man3/get_nprocs_conf.3:46
10817 msgid ""
10818 "The function B<get_nprocs>()  returns the number of processors currently "
10819 "available in the system.  This may be less than the number returned by "
10820 "B<get_nprocs_conf>()  because processors may be offline (e.g., on "
10821 "hotpluggable systems)."
10822 msgstr ""
10823 "B<get_nprocs>() 関数は、システムで現在利用可能なプロセッサ数を返す。\n"
10824 "(例えば、ホットプラグが可能なシステムでは)\n"
10825 "オフラインになっているプロセッサがある場合があるので、\n"
10826 "この数は B<get_nprocs_conf>() が返す数より小さい場合がある。"
10827
10828 #. type: Plain text
10829 #: build/C/man3/get_nprocs_conf.3:48
10830 msgid "As given in DESCRIPTION."
10831 msgstr "「説明」の節で説明した通りである。"
10832
10833 #. type: Plain text
10834 #: build/C/man3/get_nprocs_conf.3:50 build/C/man3/getopt.3:350
10835 msgid "These functions are GNU extensions."
10836 msgstr "これらの関数は GNU による拡張である。"
10837
10838 #.  glibc 2.15
10839 #. type: Plain text
10840 #: build/C/man3/get_nprocs_conf.3:57
10841 msgid ""
10842 "The current implementation of these functions is rather expensive, since "
10843 "they open and parse files in the I</sys> filesystem each time they are "
10844 "called."
10845 msgstr ""
10846 "これらの関数の現在の実装はかなりコストがかかる実装になっている。\n"
10847 "関数が呼ばれる度に I</sys> ファイルシステム内のファイルをオープンして\n"
10848 "解析するようになっているからである。"
10849
10850 #. type: Plain text
10851 #: build/C/man3/get_nprocs_conf.3:62
10852 msgid ""
10853 "The following B<sysconf>(3)  calls make use of the functions documented on "
10854 "this page to return the same information."
10855 msgstr ""
10856 "以下の B<sysconf>(3) の呼び出しで、このページに書かれている関数を使った\n"
10857 "場合に返されるのと同じ情報を得ることができる。"
10858
10859 #. type: Plain text
10860 #: build/C/man3/get_nprocs_conf.3:66
10861 #, no-wrap
10862 msgid ""
10863 "    np = sysconf(_SC_NPROCESSORS_CONF);     /* processors configured */\n"
10864 "    np = sysconf(_SC_NPROCESSORS_ONLN);     /* processors available */\n"
10865 msgstr ""
10866 "    np = sysconf(_SC_NPROCESSORS_CONF);     /* processors configured */\n"
10867 "    np = sysconf(_SC_NPROCESSORS_ONLN);     /* processors available */\n"
10868
10869 #. type: Plain text
10870 #: build/C/man3/get_nprocs_conf.3:73
10871 msgid ""
10872 "The following example shows how B<get_nprocs>()  and B<get_nprocs_conf>()  "
10873 "can be used."
10874 msgstr ""
10875 "以下の例は、 B<get_nprocs>() と B<get_nprocs_conf>() が\n"
10876 "どのように利用できるかを示すものである。"
10877
10878 #. type: Plain text
10879 #: build/C/man3/get_nprocs_conf.3:77
10880 #, no-wrap
10881 msgid ""
10882 "#include E<lt>stdio.hE<gt>\n"
10883 "#include E<lt>sys/sysinfo.hE<gt>\n"
10884 msgstr ""
10885 "#include E<lt>stdio.hE<gt>\n"
10886 "#include E<lt>sys/sysinfo.hE<gt>\n"
10887
10888 #. type: Plain text
10889 #: build/C/man3/get_nprocs_conf.3:86
10890 #, no-wrap
10891 msgid ""
10892 "int\n"
10893 "main(int argc, char *argv[])\n"
10894 "{\n"
10895 "    printf(\"This system has %d processors configured and \"\n"
10896 "            \"%d processors available.\\en\",\n"
10897 "            get_nprocs_conf(), get_nprocs());\n"
10898 "    return 0;\n"
10899 "}\n"
10900 msgstr ""
10901 "int\n"
10902 "main(int argc, char *argv[])\n"
10903 "{\n"
10904 "    printf(\"This system has %d processors configured and \"\n"
10905 "            \"%d processors available.\\en\",\n"
10906 "            get_nprocs_conf(), get_nprocs());\n"
10907 "    return 0;\n"
10908 "}\n"
10909
10910 #. type: TH
10911 #: build/C/man2/get_thread_area.2:8
10912 #, no-wrap
10913 msgid "GET_THREAD_AREA"
10914 msgstr "GET_THREAD_AREA"
10915
10916 #. type: TH
10917 #: build/C/man2/get_thread_area.2:8 build/C/man2/set_thread_area.2:8
10918 #, no-wrap
10919 msgid "2012-07-13"
10920 msgstr "2012-07-13"
10921
10922 #. type: Plain text
10923 #: build/C/man2/get_thread_area.2:11
10924 msgid "get_thread_area - get a thread-local storage (TLS) area"
10925 msgstr "get_thread_area - スレッド局所記憶 (TLS) 領域を取り出す"
10926
10927 #. type: Plain text
10928 #: build/C/man2/get_thread_area.2:15 build/C/man2/set_thread_area.2:15
10929 msgid "B<#include E<lt>asm/ldt.hE<gt>>"
10930 msgstr "B<#include E<lt>asm/ldt.hE<gt>>"
10931
10932 #. type: Plain text
10933 #: build/C/man2/get_thread_area.2:17
10934 msgid "B<int get_thread_area(struct user_desc *>I<u_info>B<);>"
10935 msgstr "B<int get_thread_area(struct user_desc *>I<u_info>B<);>"
10936
10937 #. type: Plain text
10938 #: build/C/man2/get_thread_area.2:20 build/C/man2/gettid.2:38
10939 #: build/C/man2/set_thread_area.2:20 build/C/man2/sysctl.2:44
10940 msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
10941 msgstr ""
10942 "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節"
10943 "を参照。"
10944
10945 #. type: Plain text
10946 #: build/C/man2/get_thread_area.2:29
10947 msgid ""
10948 "B<get_thread_area>()  returns an entry in the current thread's thread-local "
10949 "storage (TLS) array.  The index of the entry corresponds to the value of "
10950 "I<u_info-E<gt>entry_number>, passed in by the user.  If the value is in "
10951 "bounds, B<get_thread_area>()  copies the corresponding TLS entry into the "
10952 "area pointed to by I<u_info>."
10953 msgstr ""
10954 "B<get_thread_area>()  は、カレントスレッドのスレッド局所記憶 (thread-local "
10955 "storage; TLS) 配列の中のエントリーを返す。 エントリーのインデックスは、ユー"
10956 "ザーから引き数として渡される I<u_info-E<gt>entry_number> の値に対応してい"
10957 "る。 値が範囲内にある場合、 B<get_thread_info>()  は対応する TLS エントリー"
10958 "を I<u_info> で指された領域にコピーする。"
10959
10960 #. type: Plain text
10961 #: build/C/man2/get_thread_area.2:35
10962 msgid ""
10963 "B<get_thread_area>()  returns 0 on success.  Otherwise, it returns -1 and "
10964 "sets I<errno> appropriately."
10965 msgstr ""
10966 "成功した場合、 B<get_thread_area>()  は 0 を返す。 そうでない場合、 -1 を返"
10967 "し、 I<errno> に適切な値をセットする。"
10968
10969 #. type: Plain text
10970 #: build/C/man2/get_thread_area.2:39 build/C/man2/set_thread_area.2:56
10971 msgid "I<u_info> is an invalid pointer."
10972 msgstr "I<u_info> が不正なポインターである。"
10973
10974 #. type: Plain text
10975 #: build/C/man2/get_thread_area.2:42 build/C/man2/set_thread_area.2:53
10976 msgid "I<u_info-E<gt>entry_number> is out of bounds."
10977 msgstr "I<u_info-E<gt>entry_number> が範囲外である。"
10978
10979 #. type: Plain text
10980 #: build/C/man2/get_thread_area.2:46
10981 msgid "A version of B<get_thread_area>()  first appeared in Linux 2.5.32."
10982 msgstr "B<get_thread_area>()  は Linux 2.5.32 で初めて登場した。"
10983
10984 #. type: Plain text
10985 #: build/C/man2/get_thread_area.2:50
10986 msgid ""
10987 "B<get_thread_area>()  is Linux-specific and should not be used in programs "
10988 "that are intended to be portable."
10989 msgstr ""
10990 "B<get_thread_area>()  は Linux 独自の関数であり、 移植を意図したプログラムで"
10991 "は使用すべきではない。"
10992
10993 #. type: Plain text
10994 #: build/C/man2/get_thread_area.2:55
10995 msgid ""
10996 "Glibc does not provide a wrapper for this system call, since it is generally "
10997 "intended for use only by threading libraries.  In the unlikely event that "
10998 "you want to call it directly, use B<syscall>(2)."
10999 msgstr ""
11000 "このシステムコールは通常はスレッドライブラリでのみ使用されることを目的として"
11001 "用意されているため、 glibc はこのシステムコールに対するラッパー関数を提供して"
11002 "いない。おそらくないと思うが、このシステムコールを直接呼び出したい場合は "
11003 "B<syscall>(2) を使うこと。"
11004
11005 #. type: Plain text
11006 #: build/C/man2/get_thread_area.2:58
11007 msgid "B<modify_ldt>(2), B<set_thread_area>(2)"
11008 msgstr "B<modify_ldt>(2), B<set_thread_area>(2)"
11009
11010 #. type: TH
11011 #: build/C/man3/getcwd.3:32
11012 #, no-wrap
11013 msgid "GETCWD"
11014 msgstr "GETCWD"
11015
11016 #. type: Plain text
11017 #: build/C/man3/getcwd.3:35
11018 msgid "getcwd, getwd, get_current_dir_name - get current working directory"
11019 msgstr ""
11020 "getcwd, getwd, get_current_dir_name - カレントワーキングディレクトリ名の取得"
11021
11022 #. type: Plain text
11023 #: build/C/man3/getcwd.3:40
11024 #, no-wrap
11025 msgid "B<char *getcwd(char *>I<buf>B<, size_t >I<size>B<);>\n"
11026 msgstr "B<char *getcwd(char *>I<buf>B<, size_t >I<size>B<);>\n"
11027
11028 #. type: Plain text
11029 #: build/C/man3/getcwd.3:42
11030 #, no-wrap
11031 msgid "B<char *getwd(char *>I<buf>B<);>\n"
11032 msgstr "B<char *getwd(char *>I<buf>B<);>\n"
11033
11034 #. type: Plain text
11035 #: build/C/man3/getcwd.3:44
11036 #, no-wrap
11037 msgid "B<char *get_current_dir_name(void);>\n"
11038 msgstr "B<char *get_current_dir_name(void);>\n"
11039
11040 #. type: Plain text
11041 #: build/C/man3/getcwd.3:52
11042 msgid "B<get_current_dir_name>():"
11043 msgstr "B<get_current_dir_name>():"
11044
11045 #. type: Plain text
11046 #: build/C/man3/getcwd.3:57
11047 msgid "B<getwd>():"
11048 msgstr "B<getwd>():"
11049
11050 #. type: Plain text
11051 #: build/C/man3/getcwd.3:67 build/C/man3/ualarm.3:50 build/C/man3/usleep.3:59
11052 #: build/C/man2/vfork.2:54
11053 #, no-wrap
11054 msgid ""
11055 "_BSD_SOURCE ||\n"
11056 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
11057 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
11058 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)\n"
11059 msgstr ""
11060 "_BSD_SOURCE ||\n"
11061 "    (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
11062 "        _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
11063 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)\n"
11064
11065 #. type: Plain text
11066 #: build/C/man3/getcwd.3:72 build/C/man3/getdtablesize.3:54
11067 #: build/C/man2/getpagesize.2:52 build/C/man3/ualarm.3:55
11068 #: build/C/man3/usleep.3:64 build/C/man2/vfork.2:59
11069 msgid ""
11070 "Before glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
11071 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
11072 msgstr ""
11073 "glibc 2.12 より前: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || "
11074 "_XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
11075
11076 #. type: Plain text
11077 #: build/C/man3/getcwd.3:82
11078 msgid ""
11079 "These functions return a null-terminated string containing an absolute "
11080 "pathname that is the current working directory of the calling process.  The "
11081 "pathname is returned as the function result and via the argument I<buf>, if "
11082 "present."
11083 msgstr ""
11084 "これらの関数は、呼び出したプロセスのカレントワーキングディレクトリの 絶対パス"
11085 "名 (absolute pathname) が入った文字列を返す。 返される文字列はヌルで終端され"
11086 "る。 パス名は関数の結果として返され、引数 I<buf> がある場合は I<buf> 経由でも"
11087 "返される。"
11088
11089 #. type: Plain text
11090 #: build/C/man3/getcwd.3:90
11091 msgid ""
11092 "The B<getcwd>()  function copies an absolute pathname of the current working "
11093 "directory to the array pointed to by I<buf>, which is of length I<size>."
11094 msgstr ""
11095 "B<getcwd>()  関数はカレントワーキングディレクトリの絶対パス名を I<buf> で示さ"
11096 "れた I<size> 長の配列にコピーする。"
11097
11098 #. type: Plain text
11099 #: build/C/man3/getcwd.3:100
11100 msgid ""
11101 "If the length of the absolute pathname of the current working directory, "
11102 "including the terminating null byte, exceeds I<size> bytes, NULL is "
11103 "returned, and I<errno> is set to B<ERANGE>; an application should check for "
11104 "this error, and allocate a larger buffer if necessary."
11105 msgstr ""
11106 "終端のヌルバイトも含めた、カレントワーキングディレクトリの 絶対パス名の長さ"
11107 "が I<size> バイトを超えている場合は、返り値として NULL が返り I<errno> に "
11108 "B<ERANGE> がセットされる。 アプリケーションはこのエラーをチェックし、 必要に"
11109 "応じてより長いバッファーを用意すべきである。"
11110
11111 #. type: Plain text
11112 #: build/C/man3/getcwd.3:118
11113 msgid ""
11114 "As an extension to the POSIX.1-2001 standard, glibc's B<getcwd>()  allocates "
11115 "the buffer dynamically using B<malloc>(3)  if I<buf> is NULL.  In this case, "
11116 "the allocated buffer has the length I<size> unless I<size> is zero, when "
11117 "I<buf> is allocated as big as necessary.  The caller should B<free>(3)  the "
11118 "returned buffer."
11119 msgstr ""
11120 "POSIX.1-2001 標準の拡張として、 glibc では I<buf> が NULL の場合、 "
11121 "B<getcwd>()  は必要なバッファーを B<malloc>(3)  を用いて動的に割り当てる。 こ"
11122 "の場合、 I<size> が 0 の場合を除き、バッファーの長さは I<size> となる。 "
11123 "I<size> が 0 の場合には必要な大きさが確保される。 呼び出し側で、返されたバッ"
11124 "ファーを B<free>(3)  すべきである。"
11125
11126 #. type: Plain text
11127 #: build/C/man3/getcwd.3:131
11128 msgid ""
11129 "B<get_current_dir_name>()  will B<malloc>(3)  an array big enough to hold "
11130 "the absolute pathname of the current working directory.  If the environment "
11131 "variable B<PWD> is set, and its value is correct, then that value will be "
11132 "returned.  The caller should B<free>(3)  the returned buffer."
11133 msgstr ""
11134 "B<get_current_dir_name>()  はカレントワーキングディレクトリの絶対パス名を収め"
11135 "るのに 十分な大きさの配列を B<malloc>(3)  で獲得する。環境変数 B<PWD> が設定"
11136 "されておりその値が正しければ、その値が返される。 呼び出し側で、返されたバッ"
11137 "ファーを B<free>(3)  すべきである。"
11138
11139 #. type: Plain text
11140 #: build/C/man3/getcwd.3:156
11141 msgid ""
11142 "B<getwd>()  does not B<malloc>(3)  any memory.  The I<buf> argument should "
11143 "be a pointer to an array at least B<PATH_MAX> bytes long.  If the length of "
11144 "the absolute pathname of the current working directory, including the "
11145 "terminating null byte, exceeds B<PATH_MAX> bytes, NULL is returned, and "
11146 "I<errno> is set to B<ENAMETOOLONG>.  (Note that on some systems, B<PATH_MAX> "
11147 "may not be a compile-time constant; furthermore, its value may depend on the "
11148 "filesystem, see B<pathconf>(3).)  For portability and security reasons, use "
11149 "of B<getwd>()  is deprecated."
11150 msgstr ""
11151 "B<getwd>()  は B<malloc>(3)  によるメモリー獲得を一切行なわない。 I<buf> 引数"
11152 "は少なくとも B<PATH_MAX> バイトの長さを持つ配列へのポインターである必要があ"
11153 "る。 終端のヌルバイトも含めた、カレントワーキングディレクトリの 絶対パス名の"
11154 "長さが B<PATH_MAX> バイトを超えている場合、 NULL が返され、 I<errno> に "
11155 "B<ENAMETOOLONG> が設定される。 (システムによっては、 B<PATH_MAX> は必ずしもコ"
11156 "ンパイル時に決まる定数ではない点に注意すること。 また、ファイルシステムに依存"
11157 "する場合もある。 B<pathconf>(3)  を参照。)  移植性とセキュリティ上の理由か"
11158 "ら、 B<getwd>()  の利用は推奨されない。"
11159
11160 #. type: Plain text
11161 #: build/C/man3/getcwd.3:165
11162 msgid ""
11163 "On success, these functions return a pointer to a string containing the "
11164 "pathname of the current working directory.  In the case B<getcwd>()  and "
11165 "B<getwd>()  this is the same value as I<buf>."
11166 msgstr ""
11167 "成功すると、これらの関数はカレントワーキングディレクトリの絶対パス名 が入った"
11168 "文字列へのポインターを返す。 B<getcwd>()  と B<getwd>()  の場合、返り値は "
11169 "I<buf> と同じ値になる。"
11170
11171 #. type: Plain text
11172 #: build/C/man3/getcwd.3:172
11173 msgid ""
11174 "On failure, these functions return NULL, and I<errno> is set to indicate the "
11175 "error.  The contents of the array pointed to by I<buf> are undefined on "
11176 "error."
11177 msgstr ""
11178 "失敗した場合、これらの関数は NULL を返し、 I<errno> にエラーを示す値を設定す"
11179 "る。 I<buf> が指す配列の内容は未定義である。"
11180
11181 #. type: Plain text
11182 #: build/C/man3/getcwd.3:176
11183 msgid "Permission to read or search a component of the filename was denied."
11184 msgstr "ファイル名の構成要素に対する読み込みあるいは検索の権限がない。"
11185
11186 #. type: Plain text
11187 #: build/C/man3/getcwd.3:180
11188 msgid "I<buf> points to a bad address."
11189 msgstr "I<buf> が不正なアドレスを指している。"
11190
11191 #. type: Plain text
11192 #: build/C/man3/getcwd.3:187
11193 msgid "The I<size> argument is zero and I<buf> is not a null pointer."
11194 msgstr "I<size> 引数が 0 かつ、 I<buf> 引数がヌルポインターでない。"
11195
11196 #. type: TP
11197 #: build/C/man3/getcwd.3:187
11198 #, no-wrap
11199 msgid "EINVAL"
11200 msgstr "B<EINVAL>"
11201
11202 #. type: Plain text
11203 #: build/C/man3/getcwd.3:192
11204 msgid "B<getwd>(): I<buf> is NULL."
11205 msgstr "B<getwd>(): I<buf> が NULL である。"
11206
11207 #. type: TP
11208 #: build/C/man3/getcwd.3:192
11209 #, no-wrap
11210 msgid "ENAMETOOLONG"
11211 msgstr "B<ENAMETOOLONG>"
11212
11213 #. type: Plain text
11214 #: build/C/man3/getcwd.3:198
11215 msgid ""
11216 "B<getwd>(): The size of the null-terminated absolute pathname string exceeds "
11217 "B<PATH_MAX> bytes."
11218 msgstr ""
11219 "B<getwd>(): 絶対パス名が入ったヌル終端された文字列の長さが B<PATH_MAX> バイト"
11220 "を超えている。"
11221
11222 #. type: Plain text
11223 #: build/C/man3/getcwd.3:201
11224 msgid "The current working directory has been unlinked."
11225 msgstr "カレントワーキングディレクトリが削除されている。"
11226
11227 #. type: TP
11228 #: build/C/man3/getcwd.3:201 build/C/man3/getlogin.3:114
11229 #, no-wrap
11230 msgid "B<ERANGE>"
11231 msgstr "B<ERANGE>"
11232
11233 #. type: Plain text
11234 #: build/C/man3/getcwd.3:208
11235 msgid ""
11236 "The I<size> argument is less than the length of the absolute pathname of the "
11237 "working directory, including the terminating null byte.  You need to "
11238 "allocate a bigger array and try again."
11239 msgstr ""
11240 "I<size> 引数の値がワーキングディレクトリの絶対パス名の長さより小さい。 長さに"
11241 "は文字列の終端バイトも含まれる。 より大きい配列を確保してもう一度実行する必要"
11242 "がある。"
11243
11244 #. type: Plain text
11245 #: build/C/man3/getcwd.3:216
11246 msgid ""
11247 "B<getcwd>()  conforms to POSIX.1-2001.  Note however that POSIX.1-2001 "
11248 "leaves the behavior of B<getcwd>()  unspecified if I<buf> is NULL."
11249 msgstr ""
11250 "B<getcwd>()  は POSIX.1-2001 に準拠している。 POSIX.1-2001 は、 I<buf> が "
11251 "NULL の場合の B<getcwd>()  の動作を規定しないままとしている。"
11252
11253 #. type: Plain text
11254 #: build/C/man3/getcwd.3:227
11255 msgid ""
11256 "B<getwd>()  is present in POSIX.1-2001, but marked LEGACY.  POSIX.1-2008 "
11257 "removes the specification of B<getwd>().  Use B<getcwd>()  instead.  "
11258 "POSIX.1-2001 does not define any errors for B<getwd>()."
11259 msgstr ""
11260 "B<getwd>()  は POSIX.1-2001 に存在しているが、「過去の名残(LEGACY)」とされて"
11261 "いる。 POSIX.1-2008 では、 B<getwd>()  の仕様が削除されている。 代わりに "
11262 "B<getcwd>()  を使うこと。 POSIX.1-2001 は B<getwd>()  に関するエラーを定義し"
11263 "ていない。"
11264
11265 #. type: Plain text
11266 #: build/C/man3/getcwd.3:230
11267 msgid "B<get_current_dir_name>()  is a GNU extension."
11268 msgstr "B<get_current_dir_name>()  は GNU 拡張である。"
11269
11270 #. type: Plain text
11271 #: build/C/man3/getcwd.3:241
11272 msgid ""
11273 "Under Linux, the function B<getcwd>()  is a system call (since 2.1.92).  On "
11274 "older systems it would query I</proc/self/cwd>.  If both system call and "
11275 "proc filesystem are missing, a generic implementation is called.  Only in "
11276 "that case can these calls fail under Linux with B<EACCES>."
11277 msgstr ""
11278 "Linux では (2.1.92 以降)、 B<getcwd>()  はシステムコールである。 古いシステム"
11279 "では I</proc/self/cwd> を参照する。 システムコールも proc ファイルシステムも"
11280 "ない場合、 一般的な実装が呼び出される。 この場合においてのみ、(Linux では) こ"
11281 "の関数は B<EACCES> で失敗する可能性がある。"
11282
11283 #. type: Plain text
11284 #: build/C/man3/getcwd.3:249
11285 msgid ""
11286 "These functions are often used to save the location of the current working "
11287 "directory for the purpose of returning to it later.  Opening the current "
11288 "directory (\".\") and calling B<fchdir>(2)  to return is usually a faster "
11289 "and more reliable alternative when sufficiently many file descriptors are "
11290 "available, especially on platforms other than Linux."
11291 msgstr ""
11292 "これらの関数はしばしばカレントワーキングディレクトリの位置を保存し、 後で戻っ"
11293 "てくるために利用される。 未使用のファイルディスクリプターが十分ある場合は、 "
11294 "現在のディレクトリ (\".\") を開いて B<fchdir>(2)  を呼び出すほうが普通は高速"
11295 "で信頼性がある。 特に Linux 以外のプラットフォームの場合はそうである。"
11296
11297 #. type: Plain text
11298 #: build/C/man3/getcwd.3:256
11299 msgid ""
11300 "B<chdir>(2), B<fchdir>(2), B<open>(2), B<unlink>(2), B<free>(3), B<malloc>(3)"
11301 msgstr ""
11302 "B<chdir>(2), B<fchdir>(2), B<open>(2), B<unlink>(2), B<free>(3), B<malloc>(3)"
11303
11304 #. type: TH
11305 #: build/C/man2/getdomainname.2:29
11306 #, no-wrap
11307 msgid "GETDOMAINNAME"
11308 msgstr "GETDOMAINNAME"
11309
11310 #. type: TH
11311 #: build/C/man2/getdomainname.2:29
11312 #, no-wrap
11313 msgid "2012-10-25"
11314 msgstr "2012-10-25"
11315
11316 #. type: Plain text
11317 #: build/C/man2/getdomainname.2:32
11318 msgid "getdomainname, setdomainname - get/set NIS domain name"
11319 msgstr "getdomainname, setdomainname - NIS ドメイン名の取得・設定をする"
11320
11321 #. type: Plain text
11322 #: build/C/man2/getdomainname.2:36
11323 msgid "B<int getdomainname(char *>I<name>B<, size_t >I<len>B<);>"
11324 msgstr "B<int getdomainname(char *>I<name>B<, size_t >I<len>B<);>"
11325
11326 #. type: Plain text
11327 #: build/C/man2/getdomainname.2:38
11328 msgid "B<int setdomainname(const char *>I<name>B<, size_t >I<len>B<);>"
11329 msgstr "B<int setdomainname(const char *>I<name>B<, size_t >I<len>B<);>"
11330
11331 #. type: Plain text
11332 #: build/C/man2/getdomainname.2:47
11333 msgid "B<getdomainname>(), B<setdomainname>():"
11334 msgstr "B<getdomainname>(), B<setdomainname>():"
11335
11336 #. type: Plain text
11337 #: build/C/man2/getdomainname.2:49 build/C/man3/gethostid.3:54
11338 #: build/C/man2/gethostname.2:60 build/C/man3/getusershell.3:55
11339 msgid "_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
11340 msgstr "_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
11341
11342 #. type: Plain text
11343 #: build/C/man2/getdomainname.2:54
11344 msgid ""
11345 "These functions are used to access or to change the NIS domain name of the "
11346 "host system."
11347 msgstr ""
11348 "これらの関数は、ホストシステムの NIS ドメイン名を取得・変更するために使われ"
11349 "る。"
11350
11351 #. type: Plain text
11352 #: build/C/man2/getdomainname.2:65
11353 msgid ""
11354 "B<setdomainname>()  sets the domain name to the value given in the character "
11355 "array I<name>.  The I<len> argument specifies the number of bytes in "
11356 "I<name>.  (Thus, I<name> does not require a terminating null byte.)"
11357 msgstr ""
11358 "B<setdomainname>()  は、ドメイン名を、文字配列 I<name> で指定された値に設定す"
11359 "る。 引き数 I<len> には、 I<name> のバイト数を指定する (そのため、 I<name> で"
11360 "は文字列終端のヌルバイトは必要ない)。"
11361
11362 #. type: Plain text
11363 #: build/C/man2/getdomainname.2:75
11364 msgid ""
11365 "B<getdomainname>()  returns the null-terminated domain name in the character "
11366 "array I<name>, which has a length of I<len> bytes.  If the null-terminated "
11367 "domain name requires more than I<len> bytes, B<getdomainname>()  returns the "
11368 "first I<len> bytes (glibc) or gives an error (libc)."
11369 msgstr ""
11370 "B<getdomainname>()  は、NULL 終端されたドメイン名を、 I<len> バイトの長さの文"
11371 "字配列 I<name> に格納して返す。ヌル終端されたドメイン名が I<len> バイトより長"
11372 "い場合、 B<getdomainname>()  は、(glibc では) 始めの I<len> バイトを返し、"
11373 "(libc では) エラーとなる。"
11374
11375 #. type: Plain text
11376 #: build/C/man2/getdomainname.2:83
11377 msgid "B<setdomainname>()  can fail with the following errors:"
11378 msgstr "B<setdomainname>()  は以下のエラーで失敗する可能性がある。"
11379
11380 #. type: Plain text
11381 #: build/C/man2/getdomainname.2:87
11382 msgid "I<name> pointed outside of user address space."
11383 msgstr "I<name> がユーザーアドレス空間の外を指した。"
11384
11385 #. type: Plain text
11386 #: build/C/man2/getdomainname.2:91
11387 msgid "I<len> was negative or too large."
11388 msgstr "I<len> が負であるか、長すぎる。"
11389
11390 #. type: Plain text
11391 #: build/C/man2/getdomainname.2:96
11392 msgid ""
11393 "the caller is unprivileged (Linux: does not have the B<CAP_SYS_ADMIN> "
11394 "capability)."
11395 msgstr ""
11396 "B<setdomainname>()  において、呼び出した人に特権がない (Linux では "
11397 "B<CAP_SYS_ADMIN> ケーパビリティ (capability) がない)。"
11398
11399 #. type: Plain text
11400 #: build/C/man2/getdomainname.2:99
11401 msgid "B<getdomainname>()  can fail with the following errors:"
11402 msgstr "B<getdomainname>()  は以下のエラーで失敗する可能性がある。"
11403
11404 #. type: Plain text
11405 #: build/C/man2/getdomainname.2:110
11406 msgid ""
11407 "For B<getdomainname>()  under libc: I<name> is NULL or I<name> is longer "
11408 "than I<len> bytes."
11409 msgstr ""
11410 "libc での B<getdomainname>()  において、 I<name> が NULL であるか、 I<len> バ"
11411 "イトより長い。"
11412
11413 #.  But they appear on most systems...
11414 #. type: Plain text
11415 #: build/C/man2/getdomainname.2:113
11416 msgid "POSIX does not specify these calls."
11417 msgstr "POSIX では、これら関数は定義されていない。"
11418
11419 #. type: Plain text
11420 #: build/C/man2/getdomainname.2:117
11421 msgid ""
11422 "Since Linux 1.0, the limit on the length of a domain name, including the "
11423 "terminating null byte, is 64 bytes.  In older kernels, it was 8 bytes."
11424 msgstr ""
11425 "Linux 1.0 以降では、ドメイン名の長さの上限は 終端のヌルバイトを含めて 64 バイ"
11426 "トである。 もっと古いカーネルでは 8 バイトであった。"
11427
11428 #. type: Plain text
11429 #: build/C/man2/getdomainname.2:127
11430 msgid ""
11431 "On most Linux architectures (including x86), there is no B<getdomainname>()  "
11432 "system call; instead, glibc implements B<getdomainname>()  as a library "
11433 "function that returns a copy of the I<domainname> field returned from a call "
11434 "to B<uname>(2)."
11435 msgstr ""
11436 "(x86 を含む) Linux のほとんどのアーキテクチャーでは、 B<getdomainname>()  と"
11437 "いうシステムコールは存在しない。 その代わり、glibc で B<getdomainname>()  が"
11438 "ライブラリ関数として実装されており、この関数は B<uname>(2)  の呼び出しで返さ"
11439 "れた I<domainname> フィールドのコピーを返す。"
11440
11441 #. type: Plain text
11442 #: build/C/man2/getdomainname.2:131
11443 msgid "B<gethostname>(2), B<sethostname>(2), B<uname>(2)"
11444 msgstr "B<gethostname>(2), B<sethostname>(2), B<uname>(2)"
11445
11446 #. type: TH
11447 #: build/C/man3/getdtablesize.3:27
11448 #, no-wrap
11449 msgid "GETDTABLESIZE"
11450 msgstr "GETDTABLESIZE"
11451
11452 #. type: Plain text
11453 #: build/C/man3/getdtablesize.3:30
11454 msgid "getdtablesize - get descriptor table size"
11455 msgstr "getdtablesize - ディスクリプターテーブルのサイズを取得する"
11456
11457 #. type: Plain text
11458 #: build/C/man3/getdtablesize.3:34
11459 msgid "B<int getdtablesize(void);>"
11460 msgstr "B<int getdtablesize(void);>"
11461
11462 #. type: Plain text
11463 #: build/C/man3/getdtablesize.3:41
11464 msgid "B<getdtablesize>():"
11465 msgstr "B<getdtablesize>():"
11466
11467 #. type: Plain text
11468 #: build/C/man3/getdtablesize.3:49 build/C/man2/getpagesize.2:47
11469 #, no-wrap
11470 msgid ""
11471 "_BSD_SOURCE ||\n"
11472 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
11473 msgstr ""
11474 "_BSD_SOURCE ||\n"
11475 "    !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
11476
11477 #. type: Plain text
11478 #: build/C/man3/getdtablesize.3:61
11479 msgid ""
11480 "B<getdtablesize>()  returns the maximum number of files a process can have "
11481 "open, one more than the largest possible value for a file descriptor."
11482 msgstr ""
11483 "B<getdtablesize>()  は 1 つのプロセスのオープンできるファイル数の最大値を返"
11484 "す。 返り値はファイルディスクリプターの取り得る最大値より 1 大きい値である。"
11485
11486 #. type: Plain text
11487 #: build/C/man3/getdtablesize.3:63
11488 msgid "The current limit on the number of open files per process."
11489 msgstr "プロセス毎にオープンできるファイル数の現在の制限値。"
11490
11491 #. type: Plain text
11492 #: build/C/man3/getdtablesize.3:69
11493 msgid ""
11494 "On Linux, B<getdtablesize>()  can return any of the errors described for "
11495 "B<getrlimit>(2); see NOTES below."
11496 msgstr ""
11497 "Linux では、 B<getdtablesize>()  は B<getrlimit>(2)  で説明されているエラーを"
11498 "返すことがある。 下記の「注意」を参照のこと。"
11499
11500 #. type: Plain text
11501 #: build/C/man3/getdtablesize.3:74
11502 msgid "The B<getdtablesize>()  function is thread-safe."
11503 msgstr "B<getdtablesize>() 関数はスレッドセーフである。"
11504
11505 #. type: Plain text
11506 #: build/C/man3/getdtablesize.3:82
11507 msgid ""
11508 "SVr4, 4.4BSD (the B<getdtablesize>()  function first appeared in 4.2BSD).  "
11509 "It is not specified in POSIX.1-2001; portable applications should employ "
11510 "I<sysconf(_SC_OPEN_MAX)> instead of this call."
11511 msgstr ""
11512 "SVr4, 4.4BSD (B<getdtablesize>()  関数は 4.2BSD で最初に現われた)。 これは "
11513 "POSIX.1-2001 で規定されていないので、 移植性のあるアプリケーションはこの呼び"
11514 "出しの代わりに I<sysconf(_SC_OPEN_MAX)> を使うべきである。"
11515
11516 #.  The libc4 and libc5 versions return
11517 #.  .B OPEN_MAX
11518 #.  (set to 256 since Linux 0.98.4).
11519 #. type: Plain text
11520 #: build/C/man3/getdtablesize.3:95
11521 msgid ""
11522 "B<getdtablesize>()  is implemented as a libc library function.  The glibc "
11523 "version calls B<getrlimit>(2)  and returns the current B<RLIMIT_NOFILE> "
11524 "limit, or B<OPEN_MAX> when that fails."
11525 msgstr ""
11526 "B<getdtablesize>()  は libc のライブラリ関数として実装されている。glibc 版は "
11527 "B<getrlimit>(2)  を呼び出して、現在の B<RLIMIT_NOFILE> を返す。 呼び出しに失"
11528 "敗した場合は B<OPEN_MAX> を返す。"
11529
11530 #. type: Plain text
11531 #: build/C/man3/getdtablesize.3:100
11532 msgid "B<close>(2), B<dup>(2), B<getrlimit>(2), B<open>(2)"
11533 msgstr "B<close>(2), B<dup>(2), B<getrlimit>(2), B<open>(2)"
11534
11535 #. type: TH
11536 #: build/C/man3/gethostid.3:29
11537 #, no-wrap
11538 msgid "GETHOSTID"
11539 msgstr "GETHOSTID"
11540
11541 #. type: Plain text
11542 #: build/C/man3/gethostid.3:32
11543 msgid ""
11544 "gethostid, sethostid - get or set the unique identifier of the current host"
11545 msgstr "gethostid, sethostid - 現在のホストの固有の識別子を取得/設定する"
11546
11547 #. type: Plain text
11548 #: build/C/man3/gethostid.3:36
11549 msgid "B<long gethostid(void);>"
11550 msgstr "B<long gethostid(void);>"
11551
11552 #. type: Plain text
11553 #: build/C/man3/gethostid.3:38
11554 msgid "B<int sethostid(long >I<hostid>B<);>"
11555 msgstr "B<int sethostid(long >I<hostid>B<);>"
11556
11557 #. type: Plain text
11558 #: build/C/man3/gethostid.3:47
11559 msgid "B<gethostid>():"
11560 msgstr "B<gethostid>():"
11561
11562 #. type: Plain text
11563 #: build/C/man3/gethostid.3:52
11564 msgid "B<sethostid>():"
11565 msgstr "B<sethostid>():"
11566
11567 #. type: Plain text
11568 #: build/C/man3/gethostid.3:67
11569 msgid ""
11570 "B<gethostid>()  and B<sethostid>()  respectively get or set a unique 32-bit "
11571 "identifier for the current machine.  The 32-bit identifier is intended to be "
11572 "unique among all UNIX systems in existence.  This normally resembles the "
11573 "Internet address for the local machine, as returned by B<gethostbyname>(3), "
11574 "and thus usually never needs to be set."
11575 msgstr ""
11576 "B<gethostid>()  と B<sethostid>()  は、それぞれ、現在使用しているホストに固有"
11577 "の 32 ビットの識別子の 取得/設定を行う。 この 32 ビットの識別子は、現在存在し"
11578 "ている全ての UNIX システム の中で唯一になるように決められる。通常は "
11579 "B<gethostbyname>(3)  により返されるローカルマシンの Internet アドレスが代わり"
11580 "に使用され、 普通は識別子をあえて設定する必要はない。"
11581
11582 #. type: Plain text
11583 #: build/C/man3/gethostid.3:71
11584 msgid "The B<sethostid>()  call is restricted to the superuser."
11585 msgstr "B<sethostid>()  はスーパーユーザーしか使用できない。"
11586
11587 #. type: Plain text
11588 #: build/C/man3/gethostid.3:75
11589 msgid ""
11590 "B<gethostid>()  returns the 32-bit identifier for the current host as set by "
11591 "B<sethostid>()."
11592 msgstr ""
11593 "B<gethostid>()  は、 B<sethostid>()  によって設定された、現在使用しているホス"
11594 "トの 32 ビットの識別子の値を返す。"
11595
11596 #. type: Plain text
11597 #: build/C/man3/gethostid.3:81
11598 msgid ""
11599 "On success, B<sethostid>()  returns 0; on error, -1 is returned, and "
11600 "I<errno> is set to indicate the error."
11601 msgstr ""
11602 "成功すると、 B<sethostid>()  は 0 を返す。 エラーの場合、-1 を返し、 "
11603 "I<errno> にエラーを示す値を設定する。"
11604
11605 #. type: Plain text
11606 #: build/C/man3/gethostid.3:84
11607 msgid "B<sethostid>()  can fail with the following errors:"
11608 msgstr "B<sethostid>()  は以下のエラーで失敗する可能性がある。"
11609
11610 #. type: Plain text
11611 #: build/C/man3/gethostid.3:88
11612 msgid ""
11613 "The caller did not have permission to write to the file used to store the "
11614 "host ID."
11615 msgstr ""
11616 "呼び出し元がホスト ID を保存するのに使用されるファイルへの 書き込み許可を持っ"
11617 "ていなかった。"
11618
11619 #. type: Plain text
11620 #: build/C/man3/gethostid.3:92
11621 msgid ""
11622 "The calling process's effective user or group ID is not the same as its "
11623 "corresponding real ID."
11624 msgstr "呼び出し元プロセスの実効 UID/GID が対応する実 UID/GID と同じではない。"
11625
11626 #. type: Plain text
11627 #: build/C/man3/gethostid.3:102
11628 msgid ""
11629 "4.2BSD; these functions were dropped in 4.4BSD.  SVr4 includes "
11630 "B<gethostid>()  but not B<sethostid>().  POSIX.1-2001 specifies "
11631 "B<gethostid>()  but not B<sethostid>()."
11632 msgstr ""
11633 "4.2BSD。4.4BSD ではこれらの関数はなくなった。 SVr4 には B<gethostid>()  は含"
11634 "まれているが、 B<sethostid>()  は含まれていない。 POSIX.1-2001 では、 "
11635 "B<gethostid>()  は規定されているが、 B<sethostid>()  は規定されていない。"
11636
11637 #.  libc5 used /etc/hostid; libc4 didn't have these functions
11638 #. type: Plain text
11639 #: build/C/man3/gethostid.3:111
11640 msgid ""
11641 "In the glibc implementation, the I<hostid> is stored in the file I</etc/"
11642 "hostid>.  (In glibc versions before 2.2, the file I</var/adm/hostid> was "
11643 "used.)"
11644 msgstr ""
11645 "glibc の実装では、 I<hostid> はファイル I</etc/hostid> に保存される (バージョ"
11646 "ン 2.2 より前の glibc では、 I</var/adm/hostid> が使用されていた)。"
11647
11648 #. type: Plain text
11649 #: build/C/man3/gethostid.3:122
11650 msgid ""
11651 "In the glibc implementation, if B<gethostid>()  cannot open the file "
11652 "containing the host ID, then it obtains the hostname using "
11653 "B<gethostname>(2), passes that hostname to B<gethostbyname_r>(3)  in order "
11654 "to obtain the host's IPv4 address, and returns a value obtained by bit-"
11655 "twiddling the IPv4 address.  (This value may not be unique.)"
11656 msgstr ""
11657 "glibc の実装では、ホスト ID を保存したファイルを オープンできなかった場合、 "
11658 "B<gethostid>()  は B<gethostname>(2)  を使ってホスト名を入手し、そのホスト名"
11659 "を B<gethostbyname_r>(3)  に渡しホストの IPv4 アドレスを取得して、 その IPv4 "
11660 "アドレスのビット入れ替えを行った値を返す。"
11661
11662 #. type: Plain text
11663 #: build/C/man3/gethostid.3:124
11664 msgid "It is impossible to ensure that the identifier is globally unique."
11665 msgstr "識別子が世界中で一意であることを保証することはできない。"
11666
11667 #. type: Plain text
11668 #: build/C/man3/gethostid.3:127
11669 msgid "B<hostid>(1), B<gethostbyname>(3)"
11670 msgstr "B<hostid>(1), B<gethostbyname>(3)"
11671
11672 #. type: TH
11673 #: build/C/man2/gethostname.2:32
11674 #, no-wrap
11675 msgid "GETHOSTNAME"
11676 msgstr "GETHOSTNAME"
11677
11678 #. type: Plain text
11679 #: build/C/man2/gethostname.2:35
11680 msgid "gethostname, sethostname - get/set hostname"
11681 msgstr "gethostname, sethostname - ホスト名の取得・設定をする"
11682
11683 #. type: Plain text
11684 #: build/C/man2/gethostname.2:39
11685 msgid "B<int gethostname(char *>I<name>B<, size_t >I<len>B<);>"
11686 msgstr "B<int gethostname(char *>I<name>B<, size_t >I<len>B<);>"
11687
11688 #. type: Plain text
11689 #: build/C/man2/gethostname.2:41
11690 msgid "B<int sethostname(const char *>I<name>B<, size_t >I<len>B<);>"
11691 msgstr "B<int sethostname(const char *>I<name>B<, size_t >I<len>B<);>"
11692
11693 #. type: Plain text
11694 #: build/C/man2/gethostname.2:50
11695 msgid "B<gethostname>():"
11696 msgstr "B<gethostname>():"
11697
11698 #. type: Plain text
11699 #: build/C/man2/gethostname.2:53
11700 msgid "Since glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
11701 msgstr "glibc 2.12 以降: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
11702
11703 #. type: Plain text
11704 #: build/C/man2/gethostname.2:55
11705 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
11706 msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
11707
11708 #. type: Plain text
11709 #: build/C/man2/gethostname.2:58
11710 msgid "B<sethostname>():"
11711 msgstr "B<sethostname>():"
11712
11713 #. type: Plain text
11714 #: build/C/man2/gethostname.2:66
11715 msgid ""
11716 "These system calls are used to access or to change the hostname of the "
11717 "current processor."
11718 msgstr ""
11719 "これらのシステムコールは、現在のプロセッサのホスト名を取得・変更するために 使"
11720 "用される。"
11721
11722 #. type: Plain text
11723 #: build/C/man2/gethostname.2:77
11724 msgid ""
11725 "B<sethostname>()  sets the hostname to the value given in the character "
11726 "array I<name>.  The I<len> argument specifies the number of bytes in "
11727 "I<name>.  (Thus, I<name> does not require a terminating null byte.)"
11728 msgstr ""
11729 "B<sethostname>()  は、ホスト名を、文字配列 I<name> で指定された値に設定す"
11730 "る。 引き数 I<len> には、 I<name> のバイト数を指定する (そのため、 I<name> で"
11731 "は文字列終端のヌルバイトは必要ない)。"
11732
11733 #. type: Plain text
11734 #: build/C/man2/gethostname.2:89
11735 msgid ""
11736 "B<gethostname>()  returns the null-terminated hostname in the character "
11737 "array I<name>, which has a length of I<len> bytes.  If the null-terminated "
11738 "hostname is too large to fit, then the name is truncated, and no error is "
11739 "returned (but see NOTES below).  POSIX.1-2001 says that if such truncation "
11740 "occurs, then it is unspecified whether the returned buffer includes a "
11741 "terminating null byte."
11742 msgstr ""
11743 "B<gethostname>()  は、NULL 終端されたホスト名を、 I<len> バイトの長さの文字配"
11744 "列 I<name> に格納して返す。ヌル終端されたホスト名が格納先のバッファーよりも長"
11745 "い場合は、 ホスト名は切り詰められ、エラーは返されない (下記の「注意」の節を参"
11746 "照)。 POSIX.1-2001 では、結果の切り詰めが発生した場合に、 返されたバッファー"
11747 "に終端のヌルバイトが含まれているかどうかは 規定されていない。"
11748
11749 #. type: Plain text
11750 #: build/C/man2/gethostname.2:99
11751 msgid "I<name> is an invalid address."
11752 msgstr "I<name> が不正なアドレスである。"
11753
11754 #.  Can't occur for gethostbyname() wrapper, since 'len' has an
11755 #.  unsigned type; can occur for the underlying system call.
11756 #. type: Plain text
11757 #: build/C/man2/gethostname.2:109
11758 msgid ""
11759 "I<len> is negative or, for B<sethostname>(), I<len> is larger than the "
11760 "maximum allowed size."
11761 msgstr ""
11762 "I<len> が負である。 B<sethostname>()  において I<len> が許容された最大サイズ"
11763 "を越えている。"
11764
11765 #. type: Plain text
11766 #: build/C/man2/gethostname.2:117
11767 msgid ""
11768 "(glibc B<gethostname>())  I<len> is smaller than the actual size.  (Before "
11769 "version 2.1, glibc uses B<EINVAL> for this case.)"
11770 msgstr ""
11771 "(glibc B<gethostname>()  で)  I<len> が実際のホスト名の長さよりも小さい "
11772 "(glibc バージョン 2.1 より前では、この状況で B<EINVAL> が使用される)。"
11773
11774 #. type: Plain text
11775 #: build/C/man2/gethostname.2:124
11776 msgid ""
11777 "For B<sethostname>(), the caller did not have the B<CAP_SYS_ADMIN> "
11778 "capability."
11779 msgstr ""
11780 "B<sethostname>()  において、呼び出した人が B<CAP_SYS_ADMIN> ケーパビリティ "
11781 "(capability) を持っていなかった。"
11782
11783 #. type: Plain text
11784 #: build/C/man2/gethostname.2:130
11785 msgid ""
11786 "SVr4, 4.4BSD (these interfaces first appeared in 4.2BSD).  POSIX.1-2001 "
11787 "specifies B<gethostname>()  but not B<sethostname>()."
11788 msgstr ""
11789 "SVr4, 4.4BSD (これらのインターフェースは 4.2BSD で初めて登場した)。 "
11790 "POSIX.1-2001 では B<gethostname>()  については規定しているが、 "
11791 "B<sethostname>()  は規定していない。"
11792
11793 #. type: Plain text
11794 #: build/C/man2/gethostname.2:140
11795 msgid ""
11796 "SUSv2 guarantees that \"Host names are limited to 255 bytes\".  POSIX.1-2001 "
11797 "guarantees that \"Host names (not including the terminating null byte) are "
11798 "limited to B<HOST_NAME_MAX> bytes\".  On Linux, B<HOST_NAME_MAX> is defined "
11799 "with the value 64, which has been the limit since Linux 1.0 (earlier kernels "
11800 "imposed a limit of 8 bytes)."
11801 msgstr ""
11802 "SUSv2 では「ホスト名が 255 バイトに制限される」ことを保証している。 "
11803 "POSIX.1-2001 では「ホスト名 (終端のヌルバイトは含まない) が B<HOST_NAME_MAX> "
11804 "バイトに制限される」ことを保証している。 Linux では、 B<HOST_NAME_MAX> は 64 "
11805 "に定義されており、 Linux 1.0 以降ではこれが上限となってきた (もっと古いカーネ"
11806 "ルでは 8 バイトの上限が適用されていた)。"
11807
11808 #. type: Plain text
11809 #: build/C/man2/gethostname.2:163
11810 msgid ""
11811 "The GNU C library does not employ the B<gethostname>()  system call; "
11812 "instead, it implements B<gethostname>()  as a library function that calls "
11813 "B<uname>(2)  and copies up to I<len> bytes from the returned I<nodename> "
11814 "field into I<name>.  Having performed the copy, the function then checks if "
11815 "the length of the I<nodename> was greater than or equal to I<len>, and if it "
11816 "is, then the function returns -1 with I<errno> set to B<ENAMETOOLONG>; in "
11817 "this case, a terminating null byte is not included in the returned I<name>."
11818 msgstr ""
11819 "GNU C ライブラリは、 B<gethostname>()  システムコールを利用していない。その代"
11820 "わり、 B<gethostname>()  をライブラリ関数として実装しており、 この関数は "
11821 "B<uname>(2)  を呼び出し、 B<uname>(2)  が返した I<nodename> フィールド (の最"
11822 "大 I<len> バイト) を I<name> にコピーする。 コピーを行った際に、この関数は "
11823 "I<nodename> の長さが I<len> 以上かの確認を行い、 I<len> 以上の場合には -1 を"
11824 "返し、 I<errno> に B<ENAMETOOLONG> を設定する。 この場合、返された I<name> に"
11825 "は終端のヌルバイトは含まれない。"
11826
11827 #.  At least glibc 2.0 and 2.1, older versions not checked
11828 #. type: Plain text
11829 #: build/C/man2/gethostname.2:176
11830 msgid ""
11831 "Versions of glibc before 2.2 handle the case where the length of the "
11832 "I<nodename> was greater than or equal to I<len> differently: nothing is "
11833 "copied into I<name> and the function returns -1 with I<errno> set to "
11834 "B<ENAMETOOLONG>."
11835 msgstr ""
11836 "バージョン 2.2 より前の glibc では、 I<nodename> の長さが I<len> 以上の場合の"
11837 "扱いが異なる; I<len> 以上の場合には、 I<name> には何もコピーせず、関数は -1 "
11838 "を返し、 I<errno> に B<ENAMETOOLONG> を設定する。"
11839
11840 #. type: Plain text
11841 #: build/C/man2/gethostname.2:180
11842 msgid "B<getdomainname>(2), B<setdomainname>(2), B<uname>(2)"
11843 msgstr "B<getdomainname>(2), B<setdomainname>(2), B<uname>(2)"
11844
11845 #. type: TH
11846 #: build/C/man3/getlogin.3:28
11847 #, no-wrap
11848 msgid "GETLOGIN"
11849 msgstr "GETLOGIN"
11850
11851 #. type: TH
11852 #: build/C/man3/getlogin.3:28
11853 #, no-wrap
11854 msgid "2013-04-19"
11855 msgstr "2013-04-19"
11856
11857 #. type: Plain text
11858 #: build/C/man3/getlogin.3:31
11859 msgid "getlogin, getlogin_r, cuserid - get username"
11860 msgstr "getlogin, getlogin_r, cuserid - ユーザー名を取得する"
11861
11862 #. type: Plain text
11863 #: build/C/man3/getlogin.3:35
11864 msgid "B<char *getlogin(void);>"
11865 msgstr "B<char *getlogin(void);>"
11866
11867 #. type: Plain text
11868 #: build/C/man3/getlogin.3:37
11869 msgid "B<int getlogin_r(char *>I<buf>B<, size_t >I<bufsize>B<);>"
11870 msgstr "B<int getlogin_r(char *>I<buf>B<, size_t >I<bufsize>B<);>"
11871
11872 #. type: Plain text
11873 #: build/C/man3/getlogin.3:39
11874 msgid "B<#include E<lt>stdio.hE<gt>>"
11875 msgstr "B<#include E<lt>stdio.hE<gt>>"
11876
11877 #. type: Plain text
11878 #: build/C/man3/getlogin.3:41
11879 msgid "B<char *cuserid(char *>I<string>B<);>"
11880 msgstr "B<char *cuserid(char *>I<string>B<);>"
11881
11882 #. type: Plain text
11883 #: build/C/man3/getlogin.3:49
11884 msgid "B<getlogin_r>(): _REENTRANT || _POSIX_C_SOURCE\\ E<gt>=\\ 199506L"
11885 msgstr "B<getlogin_r>(): _REENTRANT || _POSIX_C_SOURCE\\ E<gt>=\\ 199506L"
11886
11887 #. type: Plain text
11888 #: build/C/man3/getlogin.3:52
11889 msgid "B<cuserid>(): _XOPEN_SOURCE"
11890 msgstr "B<cuserid>(): _XOPEN_SOURCE"
11891
11892 #. type: Plain text
11893 #: build/C/man3/getlogin.3:61
11894 msgid ""
11895 "B<getlogin>()  returns a pointer to a string containing the name of the user "
11896 "logged in on the controlling terminal of the process, or a null pointer if "
11897 "this information cannot be determined.  The string is statically allocated "
11898 "and might be overwritten on subsequent calls to this function or to "
11899 "B<cuserid>()."
11900 msgstr ""
11901 "B<getlogin>()  は、現在のプロセスの制御端末にログインしているユーザー名の文字"
11902 "列への ポインターを返す。ユーザー名が決定できない場合はヌルポインターを返"
11903 "す。 文字列は静的領域に割り当てられており、この後でこの関数や B<cuserid>()  "
11904 "が呼び出された際に上書きされることがある。"
11905
11906 #. type: Plain text
11907 #: build/C/man3/getlogin.3:67
11908 msgid ""
11909 "B<getlogin_r>()  returns this same username in the array I<buf> of size "
11910 "I<bufsize>."
11911 msgstr ""
11912 "B<getlogin_r>()  は、上記の同じユーザー名を、大きさ I<bufsize> の配列 I<buf> "
11913 "に入れて返す。"
11914
11915 #. type: Plain text
11916 #: build/C/man3/getlogin.3:79
11917 msgid ""
11918 "B<cuserid>()  returns a pointer to a string containing a username associated "
11919 "with the effective user ID of the process.  If I<string> is not a null "
11920 "pointer, it should be an array that can hold at least B<L_cuserid> "
11921 "characters; the string is returned in this array.  Otherwise, a pointer to a "
11922 "string in a static area is returned.  This string is statically allocated "
11923 "and might be overwritten on subsequent calls to this function or to "
11924 "B<getlogin>()."
11925 msgstr ""
11926 "B<cuserid>()  は、現在のプロセスの実効ユーザーID に対応するユーザー名の 文字"
11927 "列へのポインターを返す。 I<string> がヌルポインター以外の場合、I<string> は少"
11928 "なくとも B<L_cuserid> 文字を保持できる配列でなければならない。 I<string> が "
11929 "ヌルポインターの場合には、静的領域に置かれた文字列への ポインターが返される。"
11930 "この文字列は静的領域に割り当てられており、後で この関数や B<getlogin>()  が呼"
11931 "び出された際に上書きされることがある。"
11932
11933 #. type: Plain text
11934 #: build/C/man3/getlogin.3:83
11935 msgid ""
11936 "The macro B<L_cuserid> is an integer constant that indicates how long an "
11937 "array you might need to store a username.  B<L_cuserid> is declared in "
11938 "I<E<lt>stdio.hE<gt>>."
11939 msgstr ""
11940 "マクロ B<L_cuserid> は integer の定数で、ユーザー名を保持するために 必要な配"
11941 "列の長さを示す。 B<L_cuserid> は B<stdio.h> で宣言されて いる。"
11942
11943 #. type: Plain text
11944 #: build/C/man3/getlogin.3:90
11945 msgid ""
11946 "These functions let your program identify positively the user who is running "
11947 "(B<cuserid>())  or the user who logged in this session (B<getlogin>()).  "
11948 "(These can differ when set-user-ID programs are involved.)"
11949 msgstr ""
11950 "これらの関数を使うと、プログラムを実行しているユーザー (B<cuserid>())  や こ"
11951 "のセッションにログインしているユーザー (B<getlogin>())  を明確に特定すること"
11952 "ができる (ただし set-user-ID プログラムでは、状況が違うこともある)。"
11953
11954 #. type: Plain text
11955 #: build/C/man3/getlogin.3:95
11956 msgid ""
11957 "For most purposes, it is more useful to use the environment variable "
11958 "B<LOGNAME> to find out who the user is.  This is more flexible precisely "
11959 "because the user can set B<LOGNAME> arbitrarily."
11960 msgstr ""
11961 "たいていの目的では、ユーザーの特定には環境変数 B<LOGNAME> を調べ るほうが便利"
11962 "である。LOGNAME 変数はユーザーが自由に設定できるので より柔軟な対応が可能にな"
11963 "る。"
11964
11965 #. type: Plain text
11966 #: build/C/man3/getlogin.3:103
11967 msgid ""
11968 "B<getlogin>()  returns a pointer to the username when successful, and NULL "
11969 "on failure, with I<errno> set to indicate the cause of the error.  "
11970 "B<getlogin_r>()  returns 0 when successful, and nonzero on failure."
11971 msgstr ""
11972 "B<getlogin>()  は成功した場合はユーザー名へのポインターを返す。 失敗した場合"
11973 "は NULL を返し、 I<errno> にエラーの原因を示す値を設定する。 "
11974 "B<getlogin_r>()  は成功すると 0 を返し、失敗すると 0 以外を返す。"
11975
11976 #. type: Plain text
11977 #: build/C/man3/getlogin.3:105
11978 msgid "POSIX specifies"
11979 msgstr "POSIX では以下のエラーが規定されている:"
11980
11981 #. type: Plain text
11982 #: build/C/man3/getlogin.3:108
11983 msgid ""
11984 "The calling process already has the maximum allowed number of open files."
11985 msgstr ""
11986 "呼び出し元プロセスがオープンしているファイル数がすでにプロセスあたりの 上限に"
11987 "達している。"
11988
11989 #. type: Plain text
11990 #: build/C/man3/getlogin.3:111
11991 msgid "The system already has the maximum allowed number of open files."
11992 msgstr "システム全体でオープンしているファイル数がすでに上限に達している。"
11993
11994 #. type: TP
11995 #: build/C/man3/getlogin.3:111
11996 #, no-wrap
11997 msgid "B<ENXIO>"
11998 msgstr "B<ENXIO>"
11999
12000 #. type: Plain text
12001 #: build/C/man3/getlogin.3:114
12002 msgid "The calling process has no controlling terminal."
12003 msgstr "呼び出し元プロセスには制御端末がない。"
12004
12005 #. type: Plain text
12006 #: build/C/man3/getlogin.3:120
12007 msgid ""
12008 "(getlogin_r)  The length of the username, including the terminating null "
12009 "byte (\\(aq\\e0\\(aq), is larger than I<bufsize>."
12010 msgstr ""
12011 "(getlogin_r)  (終端のヌルバイト (\\(aq\\e0\\(aq) も含めた) ユーザー名の長さ"
12012 "が I<bufsize> よりも長い。"
12013
12014 #. type: Plain text
12015 #: build/C/man3/getlogin.3:122
12016 msgid "Linux/glibc also has"
12017 msgstr "Linux/glibc には以下のエラーもある。"
12018
12019 #. type: Plain text
12020 #: build/C/man3/getlogin.3:125
12021 msgid "There was no corresponding entry in the utmp-file."
12022 msgstr "utmp ファイルに対応するエントリーがなかった。"
12023
12024 #. type: Plain text
12025 #: build/C/man3/getlogin.3:128
12026 msgid "Insufficient memory to allocate passwd structure."
12027 msgstr "passwd 構造体を割り当てるのに十分なメモリーがない。"
12028
12029 #. type: TP
12030 #: build/C/man3/getlogin.3:128 build/C/man2/ioctl.2:109
12031 #: build/C/man2/ioctl.2:113 build/C/man3/tcgetpgrp.3:95
12032 #, no-wrap
12033 msgid "B<ENOTTY>"
12034 msgstr "B<ENOTTY>"
12035
12036 #. type: Plain text
12037 #: build/C/man3/getlogin.3:132
12038 msgid "Standard input didn't refer to a terminal.  (See BUGS.)"
12039 msgstr "標準入力が端末を参照していない (「バグ」の節を参照)。"
12040
12041 #. type: TP
12042 #: build/C/man3/getlogin.3:133
12043 #, no-wrap
12044 msgid "I</etc/passwd>"
12045 msgstr "I</etc/passwd>"
12046
12047 #. type: Plain text
12048 #: build/C/man3/getlogin.3:136
12049 msgid "password database file"
12050 msgstr "パスワードデータベースのファイル"
12051
12052 #. type: TP
12053 #: build/C/man3/getlogin.3:136
12054 #, no-wrap
12055 msgid "I</var/run/utmp>"
12056 msgstr "I</var/run/utmp>"
12057
12058 #. type: Plain text
12059 #: build/C/man3/getlogin.3:140
12060 msgid "(traditionally I</etc/utmp>; some libc versions used I</var/adm/utmp>)"
12061 msgstr ""
12062 "(伝統的には I</etc/utmp> が使われている; libc の中には I</var/adm/utmp> を使"
12063 "うものもある)"
12064
12065 #. type: Plain text
12066 #: build/C/man3/getlogin.3:145
12067 msgid "The B<getlogin>()  function is not thread-safe."
12068 msgstr "B<getlogin>() 関数はスレッドセーフではない。"
12069
12070 #. type: Plain text
12071 #: build/C/man3/getlogin.3:149
12072 msgid "The B<getlogin_r>()  function is thread-safe."
12073 msgstr "B<getlogin_r>() 関数はスレッドセーフである。"
12074
12075 #. type: Plain text
12076 #: build/C/man3/getlogin.3:154
12077 msgid ""
12078 "The B<cuserid>()  function is thread-safe with exceptions.  It is not thread-"
12079 "safe if called with a NULL parameter."
12080 msgstr ""
12081 "B<cuserid>() 関数は、例外付きのスレッドセーフである。 パラメーター NULL で呼"
12082 "び出した場合はスレッドセーフではない。"
12083
12084 #. type: Plain text
12085 #: build/C/man3/getlogin.3:159
12086 msgid "B<getlogin>()  and B<getlogin_r>()  specified in POSIX.1-2001."
12087 msgstr "B<getlogin>()  と B<getlogin_r>()  は POSIX.1-2001 で規定されている。"
12088
12089 #. type: Plain text
12090 #: build/C/man3/getlogin.3:170
12091 msgid ""
12092 "System V has a B<cuserid>()  function which uses the real user ID rather "
12093 "than the effective user ID.  The B<cuserid>()  function was included in the "
12094 "1988 version of POSIX, but removed from the 1990 version.  It was present in "
12095 "SUSv2, but removed in POSIX.1-2001."
12096 msgstr ""
12097 "System V にも B<cuserid>()  があるが、 これは実効ユーザー ID ではなく、実ユー"
12098 "ザー ID を使用する。 B<cuserid>()  関数は 1988 年版の POSIX には含まれていた"
12099 "が、 1990 年版では削除された。 SUSv2 に存在したが、POSIX.1-2001 で削除され"
12100 "た。"
12101
12102 #. type: Plain text
12103 #: build/C/man3/getlogin.3:177
12104 msgid ""
12105 "OpenBSD has B<getlogin>()  and B<setlogin>(), and a username associated with "
12106 "a session, even if it has no controlling terminal."
12107 msgstr ""
12108 "OpenBSD には B<getlogin>()  と B<setlogin>()  があり、 セッションに対応した"
12109 "ユーザー名がある。制御端末がない セッションの場合であっても、対応するユーザー"
12110 "名がある。"
12111
12112 #. type: Plain text
12113 #: build/C/man3/getlogin.3:189
12114 msgid ""
12115 "Unfortunately, it is often rather easy to fool B<getlogin>().  Sometimes it "
12116 "does not work at all, because some program messed up the utmp file.  Often, "
12117 "it gives only the first 8 characters of the login name.  The user currently "
12118 "logged in on the controlling terminal of our program need not be the user "
12119 "who started it.  Avoid B<getlogin>()  for security-related purposes."
12120 msgstr ""
12121 "残念ながら、 B<getlogin>() をだますのはそれほど難しいことではない。別のプログ"
12122 "ラムが utmp ファイルを 壊してしまうと、全く動作しないこともある。またログイン"
12123 "名の最初の 8 文字 しか返さないことも多い。また、プログラムの制御端末に現在ロ"
12124 "グインしているユーザーは、プログラムを実行したユーザーでない場合もある。 セ"
12125 "キュリティの絡む用途には B<getlogin>() を用いるべきではない。"
12126
12127 #. type: Plain text
12128 #: build/C/man3/getlogin.3:199
12129 msgid ""
12130 "Note that glibc does not follow the POSIX specification and uses I<stdin> "
12131 "instead of I</dev/tty>.  A bug.  (Other recent systems, like SunOS 5.8 and "
12132 "HP-UX 11.11 and FreeBSD 4.8 all return the login name also when I<stdin> is "
12133 "redirected.)"
12134 msgstr ""
12135 "glibc は POSIX 仕様には従っておらず、 I</dev/tty> ではなく I<標準入力 "
12136 "(stdin)> を使う。これはバグである。 (SunOS 5.8 や HP-UX 11.11 や FreeBSD 4.8 "
12137 "といった他の最近のシステムはいずれも、 I<標準入力> がリダイレクトされた場合で"
12138 "もログイン名を返す。)"
12139
12140 #. type: Plain text
12141 #: build/C/man3/getlogin.3:209
12142 msgid ""
12143 "Nobody knows precisely what B<cuserid>()  does; avoid it in portable "
12144 "programs.  Or avoid it altogether: use I<getpwuid(geteuid())> instead, if "
12145 "that is what you meant.  B<Do not use> B<cuserid>()."
12146 msgstr ""
12147 "B<cuserid>()  が何を行っているのか、実際のところを知っている者は誰もいない; "
12148 "移植性が求められるプログラムでは B<cuserid>()  は使うべきではない。 というか"
12149 "どんなプログラムでも使うべきではない: 代わりに I<getpwuid(geteuid())> を用い"
12150 "るべきである (これが意図していることならば、だが)。 B<cuserid>()  は「使わな"
12151 "い」こと。"
12152
12153 #. type: Plain text
12154 #: build/C/man3/getlogin.3:213
12155 msgid "B<geteuid>(2), B<getuid>(2), B<utmp>(5)"
12156 msgstr "B<geteuid>(2), B<getuid>(2), B<utmp>(5)"
12157
12158 #. type: TH
12159 #: build/C/man3/getopt.3:41
12160 #, no-wrap
12161 msgid "GETOPT"
12162 msgstr "GETOPT"
12163
12164 #. type: TH
12165 #: build/C/man3/getopt.3:41
12166 #, fuzzy, no-wrap
12167 #| msgid "2010-02-03"
12168 msgid "2015-02-01"
12169 msgstr "2010-02-03"
12170
12171 #. type: Plain text
12172 #: build/C/man3/getopt.3:45
12173 msgid ""
12174 "getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - "
12175 "Parse command-line options"
12176 msgstr ""
12177 "getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - コマ"
12178 "ンドラインオプションを解釈する"
12179
12180 #. type: Plain text
12181 #: build/C/man3/getopt.3:51
12182 #, no-wrap
12183 msgid ""
12184 "B<int getopt(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12185 "B<           const char *>I<optstring>B<);>\n"
12186 msgstr ""
12187 "B<int getopt(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12188 "B<           const char *>I<optstring>B<);>\n"
12189
12190 #. type: Plain text
12191 #: build/C/man3/getopt.3:54
12192 #, no-wrap
12193 msgid ""
12194 "B<extern char *>I<optarg>B<;>\n"
12195 "B<extern int >I<optind>B<, >I<opterr>B<, >I<optopt>B<;>\n"
12196 msgstr ""
12197 "B<extern char *>I<optarg>B<;>\n"
12198 "B<extern int >I<optind>B<, >I<opterr>B<, >I<optopt>B<;>\n"
12199
12200 #. type: Plain text
12201 #: build/C/man3/getopt.3:56
12202 #, no-wrap
12203 msgid "B<#include E<lt>getopt.hE<gt>>\n"
12204 msgstr "B<#include E<lt>getopt.hE<gt>>\n"
12205
12206 #. type: Plain text
12207 #: build/C/man3/getopt.3:60
12208 #, no-wrap
12209 msgid ""
12210 "B<int getopt_long(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12211 "B<           const char *>I<optstring>B<,>\n"
12212 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12213 msgstr ""
12214 "B<int getopt_long(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12215 "B<           const char *>I<optstring>B<,>\n"
12216 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12217
12218 #. type: Plain text
12219 #: build/C/man3/getopt.3:64
12220 #, no-wrap
12221 msgid ""
12222 "B<int getopt_long_only(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12223 "B<           const char *>I<optstring>B<,>\n"
12224 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12225 msgstr ""
12226 "B<int getopt_long_only(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
12227 "B<           const char *>I<optstring>B<,>\n"
12228 "B<           const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
12229
12230 #. type: Plain text
12231 #: build/C/man3/getopt.3:74
12232 msgid "B<getopt>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
12233 msgstr "B<getopt>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
12234
12235 #. type: Plain text
12236 #: build/C/man3/getopt.3:78
12237 msgid "B<getopt_long>(), B<getopt_long_only>(): _GNU_SOURCE"
12238 msgstr "B<getopt_long>(), B<getopt_long_only>(): _GNU_SOURCE"
12239
12240 #. type: Plain text
12241 #: build/C/man3/getopt.3:99
12242 msgid ""
12243 "The B<getopt>()  function parses the command-line arguments.  Its arguments "
12244 "I<argc> and I<argv> are the argument count and array as passed to the "
12245 "I<main>()  function on program invocation.  An element of I<argv> that "
12246 "starts with \\(aq-\\(aq (and is not exactly \"-\" or \"--\")  is an option "
12247 "element.  The characters of this element (aside from the initial \\(aq-"
12248 "\\(aq) are option characters.  If B<getopt>()  is called repeatedly, it "
12249 "returns successively each of the option characters from each of the option "
12250 "elements."
12251 msgstr ""
12252 "B<getopt>()  関数はコマンドライン引き数を解釈する。 B<getopt>()  がとる引き"
12253 "数 I<argc> と I<argv> は、それぞれプログラムの起動時に I<main>()  関数に渡さ"
12254 "れた引き数の個数と配列である。 I<argv> の要素のうち \\(aq-\\(aq で始まるもの "
12255 "(かつ \"-\" 単独や \"--\" 単独ではないもの) は オプション要素 (option "
12256 "element) とみなされる。 この要素から先頭の \\(aq-\\(aq を除いた文字は オプ"
12257 "ション文字 (option character) とされる。 B<getopt>()  は、繰り返し呼び出され"
12258 "るごとに、次のオプション文字を返す。"
12259
12260 #. type: Plain text
12261 #: build/C/man3/getopt.3:108
12262 msgid ""
12263 "The variable I<optind> is the index of the next element to be processed in "
12264 "I<argv>.  The system initializes this value to 1.  The caller can reset it "
12265 "to 1 to restart scanning of the same I<argv>, or when scanning a new "
12266 "argument vector."
12267 msgstr ""
12268 "変数 I<optind> は、 I<argv> の次に処理される要素のインデックスである。 システ"
12269 "ムによりこの変数の値は 1 に初期化される。 呼び出し側でこの値を 1 にリセットす"
12270 "ることで、同じ I<argv> のスキャンをやり直したり、新しい引き数ベクトルをスキャ"
12271 "ンすることができる。"
12272
12273 #. type: Plain text
12274 #: build/C/man3/getopt.3:118
12275 msgid ""
12276 "If B<getopt>()  finds another option character, it returns that character, "
12277 "updating the external variable I<optind> and a static variable I<nextchar> "
12278 "so that the next call to B<getopt>()  can resume the scan with the following "
12279 "option character or I<argv>-element."
12280 msgstr ""
12281 "新たなオプション文字を見つけると、 B<getopt>()  はその文字を返し、 外部変数 "
12282 "I<optind> とスタティックな変数 I<nextchar> を更新する。 これらによって、 "
12283 "B<getopt>()  は次回の呼び出しの際に、 以降のオプション文字や I<argv> 要素のス"
12284 "キャンを継続できる。"
12285
12286 #. type: Plain text
12287 #: build/C/man3/getopt.3:124
12288 msgid ""
12289 "If there are no more option characters, B<getopt>()  returns -1.  Then "
12290 "I<optind> is the index in I<argv> of the first I<argv>-element that is not "
12291 "an option."
12292 msgstr ""
12293 "オプション文字がそれ以上見つからなくなると、 B<getopt>()  は -1 を返す。そし"
12294 "て I<optind> は、I<argv> の要素のうち、 オプションでない最初の要素を示すよう"
12295 "になる。"
12296
12297 #. type: Plain text
12298 #: build/C/man3/getopt.3:151
12299 msgid ""
12300 "I<optstring> is a string containing the legitimate option characters.  If "
12301 "such a character is followed by a colon, the option requires an argument, so "
12302 "B<getopt>()  places a pointer to the following text in the same I<argv>-"
12303 "element, or the text of the following I<argv>-element, in I<optarg>.  Two "
12304 "colons mean an option takes an optional arg; if there is text in the current "
12305 "I<argv>-element (i.e., in the same word as the option name itself, for "
12306 "example, \"-oarg\"), then it is returned in I<optarg>, otherwise I<optarg> "
12307 "is set to zero.  This is a GNU extension.  If I<optstring> contains B<W> "
12308 "followed by a semicolon, then B<-W foo> is treated as the long option B<--"
12309 "foo>.  (The B<-W> option is reserved by POSIX.2 for implementation "
12310 "extensions.)  This behavior is a GNU extension, not available with libraries "
12311 "before glibc 2."
12312 msgstr ""
12313 "I<optstring> は受け付けるオプション文字からなる文字列である。 文字のあとにコ"
12314 "ロン (:) が置かれている場合は、 オプションには引き数が必要であることを示す。 "
12315 "このとき B<getopt>()  は、現在注目している I<argv> 要素で、オプション文字に引"
12316 "き続くテキストへのポインターか、 あるいは次の I<argv> 要素のテキストへのポイ"
12317 "ンターを I<optarg> に代入する。 2 個連続してコロンが置かれている場合は、 その"
12318 "オプションは引き数をとってもとらなくてもよい。 現在の I<argv> 要素にテキスト"
12319 "があれば (つまり、\"-oarg\" のように、オプション名自身と同じワード内に テキス"
12320 "トがある場合)、それが I<optarg> に返される。 なければ I<optarg> は 0 に設定さ"
12321 "れる。 これは GNU による拡張である。 I<optstring> に B<W> とそれに続くセミコ"
12322 "ロンが入っていると、 B<-W foo> は長いオプション B<--foo> と同じように扱われ"
12323 "る (POSIX.2 は B<-W> オプションを実装依存の拡張として予約している)。 この動作"
12324 "は GNU による拡張であり、glibc 2 以前のライブラリでは 利用できない。"
12325
12326 #. type: Plain text
12327 #: build/C/man3/getopt.3:169
12328 msgid ""
12329 "By default, B<getopt>()  permutes the contents of I<argv> as it scans, so "
12330 "that eventually all the nonoptions are at the end.  Two other modes are also "
12331 "implemented.  If the first character of I<optstring> is \\(aq+\\(aq or the "
12332 "environment variable B<POSIXLY_CORRECT> is set, then option processing stops "
12333 "as soon as a nonoption argument is encountered.  If the first character of "
12334 "I<optstring> is \\(aq-\\(aq, then each nonoption I<argv>-element is handled "
12335 "as if it were the argument of an option with character code 1.  (This is "
12336 "used by programs that were written to expect options and other I<argv>-"
12337 "elements in any order and that care about the ordering of the two.)  The "
12338 "special argument \"--\" forces an end of option-scanning regardless of the "
12339 "scanning mode."
12340 msgstr ""
12341 "デフォルトでは B<getopt>()  は I<argv> をスキャンする際に順序を変更し、 オプ"
12342 "ション以外の要素を最後に移動する。 他にも 2 つのモードが実装されている。 "
12343 "I<optstring> の先頭文字が \\(aq+\\(aq であるか、環境変数 B<POSIXLY_CORRECT> "
12344 "が設定されている場合には、オプションを対象とする動作は、 非オプションの引き数"
12345 "が現れた段階で終了する。 I<optstring> の先頭文字が \\(aq-\\(aq である場合に"
12346 "は、 オプションでない I<argv> 要素は、 文字コード 1 のオプションであるかのよ"
12347 "うに扱われる (これを用いるプログラムは、 オプションや I<argv> 要素を任意の順"
12348 "序で受け入れ、かつそれらの順序が 意味を持つように書かれている必要がある)。 "
12349 "\"--\" は特殊な引き数で、スキャンのモードによらず、 オプションのスキャンを強"
12350 "制的に終了させる。"
12351
12352 #. type: Plain text
12353 #: build/C/man3/getopt.3:177
12354 msgid ""
12355 "If B<getopt>()  does not recognize an option character, it prints an error "
12356 "message to I<stderr>, stores the character in I<optopt>, and returns \\(aq?"
12357 "\\(aq.  The calling program may prevent the error message by setting "
12358 "I<opterr> to 0."
12359 msgstr ""
12360 "認識できないオプション文字があると、 B<getopt>()  はエラーメッセージを標準エ"
12361 "ラー出力 I<stderr> に表示し、 その文字を I<optopt> に保存して \\(aq?\\(aq を"
12362 "返す。 呼び出したプログラムで I<opterr> を 0 にしておけば、 エラーメッセージ"
12363 "の表示を抑制できる。"
12364
12365 #. type: Plain text
12366 #: build/C/man3/getopt.3:196
12367 msgid ""
12368 "If B<getopt>()  finds an option character in I<argv> that was not included "
12369 "in I<optstring>, or if it detects a missing option argument, it returns "
12370 "\\(aq?\\(aq and sets the external variable I<optopt> to the actual option "
12371 "character.  If the first character (following any optional \\(aq+\\(aq or "
12372 "\\(aq-\\(aq described above)  of I<optstring> is a colon (\\(aq:\\(aq), then "
12373 "B<getopt>()  returns \\(aq:\\(aq instead of \\(aq?\\(aq to indicate a "
12374 "missing option argument.  If an error was detected, and the first character "
12375 "of I<optstring> is not a colon, and the external variable I<opterr> is "
12376 "nonzero (which is the default), B<getopt>()  prints an error message."
12377 msgstr ""
12378 "B<getopt>()  は I<argv> の中に I<optstring> にないオプション文字を見つけた場"
12379 "合、 またはオプション引き数が足りないことが分かった場合、 \\&\\(aq?\\(aq を返"
12380 "して外部変数 I<optopt> をそのオプション文字に設定する。 I<optstring> の (上で"
12381 "説明したオプションで指定できる \\&\\(aq+\\(aq または \\(aq-\\(aq 後に続く) 最"
12382 "初の文字が コロン (\\(aq:\\(aq) のとき、 B<getopt>()  はオプション引き数が足"
12383 "りない場合に \\(aq?\\(aq ではなく \\(aq:\\(aq を返す。 エラーを見つけた場合"
12384 "で、かつ I<optstring> の最初の文字がコロンでなく、 かつ外部変数 I<opterr> が "
12385 "0 でない場合 (これがデフォルト)、 B<getopt>()  はエラーメッセージを表示する。"
12386
12387 #. type: SS
12388 #: build/C/man3/getopt.3:196
12389 #, no-wrap
12390 msgid "getopt_long() and getopt_long_only()"
12391 msgstr "getopt_long() と getopt_long_only()"
12392
12393 #. type: Plain text
12394 #: build/C/man3/getopt.3:212
12395 msgid ""
12396 "The B<getopt_long>()  function works like B<getopt>()  except that it also "
12397 "accepts long options, started with two dashes.  (If the program accepts only "
12398 "long options, then I<optstring> should be specified as an empty string "
12399 "(\"\"), not NULL.)  Long option names may be abbreviated if the abbreviation "
12400 "is unique or is an exact match for some defined option.  A long option may "
12401 "take a parameter, of the form B<--arg=param> or B<--arg param>."
12402 msgstr ""
12403 "B<getopt_long>()  関数は、長いオプション (2 つのダッシュ \"--\" で始まるオプ"
12404 "ション) を 受け入れることを除いて B<getopt>()  と同じように動作する (プログラ"
12405 "ムに長いオプションだけが渡された場合、 I<optstring> は NULL ではなく空文字列 "
12406 "(\"\") となる)。 長いオプションの名前は、他と重ならない範囲において短縮でき"
12407 "る。 あるいは定義されたオプションに正確にマッチするものでも (当然) かまわな"
12408 "い。 長いオプションは引き数を取ることができ、 B<--arg=param> または B<--arg "
12409 "param> と言う形式で指定する。"
12410
12411 #. type: Plain text
12412 #: build/C/man3/getopt.3:219
12413 msgid ""
12414 "I<longopts> is a pointer to the first element of an array of I<struct "
12415 "option> declared in I<E<lt>getopt.hE<gt>> as"
12416 msgstr ""
12417 "I<longopts> は I<struct option> の要素からなる配列の、先頭要素へのポインター"
12418 "である。 I<struct option> は I<E<lt>getopt.hE<gt>> で以下のように定義されてい"
12419 "る。"
12420
12421 #. type: Plain text
12422 #: build/C/man3/getopt.3:228
12423 #, no-wrap
12424 msgid ""
12425 "struct option {\n"
12426 "    const char *name;\n"
12427 "    int         has_arg;\n"
12428 "    int        *flag;\n"
12429 "    int         val;\n"
12430 "};\n"
12431 msgstr ""
12432 "struct option {\n"
12433 "    const char *name;\n"
12434 "    int         has_arg;\n"
12435 "    int        *flag;\n"
12436 "    int         val;\n"
12437 "};\n"
12438
12439 #. type: Plain text
12440 #: build/C/man3/getopt.3:232
12441 msgid "The meanings of the different fields are:"
12442 msgstr "それぞれのフィールドの意味は以下の通り。"
12443
12444 #. type: TP
12445 #: build/C/man3/getopt.3:232
12446 #, no-wrap
12447 msgid "I<name>"
12448 msgstr "I<name>"
12449
12450 #. type: Plain text
12451 #: build/C/man3/getopt.3:235
12452 msgid "is the name of the long option."
12453 msgstr "長いオプションの名前。"
12454
12455 #. type: TP
12456 #: build/C/man3/getopt.3:235
12457 #, no-wrap
12458 msgid "I<has_arg>"
12459 msgstr "I<has_arg>"
12460
12461 #. type: Plain text
12462 #: build/C/man3/getopt.3:241
12463 msgid ""
12464 "is: B<no_argument> (or 0) if the option does not take an argument; "
12465 "B<required_argument> (or 1) if the option requires an argument; or "
12466 "B<optional_argument> (or 2) if the option takes an optional argument."
12467 msgstr ""
12468 "B<no_argument> (または 0) なら、オプションは引き数をとらない。 "
12469 "B<required_argument> (または 1) なら、オプションは引き数を必要とする。 "
12470 "B<optional_argument> (または 2) なら、オプションは引き数をとっても とらなくて"
12471 "も良い。"
12472
12473 #. type: TP
12474 #: build/C/man3/getopt.3:241
12475 #, no-wrap
12476 msgid "I<flag>"
12477 msgstr "I<flag>"
12478
12479 #. type: Plain text
12480 #: build/C/man3/getopt.3:255
12481 msgid ""
12482 "specifies how results are returned for a long option.  If I<flag> is NULL, "
12483 "then B<getopt_long>()  returns I<val>.  (For example, the calling program "
12484 "may set I<val> to the equivalent short option character.)  Otherwise, "
12485 "B<getopt_long>()  returns 0, and I<flag> points to a variable which is set "
12486 "to I<val> if the option is found, but left unchanged if the option is not "
12487 "found."
12488 msgstr ""
12489 "長いオプションに対する結果の返し方を指定する。I<flag> が NULL なら "
12490 "B<getopt_long>()  は I<val> を返す (例えば呼び出し元のプログラムは、 I<val> "
12491 "に等価なオプション文字を代入することができる)。 NULL 以外の場合には、 "
12492 "B<getopt_long>()  は 0 を返す。 このときオプションが見つかると I<flag> がポイ"
12493 "ントする変数に I<val> が代入される。見つからないとこの変数は変更されない。"
12494
12495 #. type: TP
12496 #: build/C/man3/getopt.3:255
12497 #, no-wrap
12498 msgid "I<val>"
12499 msgstr "I<val>"
12500
12501 #. type: Plain text
12502 #: build/C/man3/getopt.3:259
12503 msgid ""
12504 "is the value to return, or to load into the variable pointed to by I<flag>."
12505 msgstr "返り値、または I<flag> がポイントする変数へロードされる値。"
12506
12507 #. type: Plain text
12508 #: build/C/man3/getopt.3:261
12509 msgid "The last element of the array has to be filled with zeros."
12510 msgstr "配列の最後の要素は、全て 0 で埋められていなければならない。"
12511
12512 #. type: Plain text
12513 #: build/C/man3/getopt.3:265
12514 msgid ""
12515 "If I<longindex> is not NULL, it points to a variable which is set to the "
12516 "index of the long option relative to I<longopts>."
12517 msgstr ""
12518 "I<longindex> は、NULL でなければ、 長いオプションのインデックスを "
12519 "I<longopts> からの相対位置として保持している変数へのポインターとなる。"
12520
12521 #. type: Plain text
12522 #: build/C/man3/getopt.3:274
12523 msgid ""
12524 "B<getopt_long_only>()  is like B<getopt_long>(), but \\(aq-\\(aq as well as "
12525 "\"--\" can indicate a long option.  If an option that starts with \\(aq-"
12526 "\\(aq (not \"--\") doesn't match a long option, but does match a short "
12527 "option, it is parsed as a short option instead."
12528 msgstr ""
12529 "B<getopt_long_only>()  は B<getopt_long>()  と同様の動作をするが、 \\(aq-"
12530 "\\(aq も \"--\" と同様に、 長いオプションとして扱われる。\\(aq-\\(aq で始ま"
12531 "る (\"--\" 以外の) オプションが、長いものにはマッチしないが短いものに マッチ"
12532 "する場合においては、それは短いオプションとして解釈される。"
12533
12534 #. type: Plain text
12535 #: build/C/man3/getopt.3:292
12536 msgid ""
12537 "If an option was successfully found, then B<getopt>()  returns the option "
12538 "character.  If all command-line options have been parsed, then B<getopt>()  "
12539 "returns -1.  If B<getopt>()  encounters an option character that was not in "
12540 "I<optstring>, then \\(aq?\\(aq is returned.  If B<getopt>()  encounters an "
12541 "option with a missing argument, then the return value depends on the first "
12542 "character in I<optstring>: if it is \\(aq:\\(aq, then \\(aq:\\(aq is "
12543 "returned; otherwise \\(aq?\\(aq is returned."
12544 msgstr ""
12545 "オプションが正常に見つかれば B<getopt>()  はそのオプション文字を返す。 すべて"
12546 "のコマンドラインオプションの解析が終わったら、 B<getopt>()  は -1 を返す。 "
12547 "I<optstring> に含まれないオプション文字が見つかると、\\(aq?\\(aq を返す。 引"
12548 "き数が足りないオプションが見つかった場合、 返り値は I<optstring> の最初の文字"
12549 "による異なる: 最初の文字が \\(aq:\\(aq であれば \\(aq:\\(aq を返し、 それ以外"
12550 "の場合は \\(aq?\\(aq を返す。"
12551
12552 #. type: Plain text
12553 #: build/C/man3/getopt.3:304
12554 msgid ""
12555 "B<getopt_long>()  and B<getopt_long_only>()  also return the option "
12556 "character when a short option is recognized.  For a long option, they return "
12557 "I<val> if I<flag> is NULL, and 0 otherwise.  Error and -1 returns are the "
12558 "same as for B<getopt>(), plus \\(aq?\\(aq for an ambiguous match or an "
12559 "extraneous parameter."
12560 msgstr ""
12561 "B<getopt_long>()  と B<getopt_long_only>()  も、 短いオプション文字を認識した"
12562 "場合にはその文字を返す。 長いオプションに対しては、 I<flag> が NULL なら "
12563 "I<val> を返し、 I<flag> が NULL 以外なら 0 を返す。 エラーと -1 の返り値は "
12564 "B<getopt>()  と同じである。 さらに \\(aq?\\(aq は、マッチが確定できない場合や"
12565 "余分なパラメーターがある場合にも返る。"
12566
12567 #. type: SH
12568 #: build/C/man3/getopt.3:304
12569 #, no-wrap
12570 msgid "ENVIRONMENT"
12571 msgstr "環境"
12572
12573 #. type: TP
12574 #: build/C/man3/getopt.3:305
12575 #, no-wrap
12576 msgid "B<POSIXLY_CORRECT>"
12577 msgstr "B<POSIXLY_CORRECT>"
12578
12579 #. type: Plain text
12580 #: build/C/man3/getopt.3:309
12581 msgid ""
12582 "If this is set, then option processing stops as soon as a nonoption argument "
12583 "is encountered."
12584 msgstr ""
12585 "これが設定されていると、非オプションの引き数に到達した時点でオプション に対す"
12586 "る操作が停止される。"
12587
12588 #. type: TP
12589 #: build/C/man3/getopt.3:309
12590 #, no-wrap
12591 msgid "B<_E<lt>PIDE<gt>_GNU_nonoption_argv_flags_>"
12592 msgstr "B<_E<lt>PIDE<gt>_GNU_nonoption_argv_flags_>"
12593
12594 #. type: Plain text
12595 #: build/C/man3/getopt.3:318
12596 msgid ""
12597 "This variable was used by B<bash>(1)  2.0 to communicate to glibc which "
12598 "arguments are the results of wildcard expansion and so should not be "
12599 "considered as options.  This behavior was removed in B<bash>(1)  version "
12600 "2.01, but the support remains in glibc."
12601 msgstr ""
12602 "この変数は B<bash>(1)  2.0 が glibc と通信するために用いられた。 どの引き数が"
12603 "ワイルドカードを展開した結果で、 したがってオプションとみなすべきでないかを知"
12604 "らせるものである。 この機能は B<bash>(1)  のバージョン 2.01 で削除されたが、"
12605 "glibc にはまだ残っている。"
12606
12607 #. type: TP
12608 #: build/C/man3/getopt.3:319
12609 #, no-wrap
12610 msgid "B<getopt>():"
12611 msgstr "B<getopt>():"
12612
12613 #. type: Plain text
12614 #: build/C/man3/getopt.3:329
12615 msgid ""
12616 "POSIX.2 and POSIX.1-2001, provided the environment variable "
12617 "B<POSIXLY_CORRECT> is set.  Otherwise, the elements of I<argv> aren't really "
12618 "const, because we permute them.  We pretend they're const in the prototype "
12619 "to be compatible with other systems."
12620 msgstr ""
12621 "環境変数 B<POSIXLY_CORRECT> が設定されている場合は POSIX.2 と POSIX.1-2001 に"
12622 "準拠する。 他の場合は I<argv> の要素は本当の意味での定数にはならない。 なぜな"
12623 "ら順序が変更されてしまうからである。 ただしそれらは、プロトタイプでは定数であ"
12624 "るかのようにしてある。 これは他のシステムとの互換性のためである。"
12625
12626 #. type: Plain text
12627 #: build/C/man3/getopt.3:333
12628 msgid ""
12629 "The use of \\(aq+\\(aq and \\(aq-\\(aq in I<optstring> is a GNU extension."
12630 msgstr ""
12631 "I<optstring> で \\(aq+\\(aq や \\(aq-\\(aq を使うのは GNU による拡張である."
12632
12633 #. type: Plain text
12634 #: build/C/man3/getopt.3:347
12635 msgid ""
12636 "On some older implementations, B<getopt>()  was declared in I<E<lt>stdio."
12637 "hE<gt>>.  SUSv1 permitted the declaration to appear in either I<E<lt>unistd."
12638 "hE<gt>> or I<E<lt>stdio.hE<gt>>.  POSIX.1-2001 marked the use of "
12639 "I<E<lt>stdio.hE<gt>> for this purpose as LEGACY.  POSIX.1-2001 does not "
12640 "allow the declaration to appear in I<E<lt>stdio.hE<gt>>."
12641 msgstr ""
12642 "古い実装のいくつかでは、 B<getopt>()  は I<E<lt>stdio.hE<gt>> で宣言されてい"
12643 "た。 SUSv1 では、 I<E<lt>unistd.hE<gt>> か I<E<lt>stdio.hE<gt>> のどちらかで "
12644 "宣言してもよかった。 POSIX.1-2001 では、 B<getopt> の宣言を I<E<lt>stdio."
12645 "hE<gt>> で行うのは「過去の名残」であるとされた。 POSIX.1-2001 では "
12646 "I<E<lt>stdio.hE<gt>> で宣言を行うことを認めていない。"
12647
12648 #. type: TP
12649 #: build/C/man3/getopt.3:347
12650 #, no-wrap
12651 msgid "B<getopt_long>() and B<getopt_long_only>():"
12652 msgstr "B<getopt_long>(), B<getopt_long_only>():"
12653
12654 #. type: Plain text
12655 #: build/C/man3/getopt.3:369
12656 msgid ""
12657 "A program that scans multiple argument vectors, or rescans the same vector "
12658 "more than once, and wants to make use of GNU extensions such as \\(aq+\\(aq "
12659 "and \\(aq-\\(aq at the start of I<optstring>, or changes the value of "
12660 "B<POSIXLY_CORRECT> between scans, must reinitialize B<getopt>()  by "
12661 "resetting I<optind> to 0, rather than the traditional value of 1.  "
12662 "(Resetting to 0 forces the invocation of an internal initialization routine "
12663 "that rechecks B<POSIXLY_CORRECT> and checks for GNU extensions in "
12664 "I<optstring>.)"
12665 msgstr ""
12666 "複数の引き数ベクトルをスキャンしたり、同じ引き数ベクトルを二回以上 スキャンす"
12667 "るようなプログラムで、 I<optstring> の先頭で \\(aq+\\(aq や \\(aq-\\(aq と"
12668 "いった GNU による拡張機能を使用したり、 引き数ベクトルの切り替え時に "
12669 "B<POSIXLY_CORRECT> の値を変更したりする場合には、 I<optind> を伝統的な 1 では"
12670 "なく 0 にリセットすることで B<getopt>()  を再初期化しなければならない (0 にリ"
12671 "セットすることで、 B<POSIXLY_CORRECT> や I<optstring> の GNU 拡張機能のチェッ"
12672 "クを行う内部初期化ルーチンが起動される)。"
12673
12674 #. type: Plain text
12675 #: build/C/man3/getopt.3:376
12676 msgid ""
12677 "The POSIX.2 specification of B<getopt>()  has a technical error described in "
12678 "POSIX.2 Interpretation 150.  The GNU implementation (and probably all other "
12679 "implementations) implements the correct behavior rather than that specified."
12680 msgstr ""
12681 "POSIX.2 における B<getopt>()  の仕様には技術的な問題があり、 その内容は "
12682 "POSIX.2 Interpretation 150 に記されている。 GNU による実装では (おそらく他の"
12683 "すべての実装でも)、 仕様と異なる正しい動作をするように実装されている。"
12684
12685 #. type: SS
12686 #: build/C/man3/getopt.3:377
12687 #, no-wrap
12688 msgid "getopt()"
12689 msgstr "getopt()"
12690
12691 #. type: Plain text
12692 #: build/C/man3/getopt.3:385
12693 msgid ""
12694 "The following trivial example program uses B<getopt>()  to handle two "
12695 "program options: I<-n>, with no associated value; and I<-t val>, which "
12696 "expects an associated value."
12697 msgstr ""
12698 "以下に示す簡単なサンプルプログラムでは、 二種類のプログラムオプションを扱うの"
12699 "に B<getopt>()  を使用している。一つは値を伴わない I<-n> で、もう一つは対応す"
12700 "る値が必要な I<-t val> である。"
12701
12702 #. type: Plain text
12703 #: build/C/man3/getopt.3:390
12704 #, no-wrap
12705 msgid ""
12706 "#include E<lt>unistd.hE<gt>\n"
12707 "#include E<lt>stdlib.hE<gt>\n"
12708 "#include E<lt>stdio.hE<gt>\n"
12709 msgstr ""
12710 "#include E<lt>unistd.hE<gt>\n"
12711 "#include E<lt>stdlib.hE<gt>\n"
12712 "#include E<lt>stdio.hE<gt>\n"
12713
12714 #. type: Plain text
12715 #: build/C/man3/getopt.3:396
12716 #, no-wrap
12717 msgid ""
12718 "int\n"
12719 "main(int argc, char *argv[])\n"
12720 "{\n"
12721 "    int flags, opt;\n"
12722 "    int nsecs, tfnd;\n"
12723 msgstr ""
12724 "int\n"
12725 "main(int argc, char *argv[])\n"
12726 "{\n"
12727 "    int flags, opt;\n"
12728 "    int nsecs, tfnd;\n"
12729
12730 #. type: Plain text
12731 #: build/C/man3/getopt.3:415
12732 #, no-wrap
12733 msgid ""
12734 "    nsecs = 0;\n"
12735 "    tfnd = 0;\n"
12736 "    flags = 0;\n"
12737 "    while ((opt = getopt(argc, argv, \"nt:\")) != -1) {\n"
12738 "        switch (opt) {\n"
12739 "        case \\(aqn\\(aq:\n"
12740 "            flags = 1;\n"
12741 "            break;\n"
12742 "        case \\(aqt\\(aq:\n"
12743 "            nsecs = atoi(optarg);\n"
12744 "            tfnd = 1;\n"
12745 "            break;\n"
12746 "        default: /* \\(aq?\\(aq */\n"
12747 "            fprintf(stderr, \"Usage: %s [-t nsecs] [-n] name\\en\",\n"
12748 "                    argv[0]);\n"
12749 "            exit(EXIT_FAILURE);\n"
12750 "        }\n"
12751 "    }\n"
12752 msgstr ""
12753 "    nsecs = 0;\n"
12754 "    tfnd = 0;\n"
12755 "    flags = 0;\n"
12756 "    while ((opt = getopt(argc, argv, \"nt:\")) != -1) {\n"
12757 "        switch (opt) {\n"
12758 "        case \\(aqn\\(aq:\n"
12759 "            flags = 1;\n"
12760 "            break;\n"
12761 "        case \\(aqt\\(aq:\n"
12762 "            nsecs = atoi(optarg);\n"
12763 "            tfnd = 1;\n"
12764 "            break;\n"
12765 "        default: /* \\(aq?\\(aq */\n"
12766 "            fprintf(stderr, \"Usage: %s [-t nsecs] [-n] name\\en\",\n"
12767 "                    argv[0]);\n"
12768 "            exit(EXIT_FAILURE);\n"
12769 "        }\n"
12770 "    }\n"
12771
12772 #. type: Plain text
12773 #: build/C/man3/getopt.3:418
12774 #, no-wrap
12775 msgid ""
12776 "    printf(\"flags=%d; tfnd=%d; nsecs=%d; optind=%d\\en\",\n"
12777 "            flags, tfnd, nsecs, optind);\n"
12778 msgstr ""
12779 "    printf(\"flags=%d; tfnd=%d; nsecs=%d; optind=%d\\en\",\n"
12780 "            flags, tfnd, nsecs, optind);\n"
12781
12782 #. type: Plain text
12783 #: build/C/man3/getopt.3:423
12784 #, no-wrap
12785 msgid ""
12786 "    if (optind E<gt>= argc) {\n"
12787 "        fprintf(stderr, \"Expected argument after options\\en\");\n"
12788 "        exit(EXIT_FAILURE);\n"
12789 "    }\n"
12790 msgstr ""
12791 "    if (optind E<gt>= argc) {\n"
12792 "        fprintf(stderr, \"Expected argument after options\\en\");\n"
12793 "        exit(EXIT_FAILURE);\n"
12794 "    }\n"
12795
12796 #. type: Plain text
12797 #: build/C/man3/getopt.3:425
12798 #, no-wrap
12799 msgid "    printf(\"name argument = %s\\en\", argv[optind]);\n"
12800 msgstr "    printf(\"name argument = %s\\en\", argv[optind]);\n"
12801
12802 #. type: Plain text
12803 #: build/C/man3/getopt.3:427
12804 #, no-wrap
12805 msgid "    /* Other code omitted */\n"
12806 msgstr "    /* Other code omitted */\n"
12807
12808 #. type: SS
12809 #: build/C/man3/getopt.3:431
12810 #, no-wrap
12811 msgid "getopt_long()"
12812 msgstr "getopt_long()"
12813
12814 #. type: Plain text
12815 #: build/C/man3/getopt.3:435
12816 msgid ""
12817 "The following example program illustrates the use of B<getopt_long>()  with "
12818 "most of its features."
12819 msgstr ""
12820 "以下は、 B<getopt_long>()  の使用法を、ほぼすべての機能について示したプログラ"
12821 "ムの例である。"
12822
12823 #. type: Plain text
12824 #: build/C/man3/getopt.3:440
12825 #, no-wrap
12826 msgid ""
12827 "#include E<lt>stdio.hE<gt>     /* for printf */\n"
12828 "#include E<lt>stdlib.hE<gt>    /* for exit */\n"
12829 "#include E<lt>getopt.hE<gt>\n"
12830 msgstr ""
12831 "#include E<lt>stdio.hE<gt>     /* for printf */\n"
12832 "#include E<lt>stdlib.hE<gt>    /* for exit */\n"
12833 "#include E<lt>getopt.hE<gt>\n"
12834
12835 #. type: Plain text
12836 #: build/C/man3/getopt.3:446
12837 #, no-wrap
12838 msgid ""
12839 "int\n"
12840 "main(int argc, char **argv)\n"
12841 "{\n"
12842 "    int c;\n"
12843 "    int digit_optind = 0;\n"
12844 msgstr ""
12845 "int\n"
12846 "main(int argc, char **argv) {\n"
12847 "    int c;\n"
12848 "    int digit_optind = 0;\n"
12849
12850 #. type: Plain text
12851 #: build/C/man3/getopt.3:459
12852 #, no-wrap
12853 msgid ""
12854 "    while (1) {\n"
12855 "        int this_option_optind = optind ? optind : 1;\n"
12856 "        int option_index = 0;\n"
12857 "        static struct option long_options[] = {\n"
12858 "            {\"add\",     required_argument, 0,  0 },\n"
12859 "            {\"append\",  no_argument,       0,  0 },\n"
12860 "            {\"delete\",  required_argument, 0,  0 },\n"
12861 "            {\"verbose\", no_argument,       0,  0 },\n"
12862 "            {\"create\",  required_argument, 0, \\(aqc\\(aq},\n"
12863 "            {\"file\",    required_argument, 0,  0 },\n"
12864 "            {0,         0,                 0,  0 }\n"
12865 "        };\n"
12866 msgstr ""
12867 "    while (1) {\n"
12868 "        int this_option_optind = optind ? optind : 1;\n"
12869 "        int option_index = 0;\n"
12870 "        static struct option long_options[] = {\n"
12871 "            {\"add\",     required_argument, 0,  0 },\n"
12872 "            {\"append\",  no_argument,       0,  0 },\n"
12873 "            {\"delete\",  required_argument, 0,  0 },\n"
12874 "            {\"verbose\", no_argument,       0,  0 },\n"
12875 "            {\"create\",  required_argument, 0, \\(aqc\\(aq},\n"
12876 "            {\"file\",    required_argument, 0,  0 },\n"
12877 "            {0,         0,                 0,  0 }\n"
12878 "        };\n"
12879
12880 #. type: Plain text
12881 #: build/C/man3/getopt.3:464
12882 #, no-wrap
12883 msgid ""
12884 "        c = getopt_long(argc, argv, \"abc:d:012\",\n"
12885 "                 long_options, &option_index);\n"
12886 "        if (c == -1)\n"
12887 "            break;\n"
12888 msgstr ""
12889 "        c = getopt_long(argc, argv, \"abc:d:012\",\n"
12890 "                 long_options, &option_index);\n"
12891 "        if (c == -1)\n"
12892 "            break;\n"
12893
12894 #. type: Plain text
12895 #: build/C/man3/getopt.3:472
12896 #, no-wrap
12897 msgid ""
12898 "        switch (c) {\n"
12899 "        case 0:\n"
12900 "            printf(\"option %s\", long_options[option_index].name);\n"
12901 "            if (optarg)\n"
12902 "                printf(\" with arg %s\", optarg);\n"
12903 "            printf(\"\\en\");\n"
12904 "            break;\n"
12905 msgstr ""
12906 "        switch (c) {\n"
12907 "        case 0:\n"
12908 "            printf(\"option %s\", long_options[option_index].name);\n"
12909 "            if (optarg)\n"
12910 "                printf(\" with arg %s\", optarg);\n"
12911 "            printf(\"\\en\");\n"
12912 "            break;\n"
12913
12914 #. type: Plain text
12915 #: build/C/man3/getopt.3:481
12916 #, no-wrap
12917 msgid ""
12918 "        case \\(aq0\\(aq:\n"
12919 "        case \\(aq1\\(aq:\n"
12920 "        case \\(aq2\\(aq:\n"
12921 "            if (digit_optind != 0 && digit_optind != this_option_optind)\n"
12922 "              printf(\"digits occur in two different argv-elements.\\en\");\n"
12923 "            digit_optind = this_option_optind;\n"
12924 "            printf(\"option %c\\en\", c);\n"
12925 "            break;\n"
12926 msgstr ""
12927 "        case \\(aq0\\(aq:\n"
12928 "        case \\(aq1\\(aq:\n"
12929 "        case \\(aq2\\(aq:\n"
12930 "            if (digit_optind != 0 && digit_optind != this_option_optind)\n"
12931 "              printf(\"digits occur in two different argv-elements.\\en\");\n"
12932 "            digit_optind = this_option_optind;\n"
12933 "            printf(\"option %c\\en\", c);\n"
12934 "            break;\n"
12935
12936 #. type: Plain text
12937 #: build/C/man3/getopt.3:485
12938 #, no-wrap
12939 msgid ""
12940 "        case \\(aqa\\(aq:\n"
12941 "            printf(\"option a\\en\");\n"
12942 "            break;\n"
12943 msgstr ""
12944 "        case \\(aqa\\(aq:\n"
12945 "            printf(\"option a\\en\");\n"
12946 "            break;\n"
12947
12948 #. type: Plain text
12949 #: build/C/man3/getopt.3:489
12950 #, no-wrap
12951 msgid ""
12952 "        case \\(aqb\\(aq:\n"
12953 "            printf(\"option b\\en\");\n"
12954 "            break;\n"
12955 msgstr ""
12956 "        case \\(aqb\\(aq:\n"
12957 "            printf(\"option b\\en\");\n"
12958 "            break;\n"
12959
12960 #. type: Plain text
12961 #: build/C/man3/getopt.3:493
12962 #, no-wrap
12963 msgid ""
12964 "        case \\(aqc\\(aq:\n"
12965 "            printf(\"option c with value \\(aq%s\\(aq\\en\", optarg);\n"
12966 "            break;\n"
12967 msgstr ""
12968 "        case \\(aqc\\(aq:\n"
12969 "            printf(\"option c with value \\(aq%s\\(aq\\en\", optarg);\n"
12970 "            break;\n"
12971
12972 #. type: Plain text
12973 #: build/C/man3/getopt.3:497
12974 #, no-wrap
12975 msgid ""
12976 "        case \\(aqd\\(aq:\n"
12977 "            printf(\"option d with value \\(aq%s\\(aq\\en\", optarg);\n"
12978 "            break;\n"
12979 msgstr ""
12980 "        case \\(aqd\\(aq:\n"
12981 "            printf(\"option d with value \\(aq%s\\(aq\\en\", optarg);\n"
12982 "            break;\n"
12983
12984 #. type: Plain text
12985 #: build/C/man3/getopt.3:500
12986 #, no-wrap
12987 msgid ""
12988 "        case \\(aq?\\(aq:\n"
12989 "            break;\n"
12990 msgstr ""
12991 "        case \\(aq?\\(aq:\n"
12992 "            break;\n"
12993
12994 #. type: Plain text
12995 #: build/C/man3/getopt.3:505
12996 #, no-wrap
12997 msgid ""
12998 "        default:\n"
12999 "            printf(\"?? getopt returned character code 0%o ??\\en\", c);\n"
13000 "        }\n"
13001 "    }\n"
13002 msgstr ""
13003 "        default:\n"
13004 "            printf(\"?? getopt returned character code 0%o ??\\en\", c);\n"
13005 "        }\n"
13006 "    }\n"
13007
13008 #. type: Plain text
13009 #: build/C/man3/getopt.3:512
13010 #, no-wrap
13011 msgid ""
13012 "    if (optind E<lt> argc) {\n"
13013 "        printf(\"non-option ARGV-elements: \");\n"
13014 "        while (optind E<lt> argc)\n"
13015 "            printf(\"%s \", argv[optind++]);\n"
13016 "        printf(\"\\en\");\n"
13017 "    }\n"
13018 msgstr ""
13019 "    if (optind E<lt> argc) {\n"
13020 "        printf(\"non-option ARGV-elements: \");\n"
13021 "        while (optind E<lt> argc)\n"
13022 "            printf(\"%s \", argv[optind++]);\n"
13023 "        printf(\"\\en\");\n"
13024 "    }\n"
13025
13026 #. type: Plain text
13027 #: build/C/man3/getopt.3:519
13028 #, fuzzy
13029 #| msgid "B<getsubopt>(3)"
13030 msgid "B<getopt>(1), B<getsubopt>(3)"
13031 msgstr "B<getsubopt>(3)"
13032
13033 #. type: TH
13034 #: build/C/man2/getpagesize.2:25
13035 #, no-wrap
13036 msgid "GETPAGESIZE"
13037 msgstr "GETPAGESIZE"
13038
13039 #. type: Plain text
13040 #: build/C/man2/getpagesize.2:28
13041 msgid "getpagesize - get memory page size"
13042 msgstr "getpagesize - メモリーのページサイズを取得する"
13043
13044 #. type: Plain text
13045 #: build/C/man2/getpagesize.2:32
13046 msgid "B<int getpagesize(void);>"
13047 msgstr "B<int getpagesize(void);>"
13048
13049 #. type: Plain text
13050 #: build/C/man2/getpagesize.2:39
13051 msgid "B<getpagesize>():"
13052 msgstr "B<getpagesize>():"
13053
13054 #.  .SH HISTORY
13055 #.  This call first appeared in 4.2BSD.
13056 #. type: Plain text
13057 #: build/C/man2/getpagesize.2:64
13058 msgid ""
13059 "The function B<getpagesize>()  returns the number of bytes in a memory page, "
13060 "where \"page\" is a fixed-length block, the unit for memory allocation and "
13061 "file mapping performed by B<mmap>(2)."
13062 msgstr ""
13063 "B<getpagesize>() 関数はメモリーページの大きさをバイト数で返す。\n"
13064 "ここでいう「ページ」は固定長のブロックであり、\n"
13065 "B<mmap>(2) で実行されるメモリー割り当てとファイルマッピングの単位である。"
13066
13067 #. type: Plain text
13068 #: build/C/man2/getpagesize.2:71
13069 msgid ""
13070 "SVr4, 4.4BSD, SUSv2.  In SUSv2 the B<getpagesize>()  call is labeled LEGACY, "
13071 "and in POSIX.1-2001 it has been dropped; HP-UX does not have this call."
13072 msgstr ""
13073 "SVr4, 4.4BSD, SUSv2.\n"
13074 "SUSv2 では B<getpagesize>() システムコールは「過去の遺物 (LEGACY)」とされてお"
13075 "り、\n"
13076 "POSIX.1-2001 からは外されている。 HP-UX にはこのシステムコールは存在しない。"
13077
13078 #. type: Plain text
13079 #: build/C/man2/getpagesize.2:76
13080 msgid ""
13081 "Portable applications should employ I<sysconf(_SC_PAGESIZE)> instead of "
13082 "B<getpagesize>():"
13083 msgstr ""
13084 "移植性が必要なアプリケーションでは、\n"
13085 "B<getpagesize>() ではなく I<sysconf(_SC_PAGESIZE)> を利用すべきである。"
13086
13087 #. type: Plain text
13088 #: build/C/man2/getpagesize.2:81
13089 #, no-wrap
13090 msgid ""
13091 "#include E<lt>unistd.hE<gt>\n"
13092 "long sz = sysconf(_SC_PAGESIZE);\n"
13093 msgstr ""
13094 "#include E<lt>unistd.hE<gt>\n"
13095 "long sz = sysconf(_SC_PAGESIZE);\n"
13096
13097 #. type: Plain text
13098 #: build/C/man2/getpagesize.2:88
13099 msgid "(Most systems allow the synonym B<_SC_PAGE_SIZE> for B<_SC_PAGESIZE>.)"
13100 msgstr ""
13101 "(ほとんどのシステムでは B<_SC_PAGESIZE> の同義語として\n"
13102 "B<_SC_PAGE_SIZE> を使用することができる。)"
13103
13104 #. type: Plain text
13105 #: build/C/man2/getpagesize.2:108
13106 msgid ""
13107 "Whether B<getpagesize>()  is present as a Linux system call depends on the "
13108 "architecture.  If it is, it returns the kernel symbol B<PAGE_SIZE>, whose "
13109 "value depends on the architecture and machine model.  Generally, one uses "
13110 "binaries that are dependent on the architecture but not on the machine "
13111 "model, in order to have a single binary distribution per architecture.  This "
13112 "means that a user program should not find B<PAGE_SIZE> at compile time from "
13113 "a header file, but use an actual system call, at least for those "
13114 "architectures (like sun4) where this dependency exists.  Here glibc 2.0 "
13115 "fails because its B<getpagesize>()  returns a statically derived value, and "
13116 "does not use a system call.  Things are OK in glibc 2.1."
13117 msgstr ""
13118 "B<getpagesize>()  が Linux のシステムコールとして存在するかどうかは、そのアー"
13119 "キテクチャーに 依存している。 システムコールとして存在する場合には、カーネル"
13120 "シンボルの B<PAGE_SIZE> を返す。 B<PAGE_SIZE> の値は、アーキテクチャーとマシ"
13121 "ンモデルに依存する。 一般に、バイナリは、アーキテクチャーごとに1つのバイナリ"
13122 "配布で済ませるために、 アーキテクチャーには依存しているがマシンモデルには依存"
13123 "していない。 つまり、ユーザープログラムはコンパイル時にヘッダーファイルから "
13124 "B<PAGE_SIZE> を見つけて使用すべきではない。 少なくとも、マシンモデルについて"
13125 "も依存性が存在する (sun4 のような)  アーキテクチャーにおいては本物のシステム"
13126 "コールを使用する必要がある。 尚、 glibc 2.0 では、 B<getpagesize>()  がシステ"
13127 "ムコールを使用せず、固定の値を返すために、この方法は 失敗する。glibc 2.1 では"
13128 "大丈夫である。"
13129
13130 #. type: Plain text
13131 #: build/C/man2/getpagesize.2:111
13132 msgid "B<mmap>(2), B<sysconf>(3)"
13133 msgstr "B<mmap>(2), B<sysconf>(3)"
13134
13135 #. type: TH
13136 #: build/C/man2/gettid.2:26
13137 #, no-wrap
13138 msgid "GETTID"
13139 msgstr "GETTID"
13140
13141 #. type: TH
13142 #: build/C/man2/gettid.2:26
13143 #, no-wrap
13144 msgid "2014-02-11"
13145 msgstr "2014-02-11"
13146
13147 #. type: Plain text
13148 #: build/C/man2/gettid.2:29
13149 msgid "gettid - get thread identification"
13150 msgstr "gettid - スレッドID を取得する"
13151
13152 #. type: Plain text
13153 #: build/C/man2/gettid.2:32
13154 #, no-wrap
13155 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
13156 msgstr "B<#include E<lt>sys/types.hE<gt>>\n"
13157
13158 #. type: Plain text
13159 #: build/C/man2/gettid.2:34
13160 #, no-wrap
13161 msgid "B<pid_t gettid(void);>\n"
13162 msgstr "B<pid_t gettid(void);>\n"
13163
13164 #. type: Plain text
13165 #: build/C/man2/gettid.2:50
13166 msgid ""
13167 "B<gettid>()  returns the caller's thread ID (TID).  In a single-threaded "
13168 "process, the thread ID is equal to the process ID (PID, as returned by "
13169 "B<getpid>(2)).  In a multithreaded process, all threads have the same PID, "
13170 "but each one has a unique TID.  For further details, see the discussion of "
13171 "B<CLONE_THREAD> in B<clone>(2)."
13172 msgstr ""
13173 "B<gettid>()  は呼び出し元のスレッド ID (TID) を返す。 シングルスレッドのプロ"
13174 "セスでは、スレッド ID は (B<getpid>(2)  が返すプロセス ID (PID) と等しい。 マ"
13175 "ルチスレッドのプロセスでは、全てのスレッドは同じ PID を持つが、 それぞれのス"
13176 "レッドは一意な TID を持つ。 さらなる詳細は、 B<clone>(2)  の B<CLONE_THREAD> "
13177 "についての議論を参照すること。"
13178
13179 #. type: Plain text
13180 #: build/C/man2/gettid.2:52
13181 msgid "On success, returns the thread ID of the calling process."
13182 msgstr "成功の場合、呼び出し元のプロセスのスレッドID を返す。"
13183
13184 #. type: Plain text
13185 #: build/C/man2/gettid.2:54
13186 msgid "This call is always successful."
13187 msgstr "このコールは常に成功する。"
13188
13189 #. type: Plain text
13190 #: build/C/man2/gettid.2:58
13191 msgid "The B<gettid>()  system call first appeared on Linux in kernel 2.4.11."
13192 msgstr ""
13193 "B<gettid>()  システムコールは、カーネル 2.4.11 の Linux で初めて登場した。"
13194
13195 #. type: Plain text
13196 #: build/C/man2/gettid.2:62
13197 msgid ""
13198 "B<gettid>()  is Linux-specific and should not be used in programs that are "
13199 "intended to be portable."
13200 msgstr ""
13201 "B<gettid>()  は Linux 固有であり、 移植を想定したプログラムでは使用すべきでは"
13202 "ない。"
13203
13204 #.  FIXME . See http://sourceware.org/bugzilla/show_bug.cgi?id=6399
13205 #.  "gettid() should have a wrapper"
13206 #. type: Plain text
13207 #: build/C/man2/gettid.2:67
13208 msgid ""
13209 "Glibc does not provide a wrapper for this system call; call it using "
13210 "B<syscall>(2)."
13211 msgstr ""
13212 "glibc はこのシステムコールに対するラッパー関数を提供していない。 このシステム"
13213 "コールは呼び出すには B<syscall>(2)  を使うこと。"
13214
13215 #. type: Plain text
13216 #: build/C/man2/gettid.2:71
13217 msgid ""
13218 "The thread ID returned by this call is not the same thing as a POSIX thread "
13219 "ID (i.e., the opaque value returned by B<pthread_self>(3))."
13220 msgstr ""
13221 "このシステムコールが返すスレッド ID は POSIX スレッド ID "
13222 "(B<pthread_self>(3)  が返す曖昧な値) と同じものではない。"
13223
13224 #.  .BR kcmp (2),
13225 #.  .BR move_pages (2),
13226 #.  .BR migrate_pages (2),
13227 #.  .BR process_vm_readv (2),
13228 #.  .BR ptrace (2),
13229 #. type: Plain text
13230 #: build/C/man2/gettid.2:90
13231 msgid ""
13232 "B<capget>(2), B<clone>(2), B<fcntl>(2), B<fork>(2), B<get_robust_list>(2), "
13233 "B<getpid>(2), B<ioprio_set>(2), B<perf_event_open>(2), "
13234 "B<sched_setaffinity>(2), B<sched_setparam>(2), B<sched_setscheduler>(2), "
13235 "B<tgkill>(2), B<timer_create>(2)"
13236 msgstr ""
13237 "B<capget>(2), B<clone>(2), B<fcntl>(2), B<fork>(2), B<get_robust_list>(2), "
13238 "B<getpid>(2), B<ioprio_set>(2), B<perf_event_open>(2), "
13239 "B<sched_setaffinity>(2), B<sched_setparam>(2), B<sched_setscheduler>(2), "
13240 "B<tgkill>(2), B<timer_create>(2)"
13241
13242 #. type: TH
13243 #: build/C/man3/getumask.3:28
13244 #, no-wrap
13245 msgid "GETUMASK"
13246 msgstr "GETUMASK"
13247
13248 #. type: TH
13249 #: build/C/man3/getumask.3:28
13250 #, no-wrap
13251 msgid "2010-09-10"
13252 msgstr "2010-09-10"
13253
13254 #. type: Plain text
13255 #: build/C/man3/getumask.3:31
13256 msgid "getumask - get file creation mask"
13257 msgstr "getumask - ファイル作成マスクを取得する"
13258
13259 #. type: Plain text
13260 #: build/C/man3/getumask.3:35 build/C/man2/truncate.2:50
13261 #: build/C/man2/umask.2:39 build/C/man2/vfork.2:33
13262 msgid "B<#include E<lt>sys/types.hE<gt>>"
13263 msgstr "B<#include E<lt>sys/types.hE<gt>>"
13264
13265 #. type: Plain text
13266 #: build/C/man3/getumask.3:37 build/C/man2/umask.2:41
13267 msgid "B<#include E<lt>sys/stat.hE<gt>>"
13268 msgstr "B<#include E<lt>sys/stat.hE<gt>>"
13269
13270 #. type: Plain text
13271 #: build/C/man3/getumask.3:39
13272 msgid "B<mode_t getumask(void);>"
13273 msgstr "B<mode_t getumask(void);>"
13274
13275 #. type: Plain text
13276 #: build/C/man3/getumask.3:42
13277 msgid ""
13278 "This function returns the current file creation mask.  It is equivalent to"
13279 msgstr ""
13280 "この関数は現在のファイル作成マスクを返す。 基本的には以下と等価である。"
13281
13282 #. type: Plain text
13283 #: build/C/man3/getumask.3:51
13284 #, no-wrap
13285 msgid ""
13286 "mode_t getumask(void)\n"
13287 "{\n"
13288 "    mode_t mask = umask( 0 );\n"
13289 "    umask(mask);\n"
13290 "    return mask;\n"
13291 "}\n"
13292 msgstr ""
13293 "mode_t getumask(void)\n"
13294 "{\n"
13295 "    mode_t mask = umask( 0 );\n"
13296 "    umask(mask);\n"
13297 "    return mask;\n"
13298 "}\n"
13299
13300 #. type: Plain text
13301 #: build/C/man3/getumask.3:58
13302 msgid ""
13303 "except that it is documented to be thread-safe (that is, shares a lock with "
13304 "the B<umask>(2)  library call)."
13305 msgstr ""
13306 "ドキュメントによると、この関数は スレッドセーフである (B<umask>(2)  ライブラ"
13307 "リコールとロックを共有する)  点が異なる。"
13308
13309 #. type: Plain text
13310 #: build/C/man3/getumask.3:60
13311 msgid "This is a vaporware GNU extension."
13312 msgstr "ドキュメントに書いてあるだけの GNU 拡張である。"
13313
13314 #. type: Plain text
13315 #: build/C/man3/getumask.3:63
13316 msgid ""
13317 "This function is documented but not implemented yet in glibc, as at version "
13318 "2.9."
13319 msgstr ""
13320 "バージョン 2.9 時点の glibc では、 この関数についての記載はあるが、まだ実装さ"
13321 "れていない。"
13322
13323 #. type: Plain text
13324 #: build/C/man3/getumask.3:65
13325 msgid "B<umask>(2)"
13326 msgstr "B<umask>(2)"
13327
13328 #. type: TH
13329 #: build/C/man3/getusershell.3:30
13330 #, no-wrap
13331 msgid "GETUSERSHELL"
13332 msgstr "GETUSERSHELL"
13333
13334 #. type: TH
13335 #: build/C/man3/getusershell.3:30 build/C/man2/pread.2:25
13336 #, no-wrap
13337 msgid "2013-06-21"
13338 msgstr "2013-06-21"
13339
13340 #. type: Plain text
13341 #: build/C/man3/getusershell.3:33
13342 msgid "getusershell, setusershell, endusershell - get permitted user shells"
13343 msgstr ""
13344 "getusershell, setusershell, endusershell - 許可されたユーザーシェルを得る"
13345
13346 #. type: Plain text
13347 #: build/C/man3/getusershell.3:38
13348 #, no-wrap
13349 msgid "B<char *getusershell(void);>\n"
13350 msgstr "B<char *getusershell(void);>\n"
13351
13352 #. type: Plain text
13353 #: build/C/man3/getusershell.3:40
13354 #, no-wrap
13355 msgid "B<void setusershell(void);>\n"
13356 msgstr "B<void setusershell(void);>\n"
13357
13358 #. type: Plain text
13359 #: build/C/man3/getusershell.3:42
13360 #, no-wrap
13361 msgid "B<void endusershell(void);>\n"
13362 msgstr "B<void endusershell(void);>\n"
13363
13364 #. type: Plain text
13365 #: build/C/man3/getusershell.3:53
13366 msgid "B<getusershell>(), B<setusershell>(), B<endusershell>():"
13367 msgstr "B<getusershell>(), B<setusershell>(), B<endusershell>():"
13368
13369 #. type: Plain text
13370 #: build/C/man3/getusershell.3:75
13371 msgid ""
13372 "The B<getusershell>()  function returns the next line from the file I</etc/"
13373 "shells>, opening the file if necessary.  The line should contain the "
13374 "pathname of a valid user shell.  If I</etc/shells> does not exist or is "
13375 "unreadable, B<getusershell>()  behaves as if I</bin/sh> and I</bin/csh> were "
13376 "listed in the file."
13377 msgstr ""
13378 "B<getusershell>()  関数は I</etc/shells> ファイルから (開く必要があればこの"
13379 "ファイルを開いてから) 現在行の次の一行を返す。 返された行の中身は有効なユー"
13380 "ザーシェルのうちの一つのパス名である。 (訳注. 一行に付き一つのシェルのパス名"
13381 "が書かれている。)  もし I</etc/shells> が存在しないか、読み込み不可の場合に"
13382 "は、 B<getusershell>()  は I</bin/sh> と I</bin/csh> がファイルに記されている"
13383 "かのようにふるまう。"
13384
13385 #. type: Plain text
13386 #: build/C/man3/getusershell.3:80
13387 msgid "The B<setusershell>()  function rewinds I</etc/shells>."
13388 msgstr ""
13389 "B<setusershell>()  関数は I</etc/shells> ファイルの ファイルポインターを先頭"
13390 "に戻す。"
13391
13392 #. type: Plain text
13393 #: build/C/man3/getusershell.3:85
13394 msgid "The B<endusershell>()  function closes I</etc/shells>."
13395 msgstr "B<endusershell>()  関数は I</etc/shells> ファイルを閉じる。"
13396
13397 #. type: Plain text
13398 #: build/C/man3/getusershell.3:89
13399 msgid "The B<getusershell>()  function returns NULL on end-of-file."
13400 msgstr "B<getusershell>() 関数はファイルの終端では NULL を返す。"
13401
13402 #. type: Plain text
13403 #: build/C/man3/getusershell.3:92
13404 #, no-wrap
13405 msgid "/etc/shells\n"
13406 msgstr "/etc/shells\n"
13407
13408 #. type: Plain text
13409 #: build/C/man3/getusershell.3:101
13410 msgid ""
13411 "The B<getusershell>(), B<setusershell>()  and B<endusershell>()  functions "
13412 "are not thread-safe."
13413 msgstr ""
13414 "関数 B<getusershell>(), B<setusershell>(), B<endusershell>() はスレッドセーフ"
13415 "ではない。"
13416
13417 #. type: Plain text
13418 #: build/C/man3/getusershell.3:103
13419 msgid "4.3BSD."
13420 msgstr "4.3BSD."
13421
13422 #. type: Plain text
13423 #: build/C/man3/getusershell.3:105
13424 msgid "B<shells>(5)"
13425 msgstr "B<shells>(5)"
13426
13427 #. type: TH
13428 #: build/C/man2/idle.2:32
13429 #, no-wrap
13430 msgid "IDLE"
13431 msgstr "IDLE"
13432
13433 #. type: TH
13434 #: build/C/man2/idle.2:32 build/C/man5/shells.5:28
13435 #, no-wrap
13436 msgid "2012-12-31"
13437 msgstr "2012-12-31"
13438
13439 #. type: Plain text
13440 #: build/C/man2/idle.2:35
13441 msgid "idle - make process 0 idle"
13442 msgstr "idle - ID 0 のプロセスをアイドル状態にする"
13443
13444 #. type: Plain text
13445 #: build/C/man2/idle.2:39
13446 msgid "B<int idle(void);>"
13447 msgstr "B<int idle(void);>"
13448
13449 #. type: Plain text
13450 #: build/C/man2/idle.2:46
13451 msgid ""
13452 "B<idle>()  is an internal system call used during bootstrap.  It marks the "
13453 "process's pages as swappable, lowers its priority, and enters the main "
13454 "scheduling loop.  B<idle>()  never returns."
13455 msgstr ""
13456 "B<idle>()  はブートストラップ時に使用される、内部システムコールである。 プロ"
13457 "セスのページをスワップ可能に設定し、優先度を下げ、メインのスケジュー ル処理の"
13458 "ためのループへ移行する。 従って B<idle>()  は return することはない。"
13459
13460 #. type: Plain text
13461 #: build/C/man2/idle.2:52
13462 msgid ""
13463 "Only process 0 may call B<idle>().  Any user process, even a process with "
13464 "superuser permission, will receive B<EPERM>."
13465 msgstr ""
13466 "ID 0 のプロセスのみが B<idle>()  を使用することができる。 他のユーザープロセ"
13467 "スはたとえそれがスーパーユーザー権限を持っていたとして も B<EPERM> を受け取"
13468 "る。"
13469
13470 #. type: Plain text
13471 #: build/C/man2/idle.2:55
13472 msgid ""
13473 "B<idle>()  never returns for process 0, and always returns -1 for a user "
13474 "process."
13475 msgstr ""
13476 "B<idle>()  ID 0 のプロセスに対しては return しない。それ以外のユーザープロセ"
13477 "スには 常に -1 を返す。"
13478
13479 #. type: Plain text
13480 #: build/C/man2/idle.2:59 build/C/man2/setup.2:60
13481 msgid "Always, for a user process."
13482 msgstr "ユーザープロセスに対しては、常にこのエラーとなる。"
13483
13484 #. type: Plain text
13485 #: build/C/man2/idle.2:61
13486 msgid "Since Linux 2.3.13, this system call does not exist anymore."
13487 msgstr "Linux 2.3.13 以降では、もはやこのシステムコールは存在しない。"
13488
13489 #. type: Plain text
13490 #: build/C/man2/idle.2:64 build/C/man2/sysinfo.2:90
13491 msgid ""
13492 "This function is Linux-specific, and should not be used in programs intended "
13493 "to be portable."
13494 msgstr ""
13495 "この関数は Linux 特有であり、移植を意図したプログラムでは 使用すべきでない。"
13496
13497 #. type: TH
13498 #: build/C/man2/ioctl.2:41
13499 #, no-wrap
13500 msgid "IOCTL"
13501 msgstr "IOCTL"
13502
13503 #. type: TH
13504 #: build/C/man2/ioctl.2:41 build/C/man3/sysconf.3:27
13505 #, no-wrap
13506 msgid "2014-12-31"
13507 msgstr "2014-12-31"
13508
13509 #. type: Plain text
13510 #: build/C/man2/ioctl.2:44
13511 msgid "ioctl - control device"
13512 msgstr "ioctl - デバイスを制御する"
13513
13514 #. type: Plain text
13515 #: build/C/man2/ioctl.2:46
13516 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
13517 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
13518
13519 #.  POSIX says 'request' is int, but glibc has the above
13520 #.  See https://bugzilla.kernel.org/show_bug.cgi?id=42705
13521 #. type: Plain text
13522 #: build/C/man2/ioctl.2:50
13523 msgid "B<int ioctl(int >I<fd>B<, unsigned long >I<request>B<, ...);>"
13524 msgstr "B<int ioctl(int >I<fd>B<, unsigned long >I<request>B<, ...);>"
13525
13526 #. type: Plain text
13527 #: build/C/man2/ioctl.2:61
13528 msgid ""
13529 "The B<ioctl>()  function manipulates the underlying device parameters of "
13530 "special files.  In particular, many operating characteristics of character "
13531 "special files (e.g., terminals) may be controlled with B<ioctl>()  "
13532 "requests.  The argument I<fd> must be an open file descriptor."
13533 msgstr ""
13534 "B<ioctl>()  関数はスペシャルファイルを構成するデバイスのパラメーターを 操作す"
13535 "る。特に、キャラクター型のスペシャルファイル (例えば端末 (terminal))  の多く"
13536 "の動作特性を B<ioctl>()  リクエストによって制御することができる。引き数 "
13537 "I<fd> はオープンされたファイルディスクリプターでなければならない。"
13538
13539 #. type: Plain text
13540 #: build/C/man2/ioctl.2:69
13541 msgid ""
13542 "The second argument is a device-dependent request code.  The third argument "
13543 "is an untyped pointer to memory.  It's traditionally B<char *>I<argp> (from "
13544 "the days before B<void *> was valid C), and will be so named for this "
13545 "discussion."
13546 msgstr ""
13547 "2 番目の引き数は、デバイス依存のリクエストコードである。 3 番目の引き数は、メ"
13548 "モリーへの型を指定しないポインターである。 この引き数は伝統的に (C で B<void "
13549 "*> という書き方が有効になる前から)  B<char *>I<argp> と表記されている。した"
13550 "がって、この文章でもそう名付けることとする。"
13551
13552 #. type: Plain text
13553 #: build/C/man2/ioctl.2:85
13554 msgid ""
13555 "An B<ioctl>()  I<request> has encoded in it whether the argument is an I<in> "
13556 "parameter or I<out> parameter, and the size of the argument I<argp> in "
13557 "bytes.  Macros and defines used in specifying an B<ioctl>()  I<request> are "
13558 "located in the file I<E<lt>sys/ioctl.hE<gt>>."
13559 msgstr ""
13560 "B<ioctl>()  の I<request> には、 その引き数が I<入力> パラメーターと I<出力> "
13561 "パラメーターのどちらであるかの区別や、 I<argp> 引き数のバイト単位のサイズ、と"
13562 "いった情報がエンコードされている。 B<ioctl>()  の I<request> を指定するための"
13563 "マクロ (macro) と定義は I<E<lt>sys/ioctl.hE<gt>> ファイルにある。"
13564
13565 #. type: Plain text
13566 #: build/C/man2/ioctl.2:94
13567 msgid ""
13568 "Usually, on success zero is returned.  A few B<ioctl>()  requests use the "
13569 "return value as an output parameter and return a nonnegative value on "
13570 "success.  On error, -1 is returned, and I<errno> is set appropriately."
13571 msgstr ""
13572 "たいていの場合、成功するとゼロが返される。 ただし、 B<ioctl>()  リクエストの"
13573 "中にはパラメーターの出力に返り値を使用しているものが若干あり、 その場合は、成"
13574 "功したときに非負の値が返される。 エラーの場合は -1 が返され、 I<errno> が適切"
13575 "に設定される。"
13576
13577 #. type: Plain text
13578 #: build/C/man2/ioctl.2:99 build/C/man2/truncate.2:192
13579 msgid "I<fd> is not a valid descriptor."
13580 msgstr "I<fd> が無効なディスクリプターである。"
13581
13582 #. type: Plain text
13583 #: build/C/man2/ioctl.2:103
13584 msgid "I<argp> references an inaccessible memory area."
13585 msgstr "I<argp> がアクセス不可能なメモリーを参照している。"
13586
13587 #. type: Plain text
13588 #: build/C/man2/ioctl.2:109
13589 msgid "I<request> or I<argp> is not valid."
13590 msgstr "I<request> または I<argp> が不正である。"
13591
13592 #. type: Plain text
13593 #: build/C/man2/ioctl.2:113
13594 msgid "I<fd> is not associated with a character special device."
13595 msgstr "I<fd> がキャラクター型のスペシャルデバイスを参照していない。"
13596
13597 #. type: Plain text
13598 #: build/C/man2/ioctl.2:119
13599 msgid ""
13600 "The specified request does not apply to the kind of object that the "
13601 "descriptor I<fd> references."
13602 msgstr ""
13603 "指定されたリクエストはディスクリプター I<fd> が参照する種類のオブジェクトには"
13604 "適用することができない。"
13605
13606 #. type: Plain text
13607 #: build/C/man2/ioctl.2:134
13608 msgid ""
13609 "No single standard.  Arguments, returns, and semantics of B<ioctl>()  vary "
13610 "according to the device driver in question (the call is used as a catch-all "
13611 "for operations that don't cleanly fit the UNIX stream I/O model).  See "
13612 "B<ioctl_list>(2)  for a list of many of the known B<ioctl>()  calls.  The "
13613 "B<ioctl>()  function call appeared in Version 7 AT&T UNIX."
13614 msgstr ""
13615 "どれか一つの標準に対応しているわけではない。 B<ioctl>()  の引き数、返り値、解"
13616 "釈は、処理対象のデバイスドライバごとに 異なる (この関数は UNIX の ストリーム "
13617 "I/O モデル に きちんと適合していない操作のための便利屋として使用される)。 よ"
13618 "く知られている B<ioctl>()  のリストについては B<ioctl_list>(2)  を参照するこ"
13619 "と。 B<ioctl>()  関数コールは Version 7 AT&T UNIX で登場した。"
13620
13621 #. type: Plain text
13622 #: build/C/man2/ioctl.2:142
13623 msgid ""
13624 "In order to use this call, one needs an open file descriptor.  Often the "
13625 "B<open>(2)  call has unwanted side effects, that can be avoided under Linux "
13626 "by giving it the B<O_NONBLOCK> flag."
13627 msgstr ""
13628 "このシステムコールを使うには、オープンされたファイルディスクリプターが 必要で"
13629 "ある。 B<open>(2)  コールはしばしば望んでいない副作用を伴うことがあるが、"
13630 "Linux では B<open>(2)  に B<O_NONBLOCK> フラグをつけることでこの副作用を避け"
13631 "ることができる。"
13632
13633 #.  .BR mt (4),
13634 #. type: Plain text
13635 #: build/C/man2/ioctl.2:150
13636 msgid ""
13637 "B<execve>(2), B<fcntl>(2), B<ioctl_list>(2), B<open>(2), B<sd>(4), B<tty>(4)"
13638 msgstr ""
13639 "B<execve>(2), B<fcntl>(2), B<ioctl_list>(2), B<open>(2), B<sd>(4), B<tty>(4)"
13640
13641 #. type: TH
13642 #: build/C/man2/ioctl_list.2:30
13643 #, no-wrap
13644 msgid "IOCTL_LIST"
13645 msgstr "IOCTL_LIST"
13646
13647 #. type: TH
13648 #: build/C/man2/ioctl_list.2:30
13649 #, no-wrap
13650 msgid "2013-09-17"
13651 msgstr "2013-09-17"
13652
13653 #. type: Plain text
13654 #: build/C/man2/ioctl_list.2:33
13655 msgid "ioctl_list - list of ioctl calls in Linux/i386 kernel"
13656 msgstr "ioctl_list - Linux/i386 カーネルの ioctl のリスト"
13657
13658 #. type: Plain text
13659 #: build/C/man2/ioctl_list.2:40
13660 msgid ""
13661 "This is Ioctl List 1.3.27, a list of ioctl calls in Linux/i386 kernel "
13662 "1.3.27.  It contains 421 ioctls from I<E<lt>/usr/include/{asm,linux}/*."
13663 "hE<gt>>.  For each ioctl, its numerical value, its name, and its argument "
13664 "type are given."
13665 msgstr ""
13666 "この文章は ioctl リスト 1.3.27、つまり Linux/i386 カーネル 1.3.27 に おける "
13667 "ioctl コールの一覧です。このリストは I<E<lt>/usr/include/{asm,linux}/*."
13668 "hE<gt>> にある 421 の ioctl を含んでいます。全ての ioctl に対して、数値、名"
13669 "称、 引き数の型を列挙してあります。"
13670
13671 #. type: Plain text
13672 #: build/C/man2/ioctl_list.2:48
13673 msgid ""
13674 "An argument type of I<const struct foo\\ *> means the argument is input to "
13675 "the kernel.  I<struct foo\\ *> means the kernel outputs the argument.  If "
13676 "the kernel uses the argument for both input and output, this is marked with "
13677 "I<//\\ I-O>."
13678 msgstr ""
13679 "引き数型 I<const struct foo\\ *> は、その引き数がカーネルへの入力である事を意"
13680 "味します。また、 I<struct foo\\ *> は、その引き数がカーネルからの出力である事"
13681 "を意味します。 カーネルがその引き数を入力と出力の両方に使用する場合は、 I<//"
13682 "\\ I-O> マークを付けてあります。"
13683
13684 #. type: Plain text
13685 #: build/C/man2/ioctl_list.2:53
13686 msgid ""
13687 "Some ioctls take more arguments or return more values than a single "
13688 "structure.  These are marked I<//\\ MORE> and documented further in a "
13689 "separate section."
13690 msgstr ""
13691 "いくつかの ioctl は複数の構造体の引き数を必要としたり、値を返したり します。"
13692 "これらには I<//\\ MORE> マークを付けて、 さらに分離したセクションで説明してあ"
13693 "ります。"
13694
13695 #. type: Plain text
13696 #: build/C/man2/ioctl_list.2:55
13697 msgid "This list is very incomplete."
13698 msgstr "このリストは不完全です。"
13699
13700 #. type: SS
13701 #: build/C/man2/ioctl_list.2:55
13702 #, no-wrap
13703 msgid "ioctl structure"
13704 msgstr "ioctl の構造"
13705
13706 #.  added two sections - aeb
13707 #. type: Plain text
13708 #: build/C/man2/ioctl_list.2:60
13709 msgid ""
13710 "Ioctl command values are 32-bit constants.  In principle these constants are "
13711 "completely arbitrary, but people have tried to build some structure into "
13712 "them."
13713 msgstr ""
13714 "ioctl コマンドの値は 32 ビットの定数です。 原則として、これらの定数は全く任意"
13715 "のものですが、 設計者は何らかの構造をこれらの定数に組み込もうとしています。"
13716
13717 #. type: Plain text
13718 #: build/C/man2/ioctl_list.2:79
13719 msgid ""
13720 "The old Linux situation was that of mostly 16-bit constants, where the last "
13721 "byte is a serial number, and the preceding byte(s) give a type indicating "
13722 "the driver.  Sometimes the major number was used: 0x03 for the B<HDIO_*> "
13723 "ioctls, 0x06 for the B<LP*> ioctls.  And sometimes one or more ASCII letters "
13724 "were used.  For example, B<TCGETS> has value 0x00005401, with 0x54 = \\(aqT"
13725 "\\(aq indicating the terminal driver, and B<CYGETTIMEOUT> has value "
13726 "0x00435906, with 0x43 0x59 = \\(aqC\\(aq \\(aqY\\(aq indicating the cyclades "
13727 "driver."
13728 msgstr ""
13729 "昔の Linux では、大部分は 16 ビットの定数であり、 下位バイトはシリアル番号"
13730 "で、上位バイトはドライバのタイプを表していました。 メジャー番号が使われること"
13731 "もありました: 0x03 が B<HDIO_*> ioctl, 0x06 が B<LP*> ioctl などです。 1 文字"
13732 "以上の ASCII 文字列が使われることもありました。 たとえば B<TCGETS> の値は "
13733 "0x00005401 であり、 0x54 = \\(aqT\\(aq でターミナルドライバを表します。 "
13734 "B<CYGETTIMEOUT> の値は 0x00435906 であり、 0x43 0x59 = \\(aqC\\(aq \\(aqY"
13735 "\\(aq で cyclades ドライバを表します。"
13736
13737 #. type: Plain text
13738 #: build/C/man2/ioctl_list.2:87
13739 msgid ""
13740 "Later (0.98p5) some more information was built into the number.  One has 2 "
13741 "direction bits (00: none, 01: write, 10: read, 11: read/write)  followed by "
13742 "14 size bits (giving the size of the argument), followed by an 8-bit type "
13743 "(collecting the ioctls in groups for a common purpose or a common driver), "
13744 "and an 8-bit serial number."
13745 msgstr ""
13746 "後の時代 (0.98p5) になると、 より多くの情報が数値に組み込まれるようになりまし"
13747 "た。 1 つの数値は、読み書きの方向を表す 2 ビット (00: 読み書きなし, 01: 書き"
13748 "込み, 10: 読み込み, 11: 読み込み/書き込み)、 (引き数のサイズを表す) 14 ビッ"
13749 "ト、 (共通の目的または共通のドライバで ioctl をグループにするための)  8 ビッ"
13750 "トのタイプ、8 ビットのシリアル番号から構成されます。"
13751
13752 #. type: Plain text
13753 #: build/C/man2/ioctl_list.2:98
13754 msgid ""
13755 "The macros describing this structure live in I<E<lt>asm/ioctl.hE<gt>> and "
13756 "are B<_IO(type,nr)> and B<{_IOR,_IOW,_IOWR}(type,nr,size)>.  They use "
13757 "I<sizeof(size)> so that size is a misnomer here: this third argument is a "
13758 "data type."
13759 msgstr ""
13760 "この構造を記述するマクロは I<E<lt>asm/ioctl.hE<gt>> にあり、 B<_IO(type,nr)> "
13761 "と B<{_IOR,_IOW,_IOWR}(type,nr,size)> です。 これらのマクロは "
13762 "I<sizeof(size)> を使うので、 ここで size という名前にしているのは間違っていま"
13763 "す: この 3 つ目の引き数はデータタイプです。"
13764
13765 #. type: Plain text
13766 #: build/C/man2/ioctl_list.2:103
13767 msgid ""
13768 "Note that the size bits are very unreliable: in lots of cases they are "
13769 "wrong, either because of buggy macros using I<sizeof(sizeof(struct))>, or "
13770 "because of legacy values."
13771 msgstr ""
13772 "size ビットは全く当てにならない点に注意して下さい: 多くの場合、間違っていま"
13773 "す。 これは I<sizeof(sizeof(struct))> を使ったバグを含んだマクロや、過去から"
13774 "受け継いだ値が原因です。"
13775
13776 #. type: Plain text
13777 #: build/C/man2/ioctl_list.2:107
13778 msgid ""
13779 "Thus, it seems that the new structure only gave disadvantages: it does not "
13780 "help in checking, but it causes varying values for the various architectures."
13781 msgstr ""
13782 "したがって、新しい構造は不都合な点しかないように思われます: この構造はチェッ"
13783 "クの手助けにはならず、 様々なアーキテクチャーによって値を変化させてしまいま"
13784 "す。"
13785
13786 #. type: Plain text
13787 #: build/C/man2/ioctl_list.2:113
13788 msgid ""
13789 "Decent ioctls return 0 on success and -1 on error, while any output value is "
13790 "stored via the argument.  However, quite a few ioctls in fact return an "
13791 "output value.  This is not yet indicated below."
13792 msgstr ""
13793 "きちんとした ioctl は、成功した場合は 0 を返し、 エラーの場合は -1 を返しま"
13794 "す。 また出力値は引き数に格納します。 しかし実際は、かなり多くの ioctl が出力"
13795 "値を返します。 これは今のところ以下では示されていません。"
13796
13797 #. type: Plain text
13798 #: build/C/man2/ioctl_list.2:115
13799 msgid "// Main table."
13800 msgstr "// Main table."
13801
13802 #. type: Plain text
13803 #: build/C/man2/ioctl_list.2:117
13804 msgid "// E<lt>include/asm-i386/socket.hE<gt>"
13805 msgstr "// E<lt>include/asm-i386/socket.hE<gt>"
13806
13807 #. type: tbl table
13808 #: build/C/man2/ioctl_list.2:119
13809 #, no-wrap
13810 msgid "0x00008901\tFIOSETOWN\tconst int *\n"
13811 msgstr "0x00008901\tFIOSETOWN\tconst int *\n"
13812
13813 #. type: tbl table
13814 #: build/C/man2/ioctl_list.2:120
13815 #, no-wrap
13816 msgid "0x00008902\tSIOCSPGRP\tconst int *\n"
13817 msgstr "0x00008902\tSIOCSPGRP\tconst int *\n"
13818
13819 #. type: tbl table
13820 #: build/C/man2/ioctl_list.2:121
13821 #, no-wrap
13822 msgid "0x00008903\tFIOGETOWN\tint *\n"
13823 msgstr "0x00008903\tFIOGETOWN\tint *\n"
13824
13825 #. type: tbl table
13826 #: build/C/man2/ioctl_list.2:122
13827 #, no-wrap
13828 msgid "0x00008904\tSIOCGPGRP\tint *\n"
13829 msgstr "0x00008904\tSIOCGPGRP\tint *\n"
13830
13831 #. type: tbl table
13832 #: build/C/man2/ioctl_list.2:123
13833 #, no-wrap
13834 msgid "0x00008905\tSIOCATMAR\tint *\n"
13835 msgstr "0x00008905\tSIOCATMAR\tint *\n"
13836
13837 #. type: tbl table
13838 #: build/C/man2/ioctl_list.2:124
13839 #, no-wrap
13840 msgid "0x00008906\tSIOCGSTAMP\ttimeval *\n"
13841 msgstr "0x00008906\tSIOCGSTAMP\ttimeval *\n"
13842
13843 #. type: Plain text
13844 #: build/C/man2/ioctl_list.2:128
13845 msgid "// E<lt>include/asm-i386/termios.hE<gt>"
13846 msgstr "// E<lt>include/asm-i386/termios.hE<gt>"
13847
13848 #. type: tbl table
13849 #: build/C/man2/ioctl_list.2:130
13850 #, no-wrap
13851 msgid "0x00005401\tTCGETS\tstruct termios *\n"
13852 msgstr "0x00005401\tTCGETS\tstruct termios *\n"
13853
13854 #. type: tbl table
13855 #: build/C/man2/ioctl_list.2:131
13856 #, no-wrap
13857 msgid "0x00005402\tTCSETS\tconst struct termios *\n"
13858 msgstr "0x00005402\tTCSETS\tconst struct termios *\n"
13859
13860 #. type: tbl table
13861 #: build/C/man2/ioctl_list.2:132
13862 #, no-wrap
13863 msgid "0x00005403\tTCSETSW\tconst struct termios *\n"
13864 msgstr "0x00005403\tTCSETSW\tconst struct termios *\n"
13865
13866 #. type: tbl table
13867 #: build/C/man2/ioctl_list.2:133
13868 #, no-wrap
13869 msgid "0x00005404\tTCSETSF\tconst struct termios *\n"
13870 msgstr "0x00005404\tTCSETSF\tconst struct termios *\n"
13871
13872 #. type: tbl table
13873 #: build/C/man2/ioctl_list.2:134
13874 #, no-wrap
13875 msgid "0x00005405\tTCGETA\tstruct termio *\n"
13876 msgstr "0x00005405\tTCGETA\tstruct termio *\n"
13877
13878 #. type: tbl table
13879 #: build/C/man2/ioctl_list.2:135
13880 #, no-wrap
13881 msgid "0x00005406\tTCSETA\tconst struct termio *\n"
13882 msgstr "0x00005406\tTCSETA\tconst struct termio *\n"
13883
13884 #. type: tbl table
13885 #: build/C/man2/ioctl_list.2:136
13886 #, no-wrap
13887 msgid "0x00005407\tTCSETAW\tconst struct termio *\n"
13888 msgstr "0x00005407\tTCSETAW\tconst struct termio *\n"
13889
13890 #. type: tbl table
13891 #: build/C/man2/ioctl_list.2:137
13892 #, no-wrap
13893 msgid "0x00005408\tTCSETAF\tconst struct termio *\n"
13894 msgstr "0x00005408\tTCSETAF\tconst struct termio *\n"
13895
13896 #. type: tbl table
13897 #: build/C/man2/ioctl_list.2:138
13898 #, no-wrap
13899 msgid "0x00005409\tTCSBRK\tint\n"
13900 msgstr "0x00005409\tTCSBRK\tint\n"
13901
13902 #. type: tbl table
13903 #: build/C/man2/ioctl_list.2:139
13904 #, no-wrap
13905 msgid "0x0000540A\tTCXONC\tint\n"
13906 msgstr "0x0000540A\tTCXONC\tint\n"
13907
13908 #. type: tbl table
13909 #: build/C/man2/ioctl_list.2:140
13910 #, no-wrap
13911 msgid "0x0000540B\tTCFLSH\tint\n"
13912 msgstr "0x0000540B\tTCFLSH\tint\n"
13913
13914 #. type: tbl table
13915 #: build/C/man2/ioctl_list.2:141
13916 #, no-wrap
13917 msgid "0x0000540C\tTIOCEXCL\tvoid\n"
13918 msgstr "0x0000540C\tTIOCEXCL\tvoid\n"
13919
13920 #. type: tbl table
13921 #: build/C/man2/ioctl_list.2:142
13922 #, no-wrap
13923 msgid "0x0000540D\tTIOCNXCL\tvoid\n"
13924 msgstr "0x0000540D\tTIOCNXCL\tvoid\n"
13925
13926 #. type: tbl table
13927 #: build/C/man2/ioctl_list.2:143
13928 #, no-wrap
13929 msgid "0x0000540E\tTIOCSCTTY\tint\n"
13930 msgstr "0x0000540E\tTIOCSCTTY\tint\n"
13931
13932 #. type: tbl table
13933 #: build/C/man2/ioctl_list.2:144
13934 #, no-wrap
13935 msgid "0x0000540F\tTIOCGPGRP\tpid_t *\n"
13936 msgstr "0x0000540F\tTIOCGPGRP\tpid_t *\n"
13937
13938 #. type: tbl table
13939 #: build/C/man2/ioctl_list.2:145
13940 #, no-wrap
13941 msgid "0x00005410\tTIOCSPGRP\tconst pid_t *\n"
13942 msgstr "0x00005410\tTIOCSPGRP\tconst pid_t *\n"
13943
13944 #. type: tbl table
13945 #: build/C/man2/ioctl_list.2:146
13946 #, no-wrap
13947 msgid "0x00005411\tTIOCOUTQ\tint *\n"
13948 msgstr "0x00005411\tTIOCOUTQ\tint *\n"
13949
13950 #. type: tbl table
13951 #: build/C/man2/ioctl_list.2:147
13952 #, no-wrap
13953 msgid "0x00005412\tTIOCSTI\tconst char *\n"
13954 msgstr "0x00005412\tTIOCSTI\tconst char *\n"
13955
13956 #. type: tbl table
13957 #: build/C/man2/ioctl_list.2:148
13958 #, no-wrap
13959 msgid "0x00005413\tTIOCGWINSZ\tstruct winsize *\n"
13960 msgstr "0x00005413\tTIOCGWINSZ\tstruct winsize *\n"
13961
13962 #. type: tbl table
13963 #: build/C/man2/ioctl_list.2:149
13964 #, no-wrap
13965 msgid "0x00005414\tTIOCSWINSZ\tconst struct winsize *\n"
13966 msgstr "0x00005414\tTIOCSWINSZ\tconst struct winsize *\n"
13967
13968 #. type: tbl table
13969 #: build/C/man2/ioctl_list.2:150
13970 #, no-wrap
13971 msgid "0x00005415\tTIOCMGET\tint *\n"
13972 msgstr "0x00005415\tTIOCMGET\tint *\n"
13973
13974 #. type: tbl table
13975 #: build/C/man2/ioctl_list.2:151
13976 #, no-wrap
13977 msgid "0x00005416\tTIOCMBIS\tconst int *\n"
13978 msgstr "0x00005416\tTIOCMBIS\tconst int *\n"
13979
13980 #. type: tbl table
13981 #: build/C/man2/ioctl_list.2:152
13982 #, no-wrap
13983 msgid "0x00005417\tTIOCMBIC\tconst int *\n"
13984 msgstr "0x00005417\tTIOCMBIC\tconst int *\n"
13985
13986 #. type: tbl table
13987 #: build/C/man2/ioctl_list.2:153
13988 #, no-wrap
13989 msgid "0x00005418\tTIOCMSET\tconst int *\n"
13990 msgstr "0x00005418\tTIOCMSET\tconst int *\n"
13991
13992 #. type: tbl table
13993 #: build/C/man2/ioctl_list.2:154
13994 #, no-wrap
13995 msgid "0x00005419\tTIOCGSOFTCAR\tint *\n"
13996 msgstr "0x00005419\tTIOCGSOFTCAR\tint *\n"
13997
13998 #. type: tbl table
13999 #: build/C/man2/ioctl_list.2:155
14000 #, no-wrap
14001 msgid "0x0000541A\tTIOCSSOFTCAR\tconst int *\n"
14002 msgstr "0x0000541A\tTIOCSSOFTCAR\tconst int *\n"
14003
14004 #. type: tbl table
14005 #: build/C/man2/ioctl_list.2:156
14006 #, no-wrap
14007 msgid "0x0000541B\tFIONREAD\tint *\n"
14008 msgstr "0x0000541B\tFIONREAD\tint *\n"
14009
14010 #. type: tbl table
14011 #: build/C/man2/ioctl_list.2:157
14012 #, no-wrap
14013 msgid "0x0000541B\tTIOCINQ\tint *\n"
14014 msgstr "0x0000541B\tTIOCINQ\tint *\n"
14015
14016 #. type: tbl table
14017 #: build/C/man2/ioctl_list.2:158
14018 #, no-wrap
14019 msgid "0x0000541C\tTIOCLINUX\tconst char *\t// MORE\n"
14020 msgstr "0x0000541C\tTIOCLINUX\tconst char *\t// MORE\n"
14021
14022 #. type: tbl table
14023 #: build/C/man2/ioctl_list.2:159
14024 #, no-wrap
14025 msgid "0x0000541D\tTIOCCONS\tvoid\n"
14026 msgstr "0x0000541D\tTIOCCONS\tvoid\n"
14027
14028 #. type: tbl table
14029 #: build/C/man2/ioctl_list.2:160
14030 #, no-wrap
14031 msgid "0x0000541E\tTIOCGSERIAL\tstruct serial_struct *\n"
14032 msgstr "0x0000541E\tTIOCGSERIAL\tstruct serial_struct *\n"
14033
14034 #. type: tbl table
14035 #: build/C/man2/ioctl_list.2:161
14036 #, no-wrap
14037 msgid "0x0000541F\tTIOCSSERIAL\tconst struct serial_struct *\n"
14038 msgstr "0x0000541F\tTIOCSSERIAL\tconst struct serial_struct *\n"
14039
14040 #. type: tbl table
14041 #: build/C/man2/ioctl_list.2:162
14042 #, no-wrap
14043 msgid "0x00005420\tTIOCPKT\tconst int *\n"
14044 msgstr "0x00005420\tTIOCPKT\tconst int *\n"
14045
14046 #. type: tbl table
14047 #: build/C/man2/ioctl_list.2:163
14048 #, no-wrap
14049 msgid "0x00005421\tFIONBIO\tconst int *\n"
14050 msgstr "0x00005421\tFIONBIO\tconst int *\n"
14051
14052 #. type: tbl table
14053 #: build/C/man2/ioctl_list.2:164
14054 #, no-wrap
14055 msgid "0x00005422\tTIOCNOTTY\tvoid\n"
14056 msgstr "0x00005422\tTIOCNOTTY\tvoid\n"
14057
14058 #. type: tbl table
14059 #: build/C/man2/ioctl_list.2:165
14060 #, no-wrap
14061 msgid "0x00005423\tTIOCSETD\tconst int *\n"
14062 msgstr "0x00005423\tTIOCSETD\tconst int *\n"
14063
14064 #. type: tbl table
14065 #: build/C/man2/ioctl_list.2:166
14066 #, no-wrap
14067 msgid "0x00005424\tTIOCGETD\tint *\n"
14068 msgstr "0x00005424\tTIOCGETD\tint *\n"
14069
14070 #. type: tbl table
14071 #: build/C/man2/ioctl_list.2:167
14072 #, no-wrap
14073 msgid "0x00005425\tTCSBRKP\tint\n"
14074 msgstr "0x00005425\tTCSBRKP\tint\n"
14075
14076 #. type: tbl table
14077 #: build/C/man2/ioctl_list.2:168
14078 #, no-wrap
14079 msgid "0x00005426\tTIOCTTYGSTRUCT\tstruct tty_struct *\n"
14080 msgstr "0x00005426\tTIOCTTYGSTRUCT\tstruct tty_struct *\n"
14081
14082 #. type: tbl table
14083 #: build/C/man2/ioctl_list.2:169
14084 #, no-wrap
14085 msgid "0x00005450\tFIONCLEX\tvoid\n"
14086 msgstr "0x00005450\tFIONCLEX\tvoid\n"
14087
14088 #. type: tbl table
14089 #: build/C/man2/ioctl_list.2:170
14090 #, no-wrap
14091 msgid "0x00005451\tFIOCLEX\tvoid\n"
14092 msgstr "0x00005451\tFIOCLEX\tvoid\n"
14093
14094 #. type: tbl table
14095 #: build/C/man2/ioctl_list.2:171
14096 #, no-wrap
14097 msgid "0x00005452\tFIOASYNC\tconst int *\n"
14098 msgstr "0x00005452\tFIOASYNC\tconst int *\n"
14099
14100 #. type: tbl table
14101 #: build/C/man2/ioctl_list.2:172
14102 #, no-wrap
14103 msgid "0x00005453\tTIOCSERCONFIG\tvoid\n"
14104 msgstr "0x00005453\tTIOCSERCONFIG\tvoid\n"
14105
14106 #. type: tbl table
14107 #: build/C/man2/ioctl_list.2:173
14108 #, no-wrap
14109 msgid "0x00005454\tTIOCSERGWILD\tint *\n"
14110 msgstr "0x00005454\tTIOCSERGWILD\tint *\n"
14111
14112 #. type: tbl table
14113 #: build/C/man2/ioctl_list.2:174
14114 #, no-wrap
14115 msgid "0x00005455\tTIOCSERSWILD\tconst int *\n"
14116 msgstr "0x00005455\tTIOCSERSWILD\tconst int *\n"
14117
14118 #. type: tbl table
14119 #: build/C/man2/ioctl_list.2:175
14120 #, no-wrap
14121 msgid "0x00005456\tTIOCGLCKTRMIOS\tstruct termios *\n"
14122 msgstr "0x00005456\tTIOCGLCKTRMIOS\tstruct termios *\n"
14123
14124 #. type: tbl table
14125 #: build/C/man2/ioctl_list.2:176
14126 #, no-wrap
14127 msgid "0x00005457\tTIOCSLCKTRMIOS\tconst struct termios *\n"
14128 msgstr "0x00005457\tTIOCSLCKTRMIOS\tconst struct termios *\n"
14129
14130 #. type: tbl table
14131 #: build/C/man2/ioctl_list.2:177
14132 #, no-wrap
14133 msgid "0x00005458\tTIOCSERGSTRUCT\tstruct async_struct *\n"
14134 msgstr "0x00005458\tTIOCSERGSTRUCT\tstruct async_struct *\n"
14135
14136 #. type: tbl table
14137 #: build/C/man2/ioctl_list.2:178
14138 #, no-wrap
14139 msgid "0x00005459\tTIOCSERGETLSR\tint *\n"
14140 msgstr "0x00005459\tTIOCSERGETLSR\tint *\n"
14141
14142 #. type: tbl table
14143 #: build/C/man2/ioctl_list.2:185
14144 #, no-wrap
14145 msgid "0x0000545A\tTIOCSERGETMULTI\tstruct serial_multiport_struct *\n"
14146 msgstr "0x0000545A\tTIOCSERGETMULTI\tstruct serial_multiport_struct *\n"
14147
14148 #. type: tbl table
14149 #: build/C/man2/ioctl_list.2:186
14150 #, no-wrap
14151 msgid "0x0000545B\tTIOCSERSETMULTI\tconst struct serial_multiport_struct *\n"
14152 msgstr "0x0000545B\tTIOCSERSETMULTI\tconst struct serial_multiport_struct *\n"
14153
14154 #. type: Plain text
14155 #: build/C/man2/ioctl_list.2:190
14156 msgid "// E<lt>include/linux/ax25.hE<gt>"
14157 msgstr "// E<lt>include/linux/ax25.hE<gt>"
14158
14159 #. type: tbl table
14160 #: build/C/man2/ioctl_list.2:192
14161 #, no-wrap
14162 msgid "0x000089E0\tSIOCAX25GETUID\tconst struct sockaddr_ax25 *\n"
14163 msgstr "0x000089E0\tSIOCAX25GETUID\tconst struct sockaddr_ax25 *\n"
14164
14165 #. type: tbl table
14166 #: build/C/man2/ioctl_list.2:193
14167 #, no-wrap
14168 msgid "0x000089E1\tSIOCAX25ADDUID\tconst struct sockaddr_ax25 *\n"
14169 msgstr "0x000089E1\tSIOCAX25ADDUID\tconst struct sockaddr_ax25 *\n"
14170
14171 #. type: tbl table
14172 #: build/C/man2/ioctl_list.2:194
14173 #, no-wrap
14174 msgid "0x000089E2\tSIOCAX25DELUID\tconst struct sockaddr_ax25 *\n"
14175 msgstr "0x000089E2\tSIOCAX25DELUID\tconst struct sockaddr_ax25 *\n"
14176
14177 #. type: tbl table
14178 #: build/C/man2/ioctl_list.2:195
14179 #, no-wrap
14180 msgid "0x000089E3\tSIOCAX25NOUID\tconst int *\n"
14181 msgstr "0x000089E3\tSIOCAX25NOUID\tconst int *\n"
14182
14183 #. type: tbl table
14184 #: build/C/man2/ioctl_list.2:196
14185 #, no-wrap
14186 msgid "0x000089E4\tSIOCAX25DIGCTL\tconst int *\n"
14187 msgstr "0x000089E4\tSIOCAX25DIGCTL\tconst int *\n"
14188
14189 #. type: tbl table
14190 #: build/C/man2/ioctl_list.2:197
14191 #, no-wrap
14192 msgid "0x000089E5\tSIOCAX25GETPARMS\tstruct ax25_parms_struct *\t// I-O\n"
14193 msgstr "0x000089E5\tSIOCAX25GETPARMS\tstruct ax25_parms_struct *\t// I-O\n"
14194
14195 #. type: tbl table
14196 #: build/C/man2/ioctl_list.2:201
14197 #, no-wrap
14198 msgid "0x000089E6\tSIOCAX25SETPARMS\tconst struct ax25_parms_struct *\n"
14199 msgstr "0x000089E6\tSIOCAX25SETPARMS\tconst struct ax25_parms_struct *\n"
14200
14201 #. type: Plain text
14202 #: build/C/man2/ioctl_list.2:205
14203 msgid "// E<lt>include/linux/cdk.hE<gt>"
14204 msgstr "// E<lt>include/linux/cdk.hE<gt>"
14205
14206 #. type: tbl table
14207 #: build/C/man2/ioctl_list.2:207
14208 #, no-wrap
14209 msgid "0x00007314\tSTL_BINTR\tvoid\n"
14210 msgstr "0x00007314\tSTL_BINTR\tvoid\n"
14211
14212 #. type: tbl table
14213 #: build/C/man2/ioctl_list.2:208
14214 #, no-wrap
14215 msgid "0x00007315\tSTL_BSTART\tvoid\n"
14216 msgstr "0x00007315\tSTL_BSTART\tvoid\n"
14217
14218 #. type: tbl table
14219 #: build/C/man2/ioctl_list.2:209
14220 #, no-wrap
14221 msgid "0x00007316\tSTL_BSTOP\tvoid\n"
14222 msgstr "0x00007316\tSTL_BSTOP\tvoid\n"
14223
14224 #. type: tbl table
14225 #: build/C/man2/ioctl_list.2:210
14226 #, no-wrap
14227 msgid "0x00007317\tSTL_BRESET\tvoid\n"
14228 msgstr "0x00007317\tSTL_BRESET\tvoid\n"
14229
14230 #. type: Plain text
14231 #: build/C/man2/ioctl_list.2:214
14232 msgid "// E<lt>include/linux/cdrom.hE<gt>"
14233 msgstr "// E<lt>include/linux/cdrom.hE<gt>"
14234
14235 #. type: tbl table
14236 #: build/C/man2/ioctl_list.2:216
14237 #, no-wrap
14238 msgid "0x00005301\tCDROMPAUSE\tvoid\n"
14239 msgstr "0x00005301\tCDROMPAUSE\tvoid\n"
14240
14241 #. type: tbl table
14242 #: build/C/man2/ioctl_list.2:217
14243 #, no-wrap
14244 msgid "0x00005302\tCDROMRESUME\tvoid\n"
14245 msgstr "0x00005302\tCDROMRESUME\tvoid\n"
14246
14247 #. type: tbl table
14248 #: build/C/man2/ioctl_list.2:218
14249 #, no-wrap
14250 msgid "0x00005303\tCDROMPLAYMSF\tconst struct cdrom_msf *\n"
14251 msgstr "0x00005303\tCDROMPLAYMSF\tconst struct cdrom_msf *\n"
14252
14253 #. type: tbl table
14254 #: build/C/man2/ioctl_list.2:219
14255 #, no-wrap
14256 msgid "0x00005304\tCDROMPLAYTRKIND\tconst struct cdrom_ti *\n"
14257 msgstr "0x00005304\tCDROMPLAYTRKIND\tconst struct cdrom_ti *\n"
14258
14259 #. type: tbl table
14260 #: build/C/man2/ioctl_list.2:220
14261 #, no-wrap
14262 msgid "0x00005305\tCDROMREADTOCHDR\tstruct cdrom_tochdr *\n"
14263 msgstr "0x00005305\tCDROMREADTOCHDR\tstruct cdrom_tochdr *\n"
14264
14265 #. type: tbl table
14266 #: build/C/man2/ioctl_list.2:224
14267 #, no-wrap
14268 msgid "0x00005306\tCDROMREADTOCENTRY\tstruct cdrom_tocentry *\t// I-O\n"
14269 msgstr "0x00005306\tCDROMREADTOCENTRY\tstruct cdrom_tocentry *\t// I-O\n"
14270
14271 #. type: tbl table
14272 #: build/C/man2/ioctl_list.2:228
14273 #, no-wrap
14274 msgid "0x00005307\tCDROMSTOP\tvoid\n"
14275 msgstr "0x00005307\tCDROMSTOP\tvoid\n"
14276
14277 #. type: tbl table
14278 #: build/C/man2/ioctl_list.2:229
14279 #, no-wrap
14280 msgid "0x00005308\tCDROMSTART\tvoid\n"
14281 msgstr "0x00005308\tCDROMSTART\tvoid\n"
14282
14283 #. type: tbl table
14284 #: build/C/man2/ioctl_list.2:230
14285 #, no-wrap
14286 msgid "0x00005309\tCDROMEJECT\tvoid\n"
14287 msgstr "0x00005309\tCDROMEJECT\tvoid\n"
14288
14289 #. type: tbl table
14290 #: build/C/man2/ioctl_list.2:231
14291 #, no-wrap
14292 msgid "0x0000530A\tCDROMVOLCTRL\tconst struct cdrom_volctrl *\n"
14293 msgstr "0x0000530A\tCDROMVOLCTRL\tconst struct cdrom_volctrl *\n"
14294
14295 #. type: tbl table
14296 #: build/C/man2/ioctl_list.2:232
14297 #, no-wrap
14298 msgid "0x0000530B\tCDROMSUBCHNL\tstruct cdrom_subchnl *\t// I-O\n"
14299 msgstr "0x0000530B\tCDROMSUBCHNL\tstruct cdrom_subchnl *\t// I-O\n"
14300
14301 #. type: tbl table
14302 #: build/C/man2/ioctl_list.2:233
14303 #, no-wrap
14304 msgid "0x0000530C\tCDROMREADMODE2\tconst struct cdrom_msf *\t// MORE\n"
14305 msgstr "0x0000530C\tCDROMREADMODE2\tconst struct cdrom_msf *\t// MORE\n"
14306
14307 #. type: tbl table
14308 #: build/C/man2/ioctl_list.2:234
14309 #, no-wrap
14310 msgid "0x0000530D\tCDROMREADMODE1\tconst struct cdrom_msf *\t// MORE\n"
14311 msgstr "0x0000530D\tCDROMREADMODE1\tconst struct cdrom_msf *\t// MORE\n"
14312
14313 #. type: tbl table
14314 #: build/C/man2/ioctl_list.2:235
14315 #, no-wrap
14316 msgid "0x0000530E\tCDROMREADAUDIO\tconst struct cdrom_read_audio *\t// MORE\n"
14317 msgstr "0x0000530E\tCDROMREADAUDIO\tconst struct cdrom_read_audio *\t// MORE\n"
14318
14319 #. type: tbl table
14320 #: build/C/man2/ioctl_list.2:236
14321 #, no-wrap
14322 msgid "0x0000530F\tCDROMEJECT_SW\tint\n"
14323 msgstr "0x0000530F\tCDROMEJECT_SW\tint\n"
14324
14325 #. type: tbl table
14326 #: build/C/man2/ioctl_list.2:240
14327 #, no-wrap
14328 msgid "0x00005310\tCDROMMULTISESSION\tstruct cdrom_multisession *\t// I-O\n"
14329 msgstr "0x00005310\tCDROMMULTISESSION\tstruct cdrom_multisession *\t// I-O\n"
14330
14331 #. type: tbl table
14332 #: build/C/man2/ioctl_list.2:244
14333 #, no-wrap
14334 msgid "0x00005311\tCDROM_GET_UPC\tstruct { char [8]; } *\n"
14335 msgstr "0x00005311\tCDROM_GET_UPC\tstruct { char [8]; } *\n"
14336
14337 #. type: tbl table
14338 #: build/C/man2/ioctl_list.2:245
14339 #, no-wrap
14340 msgid "0x00005312\tCDROMRESET\tvoid\n"
14341 msgstr "0x00005312\tCDROMRESET\tvoid\n"
14342
14343 #. type: tbl table
14344 #: build/C/man2/ioctl_list.2:246
14345 #, no-wrap
14346 msgid "0x00005313\tCDROMVOLREAD\tstruct cdrom_volctrl *\n"
14347 msgstr "0x00005313\tCDROMVOLREAD\tstruct cdrom_volctrl *\n"
14348
14349 #. type: tbl table
14350 #: build/C/man2/ioctl_list.2:247
14351 #, no-wrap
14352 msgid "0x00005314\tCDROMREADRAW\tconst struct cdrom_msf *\t// MORE\n"
14353 msgstr "0x00005314\tCDROMREADRAW\tconst struct cdrom_msf *\t// MORE\n"
14354
14355 #. type: tbl table
14356 #: build/C/man2/ioctl_list.2:248
14357 #, no-wrap
14358 msgid "0x00005315\tCDROMREADCOOKED\tconst struct cdrom_msf *\t// MORE\n"
14359 msgstr "0x00005315\tCDROMREADCOOKED\tconst struct cdrom_msf *\t// MORE\n"
14360
14361 #. type: tbl table
14362 #: build/C/man2/ioctl_list.2:249
14363 #, no-wrap
14364 msgid "0x00005316\tCDROMSEEK\tconst struct cdrom_msf *\n"
14365 msgstr "0x00005316\tCDROMSEEK\tconst struct cdrom_msf *\n"
14366
14367 #. type: Plain text
14368 #: build/C/man2/ioctl_list.2:253
14369 msgid "// E<lt>include/linux/cm206.hE<gt>"
14370 msgstr "// E<lt>include/linux/cm206.hE<gt>"
14371
14372 #. type: tbl table
14373 #: build/C/man2/ioctl_list.2:255
14374 #, no-wrap
14375 msgid "0x00002000\tCM206CTL_GET_STAT\tint\n"
14376 msgstr "0x00002000\tCM206CTL_GET_STAT\tint\n"
14377
14378 #. type: tbl table
14379 #: build/C/man2/ioctl_list.2:256
14380 #, no-wrap
14381 msgid "0x00002001\tCM206CTL_GET_LAST_STAT\tint\n"
14382 msgstr "0x00002001\tCM206CTL_GET_LAST_STAT\tint\n"
14383
14384 #. type: Plain text
14385 #: build/C/man2/ioctl_list.2:260
14386 msgid "// E<lt>include/linux/cyclades.hE<gt>"
14387 msgstr "// E<lt>include/linux/cyclades.hE<gt>"
14388
14389 #. type: tbl table
14390 #: build/C/man2/ioctl_list.2:262
14391 #, no-wrap
14392 msgid "0x00435901\tCYGETMON\tstruct cyclades_monitor *\n"
14393 msgstr "0x00435901\tCYGETMON\tstruct cyclades_monitor *\n"
14394
14395 #. type: tbl table
14396 #: build/C/man2/ioctl_list.2:263
14397 #, no-wrap
14398 msgid "0x00435902\tCYGETTHRESH\tint *\n"
14399 msgstr "0x00435902\tCYGETTHRESH\tint *\n"
14400
14401 #. type: tbl table
14402 #: build/C/man2/ioctl_list.2:264
14403 #, no-wrap
14404 msgid "0x00435903\tCYSETTHRESH\tint\n"
14405 msgstr "0x00435903\tCYSETTHRESH\tint\n"
14406
14407 #. type: tbl table
14408 #: build/C/man2/ioctl_list.2:265
14409 #, no-wrap
14410 msgid "0x00435904\tCYGETDEFTHRESH\tint *\n"
14411 msgstr "0x00435904\tCYGETDEFTHRESH\tint *\n"
14412
14413 #. type: tbl table
14414 #: build/C/man2/ioctl_list.2:266
14415 #, no-wrap
14416 msgid "0x00435905\tCYSETDEFTHRESH\tint\n"
14417 msgstr "0x00435905\tCYSETDEFTHRESH\tint\n"
14418
14419 #. type: tbl table
14420 #: build/C/man2/ioctl_list.2:267
14421 #, no-wrap
14422 msgid "0x00435906\tCYGETTIMEOUT\tint *\n"
14423 msgstr "0x00435906\tCYGETTIMEOUT\tint *\n"
14424
14425 #. type: tbl table
14426 #: build/C/man2/ioctl_list.2:268
14427 #, no-wrap
14428 msgid "0x00435907\tCYSETTIMEOUT\tint\n"
14429 msgstr "0x00435907\tCYSETTIMEOUT\tint\n"
14430
14431 #. type: tbl table
14432 #: build/C/man2/ioctl_list.2:269
14433 #, no-wrap
14434 msgid "0x00435908\tCYGETDEFTIMEOUT\tint *\n"
14435 msgstr "0x00435908\tCYGETDEFTIMEOUT\tint *\n"
14436
14437 #. type: tbl table
14438 #: build/C/man2/ioctl_list.2:270
14439 #, no-wrap
14440 msgid "0x00435909\tCYSETDEFTIMEOUT\tint\n"
14441 msgstr "0x00435909\tCYSETDEFTIMEOUT\tint\n"
14442
14443 #. type: Plain text
14444 #: build/C/man2/ioctl_list.2:274
14445 msgid "// E<lt>include/linux/ext2_fs.hE<gt>"
14446 msgstr "// E<lt>include/linux/ext2_fs.hE<gt>"
14447
14448 #. type: tbl table
14449 #: build/C/man2/ioctl_list.2:276
14450 #, no-wrap
14451 msgid "0x80046601\tEXT2_IOC_GETFLAGS\tint *\n"
14452 msgstr "0x80046601\tEXT2_IOC_GETFLAGS\tint *\n"
14453
14454 #. type: tbl table
14455 #: build/C/man2/ioctl_list.2:277
14456 #, no-wrap
14457 msgid "0x40046602\tEXT2_IOC_SETFLAGS\tconst int *\n"
14458 msgstr "0x40046602\tEXT2_IOC_SETFLAGS\tconst int *\n"
14459
14460 #. type: tbl table
14461 #: build/C/man2/ioctl_list.2:278
14462 #, no-wrap
14463 msgid "0x80047601\tEXT2_IOC_GETVERSION\tint *\n"
14464 msgstr "0x80047601\tEXT2_IOC_GETVERSION\tint *\n"
14465
14466 #. type: tbl table
14467 #: build/C/man2/ioctl_list.2:279
14468 #, no-wrap
14469 msgid "0x40047602\tEXT2_IOC_SETVERSION\tconst int *\n"
14470 msgstr "0x40047602\tEXT2_IOC_SETVERSION\tconst int *\n"
14471
14472 #. type: Plain text
14473 #: build/C/man2/ioctl_list.2:283
14474 msgid "// E<lt>include/linux/fd.hE<gt>"
14475 msgstr "// E<lt>include/linux/fd.hE<gt>"
14476
14477 #. type: tbl table
14478 #: build/C/man2/ioctl_list.2:285
14479 #, no-wrap
14480 msgid "0x00000000\tFDCLRPRM\tvoid\n"
14481 msgstr "0x00000000\tFDCLRPRM\tvoid\n"
14482
14483 #. type: tbl table
14484 #: build/C/man2/ioctl_list.2:286
14485 #, no-wrap
14486 msgid "0x00000001\tFDSETPRM\tconst struct floppy_struct *\n"
14487 msgstr "0x00000001\tFDSETPRM\tconst struct floppy_struct *\n"
14488
14489 #. type: tbl table
14490 #: build/C/man2/ioctl_list.2:287
14491 #, no-wrap
14492 msgid "0x00000002\tFDDEFPRM\tconst struct floppy_struct *\n"
14493 msgstr "0x00000002\tFDDEFPRM\tconst struct floppy_struct *\n"
14494
14495 #. type: tbl table
14496 #: build/C/man2/ioctl_list.2:288
14497 #, no-wrap
14498 msgid "0x00000003\tFDGETPRM\tstruct floppy_struct *\n"
14499 msgstr "0x00000003\tFDGETPRM\tstruct floppy_struct *\n"
14500
14501 #. type: tbl table
14502 #: build/C/man2/ioctl_list.2:289
14503 #, no-wrap
14504 msgid "0x00000004\tFDMSGON\tvoid\n"
14505 msgstr "0x00000004\tFDMSGON\tvoid\n"
14506
14507 #. type: tbl table
14508 #: build/C/man2/ioctl_list.2:290
14509 #, no-wrap
14510 msgid "0x00000005\tFDMSGOFF\tvoid\n"
14511 msgstr "0x00000005\tFDMSGOFF\tvoid\n"
14512
14513 #. type: tbl table
14514 #: build/C/man2/ioctl_list.2:291
14515 #, no-wrap
14516 msgid "0x00000006\tFDFMTBEG\tvoid\n"
14517 msgstr "0x00000006\tFDFMTBEG\tvoid\n"
14518
14519 #. type: tbl table
14520 #: build/C/man2/ioctl_list.2:292
14521 #, no-wrap
14522 msgid "0x00000007\tFDFMTTRK\tconst struct format_descr *\n"
14523 msgstr "0x00000007\tFDFMTTRK\tconst struct format_descr *\n"
14524
14525 #. type: tbl table
14526 #: build/C/man2/ioctl_list.2:293
14527 #, no-wrap
14528 msgid "0x00000008\tFDFMTEND\tvoid\n"
14529 msgstr "0x00000008\tFDFMTEND\tvoid\n"
14530
14531 #. type: tbl table
14532 #: build/C/man2/ioctl_list.2:294
14533 #, no-wrap
14534 msgid "0x0000000A\tFDSETEMSGTRESH\tint\n"
14535 msgstr "0x0000000A\tFDSETEMSGTRESH\tint\n"
14536
14537 #. type: tbl table
14538 #: build/C/man2/ioctl_list.2:295
14539 #, no-wrap
14540 msgid "0x0000000B\tFDFLUSH\tvoid\n"
14541 msgstr "0x0000000B\tFDFLUSH\tvoid\n"
14542
14543 #. type: tbl table
14544 #: build/C/man2/ioctl_list.2:296
14545 #, no-wrap
14546 msgid "0x0000000C\tFDSETMAXERRS\tconst struct floppy_max_errors *\n"
14547 msgstr "0x0000000C\tFDSETMAXERRS\tconst struct floppy_max_errors *\n"
14548
14549 #. type: tbl table
14550 #: build/C/man2/ioctl_list.2:297
14551 #, no-wrap
14552 msgid "0x0000000E\tFDGETMAXERRS\tstruct floppy_max_errors *\n"
14553 msgstr "0x0000000E\tFDGETMAXERRS\tstruct floppy_max_errors *\n"
14554
14555 #. type: tbl table
14556 #: build/C/man2/ioctl_list.2:298
14557 #, no-wrap
14558 msgid "0x00000010\tFDGETDRVTYP\tstruct { char [16]; } *\n"
14559 msgstr "0x00000010\tFDGETDRVTYP\tstruct { char [16]; } *\n"
14560
14561 #. type: tbl table
14562 #: build/C/man2/ioctl_list.2:299
14563 #, no-wrap
14564 msgid "0x00000014\tFDSETDRVPRM\tconst struct floppy_drive_params *\n"
14565 msgstr "0x00000014\tFDSETDRVPRM\tconst struct floppy_drive_params *\n"
14566
14567 #. type: tbl table
14568 #: build/C/man2/ioctl_list.2:300
14569 #, no-wrap
14570 msgid "0x00000015\tFDGETDRVPRM\tstruct floppy_drive_params *\n"
14571 msgstr "0x00000015\tFDGETDRVPRM\tstruct floppy_drive_params *\n"
14572
14573 #. type: tbl table
14574 #: build/C/man2/ioctl_list.2:301
14575 #, no-wrap
14576 msgid "0x00000016\tFDGETDRVSTAT\tstruct floppy_drive_struct *\n"
14577 msgstr "0x00000016\tFDGETDRVSTAT\tstruct floppy_drive_struct *\n"
14578
14579 #. type: tbl table
14580 #: build/C/man2/ioctl_list.2:302
14581 #, no-wrap
14582 msgid "0x00000017\tFDPOLLDRVSTAT\tstruct floppy_drive_struct *\n"
14583 msgstr "0x00000017\tFDPOLLDRVSTAT\tstruct floppy_drive_struct *\n"
14584
14585 #. type: tbl table
14586 #: build/C/man2/ioctl_list.2:303
14587 #, no-wrap
14588 msgid "0x00000018\tFDRESET\tint\n"
14589 msgstr "0x00000018\tFDRESET\tint\n"
14590
14591 #. type: tbl table
14592 #: build/C/man2/ioctl_list.2:304
14593 #, no-wrap
14594 msgid "0x00000019\tFDGETFDCSTAT\tstruct floppy_fdc_state *\n"
14595 msgstr "0x00000019\tFDGETFDCSTAT\tstruct floppy_fdc_state *\n"
14596
14597 #. type: tbl table
14598 #: build/C/man2/ioctl_list.2:305
14599 #, no-wrap
14600 msgid "0x0000001B\tFDWERRORCLR\tvoid\n"
14601 msgstr "0x0000001B\tFDWERRORCLR\tvoid\n"
14602
14603 #. type: tbl table
14604 #: build/C/man2/ioctl_list.2:306
14605 #, no-wrap
14606 msgid "0x0000001C\tFDWERRORGET\tstruct floppy_write_errors *\n"
14607 msgstr "0x0000001C\tFDWERRORGET\tstruct floppy_write_errors *\n"
14608
14609 #. type: tbl table
14610 #: build/C/man2/ioctl_list.2:310
14611 #, no-wrap
14612 msgid "0x0000001E\tFDRAWCMD\tstruct floppy_raw_cmd *\t// MORE // I-O\n"
14613 msgstr "0x0000001E\tFDRAWCMD\tstruct floppy_raw_cmd *\t// MORE // I-O\n"
14614
14615 #. type: tbl table
14616 #: build/C/man2/ioctl_list.2:311
14617 #, no-wrap
14618 msgid "0x00000028\tFDTWADDLE\tvoid\n"
14619 msgstr "0x00000028\tFDTWADDLE\tvoid\n"
14620
14621 #. type: Plain text
14622 #: build/C/man2/ioctl_list.2:315
14623 msgid "// E<lt>include/linux/fs.hE<gt>"
14624 msgstr "// E<lt>include/linux/fs.hE<gt>"
14625
14626 #. type: tbl table
14627 #: build/C/man2/ioctl_list.2:317
14628 #, no-wrap
14629 msgid "0x0000125D\tBLKROSET\tconst int *\n"
14630 msgstr "0x0000125D\tBLKROSET\tconst int *\n"
14631
14632 #. type: tbl table
14633 #: build/C/man2/ioctl_list.2:318
14634 #, no-wrap
14635 msgid "0x0000125E\tBLKROGET\tint *\n"
14636 msgstr "0x0000125E\tBLKROGET\tint *\n"
14637
14638 #. type: tbl table
14639 #: build/C/man2/ioctl_list.2:319
14640 #, no-wrap
14641 msgid "0x0000125F\tBLKRRPART\tvoid\n"
14642 msgstr "0x0000125F\tBLKRRPART\tvoid\n"
14643
14644 #. type: tbl table
14645 #: build/C/man2/ioctl_list.2:320
14646 #, no-wrap
14647 msgid "0x00001260\tBLKGETSIZE\tunsigned long *\n"
14648 msgstr "0x00001260\tBLKGETSIZE\tunsigned long *\n"
14649
14650 #. type: tbl table
14651 #: build/C/man2/ioctl_list.2:321
14652 #, no-wrap
14653 msgid "0x00001261\tBLKFLSBUF\tvoid\n"
14654 msgstr "0x00001261\tBLKFLSBUF\tvoid\n"
14655
14656 #. type: tbl table
14657 #: build/C/man2/ioctl_list.2:322
14658 #, no-wrap
14659 msgid "0x00001262\tBLKRASET\tint\n"
14660 msgstr "0x00001262\tBLKRASET\tint\n"
14661
14662 #. type: tbl table
14663 #: build/C/man2/ioctl_list.2:323
14664 #, no-wrap
14665 msgid "0x00001263\tBLKRAGET\tint *\n"
14666 msgstr "0x00001263\tBLKRAGET\tint *\n"
14667
14668 #. type: tbl table
14669 #: build/C/man2/ioctl_list.2:324
14670 #, no-wrap
14671 msgid "0x00000001\tFIBMAP\tint *\t// I-O\n"
14672 msgstr "0x00000001\tFIBMAP\tint *\t// I-O\n"
14673
14674 #. type: tbl table
14675 #: build/C/man2/ioctl_list.2:325
14676 #, no-wrap
14677 msgid "0x00000002\tFIGETBSZ\tint *\n"
14678 msgstr "0x00000002\tFIGETBSZ\tint *\n"
14679
14680 #. type: Plain text
14681 #: build/C/man2/ioctl_list.2:329
14682 msgid "// E<lt>include/linux/hdreg.hE<gt>"
14683 msgstr "// E<lt>include/linux/hdreg.hE<gt>"
14684
14685 #. type: tbl table
14686 #: build/C/man2/ioctl_list.2:331
14687 #, no-wrap
14688 msgid "0x00000301\tHDIO_GETGEO\tstruct hd_geometry *\n"
14689 msgstr "0x00000301\tHDIO_GETGEO\tstruct hd_geometry *\n"
14690
14691 #. type: tbl table
14692 #: build/C/man2/ioctl_list.2:332
14693 #, no-wrap
14694 msgid "0x00000302\tHDIO_GET_UNMASKINTR\tint *\n"
14695 msgstr "0x00000302\tHDIO_GET_UNMASKINTR\tint *\n"
14696
14697 #. type: tbl table
14698 #: build/C/man2/ioctl_list.2:333
14699 #, no-wrap
14700 msgid "0x00000304\tHDIO_GET_MULTCOUNT\tint *\n"
14701 msgstr "0x00000304\tHDIO_GET_MULTCOUNT\tint *\n"
14702
14703 #. type: tbl table
14704 #: build/C/man2/ioctl_list.2:334
14705 #, no-wrap
14706 msgid "0x00000307\tHDIO_GET_IDENTITY\tstruct hd_driveid *\n"
14707 msgstr "0x00000307\tHDIO_GET_IDENTITY\tstruct hd_driveid *\n"
14708
14709 #. type: tbl table
14710 #: build/C/man2/ioctl_list.2:335
14711 #, no-wrap
14712 msgid "0x00000308\tHDIO_GET_KEEPSETTINGS\tint *\n"
14713 msgstr "0x00000308\tHDIO_GET_KEEPSETTINGS\tint *\n"
14714
14715 #. type: tbl table
14716 #: build/C/man2/ioctl_list.2:336
14717 #, no-wrap
14718 msgid "0x00000309\tHDIO_GET_CHIPSET\tint *\n"
14719 msgstr "0x00000309\tHDIO_GET_CHIPSET\tint *\n"
14720
14721 #. type: tbl table
14722 #: build/C/man2/ioctl_list.2:337
14723 #, no-wrap
14724 msgid "0x0000030A\tHDIO_GET_NOWERR\tint *\n"
14725 msgstr "0x0000030A\tHDIO_GET_NOWERR\tint *\n"
14726
14727 #. type: tbl table
14728 #: build/C/man2/ioctl_list.2:338
14729 #, no-wrap
14730 msgid "0x0000030B\tHDIO_GET_DMA\tint *\n"
14731 msgstr "0x0000030B\tHDIO_GET_DMA\tint *\n"
14732
14733 #. type: tbl table
14734 #: build/C/man2/ioctl_list.2:339
14735 #, no-wrap
14736 msgid "0x0000031F\tHDIO_DRIVE_CMD\tint *\t// I-O\n"
14737 msgstr "0x0000031F\tHDIO_DRIVE_CMD\tint *\t// I-O\n"
14738
14739 #. type: tbl table
14740 #: build/C/man2/ioctl_list.2:340
14741 #, no-wrap
14742 msgid "0x00000321\tHDIO_SET_MULTCOUNT\tint\n"
14743 msgstr "0x00000321\tHDIO_SET_MULTCOUNT\tint\n"
14744
14745 #. type: tbl table
14746 #: build/C/man2/ioctl_list.2:341
14747 #, no-wrap
14748 msgid "0x00000322\tHDIO_SET_UNMASKINTR\tint\n"
14749 msgstr "0x00000322\tHDIO_SET_UNMASKINTR\tint\n"
14750
14751 #. type: tbl table
14752 #: build/C/man2/ioctl_list.2:342
14753 #, no-wrap
14754 msgid "0x00000323\tHDIO_SET_KEEPSETTINGS\tint\n"
14755 msgstr "0x00000323\tHDIO_SET_KEEPSETTINGS\tint\n"
14756
14757 #. type: tbl table
14758 #: build/C/man2/ioctl_list.2:343
14759 #, no-wrap
14760 msgid "0x00000324\tHDIO_SET_CHIPSET\tint\n"
14761 msgstr "0x00000324\tHDIO_SET_CHIPSET\tint\n"
14762
14763 #. type: tbl table
14764 #: build/C/man2/ioctl_list.2:344
14765 #, no-wrap
14766 msgid "0x00000325\tHDIO_SET_NOWERR\tint\n"
14767 msgstr "0x00000325\tHDIO_SET_NOWERR\tint\n"
14768
14769 #. type: tbl table
14770 #: build/C/man2/ioctl_list.2:345
14771 #, no-wrap
14772 msgid "0x00000326\tHDIO_SET_DMA\tint\n"
14773 msgstr "0x00000326\tHDIO_SET_DMA\tint\n"
14774
14775 #. type: Plain text
14776 #: build/C/man2/ioctl_list.2:349
14777 msgid "// E<lt>include/linux/if_eql.hE<gt>"
14778 msgstr "// E<lt>include/linux/if_eql.hE<gt>"
14779
14780 #. type: tbl table
14781 #: build/C/man2/ioctl_list.2:351
14782 #, no-wrap
14783 msgid "0x000089F0\tEQL_ENSLAVE\tstruct ifreq *\t// MORE // I-O\n"
14784 msgstr "0x000089F0\tEQL_ENSLAVE\tstruct ifreq *\t// MORE // I-O\n"
14785
14786 #. type: tbl table
14787 #: build/C/man2/ioctl_list.2:352
14788 #, no-wrap
14789 msgid "0x000089F1\tEQL_EMANCIPATE\tstruct ifreq *\t// MORE // I-O\n"
14790 msgstr "0x000089F1\tEQL_EMANCIPATE\tstruct ifreq *\t// MORE // I-O\n"
14791
14792 #. type: tbl table
14793 #: build/C/man2/ioctl_list.2:353
14794 #, no-wrap
14795 msgid "0x000089F2\tEQL_GETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14796 msgstr "0x000089F2\tEQL_GETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14797
14798 #. type: tbl table
14799 #: build/C/man2/ioctl_list.2:354
14800 #, no-wrap
14801 msgid "0x000089F3\tEQL_SETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14802 msgstr "0x000089F3\tEQL_SETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
14803
14804 #. type: tbl table
14805 #: build/C/man2/ioctl_list.2:355
14806 #, no-wrap
14807 msgid "0x000089F4\tEQL_GETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14808 msgstr "0x000089F4\tEQL_GETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14809
14810 #. type: tbl table
14811 #: build/C/man2/ioctl_list.2:356
14812 #, no-wrap
14813 msgid "0x000089F5\tEQL_SETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14814 msgstr "0x000089F5\tEQL_SETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
14815
14816 #. type: Plain text
14817 #: build/C/man2/ioctl_list.2:360
14818 msgid "// E<lt>include/linux/if_plip.hE<gt>"
14819 msgstr "// E<lt>include/linux/if_plip.hE<gt>"
14820
14821 #. type: tbl table
14822 #: build/C/man2/ioctl_list.2:362
14823 #, no-wrap
14824 msgid "0x000089F0\tSIOCDEVPLIP\tstruct ifreq *\t// I-O\n"
14825 msgstr "0x000089F0\tSIOCDEVPLIP\tstruct ifreq *\t// I-O\n"
14826
14827 #. type: Plain text
14828 #: build/C/man2/ioctl_list.2:366
14829 msgid "// E<lt>include/linux/if_ppp.hE<gt>"
14830 msgstr "// E<lt>include/linux/if_ppp.hE<gt>"
14831
14832 #. type: tbl table
14833 #: build/C/man2/ioctl_list.2:368
14834 #, no-wrap
14835 msgid "0x00005490\tPPPIOCGFLAGS\tint *\n"
14836 msgstr "0x00005490\tPPPIOCGFLAGS\tint *\n"
14837
14838 #. type: tbl table
14839 #: build/C/man2/ioctl_list.2:369
14840 #, no-wrap
14841 msgid "0x00005491\tPPPIOCSFLAGS\tconst int *\n"
14842 msgstr "0x00005491\tPPPIOCSFLAGS\tconst int *\n"
14843
14844 #. type: tbl table
14845 #: build/C/man2/ioctl_list.2:370
14846 #, no-wrap
14847 msgid "0x00005492\tPPPIOCGASYNCMAP\tint *\n"
14848 msgstr "0x00005492\tPPPIOCGASYNCMAP\tint *\n"
14849
14850 #. type: tbl table
14851 #: build/C/man2/ioctl_list.2:371
14852 #, no-wrap
14853 msgid "0x00005493\tPPPIOCSASYNCMAP\tconst int *\n"
14854 msgstr "0x00005493\tPPPIOCSASYNCMAP\tconst int *\n"
14855
14856 #. type: tbl table
14857 #: build/C/man2/ioctl_list.2:372
14858 #, no-wrap
14859 msgid "0x00005494\tPPPIOCGUNIT\tint *\n"
14860 msgstr "0x00005494\tPPPIOCGUNIT\tint *\n"
14861
14862 #. type: tbl table
14863 #: build/C/man2/ioctl_list.2:373
14864 #, no-wrap
14865 msgid "0x00005495\tPPPIOCSINPSIG\tconst int *\n"
14866 msgstr "0x00005495\tPPPIOCSINPSIG\tconst int *\n"
14867
14868 #. type: tbl table
14869 #: build/C/man2/ioctl_list.2:374
14870 #, no-wrap
14871 msgid "0x00005497\tPPPIOCSDEBUG\tconst int *\n"
14872 msgstr "0x00005497\tPPPIOCSDEBUG\tconst int *\n"
14873
14874 #. type: tbl table
14875 #: build/C/man2/ioctl_list.2:375
14876 #, no-wrap
14877 msgid "0x00005498\tPPPIOCGDEBUG\tint *\n"
14878 msgstr "0x00005498\tPPPIOCGDEBUG\tint *\n"
14879
14880 #. type: tbl table
14881 #: build/C/man2/ioctl_list.2:376
14882 #, no-wrap
14883 msgid "0x00005499\tPPPIOCGSTAT\tstruct ppp_stats *\n"
14884 msgstr "0x00005499\tPPPIOCGSTAT\tstruct ppp_stats *\n"
14885
14886 #. type: tbl table
14887 #: build/C/man2/ioctl_list.2:377
14888 #, no-wrap
14889 msgid "0x0000549A\tPPPIOCGTIME\tstruct ppp_ddinfo *\n"
14890 msgstr "0x0000549A\tPPPIOCGTIME\tstruct ppp_ddinfo *\n"
14891
14892 #. type: tbl table
14893 #: build/C/man2/ioctl_list.2:378
14894 #, no-wrap
14895 msgid "0x0000549B\tPPPIOCGXASYNCMAP\tstruct { int [8]; } *\n"
14896 msgstr "0x0000549B\tPPPIOCGXASYNCMAP\tstruct { int [8]; } *\n"
14897
14898 #. type: tbl table
14899 #: build/C/man2/ioctl_list.2:379
14900 #, no-wrap
14901 msgid "0x0000549C\tPPPIOCSXASYNCMAP\tconst struct { int [8]; } *\n"
14902 msgstr "0x0000549C\tPPPIOCSXASYNCMAP\tconst struct { int [8]; } *\n"
14903
14904 #. type: tbl table
14905 #: build/C/man2/ioctl_list.2:380
14906 #, no-wrap
14907 msgid "0x0000549D\tPPPIOCSMRU\tconst int *\n"
14908 msgstr "0x0000549D\tPPPIOCSMRU\tconst int *\n"
14909
14910 #. type: tbl table
14911 #: build/C/man2/ioctl_list.2:381
14912 #, no-wrap
14913 msgid "0x0000549E\tPPPIOCRASYNCMAP\tconst int *\n"
14914 msgstr "0x0000549E\tPPPIOCRASYNCMAP\tconst int *\n"
14915
14916 #. type: tbl table
14917 #: build/C/man2/ioctl_list.2:382
14918 #, no-wrap
14919 msgid "0x0000549F\tPPPIOCSMAXCID\tconst int *\n"
14920 msgstr "0x0000549F\tPPPIOCSMAXCID\tconst int *\n"
14921
14922 #. type: Plain text
14923 #: build/C/man2/ioctl_list.2:386
14924 msgid "// E<lt>include/linux/ipx.hE<gt>"
14925 msgstr "// E<lt>include/linux/ipx.hE<gt>"
14926
14927 #. type: tbl table
14928 #: build/C/man2/ioctl_list.2:388
14929 #, no-wrap
14930 msgid "0x000089E0\tSIOCAIPXITFCRT\tconst char *\n"
14931 msgstr "0x000089E0\tSIOCAIPXITFCRT\tconst char *\n"
14932
14933 #. type: tbl table
14934 #: build/C/man2/ioctl_list.2:389
14935 #, no-wrap
14936 msgid "0x000089E1\tSIOCAIPXPRISLT\tconst char *\n"
14937 msgstr "0x000089E1\tSIOCAIPXPRISLT\tconst char *\n"
14938
14939 #. type: tbl table
14940 #: build/C/man2/ioctl_list.2:390
14941 #, no-wrap
14942 msgid "0x000089E2\tSIOCIPXCFGDATA\tstruct ipx_config_data *\n"
14943 msgstr "0x000089E2\tSIOCIPXCFGDATA\tstruct ipx_config_data *\n"
14944
14945 #. type: Plain text
14946 #: build/C/man2/ioctl_list.2:394
14947 msgid "// E<lt>include/linux/kd.hE<gt>"
14948 msgstr "// E<lt>include/linux/kd.hE<gt>"
14949
14950 #. type: tbl table
14951 #: build/C/man2/ioctl_list.2:396
14952 #, no-wrap
14953 msgid "0x00004B60\tGIO_FONT\tstruct { char [8192]; } *\n"
14954 msgstr "0x00004B60\tGIO_FONT\tstruct { char [8192]; } *\n"
14955
14956 #. type: tbl table
14957 #: build/C/man2/ioctl_list.2:397
14958 #, no-wrap
14959 msgid "0x00004B61\tPIO_FONT\tconst struct { char [8192]; } *\n"
14960 msgstr "0x00004B61\tPIO_FONT\tconst struct { char [8192]; } *\n"
14961
14962 #. type: tbl table
14963 #: build/C/man2/ioctl_list.2:401
14964 #, no-wrap
14965 msgid "0x00004B6B\tGIO_FONTX\tstruct console_font_desc *\t// MORE // I-O\n"
14966 msgstr "0x00004B6B\tGIO_FONTX\tstruct console_font_desc *\t// MORE // I-O\n"
14967
14968 #. type: tbl table
14969 #: build/C/man2/ioctl_list.2:402
14970 #, no-wrap
14971 msgid "0x00004B6C\tPIO_FONTX\tconst struct console_font_desc *\t//MORE\n"
14972 msgstr "0x00004B6C\tPIO_FONTX\tconst struct console_font_desc *\t//MORE\n"
14973
14974 #. type: tbl table
14975 #: build/C/man2/ioctl_list.2:406
14976 #, no-wrap
14977 msgid "0x00004B70\tGIO_CMAP\tstruct { char [48]; } *\n"
14978 msgstr "0x00004B70\tGIO_CMAP\tstruct { char [48]; } *\n"
14979
14980 #. type: tbl table
14981 #: build/C/man2/ioctl_list.2:407
14982 #, no-wrap
14983 msgid "0x00004B71\tPIO_CMAP\tconst struct { char [48]; }\n"
14984 msgstr "0x00004B71\tPIO_CMAP\tconst struct { char [48]; }\n"
14985
14986 #. type: tbl table
14987 #: build/C/man2/ioctl_list.2:411
14988 #, no-wrap
14989 msgid "0x00004B2F\tKIOCSOUND\tint\n"
14990 msgstr "0x00004B2F\tKIOCSOUND\tint\n"
14991
14992 #. type: tbl table
14993 #: build/C/man2/ioctl_list.2:412
14994 #, no-wrap
14995 msgid "0x00004B30\tKDMKTONE\tint\n"
14996 msgstr "0x00004B30\tKDMKTONE\tint\n"
14997
14998 #. type: tbl table
14999 #: build/C/man2/ioctl_list.2:413
15000 #, no-wrap
15001 msgid "0x00004B31\tKDGETLED\tchar *\n"
15002 msgstr "0x00004B31\tKDGETLED\tchar *\n"
15003
15004 #. type: tbl table
15005 #: build/C/man2/ioctl_list.2:414
15006 #, no-wrap
15007 msgid "0x00004B32\tKDSETLED\tint\n"
15008 msgstr "0x00004B32\tKDSETLED\tint\n"
15009
15010 #. type: tbl table
15011 #: build/C/man2/ioctl_list.2:415
15012 #, no-wrap
15013 msgid "0x00004B33\tKDGKBTYPE\tchar *\n"
15014 msgstr "0x00004B33\tKDGKBTYPE\tchar *\n"
15015
15016 #. type: tbl table
15017 #: build/C/man2/ioctl_list.2:416
15018 #, no-wrap
15019 msgid "0x00004B34\tKDADDIO\tint\t// MORE\n"
15020 msgstr "0x00004B34\tKDADDIO\tint\t// MORE\n"
15021
15022 #. type: tbl table
15023 #: build/C/man2/ioctl_list.2:417
15024 #, no-wrap
15025 msgid "0x00004B35\tKDDELIO\tint\t// MORE\n"
15026 msgstr "0x00004B35\tKDDELIO\tint\t// MORE\n"
15027
15028 #. type: tbl table
15029 #: build/C/man2/ioctl_list.2:418
15030 #, no-wrap
15031 msgid "0x00004B36\tKDENABIO\tvoid\t// MORE\n"
15032 msgstr "0x00004B36\tKDENABIO\tvoid\t// MORE\n"
15033
15034 #. type: tbl table
15035 #: build/C/man2/ioctl_list.2:419
15036 #, no-wrap
15037 msgid "0x00004B37\tKDDISABIO\tvoid\t// MORE\n"
15038 msgstr "0x00004B37\tKDDISABIO\tvoid\t// MORE\n"
15039
15040 #. type: tbl table
15041 #: build/C/man2/ioctl_list.2:420
15042 #, no-wrap
15043 msgid "0x00004B3A\tKDSETMODE\tint\n"
15044 msgstr "0x00004B3A\tKDSETMODE\tint\n"
15045
15046 #. type: tbl table
15047 #: build/C/man2/ioctl_list.2:421
15048 #, no-wrap
15049 msgid "0x00004B3B\tKDGETMODE\tint *\n"
15050 msgstr "0x00004B3B\tKDGETMODE\tint *\n"
15051
15052 #. type: tbl table
15053 #: build/C/man2/ioctl_list.2:422
15054 #, no-wrap
15055 msgid "0x00004B3C\tKDMAPDISP\tvoid\t// MORE\n"
15056 msgstr "0x00004B3C\tKDMAPDISP\tvoid\t// MORE\n"
15057
15058 #. type: tbl table
15059 #: build/C/man2/ioctl_list.2:423
15060 #, no-wrap
15061 msgid "0x00004B3D\tKDUNMAPDISP\tvoid\t// MORE\n"
15062 msgstr "0x00004B3D\tKDUNMAPDISP\tvoid\t// MORE\n"
15063
15064 #. type: tbl table
15065 #: build/C/man2/ioctl_list.2:424
15066 #, no-wrap
15067 msgid "0x00004B40\tGIO_SCRNMAP\tstruct { char [E_TABSZ]; } *\n"
15068 msgstr "0x00004B40\tGIO_SCRNMAP\tstruct { char [E_TABSZ]; } *\n"
15069
15070 #. type: tbl table
15071 #: build/C/man2/ioctl_list.2:428
15072 #, no-wrap
15073 msgid "0x00004B41\tPIO_SCRNMAP\tconst struct { char [E_TABSZ]; } *\n"
15074 msgstr "0x00004B41\tPIO_SCRNMAP\tconst struct { char [E_TABSZ]; } *\n"
15075
15076 #. type: tbl table
15077 #: build/C/man2/ioctl_list.2:429
15078 #, no-wrap
15079 msgid "0x00004B69\tGIO_UNISCRNMAP\tstruct { short [E_TABSZ]; } *\n"
15080 msgstr "0x00004B69\tGIO_UNISCRNMAP\tstruct { short [E_TABSZ]; } *\n"
15081
15082 #. type: tbl table
15083 #: build/C/man2/ioctl_list.2:430
15084 #, no-wrap
15085 msgid "0x00004B6A\tPIO_UNISCRNMAP\tconst struct { short [E_TABSZ]; } *\n"
15086 msgstr "0x00004B6A\tPIO_UNISCRNMAP\tconst struct { short [E_TABSZ]; } *\n"
15087
15088 #. type: tbl table
15089 #: build/C/man2/ioctl_list.2:434
15090 #, no-wrap
15091 msgid "0x00004B66\tGIO_UNIMAP\tstruct unimapdesc *\t// MORE // I-O\n"
15092 msgstr "0x00004B66\tGIO_UNIMAP\tstruct unimapdesc *\t// MORE // I-O\n"
15093
15094 #. type: tbl table
15095 #: build/C/man2/ioctl_list.2:435
15096 #, no-wrap
15097 msgid "0x00004B67\tPIO_UNIMAP\tconst struct unimapdesc *\t// MORE\n"
15098 msgstr "0x00004B67\tPIO_UNIMAP\tconst struct unimapdesc *\t// MORE\n"
15099
15100 #. type: tbl table
15101 #: build/C/man2/ioctl_list.2:436
15102 #, no-wrap
15103 msgid "0x00004B68\tPIO_UNIMAPCLR\tconst struct unimapinit *\n"
15104 msgstr "0x00004B68\tPIO_UNIMAPCLR\tconst struct unimapinit *\n"
15105
15106 #. type: tbl table
15107 #: build/C/man2/ioctl_list.2:437
15108 #, no-wrap
15109 msgid "0x00004B44\tKDGKBMODE\tint *\n"
15110 msgstr "0x00004B44\tKDGKBMODE\tint *\n"
15111
15112 #. type: tbl table
15113 #: build/C/man2/ioctl_list.2:438
15114 #, no-wrap
15115 msgid "0x00004B45\tKDSKBMODE\tint\n"
15116 msgstr "0x00004B45\tKDSKBMODE\tint\n"
15117
15118 #. type: tbl table
15119 #: build/C/man2/ioctl_list.2:439
15120 #, no-wrap
15121 msgid "0x00004B62\tKDGKBMETA\tint *\n"
15122 msgstr "0x00004B62\tKDGKBMETA\tint *\n"
15123
15124 #. type: tbl table
15125 #: build/C/man2/ioctl_list.2:440
15126 #, no-wrap
15127 msgid "0x00004B63\tKDSKBMETA\tint\n"
15128 msgstr "0x00004B63\tKDSKBMETA\tint\n"
15129
15130 #. type: tbl table
15131 #: build/C/man2/ioctl_list.2:441
15132 #, no-wrap
15133 msgid "0x00004B64\tKDGKBLED\tint *\n"
15134 msgstr "0x00004B64\tKDGKBLED\tint *\n"
15135
15136 #. type: tbl table
15137 #: build/C/man2/ioctl_list.2:442
15138 #, no-wrap
15139 msgid "0x00004B65\tKDSKBLED\tint\n"
15140 msgstr "0x00004B65\tKDSKBLED\tint\n"
15141
15142 #. type: tbl table
15143 #: build/C/man2/ioctl_list.2:443
15144 #, no-wrap
15145 msgid "0x00004B46\tKDGKBENT\tstruct kbentry *\t// I-O\n"
15146 msgstr "0x00004B46\tKDGKBENT\tstruct kbentry *\t// I-O\n"
15147
15148 #. type: tbl table
15149 #: build/C/man2/ioctl_list.2:444
15150 #, no-wrap
15151 msgid "0x00004B47\tKDSKBENT\tconst struct kbentry *\n"
15152 msgstr "0x00004B47\tKDSKBENT\tconst struct kbentry *\n"
15153
15154 #. type: tbl table
15155 #: build/C/man2/ioctl_list.2:445
15156 #, no-wrap
15157 msgid "0x00004B48\tKDGKBSENT\tstruct kbsentry *\t// I-O\n"
15158 msgstr "0x00004B48\tKDGKBSENT\tstruct kbsentry *\t// I-O\n"
15159
15160 #. type: tbl table
15161 #: build/C/man2/ioctl_list.2:446
15162 #, no-wrap
15163 msgid "0x00004B49\tKDSKBSENT\tconst struct kbsentry *\n"
15164 msgstr "0x00004B49\tKDSKBSENT\tconst struct kbsentry *\n"
15165
15166 #. type: tbl table
15167 #: build/C/man2/ioctl_list.2:447
15168 #, no-wrap
15169 msgid "0x00004B4A\tKDGKBDIACR\tstruct kbdiacrs *\n"
15170 msgstr "0x00004B4A\tKDGKBDIACR\tstruct kbdiacrs *\n"
15171
15172 #. type: tbl table
15173 #: build/C/man2/ioctl_list.2:448
15174 #, no-wrap
15175 msgid "0x00004B4B\tKDSKBDIACR\tconst struct kbdiacrs *\n"
15176 msgstr "0x00004B4B\tKDSKBDIACR\tconst struct kbdiacrs *\n"
15177
15178 #. type: tbl table
15179 #: build/C/man2/ioctl_list.2:449
15180 #, no-wrap
15181 msgid "0x00004B4C\tKDGETKEYCODE\tstruct kbkeycode *\t// I-O\n"
15182 msgstr "0x00004B4C\tKDGETKEYCODE\tstruct kbkeycode *\t// I-O\n"
15183
15184 #. type: tbl table
15185 #: build/C/man2/ioctl_list.2:450
15186 #, no-wrap
15187 msgid "0x00004B4D\tKDSETKEYCODE\tconst struct kbkeycode *\n"
15188 msgstr "0x00004B4D\tKDSETKEYCODE\tconst struct kbkeycode *\n"
15189
15190 #. type: tbl table
15191 #: build/C/man2/ioctl_list.2:451
15192 #, no-wrap
15193 msgid "0x00004B4E\tKDSIGACCEPT\tint\n"
15194 msgstr "0x00004B4E\tKDSIGACCEPT\tint\n"
15195
15196 #. type: Plain text
15197 #: build/C/man2/ioctl_list.2:455
15198 msgid "// E<lt>include/linux/lp.hE<gt>"
15199 msgstr "// E<lt>include/linux/lp.hE<gt>"
15200
15201 #. type: tbl table
15202 #: build/C/man2/ioctl_list.2:457
15203 #, no-wrap
15204 msgid "0x00000601\tLPCHAR\tint\n"
15205 msgstr "0x00000601\tLPCHAR\tint\n"
15206
15207 #. type: tbl table
15208 #: build/C/man2/ioctl_list.2:458
15209 #, no-wrap
15210 msgid "0x00000602\tLPTIME\tint\n"
15211 msgstr "0x00000602\tLPTIME\tint\n"
15212
15213 #. type: tbl table
15214 #: build/C/man2/ioctl_list.2:459
15215 #, no-wrap
15216 msgid "0x00000604\tLPABORT\tint\n"
15217 msgstr "0x00000604\tLPABORT\tint\n"
15218
15219 #. type: tbl table
15220 #: build/C/man2/ioctl_list.2:460
15221 #, no-wrap
15222 msgid "0x00000605\tLPSETIRQ\tint\n"
15223 msgstr "0x00000605\tLPSETIRQ\tint\n"
15224
15225 #. type: tbl table
15226 #: build/C/man2/ioctl_list.2:461
15227 #, no-wrap
15228 msgid "0x00000606\tLPGETIRQ\tint *\n"
15229 msgstr "0x00000606\tLPGETIRQ\tint *\n"
15230
15231 #. type: tbl table
15232 #: build/C/man2/ioctl_list.2:462
15233 #, no-wrap
15234 msgid "0x00000608\tLPWAIT\tint\n"
15235 msgstr "0x00000608\tLPWAIT\tint\n"
15236
15237 #. type: tbl table
15238 #: build/C/man2/ioctl_list.2:463
15239 #, no-wrap
15240 msgid "0x00000609\tLPCAREFUL\tint\n"
15241 msgstr "0x00000609\tLPCAREFUL\tint\n"
15242
15243 #. type: tbl table
15244 #: build/C/man2/ioctl_list.2:464
15245 #, no-wrap
15246 msgid "0x0000060A\tLPABORTOPEN\tint\n"
15247 msgstr "0x0000060A\tLPABORTOPEN\tint\n"
15248
15249 #. type: tbl table
15250 #: build/C/man2/ioctl_list.2:465
15251 #, no-wrap
15252 msgid "0x0000060B\tLPGETSTATUS\tint *\n"
15253 msgstr "0x0000060B\tLPGETSTATUS\tint *\n"
15254
15255 #. type: tbl table
15256 #: build/C/man2/ioctl_list.2:466
15257 #, no-wrap
15258 msgid "0x0000060C\tLPRESET\tvoid\n"
15259 msgstr "0x0000060C\tLPRESET\tvoid\n"
15260
15261 #. type: tbl table
15262 #: build/C/man2/ioctl_list.2:467
15263 #, no-wrap
15264 msgid "0x0000060D\tLPGETSTATS\tstruct lp_stats *\n"
15265 msgstr "0x0000060D\tLPGETSTATS\tstruct lp_stats *\n"
15266
15267 #. type: Plain text
15268 #: build/C/man2/ioctl_list.2:471
15269 msgid "// E<lt>include/linux/mroute.hE<gt>"
15270 msgstr "// E<lt>include/linux/mroute.hE<gt>"
15271
15272 #. type: tbl table
15273 #: build/C/man2/ioctl_list.2:473
15274 #, no-wrap
15275 msgid "0x000089E0\tSIOCGETVIFCNT\tstruct sioc_vif_req *\t// I-O\n"
15276 msgstr "0x000089E0\tSIOCGETVIFCNT\tstruct sioc_vif_req *\t// I-O\n"
15277
15278 #. type: tbl table
15279 #: build/C/man2/ioctl_list.2:474
15280 #, no-wrap
15281 msgid "0x000089E1\tSIOCGETSGCNT\tstruct sioc_sg_req *\t// I-O\n"
15282 msgstr "0x000089E1\tSIOCGETSGCNT\tstruct sioc_sg_req *\t// I-O\n"
15283
15284 #. type: Plain text
15285 #: build/C/man2/ioctl_list.2:478
15286 msgid "// E<lt>include/linux/msdos_fs.hE<gt>"
15287 msgstr "// E<lt>include/linux/msdos_fs.hE<gt>"
15288
15289 #. type: tbl table
15290 #: build/C/man2/ioctl_list.2:480
15291 #, no-wrap
15292 msgid "0x82307201\tVFAT_IOCTL_READDIR_BOTH\tstruct dirent [2]\n"
15293 msgstr "0x82307201\tVFAT_IOCTL_READDIR_BOTH\tstruct dirent [2]\n"
15294
15295 #. type: tbl table
15296 #: build/C/man2/ioctl_list.2:481
15297 #, no-wrap
15298 msgid "0x82307202\tVFAT_IOCTL_READDIR_SHORT\tstruct dirent [2]\n"
15299 msgstr "0x82307202\tVFAT_IOCTL_READDIR_SHORT\tstruct dirent [2]\n"
15300
15301 #. type: tbl table
15302 #: build/C/man2/ioctl_list.2:482
15303 #, no-wrap
15304 msgid "0x80047210\tFAT_IOCTL_GET_ATTRIBUTES\t__u32 *\n"
15305 msgstr "0x80047210\tFAT_IOCTL_GET_ATTRIBUTES\t__u32 *\n"
15306
15307 #. type: tbl table
15308 #: build/C/man2/ioctl_list.2:483
15309 #, no-wrap
15310 msgid "0x40047211\tFAT_IOCTL_SET_ATTRIBUTES\tconst __u32 *\n"
15311 msgstr "0x40047211\tFAT_IOCTL_SET_ATTRIBUTES\tconst __u32 *\n"
15312
15313 #. type: Plain text
15314 #: build/C/man2/ioctl_list.2:487
15315 msgid "// E<lt>include/linux/mtio.hE<gt>"
15316 msgstr "// E<lt>include/linux/mtio.hE<gt>"
15317
15318 #. type: tbl table
15319 #: build/C/man2/ioctl_list.2:489
15320 #, no-wrap
15321 msgid "0x40086D01\tMTIOCTOP\tconst struct mtop *\n"
15322 msgstr "0x40086D01\tMTIOCTOP\tconst struct mtop *\n"
15323
15324 #. type: tbl table
15325 #: build/C/man2/ioctl_list.2:490
15326 #, no-wrap
15327 msgid "0x801C6D02\tMTIOCGET\tstruct mtget *\n"
15328 msgstr "0x801C6D02\tMTIOCGET\tstruct mtget *\n"
15329
15330 #. type: tbl table
15331 #: build/C/man2/ioctl_list.2:491
15332 #, no-wrap
15333 msgid "0x80046D03\tMTIOCPOS\tstruct mtpos *\n"
15334 msgstr "0x80046D03\tMTIOCPOS\tstruct mtpos *\n"
15335
15336 #. type: tbl table
15337 #: build/C/man2/ioctl_list.2:492
15338 #, no-wrap
15339 msgid "0x80206D04\tMTIOCGETCONFIG\tstruct mtconfiginfo *\n"
15340 msgstr "0x80206D04\tMTIOCGETCONFIG\tstruct mtconfiginfo *\n"
15341
15342 #. type: tbl table
15343 #: build/C/man2/ioctl_list.2:493
15344 #, no-wrap
15345 msgid "0x40206D05\tMTIOCSETCONFIG\tconst struct mtconfiginfo *\n"
15346 msgstr "0x40206D05\tMTIOCSETCONFIG\tconst struct mtconfiginfo *\n"
15347
15348 #. type: Plain text
15349 #: build/C/man2/ioctl_list.2:497
15350 msgid "// E<lt>include/linux/netrom.hE<gt>"
15351 msgstr "// E<lt>include/linux/netrom.hE<gt>"
15352
15353 #. type: tbl table
15354 #: build/C/man2/ioctl_list.2:499
15355 #, no-wrap
15356 msgid "0x000089E0\tSIOCNRGETPARMS\tstruct nr_parms_struct *\t// I-O\n"
15357 msgstr "0x000089E0\tSIOCNRGETPARMS\tstruct nr_parms_struct *\t// I-O\n"
15358
15359 #. type: tbl table
15360 #: build/C/man2/ioctl_list.2:500
15361 #, no-wrap
15362 msgid "0x000089E1\tSIOCNRSETPARMS\tconst struct nr_parms_struct *\n"
15363 msgstr "0x000089E1\tSIOCNRSETPARMS\tconst struct nr_parms_struct *\n"
15364
15365 #. type: tbl table
15366 #: build/C/man2/ioctl_list.2:501
15367 #, no-wrap
15368 msgid "0x000089E2\tSIOCNRDECOBS\tvoid\n"
15369 msgstr "0x000089E2\tSIOCNRDECOBS\tvoid\n"
15370
15371 #. type: tbl table
15372 #: build/C/man2/ioctl_list.2:502
15373 #, no-wrap
15374 msgid "0x000089E3\tSIOCNRRTCTL\tconst int *\n"
15375 msgstr "0x000089E3\tSIOCNRRTCTL\tconst int *\n"
15376
15377 #. type: Plain text
15378 #: build/C/man2/ioctl_list.2:506
15379 msgid "// E<lt>include/linux/sbpcd.hE<gt>"
15380 msgstr "// E<lt>include/linux/sbpcd.hE<gt>"
15381
15382 #. type: tbl table
15383 #: build/C/man2/ioctl_list.2:508
15384 #, no-wrap
15385 msgid "0x00009000\tDDIOCSDBG\tconst int *\n"
15386 msgstr "0x00009000\tDDIOCSDBG\tconst int *\n"
15387
15388 #. type: tbl table
15389 #: build/C/man2/ioctl_list.2:509
15390 #, no-wrap
15391 msgid "0x00005382\tCDROMAUDIOBUFSIZ\tint\n"
15392 msgstr "0x00005382\tCDROMAUDIOBUFSIZ\tint\n"
15393
15394 #. type: Plain text
15395 #: build/C/man2/ioctl_list.2:513
15396 msgid "// E<lt>include/linux/scc.hE<gt>"
15397 msgstr "// E<lt>include/linux/scc.hE<gt>"
15398
15399 #. type: tbl table
15400 #: build/C/man2/ioctl_list.2:515
15401 #, no-wrap
15402 msgid "0x00005470\tTIOCSCCINI\tvoid\n"
15403 msgstr "0x00005470\tTIOCSCCINI\tvoid\n"
15404
15405 #. type: tbl table
15406 #: build/C/man2/ioctl_list.2:516
15407 #, no-wrap
15408 msgid "0x00005471\tTIOCCHANINI\tconst struct scc_modem *\n"
15409 msgstr "0x00005471\tTIOCCHANINI\tconst struct scc_modem *\n"
15410
15411 #. type: tbl table
15412 #: build/C/man2/ioctl_list.2:517
15413 #, no-wrap
15414 msgid "0x00005472\tTIOCGKISS\tstruct ioctl_command *\t// I-O\n"
15415 msgstr "0x00005472\tTIOCGKISS\tstruct ioctl_command *\t// I-O\n"
15416
15417 #. type: tbl table
15418 #: build/C/man2/ioctl_list.2:518
15419 #, no-wrap
15420 msgid "0x00005473\tTIOCSKISS\tconst struct ioctl_command *\n"
15421 msgstr "0x00005473\tTIOCSKISS\tconst struct ioctl_command *\n"
15422
15423 #. type: tbl table
15424 #: build/C/man2/ioctl_list.2:519
15425 #, no-wrap
15426 msgid "0x00005474\tTIOCSCCSTAT\tstruct scc_stat *\n"
15427 msgstr "0x00005474\tTIOCSCCSTAT\tstruct scc_stat *\n"
15428
15429 #. type: Plain text
15430 #: build/C/man2/ioctl_list.2:523
15431 msgid "// E<lt>include/linux/scsi.hE<gt>"
15432 msgstr "// E<lt>include/linux/scsi.hE<gt>"
15433
15434 #. type: tbl table
15435 #: build/C/man2/ioctl_list.2:525
15436 #, no-wrap
15437 msgid "0x00005382\tSCSI_IOCTL_GET_IDLUN\tstruct { int [2]; } *\n"
15438 msgstr "0x00005382\tSCSI_IOCTL_GET_IDLUN\tstruct { int [2]; } *\n"
15439
15440 #. type: tbl table
15441 #: build/C/man2/ioctl_list.2:526
15442 #, no-wrap
15443 msgid "0x00005383\tSCSI_IOCTL_TAGGED_ENABLE\tvoid\n"
15444 msgstr "0x00005383\tSCSI_IOCTL_TAGGED_ENABLE\tvoid\n"
15445
15446 #. type: tbl table
15447 #: build/C/man2/ioctl_list.2:527
15448 #, no-wrap
15449 msgid "0x00005384\tSCSI_IOCTL_TAGGED_DISABLE\tvoid\n"
15450 msgstr "0x00005384\tSCSI_IOCTL_TAGGED_DISABLE\tvoid\n"
15451
15452 #. type: tbl table
15453 #: build/C/man2/ioctl_list.2:531
15454 #, no-wrap
15455 msgid "0x00005385\tSCSI_IOCTL_PROBE_HOST\tconst int *\t// MORE\n"
15456 msgstr "0x00005385\tSCSI_IOCTL_PROBE_HOST\tconst int *\t// MORE\n"
15457
15458 #. type: Plain text
15459 #: build/C/man2/ioctl_list.2:535
15460 msgid "// E<lt>include/linux/smb_fs.hE<gt>"
15461 msgstr "// E<lt>include/linux/smb_fs.hE<gt>"
15462
15463 #. type: tbl table
15464 #: build/C/man2/ioctl_list.2:537
15465 #, no-wrap
15466 msgid "0x80027501\tSMB_IOC_GETMOUNTUID\tuid_t *\n"
15467 msgstr "0x80027501\tSMB_IOC_GETMOUNTUID\tuid_t *\n"
15468
15469 #. type: Plain text
15470 #: build/C/man2/ioctl_list.2:541
15471 msgid "// E<lt>include/linux/sockios.hE<gt>"
15472 msgstr "// E<lt>include/linux/sockios.hE<gt>"
15473
15474 #. type: tbl table
15475 #: build/C/man2/ioctl_list.2:543
15476 #, no-wrap
15477 msgid "0x0000890B\tSIOCADDRT\tconst struct rtentry *\t// MORE\n"
15478 msgstr "0x0000890B\tSIOCADDRT\tconst struct rtentry *\t// MORE\n"
15479
15480 #. type: tbl table
15481 #: build/C/man2/ioctl_list.2:544
15482 #, no-wrap
15483 msgid "0x0000890C\tSIOCDELRT\tconst struct rtentry *\t// MORE\n"
15484 msgstr "0x0000890C\tSIOCDELRT\tconst struct rtentry *\t// MORE\n"
15485
15486 #. type: tbl table
15487 #: build/C/man2/ioctl_list.2:545
15488 #, no-wrap
15489 msgid "0x00008910\tSIOCGIFNAME\tchar []\n"
15490 msgstr "0x00008910\tSIOCGIFNAME\tchar []\n"
15491
15492 #. type: tbl table
15493 #: build/C/man2/ioctl_list.2:546
15494 #, no-wrap
15495 msgid "0x00008911\tSIOCSIFLINK\tvoid\n"
15496 msgstr "0x00008911\tSIOCSIFLINK\tvoid\n"
15497
15498 #. type: tbl table
15499 #: build/C/man2/ioctl_list.2:547
15500 #, no-wrap
15501 msgid "0x00008912\tSIOCGIFCONF\tstruct ifconf *\t// MORE // I-O\n"
15502 msgstr "0x00008912\tSIOCGIFCONF\tstruct ifconf *\t// MORE // I-O\n"
15503
15504 #. type: tbl table
15505 #: build/C/man2/ioctl_list.2:548
15506 #, no-wrap
15507 msgid "0x00008913\tSIOCGIFFLAGS\tstruct ifreq *\t// I-O\n"
15508 msgstr "0x00008913\tSIOCGIFFLAGS\tstruct ifreq *\t// I-O\n"
15509
15510 #. type: tbl table
15511 #: build/C/man2/ioctl_list.2:549
15512 #, no-wrap
15513 msgid "0x00008914\tSIOCSIFFLAGS\tconst struct ifreq *\n"
15514 msgstr "0x00008914\tSIOCSIFFLAGS\tconst struct ifreq *\n"
15515
15516 #. type: tbl table
15517 #: build/C/man2/ioctl_list.2:550
15518 #, no-wrap
15519 msgid "0x00008915\tSIOCGIFADDR\tstruct ifreq *\t// I-O\n"
15520 msgstr "0x00008915\tSIOCGIFADDR\tstruct ifreq *\t// I-O\n"
15521
15522 #. type: tbl table
15523 #: build/C/man2/ioctl_list.2:551
15524 #, no-wrap
15525 msgid "0x00008916\tSIOCSIFADDR\tconst struct ifreq *\n"
15526 msgstr "0x00008916\tSIOCSIFADDR\tconst struct ifreq *\n"
15527
15528 #. type: tbl table
15529 #: build/C/man2/ioctl_list.2:552
15530 #, no-wrap
15531 msgid "0x00008917\tSIOCGIFDSTADDR\tstruct ifreq *\t// I-O\n"
15532 msgstr "0x00008917\tSIOCGIFDSTADDR\tstruct ifreq *\t// I-O\n"
15533
15534 #. type: tbl table
15535 #: build/C/man2/ioctl_list.2:553
15536 #, no-wrap
15537 msgid "0x00008918\tSIOCSIFDSTADDR\tconst struct ifreq *\n"
15538 msgstr "0x00008918\tSIOCSIFDSTADDR\tconst struct ifreq *\n"
15539
15540 #. type: tbl table
15541 #: build/C/man2/ioctl_list.2:554
15542 #, no-wrap
15543 msgid "0x00008919\tSIOCGIFBRDADDR\tstruct ifreq *\t// I-O\n"
15544 msgstr "0x00008919\tSIOCGIFBRDADDR\tstruct ifreq *\t// I-O\n"
15545
15546 #. type: tbl table
15547 #: build/C/man2/ioctl_list.2:555
15548 #, no-wrap
15549 msgid "0x0000891A\tSIOCSIFBRDADDR\tconst struct ifreq *\n"
15550 msgstr "0x0000891A\tSIOCSIFBRDADDR\tconst struct ifreq *\n"
15551
15552 #. type: tbl table
15553 #: build/C/man2/ioctl_list.2:556
15554 #, no-wrap
15555 msgid "0x0000891B\tSIOCGIFNETMASK\tstruct ifreq *\t// I-O\n"
15556 msgstr "0x0000891B\tSIOCGIFNETMASK\tstruct ifreq *\t// I-O\n"
15557
15558 #. type: tbl table
15559 #: build/C/man2/ioctl_list.2:557
15560 #, no-wrap
15561 msgid "0x0000891C\tSIOCSIFNETMASK\tconst struct ifreq *\n"
15562 msgstr "0x0000891C\tSIOCSIFNETMASK\tconst struct ifreq *\n"
15563
15564 #. type: tbl table
15565 #: build/C/man2/ioctl_list.2:558
15566 #, no-wrap
15567 msgid "0x0000891D\tSIOCGIFMETRIC\tstruct ifreq *\t// I-O\n"
15568 msgstr "0x0000891D\tSIOCGIFMETRIC\tstruct ifreq *\t// I-O\n"
15569
15570 #. type: tbl table
15571 #: build/C/man2/ioctl_list.2:559
15572 #, no-wrap
15573 msgid "0x0000891E\tSIOCSIFMETRIC\tconst struct ifreq *\n"
15574 msgstr "0x0000891E\tSIOCSIFMETRIC\tconst struct ifreq *\n"
15575
15576 #. type: tbl table
15577 #: build/C/man2/ioctl_list.2:560
15578 #, no-wrap
15579 msgid "0x0000891F\tSIOCGIFMEM\tstruct ifreq *\t// I-O\n"
15580 msgstr "0x0000891F\tSIOCGIFMEM\tstruct ifreq *\t// I-O\n"
15581
15582 #. type: tbl table
15583 #: build/C/man2/ioctl_list.2:561
15584 #, no-wrap
15585 msgid "0x00008920\tSIOCSIFMEM\tconst struct ifreq *\n"
15586 msgstr "0x00008920\tSIOCSIFMEM\tconst struct ifreq *\n"
15587
15588 #. type: tbl table
15589 #: build/C/man2/ioctl_list.2:562
15590 #, no-wrap
15591 msgid "0x00008921\tSIOCGIFMTU\tstruct ifreq *\t// I-O\n"
15592 msgstr "0x00008921\tSIOCGIFMTU\tstruct ifreq *\t// I-O\n"
15593
15594 #. type: tbl table
15595 #: build/C/man2/ioctl_list.2:563
15596 #, no-wrap
15597 msgid "0x00008922\tSIOCSIFMTU\tconst struct ifreq *\n"
15598 msgstr "0x00008922\tSIOCSIFMTU\tconst struct ifreq *\n"
15599
15600 #. type: tbl table
15601 #: build/C/man2/ioctl_list.2:567
15602 #, no-wrap
15603 msgid "0x00008923\tOLD_SIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15604 msgstr "0x00008923\tOLD_SIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15605
15606 #. type: tbl table
15607 #: build/C/man2/ioctl_list.2:568
15608 #, no-wrap
15609 msgid "0x00008924\tSIOCSIFHWADDR\tconst struct ifreq *\t// MORE\n"
15610 msgstr "0x00008924\tSIOCSIFHWADDR\tconst struct ifreq *\t// MORE\n"
15611
15612 #. type: tbl table
15613 #: build/C/man2/ioctl_list.2:569
15614 #, no-wrap
15615 msgid "0x00008925\tSIOCGIFENCAP\tint *\n"
15616 msgstr "0x00008925\tSIOCGIFENCAP\tint *\n"
15617
15618 #. type: tbl table
15619 #: build/C/man2/ioctl_list.2:570
15620 #, no-wrap
15621 msgid "0x00008926\tSIOCSIFENCAP\tconst int *\n"
15622 msgstr "0x00008926\tSIOCSIFENCAP\tconst int *\n"
15623
15624 #. type: tbl table
15625 #: build/C/man2/ioctl_list.2:571
15626 #, no-wrap
15627 msgid "0x00008927\tSIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15628 msgstr "0x00008927\tSIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
15629
15630 #. type: tbl table
15631 #: build/C/man2/ioctl_list.2:572
15632 #, no-wrap
15633 msgid "0x00008929\tSIOCGIFSLAVE\tvoid\n"
15634 msgstr "0x00008929\tSIOCGIFSLAVE\tvoid\n"
15635
15636 #. type: tbl table
15637 #: build/C/man2/ioctl_list.2:573
15638 #, no-wrap
15639 msgid "0x00008930\tSIOCSIFSLAVE\tvoid\n"
15640 msgstr "0x00008930\tSIOCSIFSLAVE\tvoid\n"
15641
15642 #. type: tbl table
15643 #: build/C/man2/ioctl_list.2:574
15644 #, no-wrap
15645 msgid "0x00008931\tSIOCADDMULTI\tconst struct ifreq *\n"
15646 msgstr "0x00008931\tSIOCADDMULTI\tconst struct ifreq *\n"
15647
15648 #. type: tbl table
15649 #: build/C/man2/ioctl_list.2:575
15650 #, no-wrap
15651 msgid "0x00008932\tSIOCDELMULTI\tconst struct ifreq *\n"
15652 msgstr "0x00008932\tSIOCDELMULTI\tconst struct ifreq *\n"
15653
15654 #. type: tbl table
15655 #: build/C/man2/ioctl_list.2:576
15656 #, no-wrap
15657 msgid "0x00008940\tSIOCADDRTOLD\tvoid\n"
15658 msgstr "0x00008940\tSIOCADDRTOLD\tvoid\n"
15659
15660 #. type: tbl table
15661 #: build/C/man2/ioctl_list.2:577
15662 #, no-wrap
15663 msgid "0x00008941\tSIOCDELRTOLD\tvoid\n"
15664 msgstr "0x00008941\tSIOCDELRTOLD\tvoid\n"
15665
15666 #. type: tbl table
15667 #: build/C/man2/ioctl_list.2:578
15668 #, no-wrap
15669 msgid "0x00008950\tSIOCDARP\tconst struct arpreq *\n"
15670 msgstr "0x00008950\tSIOCDARP\tconst struct arpreq *\n"
15671
15672 #. type: tbl table
15673 #: build/C/man2/ioctl_list.2:579
15674 #, no-wrap
15675 msgid "0x00008951\tSIOCGARP\tstruct arpreq *\t// I-O\n"
15676 msgstr "0x00008951\tSIOCGARP\tstruct arpreq *\t// I-O\n"
15677
15678 #. type: tbl table
15679 #: build/C/man2/ioctl_list.2:580
15680 #, no-wrap
15681 msgid "0x00008952\tSIOCSARP\tconst struct arpreq *\n"
15682 msgstr "0x00008952\tSIOCSARP\tconst struct arpreq *\n"
15683
15684 #. type: tbl table
15685 #: build/C/man2/ioctl_list.2:581
15686 #, no-wrap
15687 msgid "0x00008960\tSIOCDRARP\tconst struct arpreq *\n"
15688 msgstr "0x00008960\tSIOCDRARP\tconst struct arpreq *\n"
15689
15690 #. type: tbl table
15691 #: build/C/man2/ioctl_list.2:582
15692 #, no-wrap
15693 msgid "0x00008961\tSIOCGRARP\tstruct arpreq *\t// I-O\n"
15694 msgstr "0x00008961\tSIOCGRARP\tstruct arpreq *\t// I-O\n"
15695
15696 #. type: tbl table
15697 #: build/C/man2/ioctl_list.2:583
15698 #, no-wrap
15699 msgid "0x00008962\tSIOCSRARP\tconst struct arpreq *\n"
15700 msgstr "0x00008962\tSIOCSRARP\tconst struct arpreq *\n"
15701
15702 #. type: tbl table
15703 #: build/C/man2/ioctl_list.2:584
15704 #, no-wrap
15705 msgid "0x00008970\tSIOCGIFMAP\tstruct ifreq *\t// I-O\n"
15706 msgstr "0x00008970\tSIOCGIFMAP\tstruct ifreq *\t// I-O\n"
15707
15708 #. type: tbl table
15709 #: build/C/man2/ioctl_list.2:585
15710 #, no-wrap
15711 msgid "0x00008971\tSIOCSIFMAP\tconst struct ifreq *\n"
15712 msgstr "0x00008971\tSIOCSIFMAP\tconst struct ifreq *\n"
15713
15714 #. type: Plain text
15715 #: build/C/man2/ioctl_list.2:589
15716 msgid "// E<lt>include/linux/soundcard.hE<gt>"
15717 msgstr "// E<lt>include/linux/soundcard.hE<gt>"
15718
15719 #. type: tbl table
15720 #: build/C/man2/ioctl_list.2:591
15721 #, no-wrap
15722 msgid "0x00005100\tSNDCTL_SEQ_RESET\tvoid\n"
15723 msgstr "0x00005100\tSNDCTL_SEQ_RESET\tvoid\n"
15724
15725 #. type: tbl table
15726 #: build/C/man2/ioctl_list.2:592
15727 #, no-wrap
15728 msgid "0x00005101\tSNDCTL_SEQ_SYNC\tvoid\n"
15729 msgstr "0x00005101\tSNDCTL_SEQ_SYNC\tvoid\n"
15730
15731 #. type: tbl table
15732 #: build/C/man2/ioctl_list.2:596
15733 #, no-wrap
15734 msgid "0xC08C5102\tSNDCTL_SYNTH_INFO\tstruct synth_info *\t// I-O\n"
15735 msgstr "0xC08C5102\tSNDCTL_SYNTH_INFO\tstruct synth_info *\t// I-O\n"
15736
15737 #. type: tbl table
15738 #: build/C/man2/ioctl_list.2:597
15739 #, no-wrap
15740 msgid "0xC0045103\tSNDCTL_SEQ_CTRLRATE\tint *\t// I-O\n"
15741 msgstr "0xC0045103\tSNDCTL_SEQ_CTRLRATE\tint *\t// I-O\n"
15742
15743 #. type: tbl table
15744 #: build/C/man2/ioctl_list.2:598
15745 #, no-wrap
15746 msgid "0x80045104\tSNDCTL_SEQ_GETOUTCOUNT\tint *\n"
15747 msgstr "0x80045104\tSNDCTL_SEQ_GETOUTCOUNT\tint *\n"
15748
15749 #. type: tbl table
15750 #: build/C/man2/ioctl_list.2:599
15751 #, no-wrap
15752 msgid "0x80045105\tSNDCTL_SEQ_GETINCOUNT\tint *\n"
15753 msgstr "0x80045105\tSNDCTL_SEQ_GETINCOUNT\tint *\n"
15754
15755 #. type: tbl table
15756 #: build/C/man2/ioctl_list.2:600
15757 #, no-wrap
15758 msgid "0x40045106\tSNDCTL_SEQ_PERCMODE\tvoid\n"
15759 msgstr "0x40045106\tSNDCTL_SEQ_PERCMODE\tvoid\n"
15760
15761 #. type: tbl table
15762 #: build/C/man2/ioctl_list.2:604
15763 #, no-wrap
15764 msgid "0x40285107\tSNDCTL_FM_LOAD_INSTR\tconst struct sbi_instrument *\n"
15765 msgstr "0x40285107\tSNDCTL_FM_LOAD_INSTR\tconst struct sbi_instrument *\n"
15766
15767 #. type: tbl table
15768 #: build/C/man2/ioctl_list.2:608
15769 #, no-wrap
15770 msgid "0x40045108\tSNDCTL_SEQ_TESTMIDI\tconst int *\n"
15771 msgstr "0x40045108\tSNDCTL_SEQ_TESTMIDI\tconst int *\n"
15772
15773 #. type: tbl table
15774 #: build/C/man2/ioctl_list.2:609
15775 #, no-wrap
15776 msgid "0x40045109\tSNDCTL_SEQ_RESETSAMPLES\tconst int *\n"
15777 msgstr "0x40045109\tSNDCTL_SEQ_RESETSAMPLES\tconst int *\n"
15778
15779 #. type: tbl table
15780 #: build/C/man2/ioctl_list.2:610
15781 #, no-wrap
15782 msgid "0x8004510A\tSNDCTL_SEQ_NRSYNTHS\tint *\n"
15783 msgstr "0x8004510A\tSNDCTL_SEQ_NRSYNTHS\tint *\n"
15784
15785 #. type: tbl table
15786 #: build/C/man2/ioctl_list.2:611
15787 #, no-wrap
15788 msgid "0x8004510B\tSNDCTL_SEQ_NRMIDIS\tint *\n"
15789 msgstr "0x8004510B\tSNDCTL_SEQ_NRMIDIS\tint *\n"
15790
15791 #. type: tbl table
15792 #: build/C/man2/ioctl_list.2:612
15793 #, no-wrap
15794 msgid "0xC074510C\tSNDCTL_MIDI_INFO\tstruct midi_info *\t// I-O\n"
15795 msgstr "0xC074510C\tSNDCTL_MIDI_INFO\tstruct midi_info *\t// I-O\n"
15796
15797 #. type: tbl table
15798 #: build/C/man2/ioctl_list.2:613
15799 #, no-wrap
15800 msgid "0x4004510D\tSNDCTL_SEQ_THRESHOLD\tconst int *\n"
15801 msgstr "0x4004510D\tSNDCTL_SEQ_THRESHOLD\tconst int *\n"
15802
15803 #. type: tbl table
15804 #: build/C/man2/ioctl_list.2:614
15805 #, no-wrap
15806 msgid "0xC004510E\tSNDCTL_SYNTH_MEMAVL\tint *\t// I-O\n"
15807 msgstr "0xC004510E\tSNDCTL_SYNTH_MEMAVL\tint *\t// I-O\n"
15808
15809 #. type: tbl table
15810 #: build/C/man2/ioctl_list.2:615
15811 #, no-wrap
15812 msgid "0x4004510F\tSNDCTL_FM_4OP_ENABLE\tconst int *\n"
15813 msgstr "0x4004510F\tSNDCTL_FM_4OP_ENABLE\tconst int *\n"
15814
15815 #. type: tbl table
15816 #: build/C/man2/ioctl_list.2:616
15817 #, no-wrap
15818 msgid "0xCFB85110\tSNDCTL_PMGR_ACCESS\tstruct patmgr_info *\t// I-O\n"
15819 msgstr "0xCFB85110\tSNDCTL_PMGR_ACCESS\tstruct patmgr_info *\t// I-O\n"
15820
15821 #. type: tbl table
15822 #: build/C/man2/ioctl_list.2:617
15823 #, no-wrap
15824 msgid "0x00005111\tSNDCTL_SEQ_PANIC\tvoid\n"
15825 msgstr "0x00005111\tSNDCTL_SEQ_PANIC\tvoid\n"
15826
15827 #. type: tbl table
15828 #: build/C/man2/ioctl_list.2:621
15829 #, no-wrap
15830 msgid "0x40085112\tSNDCTL_SEQ_OUTOFBAND\tconst struct seq_event_rec *\n"
15831 msgstr "0x40085112\tSNDCTL_SEQ_OUTOFBAND\tconst struct seq_event_rec *\n"
15832
15833 #. type: tbl table
15834 #: build/C/man2/ioctl_list.2:625
15835 #, no-wrap
15836 msgid "0xC0045401\tSNDCTL_TMR_TIMEBASE\tint *\t// I-O\n"
15837 msgstr "0xC0045401\tSNDCTL_TMR_TIMEBASE\tint *\t// I-O\n"
15838
15839 #. type: tbl table
15840 #: build/C/man2/ioctl_list.2:626
15841 #, no-wrap
15842 msgid "0x00005402\tSNDCTL_TMR_START\tvoid\n"
15843 msgstr "0x00005402\tSNDCTL_TMR_START\tvoid\n"
15844
15845 #. type: tbl table
15846 #: build/C/man2/ioctl_list.2:627
15847 #, no-wrap
15848 msgid "0x00005403\tSNDCTL_TMR_STOP\tvoid\n"
15849 msgstr "0x00005403\tSNDCTL_TMR_STOP\tvoid\n"
15850
15851 #. type: tbl table
15852 #: build/C/man2/ioctl_list.2:628
15853 #, no-wrap
15854 msgid "0x00005404\tSNDCTL_TMR_CONTINUE\tvoid\n"
15855 msgstr "0x00005404\tSNDCTL_TMR_CONTINUE\tvoid\n"
15856
15857 #. type: tbl table
15858 #: build/C/man2/ioctl_list.2:629
15859 #, no-wrap
15860 msgid "0xC0045405\tSNDCTL_TMR_TEMPO\tint *\t// I-O\n"
15861 msgstr "0xC0045405\tSNDCTL_TMR_TEMPO\tint *\t// I-O\n"
15862
15863 #. type: tbl table
15864 #: build/C/man2/ioctl_list.2:630
15865 #, no-wrap
15866 msgid "0xC0045406\tSNDCTL_TMR_SOURCE\tint *\t// I-O\n"
15867 msgstr "0xC0045406\tSNDCTL_TMR_SOURCE\tint *\t// I-O\n"
15868
15869 #. type: tbl table
15870 #: build/C/man2/ioctl_list.2:631
15871 #, no-wrap
15872 msgid "0x40045407\tSNDCTL_TMR_METRONOME\tconst int *\n"
15873 msgstr "0x40045407\tSNDCTL_TMR_METRONOME\tconst int *\n"
15874
15875 #. type: tbl table
15876 #: build/C/man2/ioctl_list.2:632
15877 #, no-wrap
15878 msgid "0x40045408\tSNDCTL_TMR_SELECT\tint *\t// I-O\n"
15879 msgstr "0x40045408\tSNDCTL_TMR_SELECT\tint *\t// I-O\n"
15880
15881 #. type: tbl table
15882 #: build/C/man2/ioctl_list.2:633
15883 #, no-wrap
15884 msgid "0xCFB85001\tSNDCTL_PMGR_IFACE\tstruct patmgr_info *\t// I-O\n"
15885 msgstr "0xCFB85001\tSNDCTL_PMGR_IFACE\tstruct patmgr_info *\t// I-O\n"
15886
15887 #. type: tbl table
15888 #: build/C/man2/ioctl_list.2:634
15889 #, no-wrap
15890 msgid "0xC0046D00\tSNDCTL_MIDI_PRETIME\tint *\t// I-O\n"
15891 msgstr "0xC0046D00\tSNDCTL_MIDI_PRETIME\tint *\t// I-O\n"
15892
15893 #. type: tbl table
15894 #: build/C/man2/ioctl_list.2:635
15895 #, no-wrap
15896 msgid "0xC0046D01\tSNDCTL_MIDI_MPUMODE\tconst int *\n"
15897 msgstr "0xC0046D01\tSNDCTL_MIDI_MPUMODE\tconst int *\n"
15898
15899 #. type: tbl table
15900 #: build/C/man2/ioctl_list.2:639
15901 #, no-wrap
15902 msgid "0xC0216D02\tSNDCTL_MIDI_MPUCMD\tstruct mpu_command_rec *\t// I-O\n"
15903 msgstr "0xC0216D02\tSNDCTL_MIDI_MPUCMD\tstruct mpu_command_rec *\t// I-O\n"
15904
15905 #. type: tbl table
15906 #: build/C/man2/ioctl_list.2:643
15907 #, no-wrap
15908 msgid "0x00005000\tSNDCTL_DSP_RESET\tvoid\n"
15909 msgstr "0x00005000\tSNDCTL_DSP_RESET\tvoid\n"
15910
15911 #. type: tbl table
15912 #: build/C/man2/ioctl_list.2:644
15913 #, no-wrap
15914 msgid "0x00005001\tSNDCTL_DSP_SYNC\tvoid\n"
15915 msgstr "0x00005001\tSNDCTL_DSP_SYNC\tvoid\n"
15916
15917 #. type: tbl table
15918 #: build/C/man2/ioctl_list.2:645
15919 #, no-wrap
15920 msgid "0xC0045002\tSNDCTL_DSP_SPEED\tint *\t// I-O\n"
15921 msgstr "0xC0045002\tSNDCTL_DSP_SPEED\tint *\t// I-O\n"
15922
15923 #. type: tbl table
15924 #: build/C/man2/ioctl_list.2:646
15925 #, no-wrap
15926 msgid "0xC0045003\tSNDCTL_DSP_STEREO\tint *\t// I-O\n"
15927 msgstr "0xC0045003\tSNDCTL_DSP_STEREO\tint *\t// I-O\n"
15928
15929 #. type: tbl table
15930 #: build/C/man2/ioctl_list.2:647
15931 #, no-wrap
15932 msgid "0xC0045004\tSNDCTL_DSP_GETBLKSIZE\tint *\t// I-O\n"
15933 msgstr "0xC0045004\tSNDCTL_DSP_GETBLKSIZE\tint *\t// I-O\n"
15934
15935 #. type: tbl table
15936 #: build/C/man2/ioctl_list.2:648
15937 #, no-wrap
15938 msgid "0xC0045006\tSOUND_PCM_WRITE_CHANNELS\tint *\t// I-O\n"
15939 msgstr "0xC0045006\tSOUND_PCM_WRITE_CHANNELS\tint *\t// I-O\n"
15940
15941 #. type: tbl table
15942 #: build/C/man2/ioctl_list.2:649
15943 #, no-wrap
15944 msgid "0xC0045007\tSOUND_PCM_WRITE_FILTER\tint *\t// I-O\n"
15945 msgstr "0xC0045007\tSOUND_PCM_WRITE_FILTER\tint *\t// I-O\n"
15946
15947 #. type: tbl table
15948 #: build/C/man2/ioctl_list.2:650
15949 #, no-wrap
15950 msgid "0x00005008\tSNDCTL_DSP_POST\tvoid\n"
15951 msgstr "0x00005008\tSNDCTL_DSP_POST\tvoid\n"
15952
15953 #. type: tbl table
15954 #: build/C/man2/ioctl_list.2:651
15955 #, no-wrap
15956 msgid "0xC0045009\tSNDCTL_DSP_SUBDIVIDE\tint *\t// I-O\n"
15957 msgstr "0xC0045009\tSNDCTL_DSP_SUBDIVIDE\tint *\t// I-O\n"
15958
15959 #. type: tbl table
15960 #: build/C/man2/ioctl_list.2:652
15961 #, no-wrap
15962 msgid "0xC004500A\tSNDCTL_DSP_SETFRAGMENT\tint *\t// I-O\n"
15963 msgstr "0xC004500A\tSNDCTL_DSP_SETFRAGMENT\tint *\t// I-O\n"
15964
15965 #. type: tbl table
15966 #: build/C/man2/ioctl_list.2:653
15967 #, no-wrap
15968 msgid "0x8004500B\tSNDCTL_DSP_GETFMTS\tint *\n"
15969 msgstr "0x8004500B\tSNDCTL_DSP_GETFMTS\tint *\n"
15970
15971 #. type: tbl table
15972 #: build/C/man2/ioctl_list.2:654
15973 #, no-wrap
15974 msgid "0xC0045005\tSNDCTL_DSP_SETFMT\tint *\t// I-O\n"
15975 msgstr "0xC0045005\tSNDCTL_DSP_SETFMT\tint *\t// I-O\n"
15976
15977 #. type: tbl table
15978 #: build/C/man2/ioctl_list.2:658
15979 #, no-wrap
15980 msgid "0x800C500C\tSNDCTL_DSP_GETOSPACE\tstruct audio_buf_info *\n"
15981 msgstr "0x800C500C\tSNDCTL_DSP_GETOSPACE\tstruct audio_buf_info *\n"
15982
15983 #. type: tbl table
15984 #: build/C/man2/ioctl_list.2:659
15985 #, no-wrap
15986 msgid "0x800C500D\tSNDCTL_DSP_GETISPACE\tstruct audio_buf_info *\n"
15987 msgstr "0x800C500D\tSNDCTL_DSP_GETISPACE\tstruct audio_buf_info *\n"
15988
15989 #. type: tbl table
15990 #: build/C/man2/ioctl_list.2:660
15991 #, no-wrap
15992 msgid "0x0000500E\tSNDCTL_DSP_NONBLOCK\tvoid\n"
15993 msgstr "0x0000500E\tSNDCTL_DSP_NONBLOCK\tvoid\n"
15994
15995 #. type: tbl table
15996 #: build/C/man2/ioctl_list.2:661
15997 #, no-wrap
15998 msgid "0x80045002\tSOUND_PCM_READ_RATE\tint *\n"
15999 msgstr "0x80045002\tSOUND_PCM_READ_RATE\tint *\n"
16000
16001 #. type: tbl table
16002 #: build/C/man2/ioctl_list.2:662
16003 #, no-wrap
16004 msgid "0x80045006\tSOUND_PCM_READ_CHANNELS\tint *\n"
16005 msgstr "0x80045006\tSOUND_PCM_READ_CHANNELS\tint *\n"
16006
16007 #. type: tbl table
16008 #: build/C/man2/ioctl_list.2:663
16009 #, no-wrap
16010 msgid "0x80045005\tSOUND_PCM_READ_BITS\tint *\n"
16011 msgstr "0x80045005\tSOUND_PCM_READ_BITS\tint *\n"
16012
16013 #. type: tbl table
16014 #: build/C/man2/ioctl_list.2:664
16015 #, no-wrap
16016 msgid "0x80045007\tSOUND_PCM_READ_FILTER\tint *\n"
16017 msgstr "0x80045007\tSOUND_PCM_READ_FILTER\tint *\n"
16018
16019 #. type: tbl table
16020 #: build/C/man2/ioctl_list.2:665
16021 #, no-wrap
16022 msgid "0x00004300\tSNDCTL_COPR_RESET\tvoid\n"
16023 msgstr "0x00004300\tSNDCTL_COPR_RESET\tvoid\n"
16024
16025 #. type: tbl table
16026 #: build/C/man2/ioctl_list.2:666
16027 #, no-wrap
16028 msgid "0xCFB04301\tSNDCTL_COPR_LOAD\tconst struct copr_buffer *\n"
16029 msgstr "0xCFB04301\tSNDCTL_COPR_LOAD\tconst struct copr_buffer *\n"
16030
16031 #. type: tbl table
16032 #: build/C/man2/ioctl_list.2:670
16033 #, no-wrap
16034 msgid "0xC0144302\tSNDCTL_COPR_RDATA\tstruct copr_debug_buf *\t// I-O\n"
16035 msgstr "0xC0144302\tSNDCTL_COPR_RDATA\tstruct copr_debug_buf *\t// I-O\n"
16036
16037 #. type: tbl table
16038 #: build/C/man2/ioctl_list.2:671
16039 #, no-wrap
16040 msgid "0xC0144303\tSNDCTL_COPR_RCODE\tstruct copr_debug_buf *\t// I-O\n"
16041 msgstr "0xC0144303\tSNDCTL_COPR_RCODE\tstruct copr_debug_buf *\t// I-O\n"
16042
16043 #. type: tbl table
16044 #: build/C/man2/ioctl_list.2:675
16045 #, no-wrap
16046 msgid "0x40144304\tSNDCTL_COPR_WDATA\tconst struct copr_debug_buf *\n"
16047 msgstr "0x40144304\tSNDCTL_COPR_WDATA\tconst struct copr_debug_buf *\n"
16048
16049 #. type: tbl table
16050 #: build/C/man2/ioctl_list.2:676
16051 #, no-wrap
16052 msgid "0x40144305\tSNDCTL_COPR_WCODE\tconst struct copr_debug_buf *\n"
16053 msgstr "0x40144305\tSNDCTL_COPR_WCODE\tconst struct copr_debug_buf *\n"
16054
16055 #. type: tbl table
16056 #: build/C/man2/ioctl_list.2:680
16057 #, no-wrap
16058 msgid "0xC0144306\tSNDCTL_COPR_RUN\tstruct copr_debug_buf *\t// I-O\n"
16059 msgstr "0xC0144306\tSNDCTL_COPR_RUN\tstruct copr_debug_buf *\t// I-O\n"
16060
16061 #. type: tbl table
16062 #: build/C/man2/ioctl_list.2:681
16063 #, no-wrap
16064 msgid "0xC0144307\tSNDCTL_COPR_HALT\tstruct copr_debug_buf *\t// I-O\n"
16065 msgstr "0xC0144307\tSNDCTL_COPR_HALT\tstruct copr_debug_buf *\t// I-O\n"
16066
16067 #. type: tbl table
16068 #: build/C/man2/ioctl_list.2:685
16069 #, no-wrap
16070 msgid "0x4FA44308\tSNDCTL_COPR_SENDMSG\tconst struct copr_msg *\n"
16071 msgstr "0x4FA44308\tSNDCTL_COPR_SENDMSG\tconst struct copr_msg *\n"
16072
16073 #. type: tbl table
16074 #: build/C/man2/ioctl_list.2:686
16075 #, no-wrap
16076 msgid "0x8FA44309\tSNDCTL_COPR_RCVMSG\tstruct copr_msg *\n"
16077 msgstr "0x8FA44309\tSNDCTL_COPR_RCVMSG\tstruct copr_msg *\n"
16078
16079 #. type: tbl table
16080 #: build/C/man2/ioctl_list.2:687
16081 #, no-wrap
16082 msgid "0x80044D00\tSOUND_MIXER_READ_VOLUME\tint *\n"
16083 msgstr "0x80044D00\tSOUND_MIXER_READ_VOLUME\tint *\n"
16084
16085 #. type: tbl table
16086 #: build/C/man2/ioctl_list.2:688
16087 #, no-wrap
16088 msgid "0x80044D01\tSOUND_MIXER_READ_BASS\tint *\n"
16089 msgstr "0x80044D01\tSOUND_MIXER_READ_BASS\tint *\n"
16090
16091 #. type: tbl table
16092 #: build/C/man2/ioctl_list.2:689
16093 #, no-wrap
16094 msgid "0x80044D02\tSOUND_MIXER_READ_TREBLE\tint *\n"
16095 msgstr "0x80044D02\tSOUND_MIXER_READ_TREBLE\tint *\n"
16096
16097 #. type: tbl table
16098 #: build/C/man2/ioctl_list.2:690
16099 #, no-wrap
16100 msgid "0x80044D03\tSOUND_MIXER_READ_SYNTH\tint *\n"
16101 msgstr "0x80044D03\tSOUND_MIXER_READ_SYNTH\tint *\n"
16102
16103 #. type: tbl table
16104 #: build/C/man2/ioctl_list.2:691
16105 #, no-wrap
16106 msgid "0x80044D04\tSOUND_MIXER_READ_PCM\tint *\n"
16107 msgstr "0x80044D04\tSOUND_MIXER_READ_PCM\tint *\n"
16108
16109 #. type: tbl table
16110 #: build/C/man2/ioctl_list.2:692
16111 #, no-wrap
16112 msgid "0x80044D05\tSOUND_MIXER_READ_SPEAKER\tint *\n"
16113 msgstr "0x80044D05\tSOUND_MIXER_READ_SPEAKER\tint *\n"
16114
16115 #. type: tbl table
16116 #: build/C/man2/ioctl_list.2:693
16117 #, no-wrap
16118 msgid "0x80044D06\tSOUND_MIXER_READ_LINE\tint *\n"
16119 msgstr "0x80044D06\tSOUND_MIXER_READ_LINE\tint *\n"
16120
16121 #. type: tbl table
16122 #: build/C/man2/ioctl_list.2:694
16123 #, no-wrap
16124 msgid "0x80044D07\tSOUND_MIXER_READ_MIC\tint *\n"
16125 msgstr "0x80044D07\tSOUND_MIXER_READ_MIC\tint *\n"
16126
16127 #. type: tbl table
16128 #: build/C/man2/ioctl_list.2:695
16129 #, no-wrap
16130 msgid "0x80044D08\tSOUND_MIXER_READ_CD\tint *\n"
16131 msgstr "0x80044D08\tSOUND_MIXER_READ_CD\tint *\n"
16132
16133 #. type: tbl table
16134 #: build/C/man2/ioctl_list.2:696
16135 #, no-wrap
16136 msgid "0x80044D09\tSOUND_MIXER_READ_IMIX\tint *\n"
16137 msgstr "0x80044D09\tSOUND_MIXER_READ_IMIX\tint *\n"
16138
16139 #. type: tbl table
16140 #: build/C/man2/ioctl_list.2:697
16141 #, no-wrap
16142 msgid "0x80044D0A\tSOUND_MIXER_READ_ALTPCM\tint *\n"
16143 msgstr "0x80044D0A\tSOUND_MIXER_READ_ALTPCM\tint *\n"
16144
16145 #. type: tbl table
16146 #: build/C/man2/ioctl_list.2:698
16147 #, no-wrap
16148 msgid "0x80044D0B\tSOUND_MIXER_READ_RECLEV\tint *\n"
16149 msgstr "0x80044D0B\tSOUND_MIXER_READ_RECLEV\tint *\n"
16150
16151 #. type: tbl table
16152 #: build/C/man2/ioctl_list.2:699
16153 #, no-wrap
16154 msgid "0x80044D0C\tSOUND_MIXER_READ_IGAIN\tint *\n"
16155 msgstr "0x80044D0C\tSOUND_MIXER_READ_IGAIN\tint *\n"
16156
16157 #. type: tbl table
16158 #: build/C/man2/ioctl_list.2:700
16159 #, no-wrap
16160 msgid "0x80044D0D\tSOUND_MIXER_READ_OGAIN\tint *\n"
16161 msgstr "0x80044D0D\tSOUND_MIXER_READ_OGAIN\tint *\n"
16162
16163 #. type: tbl table
16164 #: build/C/man2/ioctl_list.2:701
16165 #, no-wrap
16166 msgid "0x80044D0E\tSOUND_MIXER_READ_LINE1\tint *\n"
16167 msgstr "0x80044D0E\tSOUND_MIXER_READ_LINE1\tint *\n"
16168
16169 #. type: tbl table
16170 #: build/C/man2/ioctl_list.2:702
16171 #, no-wrap
16172 msgid "0x80044D0F\tSOUND_MIXER_READ_LINE2\tint *\n"
16173 msgstr "0x80044D0F\tSOUND_MIXER_READ_LINE2\tint *\n"
16174
16175 #. type: tbl table
16176 #: build/C/man2/ioctl_list.2:703
16177 #, no-wrap
16178 msgid "0x80044D10\tSOUND_MIXER_READ_LINE3\tint *\n"
16179 msgstr "0x80044D10\tSOUND_MIXER_READ_LINE3\tint *\n"
16180
16181 #. type: tbl table
16182 #: build/C/man2/ioctl_list.2:704
16183 #, no-wrap
16184 msgid "0x80044D1C\tSOUND_MIXER_READ_MUTE\tint *\n"
16185 msgstr "0x80044D1C\tSOUND_MIXER_READ_MUTE\tint *\n"
16186
16187 #. type: tbl table
16188 #: build/C/man2/ioctl_list.2:705
16189 #, no-wrap
16190 msgid "0x80044D1D\tSOUND_MIXER_READ_ENHANCE\tint *\n"
16191 msgstr "0x80044D1D\tSOUND_MIXER_READ_ENHANCE\tint *\n"
16192
16193 #. type: tbl table
16194 #: build/C/man2/ioctl_list.2:706
16195 #, no-wrap
16196 msgid "0x80044D1E\tSOUND_MIXER_READ_LOUD\tint *\n"
16197 msgstr "0x80044D1E\tSOUND_MIXER_READ_LOUD\tint *\n"
16198
16199 #. type: tbl table
16200 #: build/C/man2/ioctl_list.2:707
16201 #, no-wrap
16202 msgid "0x80044DFF\tSOUND_MIXER_READ_RECSRC\tint *\n"
16203 msgstr "0x80044DFF\tSOUND_MIXER_READ_RECSRC\tint *\n"
16204
16205 #. type: tbl table
16206 #: build/C/man2/ioctl_list.2:708
16207 #, no-wrap
16208 msgid "0x80044DFE\tSOUND_MIXER_READ_DEVMASK\tint *\n"
16209 msgstr "0x80044DFE\tSOUND_MIXER_READ_DEVMASK\tint *\n"
16210
16211 #. type: tbl table
16212 #: build/C/man2/ioctl_list.2:709
16213 #, no-wrap
16214 msgid "0x80044DFD\tSOUND_MIXER_READ_RECMASK\tint *\n"
16215 msgstr "0x80044DFD\tSOUND_MIXER_READ_RECMASK\tint *\n"
16216
16217 #. type: tbl table
16218 #: build/C/man2/ioctl_list.2:710
16219 #, no-wrap
16220 msgid "0x80044DFB\tSOUND_MIXER_READ_STEREODEVS\tint *\n"
16221 msgstr "0x80044DFB\tSOUND_MIXER_READ_STEREODEVS\tint *\n"
16222
16223 #. type: tbl table
16224 #: build/C/man2/ioctl_list.2:711
16225 #, no-wrap
16226 msgid "0x80044DFC\tSOUND_MIXER_READ_CAPS\tint *\n"
16227 msgstr "0x80044DFC\tSOUND_MIXER_READ_CAPS\tint *\n"
16228
16229 #. type: tbl table
16230 #: build/C/man2/ioctl_list.2:715
16231 #, no-wrap
16232 msgid "0xC0044D00\tSOUND_MIXER_WRITE_VOLUME\tint *\t// I-O\n"
16233 msgstr "0xC0044D00\tSOUND_MIXER_WRITE_VOLUME\tint *\t// I-O\n"
16234
16235 #. type: tbl table
16236 #: build/C/man2/ioctl_list.2:716
16237 #, no-wrap
16238 msgid "0xC0044D01\tSOUND_MIXER_WRITE_BASS\tint *\t// I-O\n"
16239 msgstr "0xC0044D01\tSOUND_MIXER_WRITE_BASS\tint *\t// I-O\n"
16240
16241 #. type: tbl table
16242 #: build/C/man2/ioctl_list.2:717
16243 #, no-wrap
16244 msgid "0xC0044D02\tSOUND_MIXER_WRITE_TREBLE\tint *\t// I-O\n"
16245 msgstr "0xC0044D02\tSOUND_MIXER_WRITE_TREBLE\tint *\t// I-O\n"
16246
16247 #. type: tbl table
16248 #: build/C/man2/ioctl_list.2:718
16249 #, no-wrap
16250 msgid "0xC0044D03\tSOUND_MIXER_WRITE_SYNTH\tint *\t// I-O\n"
16251 msgstr "0xC0044D03\tSOUND_MIXER_WRITE_SYNTH\tint *\t// I-O\n"
16252
16253 #. type: tbl table
16254 #: build/C/man2/ioctl_list.2:719
16255 #, no-wrap
16256 msgid "0xC0044D04\tSOUND_MIXER_WRITE_PCM\tint *\t// I-O\n"
16257 msgstr "0xC0044D04\tSOUND_MIXER_WRITE_PCM\tint *\t// I-O\n"
16258
16259 #. type: tbl table
16260 #: build/C/man2/ioctl_list.2:720
16261 #, no-wrap
16262 msgid "0xC0044D05\tSOUND_MIXER_WRITE_SPEAKER\tint *\t// I-O\n"
16263 msgstr "0xC0044D05\tSOUND_MIXER_WRITE_SPEAKER\tint *\t// I-O\n"
16264
16265 #. type: tbl table
16266 #: build/C/man2/ioctl_list.2:721
16267 #, no-wrap
16268 msgid "0xC0044D06\tSOUND_MIXER_WRITE_LINE\tint *\t// I-O\n"
16269 msgstr "0xC0044D06\tSOUND_MIXER_WRITE_LINE\tint *\t// I-O\n"
16270
16271 #. type: tbl table
16272 #: build/C/man2/ioctl_list.2:722
16273 #, no-wrap
16274 msgid "0xC0044D07\tSOUND_MIXER_WRITE_MIC\tint *\t// I-O\n"
16275 msgstr "0xC0044D07\tSOUND_MIXER_WRITE_MIC\tint *\t// I-O\n"
16276
16277 #. type: tbl table
16278 #: build/C/man2/ioctl_list.2:723
16279 #, no-wrap
16280 msgid "0xC0044D08\tSOUND_MIXER_WRITE_CD\tint *\t// I-O\n"
16281 msgstr "0xC0044D08\tSOUND_MIXER_WRITE_CD\tint *\t// I-O\n"
16282
16283 #. type: tbl table
16284 #: build/C/man2/ioctl_list.2:724
16285 #, no-wrap
16286 msgid "0xC0044D09\tSOUND_MIXER_WRITE_IMIX\tint *\t// I-O\n"
16287 msgstr "0xC0044D09\tSOUND_MIXER_WRITE_IMIX\tint *\t// I-O\n"
16288
16289 #. type: tbl table
16290 #: build/C/man2/ioctl_list.2:725
16291 #, no-wrap
16292 msgid "0xC0044D0A\tSOUND_MIXER_WRITE_ALTPCM\tint *\t// I-O\n"
16293 msgstr "0xC0044D0A\tSOUND_MIXER_WRITE_ALTPCM\tint *\t// I-O\n"
16294
16295 #. type: tbl table
16296 #: build/C/man2/ioctl_list.2:726
16297 #, no-wrap
16298 msgid "0xC0044D0B\tSOUND_MIXER_WRITE_RECLEV\tint *\t// I-O\n"
16299 msgstr "0xC0044D0B\tSOUND_MIXER_WRITE_RECLEV\tint *\t// I-O\n"
16300
16301 #. type: tbl table
16302 #: build/C/man2/ioctl_list.2:727
16303 #, no-wrap
16304 msgid "0xC0044D0C\tSOUND_MIXER_WRITE_IGAIN\tint *\t// I-O\n"
16305 msgstr "0xC0044D0C\tSOUND_MIXER_WRITE_IGAIN\tint *\t// I-O\n"
16306
16307 #. type: tbl table
16308 #: build/C/man2/ioctl_list.2:728
16309 #, no-wrap
16310 msgid "0xC0044D0D\tSOUND_MIXER_WRITE_OGAIN\tint *\t// I-O\n"
16311 msgstr "0xC0044D0D\tSOUND_MIXER_WRITE_OGAIN\tint *\t// I-O\n"
16312
16313 #. type: tbl table
16314 #: build/C/man2/ioctl_list.2:729
16315 #, no-wrap
16316 msgid "0xC0044D0E\tSOUND_MIXER_WRITE_LINE1\tint *\t// I-O\n"
16317 msgstr "0xC0044D0E\tSOUND_MIXER_WRITE_LINE1\tint *\t// I-O\n"
16318
16319 #. type: tbl table
16320 #: build/C/man2/ioctl_list.2:730
16321 #, no-wrap
16322 msgid "0xC0044D0F\tSOUND_MIXER_WRITE_LINE2\tint *\t// I-O\n"
16323 msgstr "0xC0044D0F\tSOUND_MIXER_WRITE_LINE2\tint *\t// I-O\n"
16324
16325 #. type: tbl table
16326 #: build/C/man2/ioctl_list.2:731
16327 #, no-wrap
16328 msgid "0xC0044D10\tSOUND_MIXER_WRITE_LINE3\tint *\t// I-O\n"
16329 msgstr "0xC0044D10\tSOUND_MIXER_WRITE_LINE3\tint *\t// I-O\n"
16330
16331 #. type: tbl table
16332 #: build/C/man2/ioctl_list.2:732
16333 #, no-wrap
16334 msgid "0xC0044D1C\tSOUND_MIXER_WRITE_MUTE\tint *\t// I-O\n"
16335 msgstr "0xC0044D1C\tSOUND_MIXER_WRITE_MUTE\tint *\t// I-O\n"
16336
16337 #. type: tbl table
16338 #: build/C/man2/ioctl_list.2:733
16339 #, no-wrap
16340 msgid "0xC0044D1D\tSOUND_MIXER_WRITE_ENHANCE\tint *\t// I-O\n"
16341 msgstr "0xC0044D1D\tSOUND_MIXER_WRITE_ENHANCE\tint *\t// I-O\n"
16342
16343 #. type: tbl table
16344 #: build/C/man2/ioctl_list.2:734
16345 #, no-wrap
16346 msgid "0xC0044D1E\tSOUND_MIXER_WRITE_LOUD\tint *\t// I-O\n"
16347 msgstr "0xC0044D1E\tSOUND_MIXER_WRITE_LOUD\tint *\t// I-O\n"
16348
16349 #. type: tbl table
16350 #: build/C/man2/ioctl_list.2:735
16351 #, no-wrap
16352 msgid "0xC0044DFF\tSOUND_MIXER_WRITE_RECSRC\tint *\t// I-O\n"
16353 msgstr "0xC0044DFF\tSOUND_MIXER_WRITE_RECSRC\tint *\t// I-O\n"
16354
16355 #. type: Plain text
16356 #: build/C/man2/ioctl_list.2:739
16357 msgid "// E<lt>include/linux/umsdos_fs.hE<gt>"
16358 msgstr "// E<lt>include/linux/umsdos_fs.hE<gt>"
16359
16360 #. type: tbl table
16361 #: build/C/man2/ioctl_list.2:741
16362 #, no-wrap
16363 msgid "0x000004D2\tUMSDOS_READDIR_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16364 msgstr "0x000004D2\tUMSDOS_READDIR_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16365
16366 #. type: tbl table
16367 #: build/C/man2/ioctl_list.2:742
16368 #, no-wrap
16369 msgid "0x000004D3\tUMSDOS_UNLINK_DOS\tconst struct umsdos_ioctl *\n"
16370 msgstr "0x000004D3\tUMSDOS_UNLINK_DOS\tconst struct umsdos_ioctl *\n"
16371
16372 #. type: tbl table
16373 #: build/C/man2/ioctl_list.2:743
16374 #, no-wrap
16375 msgid "0x000004D4\tUMSDOS_RMDIR_DOS\tconst struct umsdos_ioctl *\n"
16376 msgstr "0x000004D4\tUMSDOS_RMDIR_DOS\tconst struct umsdos_ioctl *\n"
16377
16378 #. type: tbl table
16379 #: build/C/man2/ioctl_list.2:744
16380 #, no-wrap
16381 msgid "0x000004D5\tUMSDOS_STAT_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16382 msgstr "0x000004D5\tUMSDOS_STAT_DOS\tstruct umsdos_ioctl *\t// I-O\n"
16383
16384 #. type: tbl table
16385 #: build/C/man2/ioctl_list.2:745
16386 #, no-wrap
16387 msgid "0x000004D6\tUMSDOS_CREAT_EMD\tconst struct umsdos_ioctl *\n"
16388 msgstr "0x000004D6\tUMSDOS_CREAT_EMD\tconst struct umsdos_ioctl *\n"
16389
16390 #. type: tbl table
16391 #: build/C/man2/ioctl_list.2:746
16392 #, no-wrap
16393 msgid "0x000004D7\tUMSDOS_UNLINK_EMD\tconst struct umsdos_ioctl *\n"
16394 msgstr "0x000004D7\tUMSDOS_UNLINK_EMD\tconst struct umsdos_ioctl *\n"
16395
16396 #. type: tbl table
16397 #: build/C/man2/ioctl_list.2:747
16398 #, no-wrap
16399 msgid "0x000004D8\tUMSDOS_READDIR_EMD\tstruct umsdos_ioctl *\t// I-O\n"
16400 msgstr "0x000004D8\tUMSDOS_READDIR_EMD\tstruct umsdos_ioctl *\t// I-O\n"
16401
16402 #. type: tbl table
16403 #: build/C/man2/ioctl_list.2:748
16404 #, no-wrap
16405 msgid "0x000004D9\tUMSDOS_GETVERSION\tstruct umsdos_ioctl *\n"
16406 msgstr "0x000004D9\tUMSDOS_GETVERSION\tstruct umsdos_ioctl *\n"
16407
16408 #. type: tbl table
16409 #: build/C/man2/ioctl_list.2:749
16410 #, no-wrap
16411 msgid "0x000004DA\tUMSDOS_INIT_EMD\tvoid\n"
16412 msgstr "0x000004DA\tUMSDOS_INIT_EMD\tvoid\n"
16413
16414 #. type: tbl table
16415 #: build/C/man2/ioctl_list.2:750
16416 #, no-wrap
16417 msgid "0x000004DB\tUMSDOS_DOS_SETUP\tconst struct umsdos_ioctl *\n"
16418 msgstr "0x000004DB\tUMSDOS_DOS_SETUP\tconst struct umsdos_ioctl *\n"
16419
16420 #. type: tbl table
16421 #: build/C/man2/ioctl_list.2:751
16422 #, no-wrap
16423 msgid "0x000004DC\tUMSDOS_RENAME_DOS\tconst struct umsdos_ioctl *\n"
16424 msgstr "0x000004DC\tUMSDOS_RENAME_DOS\tconst struct umsdos_ioctl *\n"
16425
16426 #. type: Plain text
16427 #: build/C/man2/ioctl_list.2:755
16428 msgid "// E<lt>include/linux/vt.hE<gt>"
16429 msgstr "// E<lt>include/linux/vt.hE<gt>"
16430
16431 #. type: tbl table
16432 #: build/C/man2/ioctl_list.2:757
16433 #, no-wrap
16434 msgid "0x00005600\tVT_OPENQRY\tint *\n"
16435 msgstr "0x00005600\tVT_OPENQRY\tint *\n"
16436
16437 #. type: tbl table
16438 #: build/C/man2/ioctl_list.2:758
16439 #, no-wrap
16440 msgid "0x00005601\tVT_GETMODE\tstruct vt_mode *\n"
16441 msgstr "0x00005601\tVT_GETMODE\tstruct vt_mode *\n"
16442
16443 #. type: tbl table
16444 #: build/C/man2/ioctl_list.2:759
16445 #, no-wrap
16446 msgid "0x00005602\tVT_SETMODE\tconst struct vt_mode *\n"
16447 msgstr "0x00005602\tVT_SETMODE\tconst struct vt_mode *\n"
16448
16449 #. type: tbl table
16450 #: build/C/man2/ioctl_list.2:760
16451 #, no-wrap
16452 msgid "0x00005603\tVT_GETSTATE\tstruct vt_stat *\n"
16453 msgstr "0x00005603\tVT_GETSTATE\tstruct vt_stat *\n"
16454
16455 #. type: tbl table
16456 #: build/C/man2/ioctl_list.2:761
16457 #, no-wrap
16458 msgid "0x00005604\tVT_SENDSIG\tvoid\n"
16459 msgstr "0x00005604\tVT_SENDSIG\tvoid\n"
16460
16461 #. type: tbl table
16462 #: build/C/man2/ioctl_list.2:762
16463 #, no-wrap
16464 msgid "0x00005605\tVT_RELDISP\tint\n"
16465 msgstr "0x00005605\tVT_RELDISP\tint\n"
16466
16467 #. type: tbl table
16468 #: build/C/man2/ioctl_list.2:763
16469 #, no-wrap
16470 msgid "0x00005606\tVT_ACTIVATE\tint\n"
16471 msgstr "0x00005606\tVT_ACTIVATE\tint\n"
16472
16473 #. type: tbl table
16474 #: build/C/man2/ioctl_list.2:764
16475 #, no-wrap
16476 msgid "0x00005607\tVT_WAITACTIVE\tint\n"
16477 msgstr "0x00005607\tVT_WAITACTIVE\tint\n"
16478
16479 #. type: tbl table
16480 #: build/C/man2/ioctl_list.2:765
16481 #, no-wrap
16482 msgid "0x00005608\tVT_DISALLOCATE\tint\n"
16483 msgstr "0x00005608\tVT_DISALLOCATE\tint\n"
16484
16485 #. type: tbl table
16486 #: build/C/man2/ioctl_list.2:766
16487 #, no-wrap
16488 msgid "0x00005609\tVT_RESIZE\tconst struct vt_sizes *\n"
16489 msgstr "0x00005609\tVT_RESIZE\tconst struct vt_sizes *\n"
16490
16491 #. type: tbl table
16492 #: build/C/man2/ioctl_list.2:767
16493 #, no-wrap
16494 msgid "0x0000560A\tVT_RESIZEX\tconst struct vt_consize *\n"
16495 msgstr "0x0000560A\tVT_RESIZEX\tconst struct vt_consize *\n"
16496
16497 #. type: Plain text
16498 #: build/C/man2/ioctl_list.2:774
16499 msgid ""
16500 "// More arguments.  Some ioctl's take a pointer to a structure which "
16501 "contains additional pointers.  These are documented here in alphabetical "
16502 "order."
16503 msgstr ""
16504 "// More arguments.  いくつかの ioctl は追加のポインターを含む構造体へのポイン"
16505 "ターを使用します。 ここでこれらをアルファベット順に説明します。"
16506
16507 #. type: Plain text
16508 #: build/C/man2/ioctl_list.2:782
16509 msgid ""
16510 "B<CDROMREADAUDIO> takes an input pointer I<const struct cdrom_read_audio\\ "
16511 "*>.  The I<buf> field points to an output buffer of length I<nframes\\ * "
16512 "CD_FRAMESIZE_RAW>."
16513 msgstr ""
16514 "B<CDROMREADAUDIO> は入力ポインター I<const struct cdrom_read_audio\\ *> を使"
16515 "用します。 I<buf> フィールドは大きさ I<nframes\\ * CD_FRAMESIZE_RAW> の出力"
16516 "バッファーへのポインターです。"
16517
16518 #. type: Plain text
16519 #: build/C/man2/ioctl_list.2:798
16520 msgid ""
16521 "B<CDROMREADCOOKED>, B<CDROMREADMODE1>, B<CDROMREADMODE2>, and "
16522 "B<CDROMREADRAW> take an input pointer I<const struct cdrom_msf\\ *>.  They "
16523 "use the same pointer as an output pointer to I<char []>.  The length varies "
16524 "by request.  For B<CDROMREADMODE1>, most drivers use CD_FRAMESIZE, but the "
16525 "Optics Storage driver uses OPT_BLOCKSIZE instead (both have the numerical "
16526 "value 2048)."
16527 msgstr ""
16528 "B<CDROMREADCOOKED>, B<CDROMREADMODE1>, B<CDROMREADMODE2>, B<CDROMREADRAW> は"
16529 "入力ポインター I<const struct cdrom_msf\\ *> を使用します。これらは同じポイン"
16530 "ターを I<char []> への出力ポインターとして使用します。 長さは要求によって変化"
16531 "します。 B<CDROMREADMODE1> には、多くのデバイスが CD_FRAMESIZE を使用します"
16532 "が、光学記憶装置 (光ディスク) のドライバは OPT_BLOCKSIZE を使用します (どちら"
16533 "も同じ値で 2048 です)。"
16534
16535 #. type: Plain text
16536 #: build/C/man2/ioctl_list.2:804
16537 #, no-wrap
16538 msgid ""
16539 "    CDROMREADCOOKED    char [CD_FRAMESIZE]\n"
16540 "    CDROMREADMODE1     char [CD_FRAMESIZE or OPT_BLOCKSIZE]\n"
16541 "    CDROMREADMODE2     char [CD_FRAMESIZE_RAW0]\n"
16542 "    CDROMREADRAW       char [CD_FRAMESIZE_RAW]\n"
16543 msgstr ""
16544 "    CDROMREADCOOKED    char [CD_FRAMESIZE]\n"
16545 "    CDROMREADMODE1     char [CD_FRAMESIZE or OPT_BLOCKSIZE]\n"
16546 "    CDROMREADMODE2     char [CD_FRAMESIZE_RAW0]\n"
16547 "    CDROMREADRAW       char [CD_FRAMESIZE_RAW]\n"
16548
16549 #. type: Plain text
16550 #: build/C/man2/ioctl_list.2:818
16551 msgid ""
16552 "B<EQL_ENSLAVE>, B<EQL_EMANCIPATE>, B<EQL_GETSLAVECFG>, B<EQL_SETSLAVECFG>, "
16553 "B<EQL_GETMASTERCFG>, and B<EQL_SETMASTERCFG> take a I<struct ifreq\\ *>.  "
16554 "The I<ifr_data> field is a pointer to another structure as follows:"
16555 msgstr ""
16556 "B<EQL_ENSLAVE>, B<EQL_EMANCIPATE>, B<EQL_GETSLAVECFG>, B<EQL_SETSLAVECFG>, "
16557 "B<EQL_GETMASTERCFG>, B<EQL_SETMASTERCFG> は I<struct ifreq\\ *> を使用しま"
16558 "す。 I<ifr_data> フィールドは以下に示す別の構造体へのポインターです:"
16559
16560 #. type: Plain text
16561 #: build/C/man2/ioctl_list.2:826
16562 #, no-wrap
16563 msgid ""
16564 "    EQL_ENSLAVE         const struct slaving_request *\n"
16565 "    EQL_EMANCIPATE      const struct slaving_request *\n"
16566 "    EQL_GETSLAVECFG     struct slave_config *           // I-O\n"
16567 "    EQL_SETSLAVECFG     const struct slave_config *\n"
16568 "    EQL_GETMASTERCFG    struct master_config *\n"
16569 "    EQL_SETMASTERCFG    const struct master_config *\n"
16570 msgstr ""
16571 "    EQL_ENSLAVE         const struct slaving_request *\n"
16572 "    EQL_EMANCIPATE      const struct slaving_request *\n"
16573 "    EQL_GETSLAVECFG     struct slave_config *           // I-O\n"
16574 "    EQL_SETSLAVECFG     const struct slave_config *\n"
16575 "    EQL_GETMASTERCFG    struct master_config *\n"
16576 "    EQL_SETMASTERCFG    const struct master_config *\n"
16577
16578 #. type: Plain text
16579 #: build/C/man2/ioctl_list.2:843
16580 msgid ""
16581 "B<FDRAWCMD> takes a I<struct floppy raw_cmd\\ *>.  If I<flags & "
16582 "FD_RAW_WRITE> is nonzero, then I<data> points to an input buffer of length "
16583 "I<length>.  If I<flags & FD_RAW_READ> is nonzero, then I<data> points to an "
16584 "output buffer of length I<length>."
16585 msgstr ""
16586 "B<FDRAWCMD> は I<struct floppy raw_cmd\\ *> を使用します。 I<flags & "
16587 "FD_RAW_WRITE> がゼロ以外の場合、 I<data> は大きさ I<length> の入力バッファー"
16588 "へのポインターになります。 I<flags & FD_RAW_READ> がゼロ以外の場合、 I<data> "
16589 "は大きさ I<length> の出力バッファーへのポインターになります。"
16590
16591 #. type: Plain text
16592 #: build/C/man2/ioctl_list.2:859
16593 msgid ""
16594 "B<GIO_FONTX> and B<PIO_FONTX> take a I<struct console_font_desc\\ *> or a "
16595 "I<const struct console_font_desc\\ *>, respectively.  I<chardata> points to "
16596 "a buffer of I<char [charcount]>.  This is an output buffer for B<GIO_FONTX> "
16597 "and an input buffer for B<PIO_FONTX>."
16598 msgstr ""
16599 "B<GIO_FONTX>, B<PIO_FONTX> はそれぞれ I<struct console_font_desc\\ *> と "
16600 "I<const struct console_font_desc\\ *> を使用します。 I<chardata> は I<char "
16601 "[charcount]> バッファーへのポインターです。 これは B<GIO_FONTX> の出力バッ"
16602 "ファーと B<PIO_FONTX> の入力バッファーです。"
16603
16604 #. type: Plain text
16605 #: build/C/man2/ioctl_list.2:875
16606 msgid ""
16607 "B<GIO_UNIMAP> and B<PIO_UNIMAP> take a I<struct unimapdesc\\ *> or a I<const "
16608 "struct unimapdesc\\ *>, respectively.  I<entries> points to a buffer of "
16609 "I<struct unipair [entry_ct]>.  This is an output buffer for B<GIO_UNIMAP> "
16610 "and an input buffer for B<PIO_UNIMAP>."
16611 msgstr ""
16612 "B<GIO_UNIMAP>, B<PIO_UNIMAP> はそれぞれ I<struct unimapdesc\\ *> と I<const "
16613 "struct unimapdesc\\ *> を使用します。 I<entries> は I<struct unipair "
16614 "[entry_ct]> バッファーへのポインターです。 これは B<GIO_UNIMAP> の出力バッ"
16615 "ファーと B<PIO_UNIMAP> の入力バッファーです。"
16616
16617 #. type: Plain text
16618 #: build/C/man2/ioctl_list.2:879
16619 msgid ""
16620 "KDADDIO, KDDELIO, KDDISABIO, and KDENABIO enable or disable access to I/O "
16621 "ports.  They are essentially alternate interfaces to 'ioperm'."
16622 msgstr ""
16623 "KDADDIO, KDDELIO, KDDISABIO, KDENABIO は I/O ポートへのアクセスを 可能/不可能"
16624 "にします。これらは本質的に、'ioperm' への別の インターフェースです。"
16625
16626 #. type: Plain text
16627 #: build/C/man2/ioctl_list.2:885
16628 msgid ""
16629 "B<KDMAPDISP> and B<KDUNMAPDISP> enable or disable memory mappings or I/O "
16630 "port access.  They are not implemented in the kernel."
16631 msgstr ""
16632 "B<KDMAPDISP>, B<KDUNMAPDISP> はメモリーマッピングや I/O ポートへのアクセスを"
16633 "可能/不可能にします。 これらはカーネルに実装されていません。"
16634
16635 #. type: Plain text
16636 #: build/C/man2/ioctl_list.2:893
16637 msgid ""
16638 "B<SCSI_IOCTL_PROBE_HOST> takes an input pointer I<const int\\ *>, which is a "
16639 "length.  It uses the same pointer as an output pointer to a I<char []> "
16640 "buffer of this length."
16641 msgstr ""
16642 "B<SCSI_IOCTL_PROBE_HOST> は入力ポインター I<const int\\ *> を大きさとして使用"
16643 "します。これは同じ大きさの I<char []> バッファー への出力ポインターとしても使"
16644 "用します。"
16645
16646 #. type: Plain text
16647 #: build/C/man2/ioctl_list.2:899
16648 msgid ""
16649 "B<SIOCADDRT> and B<SIOCDELRT> take an input pointer whose type depends on "
16650 "the protocol:"
16651 msgstr ""
16652 "B<SIOCADDRT>, B<SIOCDELRT> は型が以下のプロトコルに依存する入力ポインターを使"
16653 "用します:"
16654
16655 #. type: Plain text
16656 #: build/C/man2/ioctl_list.2:904
16657 #, no-wrap
16658 msgid ""
16659 "    Most protocols      const struct rtentry *\n"
16660 "    AX.25               const struct ax25_route *\n"
16661 "    NET/ROM             const struct nr_route_struct *\n"
16662 msgstr ""
16663 "    Most protocols      const struct rtentry *\n"
16664 "    AX.25               const struct ax25_route *\n"
16665 "    NET/ROM             const struct nr_route_struct *\n"
16666
16667 #. type: Plain text
16668 #: build/C/man2/ioctl_list.2:915
16669 msgid ""
16670 "B<SIOCGIFCONF> takes a I<struct ifconf\\ *>.  The I<ifc_buf> field points to "
16671 "a buffer of length I<ifc_len> bytes, into which the kernel writes a list of "
16672 "type I<struct ifreq []>."
16673 msgstr ""
16674 "B<SIOCGIFCONF> は I<struct ifconf\\ *> を使用します。この I<ifc_buf> フィール"
16675 "ドは長さ I<ifc_len> バイトのバッファーへのポインターです。 これにカーネルが "
16676 "I<struct ifreq []> 型のリストへ書き込みます。"
16677
16678 #. type: Plain text
16679 #: build/C/man2/ioctl_list.2:918
16680 msgid ""
16681 "B<SIOCSIFHWADDR> takes an input pointer whose type depends on the protocol:"
16682 msgstr ""
16683 "B<SIOCSIFHWADDR> は型が以下のプロトコルに依存する入力ポインターを使用します:"
16684
16685 #. type: Plain text
16686 #: build/C/man2/ioctl_list.2:922
16687 #, no-wrap
16688 msgid ""
16689 "    Most protocols      const struct ifreq *\n"
16690 "    AX.25               const char [AX25_ADDR_LEN]\n"
16691 msgstr ""
16692 "    Most protocols      const struct ifreq *\n"
16693 "    AX.25               const char [AX25_ADDR_LEN]\n"
16694
16695 #. type: Plain text
16696 #: build/C/man2/ioctl_list.2:937
16697 msgid ""
16698 "B<TIOCLINUX> takes a I<const char\\ *>.  It uses this to distinguish several "
16699 "independent subcases.  In the table below, I<N + foo> means I<foo> after an "
16700 "N-byte pad.  I<struct selection> is implicitly defined in I<drivers/char/"
16701 "selection.c>"
16702 msgstr ""
16703 "B<TIOCLINUX> は I<const char\\ *> を使用します。このポインターをいくつかの 独"
16704 "立したサブクラスを識別する為に使用します。以下のテーブルの中で、 I<N + foo> "
16705 "は N バイトの詰めものの後にある I<foo> を意味します。 I<struct selection> は"
16706 "暗黙的に I<drivers/char/selection.c> の中で定義されています。"
16707
16708 #. type: Plain text
16709 #: build/C/man2/ioctl_list.2:946
16710 #, no-wrap
16711 msgid ""
16712 "    TIOCLINUX-2         1 + const struct selection *\n"
16713 "    TIOCLINUX-3         void\n"
16714 "    TIOCLINUX-4         void\n"
16715 "    TIOCLINUX-5         4 + const struct { long [8]; } *\n"
16716 "    TIOCLINUX-6         char *\n"
16717 "    TIOCLINUX-7         char *\n"
16718 "    TIOCLINUX-10        1 + const char *\n"
16719 msgstr ""
16720 "    TIOCLINUX-2         1 + const struct selection *\n"
16721 "    TIOCLINUX-3         void\n"
16722 "    TIOCLINUX-4         void\n"
16723 "    TIOCLINUX-5         4 + const struct { long [8]; } *\n"
16724 "    TIOCLINUX-6         char *\n"
16725 "    TIOCLINUX-7         char *\n"
16726 "    TIOCLINUX-10        1 + const char *\n"
16727
16728 #. type: Plain text
16729 #: build/C/man2/ioctl_list.2:949
16730 msgid "// Duplicate ioctls"
16731 msgstr "// Duplicate ioctls"
16732
16733 #. type: Plain text
16734 #: build/C/man2/ioctl_list.2:954
16735 msgid ""
16736 "This list does not include ioctls in the range B<SIOCDEVPRIVATE> and "
16737 "B<SIOCPROTOPRIVATE>."
16738 msgstr ""
16739 "このリストは B<SIOCDEVPRIVATE> から B<SIOCPROTOPRIVATE> の範囲の ioctl を含ん"
16740 "でいません。"
16741
16742 #. type: tbl table
16743 #: build/C/man2/ioctl_list.2:956
16744 #, no-wrap
16745 msgid "0x00000001\tFDSETPRM\tFIBMAP\n"
16746 msgstr "0x00000001\tFDSETPRM\tFIBMAP\n"
16747
16748 #. type: tbl table
16749 #: build/C/man2/ioctl_list.2:957
16750 #, no-wrap
16751 msgid "0x00000002\tFDDEFPRM\tFIGETBSZ\n"
16752 msgstr "0x00000002\tFDDEFPRM\tFIGETBSZ\n"
16753
16754 #. type: tbl table
16755 #: build/C/man2/ioctl_list.2:958
16756 #, no-wrap
16757 msgid "0x00005382\tCDROMAUDIOBUFSIZ\tSCSI_IOCTL_GET_IDLUN\n"
16758 msgstr "0x00005382\tCDROMAUDIOBUFSIZ\tSCSI_IOCTL_GET_IDLUN\n"
16759
16760 #. type: tbl table
16761 #: build/C/man2/ioctl_list.2:959
16762 #, no-wrap
16763 msgid "0x00005402\tSNDCTL_TMR_START\tTCSETS\n"
16764 msgstr "0x00005402\tSNDCTL_TMR_START\tTCSETS\n"
16765
16766 #. type: tbl table
16767 #: build/C/man2/ioctl_list.2:960
16768 #, no-wrap
16769 msgid "0x00005403\tSNDCTL_TMR_STOP\tTCSETSW\n"
16770 msgstr "0x00005403\tSNDCTL_TMR_STOP\tTCSETSW\n"
16771
16772 #. type: tbl table
16773 #: build/C/man2/ioctl_list.2:961
16774 #, no-wrap
16775 msgid "0x00005404\tSNDCTL_TMR_CONTINUE\tTCSETSF\n"
16776 msgstr "0x00005404\tSNDCTL_TMR_CONTINUE\tTCSETSF\n"
16777
16778 #. type: Plain text
16779 #: build/C/man2/ioctl_list.2:965
16780 msgid "B<ioctl>(2)"
16781 msgstr "B<ioctl>(2)"
16782
16783 #. type: TH
16784 #: build/C/man2/ioperm.2:34
16785 #, no-wrap
16786 msgid "IOPERM"
16787 msgstr "IOPERM"
16788
16789 #. type: Plain text
16790 #: build/C/man2/ioperm.2:37
16791 msgid "ioperm - set port input/output permissions"
16792 msgstr "ioperm - ポートの入出力許可を設定する"
16793
16794 #. type: Plain text
16795 #: build/C/man2/ioperm.2:40
16796 msgid "B<#include E<lt>sys/io.hE<gt>> /* for glibc */"
16797 msgstr "B<#include E<lt>sys/io.hE<gt>> /* for glibc */"
16798
16799 #. type: Plain text
16800 #: build/C/man2/ioperm.2:42
16801 msgid ""
16802 "B<int ioperm(unsigned long >I<from>B<, unsigned long >I<num>B<, int "
16803 ">I<turn_on>B<);>"
16804 msgstr ""
16805 "B<int ioperm(unsigned long >I<from>B<, unsigned long >I<num>B<, int "
16806 ">I<turn_on>B<);>"
16807
16808 #. type: Plain text
16809 #: build/C/man2/ioperm.2:56
16810 msgid ""
16811 "B<ioperm>()  sets the port access permission bits for the calling thread for "
16812 "I<num> bits starting from port address I<from>.  If I<turn_on> is nonzero, "
16813 "then permission for the specified bits is enabled; otherwise it is "
16814 "disabled.  If I<turn_on> is nonzero, the calling thread must be privileged "
16815 "(B<CAP_SYS_RAWIO>)."
16816 msgstr ""
16817 "B<ioperm>()  は、引き数 I<from> の I/O ポートアドレスから I<num> ビット分の領"
16818 "域に対する、呼び出し元スレッドのアクセス許可ビットを設定する。 I<turn_on> が "
16819 "0 以外の場合、指定されたビットに対応する許可が有効になる。 I<turn_on> が 0 以"
16820 "外の場合、呼び出し元プロセスは特権 (B<CAP_SYS_RAWIO>)  を持っていなければなら"
16821 "ない。"
16822
16823 #. type: Plain text
16824 #: build/C/man2/ioperm.2:65
16825 msgid ""
16826 "Before Linux 2.6.8, only the first 0x3ff I/O ports could be specified in "
16827 "this manner.  For more ports, the B<iopl>(2)  system call had to be used "
16828 "(with a I<level> argument of 3).  Since Linux 2.6.8, 65,536 I/O ports can be "
16829 "specified."
16830 msgstr ""
16831 "Linux 2.6.8 より前のバージョンでは、この方法で設定できるのは 0x3ff 番地まで"
16832 "の I/Oポートに限られていた。これよりも大きなアドレスのポートに対しては "
16833 "B<iopl>(2) 関数を使わなければならなかった。Linux 2.6.8 以降では、65,536 個の "
16834 "I/O ポートを指定できる。"
16835
16836 #. type: Plain text
16837 #: build/C/man2/ioperm.2:75
16838 msgid ""
16839 "Permissions are not inherited by the child created by B<fork>(2); following "
16840 "a B<fork>(2)  the child must turn on those permissions that it needs.  "
16841 "Permissions are preserved across B<execve>(2); this is useful for giving "
16842 "port access permissions to unprivileged programs."
16843 msgstr ""
16844 "アクセス権は B<fork>(2)  で作成された子プロセスには継承されない。子プロセスで"
16845 "は、B<fork>(2) の後で必要なアクセス権を有効にしなければならない。 "
16846 "B<execve>(2)  の前後でアクセス権は保存される。この機能は 非特権プログラムに"
16847 "ポートへのアクセス権を 与えるのに使用できる。"
16848
16849 #. type: Plain text
16850 #: build/C/man2/ioperm.2:79
16851 msgid ""
16852 "This call is mostly for the i386 architecture.  On many other architectures "
16853 "it does not exist or will always return an error."
16854 msgstr ""
16855 "このシステムコールはほとんど i386 アーキテクチャーのためだけのものである。 そ"
16856 "の他の多くのアーキテクチャーでは存在しないか、常にエラーを返す。"
16857
16858 #. type: Plain text
16859 #: build/C/man2/ioperm.2:91
16860 msgid "Invalid values for I<from> or I<num>."
16861 msgstr "I<from> または I<num> の値が不正である。"
16862
16863 #. type: Plain text
16864 #: build/C/man2/ioperm.2:94
16865 msgid "(on PowerPC) This call is not supported."
16866 msgstr "(PowerPC で) このシステムコールはサポートしていない。"
16867
16868 #.  Could not allocate I/O bitmap.
16869 #. type: Plain text
16870 #: build/C/man2/ioperm.2:98
16871 msgid "Out of memory."
16872 msgstr "メモリー不足。"
16873
16874 #. type: Plain text
16875 #: build/C/man2/ioperm.2:101
16876 msgid "The calling thread has insufficient privilege."
16877 msgstr "呼び出し元スレッドに十分な権限がなかった。"
16878
16879 #. type: Plain text
16880 #: build/C/man2/ioperm.2:105
16881 msgid ""
16882 "B<ioperm>()  is Linux-specific and should not be used in programs intended "
16883 "to be portable."
16884 msgstr ""
16885 "B<ioperm>()  は Linux 特有の関数であり、移植を意図したプログラムで 使用しては"
16886 "ならない。"
16887
16888 #. type: Plain text
16889 #: build/C/man2/ioperm.2:109
16890 msgid ""
16891 "The I</proc/ioports> file shows the I/O ports that are currently allocated "
16892 "on the system."
16893 msgstr ""
16894 "I</proc/ioports> ファイルには、現在このシステムに割り当てられている I/O ポー"
16895 "トが表示される。"
16896
16897 #. type: Plain text
16898 #: build/C/man2/ioperm.2:117
16899 msgid ""
16900 "Glibc has an B<ioperm>()  prototype both in I<E<lt>sys/io.hE<gt>> and in "
16901 "I<E<lt>sys/perm.hE<gt>>.  Avoid the latter, it is available on i386 only."
16902 msgstr ""
16903 "glibc2 には I<E<lt>sys/io.hE<gt>> と I<E<lt>sys/perm.hE<gt>> の両方に "
16904 "B<ioperm>() のプロトタイプがある。 後者は i386 のみで利用可能なので、使用すべ"
16905 "きではない。"
16906
16907 #. type: Plain text
16908 #: build/C/man2/ioperm.2:121
16909 msgid "B<iopl>(2), B<outb>(2), B<capabilities>(7)"
16910 msgstr "B<iopl>(2), B<outb>(2), B<capabilities>(7)"
16911
16912 #. type: TH
16913 #: build/C/man3/lockf.3:28
16914 #, no-wrap
16915 msgid "LOCKF"
16916 msgstr "LOCKF"
16917
16918 #. type: TH
16919 #: build/C/man3/lockf.3:28
16920 #, no-wrap
16921 msgid "2014-06-13"
16922 msgstr "2014-06-13"
16923
16924 #. type: Plain text
16925 #: build/C/man3/lockf.3:31
16926 msgid "lockf - apply, test or remove a POSIX lock on an open file"
16927 msgstr ""
16928 "lockf - オープンされたファイルに対する POSIX ロックの適用・テスト・解除を行う"
16929
16930 #. type: Plain text
16931 #: build/C/man3/lockf.3:35
16932 msgid "B<int lockf(int >I<fd>B<, int >I<cmd>B<, off_t >I<len>B<);>"
16933 msgstr "B<int lockf(int >I<fd>B<, int >I<cmd>B<, off_t >I<len>B<);>"
16934
16935 #. type: Plain text
16936 #: build/C/man3/lockf.3:42
16937 msgid "B<lockf>():"
16938 msgstr "B<lockf>():"
16939
16940 #. type: Plain text
16941 #: build/C/man3/lockf.3:46
16942 msgid ""
16943 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
16944 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
16945 msgstr ""
16946 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
16947 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
16948
16949 #. type: Plain text
16950 #: build/C/man3/lockf.3:69
16951 msgid ""
16952 "Apply, test or remove a POSIX lock on a section of an open file.  The file "
16953 "is specified by I<fd>, a file descriptor open for writing, the action by "
16954 "I<cmd>, and the section consists of byte positions I<pos>..I<pos>+I<len>-1 "
16955 "if I<len> is positive, and I<pos>-I<len>..I<pos>-1 if I<len> is negative, "
16956 "where I<pos> is the current file position, and if I<len> is zero, the "
16957 "section extends from the current file position to infinity, encompassing the "
16958 "present and future end-of-file positions.  In all cases, the section may "
16959 "extend past current end-of-file."
16960 msgstr ""
16961 "オープンされたファイルのセクションに対して、 POSIX ロックの適用・テスト・解除"
16962 "をする。 ファイルは I<fd> で指定される。 I<fd> は書き込みのためにオープンした"
16963 "ファイルディスクリプターである。 アクションは I<cmd> で指定される。 I<pos> を"
16964 "現在のファイル位置とすると、 I<len> が正の場合、セクションはバイト位置 "
16965 "I<pos>..I<pos>+I<len>-1 となり、 I<len> が負の場合、セクションはバイト位置 "
16966 "I<pos>-I<len>..I<pos>-1 となる。 I<len> が 0 の場合、セクションは現在のファイ"
16967 "ル位置から無限大までとなる (つまり現在の、あるいは変更された場合は将来の、"
16968 "ファイル終端位置まで)。 どの場合においても、セクションは以前のファイル終端よ"
16969 "りも拡大されうる。"
16970
16971 #. type: Plain text
16972 #: build/C/man3/lockf.3:84
16973 msgid ""
16974 "On Linux, B<lockf>()  is just an interface on top of B<fcntl>(2)  locking.  "
16975 "Many other systems implement B<lockf>()  in this way, but note that "
16976 "POSIX.1-2001 leaves the relationship between B<lockf>()  and B<fcntl>(2)  "
16977 "locks unspecified.  A portable application should probably avoid mixing "
16978 "calls to these interfaces."
16979 msgstr ""
16980 "Linux では、 B<lockf>()  は単に B<fcntl>(2)  のロックへのインターフェースであ"
16981 "る。 多くの他のシステムで B<lockf>()  はこのように実装されているが、 "
16982 "POSIX.1-2001 では B<lockf>()  と B<fcntl>(2)  のロックとの関係は規定されてい"
16983 "ない。 おそらく、移植性が必要なアプリケーションでは、 B<lockf>()  と "
16984 "B<fcntl>(2)  のロックを混ぜて呼び出すのは避けるべきであろう。"
16985
16986 #. type: Plain text
16987 #: build/C/man3/lockf.3:86
16988 msgid "Valid operations are given below:"
16989 msgstr "有効なオプションを以下に挙げる。"
16990
16991 #. type: TP
16992 #: build/C/man3/lockf.3:86
16993 #, no-wrap
16994 msgid "B<F_LOCK>"
16995 msgstr "B<F_LOCK>"
16996
16997 #. type: Plain text
16998 #: build/C/man3/lockf.3:96
16999 msgid ""
17000 "Set an exclusive lock on the specified section of the file.  If (part of) "
17001 "this section is already locked, the call blocks until the previous lock is "
17002 "released.  If this section overlaps an earlier locked section, both are "
17003 "merged.  File locks are released as soon as the process holding the locks "
17004 "closes some file descriptor for the file.  A child process does not inherit "
17005 "these locks."
17006 msgstr ""
17007 "ファイルの指定されたセクションに排他ロックを設定する。 そのセクション (の一"
17008 "部) が既にロックされていた場合、 前のロックが解除されるまで関数の呼び出しがブ"
17009 "ロックされる。 このセクションが前にロックされているセクションと重なった場"
17010 "合、 2 つのセクションは結合される。 ロックを保持しているプロセスが、 そのファ"
17011 "イルのファイルディスクリプターをクローズすると、 ファイルロックは解放され"
17012 "る。 子プロセスはロックを継承しない。"
17013
17014 #. type: TP
17015 #: build/C/man3/lockf.3:96
17016 #, no-wrap
17017 msgid "B<F_TLOCK>"
17018 msgstr "B<F_TLOCK>"
17019
17020 #. type: Plain text
17021 #: build/C/man3/lockf.3:102
17022 msgid ""
17023 "Same as B<F_LOCK> but the call never blocks and returns an error instead if "
17024 "the file is already locked."
17025 msgstr ""
17026 "B<F_LOCK> と同様であるが、ファイルが既にロックされている場合、 関数の呼び出し"
17027 "はブロックを行わずにエラーを返す。"
17028
17029 #. type: TP
17030 #: build/C/man3/lockf.3:102
17031 #, no-wrap
17032 msgid "B<F_ULOCK>"
17033 msgstr "B<F_ULOCK>"
17034
17035 #. type: Plain text
17036 #: build/C/man3/lockf.3:106
17037 msgid ""
17038 "Unlock the indicated section of the file.  This may cause a locked section "
17039 "to be split into two locked sections."
17040 msgstr ""
17041 "ファイルの指定されたセクションのロックを解除する。 これによりロックされたセク"
17042 "ションが 2 つに分割されるかもしれない。"
17043
17044 #. type: TP
17045 #: build/C/man3/lockf.3:106
17046 #, no-wrap
17047 msgid "B<F_TEST>"
17048 msgstr "B<F_TEST>"
17049
17050 #. type: Plain text
17051 #: build/C/man3/lockf.3:116
17052 msgid ""
17053 "Test the lock: return 0 if the specified section is unlocked or locked by "
17054 "this process; return -1, set I<errno> to B<EAGAIN> (B<EACCES> on some other "
17055 "systems), if another process holds a lock."
17056 msgstr ""
17057 "次のようにロックのテストをする。 指定されたセクションがロックされていない"
17058 "か、 このプロセスによりロックされている場合、0 を返す。 他のプロセスがロック"
17059 "を保持している場合、-1 を返し、 I<errno> を B<EAGAIN> (いくつかの他のシステム"
17060 "では B<EACCES>)  に設定する。"
17061
17062 #. type: Plain text
17063 #: build/C/man3/lockf.3:130
17064 msgid ""
17065 "The file is locked and B<F_TLOCK> or B<F_TEST> was specified, or the "
17066 "operation is prohibited because the file has been memory-mapped by another "
17067 "process."
17068 msgstr ""
17069 "ロックされたファイルに対して、 B<F_TLOCK> または B<F_TEST> が指定されてい"
17070 "る。 または、ファイルが他のプロセスによりメモリーマップされており、 指定され"
17071 "た操作が禁止されている。"
17072
17073 #. type: Plain text
17074 #: build/C/man3/lockf.3:142
17075 msgid ""
17076 "I<fd> is not an open file descriptor; or I<cmd> is B<F_LOCK> or B<F_TLOCK> "
17077 "and I<fd> is not a writable file descriptor."
17078 msgstr ""
17079 "I<fd> がオープンされたファイルのディスクリプターではない。 または、 I<cmd> "
17080 "が B<F_LOCK> か B<F_TLOCK> で、 I<fd> が書き込み可能なファイルディスクリプ"
17081 "ターでない。"
17082
17083 #. type: Plain text
17084 #: build/C/man3/lockf.3:147
17085 msgid ""
17086 "The command was B<F_LOCK> and this lock operation would cause a deadlock."
17087 msgstr ""
17088 "コマンドが B<F_LOCK> であり、このロック操作を行うとデッドロックが発生してしま"
17089 "う。"
17090
17091 #. type: Plain text
17092 #: build/C/man3/lockf.3:151
17093 msgid "An invalid operation was specified in I<cmd>."
17094 msgstr "I<cmd> に無効な操作が指定された。"
17095
17096 #. type: Plain text
17097 #: build/C/man3/lockf.3:154
17098 msgid "Too many segment locks open, lock table is full."
17099 msgstr "非常に多くのセグメントロックが開かれ、ロックテーブルが一杯である。"
17100
17101 #. type: Plain text
17102 #: build/C/man3/lockf.3:159
17103 msgid "The B<lockf>()  function is thread-safe."
17104 msgstr "B<lockf>() 関数はスレッドセーフである。"
17105
17106 #. type: Plain text
17107 #: build/C/man3/lockf.3:161
17108 msgid "SVr4, POSIX.1-2001."
17109 msgstr "SVr4, POSIX.1-2001."
17110
17111 #. type: Plain text
17112 #: build/C/man3/lockf.3:164
17113 msgid "B<fcntl>(2), B<flock>(2)"
17114 msgstr "B<fcntl>(2), B<flock>(2)"
17115
17116 #. type: Plain text
17117 #: build/C/man3/lockf.3:176
17118 msgid ""
17119 "I<locks.txt> and I<mandatory-locking.txt> in the Linux kernel source "
17120 "directory I<Documentation/filesystems> (on older kernels, these files are "
17121 "directly under the I<Documentation> directory, and I<mandatory-locking.txt> "
17122 "is called I<mandatory.txt>)"
17123 msgstr ""
17124 "Linux カーネルソースの I<Documentation/filesystems> ディレクトリにある "
17125 "I<locks.txt> と I<mandatory-locking.txt> (以前のカーネルでは、これらのファイ"
17126 "ルは I<Documentation> ディレクトリ直下にあり、 I<mandatory-locking.txt> は "
17127 "I<mandatory.txt> という名前であった。)"
17128
17129 #. type: TH
17130 #: build/C/man2/mincore.2:34
17131 #, no-wrap
17132 msgid "MINCORE"
17133 msgstr "MINCORE"
17134
17135 #. type: TH
17136 #: build/C/man2/mincore.2:34
17137 #, no-wrap
17138 msgid "2008-04-22"
17139 msgstr "2008-04-22"
17140
17141 #. type: Plain text
17142 #: build/C/man2/mincore.2:37
17143 msgid "mincore - determine whether pages are resident in memory"
17144 msgstr "mincore - ページがメモリー内にあるかどうかを判定する"
17145
17146 #. type: Plain text
17147 #: build/C/man2/mincore.2:41
17148 msgid "B<#include E<lt>sys/mman.hE<gt>>"
17149 msgstr "B<#include E<lt>sys/mman.hE<gt>>"
17150
17151 #. type: Plain text
17152 #: build/C/man2/mincore.2:43
17153 msgid ""
17154 "B<int mincore(void *>I<addr>B<, size_t >I<length>B<, unsigned char "
17155 "*>I<vec>B<);>"
17156 msgstr ""
17157 "B<int mincore(void *>I<addr>B<, size_t >I<length>B<, unsigned char "
17158 "*>I<vec>B<);>"
17159
17160 #. type: Plain text
17161 #: build/C/man2/mincore.2:51
17162 msgid "B<mincore>(): _BSD_SOURCE || _SVID_SOURCE"
17163 msgstr "B<mincore>(): _BSD_SOURCE || _SVID_SOURCE"
17164
17165 #. type: Plain text
17166 #: build/C/man2/mincore.2:62
17167 msgid ""
17168 "B<mincore>()  returns a vector that indicates whether pages of the calling "
17169 "process's virtual memory are resident in core (RAM), and so will not cause a "
17170 "disk access (page fault) if referenced.  The kernel returns residency "
17171 "information about the pages starting at the address I<addr>, and continuing "
17172 "for I<length> bytes."
17173 msgstr ""
17174 "B<mincore>()  は、呼び出し元プロセスの仮想メモリーのページがコア (RAM) 内に存"
17175 "在し、 ページ参照時にディスクアクセス (ページフォールト) を起こさないか どう"
17176 "かを示すベクトルを返す。カーネルは、アドレス I<addr> から始まる I<length> バ"
17177 "イトの範囲のページに関する存在情報を返す。"
17178
17179 #. type: Plain text
17180 #: build/C/man2/mincore.2:76
17181 msgid ""
17182 "The I<addr> argument must be a multiple of the system page size.  The "
17183 "I<length> argument need not be a multiple of the page size, but since "
17184 "residency information is returned for whole pages, I<length> is effectively "
17185 "rounded up to the next multiple of the page size.  One may obtain the page "
17186 "size (B<PAGE_SIZE>)  using I<sysconf(_SC_PAGESIZE)>."
17187 msgstr ""
17188 "I<addr> 引き数はシステムのページサイズの倍数でなければならない。 I<length> 引"
17189 "き数はページサイズの倍数である必要はないが、 ページ全体に関する存在情報が返さ"
17190 "れるので、事実上 I<length> はページサイズの倍数に切り上げられることになる。 "
17191 "ページサイズ (B<PAGE_SIZE>)  は I<sysconf(_SC_PAGESIZE)> を使って入手できる。"
17192
17193 #. type: Plain text
17194 #: build/C/man2/mincore.2:94
17195 msgid ""
17196 "The I<vec> argument must point to an array containing at least I<(length"
17197 "+PAGE_SIZE-1) / PAGE_SIZE> bytes.  On return, the least significant bit of "
17198 "each byte will be set if the corresponding page is currently resident in "
17199 "memory, and be clear otherwise.  (The settings of the other bits in each "
17200 "byte are undefined; these bits are reserved for possible later use.)  Of "
17201 "course the information returned in I<vec> is only a snapshot: pages that are "
17202 "not locked in memory can come and go at any moment, and the contents of "
17203 "I<vec> may already be stale by the time this call returns."
17204 msgstr ""
17205 "I<vec> 引き数は、少なくとも I<(length+PAGE_SIZE-1) / PAGE_SIZE> バイトが格納"
17206 "できる配列を指していなければならない。 この呼び出しが返るとき、 各バイトの最"
17207 "下位ビットは、対応するページがメモリー内にそのとき存在すれば セットされ、そう"
17208 "でない場合はクリアされる (各バイトのその他のビットは未定義であり、これらの"
17209 "ビットは将来の使用に そなえて予約されている)。 もちろん、 I<vec> で返された情"
17210 "報はスナップショットでしかない。 メモリー内にロックされていないページは、任意"
17211 "の時点でメモリー内に 入ったり出たりでき、この呼び出しが返るときには I<vec> の"
17212 "内容はすでに古くなっているかもしれない。"
17213
17214 #. type: Plain text
17215 #: build/C/man2/mincore.2:101
17216 msgid ""
17217 "On success, B<mincore>()  returns zero.  On error, -1 is returned, and "
17218 "I<errno> is set appropriately."
17219 msgstr ""
17220 "成功した場合、 B<mincore>()  は 0 を返す。 エラーの場合は -1 を返して、 "
17221 "I<errno> を適切な値に設定する。"
17222
17223 #. type: Plain text
17224 #: build/C/man2/mincore.2:104
17225 msgid "B<EAGAIN> kernel is temporarily out of resources."
17226 msgstr "B<EAGAIN> カーネルが一時的にリソースを使い果たしている。"
17227
17228 #. type: Plain text
17229 #: build/C/man2/mincore.2:108
17230 msgid "I<vec> points to an invalid address."
17231 msgstr "I<vec> が無効なアドレスを指している。"
17232
17233 #. type: Plain text
17234 #: build/C/man2/mincore.2:112
17235 msgid "I<addr> is not a multiple of the page size."
17236 msgstr "I<addr> がページサイズの倍数でない。"
17237
17238 #. type: Plain text
17239 #: build/C/man2/mincore.2:124
17240 msgid ""
17241 "I<length> is greater than (I<TASK_SIZE> - I<addr>).  (This could occur if a "
17242 "negative value is specified for I<length>, since that value will be "
17243 "interpreted as a large unsigned integer.)  In Linux 2.6.11 and earlier, the "
17244 "error B<EINVAL> was returned for this condition."
17245 msgstr ""
17246 "I<length> が (I<TASK_SIZE> - I<addr>)  より大きい。 (I<length> に負の値が指定"
17247 "された場合、 その値が大きな符号なし整数として解釈されるために起こることがあ"
17248 "る。)  Linux 2.6.11 以前では、この条件の場合はエラー B<EINVAL> が返されてい"
17249 "た。"
17250
17251 #. type: Plain text
17252 #: build/C/man2/mincore.2:132
17253 msgid "I<addr> to I<addr> + I<length> contained unmapped memory."
17254 msgstr ""
17255 "I<addr> から I<addr> + I<length> の間にマップされていないメモリーがあった。"
17256
17257 #. type: Plain text
17258 #: build/C/man2/mincore.2:134
17259 msgid "Available since Linux 2.3.99pre1 and glibc 2.2."
17260 msgstr "Linux 2.3.99pre1 と glibc 2.2 から利用可能である。"
17261
17262 #.  It is on at least NetBSD, FreeBSD, OpenBSD, Solaris 8,
17263 #.  AIX 5.1, SunOS 4.1
17264 #.  .SH HISTORY
17265 #.  The
17266 #.  .BR mincore ()
17267 #.  function first appeared in 4.4BSD.
17268 #. type: Plain text
17269 #: build/C/man2/mincore.2:144
17270 msgid ""
17271 "B<mincore>()  is not specified in POSIX.1-2001, and it is not available on "
17272 "all UNIX implementations."
17273 msgstr ""
17274 "B<mincore>()  は POSIX.1-2001 に記述されておらず、 全ての UNIX 実装で利用可能"
17275 "であるわけではない。"
17276
17277 #.  Linux (up to now, 2.6.5),
17278 #.  .B mincore
17279 #.  does not return correct information for MAP_PRIVATE mappings:
17280 #.  for a MAP_PRIVATE file mapping,
17281 #.  .B mincore
17282 #.  returns the residency of the file pages, rather than any
17283 #.  modified process-private pages that have been copied on write;
17284 #.  for a MAP_PRIVATE mapping of
17285 #.  .IR /dev/zero ,
17286 #.  .B mincore
17287 #.  always reports pages as nonresident;
17288 #.  and for a MAP_PRIVATE, MAP_ANONYMOUS mapping,
17289 #.  .B mincore
17290 #.  always fails with the error
17291 #.  .BR ENOMEM .
17292 #. type: Plain text
17293 #: build/C/man2/mincore.2:166
17294 msgid ""
17295 "Before kernel 2.6.21, B<mincore>()  did not return correct information for "
17296 "B<MAP_PRIVATE> mappings, or for nonlinear mappings (established using "
17297 "B<remap_file_pages>(2))."
17298 msgstr ""
17299 "カーネル 2.6.21 より前は、 B<mincore>()  は、 B<MAP_PRIVATE> マッピングや非線"
17300 "形マッピング (B<remap_file_pages>(2)  を使って作成される) について正しい情報"
17301 "を返さなかった。"
17302
17303 #. type: Plain text
17304 #: build/C/man2/mincore.2:169
17305 msgid "B<mlock>(2), B<mmap>(2)"
17306 msgstr "B<mlock>(2), B<mmap>(2)"
17307
17308 #. type: TH
17309 #: build/C/man2/mkdir.2:11
17310 #, no-wrap
17311 msgid "MKDIR"
17312 msgstr "MKDIR"
17313
17314 #. type: Plain text
17315 #: build/C/man2/mkdir.2:14
17316 msgid "mkdir, mkdirat - create a directory"
17317 msgstr "mkdir, mkdirat - ディレクトリを作成する"
17318
17319 #.  .B #include <unistd.h>
17320 #. type: Plain text
17321 #: build/C/man2/mkdir.2:19
17322 #, no-wrap
17323 msgid ""
17324 "B<#include E<lt>sys/stat.hE<gt>>\n"
17325 "B<#include E<lt>sys/types.hE<gt>>\n"
17326 msgstr ""
17327 "B<#include E<lt>sys/stat.hE<gt>>\n"
17328 "B<#include E<lt>sys/types.hE<gt>>\n"
17329
17330 #. type: Plain text
17331 #: build/C/man2/mkdir.2:21
17332 #, no-wrap
17333 msgid "B<int mkdir(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17334 msgstr "B<int mkdir(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17335
17336 #. type: Plain text
17337 #: build/C/man2/mkdir.2:24
17338 #, no-wrap
17339 msgid ""
17340 "B<#include E<lt>fcntl.hE<gt>           >/* Definition of AT_* constants */\n"
17341 "B<#include E<lt>sys/stat.hE<gt>>\n"
17342 msgstr ""
17343 "B<#include E<lt>fcntl.hE<gt>           >/* AT_* 定数の定義 */\n"
17344 "B<#include E<lt>sys/stat.hE<gt>>\n"
17345
17346 #. type: Plain text
17347 #: build/C/man2/mkdir.2:26
17348 #, no-wrap
17349 msgid "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17350 msgstr "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
17351
17352 #. type: Plain text
17353 #: build/C/man2/mkdir.2:34
17354 msgid "B<mkdirat>():"
17355 msgstr "B<mkdirat>():"
17356
17357 #. type: Plain text
17358 #: build/C/man2/mkdir.2:51
17359 msgid "B<mkdir>()  attempts to create a directory named I<pathname>."
17360 msgstr ""
17361 "B<mkdir>()  は I<pathname> で示される名前のディレクトリを作成しようとする。"
17362
17363 #. type: Plain text
17364 #: build/C/man2/mkdir.2:61
17365 msgid ""
17366 "The argument I<mode> specifies the permissions to use.  It is modified by "
17367 "the process's I<umask> in the usual way: the permissions of the created "
17368 "directory are (I<mode> & ~I<umask> & 0777).  Other mode bits of the created "
17369 "directory depend on the operating system.  For Linux, see below."
17370 msgstr ""
17371 "I<mode> 引き数は、作成されたディレクトリの許可属性を決定するのに使われる。 こ"
17372 "の値に、通常通りプロセスの I<umask> による修正が加えられる。 したがって、作成"
17373 "されたディレクトリの許可属性は (I<mode> & ~I<umask> & 0777)  となる。 作成さ"
17374 "れたディレクトリのその他のモードビットはオペレーティングシステムに 依存する。"
17375 "Linux の場合は、以下の通りである。"
17376
17377 #. type: Plain text
17378 #: build/C/man2/mkdir.2:71
17379 msgid ""
17380 "The newly created directory will be owned by the effective user ID of the "
17381 "process.  If the directory containing the file has the set-group-ID bit set, "
17382 "or if the filesystem is mounted with BSD group semantics (I<mount -o "
17383 "bsdgroups> or, synonymously I<mount -o grpid>), the new directory will "
17384 "inherit the group ownership from its parent; otherwise it will be owned by "
17385 "the effective group ID of the process."
17386 msgstr ""
17387 "新しく作成されたディレクトリの所有者はプロセスの実効ユーザー ID に設定され"
17388 "る。 新たに作成されたディレクトリが含まれる親ディレクトリに set group ID ビッ"
17389 "トがセットされていたり、ファイルシステムが BSD の グループセマンティクス "
17390 "(I<mount -o bsdgroups> あるいは、同じ意味の I<mount -o grpid>)  に従ってマウ"
17391 "ントされている場合には、 新たに作成されたディレクトリのグループ所有権は親ディ"
17392 "レクトリの ものが継承される (親ディレクトリと同じになる)。 それ以外の場合は、"
17393 "グループ所有権はプロセスの実効グループ ID となる。"
17394
17395 #. type: Plain text
17396 #: build/C/man2/mkdir.2:76
17397 msgid ""
17398 "If the parent directory has the set-group-ID bit set, then so will the newly "
17399 "created directory."
17400 msgstr ""
17401 "もし親ディレクトリに set group ID ビットがセットされていれば新しく作成される "
17402 "ディレクトリにも set group ID ビットがセットされる。"
17403
17404 #. type: SS
17405 #: build/C/man2/mkdir.2:76
17406 #, no-wrap
17407 msgid "mkdirat()"
17408 msgstr "mkdirat()"
17409
17410 #. type: Plain text
17411 #: build/C/man2/mkdir.2:82
17412 msgid ""
17413 "The B<mkdirat>()  system call operates in exactly the same way as "
17414 "B<mkdir>(), except for the differences described here."
17415 msgstr ""
17416 "B<mkdirat>() システムコールは B<mkdir>() と全く同様に動作するが、以下で説明す"
17417 "る点が異なる。"
17418
17419 #. type: Plain text
17420 #: build/C/man2/mkdir.2:92
17421 msgid ""
17422 "If the pathname given in I<pathname> is relative, then it is interpreted "
17423 "relative to the directory referred to by the file descriptor I<dirfd> "
17424 "(rather than relative to the current working directory of the calling "
17425 "process, as is done by B<mkdir>()  for a relative pathname)."
17426 msgstr ""
17427 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
17428 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
17429 "(B<mkdir>() に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
17430 "ワーキングディレクトリに対する相対パスではない)。"
17431
17432 #. type: Plain text
17433 #: build/C/man2/mkdir.2:104
17434 msgid ""
17435 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
17436 "then I<pathname> is interpreted relative to the current working directory of "
17437 "the calling process (like B<mkdir>())."
17438 msgstr ""
17439 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
17440 "の場合、 (B<mkdir>() と同様に) I<pathname> は呼び出したプロセスのカレントワー"
17441 "キングディレクトリに対する相対パスと解釈される。"
17442
17443 #. type: Plain text
17444 #: build/C/man2/mkdir.2:115
17445 msgid "See B<openat>(2)  for an explanation of the need for B<mkdirat>()."
17446 msgstr "B<mkdirat>() の必要性についての説明については B<openat>(2) を参照。"
17447
17448 #. type: Plain text
17449 #: build/C/man2/mkdir.2:122
17450 msgid ""
17451 "B<mkdir>()  and B<mkdirat>()  return zero on success, or -1 if an error "
17452 "occurred (in which case, I<errno> is set appropriately)."
17453 msgstr ""
17454 "B<mkdir>() と B<mkdirat>() は成功した場合 0 を、失敗した場合 -1 を返す (ま"
17455 "た、 I<errno> がエラーの内容にしたがって適切に設定される)。"
17456
17457 #. type: Plain text
17458 #: build/C/man2/mkdir.2:131
17459 msgid ""
17460 "The parent directory does not allow write permission to the process, or one "
17461 "of the directories in I<pathname> did not allow search permission.  (See "
17462 "also B<path_resolution>(7).)"
17463 msgstr ""
17464 "プロセスが親ディレクトリへの書き込み許可を持たない、もしくは I<pathname> 中の"
17465 "ディレクトリのどれかに検索許可属性が無い (B<path_resolution>(7)  も参照)。"
17466
17467 #. type: TP
17468 #: build/C/man2/mkdir.2:131
17469 #, no-wrap
17470 msgid "B<EDQUOT>"
17471 msgstr "B<EDQUOT>"
17472
17473 #. type: Plain text
17474 #: build/C/man2/mkdir.2:135
17475 msgid ""
17476 "The user's quota of disk blocks or inodes on the filesystem has been "
17477 "exhausted."
17478 msgstr ""
17479 "ディスクブロックか inode がそのファイルシステムのユーザークォータに達してい"
17480 "た。"
17481
17482 #. type: TP
17483 #: build/C/man2/mkdir.2:135
17484 #, no-wrap
17485 msgid "B<EEXIST>"
17486 msgstr "B<EEXIST>"
17487
17488 #. type: Plain text
17489 #: build/C/man2/mkdir.2:142
17490 msgid ""
17491 "I<pathname> already exists (not necessarily as a directory).  This includes "
17492 "the case where I<pathname> is a symbolic link, dangling or not."
17493 msgstr ""
17494 "I<pathname> が既に存在している(ただしそれがディレクトリであるとは限らない)。 "
17495 "I<pathname> がシンボリックリンクの場合も (その指定先が存在するかどうかに関ら"
17496 "ず)エラーになる。"
17497
17498 #. type: TP
17499 #: build/C/man2/mkdir.2:149
17500 #, no-wrap
17501 msgid "B<EMLINK>"
17502 msgstr "B<EMLINK>"
17503
17504 #. type: Plain text
17505 #: build/C/man2/mkdir.2:153
17506 msgid "The number of links to the parent directory would exceed B<LINK_MAX>."
17507 msgstr "親ディレクトリへのリンク数が B<LINK_MAX> を超えてしまう。"
17508
17509 #. type: Plain text
17510 #: build/C/man2/mkdir.2:156
17511 msgid "I<pathname> was too long."
17512 msgstr "I<pathname> が長すぎる。"
17513
17514 #. type: Plain text
17515 #: build/C/man2/mkdir.2:161
17516 msgid ""
17517 "A directory component in I<pathname> does not exist or is a dangling "
17518 "symbolic link."
17519 msgstr ""
17520 "I<pathname> の構成要素のディレクトリのいずれかが存在しないか、 またはリンク先"
17521 "が存在しないシンボリックリンクである。"
17522
17523 #. type: TP
17524 #: build/C/man2/mkdir.2:164 build/C/man2/mkdir.2:169
17525 #, no-wrap
17526 msgid "B<ENOSPC>"
17527 msgstr "B<ENOSPC>"
17528
17529 #. type: Plain text
17530 #: build/C/man2/mkdir.2:169
17531 msgid "The device containing I<pathname> has no room for the new directory."
17532 msgstr "I<pathname> を含むデバイスに新たにディレクトリを作成する空きが無い。"
17533
17534 #. type: Plain text
17535 #: build/C/man2/mkdir.2:173
17536 msgid ""
17537 "The new directory cannot be created because the user's disk quota is "
17538 "exhausted."
17539 msgstr ""
17540 "もしくはユーザーのディスク quota が使い切られているため、 新たにディレクトリ"
17541 "を作成することができない。"
17542
17543 #. type: Plain text
17544 #: build/C/man2/mkdir.2:183
17545 msgid ""
17546 "The filesystem containing I<pathname> does not support the creation of "
17547 "directories."
17548 msgstr ""
17549 "I<pathname> を含むファイルシステムがディレクトリの作成をサポートしていない。"
17550
17551 #. type: Plain text
17552 #: build/C/man2/mkdir.2:187
17553 msgid "I<pathname> refers to a file on a read-only filesystem."
17554 msgstr "I<pathname> が読み出し専用ファイルシステム上のファイルを指している。"
17555
17556 #. type: Plain text
17557 #: build/C/man2/mkdir.2:190
17558 msgid "The following additional errors can occur for B<mkdirat>():"
17559 msgstr "B<mkdirat>() では以下のエラーも発生する。"
17560
17561 #. type: Plain text
17562 #: build/C/man2/mkdir.2:204
17563 msgid ""
17564 "B<mkdirat>()  was added to Linux in kernel 2.6.16; library support was added "
17565 "to glibc in version 2.4."
17566 msgstr ""
17567 "B<mkdirat>()  はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサ"
17568 "ポートはバージョン 2.4 で glibc に追加された。"
17569
17570 #.  SVr4 documents additional EIO, EMULTIHOP
17571 #. type: Plain text
17572 #: build/C/man2/mkdir.2:208
17573 msgid "B<mkdir>(): SVr4, BSD, POSIX.1-2001, POSIX.1-2008."
17574 msgstr "B<mkdir>(): SVr4, BSD, POSIX.1-2001, POSIX.1-2008."
17575
17576 #. type: Plain text
17577 #: build/C/man2/mkdir.2:211
17578 msgid "B<mkdirat>(): POSIX.1-2008."
17579 msgstr "B<mkdirat>(): POSIX.1-2008."
17580
17581 #. type: Plain text
17582 #: build/C/man2/mkdir.2:219
17583 msgid ""
17584 "Under Linux, apart from the permission bits, only the B<S_ISVTX> mode bit is "
17585 "honored.  That is, under Linux the created directory actually gets mode "
17586 "(I<mode> & ~I<umask> & 01777).  See also B<stat>(2)."
17587 msgstr ""
17588 "Linux では、許可ビット以外で意味を持つのは、 B<S_ISVTX> モードビットだけであ"
17589 "る。 つまり、Linux では作成されたディレクトリは実際には (I<mode> & ~I<umask> "
17590 "& 01777)  のモードを持つことになる。 B<stat>(2)  を参照のこと。"
17591
17592 #. type: Plain text
17593 #: build/C/man2/mkdir.2:223
17594 msgid ""
17595 "There are many infelicities in the protocol underlying NFS.  Some of these "
17596 "affect B<mkdir>()."
17597 msgstr ""
17598 "NFS を実現しているプロトコルには多くの不備が存在し、 それら中には "
17599 "B<mkdir>()  に影響を与えるものもある。"
17600
17601 #. type: Plain text
17602 #: build/C/man2/mkdir.2:236
17603 msgid ""
17604 "On older kernels where B<mkdirat>()  is unavailable, the glibc wrapper "
17605 "function falls back to the use of B<mkdir>().  When I<pathname> is a "
17606 "relative pathname, glibc constructs a pathname based on the symbolic link in "
17607 "I</proc/self/fd> that corresponds to the I<dirfd> argument."
17608 msgstr ""
17609 "B<mkdirat>() が利用できない古いカーネルでは、 glibc ラッパー関数は "
17610 "B<mkdir>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場"
17611 "合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンク"
17612 "に基づいてパス名を構成する。"
17613
17614 #. type: Plain text
17615 #: build/C/man2/mkdir.2:247
17616 msgid ""
17617 "B<mkdir>(1), B<chmod>(2), B<chown>(2), B<mknod>(2), B<mount>(2), "
17618 "B<rmdir>(2), B<stat>(2), B<umask>(2), B<unlink>(2), B<path_resolution>(7)"
17619 msgstr ""
17620 "B<mkdir>(1), B<chmod>(2), B<chown>(2), B<mknod>(2), B<mount>(2), "
17621 "B<rmdir>(2), B<stat>(2), B<umask>(2), B<unlink>(2), B<path_resolution>(7)"
17622
17623 #. type: TH
17624 #: build/C/man2/nice.2:31
17625 #, no-wrap
17626 msgid "NICE"
17627 msgstr "NICE"
17628
17629 #. type: TH
17630 #: build/C/man2/nice.2:31
17631 #, no-wrap
17632 msgid "2014-04-28"
17633 msgstr "2014-04-28"
17634
17635 #. type: Plain text
17636 #: build/C/man2/nice.2:34
17637 msgid "nice - change process priority"
17638 msgstr "nice - プロセスの優先度を変更する"
17639
17640 #. type: Plain text
17641 #: build/C/man2/nice.2:38
17642 msgid "B<int nice(int >I<inc>B<);>"
17643 msgstr "B<int nice(int >I<inc>B<);>"
17644
17645 #. type: Plain text
17646 #: build/C/man2/nice.2:46
17647 msgid "B<nice>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
17648 msgstr "B<nice>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
17649
17650 #. type: Plain text
17651 #: build/C/man2/nice.2:56
17652 msgid ""
17653 "B<nice>()  adds I<inc> to the nice value for the calling process.  (A higher "
17654 "nice value means a low priority.)  Only the super\\%user may specify a "
17655 "negative increment, or priority increase.  The range for nice values is "
17656 "described in B<getpriority>(2)."
17657 msgstr ""
17658 "B<nice>()  は I<inc> の値を B<nice> を呼んだプロセスの nice 値に加える (nice "
17659 "値が大きい数値ほど低い優先度を表す)。 負の数を指定する、つまり、以前よりも優"
17660 "先度を上げるという指定ができるのは スーパーユーザーだけである。 nice 値の範囲"
17661 "については B<getpriority>(2)  で説明されている。"
17662
17663 #. type: Plain text
17664 #: build/C/man2/nice.2:61
17665 msgid ""
17666 "On success, the new nice value is returned (but see NOTES below).  On error, "
17667 "-1 is returned, and I<errno> is set appropriately."
17668 msgstr ""
17669 "成功した場合、新しい nice 値が返る (但し、下記の「注意」を参照)。 失敗した場"
17670 "合 -1 が返り、 I<errno> がエラーの内容に従って設定される。"
17671
17672 #. type: Plain text
17673 #: build/C/man2/nice.2:75
17674 msgid ""
17675 "The calling process attempted to increase its priority by supplying a "
17676 "negative I<inc> but has insufficient privileges.  Under Linux, the "
17677 "B<CAP_SYS_NICE> capability is required.  (But see the discussion of the "
17678 "B<RLIMIT_NICE> resource limit in B<setrlimit>(2).)"
17679 msgstr ""
17680 "スーパーユーザー以外が I<inc> に負の数値を指定して優先度を上げようとした。 呼"
17681 "び出し元のプロセスが I<inc> に負の数値を指定して優先度を上げようとしたが、 十"
17682 "分な権限を持っていなかった。 Linux では B<CAP_SYS_NICE> ケーパビリティが必要"
17683 "である。 (B<setrlimit>(2)  のリソース上限 B<RLIMIT_NICE> に関する議論も参照の"
17684 "こと)。"
17685
17686 #. type: Plain text
17687 #: build/C/man2/nice.2:82
17688 msgid ""
17689 "SVr4, 4.3BSD, POSIX.1-2001.  However, the Linux and (g)libc (earlier than "
17690 "glibc 2.2.4) return value is nonstandard, see below.  SVr4 documents an "
17691 "additional B<EINVAL> error code."
17692 msgstr ""
17693 "SVr4, 4.3BSD, POSIX.1-2001.  しかし、Linux と (2.2.4より古い) (g)libc では返"
17694 "り値は標準と異なる。 詳細は以下を参照のこと。 SVr4 には他に B<EINVAL> エラー"
17695 "コードについての記述がある。"
17696
17697 #. type: Plain text
17698 #: build/C/man2/nice.2:92
17699 msgid ""
17700 "SUSv2 and POSIX.1-2001 specify that B<nice>()  should return the new nice "
17701 "value.  However, the Linux syscall and the B<nice>()  library function "
17702 "provided in older versions of (g)libc (earlier than glibc 2.2.4) return 0 on "
17703 "success.  The new nice value can be found using B<getpriority>(2)."
17704 msgstr ""
17705 "SUSv2 と POSIX 1003.1-2003 では、 B<nice>()  は新しい nice 値を返すと規定され"
17706 "ている。 一方、Linux システムコールと (2.2.4 より古い) (g)libc ライブラリ関数"
17707 "は 成功時に 0 を返す。新しい nice 値は B<getpriority>(2)  を使って取得でき"
17708 "る。"
17709
17710 #. type: Plain text
17711 #: build/C/man2/nice.2:105
17712 msgid ""
17713 "Since glibc 2.2.4, B<nice>()  is implemented as a library function that "
17714 "calls B<getpriority>(2)  to obtain the new nice value to be returned to the "
17715 "caller.  With this implementation, a successful call can legitimately return "
17716 "-1.  To reliably detect an error, set I<errno> to 0 before the call, and "
17717 "check its value when B<nice>()  returns -1."
17718 msgstr ""
17719 "glibc 2.2.4 以降では、 B<nice>()  は B<getpriority>(2)  を呼び出すライブラリ"
17720 "関数として実装されており、 呼び出し元に返す新しい nice 値を "
17721 "B<getpriority>(2)  を呼び出して取得するようになっている。 この実装では、正常"
17722 "な動作でも -1 が返される可能性がある。 確実にエラーを検出するためには、 呼び"
17723 "出しの前に I<errno> に 0 を設定し、 B<nice>()  が -1 を返したときに errno を"
17724 "チェックすると良い。"
17725
17726 #. type: Plain text
17727 #: build/C/man2/nice.2:113
17728 msgid ""
17729 "B<nice>(1), B<renice>(1), B<fork>(2), B<getpriority>(2), B<setpriority>(2), "
17730 "B<capabilities>(7), B<sched>(7)"
17731 msgstr ""
17732 "B<nice>(1), B<renice>(1), B<fork>(2), B<getpriority>(2), B<setpriority>(2), "
17733 "B<capabilities>(7), B<sched>(7)"
17734
17735 #. type: TH
17736 #: build/C/man2/pread.2:25
17737 #, no-wrap
17738 msgid "PREAD"
17739 msgstr "PREAD"
17740
17741 #. type: Plain text
17742 #: build/C/man2/pread.2:28
17743 msgid ""
17744 "pread, pwrite - read from or write to a file descriptor at a given offset"
17745 msgstr ""
17746 "pread, pwrite - 指定したオフセットでファイルディスクリプターを読み書きする"
17747
17748 #. type: Plain text
17749 #: build/C/man2/pread.2:33
17750 msgid ""
17751 "B<ssize_t pread(int >I<fd>B<, void *>I<buf>B<, size_t >I<count>B<, off_t "
17752 ">I<offset>B<);>"
17753 msgstr ""
17754 "B<ssize_t pread(int >I<fd>B<, void *>I<buf>B<, size_t >I<count>B<, off_t "
17755 ">I<offset>B<);>"
17756
17757 #. type: Plain text
17758 #: build/C/man2/pread.2:36
17759 msgid ""
17760 "B<ssize_t pwrite(int >I<fd>B<, const void *>I<buf>B<, size_t >I<count>B<, "
17761 "off_t >I<offset>B<);>"
17762 msgstr ""
17763 "B<ssize_t pwrite(int >I<fd>B<, const void *>I<buf>B<, size_t >I<count>B<, "
17764 "off_t >I<offset>B<);>"
17765
17766 #. type: Plain text
17767 #: build/C/man2/pread.2:46
17768 msgid "B<pread>(), B<pwrite>():"
17769 msgstr "B<pread>(), B<pwrite>():"
17770
17771 #. type: Plain text
17772 #: build/C/man2/pread.2:48
17773 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 500"
17774 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 500"
17775
17776 #. type: Plain text
17777 #: build/C/man2/pread.2:64
17778 msgid ""
17779 "B<pread>()  reads up to I<count> bytes from file descriptor I<fd> at offset "
17780 "I<offset> (from the start of the file) into the buffer starting at I<buf>.  "
17781 "The file offset is not changed."
17782 msgstr ""
17783 "B<pread>()  は、ファイルディスクリプター I<fd> の (ファイルの先頭からの) オフ"
17784 "セット I<offset> から最大 I<count> バイトをバッファー I<buf> へ読み込む。ファ"
17785 "イルオフセットは変化しない。"
17786
17787 #. type: Plain text
17788 #: build/C/man2/pread.2:75
17789 msgid ""
17790 "B<pwrite>()  writes up to I<count> bytes from the buffer starting at I<buf> "
17791 "to the file descriptor I<fd> at offset I<offset>.  The file offset is not "
17792 "changed."
17793 msgstr ""
17794 "B<pwrite>()  は、バッファー I<buf> から最大 I<count> バイトをファイルディスク"
17795 "リプター I<fd> のオフセット I<offset> に書き込む。ファイルオフセットは変化し"
17796 "ない。"
17797
17798 #. type: Plain text
17799 #: build/C/man2/pread.2:79
17800 msgid "The file referenced by I<fd> must be capable of seeking."
17801 msgstr "I<fd> で参照されるファイルはシーク (seek) 可能でなければならない。"
17802
17803 #. type: Plain text
17804 #: build/C/man2/pread.2:89
17805 msgid ""
17806 "On success, the number of bytes read or written is returned (zero indicates "
17807 "that nothing was written, in the case of B<pwrite>(), or end of file, in the "
17808 "case of B<pread>()), or -1 on error, in which case I<errno> is set to "
17809 "indicate the error."
17810 msgstr ""
17811 "成功した場合、読み書きを行ったバイト数が返される (ゼロは、 B<pwrite>()  の場"
17812 "合には何も書かれなかったことを意味し、 B<pread>()  の場合にはファイル の末尾"
17813 "に達したことを意味する)。 エラーの場合は -1 が返され、 I<errno> がそのエラー"
17814 "を示すように設定される。"
17815
17816 #. type: Plain text
17817 #: build/C/man2/pread.2:104
17818 msgid ""
17819 "B<pread>()  can fail and set I<errno> to any error specified for B<read>(2)  "
17820 "or B<lseek>(2).  B<pwrite>()  can fail and set I<errno> to any error "
17821 "specified for B<write>(2)  or B<lseek>(2)."
17822 msgstr ""
17823 "B<pread>()  では、 B<read>(2)  および B<lseek>(2)  で規定された全てのエラーが"
17824 "発生する可能性があり、 I<errno> にはエラーを示す値が設定される。 "
17825 "B<pwrite>()  では、 B<write>(2)  および B<lseek>(2)  で規定された全てのエラー"
17826 "が発生する可能性があり、 I<errno> にはエラーを示す値が設定される。"
17827
17828 #. type: Plain text
17829 #: build/C/man2/pread.2:115
17830 msgid ""
17831 "The B<pread>()  and B<pwrite>()  system calls were added to Linux in version "
17832 "2.1.60; the entries in the i386 system call table were added in 2.1.69.  C "
17833 "library support (including emulation using B<lseek>(2)  on older kernels "
17834 "without the system calls) was added in glibc 2.1."
17835 msgstr ""
17836 "システムコール B<pread>()  と B<pwrite>()  は Linux にバージョン 2.1.60 で追"
17837 "加された。 i386 のシステムコールのエントリーは 2.1.69 で追加された。 (システ"
17838 "ムコールを持たない古いカーネルでの B<lseek>(2)  を使ったエミュレーションを含"
17839 "めると)  C ライブラリにおけるサポートは glibc 2.1 で追加された。"
17840
17841 #. type: Plain text
17842 #: build/C/man2/pread.2:125
17843 msgid ""
17844 "The B<pread>()  and B<pwrite>()  system calls are especially useful in "
17845 "multithreaded applications.  They allow multiple threads to perform I/O on "
17846 "the same file descriptor without being affected by changes to the file "
17847 "offset by other threads."
17848 msgstr ""
17849 "システムコール B<pread>() と B<pwrite>() は、特にマルチスレッドアプリケーショ"
17850 "ンで役に立つ。 これらを使うと、 他のスレッドによるファイルオフセットの変更の"
17851 "影響を受けることなく、 複数のスレッドが同じファイルディスクリプターに対して入"
17852 "出力を行うことができる。"
17853
17854 #. type: Plain text
17855 #: build/C/man2/pread.2:141
17856 msgid ""
17857 "On Linux, the underlying system calls were renamed in kernel 2.6: "
17858 "B<pread>()  became B<pread64>(), and B<pwrite>()  became B<pwrite64>().  The "
17859 "system call numbers remained the same.  The glibc B<pread>()  and "
17860 "B<pwrite>()  wrapper functions transparently deal with the change."
17861 msgstr ""
17862 "Linux では、裏で呼び出されるシステムコールの名前がカーネル 2.6 で変更され"
17863 "た。\n"
17864 "B<pread>() は B<pread64>() になり、 B<pwrite>() は B<pwrite64>() になった。\n"
17865 "システムコールの番号は変更されていない。\n"
17866 "glibc の B<pread>() と B<pwrite>() のラッパー関数はこれらの変更を吸収してい"
17867 "る。"
17868
17869 #. type: Plain text
17870 #: build/C/man2/pread.2:146 build/C/man2/truncate.2:253
17871 msgid ""
17872 "On some 32-bit architectures, the calling signature for these system calls "
17873 "differ, for the reasons described in B<syscall>(2)."
17874 msgstr ""
17875 "いくつかの 32 ビットアーキテクチャーでは、これらのシステムコールの呼び出し時"
17876 "のシグネチャーが違っています。理由は B<syscall>(2) で説明されている通りです。"
17877
17878 #.  FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=43178
17879 #. type: Plain text
17880 #: build/C/man2/pread.2:158
17881 msgid ""
17882 "POSIX requires that opening a file with the B<O_APPEND> flag should have no "
17883 "effect on the location at which B<pwrite>()  writes data.  However, on "
17884 "Linux, if a file is opened with B<O_APPEND>, B<pwrite>()  appends data to "
17885 "the end of the file, regardless of the value of I<offset>."
17886 msgstr ""
17887 "POSIX では、B<O_APPEND> フラグを指定してファイルをオープンした場合、\n"
17888 "B<pwrite>() がデータを書き込む位置に影響を及ぼさないことが\n"
17889 "求められている。しかし、 Linux では、ファイルを B<O_APPEND> 付きで\n"
17890 "オープンした場合、 I<offset> の値に関わらず、\n"
17891 "B<pwrite>() はファイルの末尾にデータを追記する。"
17892
17893 #. type: Plain text
17894 #: build/C/man2/pread.2:163
17895 msgid "B<lseek>(2), B<read>(2), B<readv>(2), B<write>(2)"
17896 msgstr "B<lseek>(2), B<read>(2), B<readv>(2), B<write>(2)"
17897
17898 #. type: TH
17899 #: build/C/man2/set_thread_area.2:8
17900 #, no-wrap
17901 msgid "SET_THREAD_AREA"
17902 msgstr "SET_THREAD_AREA"
17903
17904 #. type: Plain text
17905 #: build/C/man2/set_thread_area.2:11
17906 msgid "set_thread_area - set a thread local storage (TLS) area"
17907 msgstr "set_thread_area - スレッド局所記憶 (TLS) 領域を設定する"
17908
17909 #. type: Plain text
17910 #: build/C/man2/set_thread_area.2:17
17911 msgid "B<int set_thread_area(struct user_desc *>I<u_info>B<);>"
17912 msgstr "B<int set_thread_area(struct user_desc *>I<u_info>B<);>"
17913
17914 #. type: Plain text
17915 #: build/C/man2/set_thread_area.2:33
17916 msgid ""
17917 "B<set_thread_area>()  sets an entry in the current thread's thread-local "
17918 "storage (TLS) array.  The TLS array entry set by B<set_thread_area>()  "
17919 "corresponds to the value of I<u_info-E<gt>entry_number> passed in by the "
17920 "user.  If this value is in bounds, B<set_thread_area>()  copies the TLS "
17921 "descriptor pointed to by I<u_info> into the thread's TLS array."
17922 msgstr ""
17923 "B<set_thread_area>()  は、カレントスレッドのスレッド局所記憶 (thread-local "
17924 "storage; TLS)  配列の中のエントリーを設定する。 B<set_thread_area>()  により"
17925 "設定される TLS 配列のエントリーは、ユーザーから引き数として渡される I<u_info-"
17926 "E<gt>entry_number> の値に対応している。値が範囲内にある場合、 "
17927 "B<set_thread_area>()  は I<u_info> で指された TLS ディスクリプターをスレッド"
17928 "の TLS 配列にコピーする。"
17929
17930 #. type: Plain text
17931 #: build/C/man2/set_thread_area.2:44
17932 msgid ""
17933 "When B<set_thread_area>()  is passed an I<entry_number> of -1, it uses a "
17934 "free TLS entry.  If B<set_thread_area>()  finds a free TLS entry, the value "
17935 "of I<u_info-E<gt>entry_number> is set upon return to show which entry was "
17936 "changed."
17937 msgstr ""
17938 "I<entry_number> として -1 が渡された場合、 B<set_thread_area>()  は未使用 "
17939 "(free) の TLS エントリーを使用する。 未使用の TLS エントリーがあった場合、ど"
17940 "のエントリーが変更されたかが分かる ように終了時に I<u_info-"
17941 "E<gt>entry_number> の値が変更される。"
17942
17943 #. type: Plain text
17944 #: build/C/man2/set_thread_area.2:49
17945 msgid ""
17946 "B<set_thread_area>()  returns 0 on success, and -1 on failure, with I<errno> "
17947 "set appropriately."
17948 msgstr ""
17949 "B<set_thread_area>()  は成功した場合 0 を返す。失敗した場合は -1 を返し、 "
17950 "I<errno> を適切に設定する。"
17951
17952 #. type: TP
17953 #: build/C/man2/set_thread_area.2:56
17954 #, no-wrap
17955 msgid "B<ESRCH>"
17956 msgstr "B<ESRCH>"
17957
17958 #. type: Plain text
17959 #: build/C/man2/set_thread_area.2:59
17960 msgid "A free TLS entry could not be located."
17961 msgstr "未使用の TLS エントリーが見つからなかった。"
17962
17963 #. type: Plain text
17964 #: build/C/man2/set_thread_area.2:63
17965 msgid "A version of B<set_thread_area>()  first appeared in Linux 2.5.29."
17966 msgstr "B<set_thread_area>()  は Linux 2.5.29 で初めて登場した。"
17967
17968 #. type: Plain text
17969 #: build/C/man2/set_thread_area.2:67
17970 msgid ""
17971 "B<set_thread_area>()  is Linux-specific and should not be used in programs "
17972 "that are intended to be portable."
17973 msgstr ""
17974 "B<set_thread_area>()  は Linux 独自であり、移植を意図したプログラムでは使用す"
17975 "べきではない。"
17976
17977 #. type: Plain text
17978 #: build/C/man2/set_thread_area.2:72
17979 msgid ""
17980 "Glibc does not provide a wrapper for this system call, since it is generally "
17981 "intended only for use by threading libraries.  In the unlikely event that "
17982 "you want to call it directly, use B<syscall>(2)."
17983 msgstr ""
17984 "このシステムコールは通常はスレッドライブラリでのみ使用されることを目的として"
17985 "用意されているため、 glibc はこのシステムコールに対するラッパー関数を提供して"
17986 "いない。おそらくないと思うが、このシステムコールを直接呼び出したい場合は "
17987 "B<syscall>(2) を使うこと。"
17988
17989 #. type: Plain text
17990 #: build/C/man2/set_thread_area.2:74
17991 msgid "B<get_thread_area>(2)"
17992 msgstr "B<get_thread_area>(2)"
17993
17994 #. type: TH
17995 #: build/C/man2/setup.2:34
17996 #, no-wrap
17997 msgid "SETUP"
17998 msgstr "SETUP"
17999
18000 #. type: TH
18001 #: build/C/man2/setup.2:34
18002 #, no-wrap
18003 msgid "2008-12-03"
18004 msgstr "2008-12-03"
18005
18006 #. type: Plain text
18007 #: build/C/man2/setup.2:37
18008 msgid "setup - setup devices and filesystems, mount root filesystem"
18009 msgstr ""
18010 "setup - デバイスとファイルシステムの初期化を行い、 ルートファイルシステムのマ"
18011 "ウントを行う"
18012
18013 #. type: Plain text
18014 #: build/C/man2/setup.2:41
18015 msgid "B<int setup(void);>"
18016 msgstr "B<int setup(void);>"
18017
18018 #. type: Plain text
18019 #: build/C/man2/setup.2:47
18020 msgid ""
18021 "B<setup>()  is called once from within I<linux/init/main.c>.  It calls "
18022 "initialization functions for devices and filesystems configured into the "
18023 "kernel and then mounts the root filesystem."
18024 msgstr ""
18025 "B<setup>()  は I<linux/init/main.c> の中で一度だけ呼ばれる。 カーネル内部のデ"
18026 "バイスとファイルシステムの初期化関数を呼び、 ルートファイルシステムのマウント"
18027 "を行う。"
18028
18029 #. type: Plain text
18030 #: build/C/man2/setup.2:53
18031 msgid ""
18032 "No user process may call B<setup>().  Any user process, even a process with "
18033 "superuser permission, will receive B<EPERM>."
18034 msgstr ""
18035 "ユーザープロセスからは B<setup>()  を呼びだすことはできない。 ユーザープロセ"
18036 "スからのアクセスは、たとえそのプロセスが スーパーユーザー権限を持っていても "
18037 "B<EPERM> を受け取ることになる。"
18038
18039 #. type: Plain text
18040 #: build/C/man2/setup.2:56
18041 msgid "B<setup>()  always returns -1 for a user process."
18042 msgstr "B<setup>()  はユーザープロセスに対して常に -1 を返す。"
18043
18044 #. type: Plain text
18045 #: build/C/man2/setup.2:62
18046 msgid "Since Linux 2.1.121, no such function exists anymore."
18047 msgstr "Linux 2.1.121 以降では、もはやこの関数は存在しない。"
18048
18049 #. type: Plain text
18050 #: build/C/man2/setup.2:65
18051 msgid ""
18052 "This function is Linux-specific, and should not be used in programs intended "
18053 "to be portable, or indeed in any programs at all."
18054 msgstr ""
18055 "この関数は Linux に特有のものであり、移植を考慮したプログラムでは 用いるべき"
18056 "ではない。それどころか、あらゆるプログラムで用いるべきではない。"
18057
18058 #. type: Plain text
18059 #: build/C/man2/setup.2:72
18060 msgid ""
18061 "The calling sequence varied: at some times B<setup>()  has had a single "
18062 "argument I<void\\ *BIOS> and at other times a single argument I<int magic>."
18063 msgstr ""
18064 "呼び出し手続きは変化してきた。 ある時は B<setup>() は一つの引数 I<void\\ "
18065 "*BIOS> を取っており、またある時には I<int magic> を一つの引数として取ってい"
18066 "た。"
18067
18068 #. type: TH
18069 #: build/C/man5/shells.5:28
18070 #, no-wrap
18071 msgid "SHELLS"
18072 msgstr "SHELLS"
18073
18074 #. type: Plain text
18075 #: build/C/man5/shells.5:31
18076 msgid "shells - pathnames of valid login shells"
18077 msgstr "shells - ログインシェルとして有効なファイルのパス名"
18078
18079 #. type: Plain text
18080 #: build/C/man5/shells.5:37
18081 msgid ""
18082 "I</etc/shells> is a text file which contains the full pathnames of valid "
18083 "login shells.  This file is consulted by B<chsh>(1)  and available to be "
18084 "queried by other programs."
18085 msgstr ""
18086 "I</etc/shells> はログインシェルとして有効なファイルのフルパスが書かれた テキ"
18087 "ストファイルである。 B<chsh>(1)  はこのファイルを参照する。 他のプログラムも"
18088 "このファイルを参照できる。"
18089
18090 #. type: Plain text
18091 #: build/C/man5/shells.5:43
18092 msgid ""
18093 "Be aware that there are programs which consult this file to find out if a "
18094 "user is a normal user; for example, FTP daemons traditionally disallow "
18095 "access to users with shells not included in this file."
18096 msgstr ""
18097 "注意して欲しいのだが、プログラムによっては、 ユーザーが通常のユーザーかどうか"
18098 "を判断する際に、このファイルの内容を参考にすることがある。例えば FTP デーモン"
18099 "は、ログインシェルがこのファイルに書かれていないユーザーからのアクセスを許さ"
18100 "ないのが以前から一般的である。"
18101
18102 #. type: Plain text
18103 #: build/C/man5/shells.5:45
18104 msgid "I</etc/shells>"
18105 msgstr "I</etc/shells>"
18106
18107 #. type: Plain text
18108 #: build/C/man5/shells.5:48
18109 msgid "I</etc/shells> may contain the following paths:"
18110 msgstr "I</etc/shells> には以下のようなパスが含まれているだろう。"
18111
18112 #. type: Plain text
18113 #: build/C/man5/shells.5:51
18114 msgid "I</bin/sh>"
18115 msgstr "I</bin/sh>"
18116
18117 #. type: Plain text
18118 #: build/C/man5/shells.5:53
18119 msgid "I</bin/bash>"
18120 msgstr "I</bin/bash>"
18121
18122 #. type: Plain text
18123 #: build/C/man5/shells.5:55
18124 msgid "I</bin/csh>"
18125 msgstr "I</bin/csh>"
18126
18127 #. type: Plain text
18128 #: build/C/man5/shells.5:59
18129 msgid "B<chsh>(1), B<getusershell>(3)"
18130 msgstr "B<chsh>(1), B<getusershell>(3)"
18131
18132 #. type: TH
18133 #: build/C/man3/sleep.3:26
18134 #, no-wrap
18135 msgid "SLEEP"
18136 msgstr "SLEEP"
18137
18138 #. type: TH
18139 #: build/C/man3/sleep.3:26
18140 #, no-wrap
18141 msgid "2010-02-03"
18142 msgstr "2010-02-03"
18143
18144 #. type: Plain text
18145 #: build/C/man3/sleep.3:29
18146 msgid "sleep - sleep for the specified number of seconds"
18147 msgstr "sleep - 指定の秒数の間だけ休止する"
18148
18149 #. type: Plain text
18150 #: build/C/man3/sleep.3:34
18151 #, no-wrap
18152 msgid "B<unsigned int sleep(unsigned int >I<seconds>B<);>\n"
18153 msgstr "B<unsigned int sleep(unsigned int >I<seconds>B<);>\n"
18154
18155 #. type: Plain text
18156 #: build/C/man3/sleep.3:40
18157 msgid ""
18158 "B<sleep>()  makes the calling thread sleep until I<seconds> seconds have "
18159 "elapsed or a signal arrives which is not ignored."
18160 msgstr ""
18161 "B<sleep>()  は、呼び出したスレッドを I<seconds> 秒間または無視されないシグナ"
18162 "ルが到着するまで休止する。"
18163
18164 #. type: Plain text
18165 #: build/C/man3/sleep.3:44
18166 msgid ""
18167 "Zero if the requested time has elapsed, or the number of seconds left to "
18168 "sleep, if the call was interrupted by a signal handler."
18169 msgstr ""
18170 "要求された時間が過ぎた場合はゼロを返す。 呼び出しがシグナルハンドラーに割り込"
18171 "まれた場合は、 休止の残り時間を返す。"
18172
18173 #. type: Plain text
18174 #: build/C/man3/sleep.3:55
18175 msgid ""
18176 "B<sleep>()  may be implemented using B<SIGALRM>; mixing calls to "
18177 "B<alarm>(2)  and B<sleep>()  is a bad idea."
18178 msgstr ""
18179 "B<sleep>()  は B<SIGALRM> を用いて実装されている。そのため、 B<alarm>(2)  と "
18180 "B<sleep>()  を混ぜて使用するのは、まずい考えである。"
18181
18182 #. type: Plain text
18183 #: build/C/man3/sleep.3:61
18184 msgid ""
18185 "Using B<longjmp>(3)  from a signal handler or modifying the handling of "
18186 "B<SIGALRM> while sleeping will cause undefined results."
18187 msgstr ""
18188 "休止中にシグナルハンドラーから B<longjmp>(3)  を使用することや B<SIGALRM> の"
18189 "ハンドリングを変更することは、定義されていない結果を生む。"
18190
18191 #. type: Plain text
18192 #: build/C/man3/sleep.3:66
18193 msgid "B<alarm>(2), B<nanosleep>(2), B<signal>(2), B<signal>(7)"
18194 msgstr "B<alarm>(2), B<nanosleep>(2), B<signal>(2), B<signal>(7)"
18195
18196 #. type: TH
18197 #: build/C/man3/swab.3:31
18198 #, no-wrap
18199 msgid "SWAB"
18200 msgstr "SWAB"
18201
18202 #. type: TH
18203 #: build/C/man3/swab.3:31
18204 #, no-wrap
18205 msgid "2014-02-25"
18206 msgstr "2014-02-25"
18207
18208 #. type: Plain text
18209 #: build/C/man3/swab.3:34
18210 msgid "swab - swap adjacent bytes"
18211 msgstr "swab - 隣接するバイトを交換する"
18212
18213 #. type: Plain text
18214 #: build/C/man3/swab.3:38
18215 #, no-wrap
18216 msgid ""
18217 "B<#define _XOPEN_SOURCE>       /* See feature_test_macros(7) */\n"
18218 "B<#include E<lt>unistd.hE<gt>>\n"
18219 msgstr ""
18220 "B<#define _XOPEN_SOURCE>       /* feature_test_macros(7) 参照 */\n"
18221 "B<#include E<lt>unistd.hE<gt>>\n"
18222
18223 #. type: Plain text
18224 #: build/C/man3/swab.3:40
18225 #, no-wrap
18226 msgid "B<void swab(const void *>I<from>B<, void *>I<to>B<, ssize_t >I<n>B<);>\n"
18227 msgstr "B<void swab(const void *>I<from>B<, void *>I<to>B<, ssize_t >I<n>B<);>\n"
18228
18229 #. type: Plain text
18230 #: build/C/man3/swab.3:55
18231 msgid ""
18232 "The B<swab>()  function copies I<n> bytes from the array pointed to by "
18233 "I<from> to the array pointed to by I<to>, exchanging adjacent even and odd "
18234 "bytes.  This function is used to exchange data between machines that have "
18235 "different low/high byte ordering."
18236 msgstr ""
18237 "B<swab>()  関数は、I<from> で指された配列から I<n> バイトを I<to> で指された"
18238 "配列に、隣接した偶数/奇数バイトを交換しながらコピーする。 この関数は異なるバ"
18239 "イトオーダーを持つマシン間でのデータ交換に 使用される。"
18240
18241 #. type: Plain text
18242 #: build/C/man3/swab.3:68
18243 msgid ""
18244 "This function does nothing when I<n> is negative.  When I<n> is positive and "
18245 "odd, it handles I<n-1> bytes as above, and does something unspecified with "
18246 "the last byte.  (In other words, I<n> should be even.)"
18247 msgstr ""
18248 "I<n> が負の数の場合、この関数は何もしない。 I<n> が正でかつ奇数の場合、"
18249 "I<n-1> バイトは上記の通り扱い、 最後のバイトについては未規定の動作をする (言"
18250 "い換えれば、I<n> は偶数にするべきである)。"
18251
18252 #. type: Plain text
18253 #: build/C/man3/swab.3:72
18254 msgid "The B<swab>()  function returns no value."
18255 msgstr "B<swab>()  関数は、値を返さない。"
18256
18257 #. type: Plain text
18258 #: build/C/man3/swab.3:77
18259 msgid "The B<swab>()  function is thread-safe."
18260 msgstr "B<swab>() 関数はスレッドセーフである。"
18261
18262 #. type: Plain text
18263 #: build/C/man3/swab.3:81
18264 msgid "B<bstring>(3)"
18265 msgstr "B<bstring>(3)"
18266
18267 #. type: TH
18268 #: build/C/man2/swapon.2:42
18269 #, no-wrap
18270 msgid "SWAPON"
18271 msgstr "SWAPON"
18272
18273 #. type: Plain text
18274 #: build/C/man2/swapon.2:45
18275 msgid "swapon, swapoff - start/stop swapping to file/device"
18276 msgstr "swapon, swapoff - ファイル/デバイスへのスワップを開始/停止する"
18277
18278 #. type: Plain text
18279 #: build/C/man2/swapon.2:49
18280 msgid "B<#include E<lt>sys/swap.hE<gt>>"
18281 msgstr "B<#include E<lt>sys/swap.hE<gt>>"
18282
18283 #. type: Plain text
18284 #: build/C/man2/swapon.2:51
18285 msgid "B<int swapon(const char *>I<path>B<, int >I<swapflags>B<);>"
18286 msgstr "B<int swapon(const char *>I<path>B<, int >I<swapflags>B<);>"
18287
18288 #. type: Plain text
18289 #: build/C/man2/swapon.2:53
18290 msgid "B<int swapoff(const char *>I<path>B<);>"
18291 msgstr "B<int swapoff(const char *>I<path>B<);>"
18292
18293 #. type: Plain text
18294 #: build/C/man2/swapon.2:60
18295 msgid ""
18296 "B<swapon>()  sets the swap area to the file or block device specified by "
18297 "I<path>.  B<swapoff>()  stops swapping to the file or block device specified "
18298 "by I<path>."
18299 msgstr ""
18300 "B<swapon>()  は I<path> で指定されたファイルやブロックデバイスにスワップ領域"
18301 "を設定する。 B<swapoff>()  は I<path> で指定されたファイルやブロックデバイス"
18302 "へのスワップを停止する。"
18303
18304 #. type: Plain text
18305 #: build/C/man2/swapon.2:70
18306 msgid ""
18307 "If the B<SWAP_FLAG_PREFER> flag is specified in the B<swapon>()  "
18308 "I<swapflags> argument, the new swap area will have a higher priority than "
18309 "default.  The priority is encoded within I<swapflags> as:"
18310 msgstr ""
18311 "B<swapon>() の I<swapflags> 引き数に B<SWAP_FLAG_PREFER> フラグが指定された場"
18312 "合、\n"
18313 "新しいスワップ領域はデフォルトよりも高い優先度を持つ。\n"
18314 "優先度は以下のように変換されて I<swapflags> に指定する。"
18315
18316 #. type: Plain text
18317 #: build/C/man2/swapon.2:73
18318 msgid "I<(prio E<lt>E<lt> SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK>"
18319 msgstr "I<(prio E<lt>E<lt> SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK>"
18320
18321 #. type: Plain text
18322 #: build/C/man2/swapon.2:85
18323 msgid ""
18324 "If the B<SWAP_FLAG_DISCARD> flag is specified in the B<swapon>()  "
18325 "I<swapflags> argument, freed swap pages will be discarded before they are "
18326 "reused, if the swap device supports the discard or trim operation.  (This "
18327 "may improve performance on some Solid State Devices, but often it does "
18328 "not.)  See also NOTES."
18329 msgstr ""
18330 "B<SWAP_FLAG_DISCARD> フラグが B<swapon>() の I<swapflags> 引き数に指定された"
18331 "場合、\n"
18332 "スワップデバイスが破棄 (discard) 操作や trim 操作をサポートしている場合に"
18333 "は、\n"
18334 "解放されたスワップページは再利用される前に破棄される\n"
18335 "(これにより、SSD (Solid State Device) によっては性能が向上することがある"
18336 "が、\n"
18337 "たいていは性能の向上はない)。\n"
18338 "「注意」も参照のこと。"
18339
18340 #. type: Plain text
18341 #: build/C/man2/swapon.2:89
18342 msgid ""
18343 "These functions may be used only by a privileged process (one having the "
18344 "B<CAP_SYS_ADMIN> capability)."
18345 msgstr ""
18346 "これらの関数は特権プロセス (B<CAP_SYS_ADMIN> ケーパビリティ (capability) を持"
18347 "つプロセス) のみが使用できる。"
18348
18349 #. type: SS
18350 #: build/C/man2/swapon.2:89
18351 #, no-wrap
18352 msgid "Priority"
18353 msgstr "優先度"
18354
18355 #. type: Plain text
18356 #: build/C/man2/swapon.2:94
18357 msgid ""
18358 "Each swap area has a priority, either high or low.  The default priority is "
18359 "low.  Within the low-priority areas, newer areas are even lower priority "
18360 "than older areas."
18361 msgstr ""
18362 "それぞれのスワップ領域は高 (high) と低 (low) のどちらかの優先度を持つ。 デ"
18363 "フォルトの優先度は低である。 低い優先度の領域において、新しい領域は古い領域よ"
18364 "りさらに低い 優先度を持つ。"
18365
18366 #. type: Plain text
18367 #: build/C/man2/swapon.2:100
18368 msgid ""
18369 "All priorities set with I<swapflags> are high-priority, higher than "
18370 "default.  They may have any nonnegative value chosen by the caller.  Higher "
18371 "numbers mean higher priority."
18372 msgstr ""
18373 "I<swapflags> が設定されたものは全て高い優先度となり、デフォルトよりも高い優先"
18374 "度を持つ。 使用者はそれらに負でない値が指定できる。 大きな数字は高い優先度を"
18375 "意味する。"
18376
18377 #. type: Plain text
18378 #: build/C/man2/swapon.2:108
18379 msgid ""
18380 "Swap pages are allocated from areas in priority order, highest priority "
18381 "first.  For areas with different priorities, a higher-priority area is "
18382 "exhausted before using a lower-priority area.  If two or more areas have the "
18383 "same priority, and it is the highest priority available, pages are allocated "
18384 "on a round-robin basis between them."
18385 msgstr ""
18386 "高い優先度の領域から順にスワップページとして使用される。 より低い優先度の領域"
18387 "を使用する前により高い優先度の 領域を使い切る。もし二つ以上の領域が同じ優先度"
18388 "を持ち、 使える中で一番高い優先度であれば、それらのページは間で ラウンドロビ"
18389 "ン方式で配分される。"
18390
18391 #. type: Plain text
18392 #: build/C/man2/swapon.2:111
18393 msgid ""
18394 "As of Linux 1.3.6, the kernel usually follows these rules, but there are "
18395 "exceptions."
18396 msgstr ""
18397 "Linux 1.3.6 において、カーネルは通常はこれらの規則に従っている。 しかし例外も"
18398 "存在している。"
18399
18400 #. type: Plain text
18401 #: build/C/man2/swapon.2:124
18402 msgid ""
18403 "(for B<swapon>())  The specified I<path> is already being used as a swap "
18404 "area."
18405 msgstr ""
18406 "(B<swapon>()  において) 指定された I<path> が既にスワップ領域として使用されて"
18407 "いる。"
18408
18409 #. type: Plain text
18410 #: build/C/man2/swapon.2:129
18411 msgid ""
18412 "The file I<path> exists, but refers neither to a regular file nor to a block "
18413 "device;"
18414 msgstr ""
18415 "ファイル I<path> は存在するが、通常のファイルもブロックデバイスも参照していな"
18416 "い。"
18417
18418 #. type: Plain text
18419 #: build/C/man2/swapon.2:134
18420 msgid ""
18421 "(B<swapon>())  The indicated path does not contain a valid swap signature or "
18422 "resides on an in-memory filesystem such as tmpfs."
18423 msgstr ""
18424 "(B<swapon>()) 指定されたパスが有効なスワップの署名 (signature) を含んでいない"
18425 "か、tmpfs のようなインメモリーファイルシステム上にある。"
18426
18427 #. type: TP
18428 #: build/C/man2/swapon.2:134
18429 #, no-wrap
18430 msgid "B<EINVAL> (since Linux 3.4)"
18431 msgstr "B<EINVAL> (Linux 3.4 以降)"
18432
18433 #. type: Plain text
18434 #: build/C/man2/swapon.2:139
18435 msgid "(B<swapon>())  An invalid flag value was specified in I<flags>."
18436 msgstr "(B<swapon>()) I<flags> に無効なフラグ値が指定された。"
18437
18438 #. type: Plain text
18439 #: build/C/man2/swapon.2:144
18440 msgid "(B<swapoff>())  I<path> is not currently a swap area."
18441 msgstr "(B<swapoff>()) I<path> が現在スワップ領域ではない。"
18442
18443 #. type: Plain text
18444 #: build/C/man2/swapon.2:152
18445 msgid "The file I<path> does not exist."
18446 msgstr "ファイル I<path> が存在しない。"
18447
18448 #. type: Plain text
18449 #: build/C/man2/swapon.2:155
18450 msgid "The system has insufficient memory to start swapping."
18451 msgstr "スワップを開始するのに十分なメモリーがシステムにない。"
18452
18453 #. type: Plain text
18454 #: build/C/man2/swapon.2:162
18455 msgid ""
18456 "The caller does not have the B<CAP_SYS_ADMIN> capability.  Alternatively, "
18457 "the maximum number of swap files are already in use; see NOTES below."
18458 msgstr ""
18459 "使用者が B<CAP_SYS_ADMIN> ケーパビリティを持っていない。 もしくは、最大数のス"
18460 "ワップファイルがすでに使用されている (下記の「注意」の節を参照)。"
18461
18462 #. type: Plain text
18463 #: build/C/man2/swapon.2:168
18464 msgid ""
18465 "These functions are Linux-specific and should not be used in programs "
18466 "intended to be portable.  The second I<swapflags> argument was introduced in "
18467 "Linux 1.3.2."
18468 msgstr ""
18469 "これらの関数は Linux 特有であり、移植を意図したプログラムでは 使用してはいけ"
18470 "ない。 二番目の I<swapflags> 引き数は Linux 1.3.2 から導入された。"
18471
18472 #. type: Plain text
18473 #: build/C/man2/swapon.2:171
18474 msgid "The partition or path must be prepared with B<mkswap>(8)."
18475 msgstr ""
18476 "パーティションやパスは B<mkswap>(8)  によって準備されていなければならない。"
18477
18478 #. type: Plain text
18479 #: build/C/man2/swapon.2:191
18480 msgid ""
18481 "There is an upper limit on the number of swap files that may be used, "
18482 "defined by the kernel constant B<MAX_SWAPFILES>.  Before kernel 2.4.10, "
18483 "B<MAX_SWAPFILES> has the value 8; since kernel 2.4.10, it has the value 32.  "
18484 "Since kernel 2.6.18, the limit is decreased by 2 (thus: 30)  if the kernel "
18485 "is built with the B<CONFIG_MIGRATION> option (which reserves two swap table "
18486 "entries for the page migration features of B<mbind>(2)  and "
18487 "B<migrate_pages>(2)).  Since kernel 2.6.32, the limit is further decreased "
18488 "by 1 if the kernel is built with the B<CONFIG_MEMORY_FAILURE> option."
18489 msgstr ""
18490 "使用できるスワップファイルの数には上限があり、その上限は カーネル定数 "
18491 "B<MAX_SWAPFILES> で定義される。 B<MAX_SWAPFILES> の値は、カーネル 2.4.10 より"
18492 "前では 8、 カーネル 2.4.10 以降では 32 である。 カーネル 2.6.18 以降では、"
18493 "カーネルが B<CONFIG_MIGRATION> オプションを有効にして作成された場合、 この上"
18494 "限が 2 少ない値 (つまり 30) となる (このカーネルでは、 B<mbind>(2)  と "
18495 "B<migrate_pages>(2)  のページマイグレーション機能用にスワップテーブルのエント"
18496 "リーが 二つ予約される)。 カーネル 2.6.32 以降では、カーネルが "
18497 "B<CONFIG_MEMORY_FAILURE> オプションを有効にして作成された場合、 この上限がさ"
18498 "らに 1 少ない値となる。"
18499
18500 #.  To be precise: 2.6.35.5
18501 #. type: Plain text
18502 #: build/C/man2/swapon.2:202
18503 msgid ""
18504 "Discard of swap pages was introduced in kernel 2.6.29, then made conditional "
18505 "on the B<SWAP_FLAG_DISCARD> flag in kernel 2.6.36, which still discards the "
18506 "entire swap area when B<swapon>()  is called, even if that flag bit is not "
18507 "set."
18508 msgstr ""
18509 "スワップページの破棄は、カーネル 2.6.29 で導入され、その後カーネル 2.6.36 "
18510 "で\n"
18511 "B<SWAP_FLAG_DISCARD> フラグが指定された場合にだけ実行されるようになったが、\n"
18512 "今でも、このフラグビットが指定されていない場合であっても、\n"
18513 "B<swapon> が呼び出された際にスワップ領域全体の破棄が行われる。"
18514
18515 #. type: Plain text
18516 #: build/C/man2/swapon.2:206
18517 msgid "B<mkswap>(8), B<swapoff>(8), B<swapon>(8)"
18518 msgstr "B<mkswap>(8), B<swapoff>(8), B<swapon>(8)"
18519
18520 #. type: TH
18521 #: build/C/man2/syscall.2:42
18522 #, no-wrap
18523 msgid "SYSCALL"
18524 msgstr "SYSCALL"
18525
18526 #. type: Plain text
18527 #: build/C/man2/syscall.2:45
18528 msgid "syscall - indirect system call"
18529 msgstr "syscall - 間接システムコール"
18530
18531 #. type: Plain text
18532 #: build/C/man2/syscall.2:50
18533 #, no-wrap
18534 msgid ""
18535 "B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */\n"
18536 "B<#include E<lt>unistd.hE<gt>>\n"
18537 "B<#include E<lt>sys/syscall.hE<gt>   >/* For SYS_xxx definitions */\n"
18538 msgstr ""
18539 "B<#define _GNU_SOURCE>         /* feature_test_macros(7) 参照 */\n"
18540 "B<#include E<lt>unistd.hE<gt>>\n"
18541 "B<#include E<lt>sys/syscall.hE<gt>   >/* SYS_xxx の定義用 */\n"
18542
18543 #. type: Plain text
18544 #: build/C/man2/syscall.2:52
18545 #, no-wrap
18546 msgid "B<long syscall(long >I<number>B<, ...);>\n"
18547 msgstr "B<long syscall(long >I<number>B<, ...);>\n"
18548
18549 #. type: Plain text
18550 #: build/C/man2/syscall.2:64
18551 msgid ""
18552 "B<syscall>()  is a small library function that invokes the system call whose "
18553 "assembly language interface has the specified I<number> with the specified "
18554 "arguments.  Employing B<syscall>()  is useful, for example, when invoking a "
18555 "system call that has no wrapper function in the C library."
18556 msgstr ""
18557 "B<syscall>() は、システムコールを起動する小さなライブラリ関数で、 I<number> "
18558 "で指定されたアセンブリ言語インターフェースのシステムコールを、指定された引き"
18559 "数をつけて実行する。 B<syscall>() が役に立つのは、例えば C ライブラリにラッ"
18560 "パー関数が存在しないシステムコールを呼び出したい場合である。"
18561
18562 #. type: Plain text
18563 #: build/C/man2/syscall.2:71
18564 msgid ""
18565 "B<syscall>()  saves CPU registers before making the system call, restores "
18566 "the registers upon return from the system call, and stores any error code "
18567 "returned by the system call in B<errno>(3)  if an error occurs."
18568 msgstr ""
18569 "B<syscall>() は、システムコールを行う前に CPU レジスターを保存し、システム"
18570 "コールから返った際にレジスターを復元し、エラーが発生した場合はシステムコール"
18571 "が返したエラーコードを B<errno>(3) に格納する。"
18572
18573 #. type: Plain text
18574 #: build/C/man2/syscall.2:74
18575 msgid ""
18576 "Symbolic constants for system call numbers can be found in the header file "
18577 "I<E<lt>sys/syscall.hE<gt>>."
18578 msgstr ""
18579 "システムコールのシンボル定数は、ヘッダーファイル I<E<lt>sys/syscall.hE<gt>> "
18580 "に書かれている。"
18581
18582 #. type: Plain text
18583 #: build/C/man2/syscall.2:80
18584 msgid ""
18585 "The return value is defined by the system call being invoked.  In general, a "
18586 "0 return value indicates success.  A -1 return value indicates an error, and "
18587 "an error code is stored in I<errno>."
18588 msgstr ""
18589 "返り値は呼び出されたシステムコールによって定義される。 一般に、返り値 0 は成"
18590 "功を表す。 -1 はエラーを表し、エラーコードは I<errno> に入れられる。"
18591
18592 #. type: Plain text
18593 #: build/C/man2/syscall.2:84
18594 msgid "B<syscall>()  first appeared in 4BSD."
18595 msgstr "B<syscall>()  は 4BSD で最初に登場した。"
18596
18597 #. type: SS
18598 #: build/C/man2/syscall.2:84
18599 #, no-wrap
18600 msgid "Architecture-specific requirements"
18601 msgstr "アーキテクチャー固有の要件"
18602
18603 #. type: Plain text
18604 #: build/C/man2/syscall.2:95
18605 msgid ""
18606 "Each architecture ABI has its own requirements on how system call arguments "
18607 "are passed to the kernel.  For system calls that have a glibc wrapper (e.g., "
18608 "most system calls), glibc handles the details of copying arguments to the "
18609 "right registers in a manner suitable for the architecture.  However, when "
18610 "using B<syscall>()  to make a system call, the caller might need to handle "
18611 "architecture-dependent details; this requirement is most commonly "
18612 "encountered on certain 32-bit architectures."
18613 msgstr ""
18614 "各アーキテクチャーの ABI には、 システムコールの引き数のカーネルへの渡し方に"
18615 "関する独自の要件がある。\n"
18616 "(ほとんどのシステムコールのように) glibc ラッパー関数があるシステムコールで"
18617 "は、 glibc が詳細を処理し、アーキテクチャーに応じた方法で引き数が適切なレジス"
18618 "ターにコピーされる。 しかし、 システムコールを呼び出すのに B<syscall>() を使"
18619 "う場合には、 呼び出し側でアーキテクチャー依存の詳細を処理しなければならない場"
18620 "合がある。 これはいくつかの 32 ビットアーキテクチャーでは非常によくあること"
18621 "だ。"
18622
18623 #. type: Plain text
18624 #: build/C/man2/syscall.2:106
18625 msgid ""
18626 "For example, on the ARM architecture Embedded ABI (EABI), a 64-bit value (e."
18627 "g., I<long long>)  must be aligned to an even register pair.  Thus, using "
18628 "B<syscall>()  instead of the wrapper provided by glibc, the B<readahead>()  "
18629 "system call would be invoked as follows on the ARM architecture with the "
18630 "EABI:"
18631 msgstr ""
18632 "例えば、ARM アーキテクチャーの Embedded ABI (EABI) では、 (I<long long> など"
18633 "の) 64 ビット値は偶数番地のレジスターのペアに境界があっていなければならない。"
18634 "したがって、 glibc が提供するラッパー関数ではなく B<syscall>() を使う場合に"
18635 "は、 B<readahead>() システムコールは ARM アーキテクチャーの EABI では以下のよ"
18636 "うにして起動されることになる。"
18637
18638 #. type: Plain text
18639 #: build/C/man2/syscall.2:113
18640 #, no-wrap
18641 msgid ""
18642 "syscall(SYS_readahead, fd, 0,\n"
18643 "        (unsigned int) (offset E<gt>E<gt> 32),\n"
18644 "        (unsigned int) (offset & 0xFFFFFFFF),\n"
18645 "        count);\n"
18646 msgstr ""
18647 "syscall(SYS_readahead, fd, 0,\n"
18648 "        (unsigned int) (offset E<gt>E<gt> 32),\n"
18649 "        (unsigned int) (offset & 0xFFFFFFFF),\n"
18650 "        count);\n"
18651
18652 #. type: Plain text
18653 #: build/C/man2/syscall.2:127
18654 msgid ""
18655 "Since the offset argument is 64 bits, and the first argument (I<fd>)  is "
18656 "passed in I<r0>, the caller must manually split and align the 64-bit value "
18657 "so that it is passed in the I<r2>/I<r3> register pair.  That means inserting "
18658 "a dummy value into I<r1> (the second argument of 0)."
18659 msgstr ""
18660 "オフセット引き数は 64 ビットで、最初の引き数 (I<fd>) は I<r0> で渡されるの"
18661 "で、呼び出し側では手動で 64 ビット値を分割して境界を合わせて、 64 ビット値が "
18662 "I<r2>/I<r3> レジスターペアで渡されるようにしなければならない。このため、 "
18663 "I<r1> (2 番目の引数 0) としてダミー値を挿入している。"
18664
18665 #.  Mike Frysinger: this issue ends up forcing MIPS
18666 #.  O32 to take 7 arguments to syscall()
18667 #. type: Plain text
18668 #: build/C/man2/syscall.2:132
18669 msgid ""
18670 "Similar issues can occur on MIPS with the O32 ABI, on PowerPC with the 32-"
18671 "bit ABI, and on Xtensa."
18672 msgstr ""
18673 "同様のことが、 MIPS の O32 ABI、 PowerPC の 32 ビット ABI や Xtensa でも起こ"
18674 "りうる。"
18675
18676 #. type: Plain text
18677 #: build/C/man2/syscall.2:143
18678 msgid ""
18679 "The affected system calls are B<fadvise64_64>(2), B<ftruncate64>(2), "
18680 "B<posix_fadvise>(2), B<pread64>(2), B<pwrite64>(2), B<readahead>(2), "
18681 "B<sync_file_range>(2), and B<truncate64>(2)."
18682 msgstr ""
18683 "次のシステムコールに影響がある: B<fadvise64_64>(2), B<ftruncate64>(2), "
18684 "B<posix_fadvise>(2), B<pread64>(2), B<pwrite64>(2), B<readahead>(2), "
18685 "B<sync_file_range>(2), B<truncate64>(2)"
18686
18687 #. type: SS
18688 #: build/C/man2/syscall.2:143
18689 #, no-wrap
18690 msgid "Architecture calling conventions"
18691 msgstr "アーキテクチャー毎の呼び出し規約"
18692
18693 #. type: Plain text
18694 #: build/C/man2/syscall.2:147
18695 msgid ""
18696 "Every architecture has its own way of invoking and passing arguments to the "
18697 "kernel.  The details for various architectures are listed in the two tables "
18698 "below."
18699 msgstr ""
18700 "各アーキテクチャーには、それぞれ独自のシステムコール起動方法とカーネルへの引"
18701 "き数の渡し方がある。 各種のアーキテクチャーの詳細を以下の 2 つの表にまとめ"
18702 "る。"
18703
18704 #. type: Plain text
18705 #: build/C/man2/syscall.2:154
18706 msgid ""
18707 "The first table lists the instruction used to transition to kernel mode, "
18708 "(which might not be the fastest or best way to transition to the kernel, so "
18709 "you might have to refer to B<vdso>(7)), the register used to indicate the "
18710 "system call number, and the register used to return the system call result."
18711 msgstr ""
18712 "最初の表は、 カーネルモードに遷移するのに使用される命令、 システムコール番号"
18713 "を示すのに使用されるレジスター、 システムコールの結果を返すのに使用されるレジ"
18714 "スターの一覧である (なお、 ここに載っているカーネルモードに遷移するのに使用さ"
18715 "れる命令は、 カーネルモードに遷移する最速や最善の方法でない場合もあるので、 "
18716 "B<vdso>(7) を参照する必要があるかもしれない)。"
18717
18718 #. type: tbl table
18719 #: build/C/man2/syscall.2:159
18720 #, no-wrap
18721 msgid "arch/ABI\tinstruction\tsyscall #\tretval\tNotes\n"
18722 msgstr "arch/ABI\tinstruction\tsyscall #\tretval\tNotes\n"
18723
18724 #. type: tbl table
18725 #: build/C/man2/syscall.2:161
18726 #, no-wrap
18727 msgid "arm/OABI\tswi NR\t-\ta1\tNR is syscall #\n"
18728 msgstr "arm/OABI\tswi NR\t-\ta1\tNR はシステムコール番号\n"
18729
18730 #. type: tbl table
18731 #: build/C/man2/syscall.2:162
18732 #, no-wrap
18733 msgid "arm/EABI\tswi 0x0\tr7\tr0\n"
18734 msgstr "arm/EABI\tswi 0x0\tr7\tr0\n"
18735
18736 #. type: tbl table
18737 #: build/C/man2/syscall.2:163
18738 #, no-wrap
18739 msgid "arm64\tsvc #0\tx8\tx0\n"
18740 msgstr "arm64\tsvc #0\tx8\tx0\n"
18741
18742 #. type: tbl table
18743 #: build/C/man2/syscall.2:164
18744 #, no-wrap
18745 msgid "blackfin\texcpt 0x0\tP0\tR0\n"
18746 msgstr "blackfin\texcpt 0x0\tP0\tR0\n"
18747
18748 #. type: tbl table
18749 #: build/C/man2/syscall.2:165
18750 #, no-wrap
18751 msgid "i386\tint $0x80\teax\teax\n"
18752 msgstr "i386\tint $0x80\teax\teax\n"
18753
18754 #. type: tbl table
18755 #: build/C/man2/syscall.2:166
18756 #, no-wrap
18757 msgid "ia64\tbreak 0x100000\tr15\tr8\tSee below\n"
18758 msgstr "ia64\tbreak 0x100000\tr15\tr8\t下記参照\n"
18759
18760 #. type: tbl table
18761 #: build/C/man2/syscall.2:167
18762 #, no-wrap
18763 msgid "mips\tsyscall\tv0\tv0\tSee below\n"
18764 msgstr "mips\tsyscall\tv0\tv0\t下記参照\n"
18765
18766 #. type: tbl table
18767 #: build/C/man2/syscall.2:168
18768 #, no-wrap
18769 msgid "parisc\tble 0x100(%sr2, %r0)\tr20\tr28\n"
18770 msgstr "parisc\tble 0x100(%sr2, %r0)\tr20\tr28\n"
18771
18772 #. type: tbl table
18773 #: build/C/man2/syscall.2:169
18774 #, no-wrap
18775 msgid "s390\tsvc 0\tr1\tr2\tSee below\n"
18776 msgstr "s390\tsvc 0\tr1\tr2\t下記参照\n"
18777
18778 #. type: tbl table
18779 #: build/C/man2/syscall.2:170
18780 #, no-wrap
18781 msgid "s390x\tsvc 0\tr1\tr2\tSee below\n"
18782 msgstr "s390\tsvc 0\tr1\tr2\t下記参照\n"
18783
18784 #. type: tbl table
18785 #: build/C/man2/syscall.2:171
18786 #, no-wrap
18787 msgid "sparc/32\tt 0x10\tg1\to0\n"
18788 msgstr "sparc/32\tt 0x10\tg1\to0\n"
18789
18790 #. type: tbl table
18791 #: build/C/man2/syscall.2:172
18792 #, no-wrap
18793 msgid "sparc/64\tt 0x6d\tg1\to0\n"
18794 msgstr "sparc/64\tt 0x6d\tg1\to0\n"
18795
18796 #. type: tbl table
18797 #: build/C/man2/syscall.2:173
18798 #, no-wrap
18799 msgid "x86_64\tsyscall\trax\trax\n"
18800 msgstr "x86_64\tsyscall\trax\trax\n"
18801
18802 #. type: Plain text
18803 #: build/C/man2/syscall.2:178
18804 msgid ""
18805 "For s390 and s390x, NR (the system call number)  may be passed directly with "
18806 "\"svc NR\" if it is less than 256."
18807 msgstr ""
18808 "s390 と s390x では、 NR (システムコール番号) が 256 未満の場合 \"svc NR\" で "
18809 "NR が直接渡される場合がある。"
18810
18811 #. type: Plain text
18812 #: build/C/man2/syscall.2:186
18813 msgid ""
18814 "On a few architectures, a register is used to indicate simple boolean "
18815 "failure of the system call: ia64 uses I<r10> for this purpose, and mips uses "
18816 "I<a3>."
18817 msgstr ""
18818 "少ないがいくつかのアーキテクチャーでは、 システムコールの失敗を示す単純な真偽"
18819 "値がレジスターを使って通知される。この用途に ia64 は I<r10> を使用し、 mips "
18820 "は I<a3> を使用する。"
18821
18822 #. type: Plain text
18823 #: build/C/man2/syscall.2:192
18824 msgid ""
18825 "The second table shows the registers used to pass the system call arguments."
18826 msgstr ""
18827 "2 つ目の表は、システムコールの引き数を渡すのに使用されるレジスターの一覧であ"
18828 "る。"
18829
18830 #. type: tbl table
18831 #: build/C/man2/syscall.2:197
18832 #, no-wrap
18833 msgid "arch/ABI\targ1\targ2\targ3\targ4\targ5\targ6\targ7\tNotes\n"
18834 msgstr "arch/ABI\targ1\targ2\targ3\targ4\targ5\targ6\targ7\t備考\n"
18835
18836 #. type: tbl table
18837 #: build/C/man2/syscall.2:199
18838 #, no-wrap
18839 msgid "arm/OABI\ta1\ta2\ta3\ta4\tv1\tv2\tv3\n"
18840 msgstr "arm/OABI\ta1\ta2\ta3\ta4\tv1\tv2\tv3\n"
18841
18842 #. type: tbl table
18843 #: build/C/man2/syscall.2:200
18844 #, no-wrap
18845 msgid "arm/EABI\tr0\tr1\tr2\tr3\tr4\tr5\tr6\n"
18846 msgstr "arm/EABI\tr0\tr1\tr2\tr3\tr4\tr5\tr6\n"
18847
18848 #. type: tbl table
18849 #: build/C/man2/syscall.2:201
18850 #, no-wrap
18851 msgid "arm64\tx0\tx1\tx2\tx3\tx4\tx5\t-\n"
18852 msgstr "arm64\tx0\tx1\tx2\tx3\tx4\tx5\t-\n"
18853
18854 #. type: tbl table
18855 #: build/C/man2/syscall.2:202
18856 #, no-wrap
18857 msgid "blackfin\tR0\tR1\tR2\tR3\tR4\tR5\t-\n"
18858 msgstr "blackfin\tR0\tR1\tR2\tR3\tR4\tR5\t-\n"
18859
18860 #. type: tbl table
18861 #: build/C/man2/syscall.2:203
18862 #, no-wrap
18863 msgid "i386\tebx\tecx\tedx\tesi\tedi\tebp\t-\n"
18864 msgstr "i386\tebx\tecx\tedx\tesi\tedi\tebp\t-\n"
18865
18866 #. type: tbl table
18867 #: build/C/man2/syscall.2:204
18868 #, no-wrap
18869 msgid "ia64\tout0\tout1\tout2\tout3\tout4\tout5\t-\n"
18870 msgstr "ia64\tout0\tout1\tout2\tout3\tout4\tout5\t-\n"
18871
18872 #. type: tbl table
18873 #: build/C/man2/syscall.2:205
18874 #, no-wrap
18875 msgid "mips/o32\ta0\ta1\ta2\ta3\t-\t-\t-\tSee below\n"
18876 msgstr "mips/o32\ta0\ta1\ta2\ta3\t-\t-\t-\t下記参照\n"
18877
18878 #. type: tbl table
18879 #: build/C/man2/syscall.2:206
18880 #, no-wrap
18881 msgid "mips/n32,64\ta0\ta1\ta2\ta3\ta4\ta5\t-\n"
18882 msgstr "mips/n32,64\ta0\ta1\ta2\ta3\ta4\ta5\t-\n"
18883
18884 #. type: tbl table
18885 #: build/C/man2/syscall.2:207
18886 #, no-wrap
18887 msgid "parisc\tr26\tr25\tr24\tr23\tr22\tr21\t-\n"
18888 msgstr "parisc\tr26\tr25\tr24\tr23\tr22\tr21\t-\n"
18889
18890 #. type: tbl table
18891 #: build/C/man2/syscall.2:208
18892 #, no-wrap
18893 msgid "s390\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18894 msgstr "s390\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18895
18896 #. type: tbl table
18897 #: build/C/man2/syscall.2:209
18898 #, no-wrap
18899 msgid "s390x\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18900 msgstr "s390x\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
18901
18902 #. type: tbl table
18903 #: build/C/man2/syscall.2:210
18904 #, no-wrap
18905 msgid "sparc/32\to0\to1\to2\to3\to4\to5\t-\n"
18906 msgstr "sparc/32\to0\to1\to2\to3\to4\to5\t-\n"
18907
18908 #. type: tbl table
18909 #: build/C/man2/syscall.2:211
18910 #, no-wrap
18911 msgid "sparc/64\to0\to1\to2\to3\to4\to5\t-\n"
18912 msgstr "sparc/64\to0\to1\to2\to3\to4\to5\t-\n"
18913
18914 #. type: tbl table
18915 #: build/C/man2/syscall.2:212
18916 #, no-wrap
18917 msgid "x86_64\trdi\trsi\trdx\tr10\tr8\tr9\t-\n"
18918 msgstr "x86_64\trdi\trsi\trdx\tr10\tr8\tr9\t-\n"
18919
18920 #. type: Plain text
18921 #: build/C/man2/syscall.2:217
18922 msgid ""
18923 "The mips/o32 system call convention passes arguments 5 through 8 on the user "
18924 "stack."
18925 msgstr ""
18926 "mips/o32 のシステムコールの規約では、 ユーザースタックに引き数を 5 個から 8 "
18927 "個渡す。"
18928
18929 #. type: Plain text
18930 #: build/C/man2/syscall.2:224
18931 msgid ""
18932 "Note that these tables don't cover the entire calling convention\\(emsome "
18933 "architectures may indiscriminately clobber other registers not listed here."
18934 msgstr ""
18935 "これらの表にはすべての呼び出し規約が記載されているわけではない点に注意するこ"
18936 "と \\(em アーキテクチャーによっては、ここに記載されていない他のレジスターが見"
18937 "境なく上書きされる場合もある。"
18938
18939 #. type: Plain text
18940 #: build/C/man2/syscall.2:231
18941 #, no-wrap
18942 msgid ""
18943 "#define _GNU_SOURCE\n"
18944 "#include E<lt>unistd.hE<gt>\n"
18945 "#include E<lt>sys/syscall.hE<gt>\n"
18946 "#include E<lt>sys/types.hE<gt>\n"
18947 "#include E<lt>signal.hE<gt>\n"
18948 msgstr ""
18949 "#define _GNU_SOURCE\n"
18950 "#include E<lt>unistd.hE<gt>\n"
18951 "#include E<lt>sys/syscall.hE<gt>\n"
18952 "#include E<lt>sys/types.hE<gt>\n"
18953 "#include E<lt>signal.hE<gt>\n"
18954
18955 #. type: Plain text
18956 #: build/C/man2/syscall.2:236
18957 #, no-wrap
18958 msgid ""
18959 "int\n"
18960 "main(int argc, char *argv[])\n"
18961 "{\n"
18962 "    pid_t tid;\n"
18963 msgstr ""
18964 "int\n"
18965 "main(int argc, char *argv[])\n"
18966 "{\n"
18967 "    pid_t tid;\n"
18968
18969 #. type: Plain text
18970 #: build/C/man2/syscall.2:240
18971 #, no-wrap
18972 msgid ""
18973 "    tid = syscall(SYS_gettid);\n"
18974 "    tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);\n"
18975 "}\n"
18976 msgstr ""
18977 "    tid = syscall(SYS_gettid);\n"
18978 "    tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);\n"
18979 "}\n"
18980
18981 #. type: Plain text
18982 #: build/C/man2/syscall.2:247
18983 msgid "B<_syscall>(2), B<intro>(2), B<syscalls>(2), B<errno>(3), B<vdso>(7)"
18984 msgstr "B<_syscall>(2), B<intro>(2), B<syscalls>(2), B<errno>(3), B<vdso>(7)"
18985
18986 #. type: TH
18987 #: build/C/man2/syscalls.2:31
18988 #, no-wrap
18989 msgid "SYSCALLS"
18990 msgstr "SYSCALLS"
18991
18992 #. type: Plain text
18993 #: build/C/man2/syscalls.2:34
18994 msgid "syscalls - Linux system calls"
18995 msgstr "syscalls - Linux のシステムコール"
18996
18997 #. type: Plain text
18998 #: build/C/man2/syscalls.2:36
18999 msgid "Linux system calls."
19000 msgstr "Linux のシステムコール。"
19001
19002 #. type: Plain text
19003 #: build/C/man2/syscalls.2:39
19004 msgid ""
19005 "The system call is the fundamental interface between an application and the "
19006 "Linux kernel."
19007 msgstr ""
19008 "システムコールは、アプリケーションと Linux カーネルとの間の 基本的なインター"
19009 "フェースである。"
19010
19011 #. type: SS
19012 #: build/C/man2/syscalls.2:39
19013 #, no-wrap
19014 msgid "System calls and library wrapper functions"
19015 msgstr "システムコールとライブラリのラッパー関数"
19016
19017 #. type: Plain text
19018 #: build/C/man2/syscalls.2:49
19019 msgid ""
19020 "System calls are generally not invoked directly, but rather via wrapper "
19021 "functions in glibc (or perhaps some other library).  For details of direct "
19022 "invocation of a system call, see B<intro>(2).  Often, but not always, the "
19023 "name of the wrapper function is the same as the name of the system call that "
19024 "it invokes.  For example, glibc contains a function B<truncate>()  which "
19025 "invokes the underlying \"truncate\" system call."
19026 msgstr ""
19027 "システムコールは一般には直接起動されず、 glibc (や他の何らかのライブラリ)  経"
19028 "由で起動される。 システムコールの直接起動については、詳細は B<intro>(2)  を参"
19029 "照のこと。 いつもという訳ではないが、普通は、ラッパー関数の名前はその関数が起"
19030 "動する システムコールの名前と同じである。 例えば、glibc には B<truncate>()  "
19031 "という関数があり、この関数は \"truncate\" システムコールを起動する。"
19032
19033 #. type: Plain text
19034 #: build/C/man2/syscalls.2:67
19035 msgid ""
19036 "Often the glibc wrapper function is quite thin, doing little work other than "
19037 "copying arguments to the right registers before invoking the system call, "
19038 "and then setting I<errno> appropriately after the system call has returned.  "
19039 "(These are the same steps that are performed by B<syscall>(2), which can be "
19040 "used to invoke system calls for which no wrapper function is provided.)  "
19041 "Note: system calls indicate a failure by returning a negative error number "
19042 "to the caller; when this happens, the wrapper function negates the returned "
19043 "error number (to make it positive), copies it to I<errno>, and returns -1 to "
19044 "the caller of the wrapper."
19045 msgstr ""
19046 "たいていの場合、glibc のラッパー関数はかなり簡単なもので、 システムコールを起"
19047 "動する前に引き数を適切なレジスターにコピーし、 システムコールが返った後は "
19048 "I<errno> を適切に設定する以外は、ほとんど処理を行わない (これらは、ラッパー関"
19049 "数が提供されていない場合に システムコールを起動するのに使用する "
19050 "B<syscall>(2)  により実行される処理と同じである)。 [注意] システムコールは失"
19051 "敗を示すのに負のエラー番号を呼び出し元に返す。 失敗が起こった際には、ラッパー"
19052 "関数は返されたエラー番号を反転して (正の値に変換し)、それを I<errno> にコピー"
19053 "し、ラッパー関数の呼び出し元に -1 を返す。"
19054
19055 #. type: Plain text
19056 #: build/C/man2/syscalls.2:79
19057 msgid ""
19058 "Sometimes, however, the wrapper function does some extra work before "
19059 "invoking the system call.  For example, nowadays there are (for reasons "
19060 "described below) two related system calls, B<truncate>(2)  and "
19061 "B<truncate64>(2), and the glibc B<truncate>()  wrapper function checks which "
19062 "of those system calls are provided by the kernel and determines which should "
19063 "be employed."
19064 msgstr ""
19065 "しかしながら、時には、ラッパー関数がシステムコールを起動する前に 何らかの追加"
19066 "の処理を行う場合がある。 例えば、現在、 二つの関連するシステムコール "
19067 "B<truncate>(2)  と B<truncate64>(2)  があり、glibc のラッパー関数 "
19068 "B<truncate>()  は、カーネルがこれらのシステムコールのうちどちらを提供している"
19069 "かをチェックし、 どちらを採用するかを決定する。"
19070
19071 #. type: SS
19072 #: build/C/man2/syscalls.2:79
19073 #, no-wrap
19074 msgid "System call list"
19075 msgstr "システムコールのリスト"
19076
19077 #. type: Plain text
19078 #: build/C/man2/syscalls.2:87
19079 msgid ""
19080 "Below is a list of the Linux system calls.  In the list, the I<Kernel> "
19081 "column indicates the kernel version for those system calls that were new in "
19082 "Linux 2.2, or have appeared since that kernel version.  Note the following "
19083 "points:"
19084 msgstr ""
19085 "以下は Linux のシステムコールのリストである。 このリストで、 I<Kernel> の列"
19086 "は、Linux 2.2 以降で登場したシステムコールが 登場したカーネルバージョンを示"
19087 "す。 以下に詳細な説明を記す。"
19088
19089 #. type: Plain text
19090 #: build/C/man2/syscalls.2:90
19091 msgid ""
19092 "Where no kernel version is indicated, the system call appeared in kernel 1.0 "
19093 "or earlier."
19094 msgstr ""
19095 "カーネルバージョンがない場合、そのシステムコールは カーネル 1.0 もしくはそれ"
19096 "以前に登場した。"
19097
19098 #. type: Plain text
19099 #: build/C/man2/syscalls.2:96
19100 msgid ""
19101 "Where a system call is marked \"1.2\" this means the system call probably "
19102 "appeared in a 1.1.x kernel version, and first appeared in a stable kernel "
19103 "with 1.2.  (Development of the 1.2 kernel was initiated from a branch of "
19104 "kernel 1.0.6 via the 1.1.x unstable kernel series.)"
19105 msgstr ""
19106 "システムコールに \"1.2\" と書かれている場合、 そのシステムコールがおそらく"
19107 "バージョン 1.1.x のカーネルで登場し、 安定版のカーネルでは 1.2 で初めて登場し"
19108 "たことを意味する。 (バージョン 1.2 のカーネルは、カーネル 1.0.6 から分岐し、 "
19109 "バージョン 1.1.x の不安定版のカーネル系列として開発された。)"
19110
19111 #.  Was kernel 2.0 started from a branch of 1.2.10?
19112 #.  At least from the timestamps of the tarballs of
19113 #.  of 1.2.10 and 1.3.0, that's how it looks, but in
19114 #.  fact the diff doesn't seem very clear, the
19115 #.  1.3.0 .tar.bz is much bigger (2.0 MB) than the
19116 #.  1.2.10 .tar.bz2 (1.8 MB), and AEB points out the
19117 #.  timestamps of some files in 1.3.0 seem to be older
19118 #.  than those in 1.2.10.  All of this suggests
19119 #.  that there might not have been a clean branch point.
19120 #. type: Plain text
19121 #: build/C/man2/syscalls.2:112
19122 msgid ""
19123 "Where a system call is marked \"2.0\" this means the system call probably "
19124 "appeared in a 1.3.x kernel version, and first appeared in a stable kernel "
19125 "with 2.0.  (Development of the 2.0 kernel was initiated from a branch of "
19126 "kernel 1.2.x, somewhere around 1.2.10, via the 1.3.x unstable kernel series.)"
19127 msgstr ""
19128 "システムコールに \"2.0\" と書かれている場合、 そのシステムコールがおそらく"
19129 "バージョン 1.3.x のカーネルで登場し、 安定版のカーネルでは 2.0 で初めて登場し"
19130 "たことを意味する。 (バージョン 2.0 のカーネルは、バージョン 1.2.10 あたりの"
19131 "カーネル 1.2.x から分岐し、バージョン 1.3.x の不安定版のカーネル系列として開"
19132 "発された。)"
19133
19134 #. type: Plain text
19135 #: build/C/man2/syscalls.2:118
19136 msgid ""
19137 "Where a system call is marked \"2.2\" this means the system call probably "
19138 "appeared in a 2.1.x kernel version, and first appeared in a stable kernel "
19139 "with 2.2.0.  (Development of the 2.2 kernel was initiated from a branch of "
19140 "kernel 2.0.21 via the 2.1.x unstable kernel series.)"
19141 msgstr ""
19142 "システムコールに \"2.2\" と書かれている場合、 そのシステムコールがおそらく"
19143 "バージョン 2.1.x のカーネルで登場し、 安定版のカーネルでは 2.2.0 で初めて登場"
19144 "したことを意味する。 (バージョン 2.2 のカーネルは、カーネル 2.0.21 から分岐"
19145 "し、 バージョン 2.1.x の不安定版のカーネル系列として開発された。)"
19146
19147 #. type: Plain text
19148 #: build/C/man2/syscalls.2:124
19149 msgid ""
19150 "Where a system call is marked \"2.4\" this means the system call probably "
19151 "appeared in a 2.3.x kernel version, and first appeared in a stable kernel "
19152 "with 2.4.0.  (Development of the 2.4 kernel was initiated from a branch of "
19153 "kernel 2.2.8 via the 2.3.x unstable kernel series.)"
19154 msgstr ""
19155 "システムコールに \"2.4\" と書かれている場合、 そのシステムコールがおそらく"
19156 "バージョン 2.3.x のカーネルで登場し、 安定版のカーネルでは 2.4.0 で初めて登場"
19157 "したことを意味する。 (バージョン 2.4 のカーネルは、カーネル 2.2.8 から分岐"
19158 "し、 バージョン 2.3.x の不安定版のカーネル系列として開発された。)"
19159
19160 #. type: Plain text
19161 #: build/C/man2/syscalls.2:130
19162 msgid ""
19163 "Where a system call is marked \"2.6\" this means the system call probably "
19164 "appeared in a 2.5.x kernel version, and first appeared in a stable kernel "
19165 "with 2.6.0.  (Development of kernel 2.6 was initiated from a branch of "
19166 "kernel 2.4.15 via the 2.5.x unstable kernel series.)"
19167 msgstr ""
19168 "システムコールに \"2.6\" と書かれている場合、 そのシステムコールがおそらく"
19169 "バージョン 2.5.x のカーネルで登場し、 安定版のカーネルでは 2.6.0 で初めて登場"
19170 "したことを意味する。 (バージョン 2.6 のカーネルは、カーネル 2.4.15 から分岐"
19171 "し、 バージョン 2.5.x の不安定版のカーネル系列として開発された。)"
19172
19173 #. type: Plain text
19174 #: build/C/man2/syscalls.2:137
19175 msgid ""
19176 "Starting with kernel 2.6.0, the development model changed, and new system "
19177 "calls may appear in each 2.6.x release.  In this case, the exact version "
19178 "number where the system call appeared is shown.  This convention continues "
19179 "with the 3.x kernel series, which followed on from kernel 2.6.39."
19180 msgstr ""
19181 "カーネル 2.6.0 から開発モデルは変更され、新しいシステムコールが\n"
19182 "個々の 2.6.x のリリースでも登場するようになった。\n"
19183 "その場合、このリストでは、システムコールが登場した\n"
19184 "厳密なバージョン番号が記載されている。この慣習は、カーネル 2.6.39 の\n"
19185 "後継となるバージョン 3.x 系列のカーネルでも継続されている。"
19186
19187 #. type: Plain text
19188 #: build/C/man2/syscalls.2:145
19189 msgid ""
19190 "In some cases, a system call was added to a stable kernel series after it "
19191 "branched from the previous stable kernel series, and then backported into "
19192 "the earlier stable kernel series.  For example some system calls that "
19193 "appeared in 2.6.x were also backported into a 2.4.x release after 2.4.15.  "
19194 "When this is so, the version where the system call appeared in both of the "
19195 "major kernel series is listed."
19196 msgstr ""
19197 "前の安定版カーネル系列から分岐した後に安定版カーネル系列にシステムコール が追"
19198 "加された場合、以前の安定版カーネル系列にそのシステムコールが 移植 (backport) "
19199 "されることがある。 例えば、2.6.x で登場したシステムコールのいくつかは、 "
19200 "2.4.15 以降の 2.4.x リリースにも backport された。 この場合、システムコールが"
19201 "登場したバージョンとして、 両方の安定版系列のバージョンが記載されている。"
19202
19203 #.  Looking at scripts/checksyscalls.sh in the kernel source is
19204 #.  instructive about x86 specifics.
19205 #. type: Plain text
19206 #: build/C/man2/syscalls.2:152
19207 msgid ""
19208 "The list of system calls that are available as at kernel 3.15 (or in a few "
19209 "cases only on older kernels) is as follows:"
19210 msgstr ""
19211 "カーネル 3.15 で利用可能なシステムコールのリストを以下に示す\n"
19212 "(それ以前のカーネルでだけ利用可能なものも少数だが含まれる):"
19213
19214 #. type: tbl table
19215 #: build/C/man2/syscalls.2:157
19216 #, no-wrap
19217 msgid "B<System call>\tB<Kernel>\tB<Notes>\n"
19218 msgstr "B<System call>\tB<Kernel>\tB<Notes>\n"
19219
19220 #. type: tbl table
19221 #: build/C/man2/syscalls.2:159
19222 #, no-wrap
19223 msgid "B<_llseek>(2)\t1.2\n"
19224 msgstr "B<_llseek>(2)\t1.2\n"
19225
19226 #. type: tbl table
19227 #: build/C/man2/syscalls.2:160
19228 #, no-wrap
19229 msgid "B<_newselect>(2)\t2.0\n"
19230 msgstr "B<_newselect>(2)\t2.0\n"
19231
19232 #. type: tbl table
19233 #: build/C/man2/syscalls.2:161
19234 #, no-wrap
19235 msgid "B<_sysctl>(2)\t2.0\n"
19236 msgstr "B<_sysctl>(2)\t2.0\n"
19237
19238 #. type: tbl table
19239 #: build/C/man2/syscalls.2:162
19240 #, no-wrap
19241 msgid "B<accept>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19242 msgstr "B<accept>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19243
19244 #. type: tbl table
19245 #: build/C/man2/syscalls.2:163
19246 #, no-wrap
19247 msgid "B<accept4>(2)\t2.6.28\n"
19248 msgstr "B<accept4>(2)\t2.6.28\n"
19249
19250 #. type: tbl table
19251 #: build/C/man2/syscalls.2:164
19252 #, no-wrap
19253 msgid "B<access>(2)\t1.0\n"
19254 msgstr "B<access>(2)\t1.0\n"
19255
19256 #. type: tbl table
19257 #: build/C/man2/syscalls.2:165
19258 #, no-wrap
19259 msgid "B<acct>(2)\t1.0\n"
19260 msgstr "B<acct>(2)\t1.0\n"
19261
19262 #. type: tbl table
19263 #: build/C/man2/syscalls.2:166
19264 #, no-wrap
19265 msgid "B<add_key>(2)\t2.6.11\n"
19266 msgstr "B<add_key>(2)\t2.6.11\n"
19267
19268 #. type: tbl table
19269 #: build/C/man2/syscalls.2:167
19270 #, no-wrap
19271 msgid "B<adjtimex>(2)\t1.0\n"
19272 msgstr "B<adjtimex>(2)\t1.0\n"
19273
19274 #. type: tbl table
19275 #: build/C/man2/syscalls.2:168
19276 #, no-wrap
19277 msgid "B<alarm>(2)\t1.0\n"
19278 msgstr "B<alarm>(2)\t1.0\n"
19279
19280 #. type: tbl table
19281 #: build/C/man2/syscalls.2:169
19282 #, no-wrap
19283 msgid "B<alloc_hugepages>(2)\t2.5.36\tRemoved in 2.5.44\n"
19284 msgstr "B<alloc_hugepages>(2)\t2.5.36\t2.5.44 で削除\n"
19285
19286 #. type: tbl table
19287 #: build/C/man2/syscalls.2:170
19288 #, no-wrap
19289 msgid "B<bdflush>(2)\t1.2\tT{\n"
19290 msgstr "B<bdflush>(2)\t1.2\tT{\n"
19291
19292 #. type: tbl table
19293 #: build/C/man2/syscalls.2:171
19294 #, no-wrap
19295 msgid "Deprecated (does nothing)\n"
19296 msgstr "2.6 以降で非推奨\n"
19297
19298 #. type: tbl table
19299 #: build/C/man2/syscalls.2:172 build/C/man2/syscalls.2:185
19300 #: build/C/man2/syscalls.2:320 build/C/man2/syscalls.2:393
19301 #: build/C/man2/syscalls.2:409 build/C/man2/syscalls.2:422
19302 #, no-wrap
19303 msgid ".br\n"
19304 msgstr ".br\n"
19305
19306 #. type: tbl table
19307 #: build/C/man2/syscalls.2:173
19308 #, no-wrap
19309 msgid "since 2.6\n"
19310 msgstr "(何もしない)\n"
19311
19312 #. type: tbl table
19313 #: build/C/man2/syscalls.2:174 build/C/man2/syscalls.2:187
19314 #: build/C/man2/syscalls.2:322 build/C/man2/syscalls.2:395
19315 #: build/C/man2/syscalls.2:411 build/C/man2/syscalls.2:424
19316 #: build/C/man2/syscalls.2:601
19317 #, no-wrap
19318 msgid "T}\n"
19319 msgstr "T}\n"
19320
19321 #. type: tbl table
19322 #: build/C/man2/syscalls.2:175
19323 #, no-wrap
19324 msgid "B<bind>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19325 msgstr "B<bind>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19326
19327 #. type: tbl table
19328 #: build/C/man2/syscalls.2:176
19329 #, no-wrap
19330 msgid "B<bpf>(2)\t3.18\n"
19331 msgstr "B<bpf>(2)\t3.18\n"
19332
19333 #. type: tbl table
19334 #: build/C/man2/syscalls.2:177
19335 #, no-wrap
19336 msgid "B<brk>(2)\t1.0\n"
19337 msgstr "B<brk>(2)\t1.0\n"
19338
19339 #. type: tbl table
19340 #: build/C/man2/syscalls.2:178
19341 #, no-wrap
19342 msgid "B<cacheflush>(2)\t1.2\tNot on x86\n"
19343 msgstr "B<cacheflush>(2)\t1.2\tx86 にはない\n"
19344
19345 #. type: tbl table
19346 #: build/C/man2/syscalls.2:179
19347 #, no-wrap
19348 msgid "B<capget>(2)\t2.2\n"
19349 msgstr "B<capget>(2)\t2.2\n"
19350
19351 #. type: tbl table
19352 #: build/C/man2/syscalls.2:180
19353 #, no-wrap
19354 msgid "B<capset>(2)\t2.2\n"
19355 msgstr "B<capset>(2)\t2.2\n"
19356
19357 #. type: tbl table
19358 #: build/C/man2/syscalls.2:181
19359 #, no-wrap
19360 msgid "B<chdir>(2)\t1.0\n"
19361 msgstr "B<chdir>(2)\t1.0\n"
19362
19363 #. type: tbl table
19364 #: build/C/man2/syscalls.2:182
19365 #, no-wrap
19366 msgid "B<chmod>(2)\t1.0\n"
19367 msgstr "B<chmod>(2)\t1.0\n"
19368
19369 #. type: tbl table
19370 #: build/C/man2/syscalls.2:183
19371 #, no-wrap
19372 msgid "B<chown>(2)\t2.2\tT{\n"
19373 msgstr "B<chown>(2)\t2.2\tT{\n"
19374
19375 #. type: tbl table
19376 #: build/C/man2/syscalls.2:184 build/C/man2/syscalls.2:319
19377 #, no-wrap
19378 msgid "See B<chown>(2) for\n"
19379 msgstr "バージョン毎の詳細は\n"
19380
19381 #. type: tbl table
19382 #: build/C/man2/syscalls.2:186 build/C/man2/syscalls.2:321
19383 #, no-wrap
19384 msgid "version details\n"
19385 msgstr "B<chown>(2) を参照。\n"
19386
19387 #. type: tbl table
19388 #: build/C/man2/syscalls.2:188
19389 #, no-wrap
19390 msgid "B<chown32>(2)\t2.4\n"
19391 msgstr "B<chown32>(2)\t2.4\n"
19392
19393 #. type: tbl table
19394 #: build/C/man2/syscalls.2:189
19395 #, no-wrap
19396 msgid "B<chroot>(2)\t1.0\n"
19397 msgstr "B<chroot>(2)\t1.0\n"
19398
19399 #. type: tbl table
19400 #: build/C/man2/syscalls.2:190
19401 #, no-wrap
19402 msgid "B<clock_adjtime>(2)\t2.6.39\n"
19403 msgstr "B<clock_adjtime>(2)\t2.6.39\n"
19404
19405 #. type: tbl table
19406 #: build/C/man2/syscalls.2:191
19407 #, no-wrap
19408 msgid "B<clock_getres>(2)\t2.6\n"
19409 msgstr "B<clock_getres>(2)\t2.6\n"
19410
19411 #. type: tbl table
19412 #: build/C/man2/syscalls.2:192
19413 #, no-wrap
19414 msgid "B<clock_gettime>(2)\t2.6\n"
19415 msgstr "B<clock_gettime>(2)\t2.6\n"
19416
19417 #. type: tbl table
19418 #: build/C/man2/syscalls.2:193
19419 #, no-wrap
19420 msgid "B<clock_nanosleep>(2)\t2.6\n"
19421 msgstr "B<clock_nanosleep>(2)\t2.6\n"
19422
19423 #. type: tbl table
19424 #: build/C/man2/syscalls.2:194
19425 #, no-wrap
19426 msgid "B<clock_settime>(2)\t2.6\n"
19427 msgstr "B<clock_settime>(2)\t2.6\n"
19428
19429 #. type: tbl table
19430 #: build/C/man2/syscalls.2:195
19431 #, no-wrap
19432 msgid "B<clone>(2)\t1.0\n"
19433 msgstr "B<clone>(2)\t1.0\n"
19434
19435 #. type: tbl table
19436 #: build/C/man2/syscalls.2:196
19437 #, no-wrap
19438 msgid "B<close>(2)\t1.0\n"
19439 msgstr "B<close>(2)\t1.0\n"
19440
19441 #. type: tbl table
19442 #: build/C/man2/syscalls.2:197
19443 #, no-wrap
19444 msgid "B<connect>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19445 msgstr "B<connect>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19446
19447 #. type: tbl table
19448 #: build/C/man2/syscalls.2:198
19449 #, no-wrap
19450 msgid "B<creat>(2)\t1.0\n"
19451 msgstr "B<creat>(2)\t1.0\n"
19452
19453 #. type: tbl table
19454 #: build/C/man2/syscalls.2:199
19455 #, no-wrap
19456 msgid "B<create_module>(2)\t1.0\tRemoved in 2.6\n"
19457 msgstr "B<create_module>(2)\t1.0\t2.6 で削除\n"
19458
19459 #. type: tbl table
19460 #: build/C/man2/syscalls.2:200
19461 #, no-wrap
19462 msgid "B<delete_module>(2)\t1.0\n"
19463 msgstr "B<delete_module>(2)\t1.0\n"
19464
19465 #. type: tbl table
19466 #: build/C/man2/syscalls.2:201
19467 #, no-wrap
19468 msgid "B<dup>(2)\t1.0\n"
19469 msgstr "B<dup>(2)\t1.0\n"
19470
19471 #. type: tbl table
19472 #: build/C/man2/syscalls.2:202
19473 #, no-wrap
19474 msgid "B<dup2>(2)\t1.0\n"
19475 msgstr "B<dup2>(2)\t1.0\n"
19476
19477 #. type: tbl table
19478 #: build/C/man2/syscalls.2:203
19479 #, no-wrap
19480 msgid "B<dup3>(2)\t2.6.27\n"
19481 msgstr "B<dup3>(2)\t2.6.27\n"
19482
19483 #. type: tbl table
19484 #: build/C/man2/syscalls.2:204
19485 #, no-wrap
19486 msgid "B<epoll_create>(2)\t2.6\n"
19487 msgstr "B<epoll_create>(2)\t2.6\n"
19488
19489 #. type: tbl table
19490 #: build/C/man2/syscalls.2:205
19491 #, no-wrap
19492 msgid "B<epoll_create1>(2)\t2.6.27\n"
19493 msgstr "B<epoll_create1>(2)\t2.6.27\n"
19494
19495 #. type: tbl table
19496 #: build/C/man2/syscalls.2:206
19497 #, no-wrap
19498 msgid "B<epoll_ctl>(2)\t2.6\n"
19499 msgstr "B<epoll_ctl>(2)\t2.6\n"
19500
19501 #. type: tbl table
19502 #: build/C/man2/syscalls.2:207
19503 #, no-wrap
19504 msgid "B<epoll_pwait>(2)\t2.6.19\n"
19505 msgstr "B<epoll_pwait>(2)\t2.6.19\n"
19506
19507 #. type: tbl table
19508 #: build/C/man2/syscalls.2:208
19509 #, no-wrap
19510 msgid "B<epoll_wait>(2)\t2.6\n"
19511 msgstr "B<epoll_wait>(2)\t2.6\n"
19512
19513 #. type: tbl table
19514 #: build/C/man2/syscalls.2:209
19515 #, no-wrap
19516 msgid "B<eventfd>(2)\t2.6.22\n"
19517 msgstr "B<eventfd>(2)\t2.6.22\n"
19518
19519 #. type: tbl table
19520 #: build/C/man2/syscalls.2:210
19521 #, no-wrap
19522 msgid "B<eventfd2>(2)\t2.6.27\n"
19523 msgstr "B<eventfd2>(2)\t2.6.27\n"
19524
19525 #. type: tbl table
19526 #: build/C/man2/syscalls.2:211
19527 #, no-wrap
19528 msgid "B<execve>(2)\t1.0\n"
19529 msgstr "B<execve>(2)\t1.0\n"
19530
19531 #. type: tbl table
19532 #: build/C/man2/syscalls.2:212
19533 #, no-wrap
19534 msgid "B<execveat>(2)\t3.19\n"
19535 msgstr "B<execveat>(2)\t3.19\n"
19536
19537 #. type: tbl table
19538 #: build/C/man2/syscalls.2:213
19539 #, no-wrap
19540 msgid "B<exit>(2)\t1.0\n"
19541 msgstr "B<exit>(2)\t1.0\n"
19542
19543 #. type: tbl table
19544 #: build/C/man2/syscalls.2:214
19545 #, no-wrap
19546 msgid "B<exit_group>(2)\t2.6\n"
19547 msgstr "B<exit_group>(2)\t2.6\n"
19548
19549 #. type: tbl table
19550 #: build/C/man2/syscalls.2:215
19551 #, no-wrap
19552 msgid "B<faccessat>(2)\t2.6.16\n"
19553 msgstr "B<faccessat>(2)\t2.6.16\n"
19554
19555 #. type: tbl table
19556 #: build/C/man2/syscalls.2:216
19557 #, no-wrap
19558 msgid "B<fadvise64>(2)\t2.6\n"
19559 msgstr "B<fadvise64>(2)\t2.6\n"
19560
19561 #.  Implements \fBposix_fadvise\fP(2)
19562 #. type: tbl table
19563 #: build/C/man2/syscalls.2:218
19564 #, no-wrap
19565 msgid "B<fadvise64_64>(2)\t2.6\n"
19566 msgstr "B<fadvise64_64>(2)\t2.6\n"
19567
19568 #. type: tbl table
19569 #: build/C/man2/syscalls.2:219
19570 #, no-wrap
19571 msgid "B<fallocate>(2)\t2.6.23\n"
19572 msgstr "B<fallocate>(2)\t2.6.23\n"
19573
19574 #. type: tbl table
19575 #: build/C/man2/syscalls.2:220
19576 #, no-wrap
19577 msgid "B<fanotify_init>(2)\t2.6.37\n"
19578 msgstr "B<fanotify_init>(2)\t2.6.37\n"
19579
19580 #. type: tbl table
19581 #: build/C/man2/syscalls.2:221
19582 #, no-wrap
19583 msgid "B<fanotify_mark>(2)\t2.6.37\n"
19584 msgstr "B<fanotify_mark>(2)\t2.6.37\n"
19585
19586 #.  The fanotify calls were added in Linux 2.6.36,
19587 #.  but disabled while the API was finalized.
19588 #. type: tbl table
19589 #: build/C/man2/syscalls.2:224
19590 #, no-wrap
19591 msgid "B<fchdir>(2)\t1.0\n"
19592 msgstr "B<fchdir>(2)\t1.0\n"
19593
19594 #. type: tbl table
19595 #: build/C/man2/syscalls.2:225
19596 #, no-wrap
19597 msgid "B<fchmod>(2)\t1.0\n"
19598 msgstr "B<fchmod>(2)\t1.0\n"
19599
19600 #. type: tbl table
19601 #: build/C/man2/syscalls.2:226
19602 #, no-wrap
19603 msgid "B<fchmodat>(2)\t2.6.16\n"
19604 msgstr "B<fchmodat>(2)\t2.6.16\n"
19605
19606 #. type: tbl table
19607 #: build/C/man2/syscalls.2:227
19608 #, no-wrap
19609 msgid "B<fchown>(2)\t1.0\n"
19610 msgstr "B<fchown>(2)\t1.0\n"
19611
19612 #. type: tbl table
19613 #: build/C/man2/syscalls.2:228
19614 #, no-wrap
19615 msgid "B<fchown32>(2)\t2.4\n"
19616 msgstr "B<fchown32>(2)\t2.4\n"
19617
19618 #. type: tbl table
19619 #: build/C/man2/syscalls.2:229
19620 #, no-wrap
19621 msgid "B<fchownat>(2)\t2.6.16\n"
19622 msgstr "B<fchownat>(2)\t2.6.16\n"
19623
19624 #. type: tbl table
19625 #: build/C/man2/syscalls.2:230
19626 #, no-wrap
19627 msgid "B<fcntl>(2)\t1.0\n"
19628 msgstr "B<fcntl>(2)\t1.0\n"
19629
19630 #. type: tbl table
19631 #: build/C/man2/syscalls.2:231
19632 #, no-wrap
19633 msgid "B<fcntl64>(2)\t2.4\n"
19634 msgstr "B<fcntl64>(2)\t2.4\n"
19635
19636 #. type: tbl table
19637 #: build/C/man2/syscalls.2:232
19638 #, no-wrap
19639 msgid "B<fdatasync>(2)\t2.0\n"
19640 msgstr "B<fdatasync>(2)\t2.0\n"
19641
19642 #. type: tbl table
19643 #: build/C/man2/syscalls.2:233
19644 #, no-wrap
19645 msgid "B<fgetxattr>(2)\t2.6; 2.4.18\n"
19646 msgstr "B<fgetxattr>(2)\t2.6; 2.4.18\n"
19647
19648 #. type: tbl table
19649 #: build/C/man2/syscalls.2:234
19650 #, no-wrap
19651 msgid "B<finit_module>(2)\t3.8\n"
19652 msgstr "B<finit_module>(2)\t3.8\n"
19653
19654 #. type: tbl table
19655 #: build/C/man2/syscalls.2:235
19656 #, no-wrap
19657 msgid "B<flistxattr>(2)\t2.6; 2.4.18\n"
19658 msgstr "B<flistxattr>(2)\t2.6; 2.4.18\n"
19659
19660 #. type: tbl table
19661 #: build/C/man2/syscalls.2:236
19662 #, no-wrap
19663 msgid "B<flock>(2)\t2.0\n"
19664 msgstr "B<flock>(2)\t2.0\n"
19665
19666 #. type: tbl table
19667 #: build/C/man2/syscalls.2:237
19668 #, no-wrap
19669 msgid "B<fork>(2)\t1.0\n"
19670 msgstr "B<fork>(2)\t1.0\n"
19671
19672 #. type: tbl table
19673 #: build/C/man2/syscalls.2:238
19674 #, no-wrap
19675 msgid "B<free_hugepages>(2)\t2.5.36\tRemoved in 2.5.44\n"
19676 msgstr "B<free_hugepages>(2)\t2.5.36\t2.5.44 で削除\n"
19677
19678 #. type: tbl table
19679 #: build/C/man2/syscalls.2:239
19680 #, no-wrap
19681 msgid "B<fremovexattr>(2)\t2.6; 2.4.18\n"
19682 msgstr "B<fremovexattr>(2)\t2.6; 2.4.18\n"
19683
19684 #. type: tbl table
19685 #: build/C/man2/syscalls.2:240
19686 #, no-wrap
19687 msgid "B<fsetxattr>(2)\t2.6; 2.4.18\n"
19688 msgstr "B<fsetxattr>(2)\t2.6; 2.4.18\n"
19689
19690 #. type: tbl table
19691 #: build/C/man2/syscalls.2:241
19692 #, no-wrap
19693 msgid "B<fstat>(2)\t1.0\n"
19694 msgstr "B<fstat>(2)\t1.0\n"
19695
19696 #. type: tbl table
19697 #: build/C/man2/syscalls.2:242
19698 #, no-wrap
19699 msgid "B<fstat64>(2)\t2.4\n"
19700 msgstr "B<fstat64>(2)\t2.4\n"
19701
19702 #. type: tbl table
19703 #: build/C/man2/syscalls.2:243
19704 #, no-wrap
19705 msgid "B<fstatat64>(2)\t2.6.16\n"
19706 msgstr "B<fstatat64>(2)\t2.6.16\n"
19707
19708 #. type: tbl table
19709 #: build/C/man2/syscalls.2:244
19710 #, no-wrap
19711 msgid "B<fstatfs>(2)\t1.0\n"
19712 msgstr "B<fstatfs>(2)\t1.0\n"
19713
19714 #. type: tbl table
19715 #: build/C/man2/syscalls.2:245
19716 #, no-wrap
19717 msgid "B<fstatfs64>(2)\t2.6\n"
19718 msgstr "B<fstatfs64>(2)\t2.6\n"
19719
19720 #. type: tbl table
19721 #: build/C/man2/syscalls.2:246
19722 #, no-wrap
19723 msgid "B<fsync>(2)\t1.0\n"
19724 msgstr "B<fsync>(2)\t1.0\n"
19725
19726 #. type: tbl table
19727 #: build/C/man2/syscalls.2:247
19728 #, no-wrap
19729 msgid "B<ftruncate>(2)\t1.0\n"
19730 msgstr "B<ftruncate>(2)\t1.0\n"
19731
19732 #. type: tbl table
19733 #: build/C/man2/syscalls.2:248
19734 #, no-wrap
19735 msgid "B<ftruncate64>(2)\t2.4\n"
19736 msgstr "B<ftruncate64>(2)\t2.4\n"
19737
19738 #. type: tbl table
19739 #: build/C/man2/syscalls.2:249
19740 #, no-wrap
19741 msgid "B<futex>(2)\t2.6\n"
19742 msgstr "B<futex>(2)\t2.6\n"
19743
19744 #. type: tbl table
19745 #: build/C/man2/syscalls.2:250
19746 #, no-wrap
19747 msgid "B<futimesat>(2)\t2.6.16\n"
19748 msgstr "B<futimesat>(2)\t2.6.16\n"
19749
19750 #. type: tbl table
19751 #: build/C/man2/syscalls.2:251
19752 #, no-wrap
19753 msgid "B<get_kernel_syms>(2)\t1.0\tRemoved in 2.6\n"
19754 msgstr "B<get_kernel_syms>(2)\t1.0\t2.6 で削除\n"
19755
19756 #. type: tbl table
19757 #: build/C/man2/syscalls.2:252
19758 #, no-wrap
19759 msgid "B<get_mempolicy>(2)\t2.6.6\n"
19760 msgstr "B<get_mempolicy>(2)\t2.6.6\n"
19761
19762 #. type: tbl table
19763 #: build/C/man2/syscalls.2:253
19764 #, no-wrap
19765 msgid "B<get_robust_list>(2)\t2.6.17\n"
19766 msgstr "B<get_robust_list>(2)\t2.6.17\n"
19767
19768 #. type: tbl table
19769 #: build/C/man2/syscalls.2:254
19770 #, no-wrap
19771 msgid "B<get_thread_area>(2)\t2.6\n"
19772 msgstr "B<get_thread_area>(2)\t2.6\n"
19773
19774 #. type: tbl table
19775 #: build/C/man2/syscalls.2:255
19776 #, no-wrap
19777 msgid "B<getcpu>(2)\t2.6.19\n"
19778 msgstr "B<getcpu>(2)\t2.6.19\n"
19779
19780 #. type: tbl table
19781 #: build/C/man2/syscalls.2:256
19782 #, no-wrap
19783 msgid "B<getcwd>(2)\t2.2\n"
19784 msgstr "B<getcwd>(2)\t2.2\n"
19785
19786 #. type: tbl table
19787 #: build/C/man2/syscalls.2:257
19788 #, no-wrap
19789 msgid "B<getdents>(2)\t2.0\n"
19790 msgstr "B<getdents>(2)\t2.0\n"
19791
19792 #. type: tbl table
19793 #: build/C/man2/syscalls.2:258
19794 #, no-wrap
19795 msgid "B<getdents64>(2)\t2.4\n"
19796 msgstr "B<getdents64>(2)\t2.4\n"
19797
19798 #. type: tbl table
19799 #: build/C/man2/syscalls.2:259
19800 #, no-wrap
19801 msgid "B<getegid>(2)\t1.0\n"
19802 msgstr "B<getegid>(2)\t1.0\n"
19803
19804 #. type: tbl table
19805 #: build/C/man2/syscalls.2:260
19806 #, no-wrap
19807 msgid "B<getegid32>(2)\t2.4\n"
19808 msgstr "B<getegid32>(2)\t2.4\n"
19809
19810 #. type: tbl table
19811 #: build/C/man2/syscalls.2:261
19812 #, no-wrap
19813 msgid "B<geteuid>(2)\t1.0\n"
19814 msgstr "B<geteuid>(2)\t1.0\n"
19815
19816 #. type: tbl table
19817 #: build/C/man2/syscalls.2:262
19818 #, no-wrap
19819 msgid "B<geteuid32>(2)\t2.4\n"
19820 msgstr "B<geteuid32>(2)\t2.4\n"
19821
19822 #. type: tbl table
19823 #: build/C/man2/syscalls.2:263
19824 #, no-wrap
19825 msgid "B<getgid>(2)\t1.0\n"
19826 msgstr "B<getgid>(2)\t1.0\n"
19827
19828 #. type: tbl table
19829 #: build/C/man2/syscalls.2:264
19830 #, no-wrap
19831 msgid "B<getgid32>(2)\t2.4\n"
19832 msgstr "B<getgid32>(2)\t2.4\n"
19833
19834 #. type: tbl table
19835 #: build/C/man2/syscalls.2:265
19836 #, no-wrap
19837 msgid "B<getgroups>(2)\t1.0\n"
19838 msgstr "B<getgroups>(2)\t1.0\n"
19839
19840 #. type: tbl table
19841 #: build/C/man2/syscalls.2:266
19842 #, no-wrap
19843 msgid "B<getgroups32>(2)\t2.4\n"
19844 msgstr "B<getgroups32>(2)\t2.4\n"
19845
19846 #. type: tbl table
19847 #: build/C/man2/syscalls.2:267
19848 #, no-wrap
19849 msgid "B<getitimer>(2)\t1.0\n"
19850 msgstr "B<getitimer>(2)\t1.0\n"
19851
19852 #. type: tbl table
19853 #: build/C/man2/syscalls.2:268
19854 #, no-wrap
19855 msgid "B<getpeername>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19856 msgstr "B<getpeername>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19857
19858 #. type: tbl table
19859 #: build/C/man2/syscalls.2:269
19860 #, no-wrap
19861 msgid "B<getpagesize>(2)\t2.0\tNot on x86\n"
19862 msgstr "B<getpagesize>(2)\t2.0\tx86 にはない\n"
19863
19864 #. type: tbl table
19865 #: build/C/man2/syscalls.2:270
19866 #, no-wrap
19867 msgid "B<getpgid>(2)\t1.0\n"
19868 msgstr "B<getpgid>(2)\t1.0\n"
19869
19870 #. type: tbl table
19871 #: build/C/man2/syscalls.2:271
19872 #, no-wrap
19873 msgid "B<getpgrp>(2)\t1.0\n"
19874 msgstr "B<getpgrp>(2)\t1.0\n"
19875
19876 #. type: tbl table
19877 #: build/C/man2/syscalls.2:272
19878 #, no-wrap
19879 msgid "B<getpid>(2)\t1.0\n"
19880 msgstr "B<getpid>(2)\t1.0\n"
19881
19882 #. type: tbl table
19883 #: build/C/man2/syscalls.2:273
19884 #, no-wrap
19885 msgid "B<getppid>(2)\t1.0\n"
19886 msgstr "B<getppid>(2)\t1.0\n"
19887
19888 #. type: tbl table
19889 #: build/C/man2/syscalls.2:274
19890 #, no-wrap
19891 msgid "B<getpriority>(2)\t1.0\n"
19892 msgstr "B<getpriority>(2)\t1.0\n"
19893
19894 #. type: tbl table
19895 #: build/C/man2/syscalls.2:275
19896 #, no-wrap
19897 msgid "B<getrandom>(2)\t3.17\n"
19898 msgstr "B<getrandom>(2)\t3.17\n"
19899
19900 #. type: tbl table
19901 #: build/C/man2/syscalls.2:276
19902 #, no-wrap
19903 msgid "B<getresgid>(2)\t2.2\n"
19904 msgstr "B<getresgid>(2)\t2.2\n"
19905
19906 #. type: tbl table
19907 #: build/C/man2/syscalls.2:277
19908 #, no-wrap
19909 msgid "B<getresgid32>(2)\t2.4\n"
19910 msgstr "B<getresgid32>(2)\t2.4\n"
19911
19912 #. type: tbl table
19913 #: build/C/man2/syscalls.2:278
19914 #, no-wrap
19915 msgid "B<getresuid>(2)\t2.2\n"
19916 msgstr "B<getresuid>(2)\t2.2\n"
19917
19918 #. type: tbl table
19919 #: build/C/man2/syscalls.2:279
19920 #, no-wrap
19921 msgid "B<getresuid32>(2)\t2.4\n"
19922 msgstr "B<getresuid32>(2)\t2.4\n"
19923
19924 #. type: tbl table
19925 #: build/C/man2/syscalls.2:280
19926 #, no-wrap
19927 msgid "B<getrlimit>(2)\t1.0\n"
19928 msgstr "B<getrlimit>(2)\t1.0\n"
19929
19930 #. type: tbl table
19931 #: build/C/man2/syscalls.2:281
19932 #, no-wrap
19933 msgid "B<getrusage>(2)\t1.0\n"
19934 msgstr "B<getrusage>(2)\t1.0\n"
19935
19936 #. type: tbl table
19937 #: build/C/man2/syscalls.2:282
19938 #, no-wrap
19939 msgid "B<getsid>(2)\t2.0\n"
19940 msgstr "B<getsid>(2)\t2.0\n"
19941
19942 #. type: tbl table
19943 #: build/C/man2/syscalls.2:283
19944 #, no-wrap
19945 msgid "B<getsockname>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19946 msgstr "B<getsockname>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19947
19948 #. type: tbl table
19949 #: build/C/man2/syscalls.2:284
19950 #, no-wrap
19951 msgid "B<getsockopt>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
19952 msgstr "B<getsockopt>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
19953
19954 #. type: tbl table
19955 #: build/C/man2/syscalls.2:285
19956 #, no-wrap
19957 msgid "B<gettid>(2)\t2.4.11\n"
19958 msgstr "B<gettid>(2)\t2.4.11\n"
19959
19960 #. type: tbl table
19961 #: build/C/man2/syscalls.2:286
19962 #, no-wrap
19963 msgid "B<gettimeofday>(2)\t1.0\n"
19964 msgstr "B<gettimeofday>(2)\t1.0\n"
19965
19966 #. type: tbl table
19967 #: build/C/man2/syscalls.2:287
19968 #, no-wrap
19969 msgid "B<getuid>(2)\t1.0\n"
19970 msgstr "B<getuid>(2)\t1.0\n"
19971
19972 #. type: tbl table
19973 #: build/C/man2/syscalls.2:288
19974 #, no-wrap
19975 msgid "B<getuid32>(2)\t2.4\n"
19976 msgstr "B<getuid32>(2)\t2.4\n"
19977
19978 #.  \fBgetunwind\fP(2)  2.4.8   ia64; DEPRECATED
19979 #. type: tbl table
19980 #: build/C/man2/syscalls.2:290
19981 #, no-wrap
19982 msgid "B<getxattr>(2)\t2.6; 2.4.18\n"
19983 msgstr "B<getxattr>(2)\t2.6; 2.4.18\n"
19984
19985 #. type: tbl table
19986 #: build/C/man2/syscalls.2:291
19987 #, no-wrap
19988 msgid "B<init_module>(2)\t1.0\n"
19989 msgstr "B<init_module>(2)\t1.0\n"
19990
19991 #. type: tbl table
19992 #: build/C/man2/syscalls.2:292
19993 #, no-wrap
19994 msgid "B<inotify_add_watch>(2)\t2.6.13\n"
19995 msgstr "B<inotify_add_watch>(2)\t2.6.13\n"
19996
19997 #. type: tbl table
19998 #: build/C/man2/syscalls.2:293
19999 #, no-wrap
20000 msgid "B<inotify_init>(2)\t2.6.13\n"
20001 msgstr "B<inotify_init>(2)\t2.6.13\n"
20002
20003 #. type: tbl table
20004 #: build/C/man2/syscalls.2:294
20005 #, no-wrap
20006 msgid "B<inotify_init1>(2)\t2.6.27\n"
20007 msgstr "B<inotify_init1>(2)\t2.6.27\n"
20008
20009 #. type: tbl table
20010 #: build/C/man2/syscalls.2:295
20011 #, no-wrap
20012 msgid "B<inotify_rm_watch>(2)\t2.6.13\n"
20013 msgstr "B<inotify_rm_watch>(2)\t2.6.13\n"
20014
20015 #. type: tbl table
20016 #: build/C/man2/syscalls.2:296
20017 #, no-wrap
20018 msgid "B<io_cancel>(2)\t2.6\n"
20019 msgstr "B<io_cancel>(2)\t2.6\n"
20020
20021 #. type: tbl table
20022 #: build/C/man2/syscalls.2:297
20023 #, no-wrap
20024 msgid "B<io_destroy>(2)\t2.6\n"
20025 msgstr "B<io_destroy>(2)\t2.6\n"
20026
20027 #. type: tbl table
20028 #: build/C/man2/syscalls.2:298
20029 #, no-wrap
20030 msgid "B<io_getevents>(2)\t2.6\n"
20031 msgstr "B<io_getevents>(2)\t2.6\n"
20032
20033 #. type: tbl table
20034 #: build/C/man2/syscalls.2:299
20035 #, no-wrap
20036 msgid "B<io_setup>(2)\t2.6\n"
20037 msgstr "B<io_setup>(2)\t2.6\n"
20038
20039 #. type: tbl table
20040 #: build/C/man2/syscalls.2:300
20041 #, no-wrap
20042 msgid "B<io_submit>(2)\t2.6\n"
20043 msgstr "B<io_submit>(2)\t2.6\n"
20044
20045 #. type: tbl table
20046 #: build/C/man2/syscalls.2:301
20047 #, no-wrap
20048 msgid "B<ioctl>(2)\t1.0\n"
20049 msgstr "B<ioctl>(2)\t1.0\n"
20050
20051 #. type: tbl table
20052 #: build/C/man2/syscalls.2:302
20053 #, no-wrap
20054 msgid "B<ioperm>(2)\t1.0\n"
20055 msgstr "B<ioperm>(2)\t1.0\n"
20056
20057 #. type: tbl table
20058 #: build/C/man2/syscalls.2:303
20059 #, no-wrap
20060 msgid "B<iopl>(2)\t1.0\n"
20061 msgstr "B<iopl>(2)\t1.0\n"
20062
20063 #. type: tbl table
20064 #: build/C/man2/syscalls.2:304
20065 #, no-wrap
20066 msgid "B<ioprio_get>(2)\t2.6.13\n"
20067 msgstr "B<ioprio_get>(2)\t2.6.13\n"
20068
20069 #. type: tbl table
20070 #: build/C/man2/syscalls.2:305
20071 #, no-wrap
20072 msgid "B<ioprio_set>(2)\t2.6.13\n"
20073 msgstr "B<ioprio_set>(2)\t2.6.13\n"
20074
20075 #. type: tbl table
20076 #: build/C/man2/syscalls.2:306
20077 #, no-wrap
20078 msgid "B<ipc>(2)\t1.0\n"
20079 msgstr "B<ipc>(2)\t1.0\n"
20080
20081 #.  Implements System V IPC calls
20082 #. type: tbl table
20083 #: build/C/man2/syscalls.2:308
20084 #, no-wrap
20085 msgid "B<kcmp>(2)\t3.5\n"
20086 msgstr "B<kcmp>(2)\t3.5\n"
20087
20088 #. type: tbl table
20089 #: build/C/man2/syscalls.2:309
20090 #, no-wrap
20091 msgid "B<kern_features>(2)\t3.7\tSparc64\n"
20092 msgstr "B<kern_features>(2)\t3.7\tSparc64\n"
20093
20094 #.  FIXME . document kern_features():
20095 #.  commit 517ffce4e1a03aea979fe3a18a3dd1761a24fafb
20096 #. type: tbl table
20097 #: build/C/man2/syscalls.2:312
20098 #, no-wrap
20099 msgid "B<kexec_file_load>(2)\t3.17\n"
20100 msgstr "B<kexec_file_load>(2)\t3.17\n"
20101
20102 #. type: tbl table
20103 #: build/C/man2/syscalls.2:313
20104 #, no-wrap
20105 msgid "B<kexec_load>(2)\t2.6.13\n"
20106 msgstr "B<kexec_load>(2)\t2.6.13\n"
20107
20108 #.  The entry in the syscall table was reserved starting in 2.6.7
20109 #.  Was named sys_kexec_load() from 2.6.7 to 2.6.16
20110 #. type: tbl table
20111 #: build/C/man2/syscalls.2:316
20112 #, no-wrap
20113 msgid "B<keyctl>(2)\t2.6.11\n"
20114 msgstr "B<keyctl>(2)\t2.6.11\n"
20115
20116 #. type: tbl table
20117 #: build/C/man2/syscalls.2:317
20118 #, no-wrap
20119 msgid "B<kill>(2)\t1.0\n"
20120 msgstr "B<kill>(2)\t1.0\n"
20121
20122 #. type: tbl table
20123 #: build/C/man2/syscalls.2:318
20124 #, no-wrap
20125 msgid "B<lchown>(2)\t1.0\tT{\n"
20126 msgstr "B<lchown>(2)\t1.0\tT{\n"
20127
20128 #. type: tbl table
20129 #: build/C/man2/syscalls.2:323
20130 #, no-wrap
20131 msgid "B<lchown32>(2)\t2.4\n"
20132 msgstr "B<lchown32>(2)\t2.4\n"
20133
20134 #. type: tbl table
20135 #: build/C/man2/syscalls.2:324
20136 #, no-wrap
20137 msgid "B<lgetxattr>(2)\t2.6; 2.4.18\n"
20138 msgstr "B<lgetxattr>(2)\t2.6; 2.4.18\n"
20139
20140 #. type: tbl table
20141 #: build/C/man2/syscalls.2:325
20142 #, no-wrap
20143 msgid "B<link>(2)\t1.0\n"
20144 msgstr "B<link>(2)\t1.0\n"
20145
20146 #. type: tbl table
20147 #: build/C/man2/syscalls.2:326
20148 #, no-wrap
20149 msgid "B<linkat>(2)\t2.6.16\n"
20150 msgstr "B<linkat>(2)\t2.6.16\n"
20151
20152 #. type: tbl table
20153 #: build/C/man2/syscalls.2:327
20154 #, no-wrap
20155 msgid "B<listen>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20156 msgstr "B<listen>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20157
20158 #. type: tbl table
20159 #: build/C/man2/syscalls.2:328
20160 #, no-wrap
20161 msgid "B<listxattr>(2)\t2.6; 2.4.18\n"
20162 msgstr "B<listxattr>(2)\t2.6; 2.4.18\n"
20163
20164 #. type: tbl table
20165 #: build/C/man2/syscalls.2:329
20166 #, no-wrap
20167 msgid "B<llistxattr>(2)\t2.6; 2.4.18\n"
20168 msgstr "B<llistxattr>(2)\t2.6; 2.4.18\n"
20169
20170 #. type: tbl table
20171 #: build/C/man2/syscalls.2:330
20172 #, no-wrap
20173 msgid "B<lookup_dcookie>(2)\t2.6\n"
20174 msgstr "B<lookup_dcookie>(2)\t2.6\n"
20175
20176 #. type: tbl table
20177 #: build/C/man2/syscalls.2:331
20178 #, no-wrap
20179 msgid "B<lremovexattr>(2)\t2.6; 2.4.18\n"
20180 msgstr "B<lremovexattr>(2)\t2.6; 2.4.18\n"
20181
20182 #. type: tbl table
20183 #: build/C/man2/syscalls.2:332
20184 #, no-wrap
20185 msgid "B<lseek>(2)\t1.0\n"
20186 msgstr "B<lseek>(2)\t1.0\n"
20187
20188 #. type: tbl table
20189 #: build/C/man2/syscalls.2:333
20190 #, no-wrap
20191 msgid "B<lsetxattr>(2)\t2.6; 2.4.18\n"
20192 msgstr "B<lsetxattr>(2)\t2.6; 2.4.18\n"
20193
20194 #. type: tbl table
20195 #: build/C/man2/syscalls.2:334
20196 #, no-wrap
20197 msgid "B<lstat>(2)\t1.0\n"
20198 msgstr "B<lstat>(2)\t1.0\n"
20199
20200 #. type: tbl table
20201 #: build/C/man2/syscalls.2:335
20202 #, no-wrap
20203 msgid "B<lstat64>(2)\t2.4\n"
20204 msgstr "B<lstat64>(2)\t2.4\n"
20205
20206 #. type: tbl table
20207 #: build/C/man2/syscalls.2:336
20208 #, no-wrap
20209 msgid "B<madvise>(2)\t2.4\n"
20210 msgstr "B<madvise>(2)\t2.4\n"
20211
20212 #. type: tbl table
20213 #: build/C/man2/syscalls.2:337
20214 #, no-wrap
20215 msgid "B<mbind>(2)\t2.6.6\n"
20216 msgstr "B<mbind>(2)\t2.6.6\n"
20217
20218 #.  \fBmemory_ordering\fP(2)    ???     Sparc64
20219 #. type: tbl table
20220 #: build/C/man2/syscalls.2:339
20221 #, no-wrap
20222 msgid "B<memfd_create>(2)\t3.17\n"
20223 msgstr "B<memfd_create>(2)\t3.17\n"
20224
20225 #. type: tbl table
20226 #: build/C/man2/syscalls.2:340
20227 #, no-wrap
20228 msgid "B<migrate_pages>(2)\t2.6.16\n"
20229 msgstr "B<migrate_pages>(2)\t2.6.16\n"
20230
20231 #. type: tbl table
20232 #: build/C/man2/syscalls.2:341
20233 #, no-wrap
20234 msgid "B<mincore>(2)\t2.4\n"
20235 msgstr "B<mincore>(2)\t2.4\n"
20236
20237 #. type: tbl table
20238 #: build/C/man2/syscalls.2:342
20239 #, no-wrap
20240 msgid "B<mkdir>(2)\t1.0\n"
20241 msgstr "B<mkdir>(2)\t1.0\n"
20242
20243 #. type: tbl table
20244 #: build/C/man2/syscalls.2:343
20245 #, no-wrap
20246 msgid "B<mkdirat>(2)\t2.6.16\n"
20247 msgstr "B<mkdirat>(2)\t2.6.16\n"
20248
20249 #. type: tbl table
20250 #: build/C/man2/syscalls.2:344
20251 #, no-wrap
20252 msgid "B<mknod>(2)\t1.0\n"
20253 msgstr "B<mknod>(2)\t1.0\n"
20254
20255 #. type: tbl table
20256 #: build/C/man2/syscalls.2:345
20257 #, no-wrap
20258 msgid "B<mknodat>(2)\t2.6.16\n"
20259 msgstr "B<mknodat>(2)\t2.6.16\n"
20260
20261 #. type: tbl table
20262 #: build/C/man2/syscalls.2:346
20263 #, no-wrap
20264 msgid "B<mlock>(2)\t2.0\n"
20265 msgstr "B<mlock>(2)\t2.0\n"
20266
20267 #. type: tbl table
20268 #: build/C/man2/syscalls.2:347
20269 #, no-wrap
20270 msgid "B<mlockall>(2)\t2.0\n"
20271 msgstr "B<mlockall>(2)\t2.0\n"
20272
20273 #. type: tbl table
20274 #: build/C/man2/syscalls.2:348
20275 #, no-wrap
20276 msgid "B<mmap>(2)\t1.0\n"
20277 msgstr "B<mmap>(2)\t1.0\n"
20278
20279 #. type: tbl table
20280 #: build/C/man2/syscalls.2:349
20281 #, no-wrap
20282 msgid "B<mmap2>(2)\t2.4\n"
20283 msgstr "B<mmap2>(2)\t2.4\n"
20284
20285 #. type: tbl table
20286 #: build/C/man2/syscalls.2:350
20287 #, no-wrap
20288 msgid "B<modify_ldt>(2)\t1.0\n"
20289 msgstr "B<modify_ldt>(2)\t1.0\n"
20290
20291 #. type: tbl table
20292 #: build/C/man2/syscalls.2:351
20293 #, no-wrap
20294 msgid "B<mount>(2)\t1.0\n"
20295 msgstr "B<mount>(2)\t1.0\n"
20296
20297 #. type: tbl table
20298 #: build/C/man2/syscalls.2:352
20299 #, no-wrap
20300 msgid "B<move_pages>(2)\t2.6.18\n"
20301 msgstr "B<move_pages>(2)\t2.6.18\n"
20302
20303 #. type: tbl table
20304 #: build/C/man2/syscalls.2:353
20305 #, no-wrap
20306 msgid "B<mprotect>(2)\t1.0\n"
20307 msgstr "B<mprotect>(2)\t1.0\n"
20308
20309 #. type: tbl table
20310 #: build/C/man2/syscalls.2:354
20311 #, no-wrap
20312 msgid "B<mq_getsetattr>(2)\t2.6.6\n"
20313 msgstr "B<mq_getsetattr>(2)\t2.6.6\n"
20314
20315 #.  Implements \fBmq_getattr\fP(3) and \fBmq_setattr\fP(3)
20316 #. type: tbl table
20317 #: build/C/man2/syscalls.2:356
20318 #, no-wrap
20319 msgid "B<mq_notify>(2)\t2.6.6\n"
20320 msgstr "B<mq_notify>(2)\t2.6.6\n"
20321
20322 #. type: tbl table
20323 #: build/C/man2/syscalls.2:357
20324 #, no-wrap
20325 msgid "B<mq_open>(2)\t2.6.6\n"
20326 msgstr "B<mq_open>(2)\t2.6.6\n"
20327
20328 #. type: tbl table
20329 #: build/C/man2/syscalls.2:358
20330 #, no-wrap
20331 msgid "B<mq_timedreceive>(2)\t2.6.6\n"
20332 msgstr "B<mq_timedreceive>(2)\t2.6.6\n"
20333
20334 #. type: tbl table
20335 #: build/C/man2/syscalls.2:359
20336 #, no-wrap
20337 msgid "B<mq_timedsend>(2)\t2.6.6\n"
20338 msgstr "B<mq_timedsend>(2)\t2.6.6\n"
20339
20340 #. type: tbl table
20341 #: build/C/man2/syscalls.2:360
20342 #, no-wrap
20343 msgid "B<mq_unlink>(2)\t2.6.6\n"
20344 msgstr "B<mq_unlink>(2)\t2.6.6\n"
20345
20346 #. type: tbl table
20347 #: build/C/man2/syscalls.2:361
20348 #, no-wrap
20349 msgid "B<mremap>(2)\t2.0\n"
20350 msgstr "B<mremap>(2)\t2.0\n"
20351
20352 #. type: tbl table
20353 #: build/C/man2/syscalls.2:362
20354 #, no-wrap
20355 msgid "B<msgctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20356 msgstr "B<msgctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20357
20358 #. type: tbl table
20359 #: build/C/man2/syscalls.2:363
20360 #, no-wrap
20361 msgid "B<msgget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20362 msgstr "B<msgget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20363
20364 #. type: tbl table
20365 #: build/C/man2/syscalls.2:364
20366 #, no-wrap
20367 msgid "B<msgrcv>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20368 msgstr "B<msgrcv>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20369
20370 #. type: tbl table
20371 #: build/C/man2/syscalls.2:365
20372 #, no-wrap
20373 msgid "B<msgsnd>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20374 msgstr "B<msgsnd>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20375
20376 #. type: tbl table
20377 #: build/C/man2/syscalls.2:366
20378 #, no-wrap
20379 msgid "B<msync>(2)\t2.0\n"
20380 msgstr "B<msync>(2)\t2.0\n"
20381
20382 #.  \fBmultiplexer\fP(2)        ??      __NR_multiplexer reserved on
20383 #.              PowerPC, but unimplemented?
20384 #. type: tbl table
20385 #: build/C/man2/syscalls.2:369
20386 #, no-wrap
20387 msgid "B<munlock>(2)\t2.0\n"
20388 msgstr "B<munlock>(2)\t2.0\n"
20389
20390 #. type: tbl table
20391 #: build/C/man2/syscalls.2:370
20392 #, no-wrap
20393 msgid "B<munlockall>(2)\t2.0\n"
20394 msgstr "B<munlockall>(2)\t2.0\n"
20395
20396 #. type: tbl table
20397 #: build/C/man2/syscalls.2:371
20398 #, no-wrap
20399 msgid "B<munmap>(2)\t1.0\n"
20400 msgstr "B<munmap>(2)\t1.0\n"
20401
20402 #. type: tbl table
20403 #: build/C/man2/syscalls.2:372
20404 #, no-wrap
20405 msgid "B<name_to_handle_at>(2)\t2.6.39\n"
20406 msgstr "B<name_to_handle_at>(2)\t2.6.39\n"
20407
20408 #. type: tbl table
20409 #: build/C/man2/syscalls.2:373
20410 #, no-wrap
20411 msgid "B<nanosleep>(2)\t2.0\n"
20412 msgstr "B<nanosleep>(2)\t2.0\n"
20413
20414 #. type: tbl table
20415 #: build/C/man2/syscalls.2:374
20416 #, no-wrap
20417 msgid "B<nfsservctl>(2)\t2.2\tRemoved in 3.1\n"
20418 msgstr "B<nfsservctl>(2)\t2.2\t3.1 で削除\n"
20419
20420 #. type: tbl table
20421 #: build/C/man2/syscalls.2:375
20422 #, no-wrap
20423 msgid "B<nice>(2)\t1.0\n"
20424 msgstr "B<nice>(2)\t1.0\n"
20425
20426 #. type: tbl table
20427 #: build/C/man2/syscalls.2:376
20428 #, no-wrap
20429 msgid "B<oldfstat>(2)\t1.0\n"
20430 msgstr "B<oldfstat>(2)\t1.0\n"
20431
20432 #. type: tbl table
20433 #: build/C/man2/syscalls.2:377
20434 #, no-wrap
20435 msgid "B<oldlstat>(2)\t1.0\n"
20436 msgstr "B<oldlstat>(2)\t1.0\n"
20437
20438 #. type: tbl table
20439 #: build/C/man2/syscalls.2:378
20440 #, no-wrap
20441 msgid "B<oldolduname>(2)\t1.0\n"
20442 msgstr "B<oldolduname>(2)\t1.0\n"
20443
20444 #. type: tbl table
20445 #: build/C/man2/syscalls.2:379
20446 #, no-wrap
20447 msgid "B<oldstat>(2)\t1.0\n"
20448 msgstr "B<oldstat>(2)\t1.0\n"
20449
20450 #. type: tbl table
20451 #: build/C/man2/syscalls.2:380
20452 #, no-wrap
20453 msgid "B<olduname>(2)\t1.0\n"
20454 msgstr "B<olduname>(2)\t1.0\n"
20455
20456 #. type: tbl table
20457 #: build/C/man2/syscalls.2:381
20458 #, no-wrap
20459 msgid "B<open>(2)\t1.0\n"
20460 msgstr "B<open>(2)\t1.0\n"
20461
20462 #. type: tbl table
20463 #: build/C/man2/syscalls.2:382
20464 #, no-wrap
20465 msgid "B<open_by_handle_at>(2)\t2.6.39\n"
20466 msgstr "B<open_by_handle_at>(2)\t2.6.39\n"
20467
20468 #. type: tbl table
20469 #: build/C/man2/syscalls.2:383
20470 #, no-wrap
20471 msgid "B<openat>(2)\t2.6.16\n"
20472 msgstr "B<openat>(2)\t2.6.16\n"
20473
20474 #. type: tbl table
20475 #: build/C/man2/syscalls.2:384
20476 #, no-wrap
20477 msgid "B<pause>(2)\t1.0\n"
20478 msgstr "B<pause>(2)\t1.0\n"
20479
20480 #. type: tbl table
20481 #: build/C/man2/syscalls.2:385
20482 #, no-wrap
20483 msgid "B<pciconfig_iobase>(2)\t2.2.15; 2.4\tNot on x86\n"
20484 msgstr "B<pciconfig_iobase>(2)\t2.2.15; 2.4\tx86 にはない\n"
20485
20486 #.  Alpha, PowerPC, ARM; not x86
20487 #. type: tbl table
20488 #: build/C/man2/syscalls.2:387
20489 #, no-wrap
20490 msgid "B<pciconfig_read>(2)\t2.0.26; 2.2\tNot on x86\n"
20491 msgstr "B<pciconfig_read>(2)\t2.0.26; 2.2\tx86 にはない\n"
20492
20493 #.  , PowerPC, ARM; not x86
20494 #. type: tbl table
20495 #: build/C/man2/syscalls.2:389
20496 #, no-wrap
20497 msgid "B<pciconfig_write>(2)\t2.0.26; 2.2\tNot on x86\n"
20498 msgstr "B<pciconfig_write>(2)\t2.0.26; 2.2\tx86 にはない\n"
20499
20500 #.  , PowerPC, ARM; not x86
20501 #. type: tbl table
20502 #: build/C/man2/syscalls.2:391
20503 #, no-wrap
20504 msgid "B<perf_event_open>(2)\t2.6.31\tT{\n"
20505 msgstr "B<perf_event_open>(2)\t2.6.31\tT{\n"
20506
20507 #. type: tbl table
20508 #: build/C/man2/syscalls.2:392
20509 #, no-wrap
20510 msgid "Was perf_counter_open() in\n"
20511 msgstr "2.6.31 では perf_counter_open() であった;\n"
20512
20513 #. type: tbl table
20514 #: build/C/man2/syscalls.2:394
20515 #, no-wrap
20516 msgid "2.6.31; renamed in 2.6.32\n"
20517 msgstr "2.6.32 で名称変更\n"
20518
20519 #. type: tbl table
20520 #: build/C/man2/syscalls.2:396
20521 #, no-wrap
20522 msgid "B<personality>(2)\t1.2\n"
20523 msgstr "B<personality>(2)\t1.2\n"
20524
20525 #. type: tbl table
20526 #: build/C/man2/syscalls.2:397
20527 #, no-wrap
20528 msgid "B<perfctr>(2)\t2.2\tSparc; removed in 2.6.34\n"
20529 msgstr "B<perfctr>(2)\t2.2\tSparc; 2.6.34 で削除\n"
20530
20531 #.      commit c7d5a0050773e98d1094eaa9f2a1a793fafac300 removed perfctr()
20532 #. type: tbl table
20533 #: build/C/man2/syscalls.2:399
20534 #, no-wrap
20535 msgid "B<perfmonctl>(2)\t2.4\tia64\n"
20536 msgstr "B<perfmonctl>(2)\t2.4\tia64\n"
20537
20538 #. type: tbl table
20539 #: build/C/man2/syscalls.2:400
20540 #, no-wrap
20541 msgid "B<pipe>(2)\t1.0\n"
20542 msgstr "B<pipe>(2)\t1.0\n"
20543
20544 #. type: tbl table
20545 #: build/C/man2/syscalls.2:401
20546 #, no-wrap
20547 msgid "B<pipe2>(2)\t2.6.27\n"
20548 msgstr "B<pipe2>(2)\t2.6.27\n"
20549
20550 #. type: tbl table
20551 #: build/C/man2/syscalls.2:402
20552 #, no-wrap
20553 msgid "B<pivot_root>(2)\t2.4\n"
20554 msgstr "B<pivot_root>(2)\t2.4\n"
20555
20556 #. type: tbl table
20557 #: build/C/man2/syscalls.2:403
20558 #, no-wrap
20559 msgid "B<poll>(2)\t2.0.36; 2.2\n"
20560 msgstr "B<poll>(2)\t2.0.36; 2.2\n"
20561
20562 #. type: tbl table
20563 #: build/C/man2/syscalls.2:404
20564 #, no-wrap
20565 msgid "B<ppc_rtas>(2)\t2.6.2\tPowerPC only\n"
20566 msgstr "B<ppc_rtas>(2)\t2.6.2\tPowerPC のみ\n"
20567
20568 #. type: tbl table
20569 #: build/C/man2/syscalls.2:405
20570 #, no-wrap
20571 msgid "B<ppoll>(2)\t2.6.16\n"
20572 msgstr "B<ppoll>(2)\t2.6.16\n"
20573
20574 #. type: tbl table
20575 #: build/C/man2/syscalls.2:406
20576 #, no-wrap
20577 msgid "B<prctl>(2)\t2.2\n"
20578 msgstr "B<prctl>(2)\t2.2\n"
20579
20580 #. type: tbl table
20581 #: build/C/man2/syscalls.2:407
20582 #, no-wrap
20583 msgid "B<pread64>(2)\t\tT{\n"
20584 msgstr "B<pread64>(2)\t\tT{\n"
20585
20586 #. type: tbl table
20587 #: build/C/man2/syscalls.2:408
20588 #, no-wrap
20589 msgid "Added as \"pread\" in 2.2;\n"
20590 msgstr "2.2 で \"pread\" として追加;\n"
20591
20592 #. type: tbl table
20593 #: build/C/man2/syscalls.2:410
20594 #, no-wrap
20595 msgid "renamed \"pread64\" in 2.6\n"
20596 msgstr "2.6 で \"pread64\" に名称変更\n"
20597
20598 #. type: tbl table
20599 #: build/C/man2/syscalls.2:412
20600 #, no-wrap
20601 msgid "B<preadv>(2)\t2.6.30\n"
20602 msgstr "B<preadv>(2)\t2.6.30\n"
20603
20604 #. type: tbl table
20605 #: build/C/man2/syscalls.2:413
20606 #, no-wrap
20607 msgid "B<prlimit>(2)\t2.6.36\n"
20608 msgstr "B<prlimit>(2)\t2.6.36\n"
20609
20610 #. type: tbl table
20611 #: build/C/man2/syscalls.2:414
20612 #, no-wrap
20613 msgid "B<prlimit64>(2)\t2.6.36\n"
20614 msgstr "B<prlimit64>(2)\t2.6.36\n"
20615
20616 #. type: tbl table
20617 #: build/C/man2/syscalls.2:415
20618 #, no-wrap
20619 msgid "B<process_vm_readv>(2)\t3.2\n"
20620 msgstr "B<process_vm_readv>(2)\t3.2\n"
20621
20622 #. type: tbl table
20623 #: build/C/man2/syscalls.2:416
20624 #, no-wrap
20625 msgid "B<process_vm_writev>(2)\t3.2\n"
20626 msgstr "B<process_vm_writev>(2)\t3.2\n"
20627
20628 #. type: tbl table
20629 #: build/C/man2/syscalls.2:417
20630 #, no-wrap
20631 msgid "B<pselect6>(2)\t2.6.16\n"
20632 msgstr "B<pselect6>(2)\t2.6.16\n"
20633
20634 #.  Implements \fBpselect\fP(2)
20635 #. type: tbl table
20636 #: build/C/man2/syscalls.2:419
20637 #, no-wrap
20638 msgid "B<ptrace>(2)\t1.0\n"
20639 msgstr "B<ptrace>(2)\t1.0\n"
20640
20641 #. type: tbl table
20642 #: build/C/man2/syscalls.2:420
20643 #, no-wrap
20644 msgid "B<pwrite64>(2)\t\tT{\n"
20645 msgstr "B<pwrite64>(2)\t\tT{\n"
20646
20647 #. type: tbl table
20648 #: build/C/man2/syscalls.2:421
20649 #, no-wrap
20650 msgid "Added as \"pwrite\" in 2.2;\n"
20651 msgstr "2.2 で \"pwrite\" として追加;\n"
20652
20653 #. type: tbl table
20654 #: build/C/man2/syscalls.2:423
20655 #, no-wrap
20656 msgid "renamed \"pwrite64\" in 2.6\n"
20657 msgstr "2.6 で \"pwrite64\" に名称変更\n"
20658
20659 #. type: tbl table
20660 #: build/C/man2/syscalls.2:425
20661 #, no-wrap
20662 msgid "B<pwritev>(2)\t2.6.30\n"
20663 msgstr "B<pwritev>(2)\t2.6.30\n"
20664
20665 #. type: tbl table
20666 #: build/C/man2/syscalls.2:426
20667 #, no-wrap
20668 msgid "B<query_module>(2)\t2.2\tRemoved in 2.6\n"
20669 msgstr "B<query_module>(2)\t2.2\t2.6 で削除\n"
20670
20671 #. type: tbl table
20672 #: build/C/man2/syscalls.2:427
20673 #, no-wrap
20674 msgid "B<quotactl>(2)\t1.0\n"
20675 msgstr "B<quotactl>(2)\t1.0\n"
20676
20677 #. type: tbl table
20678 #: build/C/man2/syscalls.2:428
20679 #, no-wrap
20680 msgid "B<read>(2)\t1.0\n"
20681 msgstr "B<read>(2)\t1.0\n"
20682
20683 #. type: tbl table
20684 #: build/C/man2/syscalls.2:429
20685 #, no-wrap
20686 msgid "B<readahead>(2)\t2.4.13\n"
20687 msgstr "B<readahead>(2)\t2.4.13\n"
20688
20689 #. type: tbl table
20690 #: build/C/man2/syscalls.2:430
20691 #, no-wrap
20692 msgid "B<readdir>(2)\t1.0\n"
20693 msgstr "B<readdir>(2)\t1.0\n"
20694
20695 #.  Supersedes \fBgetdents\fP(2)
20696 #. type: tbl table
20697 #: build/C/man2/syscalls.2:432
20698 #, no-wrap
20699 msgid "B<readlink>(2)\t1.0\n"
20700 msgstr "B<readlink>(2)\t1.0\n"
20701
20702 #. type: tbl table
20703 #: build/C/man2/syscalls.2:433
20704 #, no-wrap
20705 msgid "B<readlinkat>(2)\t2.6.16\n"
20706 msgstr "B<readlinkat>(2)\t2.6.16\n"
20707
20708 #. type: tbl table
20709 #: build/C/man2/syscalls.2:434
20710 #, no-wrap
20711 msgid "B<readv>(2)\t2.0\n"
20712 msgstr "B<readv>(2)\t2.0\n"
20713
20714 #. type: tbl table
20715 #: build/C/man2/syscalls.2:435
20716 #, no-wrap
20717 msgid "B<reboot>(2)\t1.0\n"
20718 msgstr "B<reboot>(2)\t1.0\n"
20719
20720 #. type: tbl table
20721 #: build/C/man2/syscalls.2:436
20722 #, no-wrap
20723 msgid "B<recv>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20724 msgstr "B<recv>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20725
20726 #. type: tbl table
20727 #: build/C/man2/syscalls.2:437
20728 #, no-wrap
20729 msgid "B<recvfrom>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20730 msgstr "B<recvfrom>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20731
20732 #. type: tbl table
20733 #: build/C/man2/syscalls.2:438
20734 #, no-wrap
20735 msgid "B<recvmsg>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20736 msgstr "B<recvmsg>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20737
20738 #. type: tbl table
20739 #: build/C/man2/syscalls.2:439
20740 #, no-wrap
20741 msgid "B<recvmmsg>(2)\t2.6.33\n"
20742 msgstr "B<recvmmsg>(2)\t2.6.33\n"
20743
20744 #. type: tbl table
20745 #: build/C/man2/syscalls.2:440
20746 #, no-wrap
20747 msgid "B<remap_file_pages>(2)\t2.6\tDeprecated since 3.16\n"
20748 msgstr "B<remap_file_pages>(2)\t2.6\t3.16 以降では非推奨\n"
20749
20750 #. type: tbl table
20751 #: build/C/man2/syscalls.2:441
20752 #, no-wrap
20753 msgid "B<removexattr>(2)\t2.6; 2.4.18\n"
20754 msgstr "B<removexattr>(2)\t2.6; 2.4.18\n"
20755
20756 #. type: tbl table
20757 #: build/C/man2/syscalls.2:442
20758 #, no-wrap
20759 msgid "B<rename>(2)\t1.0\n"
20760 msgstr "B<rename>(2)\t1.0\n"
20761
20762 #. type: tbl table
20763 #: build/C/man2/syscalls.2:443
20764 #, no-wrap
20765 msgid "B<renameat>(2)\t2.6.16\n"
20766 msgstr "B<renameat>(2)\t2.6.16\n"
20767
20768 #. type: tbl table
20769 #: build/C/man2/syscalls.2:444
20770 #, no-wrap
20771 msgid "B<renameat2>(2)\t3.15\n"
20772 msgstr "B<renameat2>(2)\t3.15\n"
20773
20774 #. type: tbl table
20775 #: build/C/man2/syscalls.2:445
20776 #, no-wrap
20777 msgid "B<request_key>(2)\t2.6.11\n"
20778 msgstr "B<request_key>(2)\t2.6.11\n"
20779
20780 #. type: tbl table
20781 #: build/C/man2/syscalls.2:446
20782 #, no-wrap
20783 msgid "B<restart_syscall>(2)\t2.6\n"
20784 msgstr "B<restart_syscall>(2)\t2.6\n"
20785
20786 #. type: tbl table
20787 #: build/C/man2/syscalls.2:447
20788 #, no-wrap
20789 msgid "B<rmdir>(2)\t1.0\n"
20790 msgstr "B<rmdir>(2)\t1.0\n"
20791
20792 #. type: tbl table
20793 #: build/C/man2/syscalls.2:448
20794 #, no-wrap
20795 msgid "B<rt_sigaction>(2)\t2.2\n"
20796 msgstr "B<rt_sigaction>(2)\t2.2\n"
20797
20798 #. type: tbl table
20799 #: build/C/man2/syscalls.2:449
20800 #, no-wrap
20801 msgid "B<rt_sigpending>(2)\t2.2\n"
20802 msgstr "B<rt_sigpending>(2)\t2.2\n"
20803
20804 #. type: tbl table
20805 #: build/C/man2/syscalls.2:450
20806 #, no-wrap
20807 msgid "B<rt_sigprocmask>(2)\t2.2\n"
20808 msgstr "B<rt_sigprocmask>(2)\t2.2\n"
20809
20810 #. type: tbl table
20811 #: build/C/man2/syscalls.2:451
20812 #, no-wrap
20813 msgid "B<rt_sigqueueinfo>(2)\t2.2\n"
20814 msgstr "B<rt_sigqueueinfo>(2)\t2.2\n"
20815
20816 #. type: tbl table
20817 #: build/C/man2/syscalls.2:452
20818 #, no-wrap
20819 msgid "B<rt_sigreturn>(2)\t2.2\n"
20820 msgstr "B<rt_sigreturn>(2)\t2.2\n"
20821
20822 #. type: tbl table
20823 #: build/C/man2/syscalls.2:453
20824 #, no-wrap
20825 msgid "B<rt_sigsuspend>(2)\t2.2\n"
20826 msgstr "B<rt_sigsuspend>(2)\t2.2\n"
20827
20828 #. type: tbl table
20829 #: build/C/man2/syscalls.2:454
20830 #, no-wrap
20831 msgid "B<rt_sigtimedwait>(2)\t2.2\n"
20832 msgstr "B<rt_sigtimedwait>(2)\t2.2\n"
20833
20834 #. type: tbl table
20835 #: build/C/man2/syscalls.2:455
20836 #, no-wrap
20837 msgid "B<rt_tgsigqueueinfo>(2)\t2.6.31\n"
20838 msgstr "B<rt_tgsigqueueinfo>(2)\t2.6.31\n"
20839
20840 #. type: tbl table
20841 #: build/C/man2/syscalls.2:456
20842 #, no-wrap
20843 msgid "B<s390_runtime_instr>(2)\t3.7\ts390 only\n"
20844 msgstr "B<s390_runtime_instr>(2)\t3.7\ts390 のみ\n"
20845
20846 #. type: tbl table
20847 #: build/C/man2/syscalls.2:457
20848 #, no-wrap
20849 msgid "B<s390_pci_mmio_read>(2)\t3.19\ts390 only\n"
20850 msgstr "B<s390_pci_mmio_read>(2)\t3.19\ts390 のみ\n"
20851
20852 #. type: tbl table
20853 #: build/C/man2/syscalls.2:458
20854 #, no-wrap
20855 msgid "B<s390_pci_mmio_write>(2)\t3.19\ts390 only\n"
20856 msgstr "B<s390_pci_mmio_write>(2)\t3.19\ts390 のみ\n"
20857
20858 #. type: tbl table
20859 #: build/C/man2/syscalls.2:459
20860 #, no-wrap
20861 msgid "B<sched_get_priority_max>(2)\t2.0\n"
20862 msgstr "B<sched_get_priority_max>(2)\t2.0\n"
20863
20864 #. type: tbl table
20865 #: build/C/man2/syscalls.2:460
20866 #, no-wrap
20867 msgid "B<sched_get_priority_min>(2)\t2.0\n"
20868 msgstr "B<sched_get_priority_min>(2)\t2.0\n"
20869
20870 #. type: tbl table
20871 #: build/C/man2/syscalls.2:461
20872 #, no-wrap
20873 msgid "B<sched_getaffinity>(2)\t2.6\n"
20874 msgstr "B<sched_getaffinity>(2)\t2.6\n"
20875
20876 #. type: tbl table
20877 #: build/C/man2/syscalls.2:462
20878 #, no-wrap
20879 msgid "B<sched_getattr>(2)\t3.14\n"
20880 msgstr "B<sched_getattr>(2)\t3.14\n"
20881
20882 #. type: tbl table
20883 #: build/C/man2/syscalls.2:463
20884 #, no-wrap
20885 msgid "B<sched_getparam>(2)\t2.0\n"
20886 msgstr "B<sched_getparam>(2)\t2.0\n"
20887
20888 #. type: tbl table
20889 #: build/C/man2/syscalls.2:464
20890 #, no-wrap
20891 msgid "B<sched_getscheduler>(2)\t2.0\n"
20892 msgstr "B<sched_getscheduler>(2)\t2.0\n"
20893
20894 #. type: tbl table
20895 #: build/C/man2/syscalls.2:465
20896 #, no-wrap
20897 msgid "B<sched_rr_get_interval>(2)\t2.0\n"
20898 msgstr "B<sched_rr_get_interval>(2)\t2.0\n"
20899
20900 #. type: tbl table
20901 #: build/C/man2/syscalls.2:466
20902 #, no-wrap
20903 msgid "B<sched_setaffinity>(2)\t2.6\n"
20904 msgstr "B<sched_setaffinity>(2)\t2.6\n"
20905
20906 #. type: tbl table
20907 #: build/C/man2/syscalls.2:467
20908 #, no-wrap
20909 msgid "B<sched_setattr>(2)\t3.14\n"
20910 msgstr "B<sched_setattr>(2)\t3.14\n"
20911
20912 #. type: tbl table
20913 #: build/C/man2/syscalls.2:468
20914 #, no-wrap
20915 msgid "B<sched_setparam>(2)\t2.0\n"
20916 msgstr "B<sched_setparam>(2)\t2.0\n"
20917
20918 #. type: tbl table
20919 #: build/C/man2/syscalls.2:469
20920 #, no-wrap
20921 msgid "B<sched_setscheduler>(2)\t2.0\n"
20922 msgstr "B<sched_setscheduler>(2)\t2.0\n"
20923
20924 #. type: tbl table
20925 #: build/C/man2/syscalls.2:470
20926 #, no-wrap
20927 msgid "B<sched_yield>(2)\t2.0\n"
20928 msgstr "B<sched_yield>(2)\t2.0\n"
20929
20930 #. type: tbl table
20931 #: build/C/man2/syscalls.2:471
20932 #, no-wrap
20933 msgid "B<seccomp>(2)\t3.17\n"
20934 msgstr "B<seccomp>(2)\t3.17\n"
20935
20936 #. type: tbl table
20937 #: build/C/man2/syscalls.2:472
20938 #, no-wrap
20939 msgid "B<select>(2)\t1.0\n"
20940 msgstr "B<select>(2)\t1.0\n"
20941
20942 #. type: tbl table
20943 #: build/C/man2/syscalls.2:473
20944 #, no-wrap
20945 msgid "B<semctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20946 msgstr "B<semctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20947
20948 #. type: tbl table
20949 #: build/C/man2/syscalls.2:474
20950 #, no-wrap
20951 msgid "B<semget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20952 msgstr "B<semget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20953
20954 #. type: tbl table
20955 #: build/C/man2/syscalls.2:475
20956 #, no-wrap
20957 msgid "B<semop>(2)\t2.0\tSee notes on B<ipc>(2)\n"
20958 msgstr "B<semop>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
20959
20960 #. type: tbl table
20961 #: build/C/man2/syscalls.2:476
20962 #, no-wrap
20963 msgid "B<semtimedop>(2)\t2.6; 2.4.22\n"
20964 msgstr "B<semtimedop>(2)\t2.6; 2.4.22\n"
20965
20966 #. type: tbl table
20967 #: build/C/man2/syscalls.2:477
20968 #, no-wrap
20969 msgid "B<send>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20970 msgstr "B<send>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20971
20972 #. type: tbl table
20973 #: build/C/man2/syscalls.2:478
20974 #, no-wrap
20975 msgid "B<sendfile>(2)\t2.2\n"
20976 msgstr "B<sendfile>(2)\t2.2\n"
20977
20978 #. type: tbl table
20979 #: build/C/man2/syscalls.2:479
20980 #, no-wrap
20981 msgid "B<sendfile64>(2)\t2.6; 2.4.19\n"
20982 msgstr "B<sendfile64>(2)\t2.6; 2.4.19\n"
20983
20984 #. type: tbl table
20985 #: build/C/man2/syscalls.2:480
20986 #, no-wrap
20987 msgid "B<sendmmsg>(2)\t3.0\n"
20988 msgstr "B<sendmmsg>(2)\t3.0\n"
20989
20990 #. type: tbl table
20991 #: build/C/man2/syscalls.2:481
20992 #, no-wrap
20993 msgid "B<sendmsg>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
20994 msgstr "B<sendmsg>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
20995
20996 #. type: tbl table
20997 #: build/C/man2/syscalls.2:482
20998 #, no-wrap
20999 msgid "B<sendto>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21000 msgstr "B<sendto>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21001
21002 #. type: tbl table
21003 #: build/C/man2/syscalls.2:483
21004 #, no-wrap
21005 msgid "B<set_mempolicy>(2)\t2.6.6\n"
21006 msgstr "B<set_mempolicy>(2)\t2.6.6\n"
21007
21008 #. type: tbl table
21009 #: build/C/man2/syscalls.2:484
21010 #, no-wrap
21011 msgid "B<set_robust_list>(2)\t2.6.17\n"
21012 msgstr "B<set_robust_list>(2)\t2.6.17\n"
21013
21014 #. type: tbl table
21015 #: build/C/man2/syscalls.2:485
21016 #, no-wrap
21017 msgid "B<set_thread_area>(2)\t2.6\n"
21018 msgstr "B<set_thread_area>(2)\t2.6\n"
21019
21020 #. type: tbl table
21021 #: build/C/man2/syscalls.2:486
21022 #, no-wrap
21023 msgid "B<set_tid_address>(2)\t2.6\n"
21024 msgstr "B<set_tid_address>(2)\t2.6\n"
21025
21026 #.  See http://lkml.org/lkml/2005/8/1/83
21027 #.  "[PATCH] remove sys_set_zone_reclaim()"
21028 #. type: tbl table
21029 #: build/C/man2/syscalls.2:489
21030 #, no-wrap
21031 msgid "B<setdomainname>(2)\t1.0\n"
21032 msgstr "B<setdomainname>(2)\t1.0\n"
21033
21034 #. type: tbl table
21035 #: build/C/man2/syscalls.2:490
21036 #, no-wrap
21037 msgid "B<setfsgid>(2)\t1.2\n"
21038 msgstr "B<setfsgid>(2)\t1.2\n"
21039
21040 #. type: tbl table
21041 #: build/C/man2/syscalls.2:491
21042 #, no-wrap
21043 msgid "B<setfsgid32>(2)\t2.4\n"
21044 msgstr "B<setfsgid32>(2)\t2.4\n"
21045
21046 #. type: tbl table
21047 #: build/C/man2/syscalls.2:492
21048 #, no-wrap
21049 msgid "B<setfsuid>(2)\t1.2\n"
21050 msgstr "B<setfsuid>(2)\t1.2\n"
21051
21052 #. type: tbl table
21053 #: build/C/man2/syscalls.2:493
21054 #, no-wrap
21055 msgid "B<setfsuid32>(2)\t2.4\n"
21056 msgstr "B<setfsuid32>(2)\t2.4\n"
21057
21058 #. type: tbl table
21059 #: build/C/man2/syscalls.2:494
21060 #, no-wrap
21061 msgid "B<setgid>(2)\t1.0\n"
21062 msgstr "B<setgid>(2)\t1.0\n"
21063
21064 #. type: tbl table
21065 #: build/C/man2/syscalls.2:495
21066 #, no-wrap
21067 msgid "B<setgid32>(2)\t2.4\n"
21068 msgstr "B<setgid32>(2)\t2.4\n"
21069
21070 #. type: tbl table
21071 #: build/C/man2/syscalls.2:496
21072 #, no-wrap
21073 msgid "B<setgroups>(2)\t1.0\n"
21074 msgstr "B<setgroups>(2)\t1.0\n"
21075
21076 #. type: tbl table
21077 #: build/C/man2/syscalls.2:497
21078 #, no-wrap
21079 msgid "B<setgroups32>(2)\t2.4\n"
21080 msgstr "B<setgroups32>(2)\t2.4\n"
21081
21082 #. type: tbl table
21083 #: build/C/man2/syscalls.2:498
21084 #, no-wrap
21085 msgid "B<sethostname>(2)\t1.0\n"
21086 msgstr "B<sethostname>(2)\t1.0\n"
21087
21088 #. type: tbl table
21089 #: build/C/man2/syscalls.2:499
21090 #, no-wrap
21091 msgid "B<setitimer>(2)\t1.0\n"
21092 msgstr "B<setitimer>(2)\t1.0\n"
21093
21094 #. type: tbl table
21095 #: build/C/man2/syscalls.2:500
21096 #, no-wrap
21097 msgid "B<setns>(2)\t3.0\n"
21098 msgstr "B<setns>(2)\t3.0\n"
21099
21100 #. type: tbl table
21101 #: build/C/man2/syscalls.2:501
21102 #, no-wrap
21103 msgid "B<setpgid>(2)\t1.0\n"
21104 msgstr "B<setpgid>(2)\t1.0\n"
21105
21106 #. type: tbl table
21107 #: build/C/man2/syscalls.2:502
21108 #, no-wrap
21109 msgid "B<setpriority>(2)\t1.0\n"
21110 msgstr "B<setpriority>(2)\t1.0\n"
21111
21112 #. type: tbl table
21113 #: build/C/man2/syscalls.2:503
21114 #, no-wrap
21115 msgid "B<setregid>(2)\t1.0\n"
21116 msgstr "B<setregid>(2)\t1.0\n"
21117
21118 #. type: tbl table
21119 #: build/C/man2/syscalls.2:504
21120 #, no-wrap
21121 msgid "B<setregid32>(2)\t2.4\n"
21122 msgstr "B<setregid32>(2)\t2.4\n"
21123
21124 #. type: tbl table
21125 #: build/C/man2/syscalls.2:505
21126 #, no-wrap
21127 msgid "B<setresgid>(2)\t2.2\n"
21128 msgstr "B<setresgid>(2)\t2.2\n"
21129
21130 #. type: tbl table
21131 #: build/C/man2/syscalls.2:506
21132 #, no-wrap
21133 msgid "B<setresgid32>(2)\t2.4\n"
21134 msgstr "B<setresgid32>(2)\t2.4\n"
21135
21136 #. type: tbl table
21137 #: build/C/man2/syscalls.2:507
21138 #, no-wrap
21139 msgid "B<setresuid>(2)\t2.2\n"
21140 msgstr "B<setresuid>(2)\t2.2\n"
21141
21142 #. type: tbl table
21143 #: build/C/man2/syscalls.2:508
21144 #, no-wrap
21145 msgid "B<setresuid32>(2)\t2.4\n"
21146 msgstr "B<setresuid32>(2)\t2.4\n"
21147
21148 #. type: tbl table
21149 #: build/C/man2/syscalls.2:509
21150 #, no-wrap
21151 msgid "B<setreuid>(2)\t1.0\n"
21152 msgstr "B<setreuid>(2)\t1.0\n"
21153
21154 #. type: tbl table
21155 #: build/C/man2/syscalls.2:510
21156 #, no-wrap
21157 msgid "B<setreuid32>(2)\t2.4\n"
21158 msgstr "B<setreuid32>(2)\t2.4\n"
21159
21160 #. type: tbl table
21161 #: build/C/man2/syscalls.2:511
21162 #, no-wrap
21163 msgid "B<setrlimit>(2)\t1.0\n"
21164 msgstr "B<setrlimit>(2)\t1.0\n"
21165
21166 #. type: tbl table
21167 #: build/C/man2/syscalls.2:512
21168 #, no-wrap
21169 msgid "B<setsid>(2)\t1.0\n"
21170 msgstr "B<setsid>(2)\t1.0\n"
21171
21172 #. type: tbl table
21173 #: build/C/man2/syscalls.2:513
21174 #, no-wrap
21175 msgid "B<setsockopt>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21176 msgstr "B<setsockopt>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21177
21178 #. type: tbl table
21179 #: build/C/man2/syscalls.2:514
21180 #, no-wrap
21181 msgid "B<settimeofday>(2)\t1.0\n"
21182 msgstr "B<settimeofday>(2)\t1.0\n"
21183
21184 #. type: tbl table
21185 #: build/C/man2/syscalls.2:515
21186 #, no-wrap
21187 msgid "B<setuid>(2)\t1.0\n"
21188 msgstr "B<setuid>(2)\t1.0\n"
21189
21190 #. type: tbl table
21191 #: build/C/man2/syscalls.2:516
21192 #, no-wrap
21193 msgid "B<setuid32>(2)\t2.4\n"
21194 msgstr "B<setuid32>(2)\t2.4\n"
21195
21196 #. type: tbl table
21197 #: build/C/man2/syscalls.2:517
21198 #, no-wrap
21199 msgid "B<setup>(2)\t1.0\tRemoved in 2.2\n"
21200 msgstr "B<setup>(2)\t1.0\t2.2 で削除\n"
21201
21202 #. type: tbl table
21203 #: build/C/man2/syscalls.2:518
21204 #, no-wrap
21205 msgid "B<setxattr>(2)\t2.6; 2.4.18\n"
21206 msgstr "B<setxattr>(2)\t2.6; 2.4.18\n"
21207
21208 #. type: tbl table
21209 #: build/C/man2/syscalls.2:519
21210 #, no-wrap
21211 msgid "B<sgetmask>(2)\t1.0\n"
21212 msgstr "B<sgetmask>(2)\t1.0\n"
21213
21214 #. type: tbl table
21215 #: build/C/man2/syscalls.2:520
21216 #, no-wrap
21217 msgid "B<shmat>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21218 msgstr "B<shmat>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21219
21220 #. type: tbl table
21221 #: build/C/man2/syscalls.2:521
21222 #, no-wrap
21223 msgid "B<shmctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21224 msgstr "B<shmctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21225
21226 #. type: tbl table
21227 #: build/C/man2/syscalls.2:522
21228 #, no-wrap
21229 msgid "B<shmdt>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21230 msgstr "B<shmdt>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21231
21232 #. type: tbl table
21233 #: build/C/man2/syscalls.2:523
21234 #, no-wrap
21235 msgid "B<shmget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
21236 msgstr "B<shmget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
21237
21238 #. type: tbl table
21239 #: build/C/man2/syscalls.2:524
21240 #, no-wrap
21241 msgid "B<shutdown>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21242 msgstr "B<shutdown>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21243
21244 #. type: tbl table
21245 #: build/C/man2/syscalls.2:525
21246 #, no-wrap
21247 msgid "B<sigaction>(2)\t1.0\n"
21248 msgstr "B<sigaction>(2)\t1.0\n"
21249
21250 #. type: tbl table
21251 #: build/C/man2/syscalls.2:526
21252 #, no-wrap
21253 msgid "B<sigaltstack>(2)\t2.2\n"
21254 msgstr "B<sigaltstack>(2)\t2.2\n"
21255
21256 #. type: tbl table
21257 #: build/C/man2/syscalls.2:527
21258 #, no-wrap
21259 msgid "B<signal>(2)\t1.0\n"
21260 msgstr "B<signal>(2)\t1.0\n"
21261
21262 #. type: tbl table
21263 #: build/C/man2/syscalls.2:528
21264 #, no-wrap
21265 msgid "B<signalfd>(2)\t2.6.22\n"
21266 msgstr "B<signalfd>(2)\t2.6.22\n"
21267
21268 #. type: tbl table
21269 #: build/C/man2/syscalls.2:529
21270 #, no-wrap
21271 msgid "B<signalfd4>(2)\t2.6.27\n"
21272 msgstr "B<signalfd4>(2)\t2.6.27\n"
21273
21274 #. type: tbl table
21275 #: build/C/man2/syscalls.2:530
21276 #, no-wrap
21277 msgid "B<sigpending>(2)\t1.0\n"
21278 msgstr "B<sigpending>(2)\t1.0\n"
21279
21280 #. type: tbl table
21281 #: build/C/man2/syscalls.2:531
21282 #, no-wrap
21283 msgid "B<sigprocmask>(2)\t1.0\n"
21284 msgstr "B<sigprocmask>(2)\t1.0\n"
21285
21286 #. type: tbl table
21287 #: build/C/man2/syscalls.2:532
21288 #, no-wrap
21289 msgid "B<sigreturn>(2)\t1.0\n"
21290 msgstr "B<sigreturn>(2)\t1.0\n"
21291
21292 #. type: tbl table
21293 #: build/C/man2/syscalls.2:533
21294 #, no-wrap
21295 msgid "B<sigsuspend>(2)\t1.0\n"
21296 msgstr "B<sigsuspend>(2)\t1.0\n"
21297
21298 #. type: tbl table
21299 #: build/C/man2/syscalls.2:534
21300 #, no-wrap
21301 msgid "B<socket>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21302 msgstr "B<socket>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21303
21304 #. type: tbl table
21305 #: build/C/man2/syscalls.2:535
21306 #, no-wrap
21307 msgid "B<socketcall>(2)\t1.0\n"
21308 msgstr "B<socketcall>(2)\t1.0\n"
21309
21310 #.  Implements BSD socket calls
21311 #. type: tbl table
21312 #: build/C/man2/syscalls.2:537
21313 #, no-wrap
21314 msgid "B<socketpair>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
21315 msgstr "B<socketpair>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
21316
21317 #. type: tbl table
21318 #: build/C/man2/syscalls.2:538
21319 #, no-wrap
21320 msgid "B<splice>(2)\t2.6.17\n"
21321 msgstr "B<splice>(2)\t2.6.17\n"
21322
21323 #. type: tbl table
21324 #: build/C/man2/syscalls.2:539
21325 #, no-wrap
21326 msgid "B<spu_create>(2)\t2.6.16\tPowerPC only\n"
21327 msgstr "B<spu_create>(2)\t2.6.16\tPowerPC のみ\n"
21328
21329 #. type: tbl table
21330 #: build/C/man2/syscalls.2:540
21331 #, no-wrap
21332 msgid "B<spu_run>(2)\t2.6.16\tPowerPC only\n"
21333 msgstr "B<spu_run>(2)\t2.6.16\tPowerPC のみ\n"
21334
21335 #. type: tbl table
21336 #: build/C/man2/syscalls.2:541
21337 #, no-wrap
21338 msgid "B<ssetmask>(2)\t1.0\n"
21339 msgstr "B<ssetmask>(2)\t1.0\n"
21340
21341 #. type: tbl table
21342 #: build/C/man2/syscalls.2:542
21343 #, no-wrap
21344 msgid "B<stat>(2)\t1.0\n"
21345 msgstr "B<stat>(2)\t1.0\n"
21346
21347 #. type: tbl table
21348 #: build/C/man2/syscalls.2:543
21349 #, no-wrap
21350 msgid "B<stat64>(2)\t2.4\n"
21351 msgstr "B<stat64>(2)\t2.4\n"
21352
21353 #. type: tbl table
21354 #: build/C/man2/syscalls.2:544
21355 #, no-wrap
21356 msgid "B<statfs>(2)\t1.0\n"
21357 msgstr "B<statfs>(2)\t1.0\n"
21358
21359 #. type: tbl table
21360 #: build/C/man2/syscalls.2:545
21361 #, no-wrap
21362 msgid "B<statfs64>(2)\t2.6\n"
21363 msgstr "B<statfs64>(2)\t2.6\n"
21364
21365 #. type: tbl table
21366 #: build/C/man2/syscalls.2:546
21367 #, no-wrap
21368 msgid "B<stime>(2)\t1.0\n"
21369 msgstr "B<stime>(2)\t1.0\n"
21370
21371 #. type: tbl table
21372 #: build/C/man2/syscalls.2:547
21373 #, no-wrap
21374 msgid "B<subpage_prot>(2)\t2.6.25\tPowerPC only\n"
21375 msgstr "B<subpage_prot>(2)\t2.6.25\tPowerPC のみ\n"
21376
21377 #. type: tbl table
21378 #: build/C/man2/syscalls.2:548
21379 #, no-wrap
21380 msgid "B<swapoff>(2)\t1.0\n"
21381 msgstr "B<swapoff>(2)\t1.0\n"
21382
21383 #. type: tbl table
21384 #: build/C/man2/syscalls.2:549
21385 #, no-wrap
21386 msgid "B<swapon>(2)\t1.0\n"
21387 msgstr "B<swapon>(2)\t1.0\n"
21388
21389 #. type: tbl table
21390 #: build/C/man2/syscalls.2:550
21391 #, no-wrap
21392 msgid "B<symlink>(2)\t1.0\n"
21393 msgstr "B<symlink>(2)\t1.0\n"
21394
21395 #. type: tbl table
21396 #: build/C/man2/syscalls.2:551
21397 #, no-wrap
21398 msgid "B<symlinkat>(2)\t2.6.16\n"
21399 msgstr "B<symlinkat>(2)\t2.6.16\n"
21400
21401 #. type: tbl table
21402 #: build/C/man2/syscalls.2:552
21403 #, no-wrap
21404 msgid "B<sync>(2)\t1.0\n"
21405 msgstr "B<sync>(2)\t1.0\n"
21406
21407 #. type: tbl table
21408 #: build/C/man2/syscalls.2:553
21409 #, no-wrap
21410 msgid "B<sync_file_range>(2)\t2.6.17\n"
21411 msgstr "B<sync_file_range>(2)\t2.6.17\n"
21412
21413 #. type: tbl table
21414 #: build/C/man2/syscalls.2:554
21415 #, no-wrap
21416 msgid "B<sync_file_range2>(2)\t2.6.22\n"
21417 msgstr "B<sync_file_range2>(2)\t2.6.22\n"
21418
21419 #.  PowerPC, ARM, tile
21420 #.  First appeared on ARM, as arm_sync_file_range(), but later renamed
21421 #.  \fBsys_debug_setcontext\fP(2)       ???     PowerPC if CONFIG_PPC32
21422 #. type: tbl table
21423 #: build/C/man2/syscalls.2:558
21424 #, no-wrap
21425 msgid "B<syncfs>(2)\t2.6.39\n"
21426 msgstr "B<syncfs>(2)\t2.6.39\n"
21427
21428 #. type: tbl table
21429 #: build/C/man2/syscalls.2:559
21430 #, no-wrap
21431 msgid "B<sysfs>(2)\t1.2\n"
21432 msgstr "B<sysfs>(2)\t1.2\n"
21433
21434 #. type: tbl table
21435 #: build/C/man2/syscalls.2:560
21436 #, no-wrap
21437 msgid "B<sysinfo>(2)\t1.0\n"
21438 msgstr "B<sysinfo>(2)\t1.0\n"
21439
21440 #. type: tbl table
21441 #: build/C/man2/syscalls.2:561
21442 #, no-wrap
21443 msgid "B<syslog>(2)\t1.0\n"
21444 msgstr "B<syslog>(2)\t1.0\n"
21445
21446 #.  glibc interface is \fBklogctl\fP(3)
21447 #. type: tbl table
21448 #: build/C/man2/syscalls.2:563
21449 #, no-wrap
21450 msgid "B<tee>(2)\t2.6.17\n"
21451 msgstr "B<tee>(2)\t2.6.17\n"
21452
21453 #. type: tbl table
21454 #: build/C/man2/syscalls.2:564
21455 #, no-wrap
21456 msgid "B<tgkill>(2)\t2.6\n"
21457 msgstr "B<tgkill>(2)\t2.6\n"
21458
21459 #. type: tbl table
21460 #: build/C/man2/syscalls.2:565
21461 #, no-wrap
21462 msgid "B<time>(2)\t1.0\n"
21463 msgstr "B<time>(2)\t1.0\n"
21464
21465 #. type: tbl table
21466 #: build/C/man2/syscalls.2:566
21467 #, no-wrap
21468 msgid "B<timer_create>(2)\t2.6\n"
21469 msgstr "B<timer_create>(2)\t2.6\n"
21470
21471 #. type: tbl table
21472 #: build/C/man2/syscalls.2:567
21473 #, no-wrap
21474 msgid "B<timer_delete>(2)\t2.6\n"
21475 msgstr "B<timer_delete>(2)\t2.6\n"
21476
21477 #. type: tbl table
21478 #: build/C/man2/syscalls.2:568
21479 #, no-wrap
21480 msgid "B<timer_getoverrun>(2)\t2.6\n"
21481 msgstr "B<timer_getoverrun>(2)\t2.6\n"
21482
21483 #. type: tbl table
21484 #: build/C/man2/syscalls.2:569
21485 #, no-wrap
21486 msgid "B<timer_gettime>(2)\t2.6\n"
21487 msgstr "B<timer_gettime>(2)\t2.6\n"
21488
21489 #. type: tbl table
21490 #: build/C/man2/syscalls.2:570
21491 #, no-wrap
21492 msgid "B<timer_settime>(2)\t2.6\n"
21493 msgstr "B<timer_settime>(2)\t2.6\n"
21494
21495 #. type: tbl table
21496 #: build/C/man2/syscalls.2:571
21497 #, no-wrap
21498 msgid "B<timerfd_create>(2)\t2.6.25\n"
21499 msgstr "B<timerfd_create>(2)\t2.6.25\n"
21500
21501 #. type: tbl table
21502 #: build/C/man2/syscalls.2:572
21503 #, no-wrap
21504 msgid "B<timerfd_gettime>(2)\t2.6.25\n"
21505 msgstr "B<timerfd_gettime>(2)\t2.6.25\n"
21506
21507 #. type: tbl table
21508 #: build/C/man2/syscalls.2:573
21509 #, no-wrap
21510 msgid "B<timerfd_settime>(2)\t2.6.25\n"
21511 msgstr "B<timerfd_settime>(2)\t2.6.25\n"
21512
21513 #. type: tbl table
21514 #: build/C/man2/syscalls.2:574
21515 #, no-wrap
21516 msgid "B<times>(2)\t1.0\n"
21517 msgstr "B<times>(2)\t1.0\n"
21518
21519 #. type: tbl table
21520 #: build/C/man2/syscalls.2:575
21521 #, no-wrap
21522 msgid "B<tkill>(2)\t2.6; 2.4.22\n"
21523 msgstr "B<tkill>(2)\t2.6; 2.4.22\n"
21524
21525 #. type: tbl table
21526 #: build/C/man2/syscalls.2:576
21527 #, no-wrap
21528 msgid "B<truncate>(2)\t1.0\n"
21529 msgstr "B<truncate>(2)\t1.0\n"
21530
21531 #. type: tbl table
21532 #: build/C/man2/syscalls.2:577
21533 #, no-wrap
21534 msgid "B<truncate64>(2)\t2.4\n"
21535 msgstr "B<truncate64>(2)\t2.4\n"
21536
21537 #. type: tbl table
21538 #: build/C/man2/syscalls.2:578
21539 #, no-wrap
21540 msgid "B<ugetrlimit>(2)\t2.4\n"
21541 msgstr "B<ugetrlimit>(2)\t2.4\n"
21542
21543 #. type: tbl table
21544 #: build/C/man2/syscalls.2:579
21545 #, no-wrap
21546 msgid "B<umask>(2)\t1.0\n"
21547 msgstr "B<umask>(2)\t1.0\n"
21548
21549 #. type: tbl table
21550 #: build/C/man2/syscalls.2:580
21551 #, no-wrap
21552 msgid "B<umount>(2)\t1.0\n"
21553 msgstr "B<umount>(2)\t1.0\n"
21554
21555 #.  sys_oldumount() -- __NR_umount
21556 #. type: tbl table
21557 #: build/C/man2/syscalls.2:582
21558 #, no-wrap
21559 msgid "B<umount2>(2)\t2.2\n"
21560 msgstr "B<umount2>(2)\t2.2\n"
21561
21562 #.  sys_umount() -- __NR_umount2
21563 #. type: tbl table
21564 #: build/C/man2/syscalls.2:584
21565 #, no-wrap
21566 msgid "B<uname>(2)\t1.0\n"
21567 msgstr "B<uname>(2)\t1.0\n"
21568
21569 #. type: tbl table
21570 #: build/C/man2/syscalls.2:585
21571 #, no-wrap
21572 msgid "B<unlink>(2)\t1.0\n"
21573 msgstr "B<unlink>(2)\t1.0\n"
21574
21575 #. type: tbl table
21576 #: build/C/man2/syscalls.2:586
21577 #, no-wrap
21578 msgid "B<unlinkat>(2)\t2.6.16\n"
21579 msgstr "B<unlinkat>(2)\t2.6.16\n"
21580
21581 #. type: tbl table
21582 #: build/C/man2/syscalls.2:587
21583 #, no-wrap
21584 msgid "B<unshare>(2)\t2.6.16\n"
21585 msgstr "B<unshare>(2)\t2.6.16\n"
21586
21587 #. type: tbl table
21588 #: build/C/man2/syscalls.2:588
21589 #, no-wrap
21590 msgid "B<uselib>(2)\t1.0\n"
21591 msgstr "B<uselib>(2)\t1.0\n"
21592
21593 #. type: tbl table
21594 #: build/C/man2/syscalls.2:589
21595 #, no-wrap
21596 msgid "B<ustat>(2)\t1.0\n"
21597 msgstr "B<ustat>(2)\t1.0\n"
21598
21599 #. type: tbl table
21600 #: build/C/man2/syscalls.2:590
21601 #, no-wrap
21602 msgid "B<utime>(2)\t1.0\n"
21603 msgstr "B<utime>(2)\t1.0\n"
21604
21605 #. type: tbl table
21606 #: build/C/man2/syscalls.2:591
21607 #, no-wrap
21608 msgid "B<utimensat>(2)\t2.6.22\n"
21609 msgstr "B<utimensat>(2)\t2.6.22\n"
21610
21611 #. type: tbl table
21612 #: build/C/man2/syscalls.2:592
21613 #, no-wrap
21614 msgid "B<utimes>(2)\t2.2\n"
21615 msgstr "B<utimes>(2)\t2.2\n"
21616
21617 #. type: tbl table
21618 #: build/C/man2/syscalls.2:593
21619 #, no-wrap
21620 msgid "B<utrap_install>(2)\t2.2\tSparc only\n"
21621 msgstr "B<utrap_install>(2)\t2.2\tSparc のみ\n"
21622
21623 #.  FIXME . document utrap_install()
21624 #.  There's a man page for Solaris 5.11
21625 #. type: tbl table
21626 #: build/C/man2/syscalls.2:596
21627 #, no-wrap
21628 msgid "B<vfork>(2)\t2.2\n"
21629 msgstr "B<vfork>(2)\t2.2\n"
21630
21631 #. type: tbl table
21632 #: build/C/man2/syscalls.2:597
21633 #, no-wrap
21634 msgid "B<vhangup>(2)\t1.0\n"
21635 msgstr "B<vhangup>(2)\t1.0\n"
21636
21637 #. type: tbl table
21638 #: build/C/man2/syscalls.2:598
21639 #, no-wrap
21640 msgid "B<vm86old>(2)\t1.0\tT{\n"
21641 msgstr "B<vm86old>(2)\t1.0\tT{\n"
21642
21643 #. type: tbl table
21644 #: build/C/man2/syscalls.2:599
21645 #, no-wrap
21646 msgid "Was \"vm86\"; renamed in\n"
21647 msgstr "以前は \"vm86\";\n"
21648
21649 #. type: tbl table
21650 #: build/C/man2/syscalls.2:600
21651 #, no-wrap
21652 msgid "2.0.28/2.2\n"
21653 msgstr "2.0.28/2.2 で改名された\n"
21654
21655 #. type: tbl table
21656 #: build/C/man2/syscalls.2:602
21657 #, no-wrap
21658 msgid "B<vm86>(2)\t2.0.28; 2.2\n"
21659 msgstr "B<vm86>(2)\t2.0.28; 2.2\n"
21660
21661 #. type: tbl table
21662 #: build/C/man2/syscalls.2:603
21663 #, no-wrap
21664 msgid "B<vmsplice>(2)\t2.6.17\n"
21665 msgstr "B<vmsplice>(2)\t2.6.17\n"
21666
21667 #. type: tbl table
21668 #: build/C/man2/syscalls.2:604
21669 #, no-wrap
21670 msgid "B<wait4>(2)\t1.0\n"
21671 msgstr "B<wait4>(2)\t1.0\n"
21672
21673 #. type: tbl table
21674 #: build/C/man2/syscalls.2:605
21675 #, no-wrap
21676 msgid "B<waitid>(2)\t2.6.10\n"
21677 msgstr "B<waitid>(2)\t2.6.10\n"
21678
21679 #. type: tbl table
21680 #: build/C/man2/syscalls.2:606
21681 #, no-wrap
21682 msgid "B<waitpid>(2)\t1.0\n"
21683 msgstr "B<waitpid>(2)\t1.0\n"
21684
21685 #. type: tbl table
21686 #: build/C/man2/syscalls.2:607
21687 #, no-wrap
21688 msgid "B<write>(2)\t1.0\n"
21689 msgstr "B<write>(2)\t1.0\n"
21690
21691 #. type: tbl table
21692 #: build/C/man2/syscalls.2:608
21693 #, no-wrap
21694 msgid "B<writev>(2)\t2.0\n"
21695 msgstr "B<writev>(2)\t2.0\n"
21696
21697 #. type: Plain text
21698 #: build/C/man2/syscalls.2:617
21699 msgid ""
21700 "On many platforms, including x86-32, socket calls are all multiplexed (via "
21701 "glibc wrapper functions) through B<socketcall>(2)  and similarly System\\ V "
21702 "IPC calls are multiplexed through B<ipc>(2)."
21703 msgstr ""
21704 "x86-32 を含む多くのプラットフォームでは、ソケット関連のシステムコールは "
21705 "(glibc のラッパー関数を介してだが) すべて B<socketcall>(2) 経由に多重されてい"
21706 "る。 同様に、System\\ V IPC 関連のシステムコールは B<ipc>(2) 経由に多重されて"
21707 "いる。"
21708
21709 #.  __NR_afs_syscall is 53 on Linux 2.6.22/i386
21710 #.  __NR_break is 17 on Linux 2.6.22/i386
21711 #.  __NR_ftime is 35 on Linux 2.6.22/i386
21712 #.  __NR_getpmsg is 188 on Linux 2.6.22/i386
21713 #.  __NR_gtty is 32 on Linux 2.6.22/i386
21714 #.  __NR_idle is 112 on Linux 2.6.22/i386
21715 #.  __NR_lock is 53 on Linux 2.6.22/i386
21716 #.  __NR_madvise1 is 219 on Linux 2.6.22/i386
21717 #.  __NR_mpx is 66 on Linux 2.6.22/i386
21718 #.  Slot has been reused
21719 #.  __NR_prof is 44 on Linux 2.6.22/i386
21720 #.  __NR_profil is 98 on Linux 2.6.22/i386
21721 #.  __NR_putpmsg is 189 on Linux 2.6.22/i386
21722 #.  __NR_security is 223 on Linux 2.4/i386
21723 #.  __NR_security is 223 on Linux 2.4/i386; absent on 2.6/i386, present
21724 #.  on a couple of 2.6 architectures
21725 #.  __NR_stty is 31 on Linux 2.6.22/i386
21726 #.  The security call is for future use.
21727 #.  __NR_tuxcall is 184 on x86_64, also on PPC and alpha
21728 #.  __NR_ulimit is 58 on Linux 2.6.22/i386
21729 #.  __NR_vserver is 273 on Linux 2.6.22/i386
21730 #. type: Plain text
21731 #: build/C/man2/syscalls.2:662
21732 msgid ""
21733 "Although slots are reserved for them in the system call table, the following "
21734 "system calls are not implemented in the standard kernel: B<afs_syscall>(2), "
21735 "B<break>(2), B<ftime>(2), B<getpmsg>(2), B<gtty>(2), B<idle>(2), B<lock>(2), "
21736 "B<madvise1>(2), B<mpx>(2), B<phys>(2), B<prof>(2), B<profil>(2), "
21737 "B<putpmsg>(2), B<security>(2), B<stty>(2), B<tuxcall>(2), B<ulimit>(2), and "
21738 "B<vserver>(2)  (see also B<unimplemented>(2)).  However, B<ftime>(3), "
21739 "B<profil>(3), and B<ulimit>(3)  exist as library routines.  The slot for "
21740 "B<phys>(2)  is in use since kernel 2.1.116 for B<umount>(2); B<phys>(2)  "
21741 "will never be implemented.  The B<getpmsg>(2)  and B<putpmsg>(2)  calls are "
21742 "for kernels patched to support STREAMS, and may never be in the standard "
21743 "kernel."
21744 msgstr ""
21745 "以下のシステムコールは、システムコールテーブルにスロットが予約されている"
21746 "が、\n"
21747 "標準のカーネルには実装されていない:\n"
21748 "B<afs_syscall>(2), B<break>(2), B<ftime>(2), B<getpmsg>(2), B<gtty>(2),\n"
21749 "B<idle>(2), B<lock>(2), B<madvise1>(2), B<mpx>(2), B<phys>(2), B<prof>(2),\n"
21750 "B<profil>(2), B<putpmsg>(2), B<security>(2), B<stty>(2), B<tuxcall>(2),\n"
21751 "B<ulimit>(2), B<vserver>(2) (B<unimplemented>(2) も参照)。\n"
21752 "しかし、B<ftime>(3), B<profil>(3), B<ulimit>(3) はライブラリルーチンとして\n"
21753 "実装されている。 B<phys>(2) 用の場所は 2.1.116 以降では B<umount>(2) 用に\n"
21754 "使用されている; 将来においても B<phys>(2) は実装されない。\n"
21755 "B<getpmsg>(2) と B<putpmsg>(2) は STREAMS 対応のパッチが適用された\n"
21756 "カーネル用であり、標準のカーネルに登場することはないかもしれない。"
21757
21758 #. type: Plain text
21759 #: build/C/man2/syscalls.2:667
21760 msgid ""
21761 "There was briefly B<set_zone_reclaim>(2), added in Linux 2.6.13, and removed "
21762 "in 2.6.16; this system call was never available to user space."
21763 msgstr ""
21764 "B<set_zone_reclaim>(2) は少しの間だけ存在した。 Linux 2.6.13 で追加され、"
21765 "2.6.16 で削除された。このシステムコールがユーザー空間から使える状態になったこ"
21766 "とはない。"
21767
21768 #. type: Plain text
21769 #: build/C/man2/syscalls.2:684
21770 msgid ""
21771 "Roughly speaking, the code belonging to the system call with number __NR_xxx "
21772 "defined in I</usr/include/asm/unistd.h> can be found in the Linux kernel "
21773 "source in the routine I<sys_xxx>().  (The dispatch table for i386 can be "
21774 "found in I</usr/src/linux/arch/i386/kernel/entry.S>.)  There are many "
21775 "exceptions, however, mostly because older system calls were superseded by "
21776 "newer ones, and this has been treated somewhat unsystematically.  On "
21777 "platforms with proprietary operating-system emulation, such as parisc, "
21778 "sparc, sparc64, and alpha, there are many additional system calls; mips64 "
21779 "also contains a full set of 32-bit system calls."
21780 msgstr ""
21781 "たいていは、 I</usr/include/asm/unistd.h> で定義されている番号 __NR_xxx のシ"
21782 "ステムコールのコードは、 Linux カーネルソースの I<sys_xxx>() というルーチンに"
21783 "書かれている (i386 における実行テーブルは I</usr/src/linux/arch/i386/kernel/"
21784 "entry.S> に書かれている)。 しかしこれには多くの例外がある。古いシステムコール"
21785 "は新版に置き換えられて きたが、この置き換えはあまり体系立てて行われて来なかっ"
21786 "たからである。 parisc, sparc, sparc64, alpha といったプロプリエタリなオペレー"
21787 "ティングシステムのエミュレーション機能があるプラットフォームでは、多くの追加"
21788 "システムコールがある。 mips64 には、32 ビットシステムコールのフルセットも含ま"
21789 "れている。"
21790
21791 #. type: Plain text
21792 #: build/C/man2/syscalls.2:703
21793 msgid ""
21794 "Over time, changes to the interfaces of some system calls have been "
21795 "necessary.  One reason for such changes was the need to increase the size of "
21796 "structures or scalar values passed to the system call.  Because of these "
21797 "changes, there are now various groups of related system calls (e.g., "
21798 "B<truncate>(2)  and B<truncate64>(2))  which perform similar tasks, but "
21799 "which vary in details such as the size of their arguments.  (As noted "
21800 "earlier, applications are generally unaware of this: the glibc wrapper "
21801 "functions do some work to ensure that the right system call is invoked, and "
21802 "that ABI compatibility is preserved for old binaries.)  Examples of systems "
21803 "calls that exist in multiple versions are the following:"
21804 msgstr ""
21805 "時間の経過とともに、いくつかのシステムコールではインターフェースの 変更が必要"
21806 "になってきた。 こうした変更の理由の一つは、システムコールに渡される構造体やス"
21807 "カラー値 のサイズを増やす必要があることだった。 これらの変更の結果、現在で"
21808 "は、同様の処理を実行するが 引き数のサイズなどの詳細は異なる、一連のシステム"
21809 "コール群が いくつか存在する (例えば、 B<truncate>(2)  と B<truncate64>(2))。 "
21810 "(すでに述べたように、 一般にはアプリケーションがこのことを意識することはな"
21811 "い。 glibc のラッパー関数が、適切なシステムコールを起動し、古いバイナリに 対"
21812 "して ABI レベルでの互換性を保持することを保証する処理を行っている。)  複数の"
21813 "バージョンが存在するシステムコールの例を以下に挙げる。"
21814
21815 #.  e.g., on 2.6.22/i386: __NR_oldstat 18, __NR_stat 106, __NR_stat64 195
21816 #.  The stat system calls deal with three different data structures,
21817 #.  defined in include/asm-i386/stat.h: __old_kernel_stat, stat, stat64
21818 #. type: Plain text
21819 #: build/C/man2/syscalls.2:724
21820 msgid ""
21821 "By now there are three different versions of B<stat>(2): I<sys_stat>()  "
21822 "(slot I<__NR_oldstat>), I<sys_newstat>()  (slot I<__NR_stat>), and "
21823 "I<sys_stat64>()  (slot I<__NR_stat64>), with the last being the most "
21824 "current.  A similar story applies for B<lstat>(2)  and B<fstat>(2)."
21825 msgstr ""
21826 "これまでに、 B<stat>(2)  には 3 種類の異なるバージョンが存在する。 "
21827 "I<sys_stat>()  (スロットは I<__NR_oldstat>)、 I<sys_newstat>()  (スロットは "
21828 "I<__NR_stat>)、 I<sys_stat64>()  (カーネル 2.4 で導入; スロットは "
21829 "I<__NR_stat64>)。 3つのうち最後のものが最新である。 B<lstat>(2)  と "
21830 "B<fstat>(2)  についても同様である。"
21831
21832 #. type: Plain text
21833 #: build/C/man2/syscalls.2:735
21834 msgid ""
21835 "Similarly, the defines I<__NR_oldolduname>, I<__NR_olduname>, and "
21836 "I<__NR_uname> refer to the routines I<sys_olduname>(), I<sys_uname>()  and "
21837 "I<sys_newuname>()."
21838 msgstr ""
21839 "また、 I<__NR_oldolduname>, I<__NR_olduname>, I<__NR_uname> という定義は、そ"
21840 "れぞれ I<sys_olduname>(), I<sys_uname>(), I<sys_newuname>()  というルーチンを"
21841 "参照している。"
21842
21843 #. type: Plain text
21844 #: build/C/man2/syscalls.2:742
21845 msgid ""
21846 "In Linux 2.0, a new version of B<vm86>(2)  appeared, with the old and the "
21847 "new kernel routines being named I<sys_vm86old>()  and I<sys_vm86>()."
21848 msgstr ""
21849 "Linux 2.0 では、 B<vm86>(2)  の新バージョンが登場した。カーネルルーチンの 古"
21850 "いバージョン、新しいバージョンはそれぞれ I<sys_vm86old>(), I<sys_vm86>()  と"
21851 "いう名前である。"
21852
21853 #. type: Plain text
21854 #: build/C/man2/syscalls.2:753
21855 msgid ""
21856 "In Linux 2.4, a new version of B<getrlimit>(2)  appeared, with the old and "
21857 "the new kernel routines being named I<sys_old_getrlimit>()  (slot "
21858 "I<__NR_getrlimit>)  and I<sys_getrlimit>()  (slot I<__NR_ugetrlimit>)."
21859 msgstr ""
21860 "Linux 2.4 では、 B<getrlimit>(2)  の新バージョンが登場した。カーネルルーチン"
21861 "の 古いバージョン、新しいバージョンはそれぞれ I<sys_old_getrlimit>()  (スロッ"
21862 "トは I<__NR_getrlimit>), I<sys_getrlimit>()  (スロットは "
21863 "I<__NR_ugetrlimit>)  という名前である。"
21864
21865 #.  64-bit off_t changes: ftruncate64, *stat64,
21866 #.  fcntl64 (because of the flock structure), getdents64, *statfs64
21867 #. type: Plain text
21868 #: build/C/man2/syscalls.2:765
21869 msgid ""
21870 "Linux 2.4 increased the size of user and group IDs from 16 to 32 bits.  To "
21871 "support this change, a range of system calls were added (e.g., "
21872 "B<chown32>(2), B<getuid32>(2), B<getgroups32>(2), B<setresuid32>(2)), "
21873 "superseding earlier calls of the same name without the \"32\" suffix."
21874 msgstr ""
21875 "Linux 2.4 で、ユーザー ID とグループ ID のサイズが 16 ビットから 32 ビットに"
21876 "増えた。 この変更に対応するため、いくつかのシステムコールが追加された "
21877 "(B<chown32>(2), B<getuid32>(2), B<getgroups32>(2), B<setresuid32>(2)  な"
21878 "ど)。 これらのシステムコールが、末尾の \"32\" が付かない同名の 古いバージョン"
21879 "に代わって使われるようになった。"
21880
21881 #. type: Plain text
21882 #: build/C/man2/syscalls.2:782
21883 msgid ""
21884 "Linux 2.4 added support for applications on 32-bit architectures to access "
21885 "large files (i.e., files for which the sizes and file offsets can't be "
21886 "represented in 32 bits.)  To support this change, replacements were required "
21887 "for system calls that deal with file offsets and sizes.  Thus the following "
21888 "system calls were added: B<fcntl64>(2), B<ftruncate64>(2), B<getdents64>(2), "
21889 "B<stat64>(2), B<statfs64>(2), and their analogs that work with file "
21890 "descriptors or symbolic links.  These system calls supersede the older "
21891 "system calls which, except in the case of the \"stat\" calls, have the same "
21892 "name without the \"64\" suffix."
21893 msgstr ""
21894 "Linux 2.4 では、32 ビットアーキテクチャー上のアプリケーションが 大きなファイ"
21895 "ル (つまり、32 ビットでは表現できないサイズや ファイルオフセットが必要なファ"
21896 "イル) にアクセスできるようになった。 この変更に対応するため、ファイルオフセッ"
21897 "トとサイズを扱う システムコールの置き換えが必要となった。その結果、 "
21898 "B<fcntl64>(2), B<ftruncate64>(2), B<getdents64>(2), B<stat64>(2), "
21899 "B<statfs64>(2)  と、ファイルディスクリプターやシンボリックリンクで同じ機能を"
21900 "持つ システムコールが追加された。 これらのシステムコールが、末尾の \"64\" が"
21901 "付かない同名の 古いバージョンに代わって使われるようになった。 但し、\"stat\" "
21902 "系のシステムコールはその限りではない。"
21903
21904 #. type: Plain text
21905 #: build/C/man2/syscalls.2:786
21906 msgid ""
21907 "On newer platforms that only have 64-bit file access and 32-bit uids (e.g., "
21908 "alpha, ia64, s390x) there are no *64 or *32 calls.  Where the *64 and *32 "
21909 "calls exist, the other versions are obsolete."
21910 msgstr ""
21911 "64-bit ファイルアクセスと 32-bit UID のみを持つ 新しいプラットフォーム "
21912 "(alpha, ia64, s390x など) では、 *64 や *32 という名前のシステムコールはな"
21913 "い。 *64 や *32 というシステムコールが存在する場合、 *64 や *32 がついていな"
21914 "いシステムコールは廃止扱いである。"
21915
21916 #. type: Plain text
21917 #: build/C/man2/syscalls.2:794
21918 msgid ""
21919 "The I<rt_sig*> calls were added in kernel 2.2 to support the addition of "
21920 "real-time signals (see B<signal>(7)).  These system calls supersede the "
21921 "older system calls of the same name without the \"rt_\" prefix."
21922 msgstr ""
21923 "リアルタイムシグナル (B<signal>(7)  参照) への対応を追加するために、 "
21924 "I<rt_sig*> 系のシステムコールがカーネル 2.2 で追加された。 これらのシステム"
21925 "コールが、先頭に \"rt_\" が付かない同名の 古いバージョンに代わって使われるよ"
21926 "うになった。"
21927
21928 #.  (used by libc 6)
21929 #.  .PP
21930 #.  Two system call numbers,
21931 #.  .IR __NR__llseek
21932 #.  and
21933 #.  .IR __NR__sysctl
21934 #.  have an additional underscore absent in
21935 #.  .IR sys_llseek ()
21936 #.  and
21937 #.  .IR sys_sysctl ().
21938 #.  In kernel 2.1.81,
21939 #.  .BR lchown (2)
21940 #.  and
21941 #.  .BR chown (2)
21942 #.  were swapped; that is,
21943 #.  .BR lchown (2)
21944 #.  was added with the semantics that were then current for
21945 #.  .BR chown (2),
21946 #.  and the semantics of the latter call were changed to what
21947 #.  they are today.
21948 #. type: Plain text
21949 #: build/C/man2/syscalls.2:844
21950 msgid ""
21951 "The B<select>(2)  and B<mmap>(2)  system calls use five or more arguments, "
21952 "which caused problems in the way argument passing on the i386 used to be set "
21953 "up.  Thus, while other architectures have I<sys_select>()  and "
21954 "I<sys_mmap>()  corresponding to I<__NR_select> and I<__NR_mmap>, on i386 one "
21955 "finds I<old_select>()  and I<old_mmap>()  (routines that use a pointer to a "
21956 "argument block) instead.  These days passing five arguments is not a problem "
21957 "any more, and there is a I<__NR__newselect> that corresponds directly to "
21958 "I<sys_select>()  and similarly I<__NR_mmap2>."
21959 msgstr ""
21960 "B<select>(2)  と B<mmap>(2)  は 5つもしくはそれ以上の引き数を使用しており、 "
21961 "i386 では引き数の受け渡しに問題が生じる。 そのため、他のアーキテクチャーでは "
21962 "I<__NR_select> と I<__NR_mmap> に対応する I<sys_select>()  と I<sys_mmap>()  "
21963 "が存在するが、i386 では代わりに I<old_select>()  と I<old_mmap>()  というルー"
21964 "チンがある (これらのルーチンは引き数ブロックへのポインターを使用する)。 現在"
21965 "では 5つの引き数を渡すことはもはや問題ではなくなっており、 "
21966 "I<__NR__newselect> は I<sys_select>()  に直接対応するようになっている。 "
21967 "I<__NR_mmap2> についても同様である。"
21968
21969 #. type: Plain text
21970 #: build/C/man2/syscalls.2:851
21971 msgid ""
21972 "B<intro>(2), B<syscall>(2), B<unimplemented>(2), B<errno>(3), B<libc>(7), "
21973 "B<vdso>(7)"
21974 msgstr ""
21975 "B<intro>(2), B<syscall>(2), B<unimplemented>(2), B<errno>(3), B<libc>(7), "
21976 "B<vdso>(7)"
21977
21978 #. type: TH
21979 #: build/C/man3/sysconf.3:27
21980 #, no-wrap
21981 msgid "SYSCONF"
21982 msgstr "SYSCONF"
21983
21984 #. type: Plain text
21985 #: build/C/man3/sysconf.3:30
21986 msgid "sysconf - get configuration information at run time"
21987 msgstr "sysconf - 動作中に設定情報を取得する"
21988
21989 #. type: Plain text
21990 #: build/C/man3/sysconf.3:35
21991 #, no-wrap
21992 msgid "B<long sysconf(int >I<name>B<);>\n"
21993 msgstr "B<long sysconf(int >I<name>B<);>\n"
21994
21995 #. type: Plain text
21996 #: build/C/man3/sysconf.3:40
21997 msgid ""
21998 "POSIX allows an application to test at compile or run time whether certain "
21999 "options are supported, or what the value is of certain configurable "
22000 "constants or limits."
22001 msgstr ""
22002 "POSIX では、アプリケーションがコンパイル時や実行時に、 特定のオプションがサ"
22003 "ポートされているかや、 設定可能な特定の定数や制限 (limits) がどんな値かをテス"
22004 "トすることができる。"
22005
22006 #. type: Plain text
22007 #: build/C/man3/sysconf.3:46
22008 msgid ""
22009 "At compile time this is done by including I<E<lt>unistd.hE<gt>> and/or "
22010 "I<E<lt>limits.hE<gt>> and testing the value of certain macros."
22011 msgstr ""
22012 "コンパイル時に行うには、 I<E<lt>unistd.hE<gt>> と I<E<lt>limits.hE<gt>> の両"
22013 "方もしくは一方をインクルードし、 特定のマクロの値を確認する。"
22014
22015 #. type: Plain text
22016 #: build/C/man3/sysconf.3:56
22017 msgid ""
22018 "At run time, one can ask for numerical values using the present function "
22019 "B<sysconf>().  One can ask for numerical values that may depend on the "
22020 "filesystem a file is in using the calls B<fpathconf>(3)  and "
22021 "B<pathconf>(3).  One can ask for string values using B<confstr>(3)."
22022 msgstr ""
22023 "実行時には、ここで説明する関数 B<sysconf>()  を使って数値を問い合わせることが"
22024 "できる。 ファイルが存在するファイルシステムに関する数値は、 B<fpathconf>(3)  "
22025 "と B<pathconf>(3)  を使って確認できる。 文字列の値は B<confstr>(3)  を使って"
22026 "確認できる。"
22027
22028 #.  except that sysconf(_SC_OPEN_MAX) may change answer after a call
22029 #.  to setrlimit( ) which changes the RLIMIT_NOFILE soft limit
22030 #. type: Plain text
22031 #: build/C/man3/sysconf.3:61
22032 msgid ""
22033 "The values obtained from these functions are system configuration "
22034 "constants.  They do not change during the lifetime of a process."
22035 msgstr ""
22036 "これらの関数で取得される値は設定可能なシステム定数である。 これらはプロセスの"
22037 "生存期間の間は変化しない。"
22038
22039 #.  and 999 to indicate support for options no longer present in the latest
22040 #.  standard. (?)
22041 #. type: Plain text
22042 #: build/C/man3/sysconf.3:84
22043 msgid ""
22044 "For options, typically, there is a constant B<_POSIX_FOO> that may be "
22045 "defined in I<E<lt>unistd.hE<gt>>.  If it is undefined, one should ask at run "
22046 "time.  If it is defined to -1, then the option is not supported.  If it is "
22047 "defined to 0, then relevant functions and headers exist, but one has to ask "
22048 "at run time what degree of support is available.  If it is defined to a "
22049 "value other than -1 or 0, then the option is supported.  Usually the value "
22050 "(such as 200112L) indicates the year and month of the POSIX revision "
22051 "describing the option.  Glibc uses the value 1 to indicate support as long "
22052 "as the POSIX revision has not been published yet.  The B<sysconf>()  "
22053 "argument will be B<_SC_FOO>.  For a list of options, see B<posixoptions>(7)."
22054 msgstr ""
22055 "オプションを確認できるように、たいていは I<E<lt>unistd.hE<gt>> で定数 "
22056 "B<_POSIX_FOO> が定義されている。 定義されていないときは、実行時に問い合わせを"
22057 "行う必要がある。 その値が -1 に定義されているときは、そのオプションはサポート"
22058 "されていない。 0 に定義されているときは、関連する関数やヘッダーファイルが存在"
22059 "するが、 どの程度サポートされているかは実行時に確認しなければならない。 -1 で"
22060 "も 0 でもない値に定義されているときは、そのオプションがサポート されている。"
22061 "通常は、そのオプションについて記載した POSIX の改訂年月 を示す値になっている "
22062 "(例えば 200112L)。 glibc では 1 が設定されていると、そのオプションはサポート"
22063 "されているが、 POSIX の改訂版がまだ発行されていないことを示す。 "
22064 "B<sysconf>()  の引き数には B<_SC_FOO> を指定する。 オプションのリストについて"
22065 "は B<posixoptions>(7)  を参照のこと。"
22066
22067 #. type: Plain text
22068 #: build/C/man3/sysconf.3:104
22069 msgid ""
22070 "For variables or limits, typically, there is a constant B<_FOO>, maybe "
22071 "defined in I<E<lt>limits.hE<gt>>, or B<_POSIX_FOO>, maybe defined in "
22072 "I<E<lt>unistd.hE<gt>>.  The constant will not be defined if the limit is "
22073 "unspecified.  If the constant is defined, it gives a guaranteed value, and a "
22074 "greater value might actually be supported.  If an application wants to take "
22075 "advantage of values which may change between systems, a call to "
22076 "B<sysconf>()  can be made.  The B<sysconf>()  argument will be B<_SC_FOO>."
22077 msgstr ""
22078 "変数や制限を確認できるように、たいていは、 I<E<lt>limits.hE<gt>> で定数 "
22079 "B<_FOO> が、 I<E<lt>unistd.hE<gt>> で B<_POSIX_FOO> が定義されている。 制限が"
22080 "規定されていない場合は定数は定義されない。 定数が定義されているときには、その"
22081 "定数は保証できる値であり、 実際にはもっと大きな値がサポートされていることもあ"
22082 "る。 アプリケーションがシステム毎に変化する値を利用したい場合には、 "
22083 "B<sysconf>()  を呼び出すことで実現できる。 B<sysconf>()  の引き数には "
22084 "B<_SC_FOO> を指定する。"
22085
22086 #. type: SS
22087 #: build/C/man3/sysconf.3:104
22088 #, no-wrap
22089 msgid "POSIX.1 variables"
22090 msgstr "POSIX.1 変数"
22091
22092 #. type: Plain text
22093 #: build/C/man3/sysconf.3:109
22094 msgid ""
22095 "We give the name of the variable, the name of the B<sysconf>()  argument "
22096 "used to inquire about its value, and a short description."
22097 msgstr ""
22098 "変数名、その値を取得するのに使われる B<sysconf>()  のパラメーター名、簡単な説"
22099 "明を以下に示す。"
22100
22101 #.  [for the moment: only the things that are unconditionally present]
22102 #.  .TP
22103 #.  .BR AIO_LISTIO_MAX " - " _SC_AIO_LISTIO_MAX
22104 #.  (if _POSIX_ASYNCHRONOUS_IO)
22105 #.  Maximum number of I/O operations in a single list I/O call.
22106 #.  Must not be less than _POSIX_AIO_LISTIO_MAX.
22107 #.  .TP
22108 #.  .BR AIO_MAX " - " _SC_AIO_MAX
22109 #.  (if _POSIX_ASYNCHRONOUS_IO)
22110 #.  Maximum number of outstanding asynchronous I/O operations.
22111 #.  Must not be less than _POSIX_AIO_MAX.
22112 #.  .TP
22113 #.  .BR AIO_PRIO_DELTA_MAX " - " _SC_AIO_PRIO_DELTA_MAX
22114 #.  (if _POSIX_ASYNCHRONOUS_IO)
22115 #.  The maximum amount by which a process can decrease its
22116 #.  asynchronous I/O priority level from its own scheduling priority.
22117 #.  Must be nonnegative.
22118 #. type: Plain text
22119 #: build/C/man3/sysconf.3:128
22120 msgid "First, the POSIX.1 compatible values."
22121 msgstr "まず POSIX.1 互換の変数を示す。"
22122
22123 #. type: TP
22124 #: build/C/man3/sysconf.3:128
22125 #, no-wrap
22126 msgid "B<ARG_MAX> - B<_SC_ARG_MAX>"
22127 msgstr "B<ARG_MAX> - B<_SC_ARG_MAX>"
22128
22129 #. type: Plain text
22130 #: build/C/man3/sysconf.3:136
22131 msgid ""
22132 "The maximum length of the arguments to the B<exec>(3)  family of functions.  "
22133 "Must not be less than B<_POSIX_ARG_MAX> (4096)."
22134 msgstr ""
22135 "B<exec>(3)  関数群の引き数の最大長。 B<_POSIX_ARG_MAX> (4096) 未満であっては"
22136 "ならない。"
22137
22138 #. type: TP
22139 #: build/C/man3/sysconf.3:136
22140 #, no-wrap
22141 msgid "B<CHILD_MAX> - B<_SC_CHILD_MAX>"
22142 msgstr "B<CHILD_MAX> - B<_SC_CHILD_MAX>"
22143
22144 #. type: Plain text
22145 #: build/C/man3/sysconf.3:142
22146 msgid ""
22147 "The maximum number of simultaneous processes per user ID.  Must not be less "
22148 "than B<_POSIX_CHILD_MAX> (25)."
22149 msgstr ""
22150 "ユーザーID あたりの同時に存在できるプロセスの最大数。 B<_POSIX_CHILD_MAX> "
22151 "(25) 未満であってはならない。"
22152
22153 #. type: TP
22154 #: build/C/man3/sysconf.3:142
22155 #, no-wrap
22156 msgid "B<HOST_NAME_MAX> - B<_SC_HOST_NAME_MAX>"
22157 msgstr "B<HOST_NAME_MAX> - B<_SC_HOST_NAME_MAX>"
22158
22159 #. type: Plain text
22160 #: build/C/man3/sysconf.3:150
22161 msgid ""
22162 "Maximum length of a hostname, not including the terminating null byte, as "
22163 "returned by B<gethostname>(2).  Must not be less than "
22164 "B<_POSIX_HOST_NAME_MAX> (255)."
22165 msgstr ""
22166 "B<gethostname>(2)  で返されるホスト名の最大長。末尾のヌルバイトは長さに含まれ"
22167 "ない。 B<_POSIX_HOST_NAME_MAX> (255) 未満であってはならない。"
22168
22169 #. type: TP
22170 #: build/C/man3/sysconf.3:150
22171 #, no-wrap
22172 msgid "B<LOGIN_NAME_MAX> - B<_SC_LOGIN_NAME_MAX>"
22173 msgstr "B<LOGIN_NAME_MAX> - B<_SC_LOGIN_NAME_MAX>"
22174
22175 #. type: Plain text
22176 #: build/C/man3/sysconf.3:156
22177 msgid ""
22178 "Maximum length of a login name, including the terminating null byte.  Must "
22179 "not be less than B<_POSIX_LOGIN_NAME_MAX> (9)."
22180 msgstr ""
22181 "ログイン名の長さの最大値。末尾のヌルバイトも長さに含まれる。 "
22182 "B<_POSIX_LOGIN_NAME_MAX> (9) 未満であってはならない。"
22183
22184 #. type: TP
22185 #: build/C/man3/sysconf.3:156
22186 #, no-wrap
22187 msgid "B<NGROUPS_MAX> - B<_SC_NGROUPS_MAX>"
22188 msgstr "B<NGROUPS_MAX> - B<_SC_NGROUPS_MAX>"
22189
22190 #. type: Plain text
22191 #: build/C/man3/sysconf.3:159
22192 msgid "Maximum number of supplementary group IDs."
22193 msgstr "補助グループ ID の最大数。"
22194
22195 #. type: TP
22196 #: build/C/man3/sysconf.3:159
22197 #, no-wrap
22198 msgid "clock ticks - B<_SC_CLK_TCK>"
22199 msgstr "clock ticks - B<_SC_CLK_TCK>"
22200
22201 #. type: Plain text
22202 #: build/C/man3/sysconf.3:168
22203 msgid ""
22204 "The number of clock ticks per second.  The corresponding variable is "
22205 "obsolete.  It was of course called B<CLK_TCK>.  (Note: the macro "
22206 "B<CLOCKS_PER_SEC> does not give information: it must equal 1000000.)"
22207 msgstr ""
22208 "1秒あたりのクロックティック数。 対応する変数は廃止された。この変数は当然なが"
22209 "ら B<CLK_TCK> と呼ばれていた。 (注意: マクロ B<CLOCKS_PER_SEC> からは情報は得"
22210 "られない: この値は 1000000 でなければならない)"
22211
22212 #. type: TP
22213 #: build/C/man3/sysconf.3:168
22214 #, no-wrap
22215 msgid "B<OPEN_MAX> - B<_SC_OPEN_MAX>"
22216 msgstr "B<OPEN_MAX> - B<_SC_OPEN_MAX>"
22217
22218 #. type: Plain text
22219 #: build/C/man3/sysconf.3:174
22220 msgid ""
22221 "The maximum number of files that a process can have open at any time.  Must "
22222 "not be less than B<_POSIX_OPEN_MAX> (20)."
22223 msgstr ""
22224 "一つのプロセスが同時にオープンできるファイル数の上限。 B<_POSIX_OPEN_MAX> "
22225 "(20) 未満であってはならない。"
22226
22227 #. type: TP
22228 #: build/C/man3/sysconf.3:174
22229 #, no-wrap
22230 msgid "B<PAGESIZE> - B<_SC_PAGESIZE>"
22231 msgstr "B<PAGESIZE> - B<_SC_PAGESIZE>"
22232
22233 #. type: Plain text
22234 #: build/C/man3/sysconf.3:179
22235 msgid ""
22236 "Size of a page in bytes.  Must not be less than 1.  (Some systems use "
22237 "PAGE_SIZE instead.)"
22238 msgstr ""
22239 "バイト単位でのページサイズ。 1 より小さくなってはならない。 (この代わりに "
22240 "PAGE_SIZE を使うシステムもある)"
22241
22242 #. type: TP
22243 #: build/C/man3/sysconf.3:179 build/C/man3/sysconf.3:266
22244 #, no-wrap
22245 msgid "B<RE_DUP_MAX> - B<_SC_RE_DUP_MAX>"
22246 msgstr "B<RE_DUP_MAX> - B<_SC_RE_DUP_MAX>"
22247
22248 #. type: Plain text
22249 #: build/C/man3/sysconf.3:188
22250 msgid ""
22251 "The number of repeated occurrences of a BRE permitted by B<regexec>(3)  and "
22252 "B<regcomp>(3).  Must not be less than B<_POSIX2_RE_DUP_MAX> (255)."
22253 msgstr ""
22254 "B<regexec>(3)  と B<regcomp>(3)  で許容されている BRE (Basic Regular "
22255 "Expression; 基本正規表現)  の繰り返し出現回数の最大値。 "
22256 "B<_POSIX2_RE_DUP_MAX> (255) 未満であってはならない。"
22257
22258 #. type: TP
22259 #: build/C/man3/sysconf.3:188
22260 #, no-wrap
22261 msgid "B<STREAM_MAX> - B<_SC_STREAM_MAX>"
22262 msgstr "B<STREAM_MAX> - B<_SC_STREAM_MAX>"
22263
22264 #. type: Plain text
22265 #: build/C/man3/sysconf.3:197
22266 msgid ""
22267 "The maximum number of streams that a process can have open at any time.  If "
22268 "defined, it has the same value as the standard C macro B<FOPEN_MAX>.  Must "
22269 "not be less than B<_POSIX_STREAM_MAX> (8)."
22270 msgstr ""
22271 "一つのプロセスが同時にオープンできるストリーム数の上限。 定義されていた場合に"
22272 "は、この値は標準 C マクロの B<FOPEN_MAX> と同じである。 B<_POSIX_STREAM_MAX> "
22273 "(8) 未満であってはならない。"
22274
22275 #. type: TP
22276 #: build/C/man3/sysconf.3:197
22277 #, no-wrap
22278 msgid "B<SYMLOOP_MAX> - B<_SC_SYMLOOP_MAX>"
22279 msgstr "B<SYMLOOP_MAX> - B<_SC_SYMLOOP_MAX>"
22280
22281 #. type: Plain text
22282 #: build/C/man3/sysconf.3:205
22283 msgid ""
22284 "The maximum number of symbolic links seen in a pathname before resolution "
22285 "returns B<ELOOP>.  Must not be less than B<_POSIX_SYMLOOP_MAX> (8)."
22286 msgstr ""
22287 "パス名の解決時に現れてもよいシンボリックリンクの最大数。 この数を超えると、パ"
22288 "ス名解決時に B<ELOOP> が返される。 B<_POSIX_SYMLOOP_MAX> (8) 未満であってはな"
22289 "らない。"
22290
22291 #. type: TP
22292 #: build/C/man3/sysconf.3:205
22293 #, no-wrap
22294 msgid "B<TTY_NAME_MAX> - B<_SC_TTY_NAME_MAX>"
22295 msgstr "B<TTY_NAME_MAX> - B<_SC_TTY_NAME_MAX>"
22296
22297 #. type: Plain text
22298 #: build/C/man3/sysconf.3:212
22299 msgid ""
22300 "The maximum length of terminal device name, including the terminating null "
22301 "byte.  Must not be less than B<_POSIX_TTY_NAME_MAX> (9)."
22302 msgstr ""
22303 "端末デバイス名の最大長。長さには末尾のヌルバイトも含まれる。 "
22304 "B<_POSIX_TTY_NAME_MAX> (9) 未満であってはならない。"
22305
22306 #. type: TP
22307 #: build/C/man3/sysconf.3:212
22308 #, no-wrap
22309 msgid "B<TZNAME_MAX> - B<_SC_TZNAME_MAX>"
22310 msgstr "B<TZNAME_MAX> - B<_SC_TZNAME_MAX>"
22311
22312 #. type: Plain text
22313 #: build/C/man3/sysconf.3:218
22314 msgid ""
22315 "The maximum number of bytes in a timezone name.  Must not be less than "
22316 "B<_POSIX_TZNAME_MAX> (6)."
22317 msgstr ""
22318 "タイムゾーン名として使えるバイト数の最大値。 B<_POSIX_TZNAME_MAX> (6) 未満で"
22319 "あってはならない。"
22320
22321 #. type: TP
22322 #: build/C/man3/sysconf.3:218
22323 #, no-wrap
22324 msgid "B<_POSIX_VERSION> - B<_SC_VERSION>"
22325 msgstr "B<_POSIX_VERSION> - B<_SC_VERSION>"
22326
22327 #. type: Plain text
22328 #: build/C/man3/sysconf.3:226
22329 msgid ""
22330 "indicates the year and month the POSIX.1 standard was approved in the format "
22331 "B<YYYYMML>; the value B<199009L> indicates the Sept. 1990 revision."
22332 msgstr ""
22333 "POSIX.1 標準が承認された年月。 B<YYYYMML> という書式である。 B<199009L> とい"
22334 "う値は、1990年 9月 改訂であることを示す。"
22335
22336 #. type: SS
22337 #: build/C/man3/sysconf.3:226
22338 #, no-wrap
22339 msgid "POSIX.2 variables"
22340 msgstr "POSIX.2 変数"
22341
22342 #. type: Plain text
22343 #: build/C/man3/sysconf.3:228
22344 msgid "Next, the POSIX.2 values, giving limits for utilities."
22345 msgstr ""
22346 "次に、POSIX.2 の値を示す。 これらは各ユーティリティに対する制限を指定する。"
22347
22348 #. type: TP
22349 #: build/C/man3/sysconf.3:228
22350 #, no-wrap
22351 msgid "B<BC_BASE_MAX> - B<_SC_BC_BASE_MAX>"
22352 msgstr "B<BC_BASE_MAX> - B<_SC_BC_BASE_MAX>"
22353
22354 #. type: Plain text
22355 #: build/C/man3/sysconf.3:235
22356 msgid "indicates the maximum I<obase> value accepted by the B<bc>(1)  utility."
22357 msgstr "B<bc>(1)  ユーティリティで許容される I<obase> の最大値。"
22358
22359 #. type: TP
22360 #: build/C/man3/sysconf.3:235
22361 #, no-wrap
22362 msgid "B<BC_DIM_MAX> - B<_SC_BC_DIM_MAX>"
22363 msgstr "B<BC_DIM_MAX> - B<_SC_BC_DIM_MAX>"
22364
22365 #. type: Plain text
22366 #: build/C/man3/sysconf.3:239
22367 msgid ""
22368 "indicates the maximum value of elements permitted in an array by B<bc>(1)."
22369 msgstr "B<bc>(1)  で許容される一つの配列中の要素数の最大値。"
22370
22371 #. type: TP
22372 #: build/C/man3/sysconf.3:239
22373 #, no-wrap
22374 msgid "B<BC_SCALE_MAX> - B<_SC_BC_SCALE_MAX>"
22375 msgstr "B<BC_SCALE_MAX> - B<_SC_BC_SCALE_MAX>"
22376
22377 #. type: Plain text
22378 #: build/C/man3/sysconf.3:245
22379 msgid "indicates the maximum I<scale> value allowed by B<bc>(1)."
22380 msgstr "B<bc>(1)  で許される I<scale> の最大値。"
22381
22382 #. type: TP
22383 #: build/C/man3/sysconf.3:245
22384 #, no-wrap
22385 msgid "B<BC_STRING_MAX> - B<_SC_BC_STRING_MAX>"
22386 msgstr "B<BC_STRING_MAX> - B<_SC_BC_STRING_MAX>"
22387
22388 #. type: Plain text
22389 #: build/C/man3/sysconf.3:249
22390 msgid "indicates the maximum length of a string accepted by B<bc>(1)."
22391 msgstr "B<bc>(1)  で許容される文字列の最大長。"
22392
22393 #. type: TP
22394 #: build/C/man3/sysconf.3:249
22395 #, no-wrap
22396 msgid "B<COLL_WEIGHTS_MAX> - B<_SC_COLL_WEIGHTS_MAX>"
22397 msgstr "B<COLL_WEIGHTS_MAX> - B<_SC_COLL_WEIGHTS_MAX>"
22398
22399 #. type: Plain text
22400 #: build/C/man3/sysconf.3:255
22401 msgid ""
22402 "indicates the maximum numbers of weights that can be assigned to an entry of "
22403 "the B<LC_COLLATE order> keyword in the locale definition file,"
22404 msgstr ""
22405 "ロケール定義ファイル中の B<LC_COLLATE order> キーワードのエントリーに割り当て"
22406 "可能な重みの最大値。"
22407
22408 #. type: TP
22409 #: build/C/man3/sysconf.3:255
22410 #, no-wrap
22411 msgid "B<EXPR_NEST_MAX> - B<_SC_EXPR_NEST_MAX>"
22412 msgstr "B<EXPR_NEST_MAX> - B<_SC_EXPR_NEST_MAX>"
22413
22414 #. type: Plain text
22415 #: build/C/man3/sysconf.3:260
22416 msgid ""
22417 "is the maximum number of expressions which can be nested within parentheses "
22418 "by B<expr>(1)."
22419 msgstr "B<expr>(1)  において、括弧で入れ子にできる式の最大数。"
22420
22421 #. type: TP
22422 #: build/C/man3/sysconf.3:260
22423 #, no-wrap
22424 msgid "B<LINE_MAX> - B<_SC_LINE_MAX>"
22425 msgstr "B<LINE_MAX> - B<_SC_LINE_MAX>"
22426
22427 #. type: Plain text
22428 #: build/C/man3/sysconf.3:266
22429 msgid ""
22430 "The maximum length of a utility's input line, either from standard input or "
22431 "from a file.  This includes space for a trailing newline."
22432 msgstr ""
22433 "ユーティリティの入力行の最大長。標準入力だけでなく、ファイルからの入力にも 適"
22434 "用される。長さには行の末尾の改行文字も含まれる。"
22435
22436 #. type: Plain text
22437 #: build/C/man3/sysconf.3:272
22438 msgid ""
22439 "The maximum number of repeated occurrences of a regular expression when the "
22440 "interval notation B<\\e{m,n\\e}> is used."
22441 msgstr ""
22442 "正規表現で区間表記 (interval notation)  B<\\e{m,n\\e}> が使用されたときに許容"
22443 "される繰り返し出現回数の最大値。"
22444
22445 #. type: TP
22446 #: build/C/man3/sysconf.3:272
22447 #, no-wrap
22448 msgid "B<POSIX2_VERSION> - B<_SC_2_VERSION>"
22449 msgstr "B<POSIX2_VERSION> - B<_SC_2_VERSION>"
22450
22451 #. type: Plain text
22452 #: build/C/man3/sysconf.3:276
22453 msgid "indicates the version of the POSIX.2 standard in the format of YYYYMML."
22454 msgstr "POSIX.2 標準のバージョン。YYYYMML という書式で表記される。"
22455
22456 #. type: TP
22457 #: build/C/man3/sysconf.3:276
22458 #, no-wrap
22459 msgid "B<POSIX2_C_DEV> - B<_SC_2_C_DEV>"
22460 msgstr "B<POSIX2_C_DEV> - B<_SC_2_C_DEV>"
22461
22462 #. type: Plain text
22463 #: build/C/man3/sysconf.3:280
22464 msgid ""
22465 "indicates whether the POSIX.2 C language development facilities are "
22466 "supported."
22467 msgstr "POSIX.2 の C 言語開発機能がサポートされているかを示す。"
22468
22469 #. type: TP
22470 #: build/C/man3/sysconf.3:280
22471 #, no-wrap
22472 msgid "B<POSIX2_FORT_DEV> - B<_SC_2_FORT_DEV>"
22473 msgstr "B<POSIX2_FORT_DEV> - B<_SC_2_FORT_DEV>"
22474
22475 #. type: Plain text
22476 #: build/C/man3/sysconf.3:284
22477 msgid ""
22478 "indicates whether the POSIX.2 FORTRAN development utilities are supported."
22479 msgstr "POSIX.2 の FORTRAN 開発ユーティリティがサポートされているかを示す。"
22480
22481 #. type: TP
22482 #: build/C/man3/sysconf.3:284
22483 #, no-wrap
22484 msgid "B<POSIX2_FORT_RUN> - B<_SC_2_FORT_RUN>"
22485 msgstr "B<POSIX2_FORT_RUN> - B<_SC_2_FORT_RUN>"
22486
22487 #. type: Plain text
22488 #: build/C/man3/sysconf.3:287
22489 msgid "indicates whether the POSIX.2 FORTRAN run-time utilities are supported."
22490 msgstr ""
22491 "POSIX.2 の FORTRAN ランタイムユーティリティがサポートされているかを示す。"
22492
22493 #. type: TP
22494 #: build/C/man3/sysconf.3:287
22495 #, no-wrap
22496 msgid "B<_POSIX2_LOCALEDEF> - B<_SC_2_LOCALEDEF>"
22497 msgstr "B<_POSIX2_LOCALEDEF> - B<_SC_2_LOCALEDEF>"
22498
22499 #. type: Plain text
22500 #: build/C/man3/sysconf.3:292
22501 msgid ""
22502 "indicates whether the POSIX.2 creation of locates via B<localedef>(1)  is "
22503 "supported."
22504 msgstr ""
22505 "B<localedef>(1)  を使った、POSIX.2 のロケールの作成をサポートしているかを示"
22506 "す。"
22507
22508 #. type: TP
22509 #: build/C/man3/sysconf.3:292
22510 #, no-wrap
22511 msgid "B<POSIX2_SW_DEV> - B<_SC_2_SW_DEV>"
22512 msgstr "B<POSIX2_SW_DEV> - B<_SC_2_SW_DEV>"
22513
22514 #. type: Plain text
22515 #: build/C/man3/sysconf.3:296
22516 msgid ""
22517 "indicates whether the POSIX.2 software development utilities option is "
22518 "supported."
22519 msgstr ""
22520 "POSIX.2 ソフトウェア開発ユーティリティオプションがサポートされているかを示"
22521 "す。"
22522
22523 #. type: Plain text
22524 #: build/C/man3/sysconf.3:298
22525 msgid "These values also exist, but may not be standard."
22526 msgstr "以下の値も存在するが、標準には含まれていない。"
22527
22528 #. type: TP
22529 #: build/C/man3/sysconf.3:298
22530 #, no-wrap
22531 msgid " - B<_SC_PHYS_PAGES>"
22532 msgstr " - B<_SC_PHYS_PAGES>"
22533
22534 #. type: Plain text
22535 #: build/C/man3/sysconf.3:305
22536 msgid ""
22537 "The number of pages of physical memory.  Note that it is possible for the "
22538 "product of this value and the value of B<_SC_PAGESIZE> to overflow."
22539 msgstr ""
22540 "物理メモリーのページ数。 この値と B<_SC_PAGESIZE> 値の積は桁溢れする可能性が"
22541 "あるので注意すること。"
22542
22543 #. type: TP
22544 #: build/C/man3/sysconf.3:305
22545 #, no-wrap
22546 msgid " - B<_SC_AVPHYS_PAGES>"
22547 msgstr " - B<_SC_AVPHYS_PAGES>"
22548
22549 #. type: Plain text
22550 #: build/C/man3/sysconf.3:308
22551 msgid "The number of currently available pages of physical memory."
22552 msgstr "現在利用可能な物理メモリーのページ数。"
22553
22554 #. type: TP
22555 #: build/C/man3/sysconf.3:308
22556 #, no-wrap
22557 msgid " - B<_SC_NPROCESSORS_CONF>"
22558 msgstr " - B<_SC_NPROCESSORS_CONF>"
22559
22560 #. type: Plain text
22561 #: build/C/man3/sysconf.3:311
22562 msgid "The number of processors configured."
22563 msgstr "設定されたプロセッサ数。"
22564
22565 #. type: TP
22566 #: build/C/man3/sysconf.3:311
22567 #, no-wrap
22568 msgid " - B<_SC_NPROCESSORS_ONLN>"
22569 msgstr " - B<_SC_NPROCESSORS_ONLN>"
22570
22571 #. type: Plain text
22572 #: build/C/man3/sysconf.3:314
22573 msgid "The number of processors currently online (available)."
22574 msgstr "現在オンラインの (利用可能な) プロセッサ数。"
22575
22576 #. type: Plain text
22577 #: build/C/man3/sysconf.3:327
22578 msgid ""
22579 "If I<name> is invalid, -1 is returned, and I<errno> is set to B<EINVAL>.  "
22580 "Otherwise, the value returned is the value of the system resource and "
22581 "I<errno> is not changed.  In the case of options, a positive value is "
22582 "returned if a queried option is available, and -1 if it is not.  In the case "
22583 "of limits, -1 means that there is no definite limit."
22584 msgstr ""
22585 "I<name> が不正な場合、-1 が返され、 I<errno> に B<EINVAL> が設定される。 それ"
22586 "以外の場合、システムリソースの値が返り値として返され、 I<errno> は変更されな"
22587 "い。問い合わせがオプションに関するものであれば、 そのオプションが利用できる場"
22588 "合には正の値が返され、 利用できない場合には -1 が返される。 問い合わせが制限"
22589 "に関するものであれば、その制限が設定されていない場合に -1 が返される。"
22590
22591 #. type: Plain text
22592 #: build/C/man3/sysconf.3:335
22593 msgid ""
22594 "It is difficult to use B<ARG_MAX> because it is not specified how much of "
22595 "the argument space for B<exec>(3)  is consumed by the user's environment "
22596 "variables."
22597 msgstr ""
22598 "B<ARG_MAX> を使うのは難しい、なぜなら、 B<exec>(3)  の引き数領域 (argument "
22599 "space) のうちどれくらいが ユーザーの環境変数によって使われるかは分からないか"
22600 "らである。"
22601
22602 #. type: Plain text
22603 #: build/C/man3/sysconf.3:347
22604 msgid ""
22605 "B<bc>(1), B<expr>(1), B<getconf>(1), B<locale>(1), B<confstr>(3), "
22606 "B<fpathconf>(3), B<pathconf>(3), B<posixoptions>(7)"
22607 msgstr ""
22608 "B<bc>(1), B<expr>(1), B<getconf>(1), B<locale>(1), B<confstr>(3), "
22609 "B<fpathconf>(3), B<pathconf>(3), B<posixoptions>(7)"
22610
22611 #. type: TH
22612 #: build/C/man2/sysctl.2:30
22613 #, no-wrap
22614 msgid "SYSCTL"
22615 msgstr "SYSCTL"
22616
22617 #. type: TH
22618 #: build/C/man2/sysctl.2:30
22619 #, no-wrap
22620 msgid "2012-12-22"
22621 msgstr "2012-12-22"
22622
22623 #. type: Plain text
22624 #: build/C/man2/sysctl.2:33
22625 msgid "sysctl - read/write system parameters"
22626 msgstr "sysctl - システムパラメーターを読み書きする"
22627
22628 #. type: Plain text
22629 #: build/C/man2/sysctl.2:38
22630 #, no-wrap
22631 msgid "B<#include E<lt>linux/sysctl.hE<gt>>\n"
22632 msgstr "B<#include E<lt>linux/sysctl.hE<gt>>\n"
22633
22634 #. type: Plain text
22635 #: build/C/man2/sysctl.2:40
22636 #, no-wrap
22637 msgid "B<int _sysctl(struct __sysctl_args *>I<args>B<);>\n"
22638 msgstr "B<int _sysctl(struct __sysctl_args *>I<args>B<);>\n"
22639
22640 #. type: Plain text
22641 #: build/C/man2/sysctl.2:47
22642 msgid "B<Do not use this system call!> See NOTES."
22643 msgstr "B<このシステムコールを使用しないこと!> 「注意」の節を参照。"
22644
22645 #. type: Plain text
22646 #: build/C/man2/sysctl.2:54
22647 msgid ""
22648 "The B<_sysctl>()  call reads and/or writes kernel parameters.  For example, "
22649 "the hostname, or the maximum number of open files.  The argument has the form"
22650 msgstr ""
22651 "B<_sysctl>()  コールはカーネルパラメーターを読み書きする。例えば、 ホストネー"
22652 "ムや同時にオープンできるファイルの最大数など。 引き数は以下の形式である。"
22653
22654 #. type: Plain text
22655 #: build/C/man2/sysctl.2:66
22656 #, no-wrap
22657 msgid ""
22658 "struct __sysctl_args {\n"
22659 "    int    *name;    /* integer vector describing variable */\n"
22660 "    int     nlen;    /* length of this vector */\n"
22661 "    void   *oldval;  /* 0 or address where to store old value */\n"
22662 "    size_t *oldlenp; /* available room for old value,\n"
22663 "                        overwritten by actual size of old value */\n"
22664 "    void   *newval;  /* 0 or address of new value */\n"
22665 "    size_t  newlen;  /* size of new value */\n"
22666 "};\n"
22667 msgstr ""
22668 "struct __sysctl_args {\n"
22669 "    int    *name;    /* integer vector describing variable */\n"
22670 "    int     nlen;    /* length of this vector */\n"
22671 "    void   *oldval;  /* 0 or address where to store old value */\n"
22672 "    size_t *oldlenp; /* available room for old value,\n"
22673 "                        overwritten by actual size of old value */\n"
22674 "    void   *newval;  /* 0 or address of new value */\n"
22675 "    size_t  newlen;  /* size of new value */\n"
22676 "};\n"
22677
22678 #. type: Plain text
22679 #: build/C/man2/sysctl.2:74
22680 msgid ""
22681 "This call does a search in a tree structure, possibly resembling a directory "
22682 "tree under I</proc/sys>, and if the requested item is found calls some "
22683 "appropriate routine to read or modify the value."
22684 msgstr ""
22685 "このコールは I</proc/sys> の下のディレクトリツリーに似た木構造(tree "
22686 "structure)を検索する。 そして、要求された項目が見つかった場合は適切なルーチン"
22687 "を呼び出して 値を読んだり修正したりする。"
22688
22689 #. type: Plain text
22690 #: build/C/man2/sysctl.2:81
22691 msgid ""
22692 "Upon successful completion, B<_sysctl>()  returns 0.  Otherwise, a value of "
22693 "-1 is returned and I<errno> is set to indicate the error."
22694 msgstr ""
22695 "成功した場合は B<_sysctl>()  は 0 を返す。失敗した場合、-1 が返され、 "
22696 "I<errno> がそのエラーを示す値に設定される。"
22697
22698 #. type: Plain text
22699 #: build/C/man2/sysctl.2:88
22700 msgid ""
22701 "The invocation asked for the previous value by setting I<oldval> non-NULL, "
22702 "but allowed zero room in I<oldlenp>."
22703 msgstr ""
22704 "I<oldval> に NULL でない値を設定して、以前の値を要求しているのに、 "
22705 "I<oldlenp> に空きがない。"
22706
22707 #. type: Plain text
22708 #: build/C/man2/sysctl.2:92
22709 msgid "I<name> was not found."
22710 msgstr "I<name> が見つからなかった。"
22711
22712 #. type: TP
22713 #: build/C/man2/sysctl.2:92
22714 #, no-wrap
22715 msgid "B<EACCES>, B<EPERM>"
22716 msgstr "B<EACCES> か B<EPERM>"
22717
22718 #. type: Plain text
22719 #: build/C/man2/sysctl.2:100
22720 msgid ""
22721 "No search permission for one of the encountered \"directories\", or no read "
22722 "permission where I<oldval> was nonzero, or no write permission where "
22723 "I<newval> was nonzero."
22724 msgstr ""
22725 "「ディレクトリ」のどれかに検索許可がなかったか、 I<oldval> が 0 でないのに読"
22726 "み込み許可がなかったか、 I<newval> が 0 でないのに書き込み許可がなかった。"
22727
22728 #. type: Plain text
22729 #: build/C/man2/sysctl.2:114
22730 msgid ""
22731 "This call is Linux-specific, and should not be used in programs intended to "
22732 "be portable.  A B<sysctl>()  call has been present in Linux since version "
22733 "1.3.57.  It originated in 4.4BSD.  Only Linux has the I</proc/sys> mirror, "
22734 "and the object naming schemes differ between Linux and 4.4BSD, but the "
22735 "declaration of the B<sysctl>()  function is the same in both."
22736 msgstr ""
22737 "このコールは Linux 特有であり、移植を意図したプログラムで使用しては いけな"
22738 "い。 B<sysctl>()  コールは Linux のバージョン 1.3.57 から存在している。 これ"
22739 "は 4.4BSD に由来している。Linux は I</proc/sys> に写し(mirror)をもっており、"
22740 "項目の名前の付け方が Linux と 4.4BSD では 異っている。しかし B<sysctl>()  関"
22741 "数の宣言は両方で同じである。"
22742
22743 #.  See http://lwn.net/Articles/247243/
22744 #.  Though comments in suggest that it is needed by old glibc binaries,
22745 #.  so maybe it's not going away.
22746 #. type: Plain text
22747 #: build/C/man2/sysctl.2:131
22748 msgid ""
22749 "Glibc does not provide a wrapper for this system call; call it using "
22750 "B<syscall>(2).  Or rather...  I<don't> call it: use of this system call has "
22751 "long been discouraged, and it is so unloved that B<it is likely to disappear "
22752 "in a future kernel version>.  Since Linux 2.6.24, uses of this system call "
22753 "result in warnings in the kernel log.  Remove it from your programs now; use "
22754 "the I</proc/sys> interface instead."
22755 msgstr ""
22756 "glibc はこのシステムコールに対するラッパー関数を提供していない。 "
22757 "B<syscall>(2) を使って呼び出すこと。というよりは・・・このシステムコールを呼"
22758 "び出さないこと。 長い間このシステムコールの使用は非推奨とされており、 「将来"
22759 "のバージョンのカーネルで削除されるようだ」と言われるほどである。 あなたのプロ"
22760 "グラムにこのシステムコールがあれば、すぐにでも削除すること。 代わりに I</"
22761 "proc/sys> インターフェースを使用すること。"
22762
22763 #. type: Plain text
22764 #: build/C/man2/sysctl.2:135
22765 msgid ""
22766 "This system call is available only if the kernel was configured with the "
22767 "B<CONFIG_SYSCTL_SYSCALL> option."
22768 msgstr ""
22769 "このシステムコールは、カーネルの B<CONFIG_SYSCTL_SYSCALL> オプションが有効に"
22770 "なっている場合のみ利用できる。"
22771
22772 #. type: Plain text
22773 #: build/C/man2/sysctl.2:138
22774 msgid ""
22775 "The object names vary between kernel versions, making this system call "
22776 "worthless for applications."
22777 msgstr ""
22778 "オブジェクトの名前は、カーネルのバージョンごとに異なっている。 このため、この"
22779 "システムコールはアプリケーションにとって 無価値なものとなっている。"
22780
22781 #. type: Plain text
22782 #: build/C/man2/sysctl.2:140
22783 msgid "Not all available objects are properly documented."
22784 msgstr "全ての可能な項目が正確に記述されているわけではない。"
22785
22786 #. type: Plain text
22787 #: build/C/man2/sysctl.2:143
22788 msgid ""
22789 "It is not yet possible to change operating system by writing to I</proc/sys/"
22790 "kernel/ostype>."
22791 msgstr ""
22792 "今のところ I</proc/sys/kernel/ostype> に書き込むことでオペーレーティングシス"
22793 "テムを変えることはできない。"
22794
22795 #. type: Plain text
22796 #: build/C/man2/sysctl.2:152
22797 #, no-wrap
22798 msgid ""
22799 "#define _GNU_SOURCE\n"
22800 "#include E<lt>unistd.hE<gt>\n"
22801 "#include E<lt>sys/syscall.hE<gt>\n"
22802 "#include E<lt>string.hE<gt>\n"
22803 "#include E<lt>stdio.hE<gt>\n"
22804 "#include E<lt>stdlib.hE<gt>\n"
22805 "#include E<lt>linux/sysctl.hE<gt>\n"
22806 msgstr ""
22807 "#define _GNU_SOURCE\n"
22808 "#include E<lt>unistd.hE<gt>\n"
22809 "#include E<lt>sys/syscall.hE<gt>\n"
22810 "#include E<lt>string.hE<gt>\n"
22811 "#include E<lt>stdio.hE<gt>\n"
22812 "#include E<lt>stdlib.hE<gt>\n"
22813 "#include E<lt>linux/sysctl.hE<gt>\n"
22814
22815 #. type: Plain text
22816 #: build/C/man2/sysctl.2:154
22817 #, no-wrap
22818 msgid "int _sysctl(struct __sysctl_args *args );\n"
22819 msgstr "int _sysctl(struct __sysctl_args *args );\n"
22820
22821 #. type: Plain text
22822 #: build/C/man2/sysctl.2:156
22823 #, no-wrap
22824 msgid "#define OSNAMESZ 100\n"
22825 msgstr "#define OSNAMESZ 100\n"
22826
22827 #. type: Plain text
22828 #: build/C/man2/sysctl.2:164
22829 #, no-wrap
22830 msgid ""
22831 "int\n"
22832 "main(void)\n"
22833 "{\n"
22834 "    struct __sysctl_args args;\n"
22835 "    char osname[OSNAMESZ];\n"
22836 "    size_t osnamelth;\n"
22837 "    int name[] = { CTL_KERN, KERN_OSTYPE };\n"
22838 msgstr ""
22839 "int\n"
22840 "main(void)\n"
22841 "{\n"
22842 "    struct __sysctl_args args;\n"
22843 "    char osname[OSNAMESZ];\n"
22844 "    size_t osnamelth;\n"
22845 "    int name[] = { CTL_KERN, KERN_OSTYPE };\n"
22846
22847 #. type: Plain text
22848 #: build/C/man2/sysctl.2:170
22849 #, no-wrap
22850 msgid ""
22851 "    memset(&args, 0, sizeof(struct __sysctl_args));\n"
22852 "    args.name = name;\n"
22853 "    args.nlen = sizeof(name)/sizeof(name[0]);\n"
22854 "    args.oldval = osname;\n"
22855 "    args.oldlenp = &osnamelth;\n"
22856 msgstr ""
22857 "    memset(&args, 0, sizeof(struct __sysctl_args));\n"
22858 "    args.name = name;\n"
22859 "    args.nlen = sizeof(name)/sizeof(name[0]);\n"
22860 "    args.oldval = osname;\n"
22861 "    args.oldlenp = &osnamelth;\n"
22862
22863 #. type: Plain text
22864 #: build/C/man2/sysctl.2:172
22865 #, no-wrap
22866 msgid "    osnamelth = sizeof(osname);\n"
22867 msgstr "    osnamelth = sizeof(osname);\n"
22868
22869 #. type: Plain text
22870 #: build/C/man2/sysctl.2:180
22871 #, no-wrap
22872 msgid ""
22873 "    if (syscall(SYS__sysctl, &args) == -1) {\n"
22874 "        perror(\"_sysctl\");\n"
22875 "        exit(EXIT_FAILURE);\n"
22876 "    }\n"
22877 "    printf(\"This machine is running %*s\\en\", osnamelth, osname);\n"
22878 "    exit(EXIT_SUCCESS);\n"
22879 "}\n"
22880 msgstr ""
22881 "    if (syscall(SYS__sysctl, &args) == -1) {\n"
22882 "        perror(\"_sysctl\");\n"
22883 "        exit(EXIT_FAILURE);\n"
22884 "    }\n"
22885 "    printf(\"This machine is running %*s\\en\", osnamelth, osname);\n"
22886 "    exit(EXIT_SUCCESS);\n"
22887 "}\n"
22888
22889 #. type: Plain text
22890 #: build/C/man2/sysctl.2:183 build/C/man2/sysinfo.2:92
22891 msgid "B<proc>(5)"
22892 msgstr "B<proc>(5)"
22893
22894 #. type: TH
22895 #: build/C/man2/sysinfo.2:14
22896 #, no-wrap
22897 msgid "SYSINFO"
22898 msgstr "SYSINFO"
22899
22900 #. type: Plain text
22901 #: build/C/man2/sysinfo.2:17
22902 msgid "sysinfo - returns information on overall system statistics"
22903 msgstr "sysinfo - システム全体の統計情報を返す。"
22904
22905 #. type: Plain text
22906 #: build/C/man2/sysinfo.2:21
22907 msgid "B<int sysinfo(struct sysinfo *>I<info>B<);>"
22908 msgstr "B<int sysinfo(struct sysinfo *>I<info>B<);>"
22909
22910 #. type: Plain text
22911 #: build/C/man2/sysinfo.2:25
22912 msgid ""
22913 "Until Linux 2.3.16, B<sysinfo>()  used to return information in the "
22914 "following structure:"
22915 msgstr "Linux 2.3.16 までは B<sysinfo>()  は以下の構造体に情報を入れて返す。"
22916
22917 #. type: Plain text
22918 #: build/C/man2/sysinfo.2:40
22919 #, no-wrap
22920 msgid ""
22921 "struct sysinfo {\n"
22922 "    long uptime;             /* Seconds since boot */\n"
22923 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22924 "    unsigned long totalram;  /* Total usable main memory size */\n"
22925 "    unsigned long freeram;   /* Available memory size */\n"
22926 "    unsigned long sharedram; /* Amount of shared memory */\n"
22927 "    unsigned long bufferram; /* Memory used by buffers */\n"
22928 "    unsigned long totalswap; /* Total swap space size */\n"
22929 "    unsigned long freeswap;  /* swap space still available */\n"
22930 "    unsigned short procs;    /* Number of current processes */\n"
22931 "    char _f[22];             /* Pads structure to 64 bytes */\n"
22932 "};\n"
22933 msgstr ""
22934 "struct sysinfo {\n"
22935 "    long uptime;             /* Seconds since boot */\n"
22936 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22937 "    unsigned long totalram;  /* Total usable main memory size */\n"
22938 "    unsigned long freeram;   /* Available memory size */\n"
22939 "    unsigned long sharedram; /* Amount of shared memory */\n"
22940 "    unsigned long bufferram; /* Memory used by buffers */\n"
22941 "    unsigned long totalswap; /* Total swap space size */\n"
22942 "    unsigned long freeswap;  /* swap space still available */\n"
22943 "    unsigned short procs;    /* Number of current processes */\n"
22944 "    char _f[22];             /* Pads structure to 64 bytes */\n"
22945 "};\n"
22946
22947 #. type: Plain text
22948 #: build/C/man2/sysinfo.2:44
22949 msgid "and the sizes were given in bytes."
22950 msgstr "ここでバイト単位で与えられる。"
22951
22952 #. type: Plain text
22953 #: build/C/man2/sysinfo.2:47
22954 msgid "Since Linux 2.3.23 (i386), 2.3.48 (all architectures) the structure is:"
22955 msgstr "Linux 2.3.23 (i386)、2.3.48 (全てのアーキテクチャー) からは構造体は"
22956
22957 #. type: Plain text
22958 #: build/C/man2/sysinfo.2:65
22959 #, no-wrap
22960 msgid ""
22961 "struct sysinfo {\n"
22962 "    long uptime;             /* Seconds since boot */\n"
22963 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22964 "    unsigned long totalram;  /* Total usable main memory size */\n"
22965 "    unsigned long freeram;   /* Available memory size */\n"
22966 "    unsigned long sharedram; /* Amount of shared memory */\n"
22967 "    unsigned long bufferram; /* Memory used by buffers */\n"
22968 "    unsigned long totalswap; /* Total swap space size */\n"
22969 "    unsigned long freeswap;  /* swap space still available */\n"
22970 "    unsigned short procs;    /* Number of current processes */\n"
22971 "    unsigned long totalhigh; /* Total high memory size */\n"
22972 "    unsigned long freehigh;  /* Available high memory size */\n"
22973 "    unsigned int mem_unit;   /* Memory unit size in bytes */\n"
22974 "    char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */\n"
22975 "};\n"
22976 msgstr ""
22977 "struct sysinfo {\n"
22978 "    long uptime;             /* Seconds since boot */\n"
22979 "    unsigned long loads[3];  /* 1, 5, and 15 minute load averages */\n"
22980 "    unsigned long totalram;  /* Total usable main memory size */\n"
22981 "    unsigned long freeram;   /* Available memory size */\n"
22982 "    unsigned long sharedram; /* Amount of shared memory */\n"
22983 "    unsigned long bufferram; /* Memory used by buffers */\n"
22984 "    unsigned long totalswap; /* Total swap space size */\n"
22985 "    unsigned long freeswap;  /* swap space still available */\n"
22986 "    unsigned short procs;    /* Number of current processes */\n"
22987 "    unsigned long totalhigh; /* Total high memory size */\n"
22988 "    unsigned long freehigh;  /* Available high memory size */\n"
22989 "    unsigned int mem_unit;   /* Memory unit size in bytes */\n"
22990 "    char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */\n"
22991 "};\n"
22992
22993 #. type: Plain text
22994 #: build/C/man2/sysinfo.2:69
22995 msgid "and the sizes are given as multiples of I<mem_unit> bytes."
22996 msgstr "となり、大きさは I<mem_unit> バイトの倍数で与えられる。"
22997
22998 #. type: Plain text
22999 #: build/C/man2/sysinfo.2:74
23000 msgid ""
23001 "B<sysinfo>()  provides a simple way of getting overall system statistics.  "
23002 "This is more portable than reading I</dev/kmem>."
23003 msgstr ""
23004 "B<sysinfo>()  はシステム全体の統計を取得する簡単な方法を提供する。 これは I</"
23005 "dev/kmem> を読むよりも移植性の高い方法である。"
23006
23007 #. type: Plain text
23008 #: build/C/man2/sysinfo.2:83
23009 msgid "pointer to I<struct\\ sysinfo> is invalid"
23010 msgstr "I<sysinfo 構造体> へのポインターが不正である。"
23011
23012 #. type: Plain text
23013 #: build/C/man2/sysinfo.2:87
23014 msgid "The Linux kernel has a B<sysinfo>()  system call since 0.98.pl6."
23015 msgstr ""
23016 "0.98.pl6 以降の Linux カーネルに B<sysinfo>() システムコールは存在する。"
23017
23018 #. type: TH
23019 #: build/C/man3/tcgetpgrp.3:25
23020 #, no-wrap
23021 msgid "TCGETPGRP"
23022 msgstr "TCGETPGRP"
23023
23024 #. type: TH
23025 #: build/C/man3/tcgetpgrp.3:25
23026 #, no-wrap
23027 msgid "2014-01-13"
23028 msgstr "2014-01-13"
23029
23030 #. type: Plain text
23031 #: build/C/man3/tcgetpgrp.3:28
23032 msgid "tcgetpgrp, tcsetpgrp - get and set terminal foreground process group"
23033 msgstr ""
23034 "tcgetpgrp, tcsetpgrp - 端末のフォアグラウンドプロセスグループの 取得/設定を行"
23035 "う"
23036
23037 #. type: Plain text
23038 #: build/C/man3/tcgetpgrp.3:32
23039 msgid "B<pid_t tcgetpgrp(int >I<fd>B<);>"
23040 msgstr "B<pid_t tcgetpgrp(int >I<fd>B<);>"
23041
23042 #. type: Plain text
23043 #: build/C/man3/tcgetpgrp.3:34
23044 msgid "B<int tcsetpgrp(int >I<fd>B<, pid_t >I<pgrp>B<);>"
23045 msgstr "B<int tcsetpgrp(int >I<fd>B<, pid_t >I<pgrp>B<);>"
23046
23047 #.  The process itself may be a background process.
23048 #. type: Plain text
23049 #: build/C/man3/tcgetpgrp.3:42
23050 msgid ""
23051 "The function B<tcgetpgrp>()  returns the process group ID of the foreground "
23052 "process group on the terminal associated to I<fd>, which must be the "
23053 "controlling terminal of the calling process."
23054 msgstr ""
23055 "関数 B<tcgetpgrp>()  は、 I<fd> に対応する端末のフォアグラウンドプロセスグ"
23056 "ループの プロセスグループ ID を返す。 I<fd> で指定された端末は、呼び出しを行"
23057 "うプロセスの制御端末でなければならない。"
23058
23059 #. type: Plain text
23060 #: build/C/man3/tcgetpgrp.3:55
23061 msgid ""
23062 "The function B<tcsetpgrp>()  makes the process group with process group ID "
23063 "I<pgrp> the foreground process group on the terminal associated to I<fd>, "
23064 "which must be the controlling terminal of the calling process, and still be "
23065 "associated with its session.  Moreover, I<pgrp> must be a (nonempty) process "
23066 "group belonging to the same session as the calling process."
23067 msgstr ""
23068 "関数 B<tcsetpgrp>()  は、プロセスグループID が I<pgrp> のプロセスグループを "
23069 "I<fd> に対応する端末のフォアグラウンドプロセスグループにする。 このとき、 "
23070 "I<fd> は B<tcsetpgrp>()  を呼び出すプロセスの制御端末でなければならない。 さ"
23071 "らに、 I<pgrp> は、呼び出しを行うプロセスと同じセッションに 属する (メンバが"
23072 "空でない) プロセスグループでなければならない。"
23073
23074 #. type: Plain text
23075 #: build/C/man3/tcgetpgrp.3:64
23076 msgid ""
23077 "If B<tcsetpgrp>()  is called by a member of a background process group in "
23078 "its session, and the calling process is not blocking or ignoring B<SIGTTOU>, "
23079 "a B<SIGTTOU> signal is sent to all members of this background process group."
23080 msgstr ""
23081 "B<tcsetpgrp>()  がセッションに属するバックグラウンドグループプロセスのメンバ"
23082 "から 呼び出され、かつ呼び出しを行うプロセスが B<SIGTTOU> をブロックしたり 無"
23083 "視したりするようになっていない場合、 B<SIGTTOU> シグナルは バックグラウンドプ"
23084 "ロセスグループの全てのメンバに送られる。"
23085
23086 #. type: Plain text
23087 #: build/C/man3/tcgetpgrp.3:79
23088 msgid ""
23089 "When I<fd> refers to the controlling terminal of the calling process, the "
23090 "function B<tcgetpgrp>()  will return the foreground process group ID of that "
23091 "terminal if there is one, and some value larger than 1 that is not presently "
23092 "a process group ID otherwise.  When I<fd> does not refer to the controlling "
23093 "terminal of the calling process, -1 is returned, and I<errno> is set "
23094 "appropriately."
23095 msgstr ""
23096 "I<fd> が呼び出しを行ったプロセスの制御端末を参照している場合、関数 "
23097 "B<tcgetpgrp>()  は、その制御端末のフォアグラウンドプロセスグループがあれば そ"
23098 "のプロセスグループの ID を返す。 そのようなプロセスグループがなければ、現在プ"
23099 "ロセスグループ ID として使用されていない、1より大きな何らかの値が返される。 "
23100 "I<fd> が呼び出しを行ったプロセスの制御端末を参照していない場合、 -1 が返さ"
23101 "れ、 I<errno> が適切に設定される。"
23102
23103 #. type: Plain text
23104 #: build/C/man3/tcgetpgrp.3:86
23105 msgid ""
23106 "When successful, B<tcsetpgrp>()  returns 0.  Otherwise, it returns -1, and "
23107 "I<errno> is set appropriately."
23108 msgstr ""
23109 "成功した場合、 B<tcsetpgrp>()  は 0 を返す。そうでない場合、 -1 を返し、 "
23110 "I<errno> を適切に設定する。"
23111
23112 #. type: Plain text
23113 #: build/C/man3/tcgetpgrp.3:95
23114 msgid "I<pgrp> has an unsupported value."
23115 msgstr "I<pgrp> が無効な値である。"
23116
23117 #. type: Plain text
23118 #: build/C/man3/tcgetpgrp.3:104
23119 msgid ""
23120 "The calling process does not have a controlling terminal, or it has one but "
23121 "it is not described by I<fd>, or, for B<tcsetpgrp>(), this controlling "
23122 "terminal is no longer associated with the session of the calling process."
23123 msgstr ""
23124 "呼び出しを行ったプロセスが制御端末を持っていない、もしくは 制御端末を持ってい"
23125 "るが I<fd> で参照されるものとは異なる、 B<tcsetpgrp>()  の場合は、 I<fd> で指"
23126 "定された制御端末がすでに呼び出しを行ったプロセスのセッション と関係のないもの"
23127 "になっている際にも、このエラーとなる。"
23128
23129 #. type: Plain text
23130 #: build/C/man3/tcgetpgrp.3:109
23131 msgid ""
23132 "I<pgrp> has a supported value, but is not the process group ID of a process "
23133 "in the same session as the calling process."
23134 msgstr ""
23135 "I<pgrp> が有効な値だが、呼び出しを行ったプロセスと同じセッションに属する プロ"
23136 "セスのプロセスグループ ID には該当するものがない。"
23137
23138 #. type: Plain text
23139 #: build/C/man3/tcgetpgrp.3:116
23140 msgid "The B<tcgetpgrp>()  and B<tcsetpgrp>()  functions are thread-safe."
23141 msgstr "関数 B<tcgetpgrp>() と B<tcsetpgrp>() はスレッドセーフである。"
23142
23143 #. type: Plain text
23144 #: build/C/man3/tcgetpgrp.3:124
23145 msgid ""
23146 "These functions are implemented via the B<TIOCGPGRP> and B<TIOCSPGRP> ioctls."
23147 msgstr "この関数は B<TIOCGPGRP> と B<TIOCGSID> の ioctl 経由で実現されている。"
23148
23149 #. type: SS
23150 #: build/C/man3/tcgetpgrp.3:124 build/C/man2/vfork.2:234
23151 #, no-wrap
23152 msgid "History"
23153 msgstr "歴史"
23154
23155 #. type: Plain text
23156 #: build/C/man3/tcgetpgrp.3:127
23157 msgid "The ioctls appeared in 4.2BSD.  The functions are POSIX inventions."
23158 msgstr ""
23159 "これらの ioctl は 4.2BSD で登場した。 これらの関数は POSIX で考案されたもので"
23160 "ある。"
23161
23162 #. type: Plain text
23163 #: build/C/man3/tcgetpgrp.3:131
23164 msgid "B<setpgid>(2), B<setsid>(2), B<credentials>(7)"
23165 msgstr "B<setpgid>(2), B<setsid>(2), B<credentials>(7)"
23166
23167 #. type: TH
23168 #: build/C/man2/truncate.2:43
23169 #, no-wrap
23170 msgid "TRUNCATE"
23171 msgstr "TRUNCATE"
23172
23173 #. type: Plain text
23174 #: build/C/man2/truncate.2:46
23175 msgid "truncate, ftruncate - truncate a file to a specified length"
23176 msgstr "truncate, ftruncate - 指定した長さにファイルを切り詰める"
23177
23178 #. type: Plain text
23179 #: build/C/man2/truncate.2:52
23180 msgid "B<int truncate(const char *>I<path>B<, off_t >I<length>B<);>"
23181 msgstr "B<int truncate(const char *>I<path>B<, off_t >I<length>B<);>"
23182
23183 #. type: Plain text
23184 #: build/C/man2/truncate.2:54
23185 msgid "B<int ftruncate(int >I<fd>B<, off_t >I<length>B<);>"
23186 msgstr "B<int ftruncate(int >I<fd>B<, off_t >I<length>B<);>"
23187
23188 #. type: Plain text
23189 #: build/C/man2/truncate.2:63
23190 msgid "B<truncate>():"
23191 msgstr "B<truncate>():"
23192
23193 #. type: Plain text
23194 #: build/C/man2/truncate.2:71
23195 msgid "B<ftruncate>():"
23196 msgstr "B<ftruncate>():"
23197
23198 #. type: Plain text
23199 #: build/C/man2/truncate.2:76
23200 msgid "|| /* Since glibc 2.3.5: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
23201 msgstr "|| /* glibc 2.3.5 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
23202
23203 #. type: Plain text
23204 #: build/C/man2/truncate.2:91
23205 msgid ""
23206 "The B<truncate>()  and B<ftruncate>()  functions cause the regular file "
23207 "named by I<path> or referenced by I<fd> to be truncated to a size of "
23208 "precisely I<length> bytes."
23209 msgstr ""
23210 "B<truncate>()  は I<path> で指定されるファイルを、 B<ftruncate>()  は I<fd> "
23211 "で参照されるファイルを I<length> バイトの長さになるように延長する、もしくは切"
23212 "り詰める。"
23213
23214 #. type: Plain text
23215 #: build/C/man2/truncate.2:95
23216 msgid ""
23217 "If the file previously was larger than this size, the extra data is lost.  "
23218 "If the file previously was shorter, it is extended, and the extended part "
23219 "reads as null bytes (\\(aq\\e0\\(aq)."
23220 msgstr ""
23221 "もし切り詰める前のファイルが I<length> より長ければ、length バイトを越える部"
23222 "分のデータは失われる。 もし切り詰める前のファイルが I<length> より短かけれ"
23223 "ば、伸張される。 伸張された部分を読んだ場合はヌルバイト (\\(aq\\e0\\(aq) の列"
23224 "が返される。"
23225
23226 #. type: Plain text
23227 #: build/C/man2/truncate.2:97
23228 msgid "The file offset is not changed."
23229 msgstr "ファイルオフセットは変更されない。"
23230
23231 #. type: Plain text
23232 #: build/C/man2/truncate.2:104
23233 msgid ""
23234 "If the size changed, then the st_ctime and st_mtime fields (respectively, "
23235 "time of last status change and time of last modification; see B<stat>(2))  "
23236 "for the file are updated, and the set-user-ID and set-group-ID permission "
23237 "bits may be cleared."
23238 msgstr ""
23239 "大きさが変更されると、ファイルの st_ctime と st_mtime フィールド (それぞれ最"
23240 "終状態変更時刻、最終修正時刻; B<stat>(2)  参照) が更新される。 また、set-"
23241 "user-ID と set-group-ID の許可ビットがクリアされるかもしれない。"
23242
23243 #. type: Plain text
23244 #: build/C/man2/truncate.2:110
23245 msgid ""
23246 "With B<ftruncate>(), the file must be open for writing; with B<truncate>(), "
23247 "the file must be writable."
23248 msgstr ""
23249 "B<ftruncate>()  の場合、ファイルは書き込み用に開いていなければならない。 "
23250 "B<truncate>()  の場合、ファイルは書き込み可能でなければならない。"
23251
23252 #. type: Plain text
23253 #: build/C/man2/truncate.2:118
23254 msgid "For B<truncate>():"
23255 msgstr "B<truncate>()  では以下のエラーコードが定義されている。"
23256
23257 #. type: Plain text
23258 #: build/C/man2/truncate.2:124
23259 msgid ""
23260 "Search permission is denied for a component of the path prefix, or the named "
23261 "file is not writable by the user.  (See also B<path_resolution>(7).)"
23262 msgstr ""
23263 "パスで指定されているディレクトリに検索許可のないものがある (訳注:x ビットが"
23264 "立っていない)。 あるいは、指定されたファイルに対する書き込み許可を持っていな"
23265 "い。 (B<path_resolution>(7)  も参照のこと)"
23266
23267 #. type: Plain text
23268 #: build/C/man2/truncate.2:129
23269 msgid ""
23270 "The argument I<path> points outside the process's allocated address space."
23271 msgstr ""
23272 "引き数 I<path> がプロセスに割り当てられているアドレス空間外を指している。"
23273
23274 #. type: TP
23275 #: build/C/man2/truncate.2:129
23276 #, no-wrap
23277 msgid "B<EFBIG>"
23278 msgstr "B<EFBIG>"
23279
23280 #. type: Plain text
23281 #: build/C/man2/truncate.2:134
23282 msgid "The argument I<length> is larger than the maximum file size. (XSI)"
23283 msgstr "引き数 I<length> が最大ファイルサイズより大きい。(XSI)"
23284
23285 #. type: Plain text
23286 #: build/C/man2/truncate.2:141
23287 msgid ""
23288 "While blocked waiting to complete, the call was interrupted by a signal "
23289 "handler; see B<fcntl>(2)  and B<signal>(7)."
23290 msgstr ""
23291 "完了待ちで停止 (block) している間に、呼び出しが シグナルハンドラーにより割り"
23292 "込まれた。 B<fcntl>(2)  と B<signal>(7)  を参照。"
23293
23294 #. type: Plain text
23295 #: build/C/man2/truncate.2:146
23296 msgid ""
23297 "The argument I<length> is negative or larger than the maximum file size."
23298 msgstr "引き数 I<length> が負数であるか、最大ファイルサイズより大きい。"
23299
23300 #. type: Plain text
23301 #: build/C/man2/truncate.2:149
23302 msgid "An I/O error occurred updating the inode."
23303 msgstr "inode の更新時に I/O エラーが発生した。"
23304
23305 #. type: Plain text
23306 #: build/C/man2/truncate.2:152
23307 msgid "The named file is a directory."
23308 msgstr "指定されたファイルはディレクトリである。"
23309
23310 #. type: Plain text
23311 #: build/C/man2/truncate.2:155
23312 msgid "Too many symbolic links were encountered in translating the pathname."
23313 msgstr "パス名を解釈する際にシンボリックリンクが多すぎた。"
23314
23315 #. type: Plain text
23316 #: build/C/man2/truncate.2:159
23317 msgid ""
23318 "A component of a pathname exceeded 255 characters, or an entire pathname "
23319 "exceeded 1023 characters."
23320 msgstr ""
23321 "パス名中のディレクトリ名が 255 文字を越えている、もしくはパス名全体が 1023 文"
23322 "字を越えている。"
23323
23324 #. type: Plain text
23325 #: build/C/man2/truncate.2:162
23326 msgid "The named file does not exist."
23327 msgstr "指定された名前のファイルが存在しない。"
23328
23329 #.  This happens for at least MSDOS and VFAT filesystems
23330 #.  on kernel 2.6.13
23331 #. type: Plain text
23332 #: build/C/man2/truncate.2:171
23333 msgid ""
23334 "The underlying filesystem does not support extending a file beyond its "
23335 "current size."
23336 msgstr ""
23337 "下層にあるファイルシステムでは、現在のファイル長を越えて ファイルを伸長するこ"
23338 "とができない。"
23339
23340 #. type: Plain text
23341 #: build/C/man2/truncate.2:175
23342 msgid "The operation was prevented by a file seal; see B<fcntl>(2)."
23343 msgstr "操作が file seal により禁止されている。 B<fcntl>(2) 参照。"
23344
23345 #. type: Plain text
23346 #: build/C/man2/truncate.2:181
23347 msgid "The file is a pure procedure (shared text) file that is being executed."
23348 msgstr "指定されたファイルは実行されているファイルである。"
23349
23350 #. type: Plain text
23351 #: build/C/man2/truncate.2:188
23352 msgid ""
23353 "For B<ftruncate>()  the same errors apply, but instead of things that can be "
23354 "wrong with I<path>, we now have things that can be wrong with the file "
23355 "descriptor, I<fd>:"
23356 msgstr ""
23357 "B<ftruncate>()  にも同様のエラーが適用される。 但し、 I<path> に関するエラー"
23358 "の場合は、ファイルディスクリプター I<fd> に関するエラーとなる。"
23359
23360 #. type: TP
23361 #: build/C/man2/truncate.2:192
23362 #, no-wrap
23363 msgid "B<EBADF> or B<EINVAL>"
23364 msgstr "B<EBADF> または B<EINVAL>"
23365
23366 #. type: Plain text
23367 #: build/C/man2/truncate.2:196
23368 msgid "I<fd> is not open for writing."
23369 msgstr "I<fd> で指定されているものが書き込みモードで開かれていない。"
23370
23371 #. type: Plain text
23372 #: build/C/man2/truncate.2:200
23373 msgid "I<fd> does not reference a regular file."
23374 msgstr "I<fd> が通常のファイルを参照していない。"
23375
23376 #.  POSIX.1-1996 has
23377 #.  .BR ftruncate ().
23378 #.  POSIX.1-2001 also has
23379 #.  .BR truncate (),
23380 #.  as an XSI extension.
23381 #.  .LP
23382 #.  SVr4 documents additional
23383 #.  .BR truncate ()
23384 #.  error conditions EMFILE, EMULTIHP, ENFILE, ENOLINK.  SVr4 documents for
23385 #.  .BR ftruncate ()
23386 #.  an additional EAGAIN error condition.
23387 #. type: Plain text
23388 #: build/C/man2/truncate.2:213
23389 msgid "4.4BSD, SVr4, POSIX.1-2001 (these calls first appeared in 4.2BSD)."
23390 msgstr ""
23391 "4.4BSD, SVr4, POSIX.1-2001 (これらのコールは 4.2BSD で初めて登場した)。"
23392
23393 #.  At the very least: OSF/1, Solaris 7, and FreeBSD conform, mtk, Jan 2002
23394 #. type: Plain text
23395 #: build/C/man2/truncate.2:234
23396 msgid ""
23397 "The details in DESCRIPTION are for XSI-compliant systems.  For non-XSI-"
23398 "compliant systems, the POSIX standard allows two behaviors for "
23399 "B<ftruncate>()  when I<length> exceeds the file length (note that "
23400 "B<truncate>()  is not specified at all in such an environment): either "
23401 "returning an error, or extending the file.  Like most UNIX implementations, "
23402 "Linux follows the XSI requirement when dealing with native filesystems.  "
23403 "However, some nonnative filesystems do not permit B<truncate>()  and "
23404 "B<ftruncate>()  to be used to extend a file beyond its current length: a "
23405 "notable example on Linux is VFAT."
23406 msgstr ""
23407 "「説明」の節で述べた詳細は XSI 準拠のシステムについてのものである。\n"
23408 "XSI 非準拠のシステムの場合、POSIX 標準は B<ftruncate>() に対して I<length> "
23409 "が\n"
23410 "ファイルの長さより長かった場合、 エラーを返すかファイルを伸張するかの二つの\n"
23411 "動作を許容している。 B<truncate>() に対しては全く規定されていない。\n"
23412 "ほとんどの UNIX 実装と同様、Linux はネイティブ (Linux 由来) の ファイルシステ"
23413 "ム\n"
23414 "の扱いでは XSI 要求仕様にしたがっている。 しかしながら、いくつかの非ネイティ"
23415 "ブ\n"
23416 "のファイルシステムでは、 B<truncate>() や B<ftruncate>() を使って現在のファイ"
23417 "ル\n"
23418 "長を越えてファイルを伸長することができない。 Linux での有名な例としては\n"
23419 "VFAT がある。"
23420
23421 #. type: Plain text
23422 #: build/C/man2/truncate.2:248
23423 msgid ""
23424 "The original Linux B<truncate>()  and B<ftruncate>()  system calls were not "
23425 "designed to handle large file offsets.  Consequently, Linux 2.4 added "
23426 "B<truncate64>()  and B<ftruncate64>()  system calls that handle large "
23427 "files.  However, these details can be ignored by applications using glibc, "
23428 "whose wrapper functions transparently employ the more recent system calls "
23429 "where they are available."
23430 msgstr ""
23431 "元々の Linux の B<truncate>() と B<ftruncate>() システムコールは\n"
23432 "大きなファイルオフセットを扱えるように設計されていなかった。\n"
23433 "その結果、大きなファイルファイルを扱うことができる B<truncate64>() と "
23434 "B<ftruncate64>()\n"
23435 "システムコールが Linux 2.4 で追加された。\n"
23436 "ただし、glibc を使ったアプリケーションではこれらの詳細は気にする必要はな"
23437 "い。\n"
23438 "glibc のラッパー関数は新しいシステムコールが利用できる場合にはそれらを利用す"
23439 "る\n"
23440 "ようになっているからである。"
23441
23442 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=12037
23443 #. type: Plain text
23444 #: build/C/man2/truncate.2:261
23445 msgid ""
23446 "A header file bug in glibc 2.12 meant that the minimum value of "
23447 "B<_POSIX_C_SOURCE> required to expose the declaration of B<ftruncate>()  was "
23448 "200809L instead of 200112L.  This has been fixed in later glibc versions."
23449 msgstr ""
23450 "glibc 2.12 のヘッダーファイルにはバグがあり、 B<ftruncate>()  の宣言を公開す"
23451 "るのに必要な B<_POSIX_C_SOURCE> の最小値が 200112L ではなく 200809L となって"
23452 "いた。 このバグは、これ以降のバージョンの glibc では修正されている。"
23453
23454 #. type: Plain text
23455 #: build/C/man2/truncate.2:265
23456 msgid "B<open>(2), B<stat>(2), B<path_resolution>(7)"
23457 msgstr "B<open>(2), B<stat>(2), B<path_resolution>(7)"
23458
23459 #. type: TH
23460 #: build/C/man3/ualarm.3:24
23461 #, no-wrap
23462 msgid "UALARM"
23463 msgstr "UALARM"
23464
23465 #. type: TH
23466 #: build/C/man3/ualarm.3:24
23467 #, no-wrap
23468 msgid "2013-12-23"
23469 msgstr "2013-12-23"
23470
23471 #. type: Plain text
23472 #: build/C/man3/ualarm.3:27
23473 msgid "ualarm - schedule signal after given number of microseconds"
23474 msgstr "ualarm - 指定したマイクロ秒後にシグナルを送る予定をする"
23475
23476 #. type: Plain text
23477 #: build/C/man3/ualarm.3:32
23478 #, no-wrap
23479 msgid "B<useconds_t ualarm(useconds_t >I<usecs>B<, useconds_t >I<interval>B<);>\n"
23480 msgstr "B<useconds_t ualarm(useconds_t >I<usecs>B<, useconds_t >I<interval>B<);>\n"
23481
23482 #. type: Plain text
23483 #: build/C/man3/ualarm.3:40
23484 msgid "B<ualarm>():"
23485 msgstr "B<ualarm>():"
23486
23487 #. type: Plain text
23488 #: build/C/man3/ualarm.3:69
23489 msgid ""
23490 "The B<ualarm>()  function causes the signal B<SIGALRM> to be sent to the "
23491 "invoking process after (not less than)  I<usecs> microseconds.  The delay "
23492 "may be lengthened slightly by any system activity or by the time spent "
23493 "processing the call or by the granularity of system timers."
23494 msgstr ""
23495 "B<ualarm>()  関数は、呼び出し元のプロセスに対して I<usecs> マイクロ秒 (以上) "
23496 "後に B<SIGALRM> シグナルを送る。 遅れはシステムの活性度・呼び出しの処理時"
23497 "間・ システムタイマーの粒度によって長くなるかもしれない。"
23498
23499 #. type: Plain text
23500 #: build/C/man3/ualarm.3:73
23501 msgid ""
23502 "Unless caught or ignored, the B<SIGALRM> signal will terminate the process."
23503 msgstr ""
23504 "捕捉または無視されない限り、 B<SIGALRM> シグナルはプロセスを終了させる。"
23505
23506 #. type: Plain text
23507 #: build/C/man3/ualarm.3:81
23508 msgid ""
23509 "If the I<interval> argument is nonzero, further B<SIGALRM> signals will be "
23510 "sent every I<interval> microseconds after the first."
23511 msgstr ""
23512 "I<interval> 引き数が 0 でない場合、最初の B<SIGALRM> シグナルの後、 さらに "
23513 "I<interval> マイクロ秒毎に SIGALRM シグナルが送られる。"
23514
23515 #. type: Plain text
23516 #: build/C/man3/ualarm.3:84
23517 msgid ""
23518 "This function returns the number of microseconds remaining for any alarm "
23519 "that was previously set, or 0 if no alarm was pending."
23520 msgstr ""
23521 "この関数は、過去に設定された alarm の残りマイクロ秒数を返す。 実行中の alarm "
23522 "がない場合は 0 を返す。"
23523
23524 #. type: Plain text
23525 #: build/C/man3/ualarm.3:88
23526 msgid "Interrupted by a signal."
23527 msgstr "シグナルによって割り込まれた。"
23528
23529 #. type: Plain text
23530 #: build/C/man3/ualarm.3:92
23531 msgid ""
23532 "I<usecs> or I<interval> is not smaller than 1000000.  (On systems where that "
23533 "is considered an error.)"
23534 msgstr ""
23535 "I<usecs> または I<interval> が 1000000 未満でない (これがエラーとして扱われる"
23536 "システムの場合)。"
23537
23538 #. type: Plain text
23539 #: build/C/man3/ualarm.3:97
23540 msgid "The B<ualarm>()  function is thread-safe."
23541 msgstr "B<ualarm>() 関数はスレッドセーフである。"
23542
23543 #. type: Plain text
23544 #: build/C/man3/ualarm.3:105
23545 msgid ""
23546 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 marks B<ualarm>()  as obsolete.  "
23547 "POSIX.1-2008 removes the specification of B<ualarm>().  4.3BSD, SUSv2, and "
23548 "POSIX do not define any errors."
23549 msgstr ""
23550 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 では B<ualarm>()  は過去のものとされてい"
23551 "る。 POSIX.1-2008 では、 B<ualarm>()  の仕様が削除されている。 4.3BSD, "
23552 "SUSv2, POSIX はエラーを定義していない。"
23553
23554 #.  This case is not documented in HP-US, Solar, FreeBSD, NetBSD, or OpenBSD!
23555 #. type: Plain text
23556 #: build/C/man3/ualarm.3:112
23557 msgid ""
23558 "POSIX.1-2001 does not specify what happens if the I<usecs> argument is 0.  "
23559 "On Linux (and probably most other systems), the effect is to cancel any "
23560 "pending alarm."
23561 msgstr ""
23562 "POSIX.1-2001 では、 I<usecs> 引き数が 0 の場合、何が起こるかは規定されていな"
23563 "い。 Linux (やおそらく他ほとんどのシステム) では、 I<usecs> 引き数が 0 の場"
23564 "合、処理待ちのアラームがキャンセルされる。"
23565
23566 #. type: Plain text
23567 #: build/C/man3/ualarm.3:125
23568 msgid ""
23569 "The type I<useconds_t> is an unsigned integer type capable of holding "
23570 "integers in the range [0,1000000].  On the original BSD implementation, and "
23571 "in glibc before version 2.1, the arguments to B<ualarm>()  were instead "
23572 "typed as I<unsigned int>.  Programs will be more portable if they never "
23573 "mention I<useconds_t> explicitly."
23574 msgstr ""
23575 "I<useconds_t> 型は [0,1000000] の範囲の整数を保持できる符号なし整数型であ"
23576 "る。 もともとの BSD での実装や、バージョン 2.1 より前の glibc では、 "
23577 "B<ualarm>()  の引き数の型は I<unsigned int> であった。 プログラム中に明示的"
23578 "に I<useconds_t> と書かない方が、移植性が高くなる。"
23579
23580 #. type: Plain text
23581 #: build/C/man3/ualarm.3:139
23582 msgid ""
23583 "The interaction of this function with other timer functions such as "
23584 "B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), "
23585 "B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), "
23586 "B<timer_gettime>(2), B<timer_settime>(2), B<usleep>(3)  is unspecified."
23587 msgstr ""
23588 "この関数と B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), "
23589 "B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), "
23590 "B<timer_gettime>(2), B<timer_settime>(2), B<usleep>(3)  のような他のタイマー"
23591 "関数との相互作用は規定されていない。"
23592
23593 #. type: Plain text
23594 #: build/C/man3/ualarm.3:147
23595 msgid ""
23596 "This function is obsolete.  Use B<setitimer>(2)  or POSIX interval timers "
23597 "(B<timer_create>(2), etc.)  instead."
23598 msgstr ""
23599 "この関数は廃止予定である。 代わりに B<setitimer>(2)  もしくは POSIX インター"
23600 "バルタイマー (B<timer_create>(2)  など) を使うこと。"
23601
23602 #. type: Plain text
23603 #: build/C/man3/ualarm.3:155
23604 msgid ""
23605 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
23606 "B<setitimer>(2), B<usleep>(3), B<time>(7)"
23607 msgstr ""
23608 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
23609 "B<setitimer>(2), B<usleep>(3), B<time>(7)"
23610
23611 #. type: TH
23612 #: build/C/man2/umask.2:34
23613 #, no-wrap
23614 msgid "UMASK"
23615 msgstr "UMASK"
23616
23617 #. type: TH
23618 #: build/C/man2/umask.2:34
23619 #, no-wrap
23620 msgid "2008-01-09"
23621 msgstr "2008-01-09"
23622
23623 #. type: Plain text
23624 #: build/C/man2/umask.2:37
23625 msgid "umask - set file mode creation mask"
23626 msgstr "umask - ファイルモード作成マスクを設定する"
23627
23628 #. type: Plain text
23629 #: build/C/man2/umask.2:43
23630 msgid "B<mode_t umask(mode_t >I<mask>B<);>"
23631 msgstr "B<mode_t umask(mode_t >I<mask>B<);>"
23632
23633 #. type: Plain text
23634 #: build/C/man2/umask.2:50
23635 msgid ""
23636 "B<umask>()  sets the calling process's file mode creation mask (umask) to "
23637 "I<mask> & 0777 (i.e., only the file permission bits of I<mask> are used), "
23638 "and returns the previous value of the mask."
23639 msgstr ""
23640 "B<umask>()  は、呼び出し元プロセスのファイルモード作成マスク (umask) を "
23641 "I<mask> & 0777 に設定し (I<umask> のファイル許可に対応するビットのみを使用す"
23642 "る)、 変更前のマスク値を返す。"
23643
23644 #.  e.g., mkfifo(), creat(), mknod(), sem_open(), mq_open(), shm_open()
23645 #.  but NOT the System V IPC *get() calls
23646 #. type: Plain text
23647 #: build/C/man2/umask.2:65
23648 msgid ""
23649 "The umask is used by B<open>(2), B<mkdir>(2), and other system calls that "
23650 "create files to modify the permissions placed on newly created files or "
23651 "directories.  Specifically, permissions in the umask are turned off from the "
23652 "I<mode> argument to B<open>(2)  and B<mkdir>(2)."
23653 msgstr ""
23654 "umask は、 B<open>(2), B<mkdir>(2)  やファイル作成を行うその他のシステムコー"
23655 "ルで、 新しく作成されるファイルやディレクトリの許可 (permission) を 修正する"
23656 "ために使用される。 具体的には umask に設定されている許可が B<open>(2)  や "
23657 "B<mkdir>(2)  の I<mode> 引き数から取り消される。"
23658
23659 #. type: Plain text
23660 #: build/C/man2/umask.2:70
23661 msgid ""
23662 "The constants that should be used to specify I<mask> are described under "
23663 "B<stat>(2)."
23664 msgstr ""
23665 "I<mask> に指定するのに使用すべき定数については B<stat>(2)  で説明されている。"
23666
23667 #. type: Plain text
23668 #: build/C/man2/umask.2:79
23669 msgid ""
23670 "The typical default value for the process umask is I<S_IWGRP\\ |\\ S_IWOTH> "
23671 "(octal 022).  In the usual case where the I<mode> argument to B<open>(2)  is "
23672 "specified as:"
23673 msgstr ""
23674 "プロセスの umask のよくあるデフォルト値は I<S_IWGRP\\ |\\ S_IWOTH> (8進で "
23675 "022) である。 新しいファイルを作成する際に B<open>(2)  の I<mode> 引き数に"
23676
23677 #. type: Plain text
23678 #: build/C/man2/umask.2:82
23679 #, no-wrap
23680 msgid "    S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH\n"
23681 msgstr "    S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH\n"
23682
23683 #. type: Plain text
23684 #: build/C/man2/umask.2:86
23685 msgid ""
23686 "(octal 0666) when creating a new file, the permissions on the resulting file "
23687 "will be:"
23688 msgstr "を指定するというよくあるケースでは、作成されたファイルは"
23689
23690 #. type: Plain text
23691 #: build/C/man2/umask.2:89
23692 #, no-wrap
23693 msgid "    S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH\n"
23694 msgstr "    S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH\n"
23695
23696 #. type: Plain text
23697 #: build/C/man2/umask.2:92
23698 msgid "(because 0666 & ~022 = 0644; i.e., rw-r--r--)."
23699 msgstr ""
23700 "という許可を持つことになる (なぜなら 0666 & ~022 = 0644、つまり rw-r--r--)。"
23701
23702 #. type: Plain text
23703 #: build/C/man2/umask.2:95
23704 msgid ""
23705 "This system call always succeeds and the previous value of the mask is "
23706 "returned."
23707 msgstr "このシステムコールは必ず成功し、以前の umask 値を返す。"
23708
23709 #. type: Plain text
23710 #: build/C/man2/umask.2:103
23711 msgid ""
23712 "A child process created via B<fork>(2)  inherits its parent's umask.  The "
23713 "umask is left unchanged by B<execve>(2)."
23714 msgstr ""
23715 "B<fork>(2)  で作成された子プロセスは、親プロセスの umask を継承する。 "
23716 "B<execve>(2)  によって umask は変更されない。"
23717
23718 #. type: Plain text
23719 #: build/C/man2/umask.2:118
23720 msgid ""
23721 "The umask setting also affects the permissions assigned to POSIX IPC objects "
23722 "(B<mq_open>(3), B<sem_open>(3), B<shm_open>(3)), FIFOs (B<mkfifo>(3)), and "
23723 "UNIX domain sockets (B<unix>(7))  created by the process.  The umask does "
23724 "not affect the permissions assigned to System\\ V IPC objects created by the "
23725 "process (using B<msgget>(2), B<semget>(2), B<shmget>(2))."
23726 msgstr ""
23727 "umask の設定は、そのプロセスが生成する POSIX IPC オブジェクト "
23728 "(B<mq_open>(3), B<sem_open>(3), B<shm_open>(3))  や FIFO (B<mkfifo>(3))、 "
23729 "UNIX ドメインソケット (B<unix>(7))  に設定される許可にも影響を与える。 一方、"
23730 "umask は、そのプロセスが (B<msgget>(2), B<semget>(2), B<shmget>(2)  を使っ"
23731 "て) 生成する System\\ V IPC オブジェクトに設定される許可には 影響を与えない。"
23732
23733 #. type: Plain text
23734 #: build/C/man2/umask.2:124
23735 msgid "B<chmod>(2), B<mkdir>(2), B<open>(2), B<stat>(2), B<acl>(5)"
23736 msgstr "B<chmod>(2), B<mkdir>(2), B<open>(2), B<stat>(2), B<acl>(5)"
23737
23738 #. type: TH
23739 #: build/C/man2/uname.2:27
23740 #, no-wrap
23741 msgid "UNAME"
23742 msgstr "UNAME"
23743
23744 #. type: Plain text
23745 #: build/C/man2/uname.2:30
23746 msgid "uname - get name and information about current kernel"
23747 msgstr "uname - 現在稼働中のカーネルについての名前と情報を得る"
23748
23749 #. type: Plain text
23750 #: build/C/man2/uname.2:32
23751 msgid "B<#include E<lt>sys/utsname.hE<gt>>"
23752 msgstr "B<#include E<lt>sys/utsname.hE<gt>>"
23753
23754 #. type: Plain text
23755 #: build/C/man2/uname.2:34
23756 msgid "B<int uname(struct utsname *>I<buf>B<);>"
23757 msgstr "B<int uname(struct utsname *>I<buf>B<);>"
23758
23759 #. type: Plain text
23760 #: build/C/man2/uname.2:42
23761 msgid ""
23762 "B<uname>()  returns system information in the structure pointed to by "
23763 "I<buf>.  The I<utsname> struct is defined in I<E<lt>sys/utsname.hE<gt>>:"
23764 msgstr ""
23765 "B<uname>()  は I<buf> で指される構造体にシステム情報を返す。 I<utsname> 構造"
23766 "体は I<E<lt>sys/utsname.hE<gt>> で以下のように定義されている。"
23767
23768 #. type: Plain text
23769 #: build/C/man2/uname.2:56
23770 #, no-wrap
23771 msgid ""
23772 "struct utsname {\n"
23773 "    char sysname[];    /* Operating system name (e.g., \"Linux\") */\n"
23774 "    char nodename[];   /* Name within \"some implementation-defined\n"
23775 "                          network\" */\n"
23776 "    char release[];    /* Operating system release (e.g., \"2.6.28\") */\n"
23777 "    char version[];    /* Operating system version */\n"
23778 "    char machine[];    /* Hardware identifier */\n"
23779 "#ifdef _GNU_SOURCE\n"
23780 "    char domainname[]; /* NIS or YP domain name */\n"
23781 "#endif\n"
23782 "};\n"
23783 msgstr ""
23784 "struct utsname {\n"
23785 "    char sysname[];    /* OS の名前 (例: \"Linux\") */\n"
23786 "    char nodename[];   /* 「実装時に定義された、何らかの\n"
23787 "                          ネットワーク」におけるマシン名 */\n"
23788 "    char release[];    /* オペレーションシステムのリリース番号 (例: \"2.6.28\") */\n"
23789 "    char version[];    /* オペレーティングシステムのバージョン */\n"
23790 "    char machine[];    /* ハードウェア識別子 */\n"
23791 "#ifdef _GNU_SOURCE\n"
23792 "    char domainname[]; /* NIS や YP のドメイン名 */\n"
23793 "#endif\n"
23794 "};\n"
23795
23796 #. type: Plain text
23797 #: build/C/man2/uname.2:63
23798 msgid ""
23799 "The length of the arrays in a I<struct utsname> is unspecified (see NOTES); "
23800 "the fields are terminated by a null byte (\\(aq\\e0\\(aq)."
23801 msgstr ""
23802 "I<struct utsname> にある配列の長さは指定されていない (「注意」の節を参照)。 "
23803 "フィールドはヌルバイト (\\(aq\\e0\\(aq) で終端される。"
23804
23805 #. type: Plain text
23806 #: build/C/man2/uname.2:73
23807 msgid "I<buf> is not valid."
23808 msgstr "I<buf> が有効でない。"
23809
23810 #. type: Plain text
23811 #: build/C/man2/uname.2:78
23812 msgid "SVr4, POSIX.1-2001.  There is no B<uname>()  call in 4.3BSD."
23813 msgstr "SVr4, POSIX.1-2001.  4.3BSD には B<uname>()  コールがない。"
23814
23815 #. type: Plain text
23816 #: build/C/man2/uname.2:82
23817 msgid ""
23818 "The I<domainname> member (the NIS or YP domain name) is a GNU extension."
23819 msgstr ""
23820 "I<domainname> メンバー (NIS または YP ドメイン名) は GNU の拡張である。"
23821
23822 #. type: Plain text
23823 #: build/C/man2/uname.2:98
23824 msgid ""
23825 "This is a system call, and the operating system presumably knows its name, "
23826 "release and version.  It also knows what hardware it runs on.  So, four of "
23827 "the fields of the struct are meaningful.  On the other hand, the field "
23828 "I<nodename> is meaningless: it gives the name of the present machine in some "
23829 "undefined network, but typically machines are in more than one network and "
23830 "have several names.  Moreover, the kernel has no way of knowing about such "
23831 "things, so it has to be told what to answer here.  The same holds for the "
23832 "additional I<domainname> field."
23833 msgstr ""
23834 "これはシステムコールであり、OS は名前・リリース・バージョンなどを たぶん分"
23835 "かっているだろう。 さらにそれが稼働しているハードウェアも分かっているだろ"
23836 "う。 よって構造体の 4 つのフィールドには意味がある。 一方、I<nodename> フィー"
23837 "ルドには意味がない: このフィールドは現在のマシンの (定義されていない)  どこか"
23838 "のネットワークにおける名前を与えるが、 通常マシンは複数のネットワークに属し、"
23839 "複数の名前を持つ。 さらに、カーネルはこのような情報を知る術を持たないので、 "
23840 "ここでの答えは前もって教えてやらなければならない。 これは追加フィールドであ"
23841 "る I<domainname> についても同様である。"
23842
23843 #. type: Plain text
23844 #: build/C/man2/uname.2:116
23845 msgid ""
23846 "To this end, Linux uses the system calls B<sethostname>(2)  and "
23847 "B<setdomainname>(2).  Note that there is no standard that says that the "
23848 "hostname set by B<sethostname>(2)  is the same string as the I<nodename> "
23849 "field of the struct returned by B<uname>()  (indeed, some systems allow a "
23850 "256-byte hostname and an 8-byte nodename), but this is true on Linux.  The "
23851 "same holds for B<setdomainname>(2)  and the I<domainname> field."
23852 msgstr ""
23853 "このため Linux ではシステムコール B<sethostname>(2)  と B<setdomainname>(2)  "
23854 "が使われる。 「B<sethostname>(2)  で設定されるホスト名は、 B<uname>()  で返さ"
23855 "れる構造体の I<nodename> フィールドと同じ文字列である」 と規定している標準規"
23856 "格はない (実際、256 バイトのホスト名と 8 バイトのノード名を許可しているシステ"
23857 "ムもある)。 しかし、Linux では同じ文字列が返される。 B<setdomainname>(2)  と "
23858 "I<domainname> フィールドについても同じことが成り立つ。"
23859
23860 #. type: Plain text
23861 #: build/C/man2/uname.2:131
23862 msgid ""
23863 "The length of the fields in the struct varies.  Some operating systems or "
23864 "libraries use a hardcoded 9 or 33 or 65 or 257.  Other systems use "
23865 "B<SYS_NMLN> or B<_SYS_NMLN> or B<UTSLEN> or B<_UTSNAME_LENGTH>.  Clearly, it "
23866 "is a bad idea to use any of these constants; just use sizeof(...).  Often "
23867 "257 is chosen in order to have room for an internet hostname."
23868 msgstr ""
23869 "構造体のフィールドの長さはさまざまである。 OS やライブラリの中には、 ハード"
23870 "コードされた 9, 33, 65, 257 などの値を使っているものもある。 また "
23871 "B<SYS_NMLN>, B<_SYS_NMLN>, B<UTSLEN>, B<_UTSNAME_LENGTH> などを使っているシス"
23872 "テムもある。 はっきり言って、これらの定数を使うのは悪い考え方であり、 "
23873 "sizeof(...) を使うべきである。 インターネットホスト名で使う領域を持たせるため"
23874 "に、 257 が選ばれることが多い。"
23875
23876 #. type: Plain text
23877 #: build/C/man2/uname.2:138
23878 msgid ""
23879 "Part of the utsname information is also accessible via I</proc/sys/kernel/"
23880 ">{I<ostype>, I<hostname>, I<osrelease>, I<version>, I<domainname>}."
23881 msgstr ""
23882 "utsname の情報は、 I</proc/sys/kernel/>{I<ostype>, I<hostname>, "
23883 "I<osrelease>, I<version>, I<domainname>} を使ってアクセスすることもできる。"
23884
23885 #.  That was back before Linux 1.0
23886 #.  That was also back before Linux 1.0
23887 #. type: Plain text
23888 #: build/C/man2/uname.2:167
23889 msgid ""
23890 "Over time, increases in the size of the I<utsname> structure have led to "
23891 "three successive versions of B<uname>(): I<sys_olduname>()  (slot "
23892 "I<__NR_oldolduname>), I<sys_uname>()  (slot I<__NR_olduname>), and "
23893 "I<sys_newuname>()  (slot I<__NR_uname)>.  The first one used length 9 for "
23894 "all fields; the second used 65; the third also uses 65 but adds the "
23895 "I<domainname> field.  The glibc B<uname>()  wrapper function hides these "
23896 "details from applications, invoking the most recent version of the system "
23897 "call provided by the kernel."
23898 msgstr ""
23899 "時間の経過とともに、 I<utsname> 構造体のサイズが大きくなり、この影響で "
23900 "B<uname>()  には 3つのバージョンが存在する: I<sys_olduname>()  (スロットは "
23901 "I<__NR_oldolduname>)、 I<sys_uname>()  (スロットは I<__NR_olduname>)、 "
23902 "I<sys_newuname>()  (スロットは I<__NR_uname>)。 I<sys_olduname>()  はすべての"
23903 "フィールドが長さ 9 を使っていた。 I<sys_uname>()  は長さ 65 を使っていた。 "
23904 "I<sys_newuname>()  も長さ 65 を使っているが、 I<domainname> フィールドが追加"
23905 "されている。 glibc の B<uname>()  ラッパー関数は、これらの詳細をアプリケー"
23906 "ションから隠蔽し、 カーネルが提供しているシステムコールのうち最新のバージョン"
23907 "を起動する。"
23908
23909 #. type: Plain text
23910 #: build/C/man2/uname.2:172
23911 msgid "B<uname>(1), B<getdomainname>(2), B<gethostname>(2), B<namespaces>(7)"
23912 msgstr "B<uname>(1), B<getdomainname>(2), B<gethostname>(2), B<namespaces>(7)"
23913
23914 #. type: TH
23915 #: build/C/man2/uselib.2:31
23916 #, no-wrap
23917 msgid "USELIB"
23918 msgstr "USELIB"
23919
23920 #. type: TH
23921 #: build/C/man2/uselib.2:31
23922 #, no-wrap
23923 msgid "2005-01-09"
23924 msgstr "2005-01-09"
23925
23926 #. type: Plain text
23927 #: build/C/man2/uselib.2:34
23928 msgid "uselib - load shared library"
23929 msgstr "uselib - 共有ライブラリを選択する"
23930
23931 #. type: Plain text
23932 #: build/C/man2/uselib.2:38
23933 msgid "B<int uselib(const char *>I<library>B<);>"
23934 msgstr "B<int uselib(const char *>I<library>B<);>"
23935
23936 #. type: Plain text
23937 #: build/C/man2/uselib.2:48
23938 msgid ""
23939 "The system call B<uselib>()  serves to load a shared library to be used by "
23940 "the calling process.  It is given a pathname.  The address where to load is "
23941 "found in the library itself.  The library can have any recognized binary "
23942 "format."
23943 msgstr ""
23944 "システムコール B<uselib>()  は、呼び出し元プロセスが使用する 共有ライブラリを"
23945 "ロードする際に使用される。 このシステムコールにはライブラリのパス名を指定す"
23946 "る。 ライブラリをロードするアドレスはライブラリ自身に書かれている。 ライブラ"
23947 "リは認識可能なバイナリ形式であればどんな形式でもよい。"
23948
23949 #. type: Plain text
23950 #: build/C/man2/uselib.2:59
23951 msgid ""
23952 "In addition to all of the error codes returned by B<open>(2)  and "
23953 "B<mmap>(2), the following may also be returned:"
23954 msgstr ""
23955 "B<open>(2)  と B<mmap>(2)  が返すエラーコードに加えて、以下のエラーコードが設"
23956 "定されることがある。"
23957
23958 #. type: Plain text
23959 #: build/C/man2/uselib.2:67
23960 msgid ""
23961 "The library specified by I<library> does not have read or execute "
23962 "permission, or the caller does not have search permission for one of the "
23963 "directories in the path prefix.  (See also B<path_resolution>(7).)"
23964 msgstr ""
23965 "I<library> で指定されたライブラリに対する読み込み許可、または実行許可がな"
23966 "い。 もしくは I<library> が存在するディレクトリかその上位のいずれかに対する検"
23967 "索許可がない (B<path_resolution>(7)  も参照)。"
23968
23969 #. type: Plain text
23970 #: build/C/man2/uselib.2:76
23971 msgid ""
23972 "The file specified by I<library> is not an executable of a known type; for "
23973 "example, it does not have the correct magic numbers."
23974 msgstr ""
23975 "I<library> で指定されたファイルが、実行可能ファイルと認識されるファイル種別で"
23976 "はない。 例えば、正しいマジックナンバーが付いていない。"
23977
23978 #. type: Plain text
23979 #: build/C/man2/uselib.2:80
23980 msgid ""
23981 "B<uselib>()  is Linux-specific, and should not be used in programs intended "
23982 "to be portable."
23983 msgstr ""
23984 "B<uselib>()  は Linux 特有の関数であり、移植性を持たせたいプログラム には使用"
23985 "すべきでない。"
23986
23987 #. type: Plain text
23988 #: build/C/man2/uselib.2:85
23989 msgid ""
23990 "B<uselib>()  was used by early libc startup code to load the shared "
23991 "libraries with names found in an array of names in the binary."
23992 msgstr ""
23993 "初期の libc の起動コードは、 B<uselib>()  を使って、 バイナリ中のリストに書か"
23994 "れている共有ライブラリを リスト中のそのままの名前でロードしていた。"
23995
23996 #.  libc 4.3.1f - changelog 1993-03-02
23997 #.  libc 4.3.4 - changelog 1993-04-21
23998 #. type: Plain text
23999 #: build/C/man2/uselib.2:95
24000 msgid ""
24001 "Since libc 4.3.2, startup code tries to prefix these names with \"/usr/lib"
24002 "\", \"/lib\" and \"\" before giving up.  In libc 4.3.4 and later these names "
24003 "are looked for in the directories found in B<LD_LIBRARY_PATH>, and if not "
24004 "found there, prefixes \"/usr/lib\", \"/lib\" and \"/\" are tried."
24005 msgstr ""
24006 "libc 4.3.2 以降では、これらの名前の前に \"/usr/lib\", \"/lib\", \"\" を つけ"
24007 "て共有ライブラリを探すようになった。 libc 4.3.4 以降では、これらの名前の共有"
24008 "ライブラリをまず B<LD_LIBRARY_PATH> で指定されたディレクトリで探し、見つから"
24009 "なければ、 名前の前に \"/usr/lib\", \"/lib\", \"/\" をつけて探す。"
24010
24011 #. type: Plain text
24012 #: build/C/man2/uselib.2:100
24013 msgid ""
24014 "From libc 4.4.4 on only the library \"/lib/ld.so\" is loaded, so that this "
24015 "dynamic library can load the remaining libraries needed (again using this "
24016 "call).  This is also the state of affairs in libc5."
24017 msgstr ""
24018 "libc 4.4.4 以降では、ライブラリ \"/lib/ld.so\" だけがロードされ、その後で こ"
24019 "の動的ライブラリが (このシステムコールをもう一度使って)  必要な残りのライブラ"
24020 "リをロードできるようになっている。"
24021
24022 #. type: Plain text
24023 #: build/C/man2/uselib.2:102
24024 msgid "glibc2 does not use this call."
24025 msgstr "glibc2 は、このシステムコールを使用しない。"
24026
24027 #. type: Plain text
24028 #: build/C/man2/uselib.2:112
24029 msgid ""
24030 "B<ar>(1), B<gcc>(1), B<ld>(1), B<ldd>(1), B<mmap>(2), B<open>(2), "
24031 "B<dlopen>(3), B<capabilities>(7), B<ld.so>(8)"
24032 msgstr ""
24033 "B<ar>(1), B<gcc>(1), B<ld>(1), B<ldd>(1), B<mmap>(2), B<open>(2), "
24034 "B<dlopen>(3), B<capabilities>(7), B<ld.so>(8)"
24035
24036 #. type: TH
24037 #: build/C/man3/usleep.3:33
24038 #, no-wrap
24039 msgid "USLEEP"
24040 msgstr "USLEEP"
24041
24042 #. type: TH
24043 #: build/C/man3/usleep.3:33
24044 #, no-wrap
24045 msgid "2013-12-10"
24046 msgstr "2013-12-10"
24047
24048 #. type: Plain text
24049 #: build/C/man3/usleep.3:36
24050 msgid "usleep - suspend execution for microsecond intervals"
24051 msgstr "usleep - マイクロ秒単位で実行を延期する"
24052
24053 #. type: Plain text
24054 #: build/C/man3/usleep.3:41
24055 #, no-wrap
24056 msgid "B<int usleep(useconds_t >I<usec>B<);>\n"
24057 msgstr "B<int usleep(useconds_t >I<usec>B<);>\n"
24058
24059 #. type: Plain text
24060 #: build/C/man3/usleep.3:49
24061 msgid "B<usleep>():"
24062 msgstr "B<usleep>():"
24063
24064 #. type: Plain text
24065 #: build/C/man3/usleep.3:75
24066 msgid ""
24067 "The B<usleep>()  function suspends execution of the calling thread for (at "
24068 "least) I<usec> microseconds.  The sleep may be lengthened slightly by any "
24069 "system activity or by the time spent processing the call or by the "
24070 "granularity of system timers."
24071 msgstr ""
24072 "B<usleep>()  関数は (少なくとも) I<usec>マイクロ秒の間、 呼び出し元スレッドの"
24073 "実行を延期する。 システムの動作状況や呼び出しによる時間の消費やシステムタイ"
24074 "マーの粒度によって、 停止時間は設定した値よりも少し延ばされるかもしれない。"
24075
24076 #. type: Plain text
24077 #: build/C/man3/usleep.3:82
24078 msgid ""
24079 "The B<usleep>()  function returns 0 on success.  On error, -1 is returned, "
24080 "with I<errno> set to indicate the cause of the error."
24081 msgstr ""
24082 "B<usleep>() 関数は成功すると 0 を返す。 エラーの場合、 -1 が返され、 "
24083 "I<errno> にエラーの原因を示す値が設定される。"
24084
24085 #. type: Plain text
24086 #: build/C/man3/usleep.3:87
24087 msgid "Interrupted by a signal; see B<signal>(7)."
24088 msgstr "シグナルによって中断された。 B<signal>(7)  参照。"
24089
24090 #. type: Plain text
24091 #: build/C/man3/usleep.3:91
24092 msgid ""
24093 "I<usec> is not smaller than 1000000.  (On systems where that is considered "
24094 "an error.)"
24095 msgstr "I<usec> が 1000000 以上だった。 (これをエラーとみなすシステムのみ)"
24096
24097 #. type: Plain text
24098 #: build/C/man3/usleep.3:96
24099 msgid "The B<usleep>()  function is thread-safe."
24100 msgstr "B<usleep>() 関数はスレッドセーフである。"
24101
24102 #. type: Plain text
24103 #: build/C/man3/usleep.3:103
24104 msgid ""
24105 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 declares this function obsolete; use "
24106 "B<nanosleep>(2)  instead.  POSIX.1-2008 removes the specification of "
24107 "B<usleep>()."
24108 msgstr ""
24109 "4.3BSD, POSIX.1-2001.  POSIX.1-2001 では、この関数は過去のものと宣言されてい"
24110 "る。 代わりに B<nanosleep>(2)  を使うこと。 POSIX.1-2008 では、 B<usleep>()  "
24111 "の規定が削除されている。"
24112
24113 #. type: Plain text
24114 #: build/C/man3/usleep.3:110
24115 msgid ""
24116 "On the original BSD implementation, and in glibc before version 2.2.2, the "
24117 "return type of this function is I<void>.  The POSIX version returns I<int>, "
24118 "and this is also the prototype used since glibc 2.2.2."
24119 msgstr ""
24120 "もともとの BSD の実装や、バージョン 2.2.2 より前の glibc では、 この関数の返"
24121 "り値の型は I<void> である。 POSIX 版は I<int> を返し、このプロトタイプは "
24122 "glibc 2.2.2 以降で使用されている。"
24123
24124 #. type: Plain text
24125 #: build/C/man3/usleep.3:114
24126 msgid ""
24127 "Only the B<EINVAL> error return is documented by SUSv2 and POSIX.1-2001."
24128 msgstr ""
24129 "エラーとして B<EINVAL> を返すというのは SUSv2 と POSIX.1-2001 でのみ文書化さ"
24130 "れている。"
24131
24132 #. type: Plain text
24133 #: build/C/man3/usleep.3:122
24134 msgid ""
24135 "The type I<useconds_t> is an unsigned integer type capable of holding "
24136 "integers in the range [0,1000000].  Programs will be more portable if they "
24137 "never mention this type explicitly.  Use"
24138 msgstr ""
24139 "I<useconds_t> 型は [0,1000000] の範囲の整数を扱うことができる 符号なし整数型"
24140 "である。 明示的にこの型を使わないことでプログラムの移植性がより高まる。 以下"
24141 "のように使うこと。"
24142
24143 #. type: Plain text
24144 #: build/C/man3/usleep.3:130
24145 #, no-wrap
24146 msgid ""
24147 "#include E<lt>unistd.hE<gt>\n"
24148 "\\&...\n"
24149 "    unsigned int usecs;\n"
24150 "\\&...\n"
24151 "    usleep(usecs);\n"
24152 msgstr ""
24153 "#include E<lt>unistd.hE<gt>\n"
24154 "\\&...\n"
24155 "    unsigned int usecs;\n"
24156 "\\&...\n"
24157 "    usleep(usecs);\n"
24158
24159 #. type: Plain text
24160 #: build/C/man3/usleep.3:147
24161 msgid ""
24162 "The interaction of this function with the B<SIGALRM> signal, and with other "
24163 "timer functions such as B<alarm>(2), B<sleep>(3), B<nanosleep>(2), "
24164 "B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), "
24165 "B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), "
24166 "B<ualarm>(3)  is unspecified."
24167 msgstr ""
24168 "この関数と、 B<SIGALRM> シグナルあるいは B<alarm>(2), B<sleep>(3), "
24169 "B<nanosleep>(2), B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), "
24170 "B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), "
24171 "B<ualarm>(3)  といったその他のタイマー関数を同時に使った場合の動作は未定義で"
24172 "ある。"
24173
24174 #. type: Plain text
24175 #: build/C/man3/usleep.3:156
24176 msgid ""
24177 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
24178 "B<setitimer>(2), B<sleep>(3), B<ualarm>(3), B<time>(7)"
24179 msgstr ""
24180 "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), "
24181 "B<setitimer>(2), B<sleep>(3), B<ualarm>(3), B<time>(7)"
24182
24183 #. type: TH
24184 #: build/C/man2/vfork.2:28
24185 #, no-wrap
24186 msgid "VFORK"
24187 msgstr "VFORK"
24188
24189 #. type: TH
24190 #: build/C/man2/vfork.2:28
24191 #, no-wrap
24192 msgid "2012-08-05"
24193 msgstr "2012-08-05"
24194
24195 #. type: Plain text
24196 #: build/C/man2/vfork.2:31
24197 msgid "vfork - create a child process and block parent"
24198 msgstr "vfork - 子プロセスを生成し親プロセスを停止させる"
24199
24200 #. type: Plain text
24201 #: build/C/man2/vfork.2:37
24202 msgid "B<pid_t vfork(void);>"
24203 msgstr "B<pid_t vfork(void);>"
24204
24205 #. type: Plain text
24206 #: build/C/man2/vfork.2:44
24207 msgid "B<vfork>():"
24208 msgstr "B<vfork>():"
24209
24210 #. type: SS
24211 #: build/C/man2/vfork.2:63
24212 #, no-wrap
24213 msgid "Standard description"
24214 msgstr "規格の説明"
24215
24216 #. type: Plain text
24217 #: build/C/man2/vfork.2:82
24218 msgid ""
24219 "(From POSIX.1)  The B<vfork>()  function has the same effect as B<fork>(2), "
24220 "except that the behavior is undefined if the process created by B<vfork>()  "
24221 "either modifies any data other than a variable of type I<pid_t> used to "
24222 "store the return value from B<vfork>(), or returns from the function in "
24223 "which B<vfork>()  was called, or calls any other function before "
24224 "successfully calling B<_exit>(2)  or one of the B<exec>(3)  family of "
24225 "functions."
24226 msgstr ""
24227 "(POSIX.1 より引用)  B<vfork>()  関数は B<fork>(2)  と同じ働きをするが、 "
24228 "B<vfork>()  で作成されたプロセスが B<vfork>()  からの返り値を格納している "
24229 "I<pid_t> 型の変数以外を変更したり、 B<vfork>()  を呼び出している関数から "
24230 "return したり、 B<_exit>(2)  や B<exec>(3)  族の関数をコールする前に他の関数"
24231 "をコールした場合の動作が 未定義であるという点が異なる。"
24232
24233 #. type: SS
24234 #: build/C/man2/vfork.2:82
24235 #, no-wrap
24236 msgid "Linux description"
24237 msgstr "LINUX での説明"
24238
24239 #. type: Plain text
24240 #: build/C/man2/vfork.2:89
24241 msgid ""
24242 "B<vfork>(), just like B<fork>(2), creates a child process of the calling "
24243 "process.  For details and return value and errors, see B<fork>(2)."
24244 msgstr ""
24245 "B<vfork>()  は B<fork>(2)  と全く同じように呼び出したプロセスの子プロセスを生"
24246 "成する。 詳しい説明と返り値、エラーについては B<fork>(2)  を参照すること。"
24247
24248 #. type: Plain text
24249 #: build/C/man2/vfork.2:98
24250 msgid ""
24251 "B<vfork>()  is a special case of B<clone>(2).  It is used to create new "
24252 "processes without copying the page tables of the parent process.  It may be "
24253 "useful in performance-sensitive applications where a child is created which "
24254 "then immediately issues an B<execve>(2)."
24255 msgstr ""
24256 "B<vfork>()  は B<clone>(2)  の特殊な場合である。 親プロセスのページテーブルの"
24257 "コピーを行わずに新しいプロセスを 作成するために使用する。これは性能に敏感なア"
24258 "プリケーションにおいて 子プロセスを生成してすぐに B<execve>(2)  する場合に有"
24259 "用かもしれない。"
24260
24261 #. type: Plain text
24262 #: build/C/man2/vfork.2:115
24263 msgid ""
24264 "B<vfork>()  differs from B<fork>(2)  in that the calling thread is suspended "
24265 "until the child terminates (either normally, by calling B<_exit>(2), or "
24266 "abnormally, after delivery of a fatal signal), or it makes a call to "
24267 "B<execve>(2).  Until that point, the child shares all memory with its "
24268 "parent, including the stack.  The child must not return from the current "
24269 "function or call B<exit>(3), but may call B<_exit>(2)."
24270 msgstr ""
24271 "B<vfork>() は B<fork>(2) と違い、子プロセスが終了するか、\n"
24272 "B<execve>(2) をコールするまで呼び出し元のスレッドを停止 (suspend) させる。\n"
24273 "子プロセスの終了は、B<_exit>(2) の呼び出しによる通常終了、致命的なシグナル"
24274 "の\n"
24275 "配送後の異常終了の二つのケースがある。\n"
24276 "この時点までは、子プロセスはスタックを含む全てのメモリーを親プロセスと共有す"
24277 "る。\n"
24278 "子プロセスは現在の関数から return してはならず、\n"
24279 "B<exit>(3) もコールしてはならないが、B<_exit>(2) ならばコールしてもよい。"
24280
24281 #. type: Plain text
24282 #: build/C/man2/vfork.2:126
24283 msgid ""
24284 "As with B<fork>(2), the child process created by B<vfork>()  inherits copies "
24285 "of various of the caller's process attributes (e.g., file descriptors, "
24286 "signal dispositions, and current working directory); the B<vfork>()  call "
24287 "differs only in the treatment of the virtual address space, as described "
24288 "above."
24289 msgstr ""
24290 "B<fork>(2) と同様に、 B<vfork>() で作成された子プロセスは、\n"
24291 "(ファイルディスクリプター、シグナル配送定義、カレントワーキングディレクトリな"
24292 "どの)\n"
24293 "呼び出し元のプロセスの各種の属性を継承する。\n"
24294 "B<vfork>() では、上で説明した仮想アドレス空間の扱いだけが異なる。"
24295
24296 #. type: Plain text
24297 #: build/C/man2/vfork.2:132
24298 msgid ""
24299 "Signals sent to the parent arrive after the child releases the parent's "
24300 "memory (i.e., after the child terminates or calls B<execve>(2))."
24301 msgstr ""
24302 "親プロセスへ送られたシグナルは、子プロセスが親プロセスのメモリーを解放した"
24303 "後\n"
24304 "(すなわち、子プロセスが終了するか B<execve>(2) を呼んだ後) に到着する。"
24305
24306 #. type: SS
24307 #: build/C/man2/vfork.2:132
24308 #, no-wrap
24309 msgid "Historic description"
24310 msgstr "歴史的な説明"
24311
24312 #. type: Plain text
24313 #: build/C/man2/vfork.2:159
24314 msgid ""
24315 "Under Linux, B<fork>(2)  is implemented using copy-on-write pages, so the "
24316 "only penalty incurred by B<fork>(2)  is the time and memory required to "
24317 "duplicate the parent's page tables, and to create a unique task structure "
24318 "for the child.  However, in the bad old days a B<fork>(2)  would require "
24319 "making a complete copy of the caller's data space, often needlessly, since "
24320 "usually immediately afterward an B<exec>(3)  is done.  Thus, for greater "
24321 "efficiency, BSD introduced the B<vfork>()  system call, which did not fully "
24322 "copy the address space of the parent process, but borrowed the parent's "
24323 "memory and thread of control until a call to B<execve>(2)  or an exit "
24324 "occurred.  The parent process was suspended while the child was using its "
24325 "resources.  The use of B<vfork>()  was tricky: for example, not modifying "
24326 "data in the parent process depended on knowing which variables were held in "
24327 "a register."
24328 msgstr ""
24329 "Linux において B<fork>(2)  は書き込み時コピー (copy-on-write) ページを使用し"
24330 "て実装されている。 そのため B<fork>(2)  を使用することによって被る損害は親プ"
24331 "ロセスのページテーブルを 複製するために必要な時間とメモリーだけである。 しか"
24332 "しながら、忌しき昔には B<fork>(2)  は呼び出したプロセスのデータ空間の全てのコ"
24333 "ピーしていたが、 これはしばしば不必要であった。なぜなら、たいていはすぐ後に "
24334 "B<exec>(3)  を実行していたからである。 この場合の効率を上げるために BSD は "
24335 "B<vfork>()  システムコールを導入して親プロセスのアドレス空間を完全にコピー す"
24336 "るかわりに、 B<execve>(2)  をコールするか exit が起きるまで親プロセスのメモ"
24337 "リーと制御スレッド を借りるようにした。 親プロセスは子プロセスがその資源を使"
24338 "用している間は停止された。 B<vfork>()  は使いにくいものであった: 例えば、親プ"
24339 "ロセスの変数を変更しな いようにするためにはどの変数がレジスターに保持されてい"
24340 "るかを知らな ければならなかった。"
24341
24342 #. type: Plain text
24343 #: build/C/man2/vfork.2:163
24344 msgid ""
24345 "4.3BSD; POSIX.1-2001 (but marked OBSOLETE).  POSIX.1-2008 removes the "
24346 "specification of B<vfork>()."
24347 msgstr ""
24348 "4.3BSD; POSIX.1-2001 (廃止予定とされている)。\n"
24349 "POSIX.1-2008 では B<vfork>() の規定が削除されている。"
24350
24351 #.  In AIXv3.1 vfork is equivalent to fork.
24352 #. type: Plain text
24353 #: build/C/man2/vfork.2:174
24354 msgid ""
24355 "The requirements put on B<vfork>()  by the standards are weaker than those "
24356 "put on B<fork>(2), so an implementation where the two are synonymous is "
24357 "compliant.  In particular, the programmer cannot rely on the parent "
24358 "remaining blocked until the child either terminates or calls B<execve>(2), "
24359 "and cannot rely on any specific behavior with respect to shared memory."
24360 msgstr ""
24361 "B<vfork>() コールは他のオペレーティングシステムの同名のコールと ちょっと似\n"
24362 "ているかもしれない。規格が B<vfork>() に要求していることは、 B<fork>(2) に"
24363 "要\n"
24364 "求していることよりは弱い。したがって、 両者を同じものとして実装しても、規格"
24365 "に\n"
24366 "準拠していることになる。 特にプログラマーは、子プロセスが終了するか\n"
24367 "B<execve>(2) を呼び出すまで親プロセスが停止していることや、メモリーを共有する"
24368 "こ\n"
24369 "とによる特殊な動作をあてにすべきではない。"
24370
24371 #. type: Plain text
24372 #: build/C/man2/vfork.2:193
24373 msgid ""
24374 "Some consider the semantics of B<vfork>()  to be an architectural blemish, "
24375 "and the 4.2BSD man page stated: \"This system call will be eliminated when "
24376 "proper system sharing mechanisms are implemented.  Users should not depend "
24377 "on the memory sharing semantics of B<vfork>()  as it will, in that case, be "
24378 "made synonymous to B<fork>(2).\" However, even though modern memory "
24379 "management hardware has decreased the performance difference between "
24380 "B<fork>(2)  and B<vfork>(), there are various reasons why Linux and other "
24381 "systems have retained B<vfork>():"
24382 msgstr ""
24383 "B<vfork>() の動作は構造的な欠陥と考える人もいるだろうし、\n"
24384 "BSD のマニュアルには、「このシステムコールは妥当なシステム共有機構が実装さ\n"
24385 "れた場合には削除される。ユーザーは B<vfork>() のメモリー共有機能に依存するべ"
24386 "き\n"
24387 "ではない。何故ならば、このシステムコール が削除された場合には、それは\n"
24388 "B<fork>(2) の同義語とされるからである。」と書かれている。しかしながら、\n"
24389 "最近のメモリー管理ハードウェアにより B<fork>(2) と B<vfork>() の間の性能差"
24390 "が\n"
24391 "減ったとはいえ、 Linux や他のシステムで B<vfork>() が残されているのには\n"
24392 "いくつか理由がある:"
24393
24394 #. type: Plain text
24395 #: build/C/man2/vfork.2:197
24396 msgid ""
24397 "Some performance-critical applications require the small performance "
24398 "advantage conferred by B<vfork>()."
24399 msgstr ""
24400 "性能に厳しいアプリケーションでは、 B<vfork>() により得られる\n"
24401 "小さな性能上のメリットが必要な場合がある。"
24402
24403 #.  http://stackoverflow.com/questions/4259629/what-is-the-difference-between-fork-and-vfork
24404 #.  http://developers.sun.com/solaris/articles/subprocess/subprocess.html
24405 #.  http://mailman.uclinux.org/pipermail/uclinux-dev/2009-April/000684.html
24406 #. type: Plain text
24407 #: build/C/man2/vfork.2:213
24408 msgid ""
24409 "B<vfork>()  can be implemented on systems that lack a memory-management unit "
24410 "(MMU), but B<fork>(2)  can't be implemented on such systems.  (POSIX.1-2008 "
24411 "removed B<vfork>()  from the standard; the POSIX rationale for the "
24412 "B<posix_spawn>(3)  function notes that that function, which provides "
24413 "functionality equivalent to B<fork>(2)+B<exec>(3), is designed to be "
24414 "implementable on systems that lack an MMU.)"
24415 msgstr ""
24416 "B<vfork>() はメモリー管理ユニット (MMU) を持たないシステムでも実装すること\n"
24417 "ができるが、そのようなシステムで B<fork>(2) を実装することはできない。\n"
24418 "(POSIX.1-2008 では B<vfork>() が標準から削除された。\n"
24419 "B<posix_spawn>(3) 関数の POSIX の原理 (rationale) には、\n"
24420 "B<fork>(2)+B<exec>(3) と等価な機能を提供する B<posix_spawn>(3) は、\n"
24421 "MMU を持たないシステムでも実装できるように設計されたとの注記がある。)"
24422
24423 #. type: SS
24424 #: build/C/man2/vfork.2:213
24425 #, no-wrap
24426 msgid "Linux notes"
24427 msgstr "Linux での注意"
24428
24429 #. type: Plain text
24430 #: build/C/man2/vfork.2:224
24431 msgid ""
24432 "Fork handlers established using B<pthread_atfork>(3)  are not called when a "
24433 "multithreaded program employing the NPTL threading library calls "
24434 "B<vfork>().  Fork handlers are called in this case in a program using the "
24435 "LinuxThreads threading library.  (See B<pthreads>(7)  for a description of "
24436 "Linux threading libraries.)"
24437 msgstr ""
24438 "B<pthread_atfork>(3)  を使って設定された fork ハンドラーは NPTL スレッドライ"
24439 "ブラリコールを採用したマルチスレッドプログラムでは 呼び出されない。一方、"
24440 "LinuxThreads スレッドライブラリを使った プログラムでは、fork ハンドラーは呼び"
24441 "出される。 (Linux のスレッドライブラリの説明は B<pthreads>(7)  を参照。)"
24442
24443 #. type: Plain text
24444 #: build/C/man2/vfork.2:232
24445 msgid ""
24446 "A call to B<vfork>()  is equivalent to calling B<clone>(2)  with I<flags> "
24447 "specified as:"
24448 msgstr ""
24449 "B<vfork>() の呼び出しは、以下の I<flags> を指定して B<clone>(2) を呼び出す\n"
24450 "のと等価である。"
24451
24452 #. type: Plain text
24453 #: build/C/man2/vfork.2:234
24454 #, no-wrap
24455 msgid "     CLONE_VM | CLONE_VFORK | SIGCHLD\n"
24456 msgstr "     CLONE_VM | CLONE_VFORK | SIGCHLD\n"
24457
24458 #.  In the release notes for 4.2BSD Sam Leffler wrote: `vfork: Is still
24459 #.  present, but definitely on its way out'.
24460 #. type: Plain text
24461 #: build/C/man2/vfork.2:252
24462 msgid ""
24463 "The B<vfork>()  system call appeared in 3.0BSD.  In 4.4BSD it was made "
24464 "synonymous to B<fork>(2)  but NetBSD introduced it again, cf.  E<.UR http://"
24465 "www.netbsd.org\\:/Documentation\\:/kernel\\:/vfork.html> E<.UE .> In Linux, "
24466 "it has been equivalent to B<fork>(2)  until 2.2.0-pre6 or so.  Since 2.2.0-"
24467 "pre9 (on i386, somewhat later on other architectures) it is an independent "
24468 "system call.  Support was added in glibc 2.0.112."
24469 msgstr ""
24470 "B<vfork>()  システムコールは 3.0BSD に現われた。 4.4BSD において B<fork>(2)  "
24471 "の同義語となったが、NetBSD では再び導入された。 E<.UR http://www.netbsd.org"
24472 "\\:/Documentation\\:/kernel\\:/vfork.html> E<.UE> を参照。 Linux では 2.2.0-"
24473 "pre6 あたりまでは B<fork>(2)  と等価であった。(i386 では) 2.2.0-pre9 から (他"
24474 "のアーキテクチャーでは 少し遅れて) 独立したシステムコールとなった。 glibc で"
24475 "のサポートは glibc-2.0.112 で追加された。"
24476
24477 #.  As far as I can tell, the following is not true in 2.6.19:
24478 #.  Currently (Linux 2.3.25),
24479 #.  .BR strace (1)
24480 #.  cannot follow
24481 #.  .BR vfork ()
24482 #.  and requires a kernel patch.
24483 #. type: Plain text
24484 #: build/C/man2/vfork.2:273
24485 msgid ""
24486 "Details of the signal handling are obscure and differ between systems.  The "
24487 "BSD man page states: \"To avoid a possible deadlock situation, processes "
24488 "that are children in the middle of a B<vfork>()  are never sent B<SIGTTOU> "
24489 "or B<SIGTTIN> signals; rather, output or I<ioctl>s are allowed and input "
24490 "attempts result in an end-of-file indication.\""
24491 msgstr ""
24492 "シグナルの扱いの詳細は不明瞭でシステムごとに異っている。 BSD のマニュアルに"
24493 "は、 「デッドロック状態になる可能性があるので B<vfork>()  の途中の子プロセス"
24494 "に B<SIGTTOU> や B<SIGTTIN> シグナルを送信してはならない; さらに出力や "
24495 "I<ioctl> は許されるが、入力を試みた場合には結果はファイル終端 (EOF) にな"
24496 "る。」 と書かれている。"
24497
24498 #. type: Plain text
24499 #: build/C/man2/vfork.2:279
24500 msgid "B<clone>(2), B<execve>(2), B<fork>(2), B<unshare>(2), B<wait>(2)"
24501 msgstr "B<clone>(2), B<execve>(2), B<fork>(2), B<unshare>(2), B<wait>(2)"
24502
24503 #. type: TH
24504 #: build/C/man2/vhangup.2:28
24505 #, no-wrap
24506 msgid "VHANGUP"
24507 msgstr "VHANGUP"
24508
24509 #. type: TH
24510 #: build/C/man2/vhangup.2:28
24511 #, no-wrap
24512 msgid "2007-07-26"
24513 msgstr "2007-07-26"
24514
24515 #. type: Plain text
24516 #: build/C/man2/vhangup.2:31
24517 msgid "vhangup - virtually hangup the current terminal"
24518 msgstr "vhangup - 現在の端末を仮想的に (virtualy) ハングアップ (hangup) させる"
24519
24520 #. type: Plain text
24521 #: build/C/man2/vhangup.2:35
24522 msgid "B<int vhangup(void);>"
24523 msgstr "B<int vhangup(void);>"
24524
24525 #. type: Plain text
24526 #: build/C/man2/vhangup.2:44
24527 msgid ""
24528 "B<vhangup>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
24529 msgstr ""
24530 "B<vhangup>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
24531
24532 #. type: Plain text
24533 #: build/C/man2/vhangup.2:50
24534 msgid ""
24535 "B<vhangup>()  simulates a hangup on the current terminal.  This call "
24536 "arranges for other users to have a ``clean'' terminal at login time."
24537 msgstr ""
24538 "B<vhangup>()  は現在の端末 (terminal) でハングアップをシミュレートする。この"
24539 "コールは他のユーザーがログインした時に綺麗 (clean) な端末を得ることができるよ"
24540 "う手配する。"
24541
24542 #. type: Plain text
24543 #: build/C/man2/vhangup.2:63
24544 msgid ""
24545 "The calling process has insufficient privilege to call B<vhangup>(); the "
24546 "B<CAP_SYS_TTY_CONFIG> capability is required."
24547 msgstr ""
24548 "呼び出し元プロセスに B<vhangup>()  を呼び出すための十分な特権がない。 "
24549 "B<CAP_SYS_TTY_CONFIG> ケーパビリティ (capability) が必要である。"
24550
24551 #. type: Plain text
24552 #: build/C/man2/vhangup.2:66
24553 msgid ""
24554 "This call is Linux-specific, and should not be used in programs intended to "
24555 "be portable."
24556 msgstr ""
24557 "このコールは Linux 特有であり、移植を意図したプログラムで 使用してはいけな"
24558 "い。"
24559
24560 #. type: Plain text
24561 #: build/C/man2/vhangup.2:69
24562 msgid "B<capabilities>(7), B<init>(1)"
24563 msgstr "B<capabilities>(7), B<init>(1)"
24564
24565 #. type: TH
24566 #: build/C/man2/execveat.2:26
24567 #, no-wrap
24568 msgid "EXECVEAT"
24569 msgstr "EXECVEAT"
24570
24571 #. type: Plain text
24572 #: build/C/man2/execveat.2:29
24573 msgid "execveat - execute program relative to a directory file descriptor"
24574 msgstr ""
24575 "execveat - ディレクトリファイルディスクリプターからの相対パスで指定されるプロ"
24576 "グラムを実行する"
24577
24578 #. type: Plain text
24579 #: build/C/man2/execveat.2:33
24580 msgid "B<int execveat(int >I<dirfd>B<, const char *>I<pathname>B<,>"
24581 msgstr "B<int execveat(int >I<dirfd>B<, const char *>I<pathname>B<,>"
24582
24583 #. type: Plain text
24584 #: build/C/man2/execveat.2:35
24585 msgid "B< char *const >I<argv>B<[], char *const >I<envp>B<[],>"
24586 msgstr "B< char *const >I<argv>B<[], char *const >I<envp>B<[],>"
24587
24588 #. type: Plain text
24589 #: build/C/man2/execveat.2:37
24590 msgid "B< int >I<flags>B<);>"
24591 msgstr "B< int >I<flags>B<);>"
24592
24593 #.  commit 51f39a1f0cea1cacf8c787f652f26dfee9611874
24594 #. type: Plain text
24595 #: build/C/man2/execveat.2:48
24596 msgid ""
24597 "The B<execveat>()  system call executes the program referred to by the "
24598 "combination of I<dirfd> and I<pathname>.  It operates in exactly the same "
24599 "way as B<execve>(2), except for the differences described in this manual "
24600 "page."
24601 msgstr ""
24602 "B<execveat>() システムコールは I<dirfd> と I<pathname> の組み合わせで参照され"
24603 "るプログラムを実行する。 B<execve>(2) と全く同様に動作するが、 以下で説明する"
24604 "点が異なる。"
24605
24606 #. type: Plain text
24607 #: build/C/man2/execveat.2:58
24608 msgid ""
24609 "If the pathname given in I<pathname> is relative, then it is interpreted "
24610 "relative to the directory referred to by the file descriptor I<dirfd> "
24611 "(rather than relative to the current working directory of the calling "
24612 "process, as is done by B<execve>(2)  for a relative pathname)."
24613 msgstr ""
24614 "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスク"
24615 "リプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される "
24616 "(B<execve>(2) に相対パス名を渡した場合のように、呼び出したプロセスのカレント"
24617 "ワーキングディレクトリに対する相対パスではない)。"
24618
24619 #. type: Plain text
24620 #: build/C/man2/execveat.2:70
24621 msgid ""
24622 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
24623 "then I<pathname> is interpreted relative to the current working directory of "
24624 "the calling process (like B<execve>(2))."
24625 msgstr ""
24626 "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> "
24627 "の場合、 (B<execve>(2) と同様に) I<pathname> は呼び出したプロセスのカレント"
24628 "ワーキングディレクトリに対する相対パスと解釈される。"
24629
24630 #. type: Plain text
24631 #: build/C/man2/execveat.2:86
24632 msgid ""
24633 "If I<pathname> is an empty string and the B<AT_EMPTY_PATH> flag is "
24634 "specified, then the file descriptor I<dirfd> specifies the file to be "
24635 "executed (i.e., I<dirfd> refers to an executable file, rather than a "
24636 "directory)."
24637 msgstr ""
24638 "I<pathname> が空文字列で、 B<AT_EMPTY_PATH> フラグが指定されている場合、 ファ"
24639 "イルディスクリプター I<dirfd> は実行するファイルを指定する (すなわち "
24640 "I<dirfd> はディレクトリではなく実行ファイルを参照する)。"
24641
24642 #. type: Plain text
24643 #: build/C/man2/execveat.2:90
24644 msgid ""
24645 "The I<flags> argument is a bit mask that can include zero or more of the "
24646 "following flags:"
24647 msgstr ""
24648 "I<flags> 引き数は、以下に示す値の 0 個以上を指定できるビットマスクである。"
24649
24650 #. type: TP
24651 #: build/C/man2/execveat.2:90
24652 #, no-wrap
24653 msgid "B<AT_EMPTY_PATH>"
24654 msgstr "B<AT_EMPTY_PATH>"
24655
24656 #. type: Plain text
24657 #: build/C/man2/execveat.2:100
24658 msgid ""
24659 "If I<pathname> is an empty string, operate on the file referred to by "
24660 "I<dirfd> (which may have been obtained using the B<open>(2)  B<O_PATH> flag)."
24661 msgstr ""
24662 "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して動作を行う "
24663 "(I<dirfd> は B<open>(2() B<O_PATH> フラグを使って取得できる)。"
24664
24665 #. type: Plain text
24666 #: build/C/man2/execveat.2:108
24667 msgid ""
24668 "If the file identified by I<dirfd> and a non-NULL I<pathname> is a symbolic "
24669 "link, then the call fails with the error B<ELOOP>."
24670 msgstr ""
24671 "I<dirfd> と NULL でない I<pathname> で指定されたファイルがシンボリックリンク"
24672 "の場合、 呼び出しはエラー B<ELOOP> で失敗する。"
24673
24674 #. type: Plain text
24675 #: build/C/man2/execveat.2:115
24676 msgid ""
24677 "On success, B<execveat>()  does not return.  On error, -1 is returned, and "
24678 "I<errno> is set appropriately."
24679 msgstr ""
24680 "成功すると B<execveat>()  は返らない。エラーの場合は -1 を返し、 I<errno> を"
24681 "適切に設定する。"
24682
24683 #. type: Plain text
24684 #: build/C/man2/execveat.2:122
24685 msgid ""
24686 "The same errors that occur for B<execve>(2)  can also occur for "
24687 "B<execveat>().  The following additional errors can occur for B<execveat>():"
24688 msgstr ""
24689 "B<execve>() で発生するのと同じエラーが B<execveat>() でも起こる。 "
24690 "B<execveat>() では以下のエラーも発生する。"
24691
24692 #. type: Plain text
24693 #: build/C/man2/execveat.2:140
24694 msgid ""
24695 "I<flags> includes B<AT_SYMLINK_NOFOLLOW> and the file identified by I<dirfd> "
24696 "and a non-NULL I<pathname> is a symbolic link."
24697 msgstr ""
24698 "I<flags> に B<AT_SYMLINK_NOFOLLOW> が指定されていて、 I<dirfd> と NULL でな"
24699 "い I<pathname> で指定されたファイルがシンボリックリンクである。"
24700
24701 #. type: Plain text
24702 #: build/C/man2/execveat.2:154
24703 msgid ""
24704 "The program identified by I<dirfd> and I<pathname> requires the use of an "
24705 "interpreter program (such as a script starting with \"#!\"), but the file "
24706 "descriptor I<dirfd> was opened with the B<O_CLOEXEC> flag, with the result "
24707 "that the program file is inaccessible to the launched interpreter.  See BUGS."
24708 msgstr ""
24709 "I<dirfd> と I<pathname> で指定されるプログラムはインタープリタープログラムを"
24710 "使用する必要があるが (例えば \"#!\" で始まるスクリプト)、 ファイルディスクリ"
24711 "プター I<dirfd> が B<O_CLOEXEC> フラグ付きでオープンされており、 その結果プロ"
24712 "グラムファイルは起動されたインタープリターにアクセスできないことになる。 「バ"
24713 "グ」を参照。"
24714
24715 #.  FIXME . check for glibc support in a future release
24716 #. type: Plain text
24717 #: build/C/man2/execveat.2:165
24718 msgid ""
24719 "B<execveat>()  was added to Linux in kernel 3.19.  GNU C library support is "
24720 "pending."
24721 msgstr ""
24722 "B<execveat>()  はバージョン 3.19 で Linux に追加された。 GNU C ライブラリによ"
24723 "るサポートは検討中である。"
24724
24725 #. type: Plain text
24726 #: build/C/man2/execveat.2:169
24727 msgid "The B<execveat>()  system call is Linux-specific."
24728 msgstr "B<execveat>() システムコールは Linux 固有である。"
24729
24730 #. type: Plain text
24731 #: build/C/man2/execveat.2:179
24732 msgid ""
24733 "In addition to the reasons explained in B<openat>(2), the B<execveat>()  "
24734 "system call is also needed to allow B<fexecve>(3)  to be implemented on "
24735 "systems that do not have the I</proc> filesystem mounted."
24736 msgstr ""
24737 "B<openat>(2) で説明されている理由に加え、 B<execveat>() システムコールは、 "
24738 "B<fexecve>(3) を I</proc> ファイルシステムがマウントされていないシステムで実"
24739 "装するためにも必要である。"
24740
24741 #. type: Plain text
24742 #: build/C/man2/execveat.2:202
24743 msgid ""
24744 "When asked to execute a script file, the I<argv[0]> that is passed to the "
24745 "script interpreter is a string of the form I</dev/fd/N> or I</dev/fd/N/P>, "
24746 "where I<N> is the number of the file descriptor passed via the I<dirfd> "
24747 "argument.  A string of the first form occurs when B<AT_EMPTY_PATH> is "
24748 "employed.  A string of the second form occurs when the script is specified "
24749 "via both I<dirfd> and I<pathname>; in this case, I<P> is the value given in "
24750 "I<pathname>."
24751 msgstr ""
24752 "スクリプトファイルを実行するように要求された際、 スクリプトインタープリターに"
24753 "渡される I<argv[0]> は、 I</dev/fd/N> 形式または I</dev/fd/N/P> 形式の文字列"
24754 "である。 ここで I<N> は I<dirfd> 引き数で渡されたファイルディスクリプター数で"
24755 "ある。 最初の形式の文字列となるのは、 B<AT_EMPTY_PATH> が使用された場合であ"
24756 "る。 2 番目の形式の文字列になるのは、 スクリプトが I<dirfd> と I<pathname> の"
24757 "両方を使って指定された場合である。 このとき I<P> は I<pathname> に指定された"
24758 "値である。"
24759
24760 #. type: Plain text
24761 #: build/C/man2/execveat.2:210
24762 msgid ""
24763 "For the same reasons described in B<fexecve>(3), the natural idiom when "
24764 "using B<execveat>(2)  is to set the close-on-exec flag on I<dirfd>.  (But "
24765 "see BUGS.)"
24766 msgstr ""
24767 "B<fexecve>(3) で説明されているのと同じ理由で、 B<execveat>(2) を使う際の理に"
24768 "かなった方法は I<dirfd> に close-on-exec フラグをセットすることである (ただし"
24769 "「バグ」を参照のこと)。"
24770
24771 #. type: Plain text
24772 #: build/C/man2/execveat.2:215
24773 msgid ""
24774 "The B<ENOENT> error described above means that it is not possible to set the "
24775 "close-on-exec flag on the file descriptor given to a call of the form:"
24776 msgstr ""
24777 "上記で説明したエラー B<ENOENT> は、 以下の形式の呼び出しに渡すファイルディス"
24778 "クリプターで close-on-exec フラグをセットできないことを意味している。"
24779
24780 #. type: Plain text
24781 #: build/C/man2/execveat.2:217
24782 #, no-wrap
24783 msgid "    execveat(fd, \"\", argv, envp, AT_EMPTY_PATH);\n"
24784 msgstr "    execveat(fd, \"\", argv, envp, AT_EMPTY_PATH);\n"
24785
24786 #
24787 #.  For an example, see Michael Kerrisk's 2015-01-10 reply in this LKML
24788 #.  thread (http://thread.gmane.org/gmane.linux.kernel/1836105/focus=20229):
24789 #.      Subject: [PATCHv10 man-pages 5/5] execveat.2: initial man page.\"                        for execveat(2
24790 #.      Date: Mon, 24 Nov 2014 11:53:59 +0000
24791 #. type: Plain text
24792 #: build/C/man2/execveat.2:229
24793 msgid ""
24794 "However, the inability to set the close-on-exec flag means that a file "
24795 "descriptor referring to the script leaks through to the script itself.  As "
24796 "well as wasting a file descriptor, this leakage can lead to file-descriptor "
24797 "exhaustion in scenarios where scripts recursively employ B<execveat>()."
24798 msgstr ""
24799 "しかしながら、 close-on-exec フラグをセットできないということは、 スクリプト"
24800 "を参照するファイルディスクリプターはスクリプト自身に見えてしまうということで"
24801 "ある。 ファイルディスクリプターを無駄に使うだけでなく、 ファイルディスクリプ"
24802 "ターが見えてしまうことにより、 スクリプトが B<execveat>() を再帰的に利用する"
24803 "状況ではファイルディスクリプターの枯渇につながる可能性がある。"
24804
24805 #. type: Plain text
24806 #: build/C/man2/execveat.2:233
24807 msgid "B<execve>(2), B<openat>(2), B<fexecve>(3)"
24808 msgstr "B<execve>(2), B<openat>(2), B<fexecve>(3)"