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.
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2015-01-23 22:25+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"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
19 #: build/C/man2/_syscall.2:38
25 #: build/C/man2/_syscall.2:38
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
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
86 msgid "Linux Programmer's Manual"
87 msgstr "Linux Programmer's Manual"
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
124 #: build/C/man2/_syscall.2:41
125 msgid "_syscall - invoking a system call without library support (OBSOLETE)"
126 msgstr "_syscall - ライブラリのサポートなしでシステムコールを起動する (昔の方法)"
129 #: build/C/man2/_syscall.2:41 build/C/man2/access.2:46 build/C/man2/alarm.2:33
130 #: build/C/man2/brk.2:32 build/C/man2/chdir.2:36 build/C/man2/chmod.2:35
131 #: build/C/man2/chown.2:41 build/C/man2/chroot.2:36 build/C/man2/close.2:38
132 #: build/C/man3/confstr.3:35 build/C/man3/crypt.3:39 build/C/man3/daemon.3:39
133 #: build/C/man3/des_crypt.3:18 build/C/man2/dup.2:40 build/C/man3/encrypt.3:33
134 #: build/C/man7/environ.7:37 build/C/man3/euidaccess.3:28
135 #: build/C/man3/exec.3:44 build/C/man2/execve.2:40
136 #: build/C/man2/exit_group.2:28 build/C/man2/fcntl.2:68
137 #: build/C/man3/fexecve.3:28 build/C/man2/flock.2:38 build/C/man2/fork.2:42
138 #: build/C/man3/fpathconf.3:44 build/C/man2/fsync.2:41
139 #: build/C/man3/get_nprocs_conf.3:29 build/C/man2/get_thread_area.2:11
140 #: build/C/man3/getcwd.3:35 build/C/man2/getdomainname.2:32
141 #: build/C/man3/getdtablesize.3:30 build/C/man3/gethostid.3:32
142 #: build/C/man2/gethostname.2:35 build/C/man3/getlogin.3:31
143 #: build/C/man3/getopt.3:45 build/C/man2/getpagesize.2:28
144 #: build/C/man2/gettid.2:29 build/C/man3/getumask.3:31
145 #: build/C/man3/getusershell.3:33 build/C/man2/idle.2:35
146 #: build/C/man2/ioctl.2:44 build/C/man2/ioperm.2:37 build/C/man3/lockf.3:31
147 #: build/C/man2/mincore.2:37 build/C/man2/mkdir.2:14 build/C/man2/nice.2:34
148 #: build/C/man2/pread.2:28 build/C/man2/set_thread_area.2:11
149 #: build/C/man2/setup.2:37 build/C/man3/sleep.3:29 build/C/man3/swab.3:34
150 #: build/C/man2/swapon.2:45 build/C/man2/syscall.2:45
151 #: build/C/man2/syscalls.2:34 build/C/man3/sysconf.3:30
152 #: build/C/man2/sysctl.2:33 build/C/man2/sysinfo.2:17
153 #: build/C/man3/tcgetpgrp.3:28 build/C/man2/truncate.2:46
154 #: build/C/man3/ualarm.3:27 build/C/man2/umask.2:37 build/C/man2/uname.2:30
155 #: build/C/man2/uselib.2:34 build/C/man3/usleep.3:36 build/C/man2/vfork.2:31
156 #: build/C/man2/vhangup.2:31 build/C/man2/execveat.2:29
162 #: build/C/man2/_syscall.2:43 build/C/man2/get_thread_area.2:13
163 #: build/C/man2/set_thread_area.2:13
164 msgid "B<#include E<lt>linux/unistd.hE<gt>>"
165 msgstr "B<#include E<lt>linux/unistd.hE<gt>>"
168 #: build/C/man2/_syscall.2:45
169 msgid "A _syscall macro"
170 msgstr "A _syscall macro"
173 #: build/C/man2/_syscall.2:47
174 msgid "desired system call"
175 msgstr "desired system call"
178 #: build/C/man2/_syscall.2:47 build/C/man2/access.2:78 build/C/man2/alarm.2:39
179 #: build/C/man2/brk.2:64 build/C/man2/chdir.2:59 build/C/man2/chmod.2:81
180 #: build/C/man2/chown.2:88 build/C/man2/chroot.2:63 build/C/man2/close.2:44
181 #: build/C/man3/confstr.3:49 build/C/man3/crypt.3:56 build/C/man3/daemon.3:51
182 #: build/C/man3/des_crypt.3:34 build/C/man2/dup.2:53 build/C/man3/encrypt.3:56
183 #: build/C/man7/environ.7:42 build/C/man3/euidaccess.3:36
184 #: build/C/man3/exec.3:72 build/C/man2/execve.2:46
185 #: build/C/man2/exit_group.2:34 build/C/man2/fcntl.2:75
186 #: build/C/man3/fexecve.3:53 build/C/man2/flock.2:42 build/C/man2/fork.2:46
187 #: build/C/man3/fpathconf.3:52 build/C/man2/fsync.2:61
188 #: build/C/man3/get_nprocs_conf.3:35 build/C/man2/get_thread_area.2:20
189 #: build/C/man3/getcwd.3:75 build/C/man2/getdomainname.2:51
190 #: build/C/man3/getdtablesize.3:57 build/C/man3/gethostid.3:56
191 #: build/C/man2/gethostname.2:63 build/C/man3/getlogin.3:52
192 #: build/C/man3/getopt.3:79 build/C/man2/getpagesize.2:55
193 #: build/C/man2/gettid.2:38 build/C/man3/getumask.3:39
194 #: build/C/man3/getusershell.3:57 build/C/man2/idle.2:39
195 #: build/C/man2/ioctl.2:50 build/C/man2/ioctl_list.2:33
196 #: build/C/man2/ioperm.2:42 build/C/man3/lockf.3:48 build/C/man2/mincore.2:51
197 #: build/C/man2/mkdir.2:47 build/C/man2/nice.2:46 build/C/man2/pread.2:53
198 #: build/C/man2/set_thread_area.2:20 build/C/man2/setup.2:41
199 #: build/C/man5/shells.5:31 build/C/man3/sleep.3:35 build/C/man3/swab.3:41
200 #: build/C/man2/swapon.2:53 build/C/man2/syscall.2:53
201 #: build/C/man2/syscalls.2:36 build/C/man3/sysconf.3:36
202 #: build/C/man2/sysctl.2:44 build/C/man2/sysinfo.2:21
203 #: build/C/man3/tcgetpgrp.3:34 build/C/man2/truncate.2:79
204 #: build/C/man3/ualarm.3:58 build/C/man2/umask.2:43 build/C/man2/uname.2:34
205 #: build/C/man2/uselib.2:38 build/C/man3/usleep.3:67 build/C/man2/vfork.2:62
206 #: build/C/man2/vhangup.2:45 build/C/man2/execveat.2:37
212 #: build/C/man2/_syscall.2:53
213 msgid "The important thing to know about a system call is its prototype. You need to know how many arguments, their types, and the function return type. There are seven macros that make the actual call into the system easier. They have the form:"
214 msgstr "システムコールに関してそのプロトタイプを知ることが重要である。 引き数の個数、それらの型、返り値の型を知る必要がある。 実際の使用にあたっては、システムコールをシステムに呼び出しやすくするために、 7 個のマクロが用意されている。これらのマクロは以下の形である。"
217 #: build/C/man2/_syscall.2:56
218 msgid "_syscallI<X>(I<type>,I<name>,I<type1>,I<arg1>,I<type2>,I<arg2>,...)"
219 msgstr "_syscallI<X>(I<type>,I<name>,I<type1>,I<arg1>,I<type2>,I<arg2>,...)"
222 #: build/C/man2/_syscall.2:59
227 #: build/C/man2/_syscall.2:63
228 msgid "I<X> is 0\\(en6, which are the number of arguments taken by the system call"
229 msgstr "I<X> は 0〜6 で、システムコールが取る引き数の個数である。"
232 #: build/C/man2/_syscall.2:66
233 msgid "I<type> is the return type of the system call"
234 msgstr "I<type> はシステムコールの返り値の型である。"
237 #: build/C/man2/_syscall.2:69
238 msgid "I<name> is the name of the system call"
239 msgstr "I<name> はシステムコールの名前である。"
242 #: build/C/man2/_syscall.2:72
243 msgid "I<typeN> is the Nth argument's type"
244 msgstr "I<typeN> は N 番目の引き数の型である。"
247 #: build/C/man2/_syscall.2:75
248 msgid "I<argN> is the name of the Nth argument"
249 msgstr "I<argN> は N 番目の引き数の名前である。"
252 #: build/C/man2/_syscall.2:83
253 msgid "These macros create a function called I<name> with the arguments you specify. Once you include the _syscall() in your source file, you call the system call by I<name>."
254 msgstr "これらのマクロは、指定した引き数を持つ I<name> という名前の関数を生成する。 一度ソースファイルの中で _syscall() をインクルードしておくと、 そのシステムコールを I<name> という名前で呼ぶことができる。"
257 #: build/C/man2/_syscall.2:83 build/C/man3/getlogin.3:132
258 #: build/C/man3/getusershell.3:89 build/C/man5/shells.5:43
264 #: build/C/man2/_syscall.2:85
265 msgid "I</usr/include/linux/unistd.h>"
266 msgstr "I</usr/include/linux/unistd.h>"
269 #: build/C/man2/_syscall.2:85 build/C/man2/access.2:262
270 #: build/C/man2/alarm.2:59 build/C/man2/brk.2:113 build/C/man2/chdir.2:125
271 #: build/C/man2/chmod.2:330 build/C/man2/chown.2:313 build/C/man2/chroot.2:134
272 #: build/C/man2/close.2:84 build/C/man3/confstr.3:128 build/C/man3/crypt.3:183
273 #: build/C/man3/daemon.3:96 build/C/man3/des_crypt.3:142
274 #: build/C/man2/dup.2:208 build/C/man3/encrypt.3:137
275 #: build/C/man3/euidaccess.3:80 build/C/man3/exec.3:199
276 #: build/C/man2/execve.2:464 build/C/man2/exit_group.2:43
277 #: build/C/man2/fcntl.2:1640 build/C/man3/fexecve.3:94
278 #: build/C/man2/flock.2:139 build/C/man2/fork.2:226
279 #: build/C/man3/fpathconf.3:169 build/C/man2/fsync.2:125
280 #: build/C/man3/get_nprocs_conf.3:48 build/C/man2/get_thread_area.2:46
281 #: build/C/man3/getcwd.3:208 build/C/man2/getdomainname.2:110
282 #: build/C/man3/getdtablesize.3:74 build/C/man3/gethostid.3:92
283 #: build/C/man2/gethostname.2:124 build/C/man3/getlogin.3:154
284 #: build/C/man3/getopt.3:318 build/C/man2/getpagesize.2:64
285 #: build/C/man2/gettid.2:58 build/C/man3/getumask.3:58
286 #: build/C/man3/getusershell.3:101 build/C/man2/idle.2:61
287 #: build/C/man2/ioctl.2:119 build/C/man2/ioperm.2:101 build/C/man3/lockf.3:159
288 #: build/C/man2/mincore.2:134 build/C/man2/mkdir.2:204 build/C/man2/nice.2:75
289 #: build/C/man2/pread.2:115 build/C/man2/set_thread_area.2:63
290 #: build/C/man2/setup.2:62 build/C/man3/sleep.3:44 build/C/man3/swab.3:77
291 #: build/C/man2/swapon.2:162 build/C/man3/sysconf.3:327
292 #: build/C/man2/sysctl.2:100 build/C/man2/sysinfo.2:87
293 #: build/C/man3/tcgetpgrp.3:116 build/C/man2/truncate.2:200
294 #: build/C/man3/ualarm.3:97 build/C/man2/umask.2:95 build/C/man2/uname.2:73
295 #: build/C/man2/uselib.2:76 build/C/man3/usleep.3:96 build/C/man2/vfork.2:159
296 #: build/C/man2/vhangup.2:63 build/C/man2/execveat.2:165
298 msgid "CONFORMING TO"
302 #: build/C/man2/_syscall.2:87
303 msgid "The use of these macros is Linux-specific, and deprecated."
304 msgstr "これらのマクロは Linux 固有であり、その使用は非推奨である。"
307 #: build/C/man2/_syscall.2:87 build/C/man2/access.2:268
308 #: build/C/man2/alarm.2:61 build/C/man2/brk.2:121 build/C/man2/chdir.2:127
309 #: build/C/man2/chmod.2:337 build/C/man2/chown.2:330 build/C/man2/chroot.2:139
310 #: build/C/man2/close.2:87 build/C/man3/crypt.3:188 build/C/man3/daemon.3:102
311 #: build/C/man2/dup.2:218 build/C/man3/encrypt.3:148
312 #: build/C/man3/euidaccess.3:86 build/C/man3/exec.3:205
313 #: build/C/man2/execve.2:472 build/C/man2/exit_group.2:45
314 #: build/C/man2/fcntl.2:1705 build/C/man3/fexecve.3:99
315 #: build/C/man2/flock.2:148 build/C/man2/fork.2:228
316 #: build/C/man3/fpathconf.3:171 build/C/man2/fsync.2:140
317 #: build/C/man3/get_nprocs_conf.3:50 build/C/man2/get_thread_area.2:50
318 #: build/C/man3/getcwd.3:230 build/C/man2/getdomainname.2:113
319 #: build/C/man3/getdtablesize.3:82 build/C/man3/gethostid.3:102
320 #: build/C/man2/gethostname.2:130 build/C/man3/getopt.3:350
321 #: build/C/man2/getpagesize.2:71 build/C/man2/gettid.2:62
322 #: build/C/man3/getumask.3:60 build/C/man2/ioctl.2:134
323 #: build/C/man2/ioperm.2:105 build/C/man2/mkdir.2:211 build/C/man2/nice.2:82
324 #: build/C/man2/pread.2:117 build/C/man2/set_thread_area.2:67
325 #: build/C/man2/setup.2:65 build/C/man2/swapon.2:168 build/C/man2/syscall.2:80
326 #: build/C/man2/syscalls.2:667 build/C/man2/sysctl.2:114
327 #: build/C/man3/tcgetpgrp.3:118 build/C/man2/truncate.2:213
328 #: build/C/man3/ualarm.3:105 build/C/man2/umask.2:97 build/C/man2/uname.2:82
329 #: build/C/man2/uselib.2:80 build/C/man3/usleep.3:114 build/C/man2/vfork.2:174
330 #: build/C/man2/execveat.2:169
336 #: build/C/man2/_syscall.2:97
337 msgid "Starting around kernel 2.6.18, the _syscall macros were removed from header files supplied to user space. Use B<syscall>(2) instead. (Some architectures, notably ia64, never provided the _syscall macros; on those architectures, B<syscall>(2) was always required.)"
338 msgstr "カーネル 2.6.18 あたりから、_syscall マクロ群はユーザー空間に対して提供される ヘッダファイルから削除された。代わりに B<syscall>(2) を使用すること。 (いくつかのアーキテクチャ、特に ia64、では、これまで _syscall マクロが 提供されたことはない。このようなアーキテクチャでは、常に B<syscall>(2) が必要であった。)"
341 #: build/C/man2/_syscall.2:103
342 msgid "The _syscall() macros I<do not> produce a prototype. You may have to create one, especially for C++ users."
343 msgstr "_syscall() マクロはプロトタイプを「生成しない」。 ユーザーはプロトタイプを自分で書かなければならないかもしれない。 とりわけ C++ ユーザーの場合はそうであろう。"
346 #: build/C/man2/_syscall.2:124
347 msgid "System calls are not required to return only positive or negative error codes. You need to read the source to be sure how it will return errors. Usually, it is the negative of a standard error code, for example, -I<EPERM>. The _syscall() macros will return the result I<r> of the system call when I<r> is nonnegative, but will return -1 and set the variable I<errno> to -I<r> when I<r> is negative. For the error codes, see B<errno>(3)."
348 msgstr "システムコールは、正のエラーコードのみ、または負のエラーコードのみを返すように 定められている訳ではない。そのシステムコールがどのようなエラーコードを返すかを 確認するには、そのソースコードを読む必要がある。たいていの場合は、標準のエラー コードを負にしたものである (例えば -I<EPERM>)。 _syscall() マクロは、そのシステムコールの返り値 I<r> が負でない場合、その値 をそのまま返す。一方、I<r> が負の場合には、変数 I<errno> に -I<r> を設定し、-1 を返す。 エラーコードについては B<errno>(3) を参照。"
350 #. The preferred way to invoke system calls that glibc does not know
353 #. However, this mechanism can be used only if using a libc
354 #. (such as glibc) that supports
357 #. .I <sys/syscall.h>
358 #. header file contains the required SYS_foo definition.
359 #. Otherwise, the use of a _syscall macro is required.
361 #: build/C/man2/_syscall.2:140
362 msgid "When defining a system call, the argument types I<must> be passed by-value or by-pointer (for aggregates like structs)."
363 msgstr "システムコールを定義する際、引き数の型は値渡し (by-value) か、 (構造体のように集合的なデータの場合は) ポインタ渡し (by-pointer) でなければならない。"
366 #: build/C/man2/_syscall.2:140 build/C/man2/chown.2:442
367 #: build/C/man3/confstr.3:130 build/C/man3/encrypt.3:150
368 #: build/C/man2/execve.2:656 build/C/man2/fork.2:259
369 #: build/C/man3/get_nprocs_conf.3:67 build/C/man3/getopt.3:376
370 #: build/C/man5/shells.5:45 build/C/man2/syscall.2:224
371 #: build/C/man2/sysctl.2:143
377 #: build/C/man2/_syscall.2:147
380 "#include E<lt>stdio.hE<gt>\n"
381 "#include E<lt>stdlib.hE<gt>\n"
382 "#include E<lt>errno.hE<gt>\n"
383 "#include E<lt>linux/unistd.hE<gt> /* for _syscallX macros/related stuff */\n"
384 "#include E<lt>linux/kernel.hE<gt> /* for struct sysinfo */\n"
386 "#include E<lt>stdio.hE<gt>\n"
387 "#include E<lt>stdlib.hE<gt>\n"
388 "#include E<lt>errno.hE<gt>\n"
389 "#include E<lt>linux/unistd.hE<gt> /* for _syscallX macros/related stuff */\n"
390 "#include E<lt>linux/kernel.hE<gt> /* for struct sysinfo */\n"
393 #: build/C/man2/_syscall.2:149
395 msgid "_syscall1(int, sysinfo, struct sysinfo *, info);\n"
396 msgstr "_syscall1(int, sysinfo, struct sysinfo *, info);\n"
399 #: build/C/man2/_syscall.2:152
402 "/* Note: if you copy directly from the nroff source, remember to\n"
403 "REMOVE the extra backslashes in the printf statement. */\n"
405 "/* Note: nroff のソースファイルから直接コピーする際には、\n"
406 "printf 文内の余分なバックスラッシュを忘れずに削除するように。 */\n"
409 #: build/C/man2/_syscall.2:158
415 " struct sysinfo s_info;\n"
421 " struct sysinfo s_info;\n"
425 #: build/C/man2/_syscall.2:173
428 " error = sysinfo(&s_info);\n"
429 " printf(\"code error = %d\\en\", error);\n"
430 " printf(\"Uptime = %lds\\enLoad: 1 min %lu / 5 min %lu / 15 min %lu\\en\"\n"
431 " \"RAM: total %lu / free %lu / shared %lu\\en\"\n"
432 " \"Memory in buffers = %lu\\enSwap: total %lu / free %lu\\en\"\n"
433 " \"Number of processes = %d\\en\",\n"
434 " s_info.uptime, s_info.loads[0],\n"
435 " s_info.loads[1], s_info.loads[2],\n"
436 " s_info.totalram, s_info.freeram,\n"
437 " s_info.sharedram, s_info.bufferram,\n"
438 " s_info.totalswap, s_info.freeswap,\n"
440 " exit(EXIT_SUCCESS);\n"
443 " error = sysinfo(&s_info);\n"
444 " printf(\"code error = %d\\en\", error);\n"
445 " printf(\"Uptime = %lds\\enLoad: 1 min %lu / 5 min %lu / 15 min %lu\\en\"\n"
446 " \"RAM: total %lu / free %lu / shared %lu\\en\"\n"
447 " \"Memory in buffers = %lu\\enSwap: total %lu / free %lu\\en\"\n"
448 " \"Number of processes = %d\\en\",\n"
449 " s_info.uptime, s_info.loads[0],\n"
450 " s_info.loads[1], s_info.loads[2],\n"
451 " s_info.totalram, s_info.freeram,\n"
452 " s_info.sharedram, s_info.bufferram,\n"
453 " s_info.totalswap, s_info.freeswap,\n"
455 " exit(EXIT_SUCCESS);\n"
459 #: build/C/man2/_syscall.2:174
461 msgid "Sample output"
465 #: build/C/man2/_syscall.2:183
470 "Load: 1 min 13376 / 5 min 5504 / 15 min 1152\n"
471 "RAM: total 15343616 / free 827392 / shared 8237056\n"
472 "Memory in buffers = 5066752\n"
473 "Swap: total 27881472 / free 24698880\n"
474 "Number of processes = 40\n"
478 "Load: 1 min 13376 / 5 min 5504 / 15 min 1152\n"
479 "RAM: total 15343616 / free 827392 / shared 8237056\n"
480 "Memory in buffers = 5066752\n"
481 "Swap: total 27881472 / free 24698880\n"
482 "Number of processes = 40\n"
485 #: build/C/man2/_syscall.2:184 build/C/man2/access.2:390
486 #: build/C/man2/alarm.2:86 build/C/man2/brk.2:163 build/C/man2/chdir.2:136
487 #: build/C/man2/chmod.2:361 build/C/man2/chown.2:490 build/C/man2/chroot.2:151
488 #: build/C/man2/close.2:131 build/C/man3/confstr.3:147
489 #: build/C/man3/crypt.3:249 build/C/man3/daemon.3:110
490 #: build/C/man3/des_crypt.3:145 build/C/man2/dup.2:274
491 #: build/C/man3/encrypt.3:174 build/C/man7/environ.7:247
492 #: build/C/man3/euidaccess.3:101 build/C/man3/exec.3:241
493 #: build/C/man2/execve.2:751 build/C/man2/exit_group.2:49
494 #: build/C/man2/fcntl.2:1916 build/C/man3/fexecve.3:165
495 #: build/C/man2/flock.2:234 build/C/man2/fork.2:264
496 #: build/C/man3/fpathconf.3:180 build/C/man2/fsync.2:162
497 #: build/C/man2/get_thread_area.2:55 build/C/man3/getcwd.3:249
498 #: build/C/man2/getdomainname.2:127 build/C/man3/getdtablesize.3:95
499 #: build/C/man3/gethostid.3:124 build/C/man2/gethostname.2:176
500 #: build/C/man3/getlogin.3:209 build/C/man3/getopt.3:516
501 #: build/C/man2/getpagesize.2:108 build/C/man2/gettid.2:71
502 #: build/C/man3/getumask.3:63 build/C/man3/getusershell.3:103
503 #: build/C/man2/ioctl.2:142 build/C/man2/ioctl_list.2:963
504 #: build/C/man2/ioperm.2:117 build/C/man3/lockf.3:161
505 #: build/C/man2/mincore.2:166 build/C/man2/mkdir.2:236 build/C/man2/nice.2:105
506 #: build/C/man2/pread.2:158 build/C/man2/set_thread_area.2:72
507 #: build/C/man5/shells.5:56 build/C/man3/sleep.3:61 build/C/man3/swab.3:79
508 #: build/C/man2/swapon.2:202 build/C/man2/syscall.2:241
509 #: build/C/man2/syscalls.2:844 build/C/man3/sysconf.3:338
510 #: build/C/man2/sysctl.2:181 build/C/man2/sysinfo.2:90
511 #: build/C/man3/tcgetpgrp.3:127 build/C/man2/truncate.2:261
512 #: build/C/man3/ualarm.3:147 build/C/man2/umask.2:118 build/C/man2/uname.2:167
513 #: build/C/man2/uselib.2:102 build/C/man3/usleep.3:147
514 #: build/C/man2/vfork.2:273 build/C/man2/vhangup.2:66
515 #: build/C/man2/execveat.2:229
521 #: build/C/man2/_syscall.2:188
522 msgid "B<intro>(2), B<syscall>(2), B<errno>(3)"
523 msgstr "B<intro>(2), B<syscall>(2), B<errno>(3)"
526 #: build/C/man2/_syscall.2:188 build/C/man2/access.2:401
527 #: build/C/man2/alarm.2:95 build/C/man2/brk.2:168 build/C/man2/chdir.2:140
528 #: build/C/man2/chmod.2:368 build/C/man2/chown.2:495 build/C/man2/chroot.2:154
529 #: build/C/man2/close.2:138 build/C/man3/confstr.3:155
530 #: build/C/man3/crypt.3:255 build/C/man3/daemon.3:113
531 #: build/C/man3/des_crypt.3:149 build/C/man2/dup.2:278
532 #: build/C/man3/encrypt.3:179 build/C/man7/environ.7:264
533 #: build/C/man3/euidaccess.3:112 build/C/man3/exec.3:249
534 #: build/C/man2/execve.2:763 build/C/man2/exit_group.2:51
535 #: build/C/man2/fcntl.2:1937 build/C/man3/fexecve.3:168
536 #: build/C/man2/flock.2:248 build/C/man2/fork.2:275
537 #: build/C/man3/fpathconf.3:186 build/C/man2/fsync.2:170
538 #: build/C/man3/get_nprocs_conf.3:88 build/C/man2/get_thread_area.2:58
539 #: build/C/man3/getcwd.3:256 build/C/man2/getdomainname.2:131
540 #: build/C/man3/getdtablesize.3:100 build/C/man3/gethostid.3:127
541 #: build/C/man2/gethostname.2:180 build/C/man3/getlogin.3:213
542 #: build/C/man3/getopt.3:518 build/C/man2/getpagesize.2:111
543 #: build/C/man2/gettid.2:90 build/C/man3/getumask.3:65
544 #: build/C/man3/getusershell.3:105 build/C/man2/idle.2:64
545 #: build/C/man2/ioctl.2:150 build/C/man2/ioctl_list.2:965
546 #: build/C/man2/ioperm.2:121 build/C/man3/lockf.3:176
547 #: build/C/man2/mincore.2:169 build/C/man2/mkdir.2:247 build/C/man2/nice.2:113
548 #: build/C/man2/pread.2:163 build/C/man2/set_thread_area.2:74
549 #: build/C/man2/setup.2:72 build/C/man5/shells.5:59 build/C/man3/sleep.3:66
550 #: build/C/man3/swab.3:81 build/C/man2/swapon.2:206 build/C/man2/syscall.2:247
551 #: build/C/man2/syscalls.2:851 build/C/man3/sysconf.3:347
552 #: build/C/man2/sysctl.2:183 build/C/man2/sysinfo.2:92
553 #: build/C/man3/tcgetpgrp.3:131 build/C/man2/truncate.2:265
554 #: build/C/man3/ualarm.3:155 build/C/man2/umask.2:124 build/C/man2/uname.2:172
555 #: build/C/man2/uselib.2:112 build/C/man3/usleep.3:156
556 #: build/C/man2/vfork.2:279 build/C/man2/vhangup.2:69
557 #: build/C/man2/execveat.2:233
563 #: build/C/man2/_syscall.2:196 build/C/man2/access.2:409
564 #: build/C/man2/alarm.2:103 build/C/man2/brk.2:176 build/C/man2/chdir.2:148
565 #: build/C/man2/chmod.2:376 build/C/man2/chown.2:503 build/C/man2/chroot.2:162
566 #: build/C/man2/close.2:146 build/C/man3/confstr.3:163
567 #: build/C/man3/crypt.3:263 build/C/man3/daemon.3:121
568 #: build/C/man3/des_crypt.3:157 build/C/man2/dup.2:286
569 #: build/C/man3/encrypt.3:187 build/C/man7/environ.7:272
570 #: build/C/man3/euidaccess.3:120 build/C/man3/exec.3:257
571 #: build/C/man2/execve.2:771 build/C/man2/exit_group.2:59
572 #: build/C/man2/fcntl.2:1945 build/C/man3/fexecve.3:176
573 #: build/C/man2/flock.2:256 build/C/man2/fork.2:283
574 #: build/C/man3/fpathconf.3:194 build/C/man2/fsync.2:178
575 #: build/C/man3/get_nprocs_conf.3:96 build/C/man2/get_thread_area.2:66
576 #: build/C/man3/getcwd.3:264 build/C/man2/getdomainname.2:139
577 #: build/C/man3/getdtablesize.3:108 build/C/man3/gethostid.3:135
578 #: build/C/man2/gethostname.2:188 build/C/man3/getlogin.3:221
579 #: build/C/man3/getopt.3:526 build/C/man2/getpagesize.2:119
580 #: build/C/man2/gettid.2:98 build/C/man3/getumask.3:73
581 #: build/C/man3/getusershell.3:113 build/C/man2/idle.2:72
582 #: build/C/man2/ioctl.2:158 build/C/man2/ioctl_list.2:973
583 #: build/C/man2/ioperm.2:129 build/C/man3/lockf.3:184
584 #: build/C/man2/mincore.2:177 build/C/man2/mkdir.2:255 build/C/man2/nice.2:121
585 #: build/C/man2/pread.2:171 build/C/man2/set_thread_area.2:82
586 #: build/C/man2/setup.2:80 build/C/man5/shells.5:67 build/C/man3/sleep.3:74
587 #: build/C/man3/swab.3:89 build/C/man2/swapon.2:214 build/C/man2/syscall.2:255
588 #: build/C/man2/syscalls.2:859 build/C/man3/sysconf.3:355
589 #: build/C/man2/sysctl.2:191 build/C/man2/sysinfo.2:100
590 #: build/C/man3/tcgetpgrp.3:139 build/C/man2/truncate.2:273
591 #: build/C/man3/ualarm.3:163 build/C/man2/umask.2:132 build/C/man2/uname.2:180
592 #: build/C/man2/uselib.2:120 build/C/man3/usleep.3:164
593 #: build/C/man2/vfork.2:287 build/C/man2/vhangup.2:77
594 #: build/C/man2/execveat.2:241
595 msgid "This page is part of release 3.78 of the Linux I<man-pages> project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/."
597 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
598 "である。プロジェクトの説明とバグ報告に関する情報は\n"
599 "http://www.kernel.org/doc/man-pages/ に書かれている。"
602 #: build/C/man2/access.2:43
608 #: build/C/man2/access.2:43 build/C/man2/brk.2:29 build/C/man2/chmod.2:32
609 #: build/C/man2/chown.2:38 build/C/man3/des_crypt.3:14
610 #: build/C/man7/environ.7:34 build/C/man2/fsync.2:38 build/C/man3/getcwd.3:32
611 #: build/C/man3/getdtablesize.3:27 build/C/man2/gethostname.2:32
612 #: build/C/man2/getpagesize.2:25 build/C/man2/ioperm.2:34
613 #: build/C/man2/mkdir.2:11 build/C/man2/sysinfo.2:14
619 #: build/C/man2/access.2:46
620 msgid "access, faccessat - check user's permissions for a file"
621 msgstr "access, faccessat - ユーザーのファイルへのアクセス権をチェックする"
624 #: build/C/man2/access.2:49 build/C/man2/alarm.2:36 build/C/man2/chown.2:44
625 #: build/C/man2/close.2:41 build/C/man3/confstr.3:38 build/C/man3/crypt.3:44
626 #: build/C/man2/dup.2:43 build/C/man3/fexecve.3:31 build/C/man3/fpathconf.3:47
627 #: build/C/man3/getcwd.3:38 build/C/man3/getopt.3:48
628 #: build/C/man3/getusershell.3:36 build/C/man3/sleep.3:32
629 #: build/C/man3/sysconf.3:33 build/C/man2/sysctl.2:36 build/C/man3/ualarm.3:30
630 #: build/C/man3/usleep.3:39
632 msgid "B<#include E<lt>unistd.hE<gt>>\n"
633 msgstr "B<#include E<lt>unistd.hE<gt>>\n"
636 #: build/C/man2/access.2:51
638 msgid "B<int access(const char *>I<pathname>B<, int >I<mode>B<);>\n"
639 msgstr "B<int access(const char *>I<pathname>B<, int >I<mode>B<);>\n"
642 #: build/C/man2/access.2:54 build/C/man2/chown.2:53
645 "B<#include E<lt>fcntl.hE<gt> >/* Definition of AT_* constants */\n"
646 "B<#include E<lt>unistd.hE<gt>>\n"
648 "B<#include E<lt>fcntl.hE<gt> >/* AT_* 定数の定義 */\n"
649 "B<#include E<lt>unistd.hE<gt>>\n"
652 #: build/C/man2/access.2:57
654 msgid "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, int >I<flags>B<);>\n"
655 msgstr "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, int >I<flags>B<);>\n"
658 #: build/C/man2/access.2:62 build/C/man2/brk.2:42 build/C/man2/chdir.2:46
659 #: build/C/man2/chmod.2:53 build/C/man2/chown.2:62 build/C/man2/chroot.2:44
660 #: build/C/man3/confstr.3:45 build/C/man3/daemon.3:47 build/C/man3/exec.3:68
661 #: build/C/man3/fexecve.3:38 build/C/man2/fsync.2:51 build/C/man3/getcwd.3:49
662 #: build/C/man2/getdomainname.2:42 build/C/man3/getdtablesize.3:38
663 #: build/C/man3/gethostid.3:42 build/C/man2/gethostname.2:45
664 #: build/C/man3/getlogin.3:45 build/C/man3/getopt.3:69
665 #: build/C/man2/getpagesize.2:36 build/C/man3/getusershell.3:47
666 #: build/C/man3/lockf.3:39 build/C/man2/mincore.2:47 build/C/man2/mkdir.2:31
667 #: build/C/man2/nice.2:42 build/C/man2/pread.2:40 build/C/man2/truncate.2:58
668 #: build/C/man3/ualarm.3:37 build/C/man3/usleep.3:46 build/C/man2/vfork.2:41
669 #: build/C/man2/vhangup.2:39
670 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
671 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7) 参照):"
674 #: build/C/man2/access.2:65
675 msgid "B<faccessat>():"
676 msgstr "B<faccessat>():"
679 #: build/C/man2/access.2:68 build/C/man2/chmod.2:71 build/C/man2/chown.2:79
680 #: build/C/man3/fexecve.3:44 build/C/man2/mkdir.2:37
682 msgid "Since glibc 2.10:"
683 msgstr "glibc 2.10 以降:"
686 #: build/C/man2/access.2:71 build/C/man2/chmod.2:74 build/C/man2/chown.2:82
687 #: build/C/man3/fexecve.3:47 build/C/man2/mkdir.2:40
688 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
689 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
692 #: build/C/man2/access.2:71 build/C/man2/chmod.2:74 build/C/man2/chown.2:82
693 #: build/C/man3/fexecve.3:47 build/C/man2/mkdir.2:40
695 msgid "Before glibc 2.10:"
696 msgstr "glibc 2.10 より前:"
699 #: build/C/man2/access.2:74 build/C/man2/chmod.2:77 build/C/man2/chown.2:85
700 #: build/C/man2/mkdir.2:43
701 msgid "_ATFILE_SOURCE"
702 msgstr "_ATFILE_SOURCE"
705 #: build/C/man2/access.2:85
706 msgid "B<access>() checks whether the calling process can access the file I<pathname>. If I<pathname> is a symbolic link, it is dereferenced."
707 msgstr "B<access>() は、呼び出し元プロセスがファイル I<pathname> にアクセスできるかどうかをチェックする。 I<pathname> がシンボリックリンクの場合、シンボリックリンクは展開される。"
709 #. F_OK is defined as 0 on every system that I know of.
711 #: build/C/man2/access.2:99
712 msgid "The I<mode> specifies the accessibility check(s) to be performed, and is either the value B<F_OK>, or a mask consisting of the bitwise OR of one or more of B<R_OK>, B<W_OK>, and B<X_OK>. B<F_OK> tests for the existence of the file. B<R_OK>, B<W_OK>, and B<X_OK> test whether the file exists and grants read, write, and execute permissions, respectively."
713 msgstr "I<mode> はチェックを行うアクセス権を指定するもので、その値は B<F_OK>、 もしくは B<R_OK>, B<W_OK>, B<X_OK> の 1個以上のビット単位の論理和から構成されるマスクである。 B<F_OK> はファイルが存在するかどうかのみを検査する。 B<R_OK>, B<W_OK>, B<X_OK> は、ファイルが存在して、それぞれ読み込み、書き込み、実行の許可があるか を検査する。"
716 #: build/C/man2/access.2:108
717 msgid "The check is done using the calling process's I<real> UID and GID, rather than the effective IDs as is done when actually attempting an operation (e.g., B<open>(2)) on the file. This allows set-user-ID programs to easily determine the invoking user's authority."
718 msgstr "チェックは、実際に操作が行われる際に使用される実効 (effective) ID でなく、 呼び出し元プロセスの I<実 (real)> UID と I<実 (real)> GID を使って行われる。 これにより、set-user-ID プログラムで、プログラムを起動するユーザーの権限を 簡単に決定することができる。"
721 #: build/C/man2/access.2:114
722 msgid "If the calling process is privileged (i.e., its real UID is zero), then an B<X_OK> check is successful for a regular file if execute permission is enabled for any of the file owner, group, or other."
723 msgstr "呼び出し元プロセスが特権プロセス (つまり、プロセスの実 UID が 0) の場合、 通常のファイルに対する B<X_OK> のチェックは、そのファイルの所有者、グループ、他人のいずれかの 実行許可が有効になっていれば成功する。"
726 #: build/C/man2/access.2:114
732 #: build/C/man2/access.2:120
733 msgid "The B<faccessat>() system call operates in exactly the same way as B<access>(), except for the differences described here."
734 msgstr "B<faccessat>() システムコールは B<access>() と全く同様に動作するが、以下で説明する点が異なる。"
737 #: build/C/man2/access.2:130
738 msgid "If the pathname given in I<pathname> is relative, then it is interpreted relative to the directory referred to by the file descriptor I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<access>() for a relative pathname)."
739 msgstr "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される (B<access>() に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。"
742 #: build/C/man2/access.2:142
743 msgid "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<access>())."
744 msgstr "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> の場合、 (B<access>() と同様に) I<pathname> は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。"
747 #: build/C/man2/access.2:148 build/C/man2/chmod.2:216 build/C/man2/chown.2:179
748 #: build/C/man2/mkdir.2:110 build/C/man2/execveat.2:76
749 msgid "If I<pathname> is absolute, then I<dirfd> is ignored."
750 msgstr "I<pathname> で指定されたパス名が絶対パスの場合、 I<dirfd> は無視される。"
753 #: build/C/man2/access.2:151
754 msgid "I<flags> is constructed by ORing together zero or more of the following values:"
755 msgstr "I<flags> は以下に示す値の 0 個以上の OR (論理和) をとって作成される。"
758 #: build/C/man2/access.2:151
760 msgid "B<AT_EACCESS>"
761 msgstr "B<AT_EACCESS>"
764 #: build/C/man2/access.2:158
765 msgid "Perform access checks using the effective user and group IDs. By default, B<faccessat>() uses the real IDs (like B<access>())."
766 msgstr "アクセスチェックを実行ユーザー/グループ ID を使って行う。デフォルトでは、B<faccessat>() は (B<access>() と同様に) 実 ID を使用する。"
769 #: build/C/man2/access.2:158 build/C/man2/chmod.2:219 build/C/man2/chown.2:208
770 #: build/C/man2/execveat.2:100
772 msgid "B<AT_SYMLINK_NOFOLLOW>"
773 msgstr "B<AT_SYMLINK_NOFOLLOW>"
776 #: build/C/man2/access.2:164
777 msgid "If I<pathname> is a symbolic link, do not dereference it: instead return information about the link itself."
778 msgstr "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リンク自身の情報を返す。"
781 #: build/C/man2/access.2:169
782 msgid "See B<openat>(2) for an explanation of the need for B<faccessat>()."
783 msgstr "B<faccessat>() の必要性についての説明については B<openat>(2) を参照。"
786 #: build/C/man2/access.2:169 build/C/man2/alarm.2:54 build/C/man2/brk.2:93
787 #: build/C/man2/chdir.2:70 build/C/man2/chmod.2:231 build/C/man2/chown.2:224
788 #: build/C/man2/chroot.2:90 build/C/man2/close.2:64 build/C/man3/confstr.3:95
789 #: build/C/man3/crypt.3:120 build/C/man3/daemon.3:73
790 #: build/C/man3/des_crypt.3:106 build/C/man2/dup.2:148
791 #: build/C/man3/encrypt.3:113 build/C/man3/euidaccess.3:58
792 #: build/C/man3/exec.3:183 build/C/man2/execve.2:355
793 #: build/C/man2/exit_group.2:39 build/C/man2/fcntl.2:1444
794 #: build/C/man3/fexecve.3:67 build/C/man2/flock.2:112 build/C/man2/fork.2:178
795 #: build/C/man3/fpathconf.3:160 build/C/man2/fsync.2:108
796 #: build/C/man3/get_nprocs_conf.3:46 build/C/man2/get_thread_area.2:29
797 #: build/C/man3/getcwd.3:156 build/C/man2/getdomainname.2:75
798 #: build/C/man3/getdtablesize.3:61 build/C/man3/gethostid.3:71
799 #: build/C/man2/gethostname.2:89 build/C/man3/getlogin.3:95
800 #: build/C/man3/getopt.3:274 build/C/man2/gettid.2:50
801 #: build/C/man3/getusershell.3:85 build/C/man2/idle.2:52
802 #: build/C/man2/ioctl.2:85 build/C/man2/ioctl_list.2:107
803 #: build/C/man2/ioperm.2:79 build/C/man3/lockf.3:116 build/C/man2/mincore.2:94
804 #: build/C/man2/mkdir.2:115 build/C/man2/nice.2:56 build/C/man2/pread.2:79
805 #: build/C/man2/set_thread_area.2:44 build/C/man2/setup.2:53
806 #: build/C/man3/sleep.3:40 build/C/man3/swab.3:68 build/C/man2/swapon.2:111
807 #: build/C/man2/syscall.2:74 build/C/man3/sysconf.3:314
808 #: build/C/man2/sysctl.2:74 build/C/man2/sysinfo.2:74
809 #: build/C/man3/tcgetpgrp.3:64 build/C/man2/truncate.2:110
810 #: build/C/man3/ualarm.3:81 build/C/man2/umask.2:92 build/C/man2/uname.2:63
811 #: build/C/man2/uselib.2:48 build/C/man3/usleep.3:75 build/C/man2/vhangup.2:50
812 #: build/C/man2/execveat.2:108
818 #: build/C/man2/access.2:185
819 msgid "On success (all requested permissions granted, or I<mode> is B<F_OK> and the file exists), zero is returned. On error (at least one bit in I<mode> asked for a permission that is denied, or I<mode> is B<F_OK> and the file does not exist, or some other error occurred), -1 is returned, and I<errno> is set appropriately."
820 msgstr "成功した場合 (要求した全てについて許可が得られたか、 I<mode> が B<F_OK> でファイルが存在した場合)、ゼロが返される。 エラーの場合 (I<mode> の少なくとも一つのビットで要求した許可がなかった場合、 I<mode> が B<F_OK> でファイルが存在しなかった場合、他のエラーが起こった場合)、-1 が返され、 I<errno> が適切に設定される。"
823 #: build/C/man2/access.2:185 build/C/man2/chdir.2:75 build/C/man2/chmod.2:236
824 #: build/C/man2/chown.2:229 build/C/man2/chroot.2:95 build/C/man2/close.2:70
825 #: build/C/man3/confstr.3:122 build/C/man3/crypt.3:123 build/C/man2/dup.2:154
826 #: build/C/man3/encrypt.3:115 build/C/man3/euidaccess.3:66
827 #: build/C/man3/exec.3:190 build/C/man2/execve.2:361 build/C/man2/fcntl.2:1482
828 #: build/C/man3/fexecve.3:74 build/C/man2/flock.2:117 build/C/man2/fork.2:185
829 #: build/C/man2/fsync.2:113 build/C/man2/get_thread_area.2:35
830 #: build/C/man3/getcwd.3:172 build/C/man2/getdomainname.2:80
831 #: build/C/man3/getdtablesize.3:63 build/C/man3/gethostid.3:81
832 #: build/C/man2/gethostname.2:94 build/C/man3/getlogin.3:103
833 #: build/C/man2/gettid.2:52 build/C/man2/idle.2:55 build/C/man2/ioctl.2:94
834 #: build/C/man2/ioperm.2:84 build/C/man3/lockf.3:121
835 #: build/C/man2/mincore.2:101 build/C/man2/mkdir.2:122 build/C/man2/nice.2:61
836 #: build/C/man2/pread.2:89 build/C/man2/set_thread_area.2:49
837 #: build/C/man2/setup.2:56 build/C/man2/swapon.2:116 build/C/man2/sysctl.2:81
838 #: build/C/man2/sysinfo.2:79 build/C/man3/tcgetpgrp.3:86
839 #: build/C/man2/truncate.2:115 build/C/man3/ualarm.3:84
840 #: build/C/man2/uname.2:68 build/C/man2/uselib.2:53 build/C/man3/usleep.3:82
841 #: build/C/man2/vhangup.2:55 build/C/man2/execveat.2:115
847 #: build/C/man2/access.2:190
848 msgid "B<access>() and B<faccessat>() shall fail if:"
849 msgstr "B<access>() と B<faccessat>() は以下の場合に失敗する。"
852 #: build/C/man2/access.2:190 build/C/man2/chdir.2:81 build/C/man2/chdir.2:117
853 #: build/C/man2/chmod.2:243 build/C/man2/chown.2:236 build/C/man2/chroot.2:98
854 #: build/C/man2/execve.2:369 build/C/man2/execve.2:376
855 #: build/C/man2/execve.2:379 build/C/man2/execve.2:382
856 #: build/C/man3/getcwd.3:173 build/C/man3/gethostid.3:84
857 #: build/C/man2/mkdir.2:123 build/C/man2/truncate.2:118
858 #: build/C/man2/uselib.2:59
864 #: build/C/man2/access.2:197
865 msgid "The requested access would be denied to the file, or search permission is denied for one of the directories in the path prefix of I<pathname>. (See also B<path_resolution>(7).)"
866 msgstr "要求されたアクセスは そのファイル自身に拒否されたか I<pathname> へ至るまでディレクトリのいずれかに対する検索許可 (search permission) が得られなかった。 (B<path_resolution>(7) も参照のこと)"
869 #: build/C/man2/access.2:197 build/C/man2/chdir.2:94 build/C/man2/chmod.2:255
870 #: build/C/man2/chown.2:245 build/C/man2/chroot.2:112
871 #: build/C/man2/execve.2:417 build/C/man2/mkdir.2:145
872 #: build/C/man2/truncate.2:152 build/C/man2/execveat.2:130
878 #: build/C/man2/access.2:201 build/C/man2/chmod.2:259 build/C/man2/chown.2:249
879 #: build/C/man2/mkdir.2:149
880 msgid "Too many symbolic links were encountered in resolving I<pathname>."
881 msgstr "I<pathname> を解決するときに、解決すべきシンボリックリンクが多すぎた。"
884 #: build/C/man2/access.2:201 build/C/man2/chdir.2:98 build/C/man2/chmod.2:259
885 #: build/C/man2/chown.2:249 build/C/man2/chroot.2:116
886 #: build/C/man2/execve.2:425 build/C/man2/gethostname.2:109
887 #: build/C/man2/mkdir.2:153 build/C/man2/truncate.2:155
889 msgid "B<ENAMETOOLONG>"
890 msgstr "B<ENAMETOOLONG>"
893 #: build/C/man2/access.2:205 build/C/man2/chmod.2:263 build/C/man2/chown.2:253
894 msgid "I<pathname> is too long."
895 msgstr "I<pathname> が長過ぎる。"
898 #: build/C/man2/access.2:205 build/C/man2/chdir.2:102 build/C/man2/chmod.2:263
899 #: build/C/man2/chown.2:253 build/C/man2/chown.2:279 build/C/man2/chroot.2:120
900 #: build/C/man2/execve.2:432 build/C/man3/getcwd.3:198
901 #: build/C/man3/getlogin.3:122 build/C/man2/mkdir.2:156
902 #: build/C/man2/swapon.2:147 build/C/man2/truncate.2:159
903 #: build/C/man2/execveat.2:140
909 #: build/C/man2/access.2:210
910 msgid "A component of I<pathname> does not exist or is a dangling symbolic link."
911 msgstr "I<pathname> を構成するパスのいずれかが、存在しないか、 参照先のない (dangling) シンボリックリンクになっている。"
914 #: build/C/man2/access.2:210 build/C/man2/access.2:252
915 #: build/C/man2/chdir.2:108 build/C/man2/chmod.2:269 build/C/man2/chmod.2:314
916 #: build/C/man2/chown.2:259 build/C/man2/chown.2:303 build/C/man2/chroot.2:126
917 #: build/C/man2/execve.2:446 build/C/man2/fcntl.2:1617
918 #: build/C/man2/mkdir.2:173 build/C/man2/mkdir.2:194 build/C/man2/sysctl.2:88
919 #: build/C/man2/truncate.2:162 build/C/man2/execveat.2:154
925 #: build/C/man2/access.2:215 build/C/man2/mkdir.2:178
926 msgid "A component used as a directory in I<pathname> is not, in fact, a directory."
927 msgstr "I<pathname> のディレクトリ部分が実際にはディレクトリでない。"
930 #: build/C/man2/access.2:215 build/C/man2/chmod.2:278 build/C/man2/chmod.2:296
931 #: build/C/man2/chown.2:266 build/C/man2/chown.2:285 build/C/man2/mkdir.2:183
932 #: build/C/man2/truncate.2:175
938 #: build/C/man2/access.2:218
939 msgid "Write permission was requested for a file on a read-only filesystem."
940 msgstr "読み込み専用 (read-only) のファイルシステムに対して書き込み許可を 要求した。"
943 #: build/C/man2/access.2:223
944 msgid "B<access>() and B<faccessat>() may fail if:"
945 msgstr "B<access>() と B<faccessat>() は以下の理由により失敗することがある。"
948 #: build/C/man2/access.2:223 build/C/man2/chdir.2:87 build/C/man2/chmod.2:248
949 #: build/C/man2/chown.2:241 build/C/man2/chroot.2:105
950 #: build/C/man2/execve.2:396 build/C/man2/fcntl.2:1527
951 #: build/C/man2/get_thread_area.2:36 build/C/man3/getcwd.3:176
952 #: build/C/man2/getdomainname.2:83 build/C/man2/gethostname.2:95
953 #: build/C/man2/ioctl.2:99 build/C/man2/mincore.2:104 build/C/man2/mkdir.2:142
954 #: build/C/man2/set_thread_area.2:53 build/C/man2/sysctl.2:82
955 #: build/C/man2/sysinfo.2:80 build/C/man2/truncate.2:124
956 #: build/C/man2/uname.2:69
962 #: build/C/man2/access.2:227 build/C/man2/chmod.2:252 build/C/man2/chown.2:245
963 #: build/C/man2/mkdir.2:145
964 msgid "I<pathname> points outside your accessible address space."
965 msgstr "I<pathname> がアクセス可能なアドレス空間の外を指している。"
968 #: build/C/man2/access.2:227 build/C/man2/access.2:248
969 #: build/C/man2/chmod.2:310 build/C/man2/chown.2:299
970 #: build/C/man3/confstr.3:123 build/C/man3/crypt.3:124 build/C/man2/dup.2:184
971 #: build/C/man2/dup.2:189 build/C/man2/execve.2:404 build/C/man2/fcntl.2:1553
972 #: build/C/man2/fcntl.2:1558 build/C/man2/fcntl.2:1566
973 #: build/C/man2/fcntl.2:1576 build/C/man2/fcntl.2:1588
974 #: build/C/man2/fcntl.2:1596 build/C/man3/fexecve.3:78
975 #: build/C/man2/flock.2:127 build/C/man2/get_thread_area.2:39
976 #: build/C/man3/getcwd.3:180 build/C/man2/getdomainname.2:87
977 #: build/C/man2/getdomainname.2:99 build/C/man2/gethostname.2:99
978 #: build/C/man2/ioctl.2:103 build/C/man2/ioperm.2:85 build/C/man3/lockf.3:147
979 #: build/C/man2/mincore.2:108 build/C/man2/set_thread_area.2:50
980 #: build/C/man2/swapon.2:124 build/C/man2/swapon.2:129
981 #: build/C/man2/swapon.2:139 build/C/man3/tcgetpgrp.3:91
982 #: build/C/man2/truncate.2:141 build/C/man2/truncate.2:196
983 #: build/C/man3/ualarm.3:88 build/C/man3/usleep.3:87
984 #: build/C/man2/execveat.2:126
990 #: build/C/man2/access.2:231
991 msgid "I<mode> was incorrectly specified."
992 msgstr "I<mode> に不正な値が指定された。"
995 #: build/C/man2/access.2:231 build/C/man2/chdir.2:91 build/C/man2/chmod.2:252
996 #: build/C/man2/chmod.2:290 build/C/man2/chown.2:276 build/C/man2/chroot.2:109
997 #: build/C/man2/close.2:81 build/C/man2/execve.2:408 build/C/man2/fsync.2:118
998 #: build/C/man2/ioperm.2:91 build/C/man2/truncate.2:146
1004 #: build/C/man2/access.2:234 build/C/man2/chdir.2:94 build/C/man2/chmod.2:255
1005 #: build/C/man2/chroot.2:112 build/C/man2/close.2:84 build/C/man2/execve.2:411
1006 msgid "An I/O error occurred."
1007 msgstr "I/O エラーが発生した。"
1010 #: build/C/man2/access.2:234 build/C/man2/chdir.2:105 build/C/man2/chmod.2:266
1011 #: build/C/man2/chown.2:256 build/C/man2/chroot.2:123
1012 #: build/C/man2/execve.2:443 build/C/man2/fork.2:216
1013 #: build/C/man3/getlogin.3:125 build/C/man2/ioperm.2:94
1014 #: build/C/man2/mincore.2:112 build/C/man2/mincore.2:124
1015 #: build/C/man2/mkdir.2:161 build/C/man2/swapon.2:152
1021 #: build/C/man2/access.2:237 build/C/man2/chdir.2:108 build/C/man2/chmod.2:269
1022 #: build/C/man2/chown.2:259 build/C/man2/chroot.2:126
1023 #: build/C/man2/execve.2:446 build/C/man2/mkdir.2:164
1024 msgid "Insufficient kernel memory was available."
1025 msgstr "カーネルに十分なメモリがない。"
1028 #: build/C/man2/access.2:237 build/C/man2/execve.2:461
1029 #: build/C/man2/truncate.2:178
1035 #: build/C/man2/access.2:241
1036 msgid "Write access was requested to an executable which is being executed."
1037 msgstr "実行中のファイルに対して書き込みを要求した。"
1040 #: build/C/man2/access.2:244
1041 msgid "The following additional errors can occur for B<faccessat>():"
1042 msgstr "B<faccessat>() では以下のエラーも発生する。"
1045 #: build/C/man2/access.2:244 build/C/man2/chdir.2:121 build/C/man2/chmod.2:285
1046 #: build/C/man2/chmod.2:306 build/C/man2/chown.2:273 build/C/man2/chown.2:295
1047 #: build/C/man2/close.2:71 build/C/man2/dup.2:155 build/C/man2/dup.2:159
1048 #: build/C/man2/fcntl.2:1490 build/C/man2/fcntl.2:1494
1049 #: build/C/man2/flock.2:118 build/C/man2/fsync.2:114 build/C/man2/ioctl.2:95
1050 #: build/C/man3/lockf.3:130 build/C/man2/mkdir.2:190
1051 #: build/C/man3/tcgetpgrp.3:87 build/C/man2/truncate.2:188
1052 #: build/C/man2/execveat.2:122
1058 #: build/C/man2/access.2:248 build/C/man2/chmod.2:310 build/C/man2/chown.2:299
1059 #: build/C/man2/mkdir.2:194 build/C/man2/execveat.2:126
1060 msgid "I<dirfd> is not a valid file descriptor."
1061 msgstr "I<dirfd> が適切なファイルディスクリプターでない。"
1064 #: build/C/man2/access.2:252 build/C/man2/chmod.2:314 build/C/man2/chown.2:303
1065 #: build/C/man2/execveat.2:130
1066 msgid "Invalid flag specified in I<flags>."
1067 msgstr "I<flags> に無効なフラグが指定された。"
1070 #: build/C/man2/access.2:258 build/C/man2/chmod.2:320 build/C/man2/chown.2:309
1071 #: build/C/man2/mkdir.2:200 build/C/man2/execveat.2:160
1072 msgid "I<pathname> is relative and I<dirfd> is a file descriptor referring to a file other than a directory."
1073 msgstr "I<pathname> が相対パスで、 I<dirfd> がディレクトリ以外のファイルを参照しているファイルディスクリプターである。"
1076 #: build/C/man2/access.2:258 build/C/man2/chmod.2:326 build/C/man2/chown.2:309
1077 #: build/C/man3/des_crypt.3:131 build/C/man2/dup.2:203
1078 #: build/C/man3/euidaccess.3:69 build/C/man3/exec.3:195
1079 #: build/C/man2/exit_group.2:41 build/C/man3/fexecve.3:91
1080 #: build/C/man2/get_thread_area.2:42 build/C/man2/gettid.2:54
1081 #: build/C/man2/idle.2:59 build/C/man2/mincore.2:132 build/C/man2/mkdir.2:200
1082 #: build/C/man2/pread.2:104 build/C/man2/set_thread_area.2:59
1083 #: build/C/man2/setup.2:60 build/C/man2/sysinfo.2:83
1084 #: build/C/man2/execveat.2:160
1090 #: build/C/man2/access.2:262
1091 msgid "B<faccessat>() was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4."
1092 msgstr "B<faccessat>() はバージョン 2.6.16 で Linux に追加された。 ライブラリによるサポートは glibc バージョン 2.4 で追加された。"
1095 #: build/C/man2/access.2:265
1096 msgid "B<access>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008."
1097 msgstr "B<access>(): SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008."
1100 #: build/C/man2/access.2:268
1101 msgid "B<faccessat>(): POSIX.1-2008."
1102 msgstr "B<faccessat>(): POSIX.1-2008."
1105 #: build/C/man2/access.2:281
1106 msgid "B<Warning>: Using these calls to check if a user is authorized to, for example, open a file before actually doing so using B<open>(2) creates a security hole, because the user might exploit the short time interval between checking and opening the file to manipulate it. B<For this reason, the use of this system call should be avoided>. (In the example just described, a safer alternative would be to temporarily switch the process's effective user ID to the real ID and then call B<open>(2).)"
1107 msgstr "B<警告>: あるユーザーが、例えば B<open>(2) によるアクセスが可能かどうかを、 (実際に行う前に) これらのシステムコールを使ってチェックするのは、セキュリティホールの原因になる。なぜならチェックをしてから 実際にファイルのオープン操作をする間の短い間隔を悪用できるからである。 B<この理由があるので、このシステムコールを使うのは避けるべきである。> (ここで説明した例の場合には、より安全な方法としては、 そのプロセスの実効ユーザー ID を実ユーザー ID に一時的に切り替えてから B<open>(2) を呼び出す方法がある。)"
1110 #: build/C/man2/access.2:288
1111 msgid "B<access>() always dereferences symbolic links. If you need to check the permissions on a symbolic link, use B<faccessat>(2) with the flag B<AT_SYMLINK_NOFOLLOW>."
1113 "B<access>() は常にシンボリックリンクの展開を行う。\n"
1114 "シンボリックリンクのアクセス許可を確認する必要がある場合は、\n"
1115 "B<AT_SYMLINK_NOFOLLOW> フラグ付きで B<faccessat>(2) を使うこと。"
1118 #: build/C/man2/access.2:294
1119 msgid "These calls return an error if any of the access types in I<mode> is denied, even if some of the other access types in I<mode> are permitted."
1120 msgstr "I<mode> で指定されたアクセス種別のいずれか一つでも拒否されると、 たとえ I<mode> で指定された他のアクセス種別が許可されたとしても、 これらのシステムコールはエラーを返す。"
1122 #. HPU-UX 11 and Tru64 5.1 do this.
1124 #: build/C/man2/access.2:301
1125 msgid "If the calling process has appropriate privileges (i.e., is superuser), POSIX.1-2001 permits an implementation to indicate success for an B<X_OK> check even if none of the execute file permission bits are set. Linux does not do this."
1126 msgstr "POSIX.1-2001 では、 呼び出し元プロセスが適切な特権を持っている場合 (つまり、スーパーユーザーの場合)、 たとえファイルの実行許可ビットが全くセットされていなくても B<X_OK> のチェックとして成功を返す実装が認められている。 Linux はこのようにはなっていない。"
1129 #: build/C/man2/access.2:309
1130 msgid "A file is accessible only if the permissions on each of the directories in the path prefix of I<pathname> grant search (i.e., execute) access. If any directory is inaccessible, then the B<access>() call will fail, regardless of the permissions on the file itself."
1131 msgstr "I<pathname> のプレフィックスを構成するディレクトリの全てに対して 検索アクセス (すなわち、実行アクセス) が許可された場合にのみ、 ファイルはアクセス可能となる。 いずれかのディレクトリがアクセス不可の場合、 ファイル自身のアクセス許可に関わらず、 B<access>() は失敗する。"
1134 #: build/C/man2/access.2:317
1135 msgid "Only access bits are checked, not the file type or contents. Therefore, if a directory is found to be writable, it probably means that files can be created in the directory, and not that the directory can be written as a file. Similarly, a DOS file may be found to be \"executable,\" but the B<execve>(2) call will still fail."
1136 msgstr "アクセスビットのみがチェックされ、ファイルの種類や内容はチェックされない。 従って、ディレクトリが書き込み可能となった場合は、ディレクトリに ファイルを作成することが可能なことを意味するのであり、ディレクトリに ファイルとして書き込むことができるわけではない。 同様に DOS のファイルは「実行可能」と判断されるが、 B<execve>(2) コールは失敗するだろう。"
1139 #: build/C/man2/access.2:326
1140 msgid "These calls may not work correctly on NFSv2 filesystems with UID mapping enabled, because UID mapping is done on the server and hidden from the client, which checks permissions. (NFS versions 3 and higher perform the check on the server.) Similar problems can occur to FUSE mounts."
1141 msgstr "これらのシステムコールは、 UID マッピングを使用した NFSv2 ファイルシステムでは正常に機能しないかもしれない。なぜならば UID のマッピングはサーバーで 行なわれ、権利のチェックをするクライアントには見えないからである。 (NFS バージョン 3 以降ではサーバー側でチェックが実行される。) 同様の問題は FUSE マウントでも起こり得る。"
1144 #: build/C/man2/access.2:326 build/C/man2/brk.2:140 build/C/man2/chmod.2:338
1145 #: build/C/man2/gethostname.2:140 build/C/man2/uname.2:138
1147 msgid "C library/kernel ABI differences"
1148 msgstr "C ライブラリとカーネル ABI の違い"
1151 #: build/C/man2/access.2:339
1152 msgid "The raw B<faccessat>() system call takes only the first three arguments. The B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are actually implemented within the glibc wrapper function for B<faccessat>(). If either of these flags is specified, then the wrapper function employs B<fstatat>(2) to determine access permissions."
1153 msgstr "生の B<faccessat>() システムコールは、最初の 3 つの引き数だけを取る。フラグ B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> は実際には B<faccessat>() の glibc のラッパー関数内で実装されている。これらのフラグのいずれかが指定された場合、ラッパー関数は B<fstatat>(2) を使ってアクセス許可の判定を行う。"
1156 #: build/C/man2/access.2:339 build/C/man2/chmod.2:348 build/C/man2/chown.2:380
1157 #: build/C/man3/crypt.3:189 build/C/man2/mkdir.2:223
1163 #: build/C/man2/access.2:357
1164 msgid "On older kernels where B<faccessat>() is unavailable (and when the B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are not specified), the glibc wrapper function falls back to the use of B<access>(). When I<pathname> is a relative pathname, glibc constructs a pathname based on the symbolic link in I</proc/self/fd> that corresponds to the I<dirfd> argument."
1165 msgstr "B<faccessat>() が利用できない古いカーネルでは、(フラグ B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> が指定されていない場合) glibc ラッパー関数は B<access>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンクに基づいてパス名を構成する。"
1168 #: build/C/man2/access.2:357 build/C/man7/environ.7:209
1169 #: build/C/man2/fcntl.2:1818 build/C/man3/fexecve.3:146
1170 #: build/C/man3/gethostid.3:122 build/C/man3/getlogin.3:177
1171 #: build/C/man3/getopt.3:369 build/C/man2/mincore.2:144
1172 #: build/C/man2/pread.2:146 build/C/man3/sleep.3:46 build/C/man3/sysconf.3:329
1173 #: build/C/man2/sysctl.2:135 build/C/man2/truncate.2:253
1174 #: build/C/man2/vfork.2:252 build/C/man2/execveat.2:210
1179 #. This behavior appears to have been an implementation accident.
1181 #: build/C/man2/access.2:380
1182 msgid "In kernel 2.4 (and earlier) there is some strangeness in the handling of B<X_OK> tests for superuser. If all categories of execute permission are disabled for a nondirectory file, then the only B<access>() test that returns -1 is when I<mode> is specified as just B<X_OK>; if B<R_OK> or B<W_OK> is also specified in I<mode>, then B<access>() returns 0 for such files. Early 2.6 kernels (up to and including 2.6.3) also behaved in the same way as kernel 2.4."
1183 msgstr "バージョン 2.4 (とそれ以前) のカーネルには、スーパーユーザーでの B<X_OK> のチェックの扱いに奇妙な点がある。 ディレクトリ以外のファイルで (ユーザー、グループ、他人の) 全てのカテゴリについて 実行許可がない場合、 B<access>() のチェックで -1 が返るのは I<mode> に B<X_OK> だけが指定されたときだけであり I<mode> に B<R_OK> や B<W_OK> が一緒に指定された場合には B<access>() は 0 を返す。 (バージョン 2.6.3 以前の) 初期の 2.6 系のカーネルも 2.4 系のカーネルと同様の動作をする。"
1186 #: build/C/man2/access.2:390
1187 msgid "In kernels before 2.6.20, these calls ignored the effect of the B<MS_NOEXEC> flag if it was used to B<mount>(2) the underlying filesystem. Since kernel 2.6.20, the B<MS_NOEXEC> is honored"
1188 msgstr "2.6.20 より前のカーネルでは、 これらのシステムコールはファイルが存在するファイルシステムを B<mount>(2) する際に指定された B<MS_NOEXEC> フラグの効果を無視していた。 カーネル 2.6.20 以降では、 B<MS_NOEXEC> フラグは考慮されるようになっている。"
1191 #: build/C/man2/access.2:401
1192 msgid "B<chmod>(2), B<chown>(2), B<open>(2), B<setgid>(2), B<setuid>(2), B<stat>(2), B<euidaccess>(3), B<credentials>(7), B<path_resolution>(7), B<symlink>(7)"
1193 msgstr "B<chmod>(2), B<chown>(2), B<open>(2), B<setgid>(2), B<setuid>(2), B<stat>(2), B<euidaccess>(3), B<credentials>(7), B<path_resolution>(7), B<symlink>(7)"
1196 #: build/C/man2/alarm.2:30
1202 #: build/C/man2/alarm.2:30
1208 #: build/C/man2/alarm.2:33
1209 msgid "alarm - set an alarm clock for delivery of a signal"
1210 msgstr "alarm - シグナル配送のためのアラームクロックを設定する"
1213 #: build/C/man2/alarm.2:38
1215 msgid "B<unsigned int alarm(unsigned int >I<seconds>B<);>\n"
1216 msgstr "B<unsigned int alarm(unsigned int >I<seconds>B<);>\n"
1219 #: build/C/man2/alarm.2:46
1220 msgid "B<alarm>() arranges for a B<SIGALRM> signal to be delivered to the calling process in I<seconds> seconds."
1221 msgstr "B<alarm>() は B<SIGALRM> シグナルを I<seconds> 秒後に呼び出したプロセスに配送するように手配する。"
1224 #: build/C/man2/alarm.2:50
1225 msgid "If I<seconds> is zero, any pending alarm is canceled."
1226 msgstr "I<seconds> がゼロならば、処理待ち (pending) のアラームはすべてキャンセルされる。"
1229 #: build/C/man2/alarm.2:54
1230 msgid "In any event any previously set B<alarm>() is canceled."
1231 msgstr "今までに設定されていた B<alarm>() は中断される。"
1234 #: build/C/man2/alarm.2:59
1235 msgid "B<alarm>() returns the number of seconds remaining until any previously scheduled alarm was due to be delivered, or zero if there was no previously scheduled alarm."
1236 msgstr "B<alarm>() は以前に予定されていたアラームの配送までの残り時間を返す。以前に アラームが予定されていなければゼロを返す。"
1239 #: build/C/man2/alarm.2:61
1240 msgid "SVr4, POSIX.1-2001, 4.3BSD."
1241 msgstr "SVr4, POSIX.1-2001, 4.3BSD."
1244 #: build/C/man2/alarm.2:67
1245 msgid "B<alarm>() and B<setitimer>(2) share the same timer; calls to one will interfere with use of the other."
1246 msgstr "B<alarm>() と B<setitimer>(2) は同じタイマーを共有している; 片方を呼び出すことはもう一方の 使用に影響を与える。"
1249 #: build/C/man2/alarm.2:74
1250 msgid "Alarms created by B<alarm>() are preserved across B<execve>(2) and are not inherited by children created via B<fork>(2)."
1251 msgstr "B<alarm>() で作成されたアラームは B<execve>(2) の前後で保持され、 B<fork>(2) で作成された子プロセスには継承されない。"
1254 #: build/C/man2/alarm.2:83
1255 msgid "B<sleep>(3) may be implemented using B<SIGALRM>; mixing calls to B<alarm>() and B<sleep>(3) is a bad idea."
1256 msgstr "B<sleep>(3) は B<SIGALRM> を利用して実装されているかもしれない。 B<alarm>() と B<sleep>(3) を混ぜて使用してはならない。"
1259 #: build/C/man2/alarm.2:86
1260 msgid "Scheduling delays can, as ever, cause the execution of the process to be delayed by an arbitrary amount of time."
1261 msgstr "スケジューリング(scheduling)の遅延により、プロセスの実行に不定量の 遅延が起きる可能性がある。"
1264 #: build/C/man2/alarm.2:95
1265 msgid "B<gettimeofday>(2), B<pause>(2), B<select>(2), B<setitimer>(2), B<sigaction>(2), B<signal>(2), B<sleep>(3), B<time>(7)"
1266 msgstr "B<gettimeofday>(2), B<pause>(2), B<select>(2), B<setitimer>(2), B<sigaction>(2), B<signal>(2), B<sleep>(3), B<time>(7)"
1269 #: build/C/man2/brk.2:29
1275 #: build/C/man2/brk.2:32
1276 msgid "brk, sbrk - change data segment size"
1277 msgstr "brk, sbrk - データセグメントのサイズの変更する"
1280 #: build/C/man2/brk.2:34 build/C/man2/chdir.2:38 build/C/man2/chroot.2:38
1281 #: build/C/man3/daemon.3:41 build/C/man3/encrypt.3:37 build/C/man3/exec.3:46
1282 #: build/C/man2/execve.2:42 build/C/man2/fork.2:44 build/C/man2/fsync.2:43
1283 #: build/C/man2/getdomainname.2:34 build/C/man3/getdtablesize.3:32
1284 #: build/C/man3/gethostid.3:34 build/C/man2/gethostname.2:37
1285 #: build/C/man3/getlogin.3:33 build/C/man2/getpagesize.2:30
1286 #: build/C/man2/idle.2:37 build/C/man3/lockf.3:33 build/C/man2/mincore.2:39
1287 #: build/C/man2/nice.2:36 build/C/man2/pread.2:30 build/C/man2/setup.2:39
1288 #: build/C/man2/swapon.2:47 build/C/man3/tcgetpgrp.3:30
1289 #: build/C/man2/truncate.2:48 build/C/man2/uselib.2:36 build/C/man2/vfork.2:35
1290 #: build/C/man2/vhangup.2:33 build/C/man2/execveat.2:31
1291 msgid "B<#include E<lt>unistd.hE<gt>>"
1292 msgstr "B<#include E<lt>unistd.hE<gt>>"
1295 #: build/C/man2/brk.2:36
1296 msgid "B<int brk(void *>I<addr>B<);>"
1297 msgstr "B<int brk(void *>I<addr>B<);>"
1300 #: build/C/man2/brk.2:38
1301 msgid "B<void *sbrk(intptr_t >I<increment>B<);>"
1302 msgstr "B<void *sbrk(intptr_t >I<increment>B<);>"
1305 #: build/C/man2/brk.2:46
1306 msgid "B<brk>(), B<sbrk>():"
1307 msgstr "B<brk>(), B<sbrk>():"
1310 #: build/C/man2/brk.2:49 build/C/man3/getcwd.3:60
1311 #: build/C/man3/getdtablesize.3:44 build/C/man2/getpagesize.2:42
1312 #: build/C/man3/ualarm.3:43 build/C/man3/usleep.3:52 build/C/man2/vfork.2:47
1314 msgid "Since glibc 2.12:"
1315 msgstr "glibc 2.12 以降:"
1318 #: build/C/man2/brk.2:56
1321 "_BSD_SOURCE || _SVID_SOURCE ||\n"
1322 " (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
1323 " _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
1324 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
1326 "_BSD_SOURCE || _SVID_SOURCE ||\n"
1327 " (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
1328 " _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
1329 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
1332 #: build/C/man2/brk.2:61
1333 msgid "Before glibc 2.12: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1334 msgstr "glibc 2.12 より前: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1337 #: build/C/man2/brk.2:76
1338 msgid "B<brk>() and B<sbrk>() change the location of the I<program break>, which defines the end of the process's data segment (i.e., the program break is the first location after the end of the uninitialized data segment). Increasing the program break has the effect of allocating memory to the process; decreasing the break deallocates memory."
1339 msgstr "B<brk>() と B<sbrk>() は I<プログラムブレーク (program break)> の場所を変更する。 プログラムブレークはプロセスのデータセグメント (data segment) の 末尾を示す (プログラムブレークは、初期化されていない データセグメントの末尾の直後の場所となる)。 プログラムブレークを増やすということは、そのプロセスへの メモリを割り当てる効果があり、 プログラムブレークを減らすということは、メモリを解放する ということである。"
1342 #: build/C/man2/brk.2:83
1343 msgid "B<brk>() sets the end of the data segment to the value specified by I<addr>, when that value is reasonable, the system has enough memory, and the process does not exceed its maximum data size (see B<setrlimit>(2))."
1344 msgstr "B<brk>() は、データセグメントの末尾を I<addr> で指定した値に設定する。 設定が行われるのは、指定した値が有効で、 システムに十分なメモリがあり、 プロセスのデータサイズの最大値を超えていない場合である (B<setrlimit>(2) を参照)。"
1347 #: build/C/man2/brk.2:93
1348 msgid "B<sbrk>() increments the program's data space by I<increment> bytes. Calling B<sbrk>() with an I<increment> of 0 can be used to find the current location of the program break."
1349 msgstr "B<sbrk>() は、プログラムのデータ空間を I<increment> バイトだけ増やす。 I<increment> を 0 にして B<sbrk>() を呼び出すことで、プログラムの現在のブレーク (break) 場所を知ることができる。"
1352 #: build/C/man2/brk.2:101
1353 msgid "On success, B<brk>() returns zero. On error, -1 is returned, and I<errno> is set to B<ENOMEM>."
1354 msgstr "成功した場合、 B<brk>() は 0 を返す。 エラーの場合には、-1 を返し、 I<errno> に B<ENOMEM> を設定する。"
1357 #: build/C/man2/brk.2:113
1358 msgid "On success, B<sbrk>() returns the previous program break. (If the break was increased, then this value is a pointer to the start of the newly allocated memory). On error, I<(void\\ *)\\ -1> is returned, and I<errno> is set to B<ENOMEM>."
1359 msgstr "成功した場合、 B<sbrk>() は変更前のプログラムブレークを返す (プログラムブレークが増やされた場合、この値は 新しく割り当てられたメモリの先頭を指すポインタとなる)。 エラーの場合には、 I<(void\\ *)\\ -1> を返し、 I<errno> に B<ENOMEM> を設定する。"
1364 #. are not defined in the C Standard and are deliberately excluded from the
1365 #. POSIX.1-1990 standard (see paragraphs B.1.1.1.3 and B.8.3.3).
1367 #: build/C/man2/brk.2:121
1368 msgid "4.3BSD; SUSv1, marked LEGACY in SUSv2, removed in POSIX.1-2001."
1369 msgstr "4.3BSD, SUSv1. SUSv2 では「過去の名残 (LEGACY)」と位置付けられており、 POSIX.1-2001 で削除された。"
1372 #: build/C/man2/brk.2:130
1373 msgid "Avoid using B<brk>() and B<sbrk>(): the B<malloc>(3) memory allocation package is the portable and comfortable way of allocating memory."
1374 msgstr "B<brk>() や B<sbrk>() を使用するのは避けること。 B<malloc>(3) メモリ割り当てパッケージの方が、移植性が高く、 使いやすいメモリ割り当て方法を提供している。"
1377 #. \fIint\fP (e.g., XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
1378 #. \fIssize_t\fP (OSF1 2.0, Irix 5.3, 6.5),
1379 #. \fIptrdiff_t\fP (libc4, libc5, ulibc, glibc 2.0, 2.1),
1380 #. \fIintptr_t\fP (e.g., XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7, NetBSD 1.6,
1381 #. Tru64 5.1, glibc2.2).
1383 #: build/C/man2/brk.2:140
1384 msgid "Various systems use various types for the argument of B<sbrk>(). Common are I<int>, I<ssize_t>, I<ptrdiff_t>, I<intptr_t>."
1385 msgstr "いろいろなシステムにおいて、 B<sbrk>() の引き数に様々な型が使われている。 一般的なのは I<int>, I<ssize_t>, I<ptrdiff_t>, I<intptr_t> である。"
1388 #: build/C/man2/brk.2:156
1389 msgid "The return value described above for B<brk>() is the behavior provided by the glibc wrapper function for the Linux B<brk>() system call. (On most other implementations, the return value from B<brk>() is the same; this return value was also specified in SUSv2.) However, the actual Linux system call returns the new program break on success. On failure, the system call returns the current break. The glibc wrapper function does some work (i.e., checks whether the new break is less than I<addr>) to provide the 0 and -1 return values described above."
1390 msgstr "上で説明した B<brk>() の返り値についての動作は、 Linux の B<brk>() システムコールをラップする glibc の関数によるものである。 (その他の多くの実装でも、 B<brk>() の返り値はこれと同じである。 この返り値は SUSv2 でも規定されている。) しかし、実際の Linux システムコールは、成功した場合、 プログラムの新しいブレークを返す。 失敗した場合、このシステムコールは現在のブレークを返す。 glibc ラッパー関数は同様の働きをし (すなわち、新しいブレークが I<addr> より小さいかどうかをチェックし)、 上で説明した 0 と -1 という返り値を返す。"
1393 #: build/C/man2/brk.2:163
1394 msgid "On Linux, B<sbrk>() is implemented as a library function that uses the B<brk>() system call, and does some internal bookkeeping so that it can return the old break value."
1395 msgstr "Linux では B<sbrk>() は B<brk>() システムコールを使うライブラリ関数として実装されており、 以前のブレークの値を返すことができるように内部で調整が行われている。"
1398 #: build/C/man2/brk.2:168
1399 msgid "B<execve>(2), B<getrlimit>(2), B<end>(3), B<malloc>(3)"
1400 msgstr "B<execve>(2), B<getrlimit>(2), B<end>(3), B<malloc>(3)"
1403 #: build/C/man2/chdir.2:33
1409 #: build/C/man2/chdir.2:33
1415 #: build/C/man2/chdir.2:36
1416 msgid "chdir, fchdir - change working directory"
1417 msgstr "chdir, fchdir - 作業ディレクトリの変更"
1420 #: build/C/man2/chdir.2:40
1421 msgid "B<int chdir(const char *>I<path>B<);>"
1422 msgstr "B<int chdir(const char *>I<path>B<);>"
1425 #: build/C/man2/chdir.2:42
1426 msgid "B<int fchdir(int >I<fd>B<);>"
1427 msgstr "B<int fchdir(int >I<fd>B<);>"
1430 #: build/C/man2/chdir.2:49
1431 msgid "B<fchdir>():"
1432 msgstr "B<fchdir>():"
1435 #: build/C/man2/chdir.2:54 build/C/man2/chmod.2:62 build/C/man2/chown.2:71
1436 #: build/C/man3/gethostid.3:50 build/C/man2/truncate.2:66
1437 #: build/C/man2/truncate.2:74
1438 msgid "_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1439 msgstr "_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1442 #: build/C/man2/chdir.2:56 build/C/man2/chmod.2:64 build/C/man2/chown.2:73
1443 #: build/C/man2/pread.2:50 build/C/man2/truncate.2:68
1444 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1445 msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1448 #: build/C/man2/chdir.2:64
1449 msgid "B<chdir>() changes the current working directory of the calling process to the directory specified in I<path>."
1450 msgstr "B<chdir>() は、呼び出し元プロセスの現在の作業ディレクトリ (current working directory) を、 I<path> に指定されたディレクトリに変更する。"
1453 #: build/C/man2/chdir.2:70
1454 msgid "B<fchdir>() is identical to B<chdir>(); the only difference is that the directory is given as an open file descriptor."
1455 msgstr "B<fchdir>() は、ディレクトリがオープンされたファイルディスクリプターとして 指定される以外は、 B<chdir>() と同じである。"
1458 #: build/C/man2/chdir.2:75 build/C/man2/chmod.2:236 build/C/man2/chown.2:229
1459 #: build/C/man2/chroot.2:95 build/C/man2/flock.2:117
1460 #: build/C/man2/getdomainname.2:80 build/C/man2/gethostname.2:94
1461 #: build/C/man2/ioperm.2:84 build/C/man3/lockf.3:121 build/C/man2/swapon.2:116
1462 #: build/C/man2/sysinfo.2:79 build/C/man2/truncate.2:115
1463 #: build/C/man2/uname.2:68 build/C/man2/uselib.2:53 build/C/man2/vhangup.2:55
1464 msgid "On success, zero is returned. On error, -1 is returned, and I<errno> is set appropriately."
1465 msgstr "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設定される。"
1468 #: build/C/man2/chdir.2:81
1469 msgid "Depending on the filesystem, other errors can be returned. The more general errors for B<chdir>() are listed below:"
1470 msgstr "ファイルシステムによっては他のエラーが返される事がある。 B<chdir>() で一般的なエラーを以下に挙げる:"
1473 #: build/C/man2/chdir.2:87
1474 msgid "Search permission is denied for one of the components of I<path>. (See also B<path_resolution>(7).)"
1475 msgstr "I<path> の構成要素のいずれかに検索許可 (search permission) がない (B<path_resolution>(7) も参照すること)。"
1478 #: build/C/man2/chdir.2:91 build/C/man2/chroot.2:109
1479 msgid "I<path> points outside your accessible address space."
1480 msgstr "I<path> がアクセスできるアドレス空間外を指している。"
1483 #: build/C/man2/chdir.2:98 build/C/man2/chroot.2:116
1484 msgid "Too many symbolic links were encountered in resolving I<path>."
1485 msgstr "I<path> を解決する際に遭遇したシンボリックリンクが多過ぎる。"
1488 #: build/C/man2/chdir.2:102 build/C/man2/chroot.2:120
1489 msgid "I<path> is too long."
1490 msgstr "I<path> が長過ぎる。"
1493 #: build/C/man2/chdir.2:105 build/C/man2/chmod.2:266 build/C/man2/chown.2:256
1494 #: build/C/man2/chroot.2:123
1495 msgid "The file does not exist."
1496 msgstr "ファイルが存在しない。"
1499 #: build/C/man2/chdir.2:113 build/C/man2/chroot.2:131
1500 msgid "A component of I<path> is not a directory."
1501 msgstr "I<path> の構成要素がディレクトリではない。"
1504 #: build/C/man2/chdir.2:117
1505 msgid "The general errors for B<fchdir>() are listed below:"
1506 msgstr "B<fchdir>() で一般的なエラーを以下に挙げる:"
1509 #: build/C/man2/chdir.2:121
1510 msgid "Search permission was denied on the directory open on I<fd>."
1511 msgstr "I<fd> をディレクトリとしてオープンするための検索許可がない。"
1514 #: build/C/man2/chdir.2:125 build/C/man3/tcgetpgrp.3:91
1515 msgid "I<fd> is not a valid file descriptor."
1516 msgstr "I<fd> が適切なファイルディスクリプターでない。"
1519 #: build/C/man2/chdir.2:127
1520 msgid "SVr4, 4.4BSD, POSIX.1-2001."
1521 msgstr "SVr4, 4.4BSD, POSIX.1-2001."
1524 #: build/C/man2/chdir.2:130
1525 msgid "The current working directory is the starting point for interpreting relative pathnames (those not starting with \\(aq/\\(aq)."
1526 msgstr "現在の作業ディレクトリは、相対パス名 (\\(aq/\\(aq) で始まっていないパス名) を 解釈する際の開始点である。"
1529 #: build/C/man2/chdir.2:136
1530 msgid "A child process created via B<fork>(2) inherits its parent's current working directory. The current working directory is left unchanged by B<execve>(2)."
1531 msgstr "B<fork>(2) で作成された子プロセスは、親プロセスの現在の作業ディレクトリを 継承する。 B<execve>(2) の前後で、現在の作業ディレクトリは変更されない。"
1534 #: build/C/man2/chdir.2:140
1535 msgid "B<chroot>(2), B<getcwd>(3), B<path_resolution>(7)"
1536 msgstr "B<chroot>(2), B<getcwd>(3), B<path_resolution>(7)"
1539 #: build/C/man2/chmod.2:32
1545 #: build/C/man2/chmod.2:35
1546 msgid "chmod, fchmod, fchmodat - change permissions of a file"
1547 msgstr "chmod, fchmod, fchmodat - ファイルのモードを変更する"
1550 #: build/C/man2/chmod.2:38
1552 msgid "B<#include E<lt>sys/stat.hE<gt>>\n"
1553 msgstr "B<#include E<lt>sys/stat.hE<gt>>\n"
1556 #: build/C/man2/chmod.2:40
1558 msgid "B<int chmod(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
1559 msgstr "B<int chmod(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
1562 #: build/C/man2/chmod.2:42
1564 msgid "B<int fchmod(int >I<fd>B<, mode_t >I<mode>B<);>\n"
1565 msgstr "B<int fchmod(int >I<fd>B<, mode_t >I<mode>B<);>\n"
1568 #: build/C/man2/chmod.2:45
1571 "B<#include E<lt>fcntl.hE<gt>> /* Definition of AT_* constants */\n"
1572 "B<#include E<lt>sys/stat.hE<gt>>\n"
1574 "B<#include E<lt>fcntl.hE<gt>> /* AT_* 定数の定義 */\n"
1575 "B<#include E<lt>sys/stat.hE<gt>>\n"
1578 #: build/C/man2/chmod.2:48
1580 msgid "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<, int >I<flags>B<);>\n"
1581 msgstr "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<, int >I<flags>B<);>\n"
1584 #: build/C/man2/chmod.2:58
1585 msgid "B<fchmod>():"
1586 msgstr "B<fchmod>():"
1589 #: build/C/man2/chmod.2:68
1590 msgid "B<fchmodat>():"
1591 msgstr "B<fchmodat>():"
1594 #: build/C/man2/chmod.2:88
1595 msgid "The B<chmod>() and B<fchmod>() system calls change the permissions of a file. They differ only in how the file is specified:"
1596 msgstr "システムコール B<chmod>() と B<fchmod>() は、ファイルのアクセス許可 (permission) を変更する。 システムコール間の違いは、ファイルの指定の仕方だけである。"
1599 #: build/C/man2/chmod.2:88 build/C/man2/chmod.2:93 build/C/man2/chown.2:96
1600 #: build/C/man2/chown.2:101 build/C/man2/chown.2:105 build/C/man2/chown.2:353
1601 #: build/C/man2/chown.2:358 build/C/man2/chown.2:364 build/C/man2/dup.2:106
1602 #: build/C/man2/dup.2:112 build/C/man2/dup.2:129 build/C/man2/dup.2:138
1603 #: build/C/man2/execve.2:122 build/C/man2/execve.2:126
1604 #: build/C/man2/execve.2:129 build/C/man2/execve.2:132
1605 #: build/C/man2/execve.2:135 build/C/man2/execve.2:138
1606 #: build/C/man2/execve.2:141 build/C/man2/execve.2:144
1607 #: build/C/man2/execve.2:147 build/C/man2/execve.2:150
1608 #: build/C/man2/execve.2:154 build/C/man2/execve.2:158
1609 #: build/C/man2/execve.2:167 build/C/man2/execve.2:174
1610 #: build/C/man2/execve.2:179 build/C/man2/execve.2:186
1611 #: build/C/man2/execve.2:193 build/C/man2/execve.2:200
1612 #: build/C/man2/execve.2:207 build/C/man2/execve.2:211
1613 #: build/C/man2/execve.2:214 build/C/man2/execve.2:222
1614 #: build/C/man2/execve.2:226 build/C/man2/execve.2:231
1615 #: build/C/man2/fcntl.2:452 build/C/man2/fcntl.2:468 build/C/man2/fork.2:52
1616 #: build/C/man2/fork.2:56 build/C/man2/fork.2:58 build/C/man2/fork.2:62
1617 #: build/C/man2/fork.2:68 build/C/man2/fork.2:71 build/C/man2/fork.2:74
1618 #: build/C/man2/fork.2:82 build/C/man2/fork.2:87 build/C/man2/fork.2:99
1619 #: build/C/man2/fork.2:106 build/C/man2/fork.2:112 build/C/man2/fork.2:119
1620 #: build/C/man2/fork.2:125 build/C/man2/fork.2:130 build/C/man2/fork.2:138
1621 #: build/C/man2/fork.2:147 build/C/man2/fork.2:161 build/C/man2/fork.2:170
1622 #: build/C/man2/syscalls.2:87 build/C/man2/syscalls.2:90
1623 #: build/C/man2/syscalls.2:96 build/C/man2/syscalls.2:112
1624 #: build/C/man2/syscalls.2:118 build/C/man2/syscalls.2:124
1625 #: build/C/man2/syscalls.2:130 build/C/man2/syscalls.2:137
1626 #: build/C/man2/syscalls.2:703 build/C/man2/syscalls.2:724
1627 #: build/C/man2/syscalls.2:735 build/C/man2/syscalls.2:742
1628 #: build/C/man2/syscalls.2:753 build/C/man2/syscalls.2:765
1629 #: build/C/man2/syscalls.2:786 build/C/man2/syscalls.2:794
1630 #: build/C/man2/vfork.2:193 build/C/man2/vfork.2:197
1636 #: build/C/man2/chmod.2:93
1637 msgid "B<chmod>() changes the permissions of the file specified whose pathname is given in I<pathname>, which is dereferenced if it is a symbolic link."
1638 msgstr "B<chmod>() は、 I<pathname> で指定されたパス名を持つファイルの許可を変更する。 I<pathname> がシンボリックリンクの場合は、リンクの展開が行われる。"
1641 #: build/C/man2/chmod.2:97
1642 msgid "B<fchmod>() changes the permissions of the file referred to by the open file descriptor I<fd>."
1643 msgstr "B<fchmod>() は、オープンされたファイルディスクリプター I<fd> により参照されるファイルの許可を変更する。"
1646 #: build/C/man2/chmod.2:102
1647 msgid "The new file permissions are specified in I<mode>, which is a bit mask created by ORing together zero or more of the following:"
1648 msgstr "新しいファイル許可は I<mode> で指定される。 I<mode> は、以下に示す値の 0 個以上の OR (論理和) をとって作成される ビットマスクである。"
1651 #: build/C/man2/chmod.2:102
1653 msgid "B<S_ISUID> (04000)"
1654 msgstr "B<S_ISUID> (04000)"
1657 #: build/C/man2/chmod.2:106
1658 msgid "set-user-ID (set process effective user ID on B<execve>(2))"
1659 msgstr "set-user-ID (B<execve>(2) 時にプロセスの実効ユーザー ID にセットされる)"
1662 #: build/C/man2/chmod.2:106
1664 msgid "B<S_ISGID> (02000)"
1665 msgstr "B<S_ISGID> (02000)"
1668 #: build/C/man2/chmod.2:116
1669 msgid "set-group-ID (set process effective group ID on B<execve>(2); mandatory locking, as described in B<fcntl>(2); take a new file's group from parent directory, as described in B<chown>(2) and B<mkdir>(2))"
1670 msgstr "set-group-ID (以下の場合に (B<execve>(2) 実行時にプロセスの実効グループ ID にセットされる、 強制ロック (mandatory locking) を行う (B<fcntl>(2) の説明を参照)、 新しいファイルのグループとして親ディレクトリと同じものを使う (B<chown>(2) と B<(>mkdirB<(2)> の説明を参照)"
1673 #: build/C/man2/chmod.2:116
1675 msgid "B<S_ISVTX> (01000)"
1676 msgstr "B<S_ISVTX> (01000)"
1679 #: build/C/man2/chmod.2:120
1680 msgid "sticky bit (restricted deletion flag, as described in B<unlink>(2))"
1681 msgstr "スティッキービット (sticky bit) (削除制限フラグ、 B<unlink>(2) の説明を参照)"
1684 #: build/C/man2/chmod.2:120
1686 msgid "B<S_IRUSR> (00400)"
1687 msgstr "B<S_IRUSR> (00400)"
1690 #: build/C/man2/chmod.2:123
1691 msgid "read by owner"
1695 #: build/C/man2/chmod.2:123
1697 msgid "B<S_IWUSR> (00200)"
1698 msgstr "B<S_IWUSR> (00200)"
1701 #: build/C/man2/chmod.2:126
1702 msgid "write by owner"
1706 #: build/C/man2/chmod.2:126
1708 msgid "B<S_IXUSR> (00100)"
1709 msgstr "B<S_IXUSR> (00100)"
1712 #: build/C/man2/chmod.2:130
1713 msgid "execute/search by owner (\"search\" applies for directories, and means that entries within the directory can be accessed)"
1714 msgstr "所有者による実行 (execute) / 検索 (search) (「検索」はディレクトリに対して適用されるもので、 そのディレクトリ内のエントリーへアクセスできるかを意味する)"
1717 #: build/C/man2/chmod.2:130
1719 msgid "B<S_IRGRP> (00040)"
1720 msgstr "B<S_IRGRP> (00040)"
1723 #: build/C/man2/chmod.2:133
1724 msgid "read by group"
1725 msgstr "グループによる読み取り"
1728 #: build/C/man2/chmod.2:133
1730 msgid "B<S_IWGRP> (00020)"
1731 msgstr "B<S_IWGRP> (00020)"
1734 #: build/C/man2/chmod.2:136
1735 msgid "write by group"
1736 msgstr "グループによる書き込み"
1739 #: build/C/man2/chmod.2:136
1741 msgid "B<S_IXGRP> (00010)"
1742 msgstr "B<S_IXGRP> (00010)"
1745 #: build/C/man2/chmod.2:139
1746 msgid "execute/search by group"
1747 msgstr "グループによる実行 / 検索"
1750 #: build/C/man2/chmod.2:139
1752 msgid "B<S_IROTH> (00004)"
1753 msgstr "B<S_IROTH> (00004)"
1756 #: build/C/man2/chmod.2:142
1757 msgid "read by others"
1758 msgstr "他人 (others) による読み取り"
1761 #: build/C/man2/chmod.2:142
1763 msgid "B<S_IWOTH> (00002)"
1764 msgstr "B<S_IWOTH> (00002)"
1767 #: build/C/man2/chmod.2:145
1768 msgid "write by others"
1772 #: build/C/man2/chmod.2:145
1774 msgid "B<S_IXOTH> (00001)"
1775 msgstr "B<S_IXOTH> (00001)"
1778 #: build/C/man2/chmod.2:148
1779 msgid "execute/search by others"
1780 msgstr "他人による実行 / 検索"
1783 #: build/C/man2/chmod.2:153
1784 msgid "The effective UID of the calling process must match the owner of the file, or the process must be privileged (Linux: it must have the B<CAP_FOWNER> capability)."
1785 msgstr "呼び出したプロセスの実効 (effective) UID がファイルの所有者と一致するか、 そのプロセスが特権を持たなければならない (Linux では B<CAP_FOWNER> ケーパビリティ (capability) を持たなければならない)。"
1788 #: build/C/man2/chmod.2:162
1789 msgid "If the calling process is not privileged (Linux: does not have the B<CAP_FSETID> capability), and the group of the file does not match the effective group ID of the process or one of its supplementary group IDs, the B<S_ISGID> bit will be turned off, but this will not cause an error to be returned."
1790 msgstr "呼び出したプロセスに特権がなく (Linux では B<CAP_FSETID> ケーパビリティがなく)、かつファイルのグループ ID が プロセスの実効グループ ID または補助的なグループ ID にマッチしない場合、 B<S_ISGID> ビットはオフにされるが、これによってエラーが返されることはない。"
1793 #: build/C/man2/chmod.2:174
1794 msgid "As a security measure, depending on the filesystem, the set-user-ID and set-group-ID execution bits may be turned off if a file is written. (On Linux this occurs if the writing process does not have the B<CAP_FSETID> capability.) On some filesystems, only the superuser can set the sticky bit, which may have a special meaning. For the sticky bit, and for set-user-ID and set-group-ID bits on directories, see B<stat>(2)."
1795 msgstr "安全のための処置として、 ファイルシステムによっては、ファイルの書き込みを行う時に set-user-ID とset-group-ID ビットと実行ビットが オフにされることがある。 (Linux では、書き込みプロセスが B<CAP_FSETID> ケーパビリティを持っていない場合に、これが起こる。) ファイルシステムの中には、スーパーユーザーだけが 特別の意味を持つスティッキービットを設定できるものがある。 スティッキービットとディレクトリに対する set-user-ID (set-group-ID) ビットについては、 B<stat>(2) を見よ。"
1798 #: build/C/man2/chmod.2:182
1799 msgid "On NFS filesystems, restricting the permissions will immediately influence already open files, because the access control is done on the server, but open files are maintained by the client. Widening the permissions may be delayed for other clients if attribute caching is enabled on them."
1800 msgstr "NFS ファイルシステム上では、パーミッションを制限すると、 既にオープンされているファイルに対してすぐに影響が及ぶ。 これはアクセス制御がサーバー上で行われているが、 オープンされているファイルはクライアント側で管理されているためである。 クライアント側でファイル属性のキャッシュが有効になっている場合に、 パーミッションの制限を緩くすると、 他のクライアントに情報が伝わるのが遅れるかもしれない。"
1803 #: build/C/man2/chmod.2:182
1809 #: build/C/man2/chmod.2:188
1810 msgid "The B<fchmodat>() system call operates in exactly the same way as B<chmod>(), except for the differences described here."
1811 msgstr "B<fchmodat>() システムコールは B<chmod>() と全く同様に動作するが、以下で説明する点が異なる。"
1814 #: build/C/man2/chmod.2:198
1815 msgid "If the pathname given in I<pathname> is relative, then it is interpreted relative to the directory referred to by the file descriptor I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<chmod>() for a relative pathname)."
1816 msgstr "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される (B<chmod>() に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。"
1819 #: build/C/man2/chmod.2:210
1820 msgid "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<chmod>())."
1821 msgstr "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> の場合、 (B<chmod>() と同様に) I<pathname> は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。"
1824 #: build/C/man2/chmod.2:219
1825 msgid "I<flags> can either be 0, or include the following flag:"
1826 msgstr "I<flags> には 0 か、以下のフラグを指定することができる。"
1829 #: build/C/man2/chmod.2:226
1830 msgid "If I<pathname> is a symbolic link, do not dereference it: instead operate on the link itself. This flag is not currently implemented."
1831 msgstr "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、リンク自身に対して操作を行う。このフラグは現在のところ実装されていない。"
1834 #: build/C/man2/chmod.2:231
1835 msgid "See B<openat>(2) for an explanation of the need for B<fchmodat>()."
1836 msgstr "B<fchmodat>() の必要性についての説明については B<openat>(2) を参照。"
1839 #: build/C/man2/chmod.2:239 build/C/man2/chown.2:232
1840 msgid "Depending on the filesystem, errors other than those listed below can be returned."
1841 msgstr "ファイルシステムによっては、下記の一覧にない他のエラーが返されることもある。"
1844 #: build/C/man2/chmod.2:243
1845 msgid "The more general errors for B<chmod>() are listed below:"
1846 msgstr "B<chmod>() のごく一般的なエラーを挙げる:"
1848 #. Also search permission is required on the final component,
1849 #. maybe just to guarantee that it is a directory?
1851 #: build/C/man2/chmod.2:248 build/C/man2/chown.2:241 build/C/man2/chroot.2:105
1852 msgid "Search permission is denied on a component of the path prefix. (See also B<path_resolution>(7).)"
1853 msgstr "パス名の構成要素に検索許可がない (B<path_resolution>(7) も見よ)。"
1856 #: build/C/man2/chmod.2:272 build/C/man2/chown.2:262
1857 #: build/C/man2/truncate.2:165
1858 msgid "A component of the path prefix is not a directory."
1859 msgstr "パス名の構成要素がディレクトリではない。"
1862 #: build/C/man2/chmod.2:272 build/C/man2/chmod.2:293 build/C/man2/chown.2:262
1863 #: build/C/man2/chown.2:282 build/C/man2/chroot.2:131 build/C/man3/crypt.3:169
1864 #: build/C/man2/execve.2:451 build/C/man2/execve.2:457
1865 #: build/C/man2/fcntl.2:1625 build/C/man2/fcntl.2:1630
1866 #: build/C/man2/getdomainname.2:91 build/C/man3/gethostid.3:88
1867 #: build/C/man2/gethostname.2:117 build/C/man2/idle.2:56
1868 #: build/C/man2/ioperm.2:98 build/C/man2/mkdir.2:178 build/C/man2/nice.2:62
1869 #: build/C/man2/setup.2:57 build/C/man2/swapon.2:155
1870 #: build/C/man3/tcgetpgrp.3:104 build/C/man2/truncate.2:165
1871 #: build/C/man2/truncate.2:171 build/C/man2/vhangup.2:56
1877 #: build/C/man2/chmod.2:278
1878 msgid "The effective UID does not match the owner of the file, and the process is not privileged (Linux: it does not have the B<CAP_FOWNER> capability)."
1879 msgstr "実効 UID がファイルの所有者と一致せず、プロセスに特権がない (Linux では B<CAP_FOWNER> ケーパビリティを持たない)。"
1882 #: build/C/man2/chmod.2:281 build/C/man2/chown.2:269
1883 #: build/C/man2/truncate.2:178
1884 msgid "The named file resides on a read-only filesystem."
1885 msgstr "ファイルが読み込み専用 (read only) のファイルシステム上にある。"
1888 #: build/C/man2/chmod.2:285
1889 msgid "The general errors for B<fchmod>() are listed below:"
1890 msgstr "B<fchmod>() で一般的なエラーを挙げる:"
1893 #: build/C/man2/chmod.2:290
1894 msgid "The file descriptor I<fd> is not valid."
1895 msgstr "ファイルディスクリプター I<fd> が有効でない。"
1898 #: build/C/man2/chmod.2:293 build/C/man2/chmod.2:296 build/C/man2/chmod.2:299
1899 #: build/C/man2/chown.2:282 build/C/man2/chown.2:285 build/C/man2/chown.2:288
1904 #: build/C/man2/chmod.2:306
1905 msgid "The same errors that occur for B<chmod>() can also occur for B<fchmodat>(). The following additional errors can occur for B<fchmodat>():"
1906 msgstr "B<chmod>() で発生するのと同じエラーが B<fchmodat>() でも起こる。 B<fchmodat>() では以下のエラーも発生する。"
1909 #: build/C/man2/chmod.2:320
1915 #: build/C/man2/chmod.2:326
1916 msgid "I<flags> specified B<AT_SYMLINK_NOFOLLOW>, which is not supported."
1917 msgstr "I<flags> に対応していないフラグ B<AT_SYMLINK_NOFOLLOW> が指定された。"
1920 #: build/C/man2/chmod.2:330
1921 msgid "B<fchmodat>() was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4."
1922 msgstr "B<fchmodat>() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 以降の glibc で利用できる。"
1925 #: build/C/man2/chmod.2:334
1926 msgid "B<chmod>(), B<fchmod>(): 4.4BSD, SVr4, POSIX.1-2001i, POSIX.1-2008."
1927 msgstr "B<chmod>(), B<fchmod>(): 4.4BSD, SVr4, POSIX.1-2001i, POSIX.1-2008."
1930 #: build/C/man2/chmod.2:337
1931 msgid "B<fchmodat>(): POSIX.1-2008."
1932 msgstr "B<fchmodat>(): POSIX.1-2008."
1935 #: build/C/man2/chmod.2:348
1936 msgid "The GNU C library B<fchmodat>() wrapper function implements the POSIX-specified interface described in this page. This interface differs from the underlying Linux system call, which does I<not> have a I<flags> argument."
1937 msgstr "GNU C ライブラリの B<fchmodat>() ラッパー関数は、このページで説明している POSIX で規定されたインターフェースを実装している。このインターフェースは、内部で呼ばれる Linux のシステムコールとは異なる。システムコールは I<flags> 引き数をI<持たない>。"
1940 #: build/C/man2/chmod.2:361
1941 msgid "On older kernels where B<fchmodat>() is unavailable, the glibc wrapper function falls back to the use of B<chmod>(). When I<pathname> is a relative pathname, glibc constructs a pathname based on the symbolic link in I</proc/self/fd> that corresponds to the I<dirfd> argument."
1942 msgstr "B<fchmodat>() が利用できない古いカーネルでは、 glibc ラッパー関数は B<chmod>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンクに基づいてパス名を構成する。"
1945 #: build/C/man2/chmod.2:368
1946 msgid "B<chown>(2), B<execve>(2), B<open>(2), B<stat>(2), B<path_resolution>(7), B<symlink>(7)"
1947 msgstr "B<chown>(2), B<execve>(2), B<open>(2), B<stat>(2), B<path_resolution>(7), B<symlink>(7)"
1950 #: build/C/man2/chown.2:38
1956 #: build/C/man2/chown.2:41
1957 msgid "chown, fchown, lchown, fchownat - change ownership of a file"
1958 msgstr "chown, fchown, lchown, fchownat - ファイルの所有者を変更する"
1961 #: build/C/man2/chown.2:46
1963 msgid "B<int chown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
1964 msgstr "B<int chown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
1967 #: build/C/man2/chown.2:48
1969 msgid "B<int fchown(int >I<fd>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
1970 msgstr "B<int fchown(int >I<fd>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
1973 #: build/C/man2/chown.2:50
1975 msgid "B<int lchown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
1976 msgstr "B<int lchown(const char *>I<pathname>B<, uid_t >I<owner>B<, gid_t >I<group>B<);>\n"
1979 #: build/C/man2/chown.2:56
1982 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
1983 "B< uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
1985 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
1986 "B< uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
1989 #: build/C/man2/chown.2:66
1990 msgid "B<fchown>(), B<lchown>():"
1991 msgstr "B<fchown>(), B<lchown>():"
1994 #: build/C/man2/chown.2:76
1995 msgid "B<fchownat>():"
1996 msgstr "B<fchownat>():"
1999 #: build/C/man2/chown.2:96
2000 msgid "These system calls change the owner and group of a file. The B<chown>(), B<fchown>(), and B<lchown>() system calls differ only in how the file is specified:"
2001 msgstr "これらのシステムコールは、いずれもファイルの所有者 (owner) とグループを変更する。システムコール B<chown>(), B<fchown>(), B<lchown>() 間の違いは、ファイルの指定の仕方だけである。"
2004 #: build/C/man2/chown.2:101
2005 msgid "B<chown>() changes the ownership of the file specified by I<pathname>, which is dereferenced if it is a symbolic link."
2006 msgstr "B<chown>() は I<pathname> で指定されたファイルの所有権を変更する。 I<pathname> がシンボリックリンクの場合は、リンクの展開が行われる。"
2009 #: build/C/man2/chown.2:105
2010 msgid "B<fchown>() changes the ownership of the file referred to by the open file descriptor I<fd>."
2011 msgstr "B<fchown>() はオープンされたファイルディスクリプター I<fd> により参照されるファイルの所有権を変更する。"
2014 #: build/C/man2/chown.2:110
2015 msgid "B<lchown>() is like B<chown>(), but does not dereference symbolic links."
2016 msgstr "B<lchown>() は B<chown>() と同じだが、シンボリックリンクを展開しない点が異なる。"
2019 #: build/C/man2/chown.2:119
2020 msgid "Only a privileged process (Linux: one with the B<CAP_CHOWN> capability) may change the owner of a file. The owner of a file may change the group of the file to any group of which that owner is a member. A privileged process (Linux: with B<CAP_CHOWN>) may change the group arbitrarily."
2021 msgstr "特権を持つプロセス (Linux では B<CAP_CHOWN> ケーパビリティ (capability) を持つプロセス) だけが ファイルの所有者を変更できる。 ファイルの所有者は、その所有者が属しているグループのいずれかに ファイルのグループを変更することができる。 特権 (Linux では B<CAP_CHOWN>) を持つプロセスは、任意のグループに変更できる。"
2024 #: build/C/man2/chown.2:125
2025 msgid "If the I<owner> or I<group> is specified as -1, then that ID is not changed."
2026 msgstr "I<owner> または I<group> に -1 が指定された場合、それらの ID は変更されない。"
2028 #. In Linux 2.0 kernels, superuser was like everyone else
2029 #. In 2.2, up to 2.2.12, these bits were not cleared for superuser.
2030 #. Since 2.2.13, superuser is once more like everyone else.
2032 #: build/C/man2/chown.2:145
2033 msgid "When the owner or group of an executable file are changed by an unprivileged user the B<S_ISUID> and B<S_ISGID> mode bits are cleared. POSIX does not specify whether this also should happen when root does the B<chown>(); the Linux behavior depends on the kernel version. In case of a non-group-executable file (i.e., one for which the B<S_IXGRP> bit is not set) the B<S_ISGID> bit indicates mandatory locking, and is not cleared by a B<chown>()."
2034 msgstr "非特権ユーザーにより実行ファイルの所有者またはグループが 変更された場合は B<S_ISUID> と B<ISGID> モードビットはクリアされる。 POSIX はこの動作やルートが B<chown>() を行なった場合については特に指定されていない。 Linux における動作はカーネルのバージョンに依存する。 非グループ実行ファイル (B<S_IXGRP> ビットが設定されていないファイル) の場合には B<S_ISGID> ビットは強制ロック (mandatory locking) を意味している。 そしてそれは B<chown>() ではクリアできない。"
2037 #: build/C/man2/chown.2:145
2043 #: build/C/man2/chown.2:151
2044 msgid "The B<fchownat>() system call operates in exactly the same way as B<chown>(), except for the differences described here."
2045 msgstr "B<fchownat>() システムコールは B<chown>() と全く同様に動作するが、以下で説明する点が異なる。"
2048 #: build/C/man2/chown.2:161
2049 msgid "If the pathname given in I<pathname> is relative, then it is interpreted relative to the directory referred to by the file descriptor I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<chown>() for a relative pathname)."
2050 msgstr "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される (B<chown>() に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。"
2053 #: build/C/man2/chown.2:173
2054 msgid "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<chown>())."
2055 msgstr "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> の場合、 (B<chown>() と同様に) I<pathname> は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。"
2058 #: build/C/man2/chown.2:184
2059 msgid "The I<flags> argument is a bit mask created by ORing together 0 or more of the following values;"
2060 msgstr "I<flags> 引き数は、以下に示す値の 0 個以上の OR (論理和) をとって作成される ビットマスクである。"
2063 #: build/C/man2/chown.2:184
2065 msgid "B<AT_EMPTY_PATH> (since Linux 2.6.39)"
2066 msgstr "B<AT_EMPTY_PATH> (Linux 2.6.39 以降)"
2068 #. commit 65cfc6722361570bfe255698d9cd4dccaf47570d
2069 #. Before glibc 2.16, defining _ATFILE_SOURCE sufficed
2071 #: build/C/man2/chown.2:207
2072 msgid "If I<pathname> is an empty string, operate on the file referred to by I<dirfd> (which may have been obtained using the B<open>(2) B<O_PATH> flag). In this case, I<dirfd> can refer to any type of file, not just a directory. If I<dirfd> is B<AT_FDCWD>, the call operates on the current working directory. This flag is Linux-specific; define B<_GNU_SOURCE> to obtain its definition."
2073 msgstr "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して操作を行う (I<dirfd> は B<open>(2) B<O_PATH> フラグを使って取得することができる)。この場合、 I<dirfd> は、ディレクトリだけでなく、任意のタイプのファイルを参照することができる。 I<dirfd> が B<AT_FDCWD> の場合、この呼び出しはカレントワーキングディレクトリに対して操作を行う。このフラグは Linux 固有であり、その定義を得るには B<_GNU_SOURCE> を定義すること。"
2076 #: build/C/man2/chown.2:219
2077 msgid "If I<pathname> is a symbolic link, do not dereference it: instead operate on the link itself, like B<lchown>(). (By default, B<fchownat>() dereferences symbolic links, like B<chown>().)"
2078 msgstr "I<pathname> がシンボリックリンクの場合、リンクの展開を行わない。代わりに、B<lchown>() 同様、リンク自身に対して操作を行う。(デフォルトでは B<fchownat>() は B<chown>() と同様にシンボリックリンクの展開を行う。)"
2081 #: build/C/man2/chown.2:224
2082 msgid "See B<openat>(2) for an explanation of the need for B<fchownat>()."
2083 msgstr "B<fchownat>() の必要性についての説明については B<openat>(2) を参照。"
2086 #: build/C/man2/chown.2:236
2087 msgid "The more general errors for B<chown>() are listed below."
2088 msgstr "B<chown>() でごく一般的なエラーを以下に挙げる:"
2091 #: build/C/man2/chown.2:266
2092 msgid "The calling process did not have the required permissions (see above) to change owner and/or group."
2093 msgstr "呼び出したプロセスに所有者またはグループ (もしくはその両方) を変更するために 要求される許可 (上記を参照) がない。"
2096 #: build/C/man2/chown.2:273
2097 msgid "The general errors for B<fchown>() are listed below:"
2098 msgstr "B<fchown>() で一般的なエラーを以下に挙げる:"
2101 #: build/C/man2/chown.2:276
2102 msgid "The descriptor is not valid."
2103 msgstr "ディスクリプターが有効でない。"
2106 #: build/C/man2/chown.2:279
2107 msgid "A low-level I/O error occurred while modifying the inode."
2108 msgstr "i ノード (inode) を変更する際に低レベル I/O エラーが発生した。"
2111 #: build/C/man2/chown.2:295
2112 msgid "The same errors that occur for B<chown>() can also occur for B<fchownat>(). The following additional errors can occur for B<fchownat>():"
2113 msgstr "B<chown>() で発生するのと同じエラーが B<fchownat>() でも起こる。 B<fchownat>() では以下のエラーも発生する。"
2116 #: build/C/man2/chown.2:313
2117 msgid "B<fchownat>() was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4."
2118 msgstr "B<fchownat>() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 以降の glibc で利用できる。"
2121 #: build/C/man2/chown.2:318
2122 msgid "B<chown>(), B<fchown>(), B<lchown>(): 4.4BSD, SVr4, POSIX.1-2001, POSIX.1-2008."
2123 msgstr "B<chown>(), B<fchown>(), B<lchown>(): 4.4BSD, SVr4, POSIX.1-2001, POSIX.1-2008."
2126 #. SVr4 documents EINVAL, EINTR, ENOLINK and EMULTIHOP returns, but no
2127 #. ENOMEM. POSIX.1 does not document ENOMEM or ELOOP error conditions.
2129 #. SVr4 documents additional EINVAL, EIO, EINTR, and ENOLINK
2130 #. error conditions.
2132 #: build/C/man2/chown.2:327
2133 msgid "The 4.4BSD version can be used only by the superuser (that is, ordinary users cannot give away files)."
2134 msgstr "4.4BSD 版ではスーパーユーザーのみが使用できる (つまり、普通のユーザーはファイルを手放すことはできない)。"
2137 #: build/C/man2/chown.2:330
2138 msgid "B<fchownat>(): POSIX.1-2008."
2139 msgstr "B<fchownat>(): POSIX.1-2008."
2142 #: build/C/man2/chown.2:331
2144 msgid "Ownership of new files"
2145 msgstr "新しいファイルの所有権"
2148 #: build/C/man2/chown.2:353
2149 msgid "When a new file is created (by, for example, B<open>(2) or B<mkdir>(2)), its owner is made the same as the filesystem user ID of the creating process. The group of the file depends on a range of factors, including the type of filesystem, the options used to mount the filesystem, and whether or not the set-group-ID permission bit is enabled on the parent directory. If the filesystem supports the I<-o\\ grpid> (or, synonymously I<-o\\ bsdgroups>) and I<-o\\ nogrpid> (or, synonymously I<-o\\ sysvgroups>) B<mount>(8) options, then the rules are as follows:"
2150 msgstr "(B<open>(2) や B<mkdir>(2) などにより) 新しいファイルが作成されるとき、 その所有者は呼び出したプロセスのファイルシステムユーザー ID と 同じに設定される。 そのファイルのグループはいくつかの要因により決定される。 その要因としては、 ファイルシステムの種類、そのファイルシステムのマウント時に 使用されたオプション、親ディレクトリで set-group-ID 許可ビットが 有効になっているどうか、がある。 ファイルシステムが B<mount>(8) オプションの I<-o\\ grpid> (I<-o\\ bsdgroups> も同義語) と I<-o\\ nogrpid> (I<-o sysvgroups> も同義語) に対応している場合、ルールは以下の通りとなる。"
2153 #: build/C/man2/chown.2:358
2154 msgid "If the filesystem is mounted with I<-o\\ grpid>, then the group of a new file is made the same as that of the parent directory."
2155 msgstr "ファイルシステムが I<-o\\ grpid> 付きでマウントされている場合、新しいファイルのグループは 親ディレクトリのグループと同じになる。"
2158 #: build/C/man2/chown.2:364
2159 msgid "If the filesystem is mounted with I<-o\\ nogrpid> and the set-group-ID bit is disabled on the parent directory, then the group of a new file is made the same as the process's filesystem GID."
2160 msgstr "ファイルシステムが I<-o\\ nogrpid> 付きでマウントされており、親ディレクトリでは set-group-ID ビットが 無効になっている場合、新しいファイルのグループは プロセスのファイルシステム GID と同じになる。"
2163 #: build/C/man2/chown.2:370
2164 msgid "If the filesystem is mounted with I<-o\\ nogrpid> and the set-group-ID bit is enabled on the parent directory, then the group of a new file is made the same as that of the parent directory."
2165 msgstr "ファイルシステムが I<-o\\ nogrpid> 付きでマウントされており、親ディレクトリでは set-group-ID ビットが 有効になっている場合、新しいファイルのグループは 親ディレクトリのグループと同じになる。"
2168 #: build/C/man2/chown.2:380
2169 msgid "As at Linux 2.6.25, the I<-o\\ grpid> and I<-o\\ nogrpid> mount options are supported by ext2, ext3, ext4, and XFS. Filesystems that don't support these mount options follow the I<-o\\ nogrpid> rules."
2170 msgstr "Linux 2.6.25 では、マウントオプション I<-o\\ grpid> と I<-o\\ nogrpid> に対応しているファイルシステムは ext2, ext3, ext4, XFS である。 これらのマウントオプションに対応していないファイルシステムでは、 I<-o\\ nogrpid> に関するルールが適用される。"
2173 #: build/C/man2/chown.2:395
2174 msgid "On older kernels where B<fchownat>() is unavailable, the glibc wrapper function falls back to the use of B<chown>() and B<lchown>(). When I<pathname> is a relative pathname, glibc constructs a pathname based on the symbolic link in I</proc/self/fd> that corresponds to the I<dirfd> argument."
2175 msgstr "B<fchownat>() が利用できない古いカーネルでは、 glibc ラッパー関数は B<chown>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンクに基づいてパス名を構成する。"
2178 #: build/C/man2/chown.2:395
2184 #: build/C/man2/chown.2:408
2185 msgid "The B<chown>() semantics are deliberately violated on NFS filesystems which have UID mapping enabled. Additionally, the semantics of all system calls which access the file contents are violated, because B<chown>() may cause immediate access revocation on already open files. Client side caching may lead to a delay between the time where ownership have been changed to allow access for a user and the time where the file can actually be accessed by the user on other clients."
2186 msgstr "B<chown>() 方式は UID マッピングを使用した NFS ファイルシステムを侵害する。 さらにファイルの内容にアクセスする全てのシステムコールを侵害する。 これは B<chown>() が既にオープンされたファイルに対する アクセスをただちに取り消すことによる。 クライアント側のキャッシュにより所有権が変更されて ユーザーのアクセスが許した時点と、実際に他のクライアントでユーザーによって ファイルにアクセスできる時点との間に時間差があるかもしれない。"
2189 #: build/C/man2/chown.2:408
2191 msgid "Historical details"
2195 #: build/C/man2/chown.2:427
2196 msgid "The original Linux B<chown>(), B<fchown>(), and B<lchown>() system calls supported only 16-bit user and group IDs. Subsequently, Linux 2.4 added B<chown32>(), B<fchown32>(), and B<lchown32>(), supporting 32-bit IDs. The glibc B<chown>(), B<fchown>(), and B<lchown>() wrapper functions transparently deal with the variations across kernel versions."
2198 "元々の Linux の B<chown>(), B<fchown>(), B<lchown>() システムコールは、\n"
2199 "16 ビットのユーザー ID とグループ ID だけに対応していた。\n"
2200 "その後、 32 ビットの ID に対応した B<chown32>(), B<fchown32>(), B<lchown32>()\n"
2201 "が Linux 2.4 で追加された。\n"
2202 "B<chown>(), B<fchown>(), and B<lchown>() の glibc のラッパー関数は、\n"
2203 "カーネルのバージョンによる違いを吸収している。"
2206 #: build/C/man2/chown.2:442
2207 msgid "In versions of Linux prior to 2.1.81 (and distinct from 2.1.46), B<chown>() did not follow symbolic links. Since Linux 2.1.81, B<chown>() does follow symbolic links, and there is a new system call B<lchown>() that does not follow symbolic links. Since Linux 2.1.86, this new call (that has the same semantics as the old B<chown>()) has got the same syscall number, and B<chown>() got the newly introduced number."
2208 msgstr "Linux の 2.1.81 より前のバージョン (特に 2.1.46 以前) では、 B<chown>() はシンボリックリンクを追跡しない。 Linux 2.1.81 以降では B<chown>() はシンボリックリンクを追跡し、新たなシステムコール B<lchown>() はシンボリックリンクを追跡しない。 Linux 2.1.86 以降ではこの新しいコール (古い B<chown>() と全く同じ動作を行なう) は同じシステムコール番号を持ち B<chown>() は新しく導入された番号を持つ。"
2211 #: build/C/man2/chown.2:451
2212 msgid "The following program changes the ownership of the file named in its second command-line argument to the value specified in its first command-line argument. The new owner can be specified either as a numeric user ID, or as a username (which is converted to a user ID by using B<getpwnam>(3) to perform a lookup in the system password file)."
2213 msgstr "以下のプログラムは、 二つ目のコマンドライン引き数で指定された名前のファイルの所有者を、 一つ目のコマンドライン引き数で指定された値に変更する。 新しい所有者は、数字のユーザー ID かユーザー名のいずれかで指定できる (ユーザー名で指定した場合には、 B<getpwnam>(3) を使ってシステムのパスワードファイルの検索が行われ、 ユーザー ID への変換が行われる)。"
2216 #: build/C/man2/chown.2:451
2218 msgid "Program source"
2222 #: build/C/man2/chown.2:457
2225 "#include E<lt>pwd.hE<gt>\n"
2226 "#include E<lt>stdio.hE<gt>\n"
2227 "#include E<lt>stdlib.hE<gt>\n"
2228 "#include E<lt>unistd.hE<gt>\n"
2230 "#include E<lt>pwd.hE<gt>\n"
2231 "#include E<lt>stdio.hE<gt>\n"
2232 "#include E<lt>stdlib.hE<gt>\n"
2233 "#include E<lt>unistd.hE<gt>\n"
2236 #: build/C/man2/chown.2:464
2240 "main(int argc, char *argv[])\n"
2243 " struct passwd *pwd;\n"
2247 "main(int argc, char *argv[])\n"
2250 " struct passwd *pwd;\n"
2254 #: build/C/man2/chown.2:469
2257 " if (argc != 3 || argv[1][0] == \\(aq\\e0\\(aq) {\n"
2258 " fprintf(stderr, \"%s E<lt>ownerE<gt> E<lt>fileE<gt>\\en\", argv[0]);\n"
2259 " exit(EXIT_FAILURE);\n"
2262 " if (argc != 3 || argv[1][0] == \\(aq\\e0\\(aq) {\n"
2263 " fprintf(stderr, \"%s E<lt>ownerE<gt> E<lt>fileE<gt>\\en\", argv[0]);\n"
2264 " exit(EXIT_FAILURE);\n"
2268 #: build/C/man2/chown.2:471
2270 msgid " uid = strtol(argv[1], &endptr, 10); /* Allow a numeric string */\n"
2271 msgstr " uid = strtol(argv[1], &endptr, 10); /* Allow a numeric string */\n"
2274 #: build/C/man2/chown.2:478
2277 " if (*endptr != \\(aq\\e0\\(aq) { /* Was not pure numeric string */\n"
2278 " pwd = getpwnam(argv[1]); /* Try getting UID for username */\n"
2279 " if (pwd == NULL) {\n"
2280 " perror(\"getpwnam\");\n"
2281 " exit(EXIT_FAILURE);\n"
2284 " if (*endptr != \\(aq\\e0\\(aq) { /* Was not pure numeric string */\n"
2285 " pwd = getpwnam(argv[1]); /* Try getting UID for username */\n"
2286 " if (pwd == NULL) {\n"
2287 " perror(\"getpwnam\");\n"
2288 " exit(EXIT_FAILURE);\n"
2292 #: build/C/man2/chown.2:481
2295 " uid = pwd-E<gt>pw_uid;\n"
2298 " uid = pwd-E<gt>pw_uid;\n"
2302 #: build/C/man2/chown.2:486
2305 " if (chown(argv[2], uid, -1) == -1) {\n"
2306 " perror(\"chown\");\n"
2307 " exit(EXIT_FAILURE);\n"
2310 " if (chown(argv[2], uid, -1) == -1) {\n"
2311 " perror(\"chown\");\n"
2312 " exit(EXIT_FAILURE);\n"
2316 #: build/C/man2/chown.2:489 build/C/man2/execve.2:677
2317 #: build/C/man3/getopt.3:430 build/C/man3/getopt.3:515
2320 " exit(EXIT_SUCCESS);\n"
2323 " exit(EXIT_SUCCESS);\n"
2327 #: build/C/man2/chown.2:495
2328 msgid "B<chmod>(2), B<flock>(2), B<path_resolution>(7), B<symlink>(7)"
2329 msgstr "B<chmod>(2), B<flock>(2), B<path_resolution>(7), B<symlink>(7)"
2332 #: build/C/man2/chroot.2:33
2338 #: build/C/man2/chroot.2:33 build/C/man3/gethostid.3:29
2344 #: build/C/man2/chroot.2:36
2345 msgid "chroot - change root directory"
2346 msgstr "chroot - ルートディレクトリを変更する"
2349 #: build/C/man2/chroot.2:40
2350 msgid "B<int chroot(const char *>I<path>B<);>"
2351 msgstr "B<int chroot(const char *>I<path>B<);>"
2354 #: build/C/man2/chroot.2:47
2355 msgid "B<chroot>():"
2356 msgstr "B<chroot>():"
2359 #: build/C/man2/chroot.2:50
2361 msgid "Since glibc 2.2.2:"
2362 msgstr "glibc 2.2.2 以降:"
2365 #: build/C/man2/chroot.2:57
2369 " (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
2370 " _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
2371 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
2374 " (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
2375 " _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
2376 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
2379 #: build/C/man2/chroot.2:60
2380 msgid "Before glibc 2.2.2: none"
2381 msgstr "glibc 2.2.2 より前: なし"
2384 #: build/C/man2/chroot.2:69
2385 msgid "B<chroot>() changes the root directory of the calling process to that specified in I<path>. This directory will be used for pathnames beginning with I</>. The root directory is inherited by all children of the calling process."
2386 msgstr "B<chroot>() は、呼び出し元プロセスのルートディレクトリを I<path> で指定されたディレクトリに変更する。 このディレクトリ以下が I</> から始まるパス名として使われる。 このルートディレクトリは呼び出し元のプロセスの全ての子プロセスに受け継がれる。"
2389 #: build/C/man2/chroot.2:74
2390 msgid "Only a privileged process (Linux: one with the B<CAP_SYS_CHROOT> capability) may call B<chroot>()."
2391 msgstr "特権プロセス (Linux では、 B<CAP_SYS_CHROOT> ケーパビリティを持つプロセス) のみが B<chroot>() を呼び出すことができる。"
2394 #: build/C/man2/chroot.2:77
2395 msgid "This call changes an ingredient in the pathname resolution process and does nothing else."
2396 msgstr "このコールはパス名解決の過程で構成要素を変更するのみで、 その他には何も行わない。"
2399 #: build/C/man2/chroot.2:83
2400 msgid "This call does not change the current working directory, so that after the call \\(aqI<.>\\(aq can be outside the tree rooted at \\(aqI</>\\(aq. In particular, the superuser can escape from a \"chroot jail\" by doing:"
2401 msgstr "このコールは現在の作業ディレクトリ (working directory) を変更しない。 そのため、このコールの後に \\(aqI<.>\\(aq が \\(aqI</>\\(aq を 根とするツリーの外になる場合がある。 特に、スーパーユーザーは以下のようにすることで \"chroot jail\" から逃げ出せてしまう。"
2404 #: build/C/man2/chroot.2:86
2406 msgid " mkdir foo; chroot foo; cd ..\n"
2407 msgstr " mkdir foo; chroot foo; cd ..\n"
2410 #: build/C/man2/chroot.2:90
2411 msgid "This call does not close open file descriptors, and such file descriptors may allow access to files outside the chroot tree."
2412 msgstr "このコールはオープンファイルディスクリプターをクローズしないので、 このようなファイルディスクリプターは chroot ツリーの外にある ファイルにアクセスできる。"
2415 #: build/C/man2/chroot.2:98
2416 msgid "Depending on the filesystem, other errors can be returned. The more general errors are listed below:"
2417 msgstr "ファイルシステムによっては他のエラーが返される事がある。 一般的なエラーを以下に挙げる:"
2420 #: build/C/man2/chroot.2:134
2421 msgid "The caller has insufficient privilege."
2422 msgstr "呼び出し側に十分な特権がない。"
2424 #. SVr4 documents additional EINTR, ENOLINK and EMULTIHOP error conditions.
2425 #. X/OPEN does not document EIO, ENOMEM or EFAULT error conditions.
2427 #: build/C/man2/chroot.2:139
2428 msgid "SVr4, 4.4BSD, SUSv2 (marked LEGACY). This function is not part of POSIX.1-2001."
2429 msgstr "SVr4, 4.4BSD, SUSv2 (但し、SUSv2 では過去の名残とされている)。 この関数は POSIX.1-2001 にはない。"
2432 #: build/C/man2/chroot.2:145
2433 msgid "A child process created via B<fork>(2) inherits its parent's root directory. The root directory is left unchanged by B<execve>(2)."
2434 msgstr "B<fork>(2) で作成された子プロセスは、 親プロセスのルートディレクトリを継承する。 B<execve>(2) の場合も、ルートディレクトリは変更されない。"
2436 #. FIXME . eventually say something about containers,
2437 #. virtual servers, etc.?
2439 #: build/C/man2/chroot.2:151
2440 msgid "FreeBSD has a stronger B<jail>() system call."
2441 msgstr "FreeBSD にはより強力な B<jail>() システムコールがある。"
2444 #: build/C/man2/chroot.2:154
2445 msgid "B<chdir>(2), B<path_resolution>(7)"
2446 msgstr "B<chdir>(2), B<path_resolution>(7)"
2449 #: build/C/man2/close.2:35
2455 #: build/C/man2/close.2:35
2461 #: build/C/man2/close.2:38
2462 msgid "close - close a file descriptor"
2463 msgstr "close - ファイルディスクリプターをクローズする"
2466 #: build/C/man2/close.2:43
2468 msgid "B<int close(int >I<fd>B<);>\n"
2469 msgstr "B<int close(int >I<fd>B<);>\n"
2472 #: build/C/man2/close.2:53
2473 msgid "B<close>() closes a file descriptor, so that it no longer refers to any file and may be reused. Any record locks (see B<fcntl>(2)) held on the file it was associated with, and owned by the process, are removed (regardless of the file descriptor that was used to obtain the lock)."
2474 msgstr "B<close>() は、ファイルディスクリプターをクローズする。 そのディスクリプターは、どのファイルも参照していない状態になり、 再利用が可能になる。 そのファイルディスクリプターに関連づけられたファイルに かけられたレコードロック (B<fcntl>(2) 参照) のうち、そのプロセスが保有しているものは、 (そのファイルディスクリプターがロック取得に利用されたか どうかによらず) すべて削除される。"
2477 #: build/C/man2/close.2:64
2478 msgid "If I<fd> is the last file descriptor referring to the underlying open file description (see B<open>(2)), the resources associated with the open file description are freed; if the descriptor was the last reference to a file which has been removed using B<unlink>(2), the file is deleted."
2479 msgstr "I<fd> が、対応するオープンファイル記述 (open file description) (B<open>(2) 参照) を参照する最後のファイルディスクリプターだった場合、 オープンファイル記述に関連するリソースが解放される。 そのディスクリプターが、 B<unlink> を使用して削除 (remove) されたファイルに対する最後の参照だった場合には、 そのファイルは削除 (delete) される。"
2482 #: build/C/man2/close.2:70
2483 msgid "B<close>() returns zero on success. On error, -1 is returned, and I<errno> is set appropriately."
2484 msgstr "B<close>() は成功した場合は 0 を返す。 エラーが発生した場合は -1 を返して、 I<errno> を適切に設定する。"
2487 #: build/C/man2/close.2:75
2488 msgid "I<fd> isn't a valid open file descriptor."
2489 msgstr "I<fd> が有効なオープンされたディスクリプターでない。"
2492 #: build/C/man2/close.2:75 build/C/man2/dup.2:176 build/C/man2/fcntl.2:1531
2493 #: build/C/man2/fcntl.2:1540 build/C/man2/flock.2:122
2494 #: build/C/man2/truncate.2:134 build/C/man3/ualarm.3:85
2495 #: build/C/man3/usleep.3:83
2501 #: build/C/man2/close.2:81
2502 msgid "The B<close>() call was interrupted by a signal; see B<signal>(7)."
2503 msgstr "B<close>() コールがシグナルにより中断 (interrupt) された。 B<signal>(7) 参照。"
2506 #: build/C/man2/close.2:87 build/C/man2/fork.2:228 build/C/man3/swab.3:79
2507 #: build/C/man2/umask.2:97
2508 msgid "SVr4, 4.3BSD, POSIX.1-2001."
2509 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
2512 #: build/C/man2/close.2:107
2513 msgid "Not checking the return value of B<close>() is a common but nevertheless serious programming error. It is quite possible that errors on a previous B<write>(2) operation are first reported at the final B<close>(). Not checking the return value when closing the file may lead to silent loss of data. This can especially be observed with NFS and with disk quota. Note that the return value should only be used for diagnostics. In particular B<close>() should not be retried after an B<EINTR> since this may cause a reused descriptor from another thread to be closed."
2514 msgstr "B<close>() の返り値のチェックはよく省略されるが、 これは深刻なプログラミングエラーである。 前の B<write>(2) 処理に関するエラーが最後の B<close>() のときになって初めて通知される場合がありうる。 ファイルクローズの際に返り値をチェックしないと、 気付かないうちにデータを失ってしまうかもしれない。 これは特に NFS やディスククォータを使用した場合に見られる。返り値は状態確認用にのみ利用すべき点に注意すること。特に、B<EINTR> 後に B<close>() を再度行うべきではない。なぜなら、これにより、別のスレッドが再利用したディスクリプターをクローズしてしまう可能性があるからだ。"
2517 #: build/C/man2/close.2:116
2518 msgid "A successful close does not guarantee that the data has been successfully saved to disk, as the kernel defers writes. It is not common for a filesystem to flush the buffers when the stream is closed. If you need to be sure that the data is physically stored, use B<fsync>(2). (It will depend on the disk hardware at this point.)"
2519 msgstr "クローズに成功しても、データがディスクに保存されたかどうかは 保証されない (カーネルが書きこみを遅延させることがあるためである)。 ストリームがクローズされるときにバッファーをフラッシュするかどうかは、 ファイルシステムによって異なる。 データが物理的に保存されることを保証する必要がある場合には、 B<fsync>(2) を使用すること (B<fsync>(3) を行った時点で、データの保存はディスクのハードウェアに依存する 問題となる)。"
2521 #. Date: Tue, 4 Sep 2007 13:57:35 +0200
2522 #. From: Fredrik Noring <noring@nocrew.org>
2523 #. One such race involves signals and ERESTARTSYS. If a file descriptor
2524 #. in use by a system call is closed and then reused by e.g. an
2525 #. independent open() in some unrelated thread, before the original system
2526 #. call has restarted after ERESTARTSYS, the original system call will
2527 #. later restart with the reused file descriptor. This is most likely a
2528 #. serious programming error.
2530 #: build/C/man2/close.2:131
2531 msgid "It is probably unwise to close file descriptors while they may be in use by system calls in other threads in the same process. Since a file descriptor may be reused, there are some obscure race conditions that may cause unintended side effects."
2532 msgstr "同じプロセス内の他のスレッドのシステムコールが使用している可能性がある間に、 ファイルディスクリプターをクローズするのは、おそらく賢明ではないだろう。 ファイルディスクリプターは再利用されるかもしれないので、 あいまいな競合条件となることがあり、意図しない副作用の原因となりうる。"
2535 #: build/C/man2/close.2:138
2536 msgid "B<fcntl>(2), B<fsync>(2), B<open>(2), B<shutdown>(2), B<unlink>(2), B<fclose>(3)"
2537 msgstr "B<fcntl>(2), B<fsync>(2), B<open>(2), B<shutdown>(2), B<unlink>(2), B<fclose>(3)"
2540 #: build/C/man3/confstr.3:32
2546 #: build/C/man3/confstr.3:32
2552 #: build/C/man3/confstr.3:32 build/C/man3/daemon.3:36 build/C/man3/exec.3:41
2553 #: build/C/man3/fpathconf.3:41 build/C/man3/get_nprocs_conf.3:26
2554 #: build/C/man3/getcwd.3:32 build/C/man3/getlogin.3:28
2555 #: build/C/man3/getopt.3:41 build/C/man3/getumask.3:28
2556 #: build/C/man3/getusershell.3:30 build/C/man3/lockf.3:28
2557 #: build/C/man3/sleep.3:26 build/C/man3/sysconf.3:27
2558 #: build/C/man3/tcgetpgrp.3:25
2564 #: build/C/man3/confstr.3:35
2565 msgid "confstr - get configuration dependent string variables"
2566 msgstr "confstr - コンフィグレーションに依存した文字列変数の取得"
2569 #: build/C/man3/confstr.3:40
2571 msgid "B<size_t confstr(int >I<name>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2572 msgstr "B<size_t confstr(int >I<name>B<, char *>I<buf>B<, size_t >I<len>B<);>\n"
2575 #: build/C/man3/confstr.3:49
2576 msgid "B<confstr>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
2577 msgstr "B<confstr>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
2580 #: build/C/man3/confstr.3:52
2581 msgid "B<confstr>() gets the value of configuration-dependent string variables."
2582 msgstr "B<confstr>() はコンフィグレーションに依存した文字列変数の値を取得する。"
2585 #: build/C/man3/confstr.3:57
2586 msgid "The I<name> argument is the system variable to be queried. The following variables are supported:"
2587 msgstr "引き数 I<name> は、問い合わせ内容を表すシステム変数である。 以下の変数がサポートされている。"
2590 #: build/C/man3/confstr.3:57
2592 msgid "B<_CS_GNU_LIBC_VERSION> (GNU C library only; since glibc 2.3.2)"
2593 msgstr "B<_CS_GNU_LIBC_VERSION> (GNU C library 限定; glibc 2.3.2 以降)"
2596 #: build/C/man3/confstr.3:61
2597 msgid "A string which identifies the GNU C library version on this system (e.g, \"glibc 2.3.4\")."
2598 msgstr "そのシステムの GNU C ライブラリのバージョンを示す文字列 (例えば \"glibc 2.3.4\")。"
2601 #: build/C/man3/confstr.3:61
2603 msgid "B<_CS_GNU_LIBPTHREAD_VERSION> (GNU C library only; since glibc 2.3.2)"
2604 msgstr "B<_CS_GNU_LIBPTHREAD_VERSION> (GNU C library 限定; glibc 2.3.2 以降)"
2607 #: build/C/man3/confstr.3:65
2608 msgid "A string which identifies the POSIX implementation supplied by this C library (e.g, \"NPTL 2.3.4\" or \"linuxthreads-0.10\")."
2609 msgstr "その C ライブラリが提供している POSIX 実装を示す文字列 (例えば \"NPTL 2.3.4\" や \"linuxthreads-0.10\")。"
2612 #: build/C/man3/confstr.3:65
2615 msgstr "B<_CS_PATH>"
2618 #: build/C/man3/confstr.3:71
2619 msgid "A value for the B<PATH> variable which indicates where all the POSIX.2 standard utilities can be found."
2620 msgstr "すべての POSIX.2 標準ユーティリティが見つかるような B<PATH> の値。"
2623 #: build/C/man3/confstr.3:87
2624 msgid "If I<buf> is not NULL and I<len> is not zero, B<confstr>() copies the value of the string to I<buf> truncated to I<len - 1> bytes if necessary, with a null byte (\\(aq\\e0\\(aq) as terminator. This can be detected by comparing the return value of B<confstr>() against I<len>."
2626 "I<buf> が NULL でなく、かつ I<len> が 0 でなければ B<confstr>() は取得\n"
2627 "した文字列の内容を I<buf> にコピーする。必要ならば長さが I<len - 1> \n"
2628 "バイトに切り捨てられて、NULL バイト (\\(aq\\e0\\(aq) で終端される。\n"
2629 "末尾が切り捨てられたかどうかを判定するには、 B<confstr>() の返り値を\n"
2633 #: build/C/man3/confstr.3:95
2634 msgid "If I<len> is zero and I<buf> is NULL, B<confstr>() just returns the value as defined below."
2635 msgstr "I<len> が 0 で I<buf> が NULL ならば、 B<confstr>() は以下で定義された値 (訳注: 切り捨てる前の、取得した文字列の長さ) を返す。"
2638 #: build/C/man3/confstr.3:107
2639 msgid "If I<name> is a valid configuration variable, B<confstr>() returns the number of bytes (including the terminating null byte) that would be required to hold the entire value of that variable. This value may be greater than I<len>, which means that the value in I<buf> is truncated."
2640 msgstr "I<name> が有効なコンフィギュレーション変数の場合、 B<confstr>() はその変数の値全体を保持するのに必要であったバイト数を返す (文字列終端のヌルバイトも含む)。この値は I<len> より大きいこともある。この場合には、 I<buf> に格納された値の末尾が切り詰められたことを意味する。"
2643 #: build/C/man3/confstr.3:122
2644 msgid "If I<name> is a valid configuration variable, but that variable does not have a value, then B<confstr>() returns 0. If I<name> does not correspond to a valid configuration variable, B<confstr>() returns 0, and I<errno> is set to B<EINVAL>."
2645 msgstr "I<name> が有効なコンフィギュレーション変数だが、 変数が値を持っていない場合、 B<confstr>() は 0 を返す。 I<name> が有効なコンフィグレーション変数に対応していなければ、 B<confstr>() は 0 を返し、 I<errno> に B<EINVAL> を設定する。"
2648 #: build/C/man3/confstr.3:128
2649 msgid "The value of I<name> is invalid."
2650 msgstr "I<name> の値が不正である。"
2653 #: build/C/man3/confstr.3:130 build/C/man3/fpathconf.3:171
2654 #: build/C/man2/pread.2:117 build/C/man3/sleep.3:46 build/C/man3/sysconf.3:329
2655 #: build/C/man3/tcgetpgrp.3:118
2656 msgid "POSIX.1-2001."
2657 msgstr "POSIX.1-2001."
2660 #: build/C/man3/confstr.3:133
2661 msgid "The following code fragment determines the path where to find the POSIX.2 system utilities:"
2662 msgstr "次の部分的なコードは、 POSIX.2 システムのユーティリティがあるパス を取得するものである。"
2665 #: build/C/man3/confstr.3:139
2675 #: build/C/man3/confstr.3:145
2678 "n = confstr(_CS_PATH, NULL, (size_t) 0);\n"
2679 "pathbuf = malloc(n);\n"
2680 "if (pathbuf == NULL)\n"
2682 "confstr(_CS_PATH, pathbuf, n);\n"
2684 "n = confstr(_CS_PATH, NULL, (size_t) 0);\n"
2685 "pathbuf = malloc(n);\n"
2686 "if (pathbuf == NULL)\n"
2688 "confstr(_CS_PATH, pathbuf, n);\n"
2691 #: build/C/man3/confstr.3:155
2692 msgid "B<getconf>(1), B<sh>(1), B<exec>(3), B<fpathconf>(3) B<sysconf>(3) B<pathconf>(3) B<system>(3)"
2693 msgstr "B<getconf>(1), B<sh>(1), B<exec>(3), B<fpathconf>(3) B<sysconf>(3) B<pathconf>(3) B<system>(3)"
2696 #: build/C/man3/crypt.3:36
2702 #: build/C/man3/crypt.3:36
2708 #: build/C/man3/crypt.3:39
2709 msgid "crypt, crypt_r - password and data encryption"
2710 msgstr "crypt, crypt_r - パスワードとデータの暗号化"
2713 #: build/C/man3/crypt.3:42
2715 msgid "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */\n"
2716 msgstr "B<#define _XOPEN_SOURCE> /* feature_test_macros(7) 参照 */\n"
2719 #: build/C/man3/crypt.3:46
2721 msgid "B<char *crypt(const char *>I<key>B<, const char *>I<salt>B<);>\n"
2722 msgstr "B<char *crypt(const char *>I<key>B<, const char *>I<salt>B<);>\n"
2725 #: build/C/man3/crypt.3:48
2727 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
2728 msgstr "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
2731 #: build/C/man3/crypt.3:50
2733 msgid "B<#include E<lt>crypt.hE<gt>>\n"
2734 msgstr "B<#include E<lt>crypt.hE<gt>>\n"
2737 #: build/C/man3/crypt.3:53
2740 "B<char *crypt_r(const char *>I<key>B<, const char *>I<salt>B<,>\n"
2741 "B< struct crypt_data *>I<data>B<);>\n"
2743 "B<char *crypt_r(const char *>I<key>B<, const char *>I<salt>B<,>\n"
2744 "B< struct crypt_data *>I<data>B<);>\n"
2747 #: build/C/man3/crypt.3:56
2748 msgid "Link with I<-lcrypt>."
2749 msgstr "I<-lcrypt> でリンクする。"
2752 #: build/C/man3/crypt.3:62
2753 msgid "B<crypt>() is the password encryption function. It is based on the Data Encryption Standard algorithm with variations intended (among other things) to discourage use of hardware implementations of a key search."
2754 msgstr "B<crypt>() はパスワード暗号化関数である。 鍵探索のハードウェアによる実装を妨げるように(その他にもいろいろ) 変更した Data Encryption Standard アルゴリズムを元にしている。"
2757 #: build/C/man3/crypt.3:65
2758 msgid "I<key> is a user's typed password."
2759 msgstr "I<key> はユーザーが入力するパスワードである。"
2762 #: build/C/man3/crypt.3:71
2763 msgid "I<salt> is a two-character string chosen from the set [B<a-zA-Z0-9./>]. This string is used to perturb the algorithm in one of 4096 different ways."
2764 msgstr "I<salt> は集合 [B<a-zA-Z0-9./>] から選ばれた 2 文字の文字列である。 この文字列はアルゴリズムの出力を 4096 通りにかき乱すのに使われる。"
2767 #: build/C/man3/crypt.3:82
2768 msgid "By taking the lowest 7 bits of each of the first eight characters of the I<key>, a 56-bit key is obtained. This 56-bit key is used to encrypt repeatedly a constant string (usually a string consisting of all zeros). The returned value points to the encrypted password, a series of 13 printable ASCII characters (the first two characters represent the salt itself). The return value points to static data whose content is overwritten by each call."
2769 msgstr "I<key> の最初の 8 文字の各文字から下位 7 ビットをとって 56 ビットの鍵が得られる。 この 56 ビットの鍵は特定の文字列(ふつうはすべて 0 の文字列) を繰り返し暗号化するのに用いられる。 返り値は暗号化されたパスワードへのポインタで、13 の印字可能な ASCII 文字 からなる(最初の 2 文字は salt そのもの)。 返り値は、関数呼出しのたびに上書きされる静的なデータへのポインタである。"
2772 #: build/C/man3/crypt.3:84
2773 msgid "Warning: The key space consists of"
2777 #: build/C/man3/crypt.3:99
2778 msgid "equal 7.2e16 possible values. Exhaustive searches of this key space are possible using massively parallel computers. Software, such as B<crack>(1), is available which will search the portion of this key space that is generally used by humans for passwords. Hence, password selection should, at minimum, avoid common words and names. The use of a B<passwd>(1) program that checks for crackable passwords during the selection process is recommended."
2779 msgstr "= 7.2e16 の可能な値から成る。 この鍵空間の全探索は強力な並列計算機を使えば可能である。また B<crack>(1) のようなソフトウェアはこの鍵空間の中で、多くの人にパスワードとして 使われるような鍵についての全探索が可能である。 それゆえ、パスワードを選択するときには、すくなくとも、 一般的に使われる単語と名前は避けるべきである。 B<passwd>(1) を使う時にはクラックされうるパスワードについての検査をすることが 推奨される。"
2782 #: build/C/man3/crypt.3:108
2783 msgid "The DES algorithm itself has a few quirks which make the use of the B<crypt>() interface a very poor choice for anything other than password authentication. If you are planning on using the B<crypt>() interface for a cryptography project, don't do it: get a good book on encryption and one of the widely available DES libraries."
2784 msgstr "DES アルゴリズムにはいくつかの癖があり、それによってパスワード認証以外に B<crypt>() を使うのはたいへんよくない選択となっている。もし B<crypt>() を暗号プロジェクトに使おうという案をもっているならば、それはやめたほうが よい。暗号化についてのよい本と誰でも入手できる DES ライブラリのひとつを 手にいれるべきだ。"
2787 #: build/C/man3/crypt.3:120
2788 msgid "B<crypt_r>() is a reentrant version of B<crypt>(). The structure pointed to by I<data> is used to store result data and bookkeeping information. Other than allocating it, the only thing that the caller should do with this structure is to set I<data-E<gt>initialized> to zero before the first call to B<crypt_r>()."
2789 msgstr "B<crypt_r>() は B<crypt>() の再入可能版である。 I<data> で示される構造体は結果データの保存と情報の管理に使われる。 この構造体に対して(メモリを割り当てること以外に)呼び出し元がするべき唯一の ことは、 B<crypt_r>() の初回の呼び出しの前に I<data-E<gt>initialized> をゼロにすることだけである。"
2792 #: build/C/man3/crypt.3:123
2793 msgid "On success, a pointer to the encrypted password is returned. On error, NULL is returned."
2794 msgstr "成功の場合には、暗号化されたパスワードへのポインターが返される。 エラーの場合には NULL が返される。"
2797 #: build/C/man3/crypt.3:128
2798 msgid "I<salt> has the wrong format."
2799 msgstr "I<salt> が間違ったフォーマットである。"
2802 #: build/C/man3/crypt.3:130 build/C/man3/encrypt.3:120
2803 #: build/C/man3/fexecve.3:86 build/C/man2/fork.2:220
2808 #. This level of detail is not necessary in this man page. . .
2810 #. When encrypting a plain text P using DES with the key K results in the
2811 #. encrypted text C, then the complementary plain text P' being encrypted
2812 #. using the complementary key K' will result in the complementary encrypted
2815 #. Weak keys are keys which stay invariant under the DES key transformation.
2816 #. The four known weak keys 0101010101010101, fefefefefefefefe,
2817 #. 1f1f1f1f0e0e0e0e and e0e0e0e0f1f1f1f1 must be avoided.
2819 #. There are six known half weak key pairs, which keys lead to the same
2820 #. encrypted data. Keys which are part of such key clusters should be
2822 #. Sorry, I could not find out what they are.
2825 #. Heavily redundant data causes trouble with DES encryption, when used in the
2831 #. interface should be used only for its intended purpose of password
2832 #. verification, and should not be used as part of a data encryption tool.
2834 #. The first and last three output bits of the fourth S-box can be
2835 #. represented as function of their input bits. Empiric studies have
2836 #. shown that S-boxes partially compute the same output for similar input.
2837 #. It is suspected that this may contain a back door which could allow the
2838 #. NSA to decrypt DES encrypted data.
2840 #. Making encrypted data computed using crypt() publicly available has
2841 #. to be considered insecure for the given reasons.
2843 #: build/C/man3/crypt.3:169
2844 msgid "The B<crypt>() function was not implemented, probably because of U.S.A. export restrictions."
2845 msgstr "B<crypt>() 関数が実装されていない。多分アメリカの輸出規制のために。"
2848 #: build/C/man3/crypt.3:174
2849 msgid "I</proc/sys/crypto/fips_enabled> has a nonzero value, and an attempt was made to use a weak encryption type, such as DES."
2850 msgstr "I</proc/sys/crypto/fips_enabled> が 0 でない値で、 DES などの弱い暗号タイプを利用しようとした。"
2853 #: build/C/man3/crypt.3:174 build/C/man3/daemon.3:91
2854 #: build/C/man3/des_crypt.3:134 build/C/man3/encrypt.3:124
2855 #: build/C/man3/euidaccess.3:73 build/C/man3/getdtablesize.3:69
2856 #: build/C/man3/getlogin.3:140 build/C/man3/getusershell.3:93
2857 #: build/C/man3/lockf.3:154 build/C/man3/swab.3:72
2858 #: build/C/man3/tcgetpgrp.3:109 build/C/man3/ualarm.3:92
2859 #: build/C/man3/usleep.3:91
2865 #: build/C/man3/crypt.3:175 build/C/man3/daemon.3:92
2866 #: build/C/man3/des_crypt.3:135 build/C/man3/encrypt.3:125
2867 #: build/C/man3/euidaccess.3:74 build/C/man3/getdtablesize.3:70
2868 #: build/C/man3/getlogin.3:141 build/C/man3/getusershell.3:94
2869 #: build/C/man3/lockf.3:155 build/C/man3/swab.3:73
2870 #: build/C/man3/tcgetpgrp.3:110 build/C/man3/ualarm.3:93
2871 #: build/C/man3/usleep.3:92
2873 msgid "Multithreading (see pthreads(7))"
2874 msgstr "マルチスレッディング (pthreads(7) 参照)"
2877 #: build/C/man3/crypt.3:179
2878 msgid "The B<crypt>() function is not thread-safe."
2879 msgstr "B<crypt>() 関数はスレッドセーフではない。"
2882 #: build/C/man3/crypt.3:183
2883 msgid "The B<crypt_r>() function is thread-safe."
2884 msgstr "B<crypt_r>() 関数はスレッドセーフである。"
2887 #: build/C/man3/crypt.3:188
2888 msgid "B<crypt>(): SVr4, 4.3BSD, POSIX.1-2001. B<crypt_r>() is a GNU extension."
2889 msgstr "B<crypt>(): SVr4, 4.3BSD, POSIX.1-2001. B<crypt_r>() は GNU 拡張である。"
2892 #: build/C/man3/crypt.3:192
2893 msgid "The glibc2 version of this function supports additional encryption algorithms."
2894 msgstr "この関数の glibc2 版は追加の暗号化アルゴリズムに対応している。"
2897 #: build/C/man3/crypt.3:197
2898 msgid "If I<salt> is a character string starting with the characters \"$I<id>$\" followed by a string terminated by \"$\":"
2899 msgstr "もし I<salt> の文字列が \"$I<id>$\" で始まっていて、\"$\" で終わっている文字列が 続いている場合:"
2902 #: build/C/man3/crypt.3:200
2903 msgid "$I<id>$I<salt>$I<encrypted>"
2904 msgstr "$I<id>$I<salt>$I<encrypted>"
2907 #: build/C/man3/crypt.3:209
2908 msgid "then instead of using the DES machine, I<id> identifies the encryption method used and this then determines how the rest of the password string is interpreted. The following values of I<id> are supported:"
2909 msgstr "DES を使う代わりに、 I<id> で使用する暗号化手法を識別し、これがパスワード文字列の残りの部分を解釈する 方法を決定する。 I<id> の値として、以下の値に対応している:"
2912 #: build/C/man3/crypt.3:212
2914 msgid "ID | Method\n"
2915 msgstr "ID | Method\n"
2918 #: build/C/man3/crypt.3:213 build/C/man2/syscall.2:160
2919 #: build/C/man2/syscall.2:198
2925 #: build/C/man3/crypt.3:214
2931 #: build/C/man3/crypt.3:215
2933 msgid "2a | Blowfish (not in mainline glibc; added in some\n"
2934 msgstr "2a | Blowfish (本流の glibc には入っていない;\n"
2937 #: build/C/man3/crypt.3:216
2939 msgid " | Linux distributions)\n"
2940 msgstr " | いくつかの Linux ディストリビューションで追加されている)\n"
2942 #. openSUSE has Blowfish, but AFAICS, this option is not supported
2943 #. natively by glibc -- mtk, Jul 08
2945 #. glibc doesn't appear to natively support Sun MD5; I don't know
2946 #. if any distros add the support.
2948 #: build/C/man3/crypt.3:223
2950 msgid "5 | SHA-256 (since glibc 2.7)\n"
2951 msgstr "5 | SHA-256 (glibc 2.7 以降)\n"
2954 #: build/C/man3/crypt.3:224
2956 msgid "6 | SHA-512 (since glibc 2.7)\n"
2957 msgstr "6 | SHA-512 (glibc 2.7 以降)\n"
2960 #: build/C/man3/crypt.3:231
2961 msgid "So $5$I<salt>$I<encrypted> is an SHA-256 encoded password and $6$I<salt>$I<encrypted> is an SHA-512 encoded one."
2962 msgstr "従って、$5$I<salt>$I<encrypted> は SHA-256 でエンコードされた パスワードであり、$6$I<salt>$I<encrypted> は SHA-512 で エンコードされたパスワードである。"
2965 #: build/C/man3/crypt.3:236
2966 msgid "\"I<salt>\" stands for the up to 16 characters following \"$I<id>$\" in the salt. The encrypted part of the password string is the actual computed password. The size of this string is fixed:"
2967 msgstr "\"I<salt>\" は salt における \"$I<id>$\" に引き続く 16 文字以下の 文字列である。 パスワード文字列の暗号化部分は実際に計算されたパスワードである。 この文字列のサイズは固定である:"
2970 #: build/C/man3/crypt.3:238
2972 msgid "MD5 | 22 characters\n"
2973 msgstr "MD5 | 22 characters\n"
2976 #: build/C/man3/crypt.3:239
2978 msgid "SHA-256 | 43 characters\n"
2979 msgstr "SHA-256 | 43 characters\n"
2982 #: build/C/man3/crypt.3:240
2984 msgid "SHA-512 | 86 characters\n"
2985 msgstr "SHA-512 | 86 characters\n"
2988 #: build/C/man3/crypt.3:249
2989 msgid "The characters in \"I<salt>\" and \"I<encrypted>\" are drawn from the set [B<a-zA-Z0-9./>]. In the MD5 and SHA implementations the entire I<key> is significant (instead of only the first 8 bytes in DES)."
2990 msgstr "\"I<salt>\" と \"I<encrypted>\" の文字は [B<a-zA-Z0-9./>] の集合から 選ばれる。 MD5 と SHA の実装では、 I<key> 全体が意味がある (DES の場合には最初の 8 文字だけに意味がある)。"
2993 #: build/C/man3/crypt.3:255
2994 msgid "B<login>(1), B<passwd>(1), B<encrypt>(3), B<getpass>(3), B<passwd>(5)"
2995 msgstr "B<login>(1), B<passwd>(1), B<encrypt>(3), B<getpass>(3), B<passwd>(5)"
2998 #: build/C/man3/daemon.3:36
3004 #: build/C/man3/daemon.3:36
3010 #: build/C/man3/daemon.3:39
3011 msgid "daemon - run in the background"
3012 msgstr "daemon - バックグラウンドで動作させる"
3015 #: build/C/man3/daemon.3:43
3016 msgid "B<int daemon(int >I<nochdir>B<, int >I<noclose>B<);>"
3017 msgstr "B<int daemon(int >I<nochdir>B<, int >I<noclose>B<);>"
3020 #: build/C/man3/daemon.3:51
3021 msgid "B<daemon>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
3022 msgstr "B<daemon>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
3025 #: build/C/man3/daemon.3:56
3026 msgid "The B<daemon>() function is for programs wishing to detach themselves from the controlling terminal and run in the background as system daemons."
3027 msgstr "B<daemon>() は、制御端末から分離させてシステムデーモンとして動作させたい プログラムのための関数である。"
3030 #: build/C/man3/daemon.3:64
3031 msgid "If I<nochdir> is zero, B<daemon>() changes the calling process's current working directory to the root directory (\"/\"); otherwise, the current working directory is left unchanged."
3032 msgstr "I<nochdir> が 0 の場合、 B<daemon>() は呼び出したプロセスの現在の作業ディレクトリ (current working directory) をルートディレクトリ (\"/\") に変更する。 それ以外の場合、現在の作業ディレクトリは変更されない。"
3035 #: build/C/man3/daemon.3:73
3036 msgid "If I<noclose> is zero, B<daemon>() redirects standard input, standard output and standard error to I</dev/null>; otherwise, no changes are made to these file descriptors."
3037 msgstr "I<noclose> が 0 の場合、 B<daemon>() は標準入力・標準出力・標準エラーを I</dev/null> にリダイレクトする。 それ以外の場合、これらのファイルディスクリプターは変更されない。"
3039 #. not .IR in order not to underline _
3041 #: build/C/man3/daemon.3:91
3042 msgid "(This function forks, and if the B<fork>(2) succeeds, the parent calls B<_exit>(2), so that further errors are seen by the child only.) On success B<daemon>() returns zero. If an error occurs, B<daemon>() returns -1 and sets I<errno> to any of the errors specified for the B<fork>(2) and B<setsid>(2)."
3043 msgstr "(この関数が fork して B<fork>(2) が成功すると、親プロセスでは B<_exit>(2) を呼び出すので、これ以降のエラーは子プロセスからしか見れない)。 成功した場合、 B<daemon>() は 0 を返す。 エラーが起こった場合、 B<daemon>() は -1 を返す。 さらに、 I<errno> に B<fork>(2) と B<setsid>(2) に関して規定されたエラーを設定する。"
3046 #: build/C/man3/daemon.3:96
3047 msgid "The B<daemon>() function is thread-safe."
3048 msgstr "B<daemon>() 関数はスレッドセーフである。"
3051 #: build/C/man3/daemon.3:102
3052 msgid "Not in POSIX.1-2001. A similar function appears on the BSDs. The B<daemon>() function first appeared in 4.4BSD."
3053 msgstr "POSIX.1-2001 にはない。 同様の関数が BSD には見られる。 B<daemon>() 関数は 4.4BSD で始めて登場した。"
3056 #: build/C/man3/daemon.3:110
3057 msgid "The glibc implementation can also return -1 when I</dev/null> exists but is not a character device with the expected major and minor numbers. In this case, I<errno> need not be set."
3058 msgstr "The glibc implementation can also return -1 when I</dev/null> exists but is not a character device with the expected major and minor numbers. In this case, I<errno> need not be set."
3061 #: build/C/man3/daemon.3:113
3062 msgid "B<fork>(2), B<setsid>(2)"
3063 msgstr "B<fork>(2), B<setsid>(2)"
3066 #: build/C/man3/des_crypt.3:14
3072 #: build/C/man3/des_crypt.3:18
3073 msgid "des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - fast DES encryption"
3074 msgstr "des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - 高速な DES 暗号化"
3077 #. .B #include <des_crypt.h>
3079 #: build/C/man3/des_crypt.3:23
3081 msgid "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
3082 msgstr "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
3085 #: build/C/man3/des_crypt.3:26
3088 "B<int ecb_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
3089 "B< unsigned >I<mode>B<);>\n"
3091 "B<int ecb_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
3092 "B< unsigned >I<mode>B<);>\n"
3095 #: build/C/man3/des_crypt.3:29
3098 "B<int cbc_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
3099 "B< unsigned >I<mode>B<, char *>I<ivec>B<);>\n"
3101 "B<int cbc_crypt(char *>I<key>B<, char *>I<data>B<, unsigned >I<datalen>B<,>\n"
3102 "B< unsigned >I<mode>B<, char *>I<ivec>B<);>\n"
3105 #: build/C/man3/des_crypt.3:31
3107 msgid "B<void des_setparity(char *>I<key>B<);>\n"
3108 msgstr "B<void des_setparity(char *>I<key>B<);>\n"
3111 #: build/C/man3/des_crypt.3:33
3113 msgid "B<int DES_FAILED(int >I<status>B<);>\n"
3114 msgstr "B<int DES_FAILED(int >I<status>B<);>\n"
3117 #: build/C/man3/des_crypt.3:63
3118 msgid "B<ecb_crypt>() and B<cbc_crypt>() implement the NBS DES (Data Encryption Standard). These routines are faster and more general purpose than B<crypt>(3). They also are able to utilize DES hardware if it is available. B<ecb_crypt>() encrypts in ECB (Electronic Code Book) mode, which encrypts blocks of data independently. B<cbc_crypt>() encrypts in CBC (Cipher Block Chaining) mode, which chains together successive blocks. CBC mode protects against insertions, deletions and substitutions of blocks. Also, regularities in the clear text will not appear in the cipher text."
3119 msgstr "B<ecb_crypt>() と B<cbc_crypt>() は NBS DES (Data Encryption Standard, データ暗号化規格) を実装している。 これらのルーチンは B<crypt>(3) よりも高速でより一般的な目的に使用できる。 利用可能であれば、これらのルーチンは DES ハードウェアを使用することもできる。 B<ecb_crypt>() は ECB (Electronic Code Book) モードで暗号化する。 このモードでは (個々の) データのブロックを独立して暗号化する B<cbc_crypt>() は CBC (Cipher Block Chaining) モードで暗号化する。 このモードでは連続するブロックを互いに連鎖させて暗号化する。 CBC はブロックの挿入・削除・置き換えから保護する。 また平文の規則性が暗号文に現れない。"
3122 #: build/C/man3/des_crypt.3:106
3123 msgid "Here is how to use these routines. The first argument, I<key>, is the 8-byte encryption key with parity. To set the key's parity, which for DES is in the low bit of each byte, use B<des_setparity>(). The second argument, I<data>, contains the data to be encrypted or decrypted. The third argument, I<datalen>, is the length in bytes of I<data>, which must be a multiple of 8. The fourth argument, I<mode>, is formed by ORing together some things. For the encryption direction OR in either B<DES_ENCRYPT> or B<DES_DECRYPT>. For software versus hardware encryption, OR in either B<DES_HW> or B<DES_SW>. If B<DES_HW> is specified, and there is no hardware, then the encryption is performed in software and the routine returns B<DESERR_NOHWDEVICE>. For B<cbc_crypt>(), the argument I<ivec> is the 8-byte initialization vector for the chaining. It is updated to the next initialization vector upon return."
3124 msgstr "これらのルーチンの使用法を示す。 第 1 引き数 I<key> はパリティ付きの 8 バイトの暗号化鍵である。 鍵のパリティを設定するには B<des_setparity>() を使うこと。 DES の場合、鍵のパリティは各バイトの最下位ビットである。 第 2 引き数 I<data> は暗号化または復号化されるデータを含む。 第 3 引き数 I<datalen> は I<data> のバイト長であり、8 の倍数でなければならない。 第 4 引き数 I<mode> はいくつかの値を OR することで作成する。 暗号化の方向 (訳註: 暗号化なのか復号化なのか) を指定するため、 B<DES_ENCRYPT> または B<DES_DECRYPT> を OR する。 暗号化をソフトウェアで行うかハードウェアで行うかを指定するため、 B<DES_HW> または B<DES_SW> を OR する。 B<DES_HW> が指定されていて、かつハードウェアがない場合、 暗号化はソフトウェアで実行されて、ルーチンは B<DESERR_NOHWDEVICE> を返す。 B<cbc_crypt>() において、引き数 I<ivec> はデータブロックを連鎖させる際の 8 バイトの初期化ベクトルである。 この引き数はルーチンから戻るときに次の初期化ベクトルに更新される。"
3127 #: build/C/man3/des_crypt.3:108
3129 msgid "B<DESERR_NONE>"
3130 msgstr "B<DESERR_NONE>"
3133 #: build/C/man3/des_crypt.3:111
3138 #: build/C/man3/des_crypt.3:111
3140 msgid "B<DESERR_NOHWDEVICE>"
3141 msgstr "B<DESERR_NOHWDEVICE>"
3144 #: build/C/man3/des_crypt.3:114
3145 msgid "Encryption succeeded, but done in software instead of the requested hardware."
3146 msgstr "暗号化は成功したが、要求されたハードウェアの代わりにソフトウェアで実行された。"
3149 #: build/C/man3/des_crypt.3:114
3151 msgid "B<DESERR_HWERROR>"
3152 msgstr "B<DESERR_HWERROR>"
3155 #: build/C/man3/des_crypt.3:117
3156 msgid "An error occurred in the hardware or driver."
3157 msgstr "ハードウェアまたはドライバでエラーが発生した。"
3160 #: build/C/man3/des_crypt.3:117
3162 msgid "B<DESERR_BADPARAM>"
3163 msgstr "B<DESERR_BADPARAM>"
3166 #: build/C/man3/des_crypt.3:120
3167 msgid "Bad argument to routine."
3168 msgstr "ルーチンへの引き数が不正である。"
3172 #. So far the Sun page
3173 #. Some additions - aeb
3175 #: build/C/man3/des_crypt.3:131
3176 msgid "Given a result status I<stat>, the macro B<DES_FAILED(>I<stat>B<)> is false only for the first two statuses."
3177 msgstr "結果の状態 I<stat> を与えたとき、マクロ B<DES_FAILED(>I<stat>B<)> が false になるのは、最初の 2 つだけである。"
3180 #: build/C/man3/des_crypt.3:134
3181 msgid "These functions are present in glibc 2.1 and later."
3182 msgstr "これらの関数は glibc 2.1 以降に存在する。"
3185 #: build/C/man3/des_crypt.3:142
3186 msgid "The B<ecb_crypt>(), B<cbc_crypt>(), and B<des_setparity>() functions are thread-safe."
3187 msgstr "関数 B<ecb_crypt>(), B<cbc_crypt>(), B<des_setparity>() はスレッドセーフである。"
3190 #: build/C/man3/des_crypt.3:145
3191 msgid "4.3BSD. Not in POSIX.1-2001."
3192 msgstr "4.3BSD. POSIX.1-2001 にはない。"
3195 #: build/C/man3/des_crypt.3:149
3196 msgid "B<des>(1), B<crypt>(3), B<xcrypt>(3)"
3197 msgstr "B<des>(1), B<crypt>(3), B<xcrypt>(3)"
3200 #: build/C/man2/dup.2:37
3206 #: build/C/man2/dup.2:37 build/C/man3/exec.3:41 build/C/man2/execve.2:37
3207 #: build/C/man2/fcntl.2:65 build/C/man3/fexecve.3:25 build/C/man2/syscall.2:42
3208 #: build/C/man2/syscalls.2:31 build/C/man2/truncate.2:43
3209 #: build/C/man2/execveat.2:26
3215 #: build/C/man2/dup.2:40
3216 msgid "dup, dup2, dup3 - duplicate a file descriptor"
3217 msgstr "dup, dup2, dup3 - ファイルディスクリプターを複製する"
3220 #: build/C/man2/dup.2:46
3223 "B<int dup(int >I<oldfd>B<);>\n"
3224 "B<int dup2(int >I<oldfd>B<, int >I<newfd>B<);>\n"
3226 "B<int dup(int >I<oldfd>B<);>\n"
3227 "B<int dup2(int >I<oldfd>B<, int >I<newfd>B<);>\n"
3230 #: build/C/man2/dup.2:50
3233 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
3234 "B<#include E<lt>fcntl.hE<gt>> /* Obtain O_* constant definitions */\n"
3235 "B<#include E<lt>unistd.hE<gt>>\n"
3237 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
3238 "B<#include E<lt>fcntl.hE<gt>> /* 定数 O_* の定義の取得 */\n"
3239 "B<#include E<lt>unistd.hE<gt>>\n"
3242 #: build/C/man2/dup.2:52
3244 msgid "B<int dup3(int >I<oldfd>B<, int >I<newfd>B<, int >I<flags>B<);>\n"
3245 msgstr "B<int dup3(int >I<oldfd>B<, int >I<newfd>B<, int >I<flags>B<);>\n"
3248 #: build/C/man2/dup.2:59
3249 msgid "The B<dup>() system call creates a copy of the file descriptor I<oldfd>, using the lowest-numbered unused descriptor for the new descriptor."
3250 msgstr "B<dup>() システムコールは、 ファイルディスクリプター I<oldfd> のコピーを作成し、 最も小さい番号の未使用のディスクリプターを 新しいディスクリプターとして使用する。"
3253 #: build/C/man2/dup.2:68
3254 msgid "After a successful return, the old and new file descriptors may be used interchangeably. They refer to the same open file description (see B<open>(2)) and thus share file offset and file status flags; for example, if the file offset is modified by using B<lseek>(2) on one of the descriptors, the offset is also changed for the other."
3255 msgstr "成功が返された場合には、 古いファイルディスクリプターと新しいファイルディスクリプターは 互いに可換なものとして使うことができる。 2つのファイルディスクリプターは同じファイル記述 (description) (B<open>(2) 参照) を参照しており、したがってファイルオフセットやファイル状態フラグが 共有される。例えば、一方のディスクリプターに対して B<lseek>(2) を使ってファイルオフセットを変更した場合、もう一方のディスクリプターの オフセットも変化する。"
3258 #: build/C/man2/dup.2:77
3259 msgid "The two descriptors do not share file descriptor flags (the close-on-exec flag). The close-on-exec flag (B<FD_CLOEXEC>; see B<fcntl>(2)) for the duplicate descriptor is off."
3260 msgstr "2つのディスクリプターはファイルディスクリプターフラグ (close-on-exec flag) を共有しない。複製されたディスクリプターの close-on-exec flag (B<fcntl>(2) 参照) は off となる。"
3263 #: build/C/man2/dup.2:77
3269 #: build/C/man2/dup.2:88
3270 msgid "The B<dup2>() system call performs the same task as B<dup>(), but instead of using the lowest-numbered unused file descriptor, it uses the descriptor number specified in I<newfd>. If the descriptor I<newfd> was previously open, it is silently closed before being reused."
3272 "B<dup2>() システムコールは B<dup>() と同じ処理を実行するが、\n"
3273 "番号が最も小さい未使用のファイルディスクリプターを使用する代わりに、\n"
3274 "I<newfd> で指定されたディスクリプター番号を使用する。\n"
3275 "ディスクリプター I<newfd> が以前にオープンされていた場合には、\n"
3276 "黙ってそのディスクリプターをクローズしてから再利用する。"
3279 #: build/C/man2/dup.2:104
3280 msgid "The steps of closing and reusing the file descriptor I<newfd> are performed I<atomically>. This is important, because trying to implement equivalent functionality using B<close>(2) and B<dup>() would be subject to race conditions, whereby I<newfd> might be reused between the two steps. Such reuse could happen because the main program is interrupted by a signal handler that allocates a file descriptor, or because a parallel thread allocates a file descriptor."
3282 "ファイルディスクリプター I<newfd> をクローズして再利用する処理は\n"
3283 "I<アトミック(不可分)に>実行される。これは重要な点である。 なぜなら、\n"
3284 "等価な機能を B<close>(2) と B<dup>() を使って実装しようとすると、\n"
3285 "2 つの処理の間に I<newfd> が再利用されてしまうという、\n"
3286 "競合状態にさらされることになるからだ。\n"
3288 "メインプログラムがファイルディスクリプターを割り当てる\n"
3289 "シグナルハンドラーにより割り込まれたり、並行動作するスレッドが\n"
3290 "ファイルディスクリプターを割り当てたりすることがあるからだ。"
3293 #: build/C/man2/dup.2:106
3294 msgid "Note the following points:"
3295 msgstr "以下の点について注意すること:"
3298 #: build/C/man2/dup.2:112
3299 msgid "If I<oldfd> is not a valid file descriptor, then the call fails, and I<newfd> is not closed."
3300 msgstr "I<oldfd> が有効なファイルディスクリプターでない場合、その呼び出しは失敗し、 I<newfd> はクローズされない。"
3303 #: build/C/man2/dup.2:124
3304 msgid "If I<oldfd> is a valid file descriptor, and I<newfd> has the same value as I<oldfd>, then B<dup2>() does nothing, and returns I<newfd>."
3305 msgstr "I<oldfd> が有効なファイルディスクリプターで、 I<newfd> が I<oldfd> と同じ値の場合、 B<dup2>() は何もせず、 I<newfd> を返す。"
3308 #: build/C/man2/dup.2:124
3314 #: build/C/man2/dup.2:129
3315 msgid "B<dup3>() is the same as B<dup2>(), except that:"
3316 msgstr "B<dup3>() は B<dup2>() と同じだが、以下の点が異なる。"
3319 #: build/C/man2/dup.2:138
3320 msgid "The caller can force the close-on-exec flag to be set for the new file descriptor by specifying B<O_CLOEXEC> in I<flags>. See the description of the same flag in B<open>(2) for reasons why this may be useful."
3321 msgstr "呼び出し元が、新しいファイルディスクリプターに対して close-on-exec フラグを強制的に設定することができる。 これを行うには、 I<flags> に B<O_CLOEXEC> を指定する。 このフラグが役に立つ理由については、 B<open>(2) の B<O_CLOEXEC> フラグの説明を参照のこと。"
3323 #. FIXME . To confirm with Al Viro that this was intended, and its rationale
3325 #: build/C/man2/dup.2:148
3326 msgid "If I<oldfd> equals I<newfd>, then B<dup3>() fails with the error B<EINVAL>."
3327 msgstr "I<oldfd> が I<newfd> と同じ場合、 B<dup3>() は B<EINVAL> エラーで失敗する。"
3330 #: build/C/man2/dup.2:154
3331 msgid "On success, these system calls return the new descriptor. On error, -1 is returned, and I<errno> is set appropriately."
3332 msgstr "成功すると、これらのシステムコールは新しいディスクリプターを返す。 エラーの場合、-1 を返し、 I<errno> を適切に設定する。"
3335 #: build/C/man2/dup.2:159
3336 msgid "I<oldfd> isn't an open file descriptor."
3337 msgstr "I<oldfd> がオープンされたファイルディスクリプターではない。"
3340 #: build/C/man2/dup.2:166
3341 msgid "I<newfd> is out of the allowed range for file descriptors (see the discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
3342 msgstr "I<newfd> がファイルディスクリプターとして許可されている範囲ではない (B<getrlimit>(2) の B<RLIMIT_NOFILE> の議論を参照)。"
3345 #: build/C/man2/dup.2:166 build/C/man2/fcntl.2:1503 build/C/man2/fcntl.2:1512
3346 #: build/C/man2/swapon.2:117
3352 #: build/C/man2/dup.2:176
3353 msgid "(Linux only) This may be returned by B<dup2>() or B<dup3>() during a race condition with B<open>(2) and B<dup>()."
3354 msgstr "(Linux のみ) B<open>(2) や B<dup>() との競合状態の場合に、 B<dup2>() や B<dup3>() はこのエラーを返すかもしれない。"
3357 #: build/C/man2/dup.2:184
3358 msgid "The B<dup2>() or B<dup3>() call was interrupted by a signal; see B<signal>(7)."
3359 msgstr "B<dup2>() や B<dup3>() の呼び出しがシグナルにより割り込まれた。 B<signal>(7) 参照。"
3362 #: build/C/man2/dup.2:189
3363 msgid "(B<dup3>()) I<flags> contain an invalid value."
3364 msgstr "(B<dup3>()) I<flags> に無効な値が入っている。"
3366 #. FIXME . To confirm with Al Viro that this was intended, and its rationale
3368 #: build/C/man2/dup.2:196
3369 msgid "(B<dup3>()) I<oldfd> was equal to I<newfd>."
3370 msgstr "(B<dup3>()) I<oldfd> が I<newfd> と同じであった。"
3373 #: build/C/man2/dup.2:196 build/C/man2/execve.2:422 build/C/man2/fcntl.2:1607
3374 #: build/C/man3/getlogin.3:105
3380 #: build/C/man2/dup.2:203
3381 msgid "The process already has the maximum number of file descriptors open and tried to open a new one (see the discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
3382 msgstr "プロセスがすでにオープンできる最大数までファイルディスクリプター を開いていて、さらに新しいものを開こうとした (B<getrlimit>(2) のリソース上限 B<RLIMIT_NOFILE> を参照)。"
3385 #: build/C/man2/dup.2:208
3386 msgid "B<dup3>() was added to Linux in version 2.6.27; glibc support is available starting with version 2.9."
3387 msgstr "B<dup3>() はバージョン 2.6.27 で Linux に追加された。 glibc によるサポートはバージョン 2.9 以降で利用できる。"
3390 #: build/C/man2/dup.2:212
3391 msgid "B<dup>(), B<dup2>(): SVr4, 4.3BSD, POSIX.1-2001."
3392 msgstr "B<dup>(), B<dup2>(): SVr4, 4.3BSD, POSIX.1-2001."
3394 #. SVr4 documents additional
3395 #. EINTR and ENOLINK error conditions. POSIX.1 adds EINTR.
3396 #. The EBUSY return is Linux-specific.
3398 #: build/C/man2/dup.2:218
3399 msgid "B<dup3>() is Linux-specific."
3400 msgstr "B<dup3>() は Linux 固有である。"
3403 #: build/C/man2/dup.2:232
3404 msgid "The error returned by B<dup2>() is different from that returned by B<fcntl(>..., B<F_DUPFD>, ...B<)> when I<newfd> is out of range. On some systems, B<dup2>() also sometimes returns B<EINVAL> like B<F_DUPFD>."
3405 msgstr "I<newfd> が範囲を超えた時に返されるエラーは、 B<dup2>() と B<fcntl(>..., B<F_DUPFD>, ...B<)> では異っている。 B<dup2>() が B<F_DUPFD> と同じように B<EINVAL> を返すシステムもある。"
3408 #: build/C/man2/dup.2:248
3409 msgid "If I<newfd> was open, any errors that would have been reported at B<close>(2) time are lost. If this is of concern, then\\(emunless the program is single-threaded and does not allocate file descriptors in signal handlers\\(emthe correct approach is I<not> to close I<newfd> before calling B<dup2>(), because of the race condition described above. Instead, code something like the following could be used:"
3411 "I<newfd> がオープンされていた場合、\n"
3412 "B<close>(2) 時に報告されることになるエラーはすべて失われる。\n"
3413 "これが心配で、シングルスレッドかつシグナルハンドラーで\n"
3414 "ファイルディスクリプターを割り当てるようなプログラムでない場合には、\n"
3415 "正しい方法は B<dup2>() を呼び出す前に\n"
3416 "I<newfd> をクローズ「しない」ことである。\n"
3417 "なぜなら、上で説明した競合状況があるからである。\n"
3418 "代わりに、以下のようなコードが使用できることだろう。"
3421 #: build/C/man2/dup.2:253
3424 " /* Obtain a duplicate of 'newfd' that can subsequently\n"
3425 " be used to check for close() errors; an EBADF error\n"
3426 " means that 'newfd' was not open. */\n"
3428 " /* あとで close() エラーをチェックするのに使用できる\n"
3429 " ように 'newfd' の複製を取得する。 EBADF エラーは\n"
3430 " 'newfd' がオープンされていないことを意味する。 */\n"
3433 #: build/C/man2/dup.2:258
3436 " tmpfd = dup(newfd);\n"
3437 " if (tmpfd == -1 && errno != EBADF) {\n"
3438 " /* Handle unexpected dup() error */\n"
3441 " tmpfd = dup(newfd);\n"
3442 " if (tmpfd == -1 && errno != EBADF) {\n"
3443 " /* 予期しない dup() のエラーを処理する */\n"
3447 #: build/C/man2/dup.2:260
3449 msgid " /* Atomically duplicate 'oldfd' on 'newfd' */\n"
3450 msgstr " /* アトミックに 'oldfd' を 'newfd' に複製する */\n"
3453 #: build/C/man2/dup.2:264
3456 " if (dup2(oldfd, newfd) == -1) {\n"
3457 " /* Handle dup2() error */\n"
3460 " if (dup2(oldfd, newfd) == -1) {\n"
3461 " /* dup2() のエラーを処理する */\n"
3465 #: build/C/man2/dup.2:267
3468 " /* Now check for close() errors on the file originally\n"
3469 " referred to by 'newfd' */\n"
3471 " /* ここでもともと 'newfd' で参照されていたファイルの\n"
3472 " close() エラーをチェックする */\n"
3475 #: build/C/man2/dup.2:273
3478 " if (tmpfd != -1) {\n"
3479 " if (close(tmpfd) == -1) {\n"
3480 " /* Handle errors from close */\n"
3484 " if (tmpfd != -1) {\n"
3485 " if (close(tmpfd) == -1) {\n"
3486 " /* close からのエラーを処理する */\n"
3491 #: build/C/man2/dup.2:278
3492 msgid "B<close>(2), B<fcntl>(2), B<open>(2)"
3493 msgstr "B<close>(2), B<fcntl>(2), B<open>(2)"
3496 #: build/C/man3/encrypt.3:30
3502 #: build/C/man3/encrypt.3:30
3508 #: build/C/man3/encrypt.3:33
3509 msgid "encrypt, setkey, encrypt_r, setkey_r - encrypt 64-bit messages"
3510 msgstr "encrypt, setkey, encrypt_r, setkey_r - 64 ビットのメッセージを暗号化する"
3513 #: build/C/man3/encrypt.3:35 build/C/man3/encrypt.3:41
3514 msgid "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */"
3515 msgstr "B<#define _XOPEN_SOURCE> /* feature_test_macros(7) 参照 */"
3518 #: build/C/man3/encrypt.3:39
3519 msgid "B<void encrypt(char >I<block>B<[64], int >I<edflag>B<);>"
3520 msgstr "B<void encrypt(char >I<block>B<[64], int >I<edflag>B<);>"
3523 #: build/C/man3/encrypt.3:43
3524 msgid "B<#include E<lt>stdlib.hE<gt>>"
3525 msgstr "B<#include E<lt>stdlib.hE<gt>>"
3528 #: build/C/man3/encrypt.3:45
3529 msgid "B<void setkey(const char *>I<key>B<);>"
3530 msgstr "B<void setkey(const char *>I<key>B<);>"
3533 #: build/C/man3/encrypt.3:47 build/C/man3/getumask.3:33
3534 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
3535 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
3538 #: build/C/man3/encrypt.3:49
3539 msgid "B<#include E<lt>crypt.hE<gt>>"
3540 msgstr "B<#include E<lt>crypt.hE<gt>>"
3543 #: build/C/man3/encrypt.3:51
3544 msgid "B<void setkey_r(const char *>I<key>B<, struct crypt_data *>I<data>B<);>"
3545 msgstr "B<void setkey_r(const char *>I<key>B<, struct crypt_data *>I<data>B<);>"
3548 #: build/C/man3/encrypt.3:54
3549 msgid "B<void encrypt_r(char *>I<block>B<, int >I<edflag>B<, struct crypt_data *>I<data>B<);>"
3550 msgstr "B<void encrypt_r(char *>I<block>B<, int >I<edflag>B<, struct crypt_data *>I<data>B<);>"
3553 #: build/C/man3/encrypt.3:56
3554 msgid "Each of these requires linking with I<-lcrypt>."
3555 msgstr "これらの関数は I<-lcrypt> でリンクする必要がある。"
3558 #: build/C/man3/encrypt.3:68
3559 msgid "These functions encrypt and decrypt 64-bit messages. The B<setkey>() function sets the key used by B<encrypt>(). The I<key> argument used here is an array of 64 bytes, each of which has numerical value 1 or 0. The bytes key[n] where n=8*i-1 are ignored, so that the effective key length is 56 bits."
3560 msgstr "これらの関数は、64 ビットのメッセージの暗号化と復号化を行う。 B<setkey>() 関数は B<encrypt>() によって使われる暗号鍵を設定する。 ここで使われる引き数 I<key> は 64 バイトの配列であり、各バイトは数値 1 または 0 である。 n=8*i-1 に対するバイト key[n] は無視されるので、 有効な暗号鍵の長さは 56 ビットになる。"
3563 #: build/C/man3/encrypt.3:80
3564 msgid "The B<encrypt>() function modifies the passed buffer, encoding if I<edflag> is 0, and decoding if 1 is being passed. Like the I<key> argument, also I<block> is a bit vector representation of the actual value that is encoded. The result is returned in that same vector."
3565 msgstr "B<encrypt>() 関数は、 I<edflag> が 0 の場合は暗号化し、1 が渡された場合は復号化するというように、 渡されたバッファーを変更する。 引き数 I<key> と同様に、 I<block> はエンコードされた実際の値を表現するビットの配列である。 結果はこの同じ配列を使って返される。"
3568 #: build/C/man3/encrypt.3:90
3569 msgid "These two functions are not reentrant, that is, the key data is kept in static storage. The functions B<setkey_r>() and B<encrypt_r>() are the reentrant versions. They use the following structure to hold the key data:"
3570 msgstr "これら 2 つの関数はリエントラント (reentrant) ではない。 つまり暗号鍵データは静的な領域に保存される。 関数 B<setkey_r>() と B<encrypt_r>() はリエントラントなバージョンである。 これらの関数は暗号鍵データを保持するために以下のような構造体を使う。"
3573 #: build/C/man3/encrypt.3:105
3576 "struct crypt_data {\n"
3577 " char keysched[16 * 8];\n"
3578 " char sb0[32768];\n"
3579 " char sb1[32768];\n"
3580 " char sb2[32768];\n"
3581 " char sb3[32768];\n"
3582 " char crypt_3_buf[14];\n"
3583 " char current_salt[2];\n"
3584 " long int current_saltbits;\n"
3586 " int initialized;\n"
3589 "struct crypt_data {\n"
3590 " char keysched[16 * 8];\n"
3591 " char sb0[32768];\n"
3592 " char sb1[32768];\n"
3593 " char sb2[32768];\n"
3594 " char sb3[32768];\n"
3595 " char crypt_3_buf[14];\n"
3596 " char current_salt[2];\n"
3597 " long int current_saltbits;\n"
3599 " int initialized;\n"
3603 #: build/C/man3/encrypt.3:113
3604 msgid "Before calling B<setkey_r>() set I<data-E<gt>initialized> to zero."
3605 msgstr "B<setkey_r>() を呼び出す前には、 I<data-E<gt>initialized> を 0 に設定すること。"
3608 #: build/C/man3/encrypt.3:115
3609 msgid "These functions do not return any value."
3610 msgstr "これらの関数は、なにも値を返さない。"
3613 #: build/C/man3/encrypt.3:120
3614 msgid "Set I<errno> to zero before calling the above functions. On success, it is unchanged."
3615 msgstr "上記の関数を呼び出す前に I<errno> を 0 に設定すること。 成功した場合、この値は変更されない。"
3618 #: build/C/man3/encrypt.3:124
3619 msgid "The function is not provided. (For example because of former USA export restrictions.)"
3620 msgstr "(例えば以前のアメリカ合衆国輸出規制などにより) この関数が提供されていない。"
3623 #: build/C/man3/encrypt.3:131
3624 msgid "The B<encrypt>() and B<setkey>() functions are not thread-safe."
3625 msgstr "関数 B<encrypt>() と B<setkey>() はスレッドセーフではない。"
3628 #: build/C/man3/encrypt.3:137
3629 msgid "The B<encrypt_r>() and B<setkey_r>() functions are thread-safe."
3630 msgstr "関数 B<encrypt_r>() と B<setkey_r>() はスレッドセーフである。"
3633 #: build/C/man3/encrypt.3:148
3634 msgid "The functions B<encrypt>() and B<setkey>() conform to SVr4, SUSv2, and POSIX.1-2001. The functions B<encrypt_r>() and B<setkey_r>() are GNU extensions."
3635 msgstr "関数 B<encrypt>() と B<setkey>() は SVr4, SUSv2, and POSIX.1-2001 に準拠する。 関数 B<encrypt_r>() と B<setkey_r>() は GNU 拡張である。"
3638 #: build/C/man3/encrypt.3:150
3639 msgid "In glibc 2.2, these functions use the DES algorithm."
3640 msgstr "glibc 2.2 では、これらの関数は DES アルゴリズムを使う。"
3643 #: build/C/man3/encrypt.3:157
3644 msgid "You need to link with libcrypt to compile this example with glibc. To do useful work, the I<key[]> and I<txt[]> arrays must be filled with a useful bit pattern."
3645 msgstr "この例を glibc でコンパイルするには libcrypt とリンクする必要がある。 実際に動作させるためには、配列 I<key[]> と I<txt[]> に有効なビットパターンを指定しなければならない。"
3648 #: build/C/man3/encrypt.3:162
3651 "#define _XOPEN_SOURCE\n"
3652 "#include E<lt>unistd.hE<gt>\n"
3653 "#include E<lt>stdlib.hE<gt>\n"
3655 "#define _XOPEN_SOURCE\n"
3656 "#include E<lt>unistd.hE<gt>\n"
3657 "#include E<lt>stdlib.hE<gt>\n"
3660 #: build/C/man3/encrypt.3:168
3666 " char key[64]; /* bit pattern for key */\n"
3667 " char txt[64]; /* bit pattern for messages */\n"
3672 " char key[64]; /* bit pattern for key */\n"
3673 " char txt[64]; /* bit pattern for messages */\n"
3676 #: build/C/man3/encrypt.3:173
3680 " encrypt(txt, 0); /* encode */\n"
3681 " encrypt(txt, 1); /* decode */\n"
3685 " encrypt(txt, 0); /* encode */\n"
3686 " encrypt(txt, 1); /* decode */\n"
3691 #: build/C/man3/encrypt.3:179
3692 msgid "B<cbc_crypt>(3), B<crypt>(3), B<ecb_crypt>(3),"
3693 msgstr "B<cbc_crypt>(3), B<crypt>(3), B<ecb_crypt>(3)"
3696 #: build/C/man7/environ.7:34
3702 #: build/C/man7/environ.7:37
3703 msgid "environ - user environment"
3704 msgstr "environ - ユーザー環境"
3707 #: build/C/man7/environ.7:40
3709 msgid "B<extern char **>I<environ>B<;>\n"
3710 msgstr "B<extern char **>I<environ>B<;>\n"
3713 #: build/C/man7/environ.7:56
3714 msgid "The variable I<environ> points to an array of pointers to strings called the \"environment\". The last pointer in this array has the value NULL. (This variable must be declared in the user program, but is declared in the header file I<E<lt>unistd.hE<gt>> if the B<_GNU_SOURCE> feature test macro is defined.) This array of strings is made available to the process by the B<exec>(3) call that started the process."
3715 msgstr "変数 I<environ> は「環境 (environment)」と呼ばれる文字列へのポインタの配列である。 この配列の最後のポインタの値は NULL である。 (この変数はユーザープログラムで宣言しなければならないが、 機能検査マクロ B<_GNU_SOURCE> が定義されていればヘッダーファイル I<E<lt>unistd.hE<gt>> で宣言される)。 この文字列配列は、 プロセスを起動する B<exec>(3) によって、その起動されたプロセスで利用できるようになる。"
3718 #: build/C/man7/environ.7:61
3719 msgid "By convention the strings in I<environ> have the form \"I<name>B<=>I<value>\". Common examples are:"
3720 msgstr "通例では、 I<environ> の文字列は \"I<name>B<=>I<value>\" という書式をとる。 よく用いられる例を以下に示す。"
3723 #: build/C/man7/environ.7:61
3729 #: build/C/man7/environ.7:64
3730 msgid "The name of the logged-in user (used by some BSD-derived programs)."
3731 msgstr "ユーザーのログイン名 (BSD 起源のプログラムなどによって使用される)。"
3734 #: build/C/man7/environ.7:64
3740 #: build/C/man7/environ.7:67
3741 msgid "The name of the logged-in user (used by some System-V derived programs)."
3742 msgstr "ユーザーのログイン名(System V 起源のプログラムなどによって使用される)。"
3745 #: build/C/man7/environ.7:67
3751 #: build/C/man7/environ.7:73
3752 msgid "A user's login directory, set by B<login>(1) from the password file B<passwd>(5)."
3753 msgstr "ユーザーのログインディレクトリ。 B<login>(1) がパスワードファイル B<passwd>(5) から取得して設定する。"
3756 #: build/C/man7/environ.7:73
3762 #: build/C/man7/environ.7:91
3763 msgid "The name of a locale to use for locale categories when not overridden by B<LC_ALL> or more specific environment variables such as B<LC_COLLATE>, B<LC_CTYPE>, B<LC_MESSAGES>, B<LC_MONETARY>, B<LC_NUMERIC>, and B<LC_TIME> (see B<locale>(7) for further details of the B<LC_*> environment variables)."
3764 msgstr "ロケールの各カテゴリで使用されるロケールの名前。B<LC_ALL> や、 より狭い範囲を対象とする環境変数 (B<LC_COLLATE>, B<LC_CTYPE>, B<LC_MESSAGES>, B<LC_MONETARY>, B<LC_NUMERIC>, B<LC_TIME> など) によって上書きされることもある (B<LC_*> 環境変数のさらなる詳細は B<locale>(7) 参照)。"
3767 #: build/C/man7/environ.7:91
3773 #: build/C/man7/environ.7:106
3774 msgid "The sequence of directory prefixes that B<sh>(1) and many other programs apply in searching for a file known by an incomplete pathname. The prefixes are separated by \\(aqB<:>\\(aq. (Similarly one has B<CDPATH> used by some shells to find the target of a change directory command, B<MANPATH> used by B<man>(1) to find manual pages, and so on)"
3775 msgstr "B<sh>(1) や他のプログラムが、フルパスで与えられなかった実行ファイルを検索するとき、 ファイル名に前置されるディレクトリの配列。 各ディレクトリは \\(aqB<:>\\(aq によって区切られる。 (同じようなものに、 シェルがディレクトリ変更コマンドの変更先を探すために用いる B<CDPATH> や、 B<man>(1) がマニュアルページの検索に用いる B<MANPATH> などがある。)"
3778 #: build/C/man7/environ.7:106
3784 #: build/C/man7/environ.7:110
3785 msgid "The current working directory. Set by some shells."
3786 msgstr "現在のワーキングディレクトリ。いくつかのシェルが設定する。"
3789 #: build/C/man7/environ.7:110
3795 #: build/C/man7/environ.7:113
3796 msgid "The pathname of the user's login shell."
3797 msgstr "ユーザーのログインシェルのパス名。"
3800 #: build/C/man7/environ.7:113
3806 #: build/C/man7/environ.7:116
3807 msgid "The terminal type for which output is to be prepared."
3808 msgstr "端末の種類。出力はこれにあわせて用意される。"
3811 #: build/C/man7/environ.7:116
3817 #: build/C/man7/environ.7:119
3818 msgid "The user's preferred utility to display text files."
3819 msgstr "テキストファイルを表示するユーテリティ。ユーザーが好みのものを設定する。"
3822 #: build/C/man7/environ.7:119
3824 msgid "B<EDITOR>/B<VISUAL>"
3825 msgstr "B<EDITOR>/B<VISUAL>"
3829 #. The user's preferred utility to browse URLs. Sequence of colon-separated
3830 #. browser commands. See http://www.catb.org/~esr/BROWSER/ .
3832 #: build/C/man7/environ.7:126
3833 msgid "The user's preferred utility to edit text files."
3834 msgstr "テキストファイルを編集するユーテリティ。ユーザーが好みのものを設定する。"
3837 #: build/C/man7/environ.7:144
3838 msgid "Further names may be placed in the environment by the I<export> command and \"name=value\" in B<sh>(1), or by the I<setenv> command if you use B<csh>(1). Arguments may also be placed in the environment at the point of an B<exec>(3). A C program can manipulate its environment using the functions B<getenv>(3), B<putenv>(3), B<setenv>(3), and B<unsetenv>(3)."
3839 msgstr "環境に名前を追加する場合には、 B<sh>(1) では I<export> コマンドと \"name=value\" を使用する。 B<csh>(1) では I<setenv> コマンドを使用する。 B<exec>(3) の引数としても環境を設定することができる。 C プログラムからは、 B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3) などの関数を用いて環境を扱うことができる。"
3842 #: build/C/man7/environ.7:148
3843 msgid "Note that the behavior of many programs and library routines is influenced by the presence or value of certain environment variables. A random collection:"
3844 msgstr "プログラムやライブラリルーチンの多くは、それぞれ適当な環境変数の存在 や値によって、動作に影響を受けることがある。以下、適宜挙げてみよう。"
3847 #: build/C/man7/environ.7:157
3848 msgid "The variables B<LANG>, B<LANGUAGE>, B<NLSPATH>, B<LOCPATH>, B<LC_ALL>, B<LC_MESSAGES>, and so on influence locale handling; see B<catopen>(3), B<gettext>(3), and B<locale>(7)."
3849 msgstr "B<LANG>, B<LANGUAGE>, B<NLSPATH>, B<LOCPATH>, B<LC_ALL>, B<LC_MESSAGES>, などの変数は、ロケールの扱いに影響する。 B<catopen>(3), B<gettext>(3), B<locale>(5) を参照。"
3852 #: build/C/man7/environ.7:164
3853 msgid "B<TMPDIR> influences the path prefix of names created by B<tmpnam>(3) and other routines, and the temporary directory used by B<sort>(1) and other programs."
3854 msgstr "B<TMPDIR> は、 B<tmpnam>(3) などのルーチンによって作成されるファイル名や B<sort>(1) や他のプログラムが使用する一時ディレクトリに前置されるパスに影響する。"
3857 #: build/C/man7/environ.7:168
3858 msgid "B<LD_LIBRARY_PATH>, B<LD_PRELOAD> and other LD_* variables influence the behavior of the dynamic loader/linker."
3859 msgstr "B<LD_LIBRARY_PATH>, B<LD_PRELOAD> などの LD_* 変数はダイナミックローダリンカの動作に影響する。"
3862 #: build/C/man7/environ.7:172
3863 msgid "B<POSIXLY_CORRECT> makes certain programs and library routines follow the prescriptions of POSIX."
3864 msgstr "B<POSIXLY_CORRECT> が指定されると、ある種のプログラムやライブラリルーチンは POSIX の規定に従うようになる。"
3867 #: build/C/man7/environ.7:178
3868 msgid "The behavior of B<malloc>(3) is influenced by B<MALLOC_*> variables."
3869 msgstr "B<malloc>(3) の動作は B<MALLOC_*> 変数によって影響される。"
3872 #: build/C/man7/environ.7:184
3873 msgid "The variable B<HOSTALIASES> gives the name of a file containing aliases to be used with B<gethostbyname>(3)."
3874 msgstr "B<HOSTALIAS> 変数は、 B<gethostbyname>(3) が用いるエイリアスが書かれているファイル名を与える。"
3877 #: build/C/man7/environ.7:195
3878 msgid "B<TZ> and B<TZDIR> give timezone information used by B<tzset>(3) and through that by functions like B<ctime>(3), B<localtime>(3), B<mktime>(3), B<strftime>(3). See also B<tzselect>(8)."
3879 msgstr "B<TZ> と B<TZDIR> は B<tzset>(3) および、この関数を使う B<ctime>(3), B<localtime>(3), B<mktime>(3), B<strftime>(3) といった関数で用いられるタイムゾーンの情報を与える。 B<tzselect>(8) も参照のこと。"
3882 #: build/C/man7/environ.7:199
3883 msgid "B<TERMCAP> gives information on how to address a given terminal (or gives the name of a file containing such information)."
3884 msgstr "B<TERMCAP> は、現在の端末情報の取得先 (あるいはそのような情報が書かれているファイル名) を与える。"
3887 #: build/C/man7/environ.7:202
3888 msgid "B<COLUMNS> and B<LINES> tell applications about the window size, possibly overriding the actual size."
3889 msgstr "B<COLUMNS> と B<LINES> アプリケーションにウインドウのサイズを伝える。 実際のサイズとは違う値を与えることもできる。"
3892 #: build/C/man7/environ.7:207
3893 msgid "B<PRINTER> or B<LPDEST> may specify the desired printer to use. See B<lpr>(1)."
3894 msgstr "B<PRINTER> または B<LPDEST> 用いたいプリンタを指定する。 B<lpr>(1) を参照のこと。"
3897 #: build/C/man7/environ.7:209
3902 #: build/C/man7/environ.7:214
3903 msgid "Clearly there is a security risk here. Many a system command has been tricked into mischief by a user who specified unusual values for B<IFS> or B<LD_LIBRARY_PATH>."
3904 msgstr "これらの中には、明らかにセキュリティ上の危険が存在する。 ユーザーが B<IFS> や B<LD_LIBRARY_PATH> に異常な値を与えたことによって、 これまで多くのシステムコマンドがだまされて、 システムをひどい目にあわせてきた。"
3907 #: build/C/man7/environ.7:247
3908 msgid "There is also the risk of name space pollution. Programs like I<make> and I<autoconf> allow overriding of default utility names from the environment with similarly named variables in all caps. Thus one uses B<CC> to select the desired C compiler (and similarly B<MAKE>, B<AR>, B<AS>, B<FC>, B<LD>, B<LEX>, B<RM>, B<YACC>, etc.). However, in some traditional uses such an environment variable gives options for the program instead of a pathname. Thus, one has B<MORE>, B<LESS>, and B<GZIP>. Such usage is considered mistaken, and to be avoided in new programs. The authors of I<gzip> should consider renaming their option to B<GZIP_OPT>."
3909 msgstr "名前空間が汚染される危険性も存在する。 I<make> や I<autoconf> のようなプログラムでは、デフォルトのユーティリティを 環境にある似たような名前の変数で上書きすることができる (通常はすべて大文字の変数を用いる)。 すなわち、利用したい C コンパイラは B<CC> で選択できる。また同様に B<MAKE>, B<AR>, B<AS>, B<FC>, B<LD>, B<LEX>, B<RM>, B<YACC> なども用いることができる。 ところが一方では、このような変数を (パス名ではなく) プログラムに対するオプションとして扱うような流儀も存在してきた。 例えば B<MORE>, B<LESS>, B<GZIP> などがそうである。 このような利用法は間違っていると考えるべきで、 新しいプログラムでは避けるべきである。 I<gzip> の作者たちは、オプションを与える環境変数を B<GZIP_OPT> に改名することを考えるほうがよい。"
3912 #: build/C/man7/environ.7:264
3913 msgid "B<env>(1), B<bash>(1), B<csh>(1), B<login>(1), B<printenv>(1), B<sh>(1), B<tcsh>(1), B<execve>(2), B<clearenv>(3), B<exec>(3), B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<locale>(7), B<ld.so>(8)"
3914 msgstr "B<env>(1), B<bash>(1), B<csh>(1), B<login>(1), B<printenv>(1), B<sh>(1), B<tcsh>(1), B<execve>(2), B<clearenv>(3), B<exec>(3), B<getenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<locale>(7), B<ld.so>(8)"
3917 #: build/C/man3/euidaccess.3:25
3923 #: build/C/man3/euidaccess.3:25
3929 #: build/C/man3/euidaccess.3:28
3930 msgid "euidaccess, eaccess - check effective user's permissions for a file"
3931 msgstr "euidaccess, eaccess - ファイルへのアクセス権を実効ユーザーでチェックする"
3934 #: build/C/man3/euidaccess.3:32
3937 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
3938 "B<#include E<lt>unistd.hE<gt>>\n"
3940 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
3941 "B<#include E<lt>unistd.hE<gt>>\n"
3944 #: build/C/man3/euidaccess.3:35
3947 "B<int euidaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
3948 "B<int eaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
3950 "B<int euidaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
3951 "B<int eaccess(const char *>I<pathname>B<, int >I<mode>B<);>\n"
3954 #: build/C/man3/euidaccess.3:47
3955 msgid "Like B<access>(2), B<euidaccess>() checks permissions and existence of the file identified by its argument I<pathname>. However, whereas B<access>(2) performs checks using the real user and group identifiers of the process, B<euidaccess>() uses the effective identifiers."
3956 msgstr "B<access>(2) と同様、 B<euidaccess>() は引き数 I<pathname> で指定されたファイルの許可 (permission) と存在のチェックを行う。 B<access>(2) はプロセスの実 (real) ユーザーID / 実グループID を用いてチェックを行うのに対し、 B<euidaccess>() は実効 (effective) ID を用いる。"
3959 #: build/C/man3/euidaccess.3:53
3960 msgid "I<mode> is a mask consisting of one or more of B<R_OK>, B<W_OK>, B<X_OK>, and B<F_OK>, with the same meanings as for B<access>(2)."
3961 msgstr "I<mode> は B<R_OK>, B<W_OK>, B<X_OK>, B<F_OK> の一つ以上から構成されるマスクである。 B<R_OK>, B<W_OK>, B<X_OK>, B<F_OK> は B<access>(2) と同じ意味を持つ。"
3964 #: build/C/man3/euidaccess.3:58
3965 msgid "B<eaccess>() is a synonym for B<euidaccess>(), provided for compatibility with some other systems."
3966 msgstr "B<eaccess>() は B<euidaccess>() の同義語であり、他のいくつかのシステムとの互換性のために提供されている。"
3969 #: build/C/man3/euidaccess.3:66
3970 msgid "On success (all requested permissions granted), zero is returned. On error (at least one bit in I<mode> asked for a permission that is denied, or some other error occurred), -1 is returned, and I<errno> is set appropriately."
3971 msgstr "成功した場合 (要求した全てについて許可が得られたら)、ゼロが返される。 エラーの場合 (I<mode> の少なくとも一つのビットで要求した許可がなかった場合や、 他のエラーが起こった場合)、-1 が返され、 I<errno> が適切に設定される。"
3974 #: build/C/man3/euidaccess.3:69
3975 msgid "As for B<access>(2)."
3976 msgstr "B<access>(2) と同じ。"
3979 #: build/C/man3/euidaccess.3:73
3980 msgid "The B<eaccess>() function was added to glibc in version 2.4."
3981 msgstr "B<eaccess>() 関数は glibc のバージョン 2.4 で追加された。"
3984 #: build/C/man3/euidaccess.3:80
3985 msgid "The B<euidaccess>() and B<eaccess>() functions are thread-safe."
3986 msgstr "関数 B<euidaccess>() と B<eaccess>() はスレッドセーフである。"
3988 #. e.g., FreeBSD 6.1.
3990 #: build/C/man3/euidaccess.3:86
3991 msgid "These functions are nonstandard. Some other systems have an B<eaccess>() function."
3992 msgstr "これらの関数は非標準である。 他のいくつかのシステムには B<eaccess>() 関数がある。"
3995 #: build/C/man3/euidaccess.3:93
3996 msgid "I<Warning>: Using this function to check a process's permissions on a file before performing some operation based on that information leads to race conditions: the file permissions may change between the two steps. Generally, it is safer just to attempt the desired operation and handle any permission error that occurs."
3999 "ある操作を実行する前にこの関数を使ってファイルに対するプロセスのアクセス許可を\n"
4000 "確認してから、その情報に基づいて操作を行うと、競合条件が発生する可能性がある。\n"
4001 "これは二つの操作の間でファイルのアクセス許可が変化する場合があるからである。\n"
4002 "一般的には、必要な操作のみを行い、その際に発生したアクセス許可に関するエラーを\n"
4006 #: build/C/man3/euidaccess.3:101
4007 msgid "This function always dereferences symbolic links. If you need to check the permissions on a symbolic link, use B<faccessat>(2) with the flags B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW>."
4009 "この関数は常にシンボリックリンクの展開を行う。\n"
4010 "シンボリックリンクのアクセス許可を確認する必要がある場合は、\n"
4011 "フラグ B<AT_EACCESS> と B<AT_SYMLINK_NOFOLLOW> を付けて\n"
4012 "B<faccessat>(2) を使うこと。"
4015 #: build/C/man3/euidaccess.3:112
4016 msgid "B<access>(2), B<chmod>(2), B<chown>(2), B<faccessat>(2), B<open>(2), B<setgid>(2), B<setuid>(2), B<stat>(2), B<credentials>(7), B<path_resolution>(7)"
4017 msgstr "B<access>(2), B<chmod>(2), B<chown>(2), B<faccessat>(2), B<open>(2), B<setgid>(2), B<setuid>(2), B<stat>(2), B<credentials>(7), B<path_resolution>(7)"
4020 #: build/C/man3/exec.3:41
4026 #: build/C/man3/exec.3:44
4027 msgid "execl, execlp, execle, execv, execvp, execvpe - execute a file"
4028 msgstr "execl, execlp, execle, execv, execvp, execvpe - ファイルを実行する"
4031 #: build/C/man3/exec.3:48
4032 msgid "B<extern char **environ;>"
4033 msgstr "B<extern char **environ;>"
4036 #: build/C/man3/exec.3:50
4037 msgid "B<int execl(const char *>I<path>B<, const char *>I<arg>B<, ...);>"
4038 msgstr "B<int execl(const char *>I<path>B<, const char *>I<arg>B<, ...);>"
4041 #: build/C/man3/exec.3:52
4042 msgid "B<int execlp(const char *>I<file>B<, const char *>I<arg>B<, ...);>"
4043 msgstr "B<int execlp(const char *>I<file>B<, const char *>I<arg>B<, ...);>"
4046 #: build/C/man3/exec.3:54
4047 msgid "B<int execle(const char *>I<path>B<, const char *>I<arg>B<,>"
4048 msgstr "B<int execle(const char *>I<path>B<, const char *>I<arg>B<,>"
4051 #: build/C/man3/exec.3:56
4052 msgid "B< ..., char * const >I<envp>B<[]);>"
4053 msgstr "B< ..., char * const >I<envp>B<[]);>"
4056 #: build/C/man3/exec.3:58
4057 msgid "B<int execv(const char *>I<path>B<, char *const >I<argv>B<[]);>"
4058 msgstr "B<int execv(const char *>I<path>B<, char *const >I<argv>B<[]);>"
4061 #: build/C/man3/exec.3:60
4062 msgid "B<int execvp(const char *>I<file>B<, char *const >I<argv>B<[]);>"
4063 msgstr "B<int execvp(const char *>I<file>B<, char *const >I<argv>B<[]);>"
4066 #: build/C/man3/exec.3:62
4067 msgid "B<int execvpe(const char *>I<file>B<, char *const >I<argv>B<[],>"
4068 msgstr "B<int execvpe(const char *>I<file>B<, char *const >I<argv>B<[],>"
4071 #: build/C/man3/exec.3:64 build/C/man2/execve.2:46
4072 msgid "B< char *const >I<envp>B<[]);>"
4073 msgstr "B< char *const >I<envp>B<[]);>"
4076 #: build/C/man3/exec.3:72
4077 msgid "B<execvpe>(): _GNU_SOURCE"
4078 msgstr "B<execvpe>(): _GNU_SOURCE"
4081 #: build/C/man3/exec.3:82
4082 msgid "The B<exec>() family of functions replaces the current process image with a new process image. The functions described in this manual page are front-ends for B<execve>(2). (See the manual page for B<execve>(2) for further details about the replacement of the current process image.)"
4083 msgstr "B<exec>() ファミリーの関数は現在のプロセスイメージを新しいプロセスイメージで置き 換える。このマニュアルで説明されている関数は B<execve>(2) のフロントエンドである。 (現在のプロセスイメージの置き換えについての詳細は B<execve>(2) のマニュアルを参照)"
4086 #: build/C/man3/exec.3:85
4087 msgid "The initial argument for these functions is the name of a file that is to be executed."
4088 msgstr "これらの関数の最初の引き数は、実行されるファイルの名前である。"
4091 #: build/C/man3/exec.3:107
4092 msgid "The I<const char\\ *arg> and subsequent ellipses in the B<execl>(), B<execlp>(), and B<execle>() functions can be thought of as I<arg0>, I<arg1>, \\&..., I<argn>. Together they describe a list of one or more pointers to null-terminated strings that represent the argument list available to the executed program. The first argument, by convention, should point to the filename associated with the file being executed. The list of arguments I<must> be terminated by a null pointer, and, since these are variadic functions, this pointer must be cast I<(char\\ *) NULL>."
4093 msgstr "関数 B<execl>(), B<execlp>(), B<execle>() の I<const char\\ *arg> とそれに続く省略部分は I<arg0>, I<arg1>, \\&..., I<argn> とみなされる。 これらには、実行されるプログラムで利用可能な引き数のリストを指定する (引き数のリストは ヌルで終端された文字列へのポインタから構成される)。 慣習として、最初の引き数は、実行されるファイル名 へのポインタにする。引き数のリストは必ず NULL で終わらなければならず、これらの関数は可変長引き数関数なので、 このポインタは I<(char\\ *) NULL> とキャストしなければならない。"
4096 #: build/C/man3/exec.3:120
4097 msgid "The B<execv>(), B<execvp>(), and B<execvpe>() functions provide an array of pointers to null-terminated strings that represent the argument list available to the new program. The first argument, by convention, should point to the filename associated with the file being executed. The array of pointers I<must> be terminated by a null pointer."
4098 msgstr "関数 B<execv>(), B<execvp>(), B<execvpe>() は、利用可能な引き数リスト (ヌルで終端された文字列への ポインタの配列) を新しいプログラムに渡す。 慣習として、最初の引き数は実行されるファイル名へ のポインタにする。ポインタの配列は必ず NULL で終わらなければならない。"
4101 #: build/C/man3/exec.3:137
4102 msgid "The B<execle>() and B<execvpe>() functions allow the caller to specify the environment of the executed program via the argument I<envp>. The I<envp> argument is an array of pointers to null-terminated strings and I<must> be terminated by a null pointer. The other functions take the environment for the new process image from the external variable I<environ> in the calling process."
4103 msgstr "関数 B<execle>(), B<execvpe>() では、呼び出し元が引き数 I<envp> 経由実行されるプログラムの環境を指定することができる。 I<envp> 引き数は、NULL で終端された文字列へのポインタの配列であり、ヌルポインタで終わらなければならない。 他の関数では、呼び出し元のプロセスの外部変数 B<environ> から新しいプロセス用の環境を与える。"
4106 #: build/C/man3/exec.3:137
4108 msgid "Special semantics for execlp() and execvp()"
4109 msgstr "execlp() と execvp() の特別な動作"
4112 #: build/C/man3/exec.3:157
4113 msgid "The B<execlp>(), B<execvp>(), and B<execvpe>() functions duplicate the actions of the shell in searching for an executable file if the specified filename does not contain a slash (/) character. The file is sought in the colon-separated list of directory pathnames specified in the B<PATH> environment variable. If this variable isn't defined, the path list defaults to the current directory followed by the list of directories returned by I<confstr(_CS_PATH)>. (This B<confstr>(3) call typically returns the value \"/bin:/usr/bin\".)"
4114 msgstr "関数 B<execlp>(), B<execvp>(), B<execvpe>() は、指定されたファイル名がスラッシュ (/) を含んでいない場合、 シェルと同じ動作で実行可能なファイルを探索する。 ファイルの検索は、環境変数 B<PATH> で指定されたコロン区切りのディレクトリのパス名のリストを対象に行われる。 この変数が定義されていない場合、パス名のリストのデフォルト値として、 カレントディレクトリの後ろに、 I<confstr(_CS_PATH)> が返すディレクトリのリストをつなげた値が使用される (この B<confstr>(3) の呼び出しでは通常 \"/bin:/usr/bin\" が返される)。"
4117 #: build/C/man3/exec.3:161
4118 msgid "If the specified filename includes a slash character, then B<PATH> is ignored, and the file at the specified pathname is executed."
4119 msgstr "指定されたファイル名がスラッシュを含む場合、 B<PATH> は無視され、指定されたパス名のファイルが実行される。"
4122 #: build/C/man3/exec.3:163
4123 msgid "In addition, certain errors are treated specially."
4124 msgstr "さらに、いくつかのエラーは特別に処理される。"
4127 #: build/C/man3/exec.3:174
4128 msgid "If permission is denied for a file (the attempted B<execve>(2) failed with the error B<EACCES>), these functions will continue searching the rest of the search path. If no other file is found, however, they will return with I<errno> set to B<EACCES>."
4129 msgstr "ファイルが実行ファイルでない場合 (このとき呼び出そうとした B<execve>(2) はエラー B<EACCES> で失敗する)、これらの関数は残りの検索パスの検索を続ける。 他にファイルが見つからなくなった場合 I<errno> に B<EACCES> を設定し復帰する。"
4132 #: build/C/man3/exec.3:183
4133 msgid "If the header of a file isn't recognized (the attempted B<execve>(2) failed with the error B<ENOEXEC>), these functions will execute the shell (I</bin/sh>) with the path of the file as its first argument. (If this attempt fails, no further searching is done.)"
4134 msgstr "ファイルのヘッダが実行形式として認識できない場合 (このとき呼び出そうとした B<execve>(2) はエラー B<ENOEXEC> で失敗する)、これらの関数はそのファイルを最初の引き数としたシェル (I</bin/sh>) を実行する (これにも失敗した場合、これ以上の検索は行われない)。"
4137 #: build/C/man3/exec.3:190
4138 msgid "The B<exec>() functions return only if an error has occurred. The return value is -1, and I<errno> is set to indicate the error."
4139 msgstr "B<exec>() 群の関数が復帰するのは、エラーが発生した場合のみである。 返り値は -1 で、 I<errno> にエラーの内容がセットされる。"
4142 #: build/C/man3/exec.3:195
4143 msgid "All of these functions may fail and set I<errno> for any of the errors specified for B<execve>(2)."
4144 msgstr "これら全ての関数は失敗する場合がある。その場合、 B<execve>(2) に対して規定されたエラーが I<errno> に設定される。"
4147 #: build/C/man3/exec.3:199
4148 msgid "The B<execvpe>() function first appeared in glibc 2.11."
4149 msgstr "B<execvpe>() 関数は glibc 2.11 で初めて登場した。"
4152 #: build/C/man3/exec.3:201
4153 msgid "POSIX.1-2001, POSIX.1-2008."
4154 msgstr "POSIX.1-2001, POSIX.1-2008."
4157 #: build/C/man3/exec.3:205
4158 msgid "The B<execvpe>() function is a GNU extension."
4159 msgstr "B<execvpe>() 関数は GNU による拡張である。"
4162 #: build/C/man3/exec.3:215
4163 msgid "On some other systems, the default path (used when the environment does not contain the variable B<PATH>) has the current working directory listed after I</bin> and I</usr/bin>, as an anti-Trojan-horse measure. Linux uses here the traditional \"current directory first\" default path."
4164 msgstr "Linux 以外のシステムには、 (環境変数 B<PATH> が定義されていないときの) デフォルトのパスにおいて、カレントディレクトリが I</bin> と I</usr/bin> の後ろに配置されるものもある。 これはトロイの木馬対策のためである。 Linux では、デフォルトのパスに、昔ながらの「現在のディレクトリを 先に探索」というルールを使っている。"
4167 #: build/C/man3/exec.3:229
4168 msgid "The behavior of B<execlp>() and B<execvp>() when errors occur while attempting to execute the file is historic practice, but has not traditionally been documented and is not specified by the POSIX standard. BSD (and possibly other systems) do an automatic sleep and retry if B<ETXTBSY> is encountered. Linux treats it as a hard error and returns immediately."
4169 msgstr "ファイルを実行しようとしている間にエラーが発生した時の B<execlp>() と B<execvp>() のふるまいについて歴史的な慣習はあるが、伝統的に文書として記載されておらず、 POSIX 標準でも規定されていない。BSD (またおそらく他のシステム) では、 B<ETXTBSY> が発生した場合、自動的に中断 (sleep) し再試行を行う。 Linux はそれをハードエラーとして取り扱い即座に復帰する。"
4172 #: build/C/man3/exec.3:241
4173 msgid "Traditionally, the functions B<execlp>() and B<execvp>() ignored all errors except for the ones described above and B<ENOMEM> and B<E2BIG>, upon which they returned. They now return if any error other than the ones described above occurs."
4174 msgstr "伝統的に、関数 B<execlp>() と B<execvp>() は、上で説明したエラーと、これら 2 つの関数自身が返す B<ENOMEM> と B<E2BIG> 以外の全てのエラーを無視していたが、 今では、上で説明した以外のエラーが発生した場合でも、 返ってくるよう変更された。"
4177 #: build/C/man3/exec.3:249
4178 msgid "B<sh>(1), B<execve>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<fexecve>(3), B<environ>(7)"
4179 msgstr "B<sh>(1), B<execve>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<fexecve>(3), B<environ>(7)"
4182 #: build/C/man2/execve.2:37
4188 #: build/C/man2/execve.2:40
4189 msgid "execve - execute program"
4190 msgstr "execve - プログラムを実行する"
4193 #: build/C/man2/execve.2:44
4194 msgid "B<int execve(const char *>I<filename>B<, char *const >I<argv>B<[], >"
4195 msgstr "B<int execve(const char *>I<filename>B<, char *const >I<argv>B<[], >"
4198 #: build/C/man2/execve.2:51
4199 msgid "B<execve>() executes the program pointed to by I<filename>. I<filename> must be either a binary executable, or a script starting with a line of the form:"
4200 msgstr "B<execve>() は、I<filename> によって指定されたプログラムを実行する。 I<filename> は、バイナリ実行形式か、 以下の形式の行で始まるスクリプトでなければならない。"
4203 #: build/C/man2/execve.2:55 build/C/man2/execve.2:265
4205 msgid "B<#!> I<interpreter >[optional-arg]\n"
4206 msgstr "B<#!> I<interpreter >[optional-arg]\n"
4209 #: build/C/man2/execve.2:59
4210 msgid "For details of the latter case, see \"Interpreter scripts\" below."
4211 msgstr "後者の詳細は、後ろの「インタプリタスクリプト」の節を参照のこと。"
4214 #: build/C/man2/execve.2:68
4215 msgid "I<argv> is an array of argument strings passed to the new program. By convention, the first of these strings should contain the filename associated with the file being executed. I<envp> is an array of strings, conventionally of the form B<key=value>, which are passed as environment to the new program. Both I<argv> and I<envp> must be terminated by a null pointer. The argument vector and environment can be accessed by the called program's main function, when it is defined as:"
4217 "I<argv> は新しいプログラムに渡される引き数文字列の配列である。\n"
4218 "慣例では、引き数文字列の最初の要素には実行されたファイルに関連付けられた\n"
4219 "ファイル名を含めることになっている。\n"
4220 "I<envp> は文字列の配列であり、伝統的に B<key=value> の形式をしており、\n"
4221 "新しいプログラムの環境変数として渡される。\n"
4222 "I<argv> と I<envp> はいずれものヌルポインタで終わっている必要がある。\n"
4223 "引き数配列と環境変数は、呼び出されたプログラムの main 関数を\n"
4224 "以下のように定義することによってアクセス可能になる。"
4227 #: build/C/man2/execve.2:72
4229 msgid "int main(int argc, char *argv[], char *envp[])\n"
4230 msgstr "int main(int argc, char *argv[], char *envp[])\n"
4233 #: build/C/man2/execve.2:79
4234 msgid "B<execve>() does not return on success, and the text, data, bss, and stack of the calling process are overwritten by that of the program loaded."
4235 msgstr "成功した場合、 B<execve>() は返らない。 そして、呼び出し元のプロセスの text, data, bss, スタックは、 読み込まれたプログラムによって上書きされる。"
4238 #: build/C/man2/execve.2:83
4239 msgid "If the current program is being ptraced, a B<SIGTRAP> is sent to it after a successful B<execve>()."
4240 msgstr "元のプログラムが ptrace されている場合、 B<execve>() が成功した後に そのプログラムに B<SIGTRAP> が送られる。"
4243 #: build/C/man2/execve.2:98
4244 msgid "If the set-user-ID bit is set on the program file pointed to by I<filename>, and the underlying filesystem is not mounted I<nosuid> (the B<MS_NOSUID> flag for B<mount>(2)), and the calling process is not being ptraced, then the effective user ID of the calling process is changed to that of the owner of the program file. Similarly, when the set-group-ID bit of the program file is set the effective group ID of the calling process is set to the group of the program file."
4245 msgstr "I<filename> で指定されたプログラムファイルに set-user-ID ビットが設定されており、 ファイルが存在するファイルシステムが I<nosuid> (B<mount>(2) の B<MS_NOSUID> フラグ) でマウントされておらず、 呼び出したプロセスが ptrace されていない場合、 呼び出したプロセスの実効 (effective) ユーザー ID は プログラムファイルの所有者 (owner) に変更される。 同様に、プログラムファイルに set-group-ID ビットが設定されていた場合、 呼び出したプロセスの有効グループ ID は プログラムファイルのグループに変更される。"
4248 #: build/C/man2/execve.2:103
4249 msgid "The effective user ID of the process is copied to the saved set-user-ID; similarly, the effective group ID is copied to the saved set-group-ID. This copying takes place after any effective ID changes that occur because of the set-user-ID and set-group-ID permission bits."
4250 msgstr "プロセスの実効ユーザー ID は保存 (saved) set-user-ID にコピーされる。 同様に、実効グループ ID は保存 set-group-ID にコピーされる。 このコピーは、set-user-ID / set-group-ID 許可ビットにより発生する 実効 ID の変更後に行われる。"
4253 #: build/C/man2/execve.2:111
4254 msgid "If the executable is an a.out dynamically linked binary executable containing shared-library stubs, the Linux dynamic linker B<ld.so>(8) is called at the start of execution to bring needed shared libraries into memory and link the executable with them."
4255 msgstr "実行ファイルが動的リンクされた a.out 実行形式で、共有ライブラリの スタブを含むものだった場合、実行の開始時に Linux の ダイナミックリンカ B<ld.so>(8) が呼び出され、必要な共有ライブラリをメモリに読み込んでリンクを行う。"
4258 #: build/C/man2/execve.2:118
4259 msgid "If the executable is a dynamically linked ELF executable, the interpreter named in the PT_INTERP segment is used to load the needed shared libraries. This interpreter is typically I</lib/ld-linux.so.2> for binaries linked with glibc."
4261 "実行ファイルがダイナミックリンクされた ELF 実行形式だった場合、\n"
4262 "PT_INTERP セグメントに指定されたインタプリタが必要な 共有ライブラリ\n"
4263 "(shared library) を読み込むのに使用される。\n"
4264 "通常、インタプリタは glibc をリンクしたバイナリでは\n"
4265 "I</lib/ld-linux.so.2> である。"
4268 #: build/C/man2/execve.2:122
4269 msgid "All process attributes are preserved during an B<execve>(), except the following:"
4270 msgstr "以下に示す以外のすべてのプロセス属性は B<execve>() の前後で保持される。"
4273 #: build/C/man2/execve.2:126
4274 msgid "The dispositions of any signals that are being caught are reset to the default (B<signal>(7))."
4275 msgstr "捕捉されたシグナルの処理方法 (disposition) は デフォルト動作にリセットされる (B<signal>(7))。"
4278 #: build/C/man2/execve.2:129
4279 msgid "Any alternate signal stack is not preserved (B<sigaltstack>(2))."
4280 msgstr "代替シグナルスタックはどれも保持されない (B<sigaltstack>(2))。"
4283 #: build/C/man2/execve.2:132
4284 msgid "Memory mappings are not preserved (B<mmap>(2))."
4285 msgstr "メモリマッピングは保持されない (B<mmap>(2))。"
4288 #: build/C/man2/execve.2:135
4289 msgid "Attached System\\ V shared memory segments are detached (B<shmat>(2))."
4290 msgstr "付加された (attached) System\\ V 共有メモリセグメントは分離される (B<shmat>(2))。"
4293 #: build/C/man2/execve.2:138
4294 msgid "POSIX shared memory regions are unmapped (B<shm_open>(3))."
4295 msgstr "POSIX 共有メモリ領域はマッピングを解除される (B<shm_open>(3))。"
4298 #: build/C/man2/execve.2:141
4299 msgid "Open POSIX message queue descriptors are closed (B<mq_overview>(7))."
4300 msgstr "オープンされた POSIX メッセージキューディスクリプターはクローズされる (B<mq_overview>(7))。"
4303 #: build/C/man2/execve.2:144
4304 msgid "Any open POSIX named semaphores are closed (B<sem_overview>(7))."
4305 msgstr "オープンされた POSIX 名前付きセマフォはいずれもクローズされる (B<sem_overview>(7))。"
4308 #: build/C/man2/execve.2:147
4309 msgid "POSIX timers are not preserved (B<timer_create>(2))."
4310 msgstr "POSIX タイマは保持されない (B<timer_create>(2))。"
4313 #: build/C/man2/execve.2:150
4314 msgid "Any open directory streams are closed (B<opendir>(3))."
4315 msgstr "オープンされたディレクトリストリームはいずれもクローズされる (B<opendir>(3))。"
4318 #: build/C/man2/execve.2:154
4319 msgid "Memory locks are not preserved (B<mlock>(2), B<mlockall>(2))."
4320 msgstr "メモリロックは保持されない (B<mlock>(2), B<mlockall>(2))。"
4323 #: build/C/man2/execve.2:158
4324 msgid "Exit handlers are not preserved (B<atexit>(3), B<on_exit>(3))."
4325 msgstr "終了 (exit) ハンドラは保持されない (B<atexit>(3), B<on_exit>(3))。"
4328 #: build/C/man2/execve.2:161
4329 msgid "The floating-point environment is reset to the default (see B<fenv>(3))."
4330 msgstr "浮動小数点関連の環境はデフォルトにリセットされる (B<fenv>(3) 参照)。"
4333 #: build/C/man2/execve.2:167
4334 msgid "The process attributes in the preceding list are all specified in POSIX.1-2001. The following Linux-specific process attributes are also not preserved during an B<execve>():"
4335 msgstr "上記のリストのプロセス属性はいずれも POSIX.1-2001 で規定されている。 以下に示す Linux 固有のプロセス属性も B<execve>() の前後で保持されない。"
4338 #: build/C/man2/execve.2:174
4339 msgid "The B<prctl>(2) B<PR_SET_DUMPABLE> flag is set, unless a set-user-ID or set-group ID program is being executed, in which case it is cleared."
4340 msgstr "set-user-ID か set-group-ID されたプログラムが実行されている場合、 B<prctl>(2) の B<PR_SET_DUMPABLE> フラグはクリアされる。それ以外の場合、このフラグはセットされる。"
4343 #: build/C/man2/execve.2:179
4344 msgid "The B<prctl>(2) B<PR_SET_KEEPCAPS> flag is cleared."
4345 msgstr "B<prctl>(2) の B<PR_SET_KEEPCAPS> フラグはクリアされる。"
4348 #: build/C/man2/execve.2:186
4349 msgid "(Since Linux 2.4.36 / 2.6.23) If a set-user-ID or set-group-ID program is being executed, then the parent death signal set by B<prctl>(2) B<PR_SET_PDEATHSIG> flag is cleared."
4350 msgstr "(Linux 2.4.36 以降 / 2.6.23 以降) set-user-ID や set-group-ID されたプログラムが実行された場合、 B<prctl>(2) の B<PR_SET_PDEATHSIG> フラグで設定された parent death シグナルはクリアされる。"
4353 #: build/C/man2/execve.2:193
4354 msgid "The process name, as set by B<prctl>(2) B<PR_SET_NAME> (and displayed by I<ps\\ -o comm>), is reset to the name of the new executable file."
4355 msgstr "プロセス名は新しい実行ファイルの名前にリセットされる。 プロセス名は B<prctl>(2) の B<PR_SET_NAME> で設定でき、 I<ps\\ -o comm> で表示できる。"
4358 #: build/C/man2/execve.2:200
4359 msgid "The B<SECBIT_KEEP_CAPS> I<securebits> flag is cleared. See B<capabilities>(7)."
4360 msgstr "B<SECBIT_KEEP_CAPS> の I<securebits> フラグはクリアされる。 B<capabilities>(7) 参照。"
4363 #: build/C/man2/execve.2:205
4364 msgid "The termination signal is reset to B<SIGCHLD> (see B<clone>(2))."
4365 msgstr "終了シグナル (termination signal) は B<SIGCHLD> にリセットされる (B<clone>(2) 参照)。"
4368 #: build/C/man2/execve.2:207 build/C/man2/fork.2:138
4369 msgid "Note the following further points:"
4370 msgstr "以下の点についても注意すること:"
4373 #: build/C/man2/execve.2:211
4374 msgid "All threads other than the calling thread are destroyed during an B<execve>(). Mutexes, condition variables, and other pthreads objects are not preserved."
4375 msgstr "呼び出し元スレッド以外の全てのスレッドは B<execve>() 中に破棄される。 mutex、条件変数、その他の pthread オブジェクトは保持されない。"
4378 #: build/C/man2/execve.2:214
4379 msgid "The equivalent of I<setlocale(LC_ALL, \"C\")> is executed at program start-up."
4380 msgstr "I<setlocale(LC_ALL, \"C\")> 相当の処理がプログラム開始時に実行される。"
4383 #: build/C/man2/execve.2:222
4384 msgid "POSIX.1-2001 specifies that the dispositions of any signals that are ignored or set to the default are left unchanged. POSIX.1-2001 specifies one exception: if B<SIGCHLD> is being ignored, then an implementation may leave the disposition unchanged or reset it to the default; Linux does the former."
4385 msgstr "POSIX.1-2001 は、動作が無視かデフォルトに設定されている全てのシグナル の処理方法は変更せずそのままにする、と規定している。 但し、POSIX.1-2001 には一つ例外があり、 B<SIGCHLD> が無視になっている場合、 その処理方法を変更せずにそのままにするか、デフォルト動作にリセットするかは 実装依存となっている。 Linux では前者 (変更しない) となっている。"
4388 #: build/C/man2/execve.2:226
4389 msgid "Any outstanding asynchronous I/O operations are canceled (B<aio_read>(3), B<aio_write>(3))."
4390 msgstr "完了していない非同期 I/O 操作はキャンセルされる (B<aio_read>(3), B<aio_write>(3))。"
4393 #: build/C/man2/execve.2:231
4394 msgid "For the handling of capabilities during B<execve>(), see B<capabilities>(7)."
4395 msgstr "B<execve>(2) 時のケーパビリティの扱いについては、 B<capabilities>(7) を参照。"
4397 #. On Linux it appears that these file descriptors are
4398 #. always open after an execve(), and it looks like
4399 #. Solaris 8 and FreeBSD 6.1 are the same. -- mtk, 30 Apr 2007
4401 #: build/C/man2/execve.2:258
4402 msgid "By default, file descriptors remain open across an B<execve>(). File descriptors that are marked close-on-exec are closed; see the description of B<FD_CLOEXEC> in B<fcntl>(2). (If a file descriptor is closed, this will cause the release of all record locks obtained on the underlying file by this process. See B<fcntl>(2) for details.) POSIX.1-2001 says that if file descriptors 0, 1, and 2 would otherwise be closed after a successful B<execve>(), and the process would gain privilege because the set-user_ID or set-group_ID permission bit was set on the executed file, then the system may open an unspecified file for each of these file descriptors. As a general principle, no portable program, whether privileged or not, can assume that these three file descriptors will remain closed across an B<execve>()."
4403 msgstr "デフォルトでは、ファイルディスクリプターは B<execve>() を行った後でもオープンされたままである。 close-on-exec の印が付いているファイルディスクリプターはクローズされる。 B<fcntl>(2) の B<FD_CLOEXEC> の説明を参照。 (ファイルディスクリプターがクローズされると、このプロセスが ファイルディスクリプターに対応するファイルに対して獲得していた レコードのロックが全て解放されることになる。) POSIX.1-2001 では、 ファイルディスクリプター 0, 1, 2 が B<execve>() 成功後にどこかでクローズされ、かつ 実行されるファイルに set-user_ID か set-group_ID の許可ビットが セットされていてプロセスが特権を獲得した場合、 システムは何らかのファイルをオープンする際に これらの番号のディスクリプターのどれかを使うことがある、 とされている。 原則として、移植性が必要なプログラムでは、 特権の有無に関わらず、 B<execve>() の前後でこれら 3つのファイルディスクリプターがクローズされたままで あることを前提にすることはできない。"
4406 #: build/C/man2/execve.2:258 build/C/man2/execve.2:528
4408 msgid "Interpreter scripts"
4409 msgstr "インタプリタスクリプト"
4412 #: build/C/man2/execve.2:261
4413 msgid "An interpreter script is a text file that has execute permission enabled and whose first line is of the form:"
4414 msgstr "インタプリタスクリプトとは、実行許可が有効になっていて、 最初の行が以下の形になっているテキストファイルのことである。"
4417 #: build/C/man2/execve.2:279
4418 msgid "The I<interpreter> must be a valid pathname for an executable which is not itself a script. If the I<filename> argument of B<execve>() specifies an interpreter script, then I<interpreter> will be invoked with the following arguments:"
4419 msgstr "I<interpreter> は有効な実行ファイルのパス名でなければならず、 それ自身がスクリプトであってはならない。 B<execve>() の I<filename> 引き数がインタプリタスクリプトを指定している場合、 I<interpreter> は以下の引き数で起動される。"
4422 #: build/C/man2/execve.2:283
4424 msgid "I<interpreter> [optional-arg] I<filename> arg...\n"
4425 msgstr "I<interpreter> [optional-arg] I<filename> arg...\n"
4428 #: build/C/man2/execve.2:294
4429 msgid "where I<arg...> is the series of words pointed to by the I<argv> argument of B<execve>(), starting at I<argv>[1]."
4430 msgstr "I<arg...> は、 B<execve>() の I<argv> 引き数が指すワード列である。 I<argv>[1] から始まる。"
4433 #: build/C/man2/execve.2:299
4434 msgid "For portable use, I<optional-arg> should either be absent, or be specified as a single word (i.e., it should not contain white space); see NOTES below."
4435 msgstr "移植性を持たすには、 I<optional-arg> は空か 1ワードだけにすべきである (つまり、ホワイトスペースを含めるべきではない)。 下記の「注意」の節を参照。"
4438 #: build/C/man2/execve.2:299
4440 msgid "Limits on size of arguments and environment"
4441 msgstr "引き数と環境変数の合計サイズの上限"
4444 #: build/C/man2/execve.2:312
4445 msgid "Most UNIX implementations impose some limit on the total size of the command-line argument (I<argv>) and environment (I<envp>) strings that may be passed to a new program. POSIX.1 allows an implementation to advertise this limit using the B<ARG_MAX> constant (either defined in I<E<lt>limits.hE<gt>> or available at run time using the call I<sysconf(_SC_ARG_MAX)>)."
4446 msgstr "ほとんどの UNIX の実装は、新しいプログラムに渡すことができる コマンドライン引き数 (I<argv>) と環境変数 (I<envp>) の文字列群の合計サイズに何らかの上限を設けている。 POSIX.1 は、 B<ARG_MAX> 定数を使ってこの上限を決める実装を認めている (B<ARG_MAX> は I<E<lt>limits.hE<gt>> で定義されるか、実行時に I<sysconf(_SC_ARG_MAX)> の呼び出しで入手できるかのいずれかである)。"
4449 #: build/C/man2/execve.2:319
4450 msgid "On Linux prior to kernel 2.6.23, the memory used to store the environment and argument strings was limited to 32 pages (defined by the kernel constant B<MAX_ARG_PAGES>). On architectures with a 4-kB page size, this yields a maximum size of 128 kB."
4451 msgstr "カーネル 2.6.23 より前の Linux では、環境変数と引き数の文字列群を 格納するのに使用されるメモリは 32 ページに制限されていた (32 ページというのはカーネル定数 B<MAX_ARG_PAGES> で定義される)。したがって、 ページサイズが 4 kB のアーキテクチャでは、 最大サイズは 128 kB ということになる。"
4453 #. For some background on the changes to ARG_MAX in kernels 2.6.23 and
4455 #. http://sourceware.org/bugzilla/show_bug.cgi?id=5786
4456 #. http://bugzilla.kernel.org/show_bug.cgi?id=10095
4457 #. http://thread.gmane.org/gmane.linux.kernel/646709/focus=648101,
4458 #. checked into 2.6.25 as commit a64e715fc74b1a7dcc5944f848acc38b2c4d4ee2.
4459 #. Ollie: That doesn't include the lists of pointers, though,
4460 #. so the actual usage is a bit higher (1 pointer per argument).
4462 #: build/C/man2/execve.2:355
4463 msgid "On kernel 2.6.23 and later, most architectures support a size limit derived from the soft B<RLIMIT_STACK> resource limit (see B<getrlimit>(2)) that is in force at the time of the B<execve>() call. (Architectures with no memory management unit are excepted: they maintain the limit that was in effect before kernel 2.6.23.) This change allows programs to have a much larger argument and/or environment list. For these architectures, the total size is limited to 1/4 of the allowed stack size. (Imposing the 1/4-limit ensures that the new program always has some stack space.) Since Linux 2.6.25, the kernel places a floor of 32 pages on this size limit, so that, even when B<RLIMIT_STACK> is set very low, applications are guaranteed to have at least as much argument and environment space as was provided by Linux 2.6.23 and earlier. (This guarantee was not provided in Linux 2.6.23 and 2.6.24.) Additionally, the limit per string is 32 pages (the kernel constant B<MAX_ARG_STRLEN>), and the maximum number of strings is 0x7FFFFFFF."
4464 msgstr "カーネル 2.6.23 以降では、ほとんどのアーキテクチャにおいて、 B<execve>() が呼び出された時点で適用されているリソースのソフト上限 B<RLIMIT_STACK> に基づいたサイズ上限が使われる (メモリ管理ユニット (MMU) を持たないアーキテクチャは上記の変更の 例外であり、これらのアーキテクチャではカーネル 2.6.23 より前と 同じ上限がそのまま使用される)。 これらのアーキテクチャでは、合計サイズは許可されたスタックサイズの 1/4 に制限されている (1/4 の上限を設けているのは、新しいプログラムが必ずある程度の スタック空間を持てることを保証するためである)。 Linux 2.6.25 以降では、カーネルはこのサイズ上限に 32 ページの下限を 設けている。これにより、 B<RLIMIT_STACK> が非常に小さく設定された場合でも、アプリケーションが少なくとも Linux 2.6.23 以前で提供されていたのと同じ大きさの引き数と環境変数の空間 と同じだけは確保できることが保証されている (この最低限の保証は Linux 2.6.23 と 2.6.24 では提供されていない)。 また、各文字列の上限は 32 ページ (カーネル定数 B<MAX_ARG_STRLEN>) で、文字列数の最大値は 0x7FFFFFFF である。"
4467 #: build/C/man2/execve.2:361
4468 msgid "On success, B<execve>() does not return, on error -1 is returned, and I<errno> is set appropriately."
4469 msgstr "成功すると B<execve>() は返らない。エラーの場合は -1 を返し、 I<errno> を適切に設定する。"
4472 #: build/C/man2/execve.2:362
4478 #: build/C/man2/execve.2:369
4479 msgid "The total number of bytes in the environment (I<envp>) and argument list (I<argv>) is too large."
4480 msgstr "環境変数 (I<envp>) と引き数リスト (I<argv>) の合計バイト数が大き過ぎる。"
4483 #: build/C/man2/execve.2:376
4484 msgid "Search permission is denied on a component of the path prefix of I<filename> or the name of a script interpreter. (See also B<path_resolution>(7).)"
4485 msgstr "I<filename> やスクリプトインタプリタ名の構成要素に検索許可 (search permission) が与えられていない (B<path_resolution>(7) も参照すること)。"
4488 #: build/C/man2/execve.2:379
4489 msgid "The file or a script interpreter is not a regular file."
4490 msgstr "ファイルもしくはスクリプトのインタプリタが通常ファイル (regular file) でない。"
4493 #: build/C/man2/execve.2:382
4494 msgid "Execute permission is denied for the file or a script or ELF interpreter."
4495 msgstr "ファイルやスクリプトや ELF インタプリタに 実行許可 (execute permission) が与えられていない。"
4498 #: build/C/man2/execve.2:386
4499 msgid "The filesystem is mounted I<noexec>."
4500 msgstr "ファイルシステムが I<noexec> でマウントされている。"
4503 #: build/C/man2/execve.2:386
4505 msgid "B<EAGAIN> (since Linux 3.1)"
4506 msgstr "B<EAGAIN> (Linux 3.1 以降)"
4508 #. commit 72fa59970f8698023045ab0713d66f3f4f96945c
4510 #: build/C/man2/execve.2:396
4511 msgid "Having changed its real UID using one of the B<set*uid>() calls, the caller was\\(emand is now still\\(emabove its B<RLIMIT_NPROC> resource limit (see B<setrlimit>(2)). For a more detailed explanation of this error, see NOTES."
4512 msgstr "B<set*uid>() のいずれかの呼び出しでプロセスの実 UID が変更されたとすると、呼び出し元の B<RLIMIT_NPROC> リソース上限 (B<setrlimit>(2) 参照) を超えてしまう、 現在もまだ超えている。 このエラーの詳細な説明については「注意」の節を参照。"
4515 #: build/C/man2/execve.2:404
4516 msgid "I<filename> or one of the pointers in the vectors I<argv> or I<envp> points outside your accessible address space."
4517 msgstr "I<filename> または配列 I<argv> か I<envp> のポインタの一つがアクセス可能なアドレス空間の外を指している。"
4520 #: build/C/man2/execve.2:408
4521 msgid "An ELF executable had more than one PT_INTERP segment (i.e., tried to name more than one interpreter)."
4522 msgstr "ELF 実行形式で複数の PT_INTERP セグメントが存在する。 (すなわち複数のインタプリタを指定した。)"
4525 #: build/C/man2/execve.2:411 build/C/man2/truncate.2:149
4531 #: build/C/man2/execve.2:414
4532 msgid "An ELF interpreter was a directory."
4533 msgstr "ELF インタプリタがディレクトリだった。"
4536 #: build/C/man2/execve.2:414
4542 #: build/C/man2/execve.2:417
4543 msgid "An ELF interpreter was not in a recognized format."
4544 msgstr "ELF インタプリタが理解できるフォーマットでなかった。"
4547 #: build/C/man2/execve.2:422
4548 msgid "Too many symbolic links were encountered in resolving I<filename> or the name of a script or ELF interpreter."
4549 msgstr "I<filename> やスクリプトや ELF のインタプリタを解決する際に遭遇した シンボリックリンクが多過ぎる。"
4552 #: build/C/man2/execve.2:425
4553 msgid "The process has the maximum number of files open."
4554 msgstr "そのプロセスがオープンできるファイル数の上限まで既にオープンしている。"
4557 #: build/C/man2/execve.2:429
4558 msgid "I<filename> is too long."
4559 msgstr "I<filename> が長過ぎる。"
4562 #: build/C/man2/execve.2:429 build/C/man3/getlogin.3:108
4563 #: build/C/man2/swapon.2:144 build/C/man2/uselib.2:67
4569 #: build/C/man2/execve.2:432 build/C/man2/swapon.2:147
4570 #: build/C/man2/uselib.2:70
4571 msgid "The system limit on the total number of open files has been reached."
4572 msgstr "オープンされたファイルの総数がシステム全体の上限に達していた。"
4575 #: build/C/man2/execve.2:438
4576 msgid "The file I<filename> or a script or ELF interpreter does not exist, or a shared library needed for file or interpreter cannot be found."
4577 msgstr "ファイル I<filename> かスクリプトや ELF のインタプリタが存在しない。"
4580 #: build/C/man2/execve.2:438 build/C/man2/uselib.2:70
4586 #: build/C/man2/execve.2:443
4587 msgid "An executable is not in a recognized format, is for the wrong architecture, or has some other format error that means it cannot be executed."
4588 msgstr "実行ファイルが理解できない形式であるか、違うアーキテクチャのものか、 その他のフォーマットエラーにより実行ができなかった。"
4591 #: build/C/man2/execve.2:451
4592 msgid "A component of the path prefix of I<filename> or a script or ELF interpreter is not a directory."
4593 msgstr "I<filename> やスクリプトや ELF のインタプリタの構成要素がディレクトリでない。"
4596 #: build/C/man2/execve.2:457
4597 msgid "The filesystem is mounted I<nosuid>, the user is not the superuser, and the file has the set-user-ID or set-group-ID bit set."
4598 msgstr "ファイルシステムが I<nosuid> でマウントされ、ユーザーがスーパーユーザーでなく、 ファイルに set-user-ID あるいは set-group-ID ビットが設定されている。"
4601 #: build/C/man2/execve.2:461
4602 msgid "The process is being traced, the user is not the superuser and the file has the set-user-ID or set-group-ID bit set."
4603 msgstr "プロセスがトレースされ、ユーザーがスーパーユーザーでなく、 ファイルに set-user-ID あるいは set-group-ID ビットが設定されている。"
4606 #: build/C/man2/execve.2:464
4607 msgid "Executable was open for writing by one or more processes."
4608 msgstr "実行ファイルを書き込み用にオープンしているプロセスがある。"
4610 #. SVr4 documents additional error
4611 #. conditions EAGAIN, EINTR, ELIBACC, ENOLINK, EMULTIHOP; POSIX does not
4612 #. document ETXTBSY, EPERM, EFAULT, ELOOP, EIO, ENFILE, EMFILE, EINVAL,
4613 #. EISDIR or ELIBBAD error conditions.
4615 #: build/C/man2/execve.2:472
4616 msgid "SVr4, 4.3BSD, POSIX.1-2001. POSIX.1-2001 does not document the #! behavior but is otherwise compatible."
4617 msgstr "SVr4, 4.3BSD, POSIX.1-2001. POSIX.1-2001 には #! 動作についての記述はないが、 他は互換性がある。"
4620 #: build/C/man2/execve.2:475
4621 msgid "Set-user-ID and set-group-ID processes can not be B<ptrace>(2)d."
4622 msgstr "set-user-id プロセスと set-group-ID プロセスは B<ptrace>(2) できない。"
4624 #. e.g., EFAULT on Solaris 8 and FreeBSD 6.1; but
4625 #. HP-UX 11 is like Linux -- mtk, Apr 2007
4626 #. Bug filed 30 Apr 2007: http://bugzilla.kernel.org/show_bug.cgi?id=8408
4627 #. Bug rejected (because fix would constitute an ABI change).
4629 #: build/C/man2/execve.2:502
4630 msgid "The result of mounting a filesystem I<nosuid> varies across Linux kernel versions: some will refuse execution of set-user-ID and set-group-ID executables when this would give the user powers she did not have already (and return B<EPERM>), some will just ignore the set-user-ID and set-group-ID bits and B<exec>() successfully. On Linux, I<argv> and I<envp> can be specified as NULL. In both cases, this has the same effect as specifying the argument as a pointer to a list containing a single null pointer. B<Do not take advantage of this misfeature!> It is nonstandard and nonportable: on most other UNIX systems doing this will result in an error (B<EFAULT>)."
4631 msgstr "ファイルシステムを I<nosuid> でマウントした場合に set-user-ID/set-group-ID の実行ファイルを どの様に扱うかは、Linux カーネルのバージョンによって異なる: あるバージョンでは、すでに必要な権限を持っている場合を除いて、 その実行を拒否する (そして B<EPERM> を返す)。別のあるバージョンでは set-user-ID/set-group-ID ビットのみを無視し B<exec>() は成功する。 Linux では、 I<argv> と I<envp> に NULL を指定することができる。 どちらに NULL を指定した場合も、 これらの引き数にヌルポインタ 1 個だけを含むリストへのポインタを指定したのと同じ効果を持つ。 B<「この間違った機能を利用しないこと」>。 これは非標準で、移植性もない。 他のほとんどの UNIX システムでは、これを行うとエラー (B<EFAULT>) になる。"
4634 #: build/C/man2/execve.2:513
4635 msgid "POSIX.1-2001 says that values returned by B<sysconf>(3) should be invariant over the lifetime of a process. However, since Linux 2.6.23, if the B<RLIMIT_STACK> resource limit changes, then the value reported by B<_SC_ARG_MAX> will also change, to reflect the fact that the limit on space for holding command-line arguments and environment variables has changed."
4636 msgstr "POSIX.1-2001 は、 B<sysconf>(3) が返す値はプロセスの生存中は変化しないべきだとしている。 しかしながら、Linux 2.6.23 以降では、リソース上限 B<RLIMIT_STACK> が変化した場合、 コマンドライン引き数と環境変数を保持するための空間に対する上限が 変化したことを反映して、 B<_SC_ARG_MAX> が返す値も変化する。"
4639 #: build/C/man2/execve.2:528
4640 msgid "In most cases where B<execve>() fails, control returns to the original executable image, and the caller of B<execve>() can then handle the error. However, in (rare) cases (typically caused by resource exhaustion), failure may occur past the point of no return: the original executable image has been torn down, but the new image could not be completely built. In such cases, the kernel kills the process with a B<SIGKILL> signal."
4641 msgstr "B<execve>() が失敗するほとんどの場合、 制御は元の実行可能イメージに戻り、 B<execve>() の呼び出し元がエラーを処理することができる。 しかしながら、 (リソース枯渇が原因となった場合など、まれに) 呼び出し元に制御が戻る時点を過ぎてからエラーが発生する場合がある。 元の実行可能イメージはすでに破棄されているが、 新しいイメージが完全には構築されていないという状況である。 このような場合、カーネルはそのプロセスをシグナル B<SIGKILL> で停止 (kill) する。"
4644 #: build/C/man2/execve.2:531
4645 msgid "A maximum line length of 127 characters is allowed for the first line in an interpreter scripts."
4646 msgstr "インタプリタスクリプトの 1行目に許されている文字数は、 最大 127 文字である。"
4649 #. e.g., FreeBSD before 6.0, but not FreeBSD 6.0 onward
4651 #: build/C/man2/execve.2:550
4652 msgid "The semantics of the I<optional-arg> argument of an interpreter script vary across implementations. On Linux, the entire string following the I<interpreter> name is passed as a single argument to the interpreter, and this string can include white space. However, behavior differs on some other systems. Some systems use the first white space to terminate I<optional-arg>. On some systems, an interpreter script can have multiple arguments, and white spaces in I<optional-arg> are used to delimit the arguments."
4653 msgstr "インタプリタスクリプトの I<optional-arg> 引き数の解釈方法は実装により異なる。 Linux では、インタプリタ名 I<interpreter> に続く文字列全体がインタプリタに 1個の引き数として渡される。 しかし、動作が異なるシステムもある。 あるシステムでは、 I<optional-arg> のうち最初のホワイトスペースまでが 引き数として渡される。 また、別のシステムでは インタプリタスクリプトは複数の引き数を持つことができ、 I<optional-arg> 内のホワイトスペースが引き数の区切りとなる。"
4656 #. Some Linux versions have failed to check permissions on ELF
4657 #. interpreters. This is a security hole, because it allows users to
4658 #. open any file, such as a rewinding tape device, for reading. Some
4659 #. Linux versions have also had other security holes in
4661 #. that could be exploited for denial of service by a suitably crafted
4662 #. ELF binary. There are no known problems with 2.0.34 or 2.2.15.
4664 #: build/C/man2/execve.2:561
4665 msgid "Linux ignores the set-user-ID and set-group-ID bits on scripts."
4666 msgstr "Linux はスクリプトの set-user-ID と set-group-ID ビットを無視する。"
4669 #: build/C/man2/execve.2:561
4671 msgid "execve() and EAGAIN"
4672 msgstr "execve() と EAGAIN"
4675 #: build/C/man2/execve.2:567
4676 msgid "A more detailed explanation of the B<EAGAIN> error that can occur (since Linux 3.1) when calling B<execve>() is as follows."
4677 msgstr "B<execve>() を呼び出した際に (Linux 3.1 以降で) 起こり得る B<EAGAIN> エラーの詳細な説明を以下で行う。"
4679 #. commit 909cc4ae86f3380152a18e2a3c44523893ee11c4
4681 #: build/C/man2/execve.2:589
4682 msgid "The B<EAGAIN> error can occur when a I<preceding> call to B<setuid>(2), B<setreuid>(2), or B<setresuid>(2) caused the real user ID of the process to change, and that change caused the process to exceed its B<RLIMIT_NPROC> resource limit (i.e., the number of processes belonging to the new real UID exceeds the resource limit). From Linux 2.6.0 to 3.0, this caused the B<set*uid>() call to fail. (Prior to 2.6, the resource limit was not imposed on processes that changed their user IDs.)"
4683 msgstr "I<直前の> B<setuid>(2), B<setreuid>(2), B<setresuid>(2) の呼び出しで、 そのプロセスの実ユーザー ID が変更され、 その変更によりそのプロセスが B<RLIMIT_NPROC> リソース上限を超過してしまった場合 (すなわち、新しい実ユーザー ID に属するプロセス数が B<RLIMIT_NPROC> リソース上限を超過した場合) に、 B<EAGAIN> エラーが発生する。 Linux 2.6.0 以上 3.0 以下では、これにより B<set*uid>() の呼び出しが失敗していた。 (Linux 2.6 より前では、このリソース上限はユーザー ID を変更したプロセスには適用されていなかった。)"
4686 #: build/C/man2/execve.2:620
4687 msgid "Since Linux 3.1, the scenario just described no longer causes the B<set*uid>() call to fail, because it too often led to security holes where buggy applications didn't check the return status and assumed that\\(emif the caller had root privileges\\(emthe call would always succeed. Instead, the B<set*uid>() calls now successfully change the real UID, but the kernel sets an internal flag, named B<PF_NPROC_EXCEEDED>, to note that the B<RLIMIT_NPROC> resource limit has been exceeded. If the B<PF_NPROC_EXCEEDED> flag is set and the resource limit is still exceeded at the time of a subsequent B<execve>() call, that call fails with the error B<EAGAIN>. This kernel logic ensures that the B<RLIMIT_NPROC> resource limit is still enforced for the common privileged daemon workflow\\(emnamely, B<fork>(2) + B<set*uid>() + B<execve>()."
4688 msgstr "Linux 3.1 以降では、上で説明したシナリオでは B<set*uid>() の呼び出しは失敗しない。 なぜなら、 返されたステータスの確認を行わず「呼び出し元が特権を持っている場合には」呼び出しは必ず成功するとみなしているバグがあるアプリケーションでは、セキュリティホールにつながることが非常によくあるからだ。 その代わり、 B<set*uid>() の呼び出しによる実 UID の変更は成功するが、 カーネルは B<PF_NPROC_EXCEEDED> という名前の内部フラグをセットする。 このフラグは B<RLIMIT_NPROC> リソース上限が超過したことを示す。 B<PF_NPROC_EXCEEDED> フラグがセットされていて、その後で B<execve>() が呼ばれた際にリソース上限がまだ超過していれば、 その B<execve>() の呼び出しは B<EAGAIN> エラーで失敗する。 このカーネルのロジックにより、 特権デーモンでよく行われる処理フロー、 すなわち B<fork>(2) + B<set*uid>() + B<execve>() に対して、前と変わらず B<RLIMIT_NPROC> リソース上限を適用できることが保証される。"
4691 #: build/C/man2/execve.2:636
4692 msgid "If the resource limit was not still exceeded at the time of the B<execve>() call (because other processes belonging to this real UID terminated between the B<set*uid>() call and the B<execve>() call), then the B<execve>() call succeeds and the kernel clears the B<PF_NPROC_EXCEEDED> process flag. The flag is also cleared if a subsequent call to B<fork>(2) by this process succeeds."
4693 msgstr "(B<set*uid>() と B<execve>() の呼び出しの間に、この実 UID に属する他のプロセスが終了して) 次に B<execve>() が呼び出された際にこのリソース上限が超過してなければ、 B<execve>() の呼び出しは成功し、カーネルは B<PF_NPROC_EXCEEDED> プロセスフラグをクリアする。 同じプロセスによって B<fork>(2) の呼び出しが後で行われた場合にも、このフラグはクリアされる。"
4696 #: build/C/man2/execve.2:636
4702 #. Some Linux versions have failed to check permissions on ELF
4703 #. interpreters. This is a security hole, because it allows users to
4704 #. open any file, such as a rewinding tape device, for reading. Some
4705 #. Linux versions have also had other security holes in
4707 #. that could be exploited for denial of service by a suitably crafted
4708 #. ELF binary. There are no known problems with 2.0.34 or 2.2.15.
4710 #: build/C/man2/execve.2:656
4711 msgid "With UNIX\\ V6, the argument list of an B<exec>() call was ended by 0, while the argument list of I<main> was ended by -1. Thus, this argument list was not directly usable in a further B<exec>() call. Since UNIX\\ V7, both are NULL."
4712 msgstr "UNIX\\ V6 では B<exec>() コールの引き数リストは 0 で終端され、 I<main> の引き数リストは -1 で終端されていた。 そのため、 I<main> の引き数リストは、その後の B<exec>() コールには直接使用できなかった。 UNIX\\ V7 以降では、ともに NULL で終端される。"
4715 #: build/C/man2/execve.2:659
4716 msgid "The following program is designed to be execed by the second program below. It just echoes its command-line arguments, one per line."
4717 msgstr "このプログラムは、以下の二つ目のプログラムから実行するためのものである。 コマンドライン引き数を 1行に 1個ずつ表示するだけのプログラムである。"
4720 #: build/C/man2/execve.2:663
4722 msgid "/* myecho.c */\n"
4723 msgstr "/* myecho.c */\n"
4726 #: build/C/man2/execve.2:666
4729 "#include E<lt>stdio.hE<gt>\n"
4730 "#include E<lt>stdlib.hE<gt>\n"
4732 "#include E<lt>stdio.hE<gt>\n"
4733 "#include E<lt>stdlib.hE<gt>\n"
4736 #: build/C/man2/execve.2:671
4740 "main(int argc, char *argv[])\n"
4745 "main(int argc, char *argv[])\n"
4750 #: build/C/man2/execve.2:674
4753 " for (j = 0; j E<lt> argc; j++)\n"
4754 " printf(\"argv[%d]: %s\\en\", j, argv[j]);\n"
4756 " for (j = 0; j E<lt> argc; j++)\n"
4757 " printf(\"argv[%d]: %s\\en\", j, argv[j]);\n"
4760 #: build/C/man2/execve.2:682
4761 msgid "This program can be used to exec the program named in its command-line argument:"
4762 msgstr "以下のプログラムは、コマンドライン引き数で指定した名前のプログラムを 実行するのに使う。"
4765 #: build/C/man2/execve.2:686
4767 msgid "/* execve.c */\n"
4768 msgstr "/* execve.c */\n"
4771 #: build/C/man2/execve.2:690
4774 "#include E<lt>stdio.hE<gt>\n"
4775 "#include E<lt>stdlib.hE<gt>\n"
4776 "#include E<lt>unistd.hE<gt>\n"
4778 "#include E<lt>stdio.hE<gt>\n"
4779 "#include E<lt>stdlib.hE<gt>\n"
4780 "#include E<lt>unistd.hE<gt>\n"
4783 #: build/C/man2/execve.2:696
4787 "main(int argc, char *argv[])\n"
4789 " char *newargv[] = { NULL, \"hello\", \"world\", NULL };\n"
4790 " char *newenviron[] = { NULL };\n"
4793 "main(int argc, char *argv[])\n"
4795 " char *newargv[] = { NULL, \"hello\", \"world\", NULL };\n"
4796 " char *newenviron[] = { NULL };\n"
4799 #: build/C/man2/execve.2:701
4802 " if (argc != 2) {\n"
4803 " fprintf(stderr, \"Usage: %s E<lt>file-to-execE<gt>\\en\", argv[0]);\n"
4804 " exit(EXIT_FAILURE);\n"
4807 " if (argc != 2) {\n"
4808 " fprintf(stderr, \"Usage: %s E<lt>file-to-execE<gt>\\en\", argv[0]);\n"
4809 " exit(EXIT_FAILURE);\n"
4813 #: build/C/man2/execve.2:703
4815 msgid " newargv[0] = argv[1];\n"
4816 msgstr " newargv[0] = argv[1];\n"
4819 #: build/C/man2/execve.2:708
4822 " execve(argv[1], newargv, newenviron);\n"
4823 " perror(\"execve\"); /* execve() only returns on error */\n"
4824 " exit(EXIT_FAILURE);\n"
4827 " execve(argv[1], newargv, newenviron);\n"
4828 " perror(\"execve\"); /* execve() only returns on error */\n"
4829 " exit(EXIT_FAILURE);\n"
4833 #: build/C/man2/execve.2:712
4834 msgid "We can use the second program to exec the first as follows:"
4835 msgstr "二つ目のプログラムを使って一つ目のプログラムを実行するには 以下のようにする。"
4838 #: build/C/man2/execve.2:721
4841 "$B< cc myecho.c -o myecho>\n"
4842 "$B< cc execve.c -o execve>\n"
4843 "$B< ./execve ./myecho>\n"
4844 "argv[0]: ./myecho\n"
4848 "$B< cc myecho.c -o myecho>\n"
4849 "$B< cc execve.c -o execve>\n"
4850 "$B< ./execve ./myecho>\n"
4851 "argv[0]: ./myecho\n"
4856 #: build/C/man2/execve.2:729
4857 msgid "We can also use these programs to demonstrate the use of a script interpreter. To do this we create a script whose \"interpreter\" is our I<myecho> program:"
4858 msgstr "さらに、これらのプログラムを使って、スクリプトインタプリタの例を示す。 このために、「インタプリタ」として先ほど作成したプログラム I<myecho> を使うスクリプトを作成する。"
4861 #: build/C/man2/execve.2:736
4864 "$B< cat E<gt> script>\n"
4865 "B<#!./myecho script-arg>\n"
4867 "$B< chmod +x script>\n"
4869 "$B< cat E<gt> script>\n"
4870 "B<#!./myecho script-arg>\n"
4872 "$B< chmod +x script>\n"
4875 #: build/C/man2/execve.2:740
4876 msgid "We can then use our program to exec the script:"
4877 msgstr "作成しておいたプログラムを使ってスクリプトを実行する。"
4880 #: build/C/man2/execve.2:749
4883 "$B< ./execve ./script>\n"
4884 "argv[0]: ./myecho\n"
4885 "argv[1]: script-arg\n"
4886 "argv[2]: ./script\n"
4890 "$B< ./execve ./script>\n"
4891 "argv[0]: ./myecho\n"
4892 "argv[1]: script-arg\n"
4893 "argv[2]: ./script\n"
4898 #: build/C/man2/execve.2:763
4899 msgid "B<chmod>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<execl>(3), B<fexecve>(3), B<getopt>(3), B<credentials>(7), B<environ>(7), B<path_resolution>(7), B<ld.so>(8)"
4900 msgstr "B<chmod>(2), B<execveat>(2), B<fork>(2), B<ptrace>(2), B<execl>(3), B<fexecve>(3), B<getopt>(3), B<credentials>(7), B<environ>(7), B<path_resolution>(7), B<ld.so>(8)"
4903 #: build/C/man2/exit_group.2:25
4909 #: build/C/man2/exit_group.2:25
4915 #: build/C/man2/exit_group.2:28
4916 msgid "exit_group - exit all threads in a process"
4917 msgstr "exit_group - プロセス中の全てのスレッドを exit させる"
4920 #: build/C/man2/exit_group.2:31
4922 msgid "B<#include E<lt>linux/unistd.hE<gt>>\n"
4923 msgstr "B<#include E<lt>linux/unistd.hE<gt>>\n"
4926 #: build/C/man2/exit_group.2:33
4928 msgid "B<void exit_group(int >I<status>B<);>\n"
4929 msgstr "B<void exit_group(int >I<status>B<);>\n"
4932 #: build/C/man2/exit_group.2:39
4933 msgid "This system call is equivalent to B<exit>(2) except that it terminates not only the calling thread, but all threads in the calling process's thread group."
4934 msgstr "このシステムコールは、基本的に B<exit>(2) と等しいが、 呼び出し元のスレッドだけでなく、呼び出し元のプロセスのスレッドグループに ある全てのスレッドを終了させる点が異なる。"
4937 #: build/C/man2/exit_group.2:41
4938 msgid "This system call does not return."
4939 msgstr "このシステムコールは値を返さない。"
4942 #: build/C/man2/exit_group.2:43
4943 msgid "This call is present since Linux 2.5.35."
4944 msgstr "このコールは、Linux 2.5.35 以降に存在する。"
4947 #: build/C/man2/exit_group.2:45
4948 msgid "This call is Linux-specific."
4949 msgstr "このシステムコールは Linux 固有である。"
4952 #: build/C/man2/exit_group.2:49
4953 msgid "Since glibc 2.3, this is the system call invoked when the B<exit>(2) wrapper function is called."
4954 msgstr "glibc 2.3 以降では、 B<exit>(2) のラッパー関数が呼び出された際に、 このシステムコールが起動される。"
4957 #: build/C/man2/exit_group.2:51
4962 #: build/C/man2/fcntl.2:65
4968 #: build/C/man2/fcntl.2:68
4969 msgid "fcntl - manipulate file descriptor"
4970 msgstr "fcntl - ファイルディスクリプターの操作を行う"
4973 #: build/C/man2/fcntl.2:72
4976 "B<#include E<lt>unistd.hE<gt>>\n"
4977 "B<#include E<lt>fcntl.hE<gt>>\n"
4979 "B<#include E<lt>unistd.hE<gt>>\n"
4980 "B<#include E<lt>fcntl.hE<gt>>\n"
4983 #: build/C/man2/fcntl.2:74
4985 msgid "B<int fcntl(int >I<fd>B<, int >I<cmd>B<, ... /* >I<arg>B< */ );>\n"
4986 msgstr "B<int fcntl(int >I<fd>B<, int >I<cmd>B<, ... /* >I<arg>B< */ );>\n"
4989 #: build/C/man2/fcntl.2:81
4990 msgid "B<fcntl>() performs one of the operations described below on the open file descriptor I<fd>. The operation is determined by I<cmd>."
4991 msgstr "B<fcntl>() は、オープンされたファイルディスクリプター I<fd> に関して下記の操作を行う。操作は I<cmd> によって決まる:"
4994 #: build/C/man2/fcntl.2:95
4995 msgid "B<fcntl>() can take an optional third argument. Whether or not this argument is required is determined by I<cmd>. The required argument type is indicated in parentheses after each I<cmd> name (in most cases, the required type is I<int>, and we identify the argument using the name I<arg>), or I<void> is specified if the argument is not required."
4997 "B<fcntl>() はオプションとして第三引き数をとることができる。 第三引き数が必要\n"
4998 "かどうかは I<cmd> により決まる。必要な引き数の型は I<cmd> 名の後ろの括弧内で\n"
4999 "指定されている (ほとんどの場合、必要な型は I<int> であり、この引き数を表すの\n"
5000 "に I<arg> という名前を使っている)。引き数が必要ない場合には I<void> が指定さ\n"
5004 #: build/C/man2/fcntl.2:106
5005 msgid "Certain of the operations below are supported only since a particular Linux kernel version. The preferred method of checking whether the host kernel supports a particular operation is to invoke B<fcntl>() with the desired I<cmd> value and then test whether the call failed with B<EINVAL>, indicating that the kernel does not recognize this value."
5006 msgstr "下記のいくつかの操作は特定のバージョンの Linux カーネルでのみサポートされている。 ホストカーネルが特定の操作をサポートしているかを確認する推奨の方法は、 B<fcntl>() を所望の I<cmd> 値で呼び出し、 B<EINVAL> で失敗するかを検査することである。 B<EINVAL> が返った場合、カーネルがこの値を認識していないことを示す。"
5009 #: build/C/man2/fcntl.2:106
5011 msgid "Duplicating a file descriptor"
5012 msgstr "ファイルディスクリプターの複製"
5015 #: build/C/man2/fcntl.2:107
5017 msgid "B<F_DUPFD> (I<int>)"
5018 msgstr "B<F_DUPFD> (I<int>)"
5021 #: build/C/man2/fcntl.2:117
5022 msgid "Find the lowest numbered available file descriptor greater than or equal to I<arg> and make it be a copy of I<fd>. This is different from B<dup2>(2), which uses exactly the descriptor specified."
5023 msgstr "利用可能なファイルディスクリプターのうち、 I<arg> 以上で最小のものを探し、 I<fd> のコピーとする。これは別の形の B<dup2>(2) である。 B<dup2>(2) では指定されたディスクリプターが使われる点が違う。"
5026 #: build/C/man2/fcntl.2:119
5027 msgid "On success, the new descriptor is returned."
5028 msgstr "成功すると、新しいディスクリプターが返される。"
5031 #: build/C/man2/fcntl.2:123
5032 msgid "See B<dup>(2) for further details."
5033 msgstr "詳細は B<dup>(2) を参照のこと。"
5036 #: build/C/man2/fcntl.2:123
5038 msgid "B<F_DUPFD_CLOEXEC> (I<int>; since Linux 2.6.24)"
5039 msgstr "B<F_DUPFD_CLOEXEC> (I<int>; Linux 2.6.24 以降)"
5042 #: build/C/man2/fcntl.2:140
5043 msgid "As for B<F_DUPFD>, but additionally set the close-on-exec flag for the duplicate descriptor. Specifying this flag permits a program to avoid an additional B<fcntl>() B<F_SETFD> operation to set the B<FD_CLOEXEC> flag. For an explanation of why this flag is useful, see the description of B<O_CLOEXEC> in B<open>(2)."
5044 msgstr "B<F_DUPFD> と同様だが、それに加えて複製されたディスクリプターに対して close-on-exec フラグをセットする。 このフラグを指定することで、プログラムは B<FD_CLOEXEC> フラグをセットするために B<fcntl>() の B<F_SETFD> 操作を追加で行う必要がなくなる。 このフラグがなぜ有用かについては、 B<open>(2) の B<O_CLOEXEC> の説明を参照のこと。"
5047 #: build/C/man2/fcntl.2:140
5049 msgid "File descriptor flags"
5050 msgstr "ファイルディスクリプターフラグ"
5053 #: build/C/man2/fcntl.2:151
5054 msgid "The following commands manipulate the flags associated with a file descriptor. Currently, only one such flag is defined: B<FD_CLOEXEC>, the close-on-exec flag. If the B<FD_CLOEXEC> bit is 0, the file descriptor will remain open across an B<execve>(2), otherwise it will be closed."
5055 msgstr "以下のコマンドを使って、ファイルディスクリプターに関連するフラグ を操作することができる。 現在のところ、定義されているフラグは一つだけである: B<FD_CLOEXEC> (close-on-exec フラグ)。 B<FD_CLOEXEC> ビットが 0 なら、ファイルディスクリプターは B<execve>(2) を行ってもオープンされたままだが、そうでない場合はクローズされる。"
5058 #: build/C/man2/fcntl.2:151
5060 msgid "B<F_GETFD> (I<void>)"
5061 msgstr "B<F_GETFD> (I<void>)"
5064 #: build/C/man2/fcntl.2:156
5065 msgid "Read the file descriptor flags; I<arg> is ignored."
5066 msgstr "ファイルディスクリプターフラグを読み出す。 I<arg> は無視される。"
5069 #: build/C/man2/fcntl.2:156
5071 msgid "B<F_SETFD> (I<int>)"
5072 msgstr "B<F_SETFD> (I<int>)"
5075 #: build/C/man2/fcntl.2:160
5076 msgid "Set the file descriptor flags to the value specified by I<arg>."
5077 msgstr "ファイルディスクリプターフラグに I<arg> で指定した値を設定する。"
5080 #: build/C/man2/fcntl.2:175
5081 msgid "In multithreaded programs, using B<fcntl>() B<F_SETFD> to set the close-on-exec flag at the same time as another thread performs a B<fork>(2) plus B<execve>(2) is vulnerable to a race condition that may unintentionally leak the file descriptor to the program executed in the child process. See the discussion of the B<O_CLOEXEC> flag in B<open>(2) for details and a remedy to the problem."
5082 msgstr "マルチスレッドプログラムでは、 B<fcntl>() の B<F_SETFD> を使って close-on-exec フラグを設定するのと同時に、 別のスレッドで B<execve>(2) と B<fork>(2) を実行することは、競合条件次第では、 そのファイルディスクリプターが子プロセスで実行されるプログラムに意図せず見えてしまうという危険性がある。 詳細とこの問題への対処法については B<open>(2) の B<O_CLOEXEC> フラグの議論を参照のこと。"
5085 #: build/C/man2/fcntl.2:175
5087 msgid "File status flags"
5093 #: build/C/man2/fcntl.2:190
5094 msgid "Each open file description has certain associated status flags, initialized by B<open>(2) and possibly modified by B<fcntl>(). Duplicated file descriptors (made with B<dup>(2), B<fcntl>(F_DUPFD), B<fork>(2), etc.) refer to the same open file description, and thus share the same file status flags."
5095 msgstr "オープンファイル記述 (open file description) には、 ファイル記述毎に設定される状態フラグがいくつかある。これらのフラグは B<open>(2) によって初期化され、 B<fcntl>(2) により変更することもできる。これらは、 (B<dup>(2), B<fcntl>(F_DUPFD), B<fork>(2) などで) 複製されたファイルディスクリプター同士は 同じオープンファイル記述を参照する。 そのため、 同じファイル状態フラグが共有される。"
5098 #: build/C/man2/fcntl.2:193
5099 msgid "The file status flags and their semantics are described in B<open>(2)."
5100 msgstr "ファイル状態フラグとその意味は B<open>(2) で説明されている。"
5103 #: build/C/man2/fcntl.2:193
5105 msgid "B<F_GETFL> (I<void>)"
5106 msgstr "B<F_GETFL> (I<void>)"
5109 #: build/C/man2/fcntl.2:198
5110 msgid "Get the file access mode and the file status flags; I<arg> is ignored."
5112 "ファイルのアクセスモードとファイル状態フラグを取得する。\n"
5116 #: build/C/man2/fcntl.2:198
5118 msgid "B<F_SETFL> (I<int>)"
5119 msgstr "B<F_SETFL> (I<int>)"
5122 #: build/C/man2/fcntl.2:223
5123 msgid "Set the file status flags to the value specified by I<arg>. File access mode (B<O_RDONLY>, B<O_WRONLY>, B<O_RDWR>) and file creation flags (i.e., B<O_CREAT>, B<O_EXCL>, B<O_NOCTTY>, B<O_TRUNC>) in I<arg> are ignored. On Linux this command can change only the B<O_APPEND>, B<O_ASYNC>, B<O_DIRECT>, B<O_NOATIME>, and B<O_NONBLOCK> flags. It is not possible to change the B<O_DSYNC> and B<O_SYNC> flags; see BUGS, below."
5124 msgstr "ファイル状態フラグに I<arg> で指定された値を設定する。 I<arg> のうち、ファイルのアクセスモード (B<O_RDONLY>, B<O_WRONLY>, B<O_RDWR>) とファイル作成フラグ (すなわち B<O_CREAT>, B<O_EXCL>, B<O_NOCTTY>, B<O_TRUNC>) に関するビットは無視される。 Linux では、このコマンドで変更できるのは B<O_APPEND>, B<O_ASYNC>, B<O_DIRECT>, B<O_NOATIME>, B<O_NONBLOCK> フラグだけである。フラグ B<O_DSYNC>, B<O_SYNC> を変更することはできない。下記の「バグ」を参照。"
5127 #: build/C/man2/fcntl.2:223
5129 msgid "Advisory record locking"
5130 msgstr "アドバイザリーレコードロック"
5133 #: build/C/man2/fcntl.2:228
5134 msgid "Linux implements traditional (\"process-associated\") UNIX record locks, as standardized by POSIX. For a Linux-specific alternative with better semantics, see the discussion of open file description locks below."
5135 msgstr "Linux は昔からある (「プロセスに関連付けられる」) UNIX のレコードロックを実装している。 このレコードロックは POSIX で標準化されている。 Linux 固有のより良い動作を行うロックについては、下記のオープンファイル記述ロックの議論を参照のこと。"
5138 #: build/C/man2/fcntl.2:239
5139 msgid "B<F_SETLK>, B<F_SETLKW>, and B<F_GETLK> are used to acquire, release, and test for the existence of record locks (also known as byte-range, file-segment, or file-region locks). The third argument, I<lock>, is a pointer to a structure that has at least the following fields (in unspecified order)."
5140 msgstr "B<F_SETLK>, B<F_SETLKW>, B<F_GETLK> は、レコードロックの獲得/解放/テストのために使用する (レコードロックは、バイト範囲ロック、ファイルセグメントロック、ファイル領域ロックとも呼ばれる)。 三番目の引き数 I<lock> は、以下に示すフィールドを含む構造体へのポインタである (フィールドの順序は関係なく、構造体に他のフィールドがあってもよい)。"
5143 #: build/C/man2/fcntl.2:254
5148 " short l_type; /* Type of lock: F_RDLCK,\n"
5149 " F_WRLCK, F_UNLCK */\n"
5150 " short l_whence; /* How to interpret l_start:\n"
5151 " SEEK_SET, SEEK_CUR, SEEK_END */\n"
5152 " off_t l_start; /* Starting offset for lock */\n"
5153 " off_t l_len; /* Number of bytes to lock */\n"
5154 " pid_t l_pid; /* PID of process blocking our lock\n"
5155 " (set by F_GETLK and F_OFD_GETLK) */\n"
5161 " short l_type; /* Type of lock: F_RDLCK,\n"
5162 " F_WRLCK, F_UNLCK */\n"
5163 " short l_whence; /* How to interpret l_start:\n"
5164 " SEEK_SET, SEEK_CUR, SEEK_END */\n"
5165 " off_t l_start; /* Starting offset for lock */\n"
5166 " off_t l_len; /* Number of bytes to lock */\n"
5167 " pid_t l_pid; /* PID of process blocking our lock\n"
5168 " (set by F_GETLK and F_OFD_GETLK) */\n"
5173 #: build/C/man2/fcntl.2:262
5174 msgid "The I<l_whence>, I<l_start>, and I<l_len> fields of this structure specify the range of bytes we wish to lock. Bytes past the end of the file may be locked, but not bytes before the start of the file."
5175 msgstr "この構造体の I<l_whence>, I<l_start>, I<l_len> フィールドで、ロックを行いたいバイト範囲を指定する。 ファイルの末尾より後ろのバイトをロックすることはできるが、 ファイルの先頭より前のバイトをロックすることはできない。"
5178 #: build/C/man2/fcntl.2:282
5179 msgid "I<l_start> is the starting offset for the lock, and is interpreted relative to either: the start of the file (if I<l_whence> is B<SEEK_SET>); the current file offset (if I<l_whence> is B<SEEK_CUR>); or the end of the file (if I<l_whence> is B<SEEK_END>). In the final two cases, I<l_start> can be a negative number provided the offset does not lie before the start of the file."
5180 msgstr "I<l_start> はロックを行う領域の開始オフセットである。 その意味は I<l_whence> により異なる: I<l_whence> が B<SEEK_SET> の場合はファイルの先頭からのオフセット、 I<l_whence> が B<SEEK_CUR> の場合は現在のファイルオフセットからのオフセット、 I<l_whence> が B<SEEK_END> の場合はファイルの末尾からのオフセットと解釈される。 後ろの2つの場合には、 ファイルの先頭より前にならない範囲で、 I<l_start> に負の値を指定することができる。"
5183 #: build/C/man2/fcntl.2:297
5184 msgid "I<l_len> specifies the number of bytes to be locked. If I<l_len> is positive, then the range to be locked covers bytes I<l_start> up to and including I<l_start>+I<l_len>-1. Specifying 0 for I<l_len> has the special meaning: lock all bytes starting at the location specified by I<l_whence> and I<l_start> through to the end of file, no matter how large the file grows."
5185 msgstr "I<l_len> はロックしたいバイト数を示す。 I<l_len> が正の場合、ロックされるバイト範囲は I<l_start> 以上 I<l_start>+I<l_len>-1 以下となる。 I<l_len> に 0 を指定した場合は特別な意味を持つ: I<l_whence> and I<l_start> で指定される位置からファイルの末尾までの全てのバイトをロックする (ファイルがどんなに大きくなったとしてもファイルの末尾までロックする)。"
5188 #: build/C/man2/fcntl.2:310
5189 msgid "POSIX.1-2001 allows (but does not require) an implementation to support a negative I<l_len> value; if I<l_len> is negative, the interval described by I<lock> covers bytes I<l_start>+I<l_len> up to and including I<l_start>-1. This is supported by Linux since kernel versions 2.4.21 and 2.5.49."
5190 msgstr "POSIX.1-2001 では、負の値の I<l_len> をサポートする実装を認めている (必須ではない)。 I<l_len> が負の場合、ロックされるバイト範囲は I<l_start>+I<l_len> 以上 I<l_start>-1 以下となる。 この動作はカーネル 2.4.21 以降および 2.5.49 以降の Linux で サポートされている。"
5193 #: build/C/man2/fcntl.2:329
5194 msgid "The I<l_type> field can be used to place a read (B<F_RDLCK>) or a write (B<F_WRLCK>) lock on a file. Any number of processes may hold a read lock (shared lock) on a file region, but only one process may hold a write lock (exclusive lock). An exclusive lock excludes all other locks, both shared and exclusive. A single process can hold only one type of lock on a file region; if a new lock is applied to an already-locked region, then the existing lock is converted to the new lock type. (Such conversions may involve splitting, shrinking, or coalescing with an existing lock if the byte range specified by the new lock does not precisely coincide with the range of the existing lock.)"
5195 msgstr "I<l_type> フィールドは、ファイルに対して読み出しロック (B<F_RDLCK>) と書き込みロック (B<F_WRLCK>) のどちらを 設定するかを指定する。 ファイルのある領域に対して、読み出しロック (共有ロック) を保持できる プロセス数に制限はないが、書き込みロック (排他ロック) を保持できる のは一つのプロセスだけである。排他ロックを設定すると、(共有ロックか 排他ロックにかかわらず) 他のロックは何も設定できない。 一つのプロセスは、ファイルのある領域に対して一種類のロックしか保持できない。 新規のロックがロックが設定されている領域に対して適用されると、既存のロック は新規のロックの種別に変換される (新規のロックで指定されたバイト範囲が既存ロックの範囲と一致する場合以外では、 変換の過程で既存のロックの分割、縮小、結合が行われることがある)。"
5198 #: build/C/man2/fcntl.2:329
5200 msgid "B<F_SETLK> (I<struct flock *>)"
5201 msgstr "B<F_SETLK> (I<struct flock *>)"
5204 #: build/C/man2/fcntl.2:354
5205 msgid "Acquire a lock (when I<l_type> is B<F_RDLCK> or B<F_WRLCK>) or release a lock (when I<l_type> is B<F_UNLCK>) on the bytes specified by the I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>. If a conflicting lock is held by another process, this call returns -1 and sets I<errno> to B<EACCES> or B<EAGAIN>. (The error returned in this case differs across implementations, so POSIX requires a portable application to check for both errors.)"
5206 msgstr "(I<l_type> が B<F_RDLCK> か B<F_WRLCK> の場合は) ロックの獲得を、 (B<F_UNLCK> の場合は) ロックの解放を、 I<flock> 構造体のフィールド I<l_whence>, I<l_start>, I<l_len> で指定された範囲のバイトに対して行う。 指定されたロックが他のプロセスが設定しているロックと衝突する場合は、 -1 を返し、 I<errno> に B<EACCES> か B<EAGAIN> を設定する。 (この場合に返されるエラーは実装により異なる。 そのため、 POSIX では移植性が必要なアプリケーションでは、 これらの両方のエラーをチェックすることが必要としている。)"
5209 #: build/C/man2/fcntl.2:354
5211 msgid "B<F_SETLKW> (I<struct flock *>)"
5212 msgstr "B<F_SETLKW> (I<struct flock *>)"
5215 #: build/C/man2/fcntl.2:368
5216 msgid "As for B<F_SETLK>, but if a conflicting lock is held on the file, then wait for that lock to be released. If a signal is caught while waiting, then the call is interrupted and (after the signal handler has returned) returns immediately (with return value -1 and I<errno> set to B<EINTR>; see B<signal>(7))."
5217 msgstr "B<F_SETLK> と同様だが、こちらではそのファイルに対して衝突するロックが 適用されていた場合に、そのロックが解放されるのを待つ点が異なる。 待っている間にシグナルを受けた場合は、システムコールは中断され、 (シグナルハンドラが戻った直後に) 返り値 -1 を返す (また I<errno> に B<EINTR> が設定される; B<signal>(7) 参照)。"
5220 #: build/C/man2/fcntl.2:368
5222 msgid "B<F_GETLK> (I<struct flock *>)"
5223 msgstr "B<F_GETLK> (I<struct flock *>)"
5226 #: build/C/man2/fcntl.2:382
5227 msgid "On input to this call, I<lock> describes a lock we would like to place on the file. If the lock could be placed, B<fcntl>() does not actually place it, but returns B<F_UNLCK> in the I<l_type> field of I<lock> and leaves the other fields of the structure unchanged."
5228 msgstr "このコールの呼び出し時には、 I<lock> にはそのファイルに適用しようとするロックに関する情報が入っている。 ロックを適用できる場合には、 B<fcntl>() は実際にはロックを行わず、 構造体 I<lock> の I<l_type> フィールドに B<F_UNLCK> を返し、 他のフィールドは変更しない。 "
5231 #: build/C/man2/fcntl.2:399
5232 msgid "If one or more incompatible locks would prevent this lock being placed, then B<fcntl>() returns details about one of those locks in the I<l_type>, I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>. If the conflicting lock is a traditional (process-associated) record lock, then the I<l_pid> field is set to the PID of the process holding that lock. If the conflicting lock is an open file description lock, then I<l_pid> is set to -1. Note that the returned information may already be out of date by the time the caller inspects it."
5233 msgstr "違う種別のロックが (一つもしくは複数) 適用されていてロックを適用できないような場合には、 B<fcntl>() は、 原因となったロックの一つについての詳細を、 I<lock> のフィールド I<l_type>, I<l_whence>, I<l_start>, I<l_len> で返す。 衝突するロックが昔からある (プロセスに関連付けられる) レコードロックの場合、 I<l_pid> フィールドにロックを保持しているプロセスの PID が設定される。 衝突するロックがオープンファイル記述ロックの場合、 I<l_pid> に -1 が設定される。 呼び出し元がその内容を参照した時点では、 返された情報はすでに古いものとなっている可能性がある点に注意すること。"
5236 #: build/C/man2/fcntl.2:407
5237 msgid "In order to place a read lock, I<fd> must be open for reading. In order to place a write lock, I<fd> must be open for writing. To place both types of lock, open a file read-write."
5238 msgstr "読み出しロックを適用するには、 I<fd> は読み出し用にオープンされていなければならない。 書き込みロックを適用するには、 I<fd> は書き込み用にオープンされていなければならない。 読み書き両方のロックを適用するには、読み書き両用で ファイルをオープンしなければならない。"
5241 #: build/C/man2/fcntl.2:430
5242 msgid "When placing locks with B<F_SETLKW>, the kernel detects I<deadlocks>, whereby two or more processes have their lock requests mutually blocked by locks held by the other processes. For example, suppose process A holds a write lock on byte 100 of a file, and process B holds a write lock on byte 200. If each process then attempts to lock the byte already locked by the other process using B<F_SETLKW>, then, without deadlock detection, both processes would remain blocked indefinitely. When the kernel detects such deadlocks, it causes one of the blocking lock requests to immediately fail with the error B<EDEADLK>; an application that encounters such an error should release some of its locks to allow other applications to proceed before attempting regain the locks that it requires. Circular deadlocks involving more than two processes are also detected. Note, however, that there are limitations to the kernel's deadlock-detection algorithm; see BUGS."
5243 msgstr "B<F_SETLKW> でロックを適用する際、 カーネルはI<デッドロック>の検出を行う。 2 つ以上のプロセスが、 他のプロセスが保持するロックにより互いにブロックされるようなロック要求を行っているかを検査する。 例えば、 プロセス A があるファイルのバイト 100 に対して書き込みロックを保持していて、 プロセス B がバイト 200 に対して書き込みロックを保持しているとする。 各プロセスが B<F_SETLKW> を使って他のプロセスによるすでにロックされているバイトをロックしようとすると、 デッドロック検出がない場合、 両方のプロセスが無限に停止することになる。 カーネルはこのようなデッドロックを検出すると、 停止していたロック要求の一つをエラー B<EDEADLK> ですぐに失敗させる。 このエラーを受け取ったアプリケーションは、 必要なロックを再度獲得しようとする前に、 他のアプリケーションが実行できるように自分が保持するロックのいくつかを解放する必要がある。 3 つ以上のプロセスが関連する循環するデッドロックも検出される。 ただし、 カーネルのデッドロック検出アルゴリズムには制限がある点に注意すること。 「バグ」を参照。"
5246 #: build/C/man2/fcntl.2:434
5247 msgid "As well as being removed by an explicit B<F_UNLCK>, record locks are automatically released when the process terminates."
5248 msgstr "ろコードロックは B<F_UNLCK> で明示的に削除されるだけでなく、 そのプロセスが終了した際には自動的に解放される。"
5251 #: build/C/man2/fcntl.2:439
5252 msgid "Record locks are not inherited by a child created via B<fork>(2), but are preserved across an B<execve>(2)."
5253 msgstr "レコードのロックは B<fork>(2) で作成された子プロセスには継承されないが、 B<execve>(2) の前後では保存される。"
5256 #: build/C/man2/fcntl.2:448
5257 msgid "Because of the buffering performed by the B<stdio>(3) library, the use of record locking with routines in that package should be avoided; use B<read>(2) and B<write>(2) instead."
5258 msgstr "B<stdio>(3) ではバッファーリングが行われるので、 stdio 関連の関数ではレコードのロックの使用は回避される; 代わりに B<read>(2) や B<write>(2) を使用すること。"
5261 #: build/C/man2/fcntl.2:452
5262 msgid "The record locks described above are associated with the process (unlike the open file description locks described below). This has some unfortunate consequences:"
5263 msgstr "上記で説明したレコードロックはプロセスと関連付けられる (以下で説明するオープンファイル記述ロックと異なる点である)。 そのため、 残念ながら以下のようなことが起こる。"
5265 #. (Additional file descriptors referring to the same file
5266 #. may have been obtained by calls to
5267 #. .BR open "(2), " dup "(2), " dup2 "(2), or " fcntl ().)
5269 #: build/C/man2/fcntl.2:468
5270 msgid "If a process closes I<any> file descriptor referring to a file, then all of the process's locks on that file are released, regardless of the file descriptor(s) on which the locks were obtained. This is bad: it means that a process can lose its locks on a file such as I</etc/passwd> or I</etc/mtab> when for some reason a library function decides to open, read, and close the same file."
5271 msgstr "プロセスがロックが適用されているファイルを参照しているファイルディスクリプターの「いずれか」をクローズした場合、 そのファイルに対するそのプロセスのすべてのロックが解放される。 この動作はまずい。 あるプロセスが I</etc/passwd> や I</etc/mtab> といったファイルにロックを適用しているときに、 あるライブラリ関数が何かの理由で同じファイルを open, read, close すると、そのファイルへのロックが失われることになる。"
5274 #: build/C/man2/fcntl.2:473
5275 msgid "The threads in a process share locks. In other words, a multithreaded program can't use record locking to ensure that threads don't simultaneously access the same region of a file."
5276 msgstr "1 つのプロセス内のスレッドはロックを共有する。 言い換えると、 マルチスレッドのプログラムで、 レコードロックを使って、 複数のスレッドが同時に 1 つのファイルの同じ領域にアクセスしないようにすることはできないということだ。"
5279 #: build/C/man2/fcntl.2:475
5280 msgid "Open file description locks solve both of these problems."
5281 msgstr "オープンファイル記述ロックを使うとこれらの問題が解決できる。"
5284 #: build/C/man2/fcntl.2:475
5286 msgid "Open file description locks (non-POSIX)"
5287 msgstr "オープンファイル記述ロック (非 POSIX)"
5290 #: build/C/man2/fcntl.2:482
5291 msgid "Open file description locks are advisory byte-range locks whose operation is in most respects identical to the traditional record locks described above. This lock type is Linux-specific, and available since Linux 3.15. For an explanation of open file descriptions, see B<open>(2)."
5292 msgstr "オープンファイル記述ロックはバイト範囲に対するアドバイザリーロックで、 ほとんどの点で上述の昔からあるレコードロックと等価である。 このロック種別は Linux 固有であり、 Linux 3.15 以降で利用できる。 オープンファイル記述の説明は B<open>(2) を参照。"
5295 #: build/C/man2/fcntl.2:500
5296 msgid "The principal difference between the two lock types is that whereas traditional record locks are associated with a process, open file description locks are associated with the open file description on which they are acquired, much like locks acquired with B<flock>(2). Consequently (and unlike traditional advisory record locks), open file description locks are inherited across B<fork>(2) (and B<clone>(2) with B<CLONE_FILES>), and are only automatically released on the last close of the open file description, instead of being released on any close of the file."
5297 msgstr "2 つのロック種別の主な違いは、 昔からあるレコードロックはプロセスに関連付けられるのに対して、 オープンファイル記述ロックはロックが獲得されるオープンファイル記述に関連付けられる点である。 この動作は B<flock>(2) で獲得されるロックによく似ている。 結果として (昔からあるアドバイザリーレコードロックと違い)、 オープンファイル記述ロックは B<fork>(2) (や B<CLONE_FILES> 付きの B<clone>(2)) の前後で継承され、 ファイルのクローズ時に解放されるのではなく、 オープンファイル記述の最後のクローズ時にのみ自動的に解放される。"
5300 #: build/C/man2/fcntl.2:503
5301 msgid "Open file description locks always conflict with traditional record locks, even when they are acquired by the same process on the same file descriptor."
5302 msgstr "オープンファイル記述ロックは常に昔からあるレコードロックと競合する。 たとえ、 ロックが同じプロセスによって同じファイルディスクリプターに対して行われたとしてもである。"
5305 #: build/C/man2/fcntl.2:516
5306 msgid "Open file description locks placed via the same open file description (i.e., via the same file descriptor, or via a duplicate of the file descriptor created by B<fork>(2), B<dup>(2), B<fcntl>(2) B<F_DUPFD>, and so on) are always compatible: if a new lock is placed on an already locked region, then the existing lock is converted to the new lock type. (Such conversions may result in splitting, shrinking, or coalescing with an existing lock as discussed above.)"
5307 msgstr "同じオープンファイル記述経由 (同じファイルディスクリプター経由や B<fork>(2), B<dup>(2), B<fcntl>(2) B<F_DUPFD> などで作成されたファイルディスクリプターの複製経由) で適用されたオープンファイル記述ロックは常に互換性がある。 つまり、 すでにロックされている領域に対して新しいロックが適用された場合、 既存のロックは新しいロック種別に変換される。 (上記で説明した通り、 このような変換の結果、 既存のロックの分割、 縮小、 結合が行われることがある。)"
5310 #: build/C/man2/fcntl.2:524
5311 msgid "On the other hand, open file description locks may conflict with each other when they are acquired via different open file descriptions. Thus, the threads in a multithreaded program can use open file description locks to synchronize access to a file region by having each thread perform its own B<open>(2) on the file and applying locks via the resulting file descriptor."
5312 msgstr "一方、 異なるオープンファイル記述経由で獲得されると、 オープンファイル記述ロックは互いに競合する。 したがって、 マルチスレッドプログラムのスレッドは、 各スレッドがそれぞれ自分で B<open>(2) を実行し、 得られたファイルディスクリプター経由でロックを適用することで、 オープンファイル記述ロックを使って一つのファイル領域えのアクセスを同期させることができる。"
5315 #: build/C/man2/fcntl.2:535
5316 msgid "As with traditional advisory locks, the third argument to B<fcntl>(), I<lock>, is a pointer to an I<flock> structure. By contrast with traditional record locks, the I<l_pid> field of that structure must be set to zero when using the commands described below."
5317 msgstr "昔からあるレコードロックの場合と同様、 B<fcntl>() の第 3 引き数 I<lock> は I<flock> 構造体へのポインターである。 昔からあるレコードロックと違い、 下記で説明するコマンドを使う際には、 この構造体のフィールド I<l_pid> に 0 を設定しなければならない。"
5320 #: build/C/man2/fcntl.2:538
5321 msgid "The commands for working with open file description locks are analogous to those used with traditional locks:"
5322 msgstr "オープンファイル記述ロックで使用できるコマンドは、 昔からあるロックのコマンドと同じである。"
5325 #: build/C/man2/fcntl.2:538
5327 msgid "B<F_OFD_SETLK> (I<struct flock *>)"
5328 msgstr "B<F_OFD_SETLK> (I<struct flock *>)"
5331 #: build/C/man2/fcntl.2:559
5332 msgid "Acquire an open file description lock (when I<l_type> is B<F_RDLCK> or B<F_WRLCK>) or release an open file description lock (when I<l_type> is B<F_UNLCK>) on the bytes specified by the I<l_whence>, I<l_start>, and I<l_len> fields of I<lock>. If a conflicting lock is held by another process, this call returns -1 and sets I<errno> to B<EAGAIN>."
5333 msgstr "(I<l_type> が B<F_RDLCK> か B<F_WRLCK> の場合は) オープンファイル記述のロックの獲得を、 (B<F_UNLCK> の場合は) オープンファイル記述のロックの解放を、 I<flock> 構造体のフィールド I<l_whence>, I<l_start>, I<l_len> で指定された範囲のバイトに対して行う。 指定されたロックが他のプロセスが設定しているロックと衝突する場合は、 -1 を返し、 I<errno> に B<EAGAIN> を設定する。"
5336 #: build/C/man2/fcntl.2:559
5338 msgid "B<F_OFD_SETLKW> (I<struct flock *>)"
5339 msgstr "B<F_OFD_SETLKW> (I<struct flock *>)"
5342 #: build/C/man2/fcntl.2:573
5343 msgid "As for B<F_OFD_SETLK>, but if a conflicting lock is held on the file, then wait for that lock to be released. If a signal is caught while waiting, then the call is interrupted and (after the signal handler has returned) returns immediately (with return value -1 and I<errno> set to B<EINTR>; see B<signal>(7))."
5344 msgstr "B<F_OFD_SETLK> と同様だが、こちらではそのファイルに対して衝突するロックが 適用されていた場合に、そのロックが解放されるのを待つ点が異なる。 待っている間にシグナルを受けた場合は、システムコールは中断され、 (シグナルハンドラが戻った直後に) 返り値 -1 を返す (また I<errno> に B<EINTR> が設定される; B<signal>(7) 参照)。"
5347 #: build/C/man2/fcntl.2:573
5349 msgid "B<F_OFD_GETLK> (I<struct flock *>)"
5350 msgstr "B<F_OFD_GETLK> (I<struct flock *>)"
5353 #: build/C/man2/fcntl.2:592
5354 msgid "On input to this call, I<lock> describes an open file description lock we would like to place on the file. If the lock could be placed, B<fcntl>() does not actually place it, but returns B<F_UNLCK> in the I<l_type> field of I<lock> and leaves the other fields of the structure unchanged. If one or more incompatible locks would prevent this lock being placed, then details about one of these locks are returned via I<lock>, as described above for B<F_GETLK>."
5355 msgstr "このコールの呼び出し時には、 I<lock> にはそのファイルに適用しようとするロックに関する情報が入っている。 ロックを適用できる場合には、 B<fcntl>() は実際にはロックを行わず、 構造体 I<lock> の I<l_type> フィールドで B<F_UNLCK> を返し、 他のフィールドは変更しない。 違う種別のロックが (一つもしくは複数) 適用されていてロックを適用できないような場合には、 原因となったロックの一つについての詳細が I<lock> で返される。 詳細は上記の B<F_GETLK> を参照。"
5357 #. commit 57b65325fe34ec4c917bc4e555144b4a94d9e1f7
5359 #: build/C/man2/fcntl.2:599
5360 msgid "In the current implementation, no deadlock detection is performed for open file description locks. (This contrasts with process-associated record locks, for which the kernel does perform deadlock detection.)"
5361 msgstr "現在の実装では、 オープンファイル記述ロクではデッドロックの検出は行われない。 (これがプロセスと関連付けられるレコードロックとは異なる点である。 プロセスと関連付けられるレコードロックではカーネルはデッドロックの検出を行う。)"
5364 #: build/C/man2/fcntl.2:599 build/C/man2/fcntl.2:1894
5366 msgid "Mandatory locking"
5367 msgstr "強制ロック (mandatory locking)"
5370 #: build/C/man2/fcntl.2:603
5371 msgid "I<Warning>: the Linux implementation of mandatory locking is unreliable. See BUGS below."
5372 msgstr "I<警告>: Linux の強制ロックの実装は信頼性に欠けるものである。 下記の「バグ」の節を参照のこと。"
5375 #: build/C/man2/fcntl.2:608
5376 msgid "By default, both traditional (process-associated) and open file description record locks are advisory. Advisory locks are not enforced and are useful only between cooperating processes."
5377 msgstr "デフォルトでは、 昔からある (プロセスに関連付けられる) レコードロックも、 オープンファイル記述のろコードロックも、 アドバイザリーロックである。 アドバイザリーロックに強制力はなく、協調して動作するプロセス間でのみ有効である。"
5380 #: build/C/man2/fcntl.2:628
5381 msgid "Both lock types can also be mandatory. Mandatory locks are enforced for all processes. If a process tries to perform an incompatible access (e.g., B<read>(2) or B<write>(2)) on a file region that has an incompatible mandatory lock, then the result depends upon whether the B<O_NONBLOCK> flag is enabled for its open file description. If the B<O_NONBLOCK> flag is not enabled, then the system call is blocked until the lock is removed or converted to a mode that is compatible with the access. If the B<O_NONBLOCK> flag is enabled, then the system call fails with the error B<EAGAIN>."
5382 msgstr "両方のタイプのロックも強制ロックにすることもできる。 強制ロックは全てのプロセスに対して効果がある。 あるプロセスが互換性のない強制ロックが適用されたファイル領域に対して (B<read>(2) や B<write>(2) により) 互換性のないアクセスを実行しようとした場合、 アクセスの結果は そのファイルのオープンファイル記述で B<O_NONBLOCK> フラグが有効になっているかにより決まる。 B<O_NONBLOCK> フラグが有効になっていないときは、ロックが削除されるか、 ロックがアクセスと互換性のあるモードに変換されるまで、 システムコールは停止 (block) される。 B<O_NONBLOCK> フラグが有効になっているときは、システムコールはエラー B<EAGAIN> で失敗する。"
5385 #: build/C/man2/fcntl.2:645
5386 msgid "To make use of mandatory locks, mandatory locking must be enabled both on the filesystem that contains the file to be locked, and on the file itself. Mandatory locking is enabled on a filesystem using the \"-o mand\" option to B<mount>(8), or the B<MS_MANDLOCK> flag for B<mount>(2). Mandatory locking is enabled on a file by disabling group execute permission on the file and enabling the set-group-ID permission bit (see B<chmod>(1) and B<chmod>(2))."
5387 msgstr "強制ロックを使用するためには、ロック対象のファイルが含まれるファイルシステム と、ロック対象のファイル自身の両方について、強制ロックが有効になっていなけれ ばならない。ファイルシステムについて強制ロックを有効にするには、 B<mount>(8) に \"-o mand\" オプションを渡すか、 B<mount>(2) に B<MS_MANDLOCK> フラグを指定する。ファイルについて強制ロックを有効にするには、 そのファイルのグループ実行許可 (group execute permission) を無効とし、 かつ set-group-ID 許可ビットを有効にする (B<chmod>(1) と B<chmod>(2) を参照)。"
5390 #: build/C/man2/fcntl.2:649
5391 msgid "Mandatory locking is not specified by POSIX. Some other systems also support mandatory locking, although the details of how to enable it vary across systems."
5392 msgstr "強制ロックは POSIX では規定されていない。 他のいくつかのシステムでも強制ロックはサポートされているが、 強制ロックをどのようにして有効にするかの詳細はシステムより異なる。"
5395 #: build/C/man2/fcntl.2:649
5397 msgid "Managing signals"
5401 #: build/C/man2/fcntl.2:658
5402 msgid "B<F_GETOWN>, B<F_SETOWN>, B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG> and B<F_SETSIG> are used to manage I/O availability signals:"
5403 msgstr "B<F_GETOWN>, B<F_SETOWN>, B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, B<F_SETSIG> は、I/O が利用可能になったことを示すシグナルを管理するために使用される。"
5406 #: build/C/man2/fcntl.2:658
5408 msgid "B<F_GETOWN> (I<void>)"
5409 msgstr "B<F_GETOWN> (I<void>)"
5412 #: build/C/man2/fcntl.2:671
5413 msgid "Return (as the function result) the process ID or process group currently receiving B<SIGIO> and B<SIGURG> signals for events on file descriptor I<fd>. Process IDs are returned as positive values; process group IDs are returned as negative values (but see BUGS below). I<arg> is ignored."
5414 msgstr "ファイルディスクリプター I<fd> のイベントに対するシグナル B<SIGIO> および B<SIGURG> を受けているプロセスのプロセスID かプロセスグループを (関数の結果として) 返す。 プロセスID は正の値として返される。 プロセスグループID は負の値として返される (下記のバグの章を参照)。 I<arg> は無視される。"
5417 #: build/C/man2/fcntl.2:671
5419 msgid "B<F_SETOWN> (I<int>)"
5420 msgstr "B<F_SETOWN> (I<int>)"
5423 #: build/C/man2/fcntl.2:688
5424 msgid "Set the process ID or process group ID that will receive B<SIGIO> and B<SIGURG> signals for events on file descriptor I<fd> to the ID given in I<arg>. A process ID is specified as a positive value; a process group ID is specified as a negative value. Most commonly, the calling process specifies itself as the owner (that is, I<arg> is specified as B<getpid>(2))."
5425 msgstr "ファイルディスクリプター I<fd> のイベント発生を知らせるシグナル B<SIGIO> や B<SIGURG> を受けるプロセスの プロセス ID またはプロセスグループID を I<arg> で指定された ID に設定する。 プロセスID は正の値として指定し、 プロセスグループID は負の値として指定する。 ほとんどの場合、呼び出し元プロセスは所有者として自分自身を指定する (つまり I<arg> に B<getpid>(2) を指定する)。"
5429 #: build/C/man2/fcntl.2:705
5430 msgid "If you set the B<O_ASYNC> status flag on a file descriptor by using the B<F_SETFL> command of B<fcntl>(), a B<SIGIO> signal is sent whenever input or output becomes possible on that file descriptor. B<F_SETSIG> can be used to obtain delivery of a signal other than B<SIGIO>. If this permission check fails, then the signal is silently discarded."
5431 msgstr "B<fcntl>() の B<F_SETFL> コマンドを使用してファイルディスクリプターに B<O_ASYNC> 状態フラグを設定した場合には、そのファイルディスクリプターへの 入出力が可能になる度に B<SIGIO> シグナルが送られる。 B<F_SETSIG> は B<SIGIO> 以外の別のシグナルの配送を受けられるように するのにも使うことができる。 許可 (permission) のチェックで失敗した場合には、 シグナルは黙って捨てられる。"
5434 #: build/C/man2/fcntl.2:713
5435 msgid "Sending a signal to the owner process (group) specified by B<F_SETOWN> is subject to the same permissions checks as are described for B<kill>(2), where the sending process is the one that employs B<F_SETOWN> (but see BUGS below)."
5436 msgstr "B<F_SETOWN> により指定された所有者のプロセス (またはプロセスグループ) に シグナルを送る際には、 B<kill>(2) に書かれているのと同じ許可のチェックが行われる。 このとき、シグナルを送信するプロセスは B<F_SETOWN> を使ったプロセスである (但し、下記の「バグ」の章を参照のこと)。"
5438 #. The following appears to be rubbish. It doesn't seem to
5439 #. be true according to the kernel source, and I can write
5440 #. a program that gets a terminal-generated SIGIO even though
5441 #. it is not the foreground process group of the terminal.
5443 #. If the file descriptor
5445 #. refers to a terminal device, then SIGIO
5446 #. signals are sent to the foreground process group of the terminal.
5448 #: build/C/man2/fcntl.2:737
5449 msgid "If the file descriptor I<fd> refers to a socket, B<F_SETOWN> also selects the recipient of B<SIGURG> signals that are delivered when out-of-band data arrives on that socket. (B<SIGURG> is sent in any situation where B<select>(2) would report the socket as having an \"exceptional condition\".)"
5450 msgstr "ファイルディスクリプターがソケットを参照している場合は、 B<F_SETOWN> を使用して、ソケットに帯域外 (out-of-band) データが届いた時に B<SIGURG> シグナルを配送する相手を選択することもできる (B<SIGURG> が送られた場合には B<select>(2) がソケットが「特別な状態」にあると報告することだろう)。"
5453 #: build/C/man2/fcntl.2:740
5454 msgid "The following was true in 2.6.x kernels up to and including kernel 2.6.11:"
5455 msgstr "バージョン 2.6.11 以前の 2.6.x カーネルでは、以下に示す動作であった。"
5457 #. The relevant place in the (2.6) kernel source is the
5458 #. 'switch' in fs/fcntl.c::send_sigio_to_task() -- MTK, Apr 2005
5459 #. send_sigurg()/send_sigurg_to_task() bypasses
5460 #. kill_fasync()/send_sigio()/send_sigio_to_task()
5461 #. to directly call send_group_sig_info()
5462 #. -- MTK, Apr 2005 (kernel 2.6.11)
5464 #: build/C/man2/fcntl.2:780
5465 msgid "If a nonzero value is given to B<F_SETSIG> in a multithreaded process running with a threading library that supports thread groups (e.g., NPTL), then a positive value given to B<F_SETOWN> has a different meaning: instead of being a process ID identifying a whole process, it is a thread ID identifying a specific thread within a process. Consequently, it may be necessary to pass B<F_SETOWN> the result of B<gettid>(2) instead of B<getpid>(2) to get sensible results when B<F_SETSIG> is used. (In current Linux threading implementations, a main thread's thread ID is the same as its process ID. This means that a single-threaded program can equally use B<gettid>(2) or B<getpid>(2) in this scenario.) Note, however, that the statements in this paragraph do not apply to the B<SIGURG> signal generated for out-of-band data on a socket: this signal is always sent to either a process or a process group, depending on the value given to B<F_SETOWN>."
5466 msgstr "スレッドグループをサポートしているスレッドライブラリ (例えば NPTL) を 使って動作しているマルチスレッドプロセスで B<F_SETSIG> に 0 以外の値を指定した場合、 B<F_SETOWN> に正の値を渡すと、その意味が違ってくる: プロセス全体を示すプロセスID ではなく、プロセス内の特定の スレッドを示すスレッドID と解釈される。 したがって、 B<F_SETSIG> を使う場合には、きちんと結果を受け取るには、 B<F_SETOWN> に渡す値を B<getpid>(2) ではなく B<gettid>(2) の返り値にする必要があるだろう。 (現状の Linux スレッド実装では、メインスレッドのスレッドID は そのスレッドのプロセスID と同じである。つまり、 シグナルスレッドのプログラムではこの場合 B<gettid>(2) と B<getpid>(2) は全く同じように使うことができる。) ただし、注意すべき点として、この段落で述べたことは、 ソケットの帯域外データが届いたときに生成される B<SIGURG> シグナルにはあてはまらない。 このシグナルは常にプロセスかプロセスグループに送られ、 送信先は B<F_SETOWN> に渡された値にしたがって決められる。"
5469 #: build/C/man2/fcntl.2:791
5470 msgid "The above behavior was accidentally dropped in Linux 2.6.12, and won't be restored. From Linux 2.6.32 onward, use B<F_SETOWN_EX> to target B<SIGIO> and B<SIGURG> signals at a particular thread."
5471 msgstr "上記の動作は、Linux 2.6.12 で図らずも削除され、 元に戻されない予定である。 Linux 2.6.32 以降で、特定のスレッド宛にシグナル B<SIGIO> と B<SIGURG> を送るには B<F_SETOWN_EX> を使うこと。"
5474 #: build/C/man2/fcntl.2:791
5476 msgid "B<F_GETOWN_EX> (struct f_owner_ex *) (since Linux 2.6.32)"
5477 msgstr "B<F_GETOWN_EX> (struct f_owner_ex *) (Linux 2.6.32 以降)"
5480 #: build/C/man2/fcntl.2:800
5481 msgid "Return the current file descriptor owner settings as defined by a previous B<F_SETOWN_EX> operation. The information is returned in the structure pointed to by I<arg>, which has the following form:"
5482 msgstr "直前の B<F_SETOWN_EX> 操作で定義された現在のファイルディスクリプターの所有者設定 を返す。情報は I<arg> が指す構造体に格納されて返される。構造体は以下の通りである。"
5485 #: build/C/man2/fcntl.2:807
5488 "struct f_owner_ex {\n"
5493 "struct f_owner_ex {\n"
5499 #: build/C/man2/fcntl.2:824
5500 msgid "The I<type> field will have one of the values B<F_OWNER_TID>, B<F_OWNER_PID>, or B<F_OWNER_PGRP>. The I<pid> field is a positive integer representing a thread ID, process ID, or process group ID. See B<F_SETOWN_EX> for more details."
5501 msgstr "I<type> フィールドは、 B<F_OWNER_TID ,> B<F_OWNER_PID ,> B<F_OWNER_PGRP> のいずれか一つの値となる。 I<pid> フィールドは、スレッド ID、プロセス ID、プロセスグループ ID を 表す正の整数である。詳細は B<F_SETOWN_EX> を参照。"
5504 #: build/C/man2/fcntl.2:824
5506 msgid "B<F_SETOWN_EX> (struct f_owner_ex *) (since Linux 2.6.32)"
5507 msgstr "B<F_SETOWN_EX> (struct f_owner_ex *) (Linux 2.6.32 以降)"
5510 #: build/C/man2/fcntl.2:840
5511 msgid "This operation performs a similar task to B<F_SETOWN>. It allows the caller to direct I/O availability signals to a specific thread, process, or process group. The caller specifies the target of signals via I<arg>, which is a pointer to a I<f_owner_ex> structure. The I<type> field has one of the following values, which define how I<pid> is interpreted:"
5512 msgstr "この操作は B<F_SETOWN> と同様の処理を行う。 この操作を使うと、I/O が利用可能になったことを示すシグナルを、 特定のスレッド、プロセス、プロセスグループに送ることができる ようになる。 呼び出し元は、 I<arg> 経由でシグナルの配送先を指定する。 I<arg> は I<f_owner_ex> 構造体へのポインタである。 I<type> フィールドは以下のいずれかの値を取り、 この値により I<pid> がどのように解釈されるかが規定される。"
5515 #: build/C/man2/fcntl.2:841
5517 msgid "B<F_OWNER_TID>"
5518 msgstr "B<F_OWNER_TID>"
5521 #: build/C/man2/fcntl.2:850
5522 msgid "Send the signal to the thread whose thread ID (the value returned by a call to B<clone>(2) or B<gettid>(2)) is specified in I<pid>."
5523 msgstr "スレッド ID が I<pid> で指定された値のスレッドにそのシグナルを送る (スレッド ID は B<clone>(2) や B<gettid>(2) の呼び出しで返される値である)。"
5526 #: build/C/man2/fcntl.2:850
5528 msgid "B<F_OWNER_PID>"
5529 msgstr "B<F_OWNER_PID>"
5532 #: build/C/man2/fcntl.2:855
5533 msgid "Send the signal to the process whose ID is specified in I<pid>."
5534 msgstr "ID が I<pid> で指定された値のプロセスにそのシグナルを送る。"
5537 #: build/C/man2/fcntl.2:855
5539 msgid "B<F_OWNER_PGRP>"
5540 msgstr "B<F_OWNER_PGRP>"
5543 #: build/C/man2/fcntl.2:863
5544 msgid "Send the signal to the process group whose ID is specified in I<pid>. (Note that, unlike with B<F_SETOWN>, a process group ID is specified as a positive value here.)"
5545 msgstr "ID が I<pid> で指定された値のプロセスグループにそのシグナルを送る。 (B<F_SETOWN> と異なり、プロセスグループ ID には正の値を指定する点に注意すること。)"
5548 #: build/C/man2/fcntl.2:864
5550 msgid "B<F_GETSIG> (I<void>)"
5551 msgstr "B<F_GETSIG> (I<void>)"
5554 #: build/C/man2/fcntl.2:879
5555 msgid "Return (as the function result) the signal sent when input or output becomes possible. A value of zero means B<SIGIO> is sent. Any other value (including B<SIGIO>) is the signal sent instead, and in this case additional info is available to the signal handler if installed with B<SA_SIGINFO>. I<arg> is ignored."
5556 msgstr "入力や出力が可能になった場合に送るシグナルを (関数の結果として) 返す。 値ゼロは B<SIGIO> を送ることを意味する。 (B<SIGIO> を含む) 他の値はいずれも、 B<SIGIO> の代わりに送るシグナル番号を表す。 後者の場合、シグナルハンドラを B<SA_SIGINFO> フラグ付きで設定すれば、ハンドラで追加の情報を得ることができる。 I<arg> は無視される。"
5559 #: build/C/man2/fcntl.2:879
5561 msgid "B<F_SETSIG> (I<int>)"
5562 msgstr "B<F_SETSIG> (I<int>)"
5564 #. The following was true only up until 2.6.11:
5565 #. Additionally, passing a nonzero value to
5567 #. changes the signal recipient from a whole process to a specific thread
5568 #. within a process.
5569 #. See the description of
5571 #. for more details.
5573 #: build/C/man2/fcntl.2:902
5574 msgid "Set the signal sent when input or output becomes possible to the value given in I<arg>. A value of zero means to send the default B<SIGIO> signal. Any other value (including B<SIGIO>) is the signal to send instead, and in this case additional info is available to the signal handler if installed with B<SA_SIGINFO>."
5575 msgstr "入力や出力が可能になった場合に送るシグナルを I<arg> に指定された値に設定する。 値ゼロは B<SIGIO> を送ることを意味する。 (B<SIGIO> を含む) 他の値はいずれも、 B<SIGIO> の代わりに送るシグナル番号を表す。 後者の場合、シグナルハンドラを B<SA_SIGINFO> フラグ付きで設定すれば、 ハンドラで追加の情報を得ることができる。"
5578 #: build/C/man2/fcntl.2:930
5579 msgid "By using B<F_SETSIG> with a nonzero value, and setting B<SA_SIGINFO> for the signal handler (see B<sigaction>(2)), extra information about I/O events is passed to the handler in a I<siginfo_t> structure. If the I<si_code> field indicates the source is B<SI_SIGIO>, the I<si_fd> field gives the file descriptor associated with the event. Otherwise, there is no indication which file descriptors are pending, and you should use the usual mechanisms (B<select>(2), B<poll>(2), B<read>(2) with B<O_NONBLOCK> set etc.) to determine which file descriptors are available for I/O."
5580 msgstr "B<F_SETSIG> にゼロ以外の値を設定し、シグナルハンドラに B<SA_SIGINFO> フラグを設定すると、 (B<sigaction>(2) を参照) I/O イベントに関する追加の情報が I<siginfo_t> 構造体でシグナルハンドラへ渡される。 I<si_code> フィールドが示すシグナルの原因が B<SI_SIGIO> である場合、 I<si_fd> フィールドにはイベントに対応するファイルディスクリプターが入っている。 それ以外の場合は、どのファイルディスクリプターが利用可能かを示す情報は ないので、どのファイルディスクリプターで I/O が可能かを判断するためには 通常の機構 (B<select>(2), B<poll>(2), B<O_NONBLOCK> を設定した B<read>(2) など) を使用しなければならない。"
5583 #: build/C/man2/fcntl.2:939
5584 msgid "By selecting a real time signal (value E<gt>= B<SIGRTMIN>), multiple I/O events may be queued using the same signal numbers. (Queuing is dependent on available memory). Extra information is available if B<SA_SIGINFO> is set for the signal handler, as above."
5585 msgstr "リアルタイムシグナル (値が B<SIGRTMIN> 以上) を選択している場合は、 同じシグナル番号を持つ複数の I/O イベントがキューに入ることがある (キューに入れるかどうかは利用可能なメモリに依存している)。 上記と同様、 B<SA_SIGINFO> が設定されている場合、シグナルハンドラのための追加の情報が得られる。"
5587 #. See fs/fcntl.c::send_sigio_to_task() (2.4/2.6) sources -- MTK, Apr 05
5589 #: build/C/man2/fcntl.2:952
5590 msgid "Note that Linux imposes a limit on the number of real-time signals that may be queued to a process (see B<getrlimit>(2) and B<signal>(7)) and if this limit is reached, then the kernel reverts to delivering B<SIGIO>, and this signal is delivered to the entire process rather than to a specific thread."
5591 msgstr "以下の点に注意すること。 Linux では一つのプロセスに対してキューに入れられるリアルタイム シグナルの数に上限が設けられており (B<getrlimit>(2) と B<signal>(7) を参照)、この上限に達するとカーネルは B<SIGIO> シグナルを配送する。この B<SIGIO> シグナルは、指定されたスレッドではなくプロセス全体に送られる。"
5594 #: build/C/man2/fcntl.2:959
5595 msgid "Using these mechanisms, a program can implement fully asynchronous I/O without using B<select>(2) or B<poll>(2) most of the time."
5596 msgstr "これらの機構を使用することで、ほとんどの場合で B<select>(2) や B<poll>(2) を使用せずに完全な非同期 I/O を実装することができる。"
5599 #: build/C/man2/fcntl.2:983
5600 msgid "The use of B<O_ASYNC> is specific to BSD and Linux. The only use of B<F_GETOWN> and B<F_SETOWN> specified in POSIX.1 is in conjunction with the use of the B<SIGURG> signal on sockets. (POSIX does not specify the B<SIGIO> signal.) B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, and B<F_SETSIG> are Linux-specific. POSIX has asynchronous I/O and the I<aio_sigevent> structure to achieve similar things; these are also available in Linux as part of the GNU C Library (Glibc)."
5601 msgstr "B<O_ASYNC> の使用方法は BSD と Linux に特有である。 POSIX.1 で規定されている B<F_GETOWN> と B<F_SETOWN> の使用方法は、ソケットに対する B<SIGURG> シグナルとの組み合わせだけである (POSIX は B<SIGIO> シグナルは規定していない)。 B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_GETSIG>, B<F_SETSIG> は Linux 固有である。POSIX には、同様のことを行うために、非同期 I/O と I<aio_sigevent> 構造体がある。Linux では、GNU C ライブラリ (Glibc) の一部として これらも利用可能である。"
5604 #: build/C/man2/fcntl.2:983
5607 msgstr "リース (leases)"
5610 #: build/C/man2/fcntl.2:998
5611 msgid "B<F_SETLEASE> and B<F_GETLEASE> (Linux 2.4 onward) are used (respectively) to establish a new lease, and retrieve the current lease, on the open file description referred to by the file descriptor I<fd>. A file lease provides a mechanism whereby the process holding the lease (the \"lease holder\") is notified (via delivery of a signal) when a process (the \"lease breaker\") tries to B<open>(2) or B<truncate>(2) the file referred to by that file descriptor."
5612 msgstr "(Linix 2.4 以降で利用可能) B<F_SETLEASE> は、 I<fd> が参照するオープンファイル記述に対して新しいリースを設定するのに使用される。 B<F_GETLEASE> は、 I<fd> が参照するオープンファイル記述に対して設定されている 現在のリースを取得するのに使用される。 ファイルのリースにより、 あるプロセス (\"lease breaker\") がそのファイルディスクリプターが参照 しているファイルに対して B<open>(2) や B<truncate>(2) を行おうとした際に、リースを保持しているプロセス (\"lease holder\") へ (シグナルの配送による) 通知が行われるという機構が提供される。"
5615 #: build/C/man2/fcntl.2:998
5617 msgid "B<F_SETLEASE> (I<int>)"
5618 msgstr "B<F_SETLEASE> (I<int>)"
5621 #: build/C/man2/fcntl.2:1003
5622 msgid "Set or remove a file lease according to which of the following values is specified in the integer I<arg>:"
5623 msgstr "I<arg> の内容に基いてファイルのリースの設定、削除を行う。整数 I<arg> には以下の値が指定できる:"
5626 #: build/C/man2/fcntl.2:1004
5631 #. The following became true in kernel 2.6.10:
5632 #. See the man-pages-2.09 Changelog for further info.
5634 #: build/C/man2/fcntl.2:1013
5635 msgid "Take out a read lease. This will cause the calling process to be notified when the file is opened for writing or is truncated. A read lease can be placed only on a file descriptor that is opened read-only."
5636 msgstr "読み出しリースを取得する。これにより、 そのファイルが書き込み用にオープンされたり、ファイルが切り詰められた場合に、 呼び出し元のプロセスに通知が行われるようになる。 読み出しリースを設定できるのは、読み出し専用でオープンされている ファイルディスクリプターに対してのみである。"
5639 #: build/C/man2/fcntl.2:1013
5645 #: build/C/man2/fcntl.2:1020
5646 msgid "Take out a write lease. This will cause the caller to be notified when the file is opened for reading or writing or is truncated. A write lease may be placed on a file only if there are no other open file descriptors for the file."
5647 msgstr "書き込みリースを取得する。これにより、 (読み出し用か書き込み用にかかわらず) そのファイルがオープンされたり、 ファイルが切り詰められた場合に、呼び出し元のプロセスに通知が行われるようになる。 書き込みリースは、そのファイルに対するオープンされたファイルディスクリプターが 他にない場合にのみ設定できる。"
5650 #: build/C/man2/fcntl.2:1020
5656 #: build/C/man2/fcntl.2:1023
5657 msgid "Remove our lease from the file."
5658 msgstr "そのファイルからリースを削除する。"
5661 #: build/C/man2/fcntl.2:1037
5662 msgid "Leases are associated with an open file description (see B<open>(2)). This means that duplicate file descriptors (created by, for example, B<fork>(2) or B<dup>(2)) refer to the same lease, and this lease may be modified or released using any of these descriptors. Furthermore, the lease is released by either an explicit B<F_UNLCK> operation on any of these duplicate descriptors, or when all such descriptors have been closed."
5663 msgstr "リースはオープンファイル記述に対して関連付けられる (B<open>(2) 参照)。 つまり、 (B<fork>(2) や B<dup>(2) などにより作成された) ファイルディスクリプターの複製は同じリースを参照し、 複製も含めたどのファイルディスクリプターを使ってもこのリースを変更したり 解放したりできる。 また、これらのファイルディスクリプターのいずれかに対して B<F_UNLCK> 操作が明示的に実行された場合や、すべてのファイルディスクリプターが 閉じられた場合にも、リースは解放される。"
5666 #: build/C/man2/fcntl.2:1044
5667 msgid "Leases may be taken out only on regular files. An unprivileged process may take out a lease only on a file whose UID (owner) matches the filesystem UID of the process. A process with the B<CAP_LEASE> capability may take out leases on arbitrary files."
5668 msgstr "リースの取得は通常のファイル (regular file) に対してのみ可能である。 非特権プロセスがリースを取得できるのは、UID (所有者) がプロセスの ファイルシステム UID と一致するファイルに対してだけである。 B<CAP_LEASE> ケーパビリティを持つプロセスは任意のファイルに対してリースを取得できる。"
5671 #: build/C/man2/fcntl.2:1044
5673 msgid "B<F_GETLEASE> (I<void>)"
5674 msgstr "B<F_GETLEASE> (I<void>)"
5677 #: build/C/man2/fcntl.2:1053
5678 msgid "Indicates what type of lease is associated with the file descriptor I<fd> by returning either B<F_RDLCK>, B<F_WRLCK>, or B<F_UNLCK>, indicating, respectively, a read lease , a write lease, or no lease. I<arg> is ignored."
5679 msgstr "ファイルディスクリプター I<fd> に対して設定されているリースの種別を取得する。 B<F_RDLCK>, B<F_WRLCK>, B<F_UNLCK> のいずれかが返される。 B<F_RDLCK>, B<F_WRLCK> はそれぞれ、読み出しリース、書き込みリースが設定されていることを示し、 B<F_UNLCK> はリースが何も設定されていないことを示す。 I<arg> は無視される。"
5682 #: build/C/man2/fcntl.2:1084
5683 msgid "When a process (the \"lease breaker\") performs an B<open>(2) or B<truncate>(2) that conflicts with a lease established via B<F_SETLEASE>, the system call is blocked by the kernel and the kernel notifies the lease holder by sending it a signal (B<SIGIO> by default). The lease holder should respond to receipt of this signal by doing whatever cleanup is required in preparation for the file to be accessed by another process (e.g., flushing cached buffers) and then either remove or downgrade its lease. A lease is removed by performing an B<F_SETLEASE> command specifying I<arg> as B<F_UNLCK>. If the lease holder currently holds a write lease on the file, and the lease breaker is opening the file for reading, then it is sufficient for the lease holder to downgrade the lease to a read lease. This is done by performing an B<F_SETLEASE> command specifying I<arg> as B<F_RDLCK>."
5685 "あるプロセス (\"lease breaker\") が B<F_SETLEASE> で設定されたリースと矛\n"
5686 "盾するような B<open>(2) や B<truncate>(2) を実行した場合、 そのシステム\n"
5687 "コールはカーネルによって停止され、 カーネルは lease holder にシグナル\n"
5688 "(デフォルトでは B<SIGIO>) を送って通知を行う。 lease holder はこのシグ\n"
5689 "ナルを受信したときにはきちんと対応すべきである。 具体的には、別のプロセ\n"
5690 "スがそのファイルにアクセスするための準備として 必要な後片付け (例えば、\n"
5691 "キャッシュされたバッファーのフラッシュ) を すべて行ってから、そのファイル\n"
5692 "のリースの削除または格下げを行う。リースを削除をするには、 I<arg> に\n"
5693 "B<F_UNLCK> を指定して B<F_SETLEASE> を実行する。lease holder がファイル\n"
5694 "に書き込みリースを保持していて、 lease breaker が読み出し用にそのファイ\n"
5695 "ルをオープンしている場合、 lease holder が保持しているリースを読み出し\n"
5696 "リースに格下げすれば 十分である。これをするには、 I<arg> に B<F_RDLCK>\n"
5697 "を指定して B<F_SETLEASE> を実行する。"
5700 #: build/C/man2/fcntl.2:1089
5701 msgid "If the lease holder fails to downgrade or remove the lease within the number of seconds specified in I</proc/sys/fs/lease-break-time>, then the kernel forcibly removes or downgrades the lease holder's lease."
5702 msgstr "If the lease holder fails to downgrade or remove the lease within the number of seconds specified in I</proc/sys/fs/lease-break-time>, then the kernel forcibly removes or downgrades the lease holder's lease."
5705 #: build/C/man2/fcntl.2:1099
5706 msgid "Once a lease break has been initiated, B<F_GETLEASE> returns the target lease type (either B<F_RDLCK> or B<F_UNLCK>, depending on what would be compatible with the lease breaker) until the lease holder voluntarily downgrades or removes the lease or the kernel forcibly does so after the lease break timer expires."
5708 "いったん lease break が開始されると、 lease holder が自発的にそのリース\n"
5709 "の格下げか削除を行うか、lease break timer の満了後にカーネルが強制的に\n"
5710 "リースの格下げか削除を行うまで、 B<F_GETLEASE> は対象となるリースの型を\n"
5711 "返す (リースの型は B<F_RDLCK> か B<F_UNLCK> のどちらであり、lease\n"
5712 "breaker と互換性のある型となる)。"
5715 #: build/C/man2/fcntl.2:1103
5716 msgid "Once the lease has been voluntarily or forcibly removed or downgraded, and assuming the lease breaker has not unblocked its system call, the kernel permits the lease breaker's system call to proceed."
5717 msgstr "一度リースの削除か格下げが自発的もしくは強制的に行われると、 lease breaker がまだシステムコールを再開していない場合には、 カーネルが lease breaker のシステムコールの続行を許可する。"
5720 #: build/C/man2/fcntl.2:1124
5721 msgid "If the lease breaker's blocked B<open>(2) or B<truncate>(2) is interrupted by a signal handler, then the system call fails with the error B<EINTR>, but the other steps still occur as described above. If the lease breaker is killed by a signal while blocked in B<open>(2) or B<truncate>(2), then the other steps still occur as described above. If the lease breaker specifies the B<O_NONBLOCK> flag when calling B<open>(2), then the call immediately fails with the error B<EWOULDBLOCK>, but the other steps still occur as described above."
5722 msgstr "lease breaker が実行した B<open>(2) や B<truncate>(2) が停止中にシグナルハンドラにより中断された場合、 そのシステムコールは B<EINTR> エラーで失敗するが、上で述べた他の処理は そのまま行われる。 B<open>(2) や B<truncate>(2) が停止中に lease breaker がシグナルにより kill された場合、 上で述べた他の処理はそのまま行われる。 lease breaker が B<open>(2) を呼ぶ際に B<O_NONBLOCK> フラグを指定した場合、そのシステムコールは B<EWOULDBLOCK> エラーで直ちに失敗するが、上で述べた他の処理はそのまま行われる。"
5725 #: build/C/man2/fcntl.2:1145
5726 msgid "The default signal used to notify the lease holder is B<SIGIO>, but this can be changed using the B<F_SETSIG> command to B<fcntl>(). If a B<F_SETSIG> command is performed (even one specifying B<SIGIO>), and the signal handler is established using B<SA_SIGINFO>, then the handler will receive a I<siginfo_t> structure as its second argument, and the I<si_fd> field of this argument will hold the descriptor of the leased file that has been accessed by another process. (This is useful if the caller holds leases against multiple files)."
5727 msgstr "lease holder への通知に使われるデフォルトのシグナルは B<SIGIO> だが、 B<fcntl>() の B<F_SETSIG> コマンドで変更することができる。 B<F_SETSIG> コマンドが実行され (B<SIGIO> を指定された場合も含む)、 B<SA_SIGINFO> フラグ付きでシグナルハンドラが設定されている場合には、 ハンドラの第二引き数として I<siginfo_t> 構造体が渡され、この引き数の I<si_fd> フィールドには別のプロセスがアクセスしたリース設定済みファイルの ディスクリプターが入っている (この機能は複数のファイルに対してリースを設定する場合に有用である)。"
5730 #: build/C/man2/fcntl.2:1145
5732 msgid "File and directory change notification (dnotify)"
5733 msgstr "ファイルやディレクトリの変更の通知 (dnotify)"
5736 #: build/C/man2/fcntl.2:1146
5738 msgid "B<F_NOTIFY> (I<int>)"
5739 msgstr "B<F_NOTIFY> (I<int>)"
5742 #: build/C/man2/fcntl.2:1156
5743 msgid "(Linux 2.4 onward) Provide notification when the directory referred to by I<fd> or any of the files that it contains is changed. The events to be notified are specified in I<arg>, which is a bit mask specified by ORing together zero or more of the following bits:"
5744 msgstr "(Linux 2.4 以降) I<fd> で参照されるディレクトリか、その中にあるファイルに変更があった場合に 通知を行う。どのイベントを通知するかは I<arg> で指定する。 I<arg> はビットマスクで、以下のビットの 0個以上の論理和をとったものを指定する。"
5747 #: build/C/man2/fcntl.2:1159
5749 msgid "B<DN_ACCESS>"
5750 msgstr "B<DN_ACCESS>"
5753 #: build/C/man2/fcntl.2:1166
5754 msgid "A file was accessed (B<read>(2), B<pread>(2), B<readv>(2), and similar)"
5755 msgstr "ファイルへのアクセスがあった (B<read>(2), B<pread>(2), B<readv>(2) や同様のシステムコール)"
5758 #: build/C/man2/fcntl.2:1166
5760 msgid "B<DN_MODIFY>"
5761 msgstr "B<DN_MODIFY>"
5764 #: build/C/man2/fcntl.2:1175
5765 msgid "A file was modified (B<write>(2), B<pwrite>(2), B<writev>(2), B<truncate>(2), B<ftruncate>(2), and similar)."
5766 msgstr "ファイルの内容が変更された (B<write>(2), B<pwrite>(2), B<writev>(2), B<truncate>(2), B<ftruncate>(2) や同様のシステムコール)"
5769 #: build/C/man2/fcntl.2:1175
5771 msgid "B<DN_CREATE>"
5772 msgstr "B<DN_CREATE>"
5775 #: build/C/man2/fcntl.2:1186
5776 msgid "A file was created (B<open>(2), B<creat>(2), B<mknod>(2), B<mkdir>(2), B<link>(2), B<symlink>(2), B<rename>(2) into this directory)."
5778 "ファイルが作成された (B<open>(2), B<creat>(2), B<mknod>(2), B<mkdir>(2), \"\n"
5779 "\"B<link>(2), B<symlink>(2), このディレクトリへの B<rename>(2))"
5782 #: build/C/man2/fcntl.2:1186
5784 msgid "B<DN_DELETE>"
5785 msgstr "B<DN_DELETE>"
5788 #: build/C/man2/fcntl.2:1193
5789 msgid "A file was unlinked (B<unlink>(2), B<rename>(2) to another directory, B<rmdir>(2))."
5790 msgstr "ファイルが削除 (unlink) された (B<unlink>(2), 別のディレクトリへの B<rename>(2), B<rmdir>(2))"
5793 #: build/C/man2/fcntl.2:1193
5795 msgid "B<DN_RENAME>"
5796 msgstr "B<DN_RENAME>"
5799 #: build/C/man2/fcntl.2:1197
5800 msgid "A file was renamed within this directory (B<rename>(2))."
5801 msgstr "ディレクトリ内でのファイル名の変更があった (B<rename>(2))"
5804 #: build/C/man2/fcntl.2:1197
5806 msgid "B<DN_ATTRIB>"
5807 msgstr "B<DN_ATTRIB>"
5810 #: build/C/man2/fcntl.2:1205
5811 msgid "The attributes of a file were changed (B<chown>(2), B<chmod>(2), B<utime>(2), B<utimensat>(2), and similar)."
5812 msgstr "ファイル属性が変更された (B<chown>(2), B<chmod>(2), B<utime>(2), B<utimensat>(2) や同様のシステムコール)"
5815 #: build/C/man2/fcntl.2:1213
5816 msgid "(In order to obtain these definitions, the B<_GNU_SOURCE> feature test macro must be defined before including I<any> header files.)"
5818 "(上記の定義を利用するには、I<どの> ヘッダファイルをインクルードするより前に、\n"
5819 "B<_GNU_SOURCE> 機能検査マクロを定義しなければならない。)"
5822 #: build/C/man2/fcntl.2:1221
5823 msgid "Directory notifications are normally \"one-shot\", and the application must reregister to receive further notifications. Alternatively, if B<DN_MULTISHOT> is included in I<arg>, then notification will remain in effect until explicitly removed."
5824 msgstr "ディレクトリの変更通知は通常「一回限り (one-shot)」であり、 アプリケーション側でその後さらに通知を受信したい場合は 再登録しなければならない。 I<arg> に B<DN_MULTISHOT> が含まれていた場合には、 変更通知は明示的に解除されるまで有効状態が継続する。"
5826 #. The following does seem a poor API-design choice...
5828 #: build/C/man2/fcntl.2:1233
5829 msgid "A series of B<F_NOTIFY> requests is cumulative, with the events in I<arg> being added to the set already monitored. To disable notification of all events, make an B<F_NOTIFY> call specifying I<arg> as 0."
5830 msgstr "B<F_NOTIFY> 要求は積算されていく。つまり、 I<arg> で指定されたイベントがすでにモニタされている イベント集合に加算される形になる。 すべてのイベントの通知を無効にするには、 I<arg> に 0 を指定して B<F_NOTIFY> を呼び出す必要がある。"
5833 #: build/C/man2/fcntl.2:1256
5834 msgid "Notification occurs via delivery of a signal. The default signal is B<SIGIO>, but this can be changed using the B<F_SETSIG> command to B<fcntl>(). (Note that B<SIGIO> is one of the nonqueuing standard signals; switching to the use of a real-time signal means that multiple notifications can be queued to the process.) In the latter case, the signal handler receives a I<siginfo_t> structure as its second argument (if the handler was established using B<SA_SIGINFO>) and the I<si_fd> field of this structure contains the file descriptor which generated the notification (useful when establishing notification on multiple directories)."
5835 msgstr "通知はシグナルの配送で行われる。 デフォルトのシグナルは B<SIGIO> だが、 B<fcntl>() の B<F_SETSIG> コマンドで変更することができる。 (B<SIGIO> はキューイングされない標準のシグナルの一つである点に注意。 リアルタイムシグナルを使うように変更すると、 複数の通知がそのプロセス宛のキューに入ることがあることを意味する。) 後者の場合には、 (B<SA_SIGINFO> フラグ付きでシグナルハンドラが設定されている場合には) ハンドラの第二引き数として I<siginfo_t> 構造体が渡され、この構造体の I<si_fd> フィールドには通知の行われたファイルディスクリプターが入っている (この機能は複数のディレクトリに対して通知を設定する場合に有用である)。"
5838 #: build/C/man2/fcntl.2:1261
5839 msgid "Especially when using B<DN_MULTISHOT>, a real time signal should be used for notification, so that multiple notifications can be queued."
5840 msgstr "特に B<DN_MULTISHOT> を使う場合は、通知にはリアルタイムシグナルを使うべきである。 それは、リアルタイムシグナルを使うことで、複数の通知をキューに入れる ことができるからである。"
5843 #: build/C/man2/fcntl.2:1270
5844 msgid "B<NOTE:> New applications should use the I<inotify> interface (available since kernel 2.6.13), which provides a much superior interface for obtaining notifications of filesystem events. See B<inotify>(7)."
5845 msgstr "B<注意:> 新しくアプリケーションを書く際には、(カーネル 2.6.13 以降で利用可能となった) I<inotify> インタフェースを使用すべきである。 I<inotify> はファイルシステムイベントの通知を取得するための ずっと優れたインタフェースである。 B<inotify>(7) を参照。"
5848 #: build/C/man2/fcntl.2:1270
5850 msgid "Changing the capacity of a pipe"
5854 #: build/C/man2/fcntl.2:1271
5856 msgid "B<F_SETPIPE_SZ> (I<int>; since Linux 2.6.35)"
5857 msgstr "B<F_SETPIPE_SZ> (I<int>; Linux 2.6.35 以降)"
5860 #: build/C/man2/fcntl.2:1300
5861 msgid "Change the capacity of the pipe referred to by I<fd> to be at least I<arg> bytes. An unprivileged process can adjust the pipe capacity to any value between the system page size and the limit defined in I</proc/sys/fs/pipe-max-size> (see B<proc>(5)). Attempts to set the pipe capacity below the page size are silently rounded up to the page size. Attempts by an unprivileged process to set the pipe capacity above the limit in I</proc/sys/fs/pipe-max-size> yield the error B<EPERM>; a privileged process (B<CAP_SYS_RESOURCE>) can override the limit. When allocating the buffer for the pipe, the kernel may use a capacity larger than I<arg>, if that is convenient for the implementation. The actual capacity that is set is returned as the function result. Attempting to set the pipe capacity smaller than the amount of buffer space currently used to store data produces the error B<EBUSY>."
5863 "I<fd> が参照するパイプの容量を少なくとも I<arg> バイトに変更する。\n"
5864 "非特権プロセスは、パイプの容量として、\n"
5865 "システムのページサイズと I</proc/sys/fs/pipe-max-size> で定義される\n"
5866 "上限値 (B<proc>(5) 参照) の間の任意の値を設定できる。\n"
5867 "パイプの容量をページサイズよりも小さな値に設定しようとした場合は、\n"
5868 "暗黙のうちにページサイズに切り上げられる。\n"
5869 "非特権プロセスがパイプの容量を I</proc/sys/fs/pipe-max-size> で定義\n"
5870 "された上限より大きな値に設定しようとした場合は、エラー B<EPERM> が\n"
5871 "発生する。特権プロセス (B<CAP_SYS_RESOURCE> ケーパビリティを持つ\n"
5872 "プロセス) はこの上限を上書きできる。\n"
5873 "パイプにバッファーを割り当てる場合、実装側の都合に応じて、\n"
5874 "カーネルは I<arg> よりも大きな容量を割り当ててもよい。\n"
5875 "実際に設定された大きさが関数の返り値として返される。\n"
5876 "パイプの容量を現在データを格納するのに使用されているバッファーの\n"
5877 "サイズよりも小さくしようとした場合は、エラー B<EBUSY> が発生する。"
5880 #: build/C/man2/fcntl.2:1300
5882 msgid "B<F_GETPIPE_SZ> (I<void>; since Linux 2.6.35)"
5883 msgstr "B<F_GETPIPE_SZ> (I<void>; Linux 2.6.35 以降)"
5886 #: build/C/man2/fcntl.2:1305
5887 msgid "Return (as the function result) the capacity of the pipe referred to by I<fd>."
5888 msgstr "I<fd> が参照するパイプの容量を (関数の結果として) 返す。"
5891 #: build/C/man2/fcntl.2:1305
5893 msgid "File Sealing"
5894 msgstr "File Sealing"
5897 #: build/C/man2/fcntl.2:1317
5898 msgid "File seals limit the set of allowed operations on a given file. For each seal that is set on a file, a specific set of operations will fail with B<EPERM> on this file from now on. The file is said to be sealed. The default set of seals depends on the type of the underlying file and filesystem. For an overview of file sealing, a discussion of its purpose, and some code examples, see B<memfd_create>(2)."
5899 msgstr "file seal は指定されたファイルで許可される操作の集合を制限する。 ファイルに設定される seal 毎に対応する操作の集合が規定されており、 それ以降のそのファイルに対する対応する操作は B<EPERM> で失敗する。 このようなファイルは sealed (seal が適用されている) と呼ばれる。 デフォルトの seal の集合は、適用されるファイルやファイルシステムに依存する。 file seal の概要、 その目的、 サンプルコードについては B<memfd_create>(2) を参照。"
5902 #: build/C/man2/fcntl.2:1325
5903 msgid "Currently, only the I<tmpfs> filesystem supports sealing. On other filesystems, all B<fcntl>(2) operations that operate on seals will return B<EINVAL>."
5904 msgstr "現在のところ I<tmpfs> ファイルシステムだけが sealing をサポートしている。 他のファイルシステムでは、 seal に関連する B<fcntl>(2) の操作はすべて B<EINVAL> を返す。"
5907 #: build/C/man2/fcntl.2:1330
5908 msgid "Seals are a property of an inode. Thus, all open file descriptors referring to the same inode share the same set of seals. Furthermore, seals can never be removed, only added."
5909 msgstr "seal は inode の属性である。 したがって、 同じ inode を参照するすべてのオープンされたファイルディスクリプターは、 同じ seal の集合を共有する。 さらに、 seal は削除することはできず、 追加のみ可能である。"
5912 #: build/C/man2/fcntl.2:1330
5914 msgid "B<F_ADD_SEALS> (I<int>; since Linux 3.17)"
5915 msgstr "B<F_ADD_SEALS> (I<int>; Linux 3.17 以降)"
5918 #: build/C/man2/fcntl.2:1348
5919 msgid "Add the seals given in the bit-mask argument I<arg> to the set of seals of the inode referred to by the file descriptor I<fd>. Seals cannot be removed again. Once this call succeeds, the seals are enforced by the kernel immediately. If the current set of seals includes B<F_SEAL_SEAL> (see below), then this call will be rejected with B<EPERM>. Adding a seal that is already set is a no-op, in case B<F_SEAL_SEAL> is not set already. In order to place a seal, the file descriptor I<fd> must be writable."
5920 msgstr "ビットマスク引き数 I<arg> で指定された seal を、 ファイルディスクリプター I<fd> が参照する inode の seal の集合に追加する。 一度追加した seal を削除することはできない。 この呼び出しが成功すると、 seal はただちにカーネルにより適用される。 現在の seal の集合に B<F_SEAL_SEAL> (下記参照) が含まれている場合、 この呼び出しは B<EPERM> で拒否される。 すでに設定されている seal を追加した場合、 B<F_SEAL_SEAL> がまだ設定されていない場合は no-op (何もしない) となる。 seal を設定するには、 ファイルディスクリプター I<fd> が書き込み可能でなければならない。"
5923 #: build/C/man2/fcntl.2:1348
5925 msgid "B<F_GET_SEALS> (I<void>; since Linux 3.17)"
5926 msgstr "B<F_GET_SEALS> (I<void>; Linux 3.17 以降)"
5929 #: build/C/man2/fcntl.2:1358
5930 msgid "Return (as the function result) the current set of seals of the inode referred to by I<fd>. If no seals are set, 0 is returned. If the file does not support sealing, -1 is returned and I<errno> is set to B<EINVAL>."
5931 msgstr "(関数の結果として) I<fd> が参照する inode の seal の現在の集合を返す。 seal が何も設定されていない場合、 0 が返される。 ファイルが sealing をサポートしていない場合、 -1 が返され、 I<errno> に B<EINVAL> が設定される。"
5934 #: build/C/man2/fcntl.2:1360
5935 msgid "The following seals are available:"
5936 msgstr "以下の seal が利用できる。"
5939 #: build/C/man2/fcntl.2:1360
5941 msgid "B<F_SEAL_SEAL>"
5942 msgstr "B<F_SEAL_SEAL>"
5945 #: build/C/man2/fcntl.2:1372
5946 msgid "If this seal is set, any further call to B<fcntl>(2) with B<F_ADD_SEALS> will fail with B<EPERM>. Therefore, this seal prevents any modifications to the set of seals itself. If the initial set of seals of a file includes B<F_SEAL_SEAL>, then this effectively causes the set of seals to be constant and locked."
5947 msgstr "この seal が設定されると、 これ以降の B<F_ADD_SEALS> を指定した B<fcntl>(2) の呼び出しはすべて B<EPERM> で失敗する。 したがって、 この seal を設定すると seal の集合自身の変更を防止できる。 ファイルの最初の seal の集合に B<F_SEAL_SEAL> が含まれていた場合、 結果的に seal の集合が定数になりロックされることになる。"
5950 #: build/C/man2/fcntl.2:1372
5952 msgid "B<F_SEAL_SHRINK>"
5953 msgstr "B<F_SEAL_SHRINK>"
5956 #: build/C/man2/fcntl.2:1387
5957 msgid "If this seal is set, the file in question cannot be reduced in size. This affects B<open>(2) with the B<O_TRUNC> flag as well as B<truncate>(2) and B<ftruncate>(2). Those calls will fail with B<EPERM> if you try to shrink the file in question. Increasing the file size is still possible."
5958 msgstr "この seal が設定されると、 設定されたファイルのサイズを小さくできなくなる。 この seal は B<open>(2) の B<O_TRUNC> フラグに影響する。 B<truncate>(2) と B<ftruncate>(2) についても同様である。 対象のファイルのサイズを小さくしようとした場合、 これらの呼び出しは B<EPERM> で失敗する。 ファイルサイズを増やすことはこの場合でも可能である。"
5961 #: build/C/man2/fcntl.2:1387
5963 msgid "B<F_SEAL_GROW>"
5964 msgstr "B<F_SEAL_GROW>"
5967 #: build/C/man2/fcntl.2:1401
5968 msgid "If this seal is set, the size of the file in question cannot be increased. This affects B<write>(2) beyond the end of the file, B<truncate>(2), B<ftruncate>(2), and B<fallocate>(2). These calls will fail with B<EPERM> if you use them to increase the file size. If you keep the size or shrink it, those calls still work as expected."
5969 msgstr "この seal が設定されると、 設定されたファイルのサイズを増やせなくなる。 この seal はファイルの末尾を超えての B<write>(2) や B<truncate>(2), B<ftruncate>(2), B<fallocate>(2) に影響する。 対象のファイルのサイズを大きくしようとした場合、 これらの呼び出しは B<EPERM> で失敗する。 ファイルサイズが変わらない場合、 小さくなる場合は、 これらの呼び出しはそのまま動作する。"
5972 #: build/C/man2/fcntl.2:1401
5974 msgid "B<F_SEAL_WRITE>"
5975 msgstr "B<F_SEAL_WRITE>"
5977 #. One or more other seals are typically used with F_SEAL_WRITE
5978 #. because, given a file with the F_SEAL_WRITE seal set, then,
5979 #. while it would no longer be possinle to (say) write zeros into
5980 #. the last 100 bytes of a file, it would still be possible
5981 #. to (say) shrink the file by 100 bytes using ftruncate(), and
5982 #. then increase the file size by 100 bytes, which would have
5983 #. the effect of replacing the last hundred bytes by zeros.
5985 #: build/C/man2/fcntl.2:1429
5986 msgid "If this seal is set, you cannot modify the contents of the file. Note that shrinking or growing the size of the file is still possible and allowed. Thus, this seal is normally used in combination with one of the other seals. This seal affects B<write>(2) and B<fallocate>(2) (only in combination with the B<FALLOC_FL_PUNCH_HOLE> flag). Those calls will fail with B<EPERM> if this seal is set. Furthermore, trying to create new shared, writable memory-mappings via B<mmap>(2) will also fail with B<EPERM>."
5987 msgstr "この seal が設定されていると、 ファイルの内容を変更できない。 ファイルのサイズを縮小したり伸張したりすることは可能で許可されている。 したがって、 この seal は通常は他の seal のいずれかと組み合わせて使用される。 この seal は B<write>(2) と B<fallocate>(2) (B<FALLOC_FL_PUNCH_HOLE> フラグとの組み合わせの場合のみ) に影響する。 この seal が設定されると、 これらの呼び出しは B<EPERM> で失敗する。 また、 B<mmap>(2) による新しい書き込み可能な共有メモリマッピングの作成も B<EPERM> で失敗する。"
5990 #: build/C/man2/fcntl.2:1444
5991 msgid "Setting B<F_SEAL_WRITE> via B<fcntl>(2) with B<F_ADD_SEALS> will fail with B<EBUSY> if any writable, shared mapping exists. Such mappings must be unmapped before you can add this seal. Furthermore, if there are any asynchronous I/O operations (B<io_submit>(2)) pending on the file, all outstanding writes will be discarded."
5992 msgstr "B<fcntl>(2) の B<F_ADD_SEALS> で B<F_SEAL_WRITE> を設定しようとした場合、 書き込み可能な共有マッピングが存在すると B<EBUSY> で失敗する。 このようなマッピングは、 この seal を追加する前にアンマップしなければならない。 また、 ファイルに対して処理待ちの非同期 I/O 操作 (B<io_submit>(2) がある場合、 処理されていない書き込みは破棄される。"
5995 #: build/C/man2/fcntl.2:1446
5996 msgid "For a successful call, the return value depends on the operation:"
5997 msgstr "成功した場合の返り値は操作の種類により違う:"
6000 #: build/C/man2/fcntl.2:1446
6006 #: build/C/man2/fcntl.2:1449
6007 msgid "The new descriptor."
6008 msgstr "新しいディスクリプターを返す。"
6011 #: build/C/man2/fcntl.2:1449
6017 #: build/C/man2/fcntl.2:1452
6018 msgid "Value of file descriptor flags."
6019 msgstr "ファイルディスクリプターフラグの値"
6022 #: build/C/man2/fcntl.2:1452
6028 #: build/C/man2/fcntl.2:1455
6029 msgid "Value of file status flags."
6030 msgstr "ファイル状態フラグの値"
6033 #: build/C/man2/fcntl.2:1455
6035 msgid "B<F_GETLEASE>"
6036 msgstr "B<F_GETLEASE>"
6039 #: build/C/man2/fcntl.2:1458
6040 msgid "Type of lease held on file descriptor."
6041 msgstr "ファイルディスクリプターに対して保持されているリースの種別を返す。"
6044 #: build/C/man2/fcntl.2:1458
6047 msgstr "B<F_GETOWN>"
6050 #: build/C/man2/fcntl.2:1461
6051 msgid "Value of descriptor owner."
6052 msgstr "ディスクリプターの所有者を返す。"
6055 #: build/C/man2/fcntl.2:1461
6058 msgstr "B<F_GETSIG>"
6061 #: build/C/man2/fcntl.2:1467
6062 msgid "Value of signal sent when read or write becomes possible, or zero for traditional B<SIGIO> behavior."
6063 msgstr "読み込みや書き出しが可能になった時に送られるシグナルの値、もしくは 伝統的な B<SIGIO> 動作の場合にはゼロを返す。"
6066 #: build/C/man2/fcntl.2:1467
6068 msgid "B<F_GETPIPE_SZ>, B<F_SETPIPE_SZ>"
6069 msgstr "B<F_GETPIPE_SZ>, B<F_SETPIPE_SZ>"
6072 #: build/C/man2/fcntl.2:1470
6073 msgid "The pipe capacity."
6077 #: build/C/man2/fcntl.2:1470
6079 msgid "B<F_GET_SEALS>"
6080 msgstr "B<F_GET_SEALS>"
6083 #: build/C/man2/fcntl.2:1475
6084 msgid "A bit mask identifying the seals that have been set for the inode referred to by I<fd>."
6085 msgstr "I<fd> が参照する inode に設定されている seal を示すビットマスク。"
6088 #: build/C/man2/fcntl.2:1475
6090 msgid "All other commands"
6094 #: build/C/man2/fcntl.2:1478
6099 #: build/C/man2/fcntl.2:1482
6100 msgid "On error, -1 is returned, and I<errno> is set appropriately."
6101 msgstr "エラーの時は -1 が返され、 I<errno> に適切な値が設定される。"
6104 #: build/C/man2/fcntl.2:1483 build/C/man3/lockf.3:122
6106 msgid "B<EACCES> or B<EAGAIN>"
6107 msgstr "B<EACCES> か B<EAGAIN>"
6110 #: build/C/man2/fcntl.2:1486
6111 msgid "Operation is prohibited by locks held by other processes."
6112 msgstr "他のプロセスが保持しているロックによって操作が禁止されている。"
6115 #: build/C/man2/fcntl.2:1486 build/C/man2/fork.2:186 build/C/man2/fork.2:191
6116 #: build/C/man2/fork.2:209
6122 #: build/C/man2/fcntl.2:1490
6123 msgid "The operation is prohibited because the file has been memory-mapped by another process."
6124 msgstr "そのファイルは他のプロセスによってメモリマップされているため、 操作が禁止されている。"
6127 #: build/C/man2/fcntl.2:1494
6128 msgid "I<fd> is not an open file descriptor"
6129 msgstr "I<fd> がオープンされたファイルディスクリプターではない。"
6132 #: build/C/man2/fcntl.2:1503
6133 msgid "I<cmd> is B<F_SETLK> or B<F_SETLKW> and the file descriptor open mode doesn't match with the type of lock requested."
6134 msgstr "I<cmd> が B<F_SETLK> または B<F_SETLKW> だったが、対象のファイルディスクリプターのオープンモードが 必要となるロックの型にマッチしていない。"
6137 #: build/C/man2/fcntl.2:1512
6138 msgid "I<cmd> is B<F_SETPIPE_SZ> and the new pipe capacity specified in I<arg> is smaller than the amount of buffer space currently used to store data in the pipe."
6139 msgstr "I<cmd> が B<F_SETPIPE_SZ> で、 I<arg> で指定されたパイプの新しい容量がパイプが、 現在パイプにあるデータを格納するのに使用されているバッファー容量よりも小さい。"
6142 #: build/C/man2/fcntl.2:1522
6143 msgid "I<cmd> is B<F_ADD_SEALS>, I<arg> includes B<F_SEAL_WRITE>, and there exists a writable, shared mapping on the file referred to by I<fd>."
6144 msgstr "I<cmd> が B<F_ADD_SEALS> で、 I<arg> に B<F_SEAL_WRITE> が含まれており、 I<fd> が参照するファイルに対する書き込み可能な共有マッピングが存在する。"
6147 #: build/C/man2/fcntl.2:1522 build/C/man3/lockf.3:142
6153 #: build/C/man2/fcntl.2:1527
6154 msgid "It was detected that the specified B<F_SETLKW> command would cause a deadlock."
6155 msgstr "指定された B<F_SETLKW> コマンドを実行した場合にはデッドロックになることが検出された。"
6158 #: build/C/man2/fcntl.2:1531
6159 msgid "I<lock> is outside your accessible address space."
6160 msgstr "I<lock> が利用可能なアドレス空間の外部にある。"
6163 #: build/C/man2/fcntl.2:1540
6164 msgid "I<cmd> is B<F_SETLKW> or B<F_OFD_SETLKW> and the operation was interrupted by a signal; see B<signal>(7)."
6165 msgstr "I<cmd> が B<F_SETLKW> か B<F_OFD_SETLKW> で、 操作がシグナルにより割り込まれた。 B<signal>(7) 参照。"
6168 #: build/C/man2/fcntl.2:1553
6169 msgid "I<cmd> is B<F_GETLK>, B<F_SETLK>, B<F_OFD_GETLK>, or B<F_OFD_SETLK>, and the operation was interrupted by a signal before the lock was checked or acquired. Most likely when locking a remote file (e.g., locking over NFS), but can sometimes happen locally."
6170 msgstr "I<cmd> が B<F_GETLK>, B<F_SETLK>, B<F_OFD_GETLK>, B<F_OFD_SETLK> で、 操作がシグナルにより割り込まれた (B<signal>(7) 参照)。 B<F_GETLK> と B<F_SETLK> の場合、ロックを確認したり取得したりする前にシグナルによって割り込まれた。 これはたいていリモートのファイルをロックする場合 (例えば NFS 上でロックする場合) に起こる。 しかしローカルでも起こる場合がある。"
6173 #: build/C/man2/fcntl.2:1558
6174 msgid "The value specified in I<cmd> is not recognized by this kernel."
6175 msgstr "カーネルが認識しない値が I<cmd> で指定された。"
6178 #: build/C/man2/fcntl.2:1566
6179 msgid "I<cmd> is B<F_ADD_SEALS> and I<arg> includes an unrecognized sealing bit."
6180 msgstr "I<cmd> が B<F_ADD_SEALS> で、 I<arg> に認識できない seal を示すビットが含まれている。"
6183 #: build/C/man2/fcntl.2:1576
6184 msgid "I<cmd> is B<F_ADD_SEALS> or B<F_GET_SEALS> and the filesystem containing the inode referred to by I<fd> does not support sealing."
6185 msgstr "I<cmd> が B<F_ADD_SEALS> か B<F_GET_SEALS> で、 I<fd> が参照している inode が格納されているファイルシステムが sealing をサポートしていない。"
6188 #: build/C/man2/fcntl.2:1588
6189 msgid "I<cmd> is B<F_DUPFD> and I<arg> is negative or is greater than the maximum allowable value (see the discussion of B<RLIMIT_NOFILE> in B<getrlimit>(2))."
6190 msgstr "I<cmd> が B<F_DUPFD> で、 I<arg> が負か、もしくは許される最大値よりも大きい (B<getrlimit>(2) の B<RLIMIT_NOFILE> の議論を参照)。"
6193 #: build/C/man2/fcntl.2:1596
6194 msgid "I<cmd> is B<F_SETSIG> and I<arg> is not an allowable signal number."
6195 msgstr "I<cmd> が B<F_SETSIG> で、 I<arg> が許可されたシグナル番号ではない。"
6198 #: build/C/man2/fcntl.2:1607
6199 msgid "I<cmd> is B<F_OFD_SETLK>, B<F_OFD_SETLKW>, or B<F_OFD_GETLK>, and I<l_pid> was not specified as zero."
6200 msgstr "I<cmd> が B<F_OFD_SETLK>, B<F_OFD_SETLKW>, B<F_OFD_GETLK> のいずれかで、 I<l_pid> に 0 が指定されなかった。"
6203 #: build/C/man2/fcntl.2:1613
6204 msgid "I<cmd> is B<F_DUPFD> and the process already has the maximum number of file descriptors open."
6205 msgstr "I<cmd> が B<F_DUPFD>で、 プロセスがすでに最大数までファイルディスクリプターをオープンしている。"
6208 #: build/C/man2/fcntl.2:1613 build/C/man2/flock.2:131 build/C/man3/lockf.3:151
6214 #: build/C/man2/fcntl.2:1617
6215 msgid "Too many segment locks open, lock table is full, or a remote locking protocol failed (e.g., locking over NFS)."
6216 msgstr "オープンされているロックの数が多過ぎて、ロックテーブルがいっぱいである。 または remote locking protocol (例えば NFS 上のロック) が失敗した。"
6219 #: build/C/man2/fcntl.2:1625
6220 msgid "B<F_NOTIFY> was specified in I<cmd>, but I<fd> does not refer to a directory."
6221 msgstr "B<F_NOTIFY> が I<cmd> に指定されたが、 I<fd> がディレクトリを参照していない。"
6224 #: build/C/man2/fcntl.2:1630
6225 msgid "Attempted to clear the B<O_APPEND> flag on a file that has the append-only attribute set."
6226 msgstr "追加専用属性が設定されたファイルの B<O_APPEND> フラグをクリアしようと試みた。"
6229 #: build/C/man2/fcntl.2:1640
6230 msgid "I<cmd> was B<F_ADD_SEALS>, but I<fd> was not open for writing or the current set of seals on the file already includes B<F_SEAL_SEAL>."
6231 msgstr "I<cmd> が B<F_ADD_SEALS> だが、 I<fd> が書き込み用にオープンされていないか、 ファイルの現在の seal の集合にすでに B<F_SEAL_SEAL> が含まれている。"
6234 #: build/C/man2/fcntl.2:1653
6235 msgid "SVr4, 4.3BSD, POSIX.1-2001. Only the operations B<F_DUPFD>, B<F_GETFD>, B<F_SETFD>, B<F_GETFL>, B<F_SETFL>, B<F_GETLK>, B<F_SETLK>, and B<F_SETLKW> are specified in POSIX.1-2001."
6237 "SVr4, 4.3BSD, POSIX.1-2001. POSIX.1-2001 で規定されている操作は、\n"
6238 "B<F_DUPFD>, B<F_GETFD>, B<F_SETFD>, B<F_GETFL>, B<F_SETFL>, \n"
6239 "B<F_GETLK>, B<F_SETLK>, B<F_SETLKW> だけである。"
6242 #: build/C/man2/fcntl.2:1665
6243 msgid "B<F_GETOWN> and B<F_SETOWN> are specified in POSIX.1-2001. (To get their definitions, define either B<_BSD_SOURCE>, or B<_XOPEN_SOURCE> with the value 500 or greater, or B<_POSIX_C_SOURCE> with the value 200809L or greater.)"
6244 msgstr "B<F_GETOWN> と B<F_SETOWN> は POSIX.1-2001 で規定されている。 (これら定義するには、 B<_BSD_SOURCE> を定義するか、 B<_XOPEN_SOURCE> を 500 以上の値で定義するか、 B<_POSIX_C_SOURCE> を 200809L 以上の値で定義するか、 のいずれが必要である。)"
6247 #: build/C/man2/fcntl.2:1673
6248 msgid "B<F_DUPFD_CLOEXEC> is specified in POSIX.1-2008. (To get this definition, define B<_POSIX_C_SOURCE> with the value 200809L or greater, or B<_XOPEN_SOURCE> with the value 700 or greater.)"
6250 "B<F_DUPFD_CLOEXEC> は POSIX.1-2008 で規定されている。\n"
6252 "B<_POSIX_C_SOURCE> を 200809L 以上の値で定義するか、\n"
6253 "B<_XOPEN_SOURCE> を 700 以上の値で定義すること。)"
6256 #. SVr4 documents additional EIO, ENOLINK and EOVERFLOW error conditions.
6258 #: build/C/man2/fcntl.2:1690
6259 msgid "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_SETPIPE_SZ>, B<F_GETPIPE_SZ>, B<F_GETSIG>, B<F_SETSIG>, B<F_NOTIFY>, B<F_GETLEASE>, and B<F_SETLEASE> are Linux-specific. (Define the B<_GNU_SOURCE> macro to obtain these definitions.)"
6261 "B<F_GETOWN_EX>, B<F_SETOWN_EX>, B<F_SETPIPE_SZ>, B<F_GETPIPE_SZ>, B<F_GETSIG>, \n"
6262 "B<F_SETSIG>, B<F_NOTIFY>, B<F_GETLEASE>, B<F_SETLEASE> は Linux 固有である\n"
6263 "(これらの定義を有効にするには B<_GNU_SOURCE> マクロを定義すること)。"
6266 #: build/C/man2/fcntl.2:1699
6267 msgid "B<F_OFD_SETLK>, B<F_OFD_SETLKW>, and B<F_OFD_GETLK> are Linux-specific (and one must define B<_GNU_SOURCE> to obtain their definitions), but work is being done to have them included in the next version of POSIX.1."
6268 msgstr "B<F_OFD_SETLK>, B<F_OFD_SETLKW>, B<F_OFD_GETLK> は Linux 固有だが (これらの定義を得るには B<_GNU_SOURCE> を定義しなければならない)、 POSIX.1 の次のバージョンに含めようという活動が進められている。"
6270 #. FIXME . Once glibc adds support, add a note about FTM requirements
6272 #: build/C/man2/fcntl.2:1705
6273 msgid "B<F_ADD_SEALS> and B<F_GET_SEALS> are Lnux-specific."
6274 msgstr "B<F_ADD_SEALS> と B<F_GET_SEALS> は Linux 固有である。"
6277 #: build/C/man2/fcntl.2:1711 build/C/man2/fcntl.2:1737
6278 msgid "The errors returned by B<dup2>(2) are different from those returned by B<F_DUPFD>."
6279 msgstr "エラーの際の返り値が B<dup2>(2) と B<F_DUPFD> では異なっている。"
6282 #: build/C/man2/fcntl.2:1711
6284 msgid "File locking"
6288 #: build/C/man2/fcntl.2:1732 build/C/man2/fcntl.2:1776
6289 msgid "The original Linux B<fcntl>() system call was not designed to handle large file offsets (in the I<flock> structure). Consequently, an B<fcntl64>() system call was added in Linux 2.4. The newer system call employs a different structure for file locking, I<flock64>, and corresponding commands, B<F_GETLK64>, B<F_SETLK64>, and B<F_SETLKW64>. However, these details can be ignored by applications using glibc, whose B<fcntl>() wrapper function transparently employs the more recent system call where it is available."
6291 "元々の Linux の B<fcntl>() システムコールは (I<flock> 構造体で) 大きな\n"
6292 "ファイルオフセットを扱えるように設計されていなかった。\n"
6293 "その結果、Linux 2.4 で B<fcntl64>() システムコールが追加された。\n"
6294 "この新しいシステムコールは、ファイルのロックに I<flock64> という別の\n"
6295 "構造体を利用し、これに対応するコマンドとして B<F_GETLK64>,\n"
6296 "B<F_SETLK64>, B<F_SETLKW64> を使用する。\n"
6297 "しかし、 glibc を使うアプリケーションではこれらの詳細を無視することが\n"
6298 "できる。 glibc の B<fcntl> のラッパー関数は新しいシステムコールが\n"
6299 "利用できる場合はそれを利用するようになっているからである。"
6302 #: build/C/man2/fcntl.2:1737
6304 msgid "Record locks"
6308 #: build/C/man2/fcntl.2:1743
6309 msgid "Since kernel 2.0, there is no interaction between the types of lock placed by B<flock>(2) and B<fcntl>()."
6310 msgstr "カーネル 2.0 以降では、 B<flock>(2) と B<fcntl>() が設定するロック種別の間に相互作用はない。"
6312 #. e.g., Solaris 8 documents this field in fcntl(2), and Irix 6.5
6313 #. documents it in fcntl(5). mtk, May 2007
6314 #. Also, FreeBSD documents it (Apr 2014).
6316 #: build/C/man2/fcntl.2:1755
6317 msgid "Several systems have more fields in I<struct flock> such as, for example, I<l_sysid>. Clearly, I<l_pid> alone is not going to be very useful if the process holding the lock may live on a different machine."
6318 msgstr "システムによっては、 I<struct flock> に上記以外のフィールドがあるものもある (例えば I<l_sysid>)。 はっきりと言えることは、ロックを保持しているプロセスが別のマシンに存在 する場合には、 I<l_pid> だけはあまり役にたたないだろうということである。"
6321 #: build/C/man2/fcntl.2:1776
6323 msgid "Record locking and NFS"
6324 msgstr "レコードロックと NFS"
6329 #. Neil Brown: With NFSv3 the failure mode is the reverse. If
6330 #. the server loses contact with a client then any lock stays in place
6331 #. indefinitely ("why can't I read my mail"... I remember it well).
6333 #. Note that this is not a firm timeout. The server runs a job
6334 #. periodically to clean out expired stateful objects, and it's likely
6335 #. that there is some time (maybe even up to another whole lease period)
6336 #. between when the timeout expires and the job actually runs. If the
6337 #. client gets a RENEW in there within that window, its lease will be
6338 #. renewed and its state preserved.
6340 #: build/C/man2/fcntl.2:1804
6341 msgid "Before Linux 3.12, if an NFSv4 client loses contact with the server for a period of time (defined as more than 90 seconds with no communication), it might lose and regain a lock without ever being aware of the fact. (The period of time after which contact is assumed lost is known as the NFSv4 leasetime. On a Linux NFS server, this can be determined by looking at I</proc/fs/nfsd/nfsv4leasetime>, which expresses the period in seconds. The default value for this file is 90.) This scenario potentially risks data corruption, since another process might acquire a lock in the intervening period and perform file I/O."
6342 msgstr "Linux 3.12 より前では、 NFSv4 クライアントが一定時間サーバーと通信がなかった場合 (90 秒間通信がない場合と定義されている)、 クライアントが気付かずにロックを失い再獲得する場合がある。 (通信がなくなったみなす時間は NFSv4 leastime と呼ばれる。 Linux NFS サーバーでは、 この値は I</proc/fs/nfsd/nfsv4leasetime> を見て決定される。 このファイルの値の単位は秒であり、 このファイルのデフォルト値は 90 である。) この状況では潜在的にデータ破壊が起こる危険性がある。 通信がなかった間に他のプロセスがロックを獲得しファイル入出力を行う場合があるからである。"
6344 #. commit ef1820f9be27b6ad158f433ab38002ab8131db4d
6345 #. commit f6de7a39c181dfb8a2c534661a53c73afb3081cd
6347 #: build/C/man2/fcntl.2:1818
6348 msgid "Since Linux 3.12, if an NFSv4 client loses contact with the server, any I/O to the file by a process which \"thinks\" it holds a lock will fail until that process closes and reopens the file. A kernel parameter, I<nfs.recover_lost_locks>, can be set to 1 to obtain the pre-3.12 behavior, whereby the client will attempt to recover lost locks when contact is reestablished with the server. Because of the attendant risk of data corruption, this parameter defaults to 0 (disabled)."
6349 msgstr "Linux 3.12 以降、 NFSv4 クライアントがサーバーと通信がなかった場合、 ロックを持っていると「思っている」プロセスがそのファイルに入出力を行うと失敗する。 そのプロセスがそのファイルをいったんクローズし再オープンするまでは入出力は失敗する。 カーネルパラメーター I<nfs.recover_lost_locks> を 1 に設定すると、 Linux 3.12 より前の動作にすることができる。 この場合、 サーバーとの通信が再確立された場合、 クライアントがは失われたロックを回復しようとする。 データ破壊が起こる危険性があるため、 このパラメーターはデフォルトでは 0 (無効) になっている。"
6352 #: build/C/man2/fcntl.2:1819
6357 #. FIXME . According to POSIX.1-2001, O_SYNC should also be modifiable
6358 #. via fcntl(2), but currently Linux does not permit this
6359 #. See http://bugzilla.kernel.org/show_bug.cgi?id=5994
6361 #: build/C/man2/fcntl.2:1831
6362 msgid "It is not possible to use B<F_SETFL> to change the state of the B<O_DSYNC> and B<O_SYNC> flags. Attempts to change the state of these flags are silently ignored."
6363 msgstr "B<F_SETFL> を使って、 フラグ B<O_DSYNC> と B<O_SYNC> の状態を変更することはできない。これらのフラグの状態を変更しようとした場合には、黙って無視される。"
6366 #: build/C/man2/fcntl.2:1831
6371 #. glibc source: sysdeps/unix/sysv/linux/i386/sysdep.h
6372 #. mtk, Dec 04: some limited testing on alpha and ia64 seems to
6373 #. indicate that ANY negative PGID value will cause F_GETOWN
6374 #. to misinterpret the return as an error. Some other architectures
6375 #. seem to have the same range check as i386.
6377 #: build/C/man2/fcntl.2:1857
6378 msgid "A limitation of the Linux system call conventions on some architectures (notably i386) means that if a (negative) process group ID to be returned by B<F_GETOWN> falls in the range -1 to -4095, then the return value is wrongly interpreted by glibc as an error in the system call; that is, the return value of B<fcntl>() will be -1, and I<errno> will contain the (positive) process group ID. The Linux-specific B<F_GETOWN_EX> operation avoids this problem. Since glibc version 2.11, glibc makes the kernel B<F_GETOWN> problem invisible by implementing B<F_GETOWN> using B<F_GETOWN_EX>."
6380 "いくつかのアーキテクチャ (特に i386) における Linux システムコールの慣習\n"
6382 "B<F_GETOWN> が返す (負の) プロセスグループID が -1 から -4095 の範囲に入った場合、\n"
6383 "glibc はこの返り値をシステムコールでエラーが起こったと間違って解釈してしまう。\n"
6384 "つまり、 B<fcntl>() の返り値は -1 となり、 I<errno> には (正の) プロセスグループID\n"
6385 "が設定されることになる。Linux 固有の B<F_GETOWN_EX> ではこの問題を回避できる。\n"
6386 "glibc バージョン 2.11 以降では、glibc では B<F_GETOWN_EX> を使って\n"
6387 "B<F_GETOWN> を実装することで、カーネルの B<F_GETOWN> の問題を見えないようにしている。"
6390 #: build/C/man2/fcntl.2:1857
6396 #: build/C/man2/fcntl.2:1875
6397 msgid "In Linux 2.4 and earlier, there is bug that can occur when an unprivileged process uses B<F_SETOWN> to specify the owner of a socket file descriptor as a process (group) other than the caller. In this case, B<fcntl>() can return -1 with I<errno> set to B<EPERM>, even when the owner process (group) is one that the caller has permission to send signals to. Despite this error return, the file descriptor owner is set, and signals will be sent to the owner."
6398 msgstr "Linux 2.4 以前では、非特権プロセスが B<F_SETOWN> を使って、ソケットのファイルディスクリプターの所有者に 呼び出し元以外のプロセス (やプロセスグループ) を指定すると 発生するバグがある。この場合、 呼び出し元が所有者として指定したプロセス (やプロセスグループ) に シグナルを送る許可を持っていたとしても、 B<fcntl>() が -1 を返し I<errno> に B<EPERM> を設定することがある。 このエラーが返ったにもかかわらず、ファイルディスクリプターの所有者 は設定され、シグナルはその所有者に送られる。"
6401 #: build/C/man2/fcntl.2:1875
6403 msgid "Deadlock detection"
6407 #: build/C/man2/fcntl.2:1894
6408 msgid "The deadlock-detection algorithm employed by the kernel when dealing with B<F_SETLKW> requests can yield both false negatives (failures to detect deadlocks, leaving a set of deadlocked processes blocked indefinitely) and false positives (B<EDEADLK> errors when there is no deadlock). For example, the kernel limits the lock depth of its dependency search to 10 steps, meaning that circular deadlock chains that exceed that size will not be detected. In addition, the kernel may falsely indicate a deadlock when two or more processes created using the B<clone>(2) B<CLONE_FILES> flag place locks that appear (to the kernel) to conflict."
6409 msgstr "B<F_SETLKW> 要求を処理する際にカーネルが使用するデッドロック検出アルゴリズムは、 false negative になる場合 (デッドロックを検出できず、 デッドロックになったプロセスは無限に停止する) も false positive になる場合 (デッドロックがない場合でも B<EDEADLK> エラーとなる) もある。 例えば、 カーネルは依存関係の検索を行うロックの深さを 10 ステップに限定しているが、 このためこれよりも長い循環するデッドロックは検出されない。 また、 B<clone>(2) の B<CLONE_FILES> フラグを使って作成された 2 つ以上のプロセスが (カーネルにとって) 衝突するように見えるロックを適用した場合、 カーネルはデッドロックを誤って検出する。"
6411 #. http://marc.info/?l=linux-kernel&m=119013491707153&w=2
6412 #. Reconfirmed by Jeff Layton
6413 #. From: Jeff Layton <jlayton <at> redhat.com>
6414 #. Subject: Re: Status of fcntl() mandatory locking
6415 #. Newsgroups: gmane.linux.file-systems
6416 #. Date: 2014-04-28 10:07:57 GMT
6417 #. http://thread.gmane.org/gmane.linux.file-systems/84481/focus=84518
6419 #: build/C/man2/fcntl.2:1916
6420 msgid "The Linux implementation of mandatory locking is subject to race conditions which render it unreliable: a B<write>(2) call that overlaps with a lock may modify data after the mandatory lock is acquired; a B<read>(2) call that overlaps with a lock may detect changes to data that were made only after a write lock was acquired. Similar races exist between mandatory locks and B<mmap>(2). It is therefore inadvisable to rely on mandatory locking."
6421 msgstr "Linux の強制ロックの実装は、 競合条件下で強制ロックが不完全になるような場合がある。 ロックと重なって実行された B<write>(2) の呼び出しは強制ロックが獲得された後にもデータを変更することができる。 ロックと重なって実行された B<read>(2) の呼び出しは強制ロックが獲得された後になって行われたデータの変更を 検出することができる。 同様の競合条件が強制ロックと B<mmap>(2) の間にも存在する。それゆえ、強制ロックに頼るのはお薦めできない。"
6424 #: build/C/man2/fcntl.2:1924
6425 msgid "B<dup2>(2), B<flock>(2), B<open>(2), B<socket>(2), B<lockf>(3), B<capabilities>(7), B<feature_test_macros>(7)"
6426 msgstr "B<dup2>(2), B<flock>(2), B<open>(2), B<socket>(2), B<lockf>(3), B<capabilities>(7), B<feature_test_macros>(7)"
6429 #: build/C/man2/fcntl.2:1937
6430 msgid "I<locks.txt>, I<mandatory-locking.txt>, and I<dnotify.txt> in the Linux kernel source directory I<Documentation/filesystems/> (on older kernels, these files are directly under the I<Documentation/> directory, and I<mandatory-locking.txt> is called I<mandatory.txt>)"
6431 msgstr "Linux カーネルソースの I<Documentation/filesystems/> ディレクトリ内の I<locks.txt>, I<mandatory-locking.txt>, I<dnotify.txt> (以前のカーネルでは、これらのファイルは I<Documentation/> ディレクトリ直下にあり、 I<mandatory-locking.txt> は I<mandatory.txt> という名前であった)"
6434 #: build/C/man3/fexecve.3:25
6440 #: build/C/man3/fexecve.3:28
6441 msgid "fexecve - execute program specified via file descriptor"
6442 msgstr "fexecve - ファイルディスクリプターで指定されたプログラムを実行する"
6445 #: build/C/man3/fexecve.3:33
6447 msgid "B<int fexecve(int >I<fd>B<, char *const >I<argv>B<[], char *const >I<envp>B<[]);>\n"
6448 msgstr "B<int fexecve(int >I<fd>B<, char *const >I<argv>B<[], char *const >I<envp>B<[]);>\n"
6451 #: build/C/man3/fexecve.3:41
6452 msgid "B<fexecve>():"
6453 msgstr "B<fexecve>():"
6456 #: build/C/man3/fexecve.3:50 build/C/man3/getcwd.3:54
6458 msgstr "_GNU_SOURCE"
6460 #. POSIX.1-2008 specifies the O_EXEC flag for open as an alternative,
6461 #. but Linux doesn't support this flag yet.
6463 #: build/C/man3/fexecve.3:67
6464 msgid "B<fexecve>() performs the same task as B<execve>(2), with the difference that the file to be executed is specified via a file descriptor, I<fd>, rather than via a pathname. The file descriptor I<fd> must be opened read-only, and the caller must have permission to execute the file that it refers to."
6465 msgstr "B<fexecve>() は B<execve>(2) と同じ作業を行う。違うのは、 実行するファイルを、パス名ではなく、 ファイルディスクリプター I<fd> を用いて指定する点である。 ファイルディスクリプター I<fd> は、読み込み専用でオープンされていなければならず、 呼び出し元はファイルディスクリプターが参照するファイルに対する 実行許可を持っていなければならない。"
6468 #: build/C/man3/fexecve.3:74
6469 msgid "A successful call to B<fexecve>() never returns. On error, the function does return, with a result value of -1, and I<errno> is set appropriately."
6470 msgstr "B<fexecve>() は呼び出しに成功した場合、戻ることはない。 エラーの場合、返り値 -1 で関数が返り、 I<errno> が適切に設定される。"
6473 #: build/C/man3/fexecve.3:78
6474 msgid "Errors are as for B<execve>(2), with the following additions:"
6475 msgstr "エラーは B<execve>(2) と同じだが、以下のエラーが追加になっている:"
6478 #: build/C/man3/fexecve.3:86
6479 msgid "I<fd> is not a valid file descriptor, or I<argv> is NULL, or I<envp> is NULL."
6480 msgstr "I<fd> が有効なファイルディスクリプターでない。または I<argv> が NULL である。または I<envp> が NULL である。"
6483 #: build/C/man3/fexecve.3:91
6484 msgid "The I</proc> filesystem could not be accessed."
6485 msgstr "I</proc> ファイルシステムにアクセスできなかった。"
6488 #: build/C/man3/fexecve.3:94
6489 msgid "B<fexecve>() is implemented since glibc 2.3.2."
6490 msgstr "B<fexecve>() は glibc 2.3.2 以降で実装されている。"
6493 #: build/C/man3/fexecve.3:99
6494 msgid "POSIX.1-2008. This function is not specified in POSIX.1-2001, and is not widely available on other systems. It is specified in POSIX.1-2008."
6495 msgstr "POSIX.1-2008. この関数は POSIX.1-2001 では規定されておらず、 他のシステムで広く利用できるわけではない。 POSIX.1-2008 で規定されている。"
6498 #. With the addition of the execveat(2), fexecve() can be implemented
6499 #. even where /proc is unavailable. Review future glibc releases to
6500 #. see if the implementation is changed to use execveat(2).
6502 #: build/C/man3/fexecve.3:111
6503 msgid "On Linux, B<fexecve>() is implemented using the B<proc>(5) filesystem, so I</proc> needs to be mounted and available at the time of the call."
6504 msgstr "Linux では、 B<fexecve>() は B<proc>(5) ファイルシステムを使って実装されている。 そのため、この関数を呼び出す時点では I</proc> がマウントされて利用可能となっている必要がある。"
6507 #: build/C/man3/fexecve.3:128
6508 msgid "The idea behind B<fexecve>() is to allow the caller to verify (checksum) the contents of an executable before executing it. Simply opening the file, checksumming the contents, and then doing an B<execve>(2) would not suffice, since, between the two steps, the filename, or a directory prefix of the pathname, could have been exchanged (by, for example, modifying the target of a symbolic link). B<fexecve>() does not mitigate the problem that the I<contents> of a file could be changed between the checksumming and the call to B<fexecve>(); for that, the solution is to ensure that the permissions on the file prevent it from being modified by malicious users."
6509 msgstr "B<fexecve>() の裏にある考えは、呼び出し元が、ファイルを実行する前に実行ファイルの内容を検査 (チェックサムを確認) できるようにすることである。単に、ファイルをオープンして内容のチェックサムを検査し、それから B<execve>(2) を行うのは十分ではない。なぜなら、2 つのステップの間で、ファイル名や、パス名のディレクトリの前の方が入れ換えられる可能性があるからだ (例えば、シンボリックリンクのリンク先を変更するなど)。B<fexecve>() は、チェックサムの検査と B<fexecve>() の呼び出しの間で、ファイルのI<内容>を変更できる可能性があるという問題への対策にはならない。この問題に対する対応策は、確実に、ファイルのアクセス許可を設定し、悪意のあるユーザーがファイルを変更できないようにすることである。"
6512 #: build/C/man3/fexecve.3:146
6513 msgid "The natural idiom when using B<fexecve>() is to set the close-on-exec flag on I<fd>, so that the file descriptor does not leak through to the program that is executed. This approach is natural for two reasons. First, it prevents file descriptors being consumed unnecessarily. (The executed program normally has no need of a file descriptor that refers to the program itself.) Second, if B<fexecve>() is used recursively, employing the close-on-exec flag prevents the file descriptor exhaustion that would result from the fact that each step in the recursion would cause one more file descriptor to be passed to the new program. (But see BUGS.)"
6514 msgstr "B<fexecve>() を使用する際の理にかなった方法は、 I<fd> に close-on-exec フラグをセットし、 実行するプログラムを通じてそのファイルディスクリプターが外部にもれないようにすることである。 この方法は 2 つの理由から理にかなっている。 1 つ目は、 これにより不必要にファイルディスクリプターが消費されるのを防ぐことができる (実行されるプログラムは普通プログラム自身が参照するファイルを参照する必要はない)。 2 つ目は、 B<fexecve>() が再帰的に使用された場合、 close-on-exec フラグを利用することで、 再帰の各ステップで新しいプログラムに一つ余計にファイルディスクリプターが渡されることによる、 ファイルディスクリプターの枯渇を防ぐことができる (ただし「バグ」を参照)。"
6517 #: build/C/man3/fexecve.3:165
6518 msgid "If I<fd> refers to a script (i.e., it is an executable text file that names a script interpreter with a first line that begins with the characters I<#!>) and the close-on-exec flag has been set for I<fd>, then B<fexecve>() fails with the error B<ENOENT>. This error occurs because, by the time the script interpreter is executed, I<fd> has already been closed because of the close-on-exec flag. Thus, the close-on-exec flag can't be set on I<fd> if it refers to a script, leading to the problems described in NOTES."
6519 msgstr "I<fd> がスクリプトを参照していて (つまり、 最初の行に文字 I<#!> で始まるスクリプトインタープリターの指示がある実行テキストファイルである)、 I<fd> に close-on-exec フラグがセットされていた場合、 B<fexecve>() はエラー B<ENOENT> で失敗する。 このエラーが起こるのは、 スクリプトインタープリターが実行される時点までに、 close-on-exec フラグにより I<fd> がすでにクローズされてしまっているからである。 そのため、 スクリプトを参照する場合には、 close-on-exec フラグを I<fd> にセットすることはできず、 「注意」の節で説明されている問題が起こり得る。"
6522 #: build/C/man3/fexecve.3:168
6523 msgid "B<execve>(2), B<execveat>(2)"
6524 msgstr "B<execve>(2), B<execveat>(2)"
6527 #: build/C/man2/flock.2:35
6533 #: build/C/man2/flock.2:35 build/C/man2/uname.2:27
6539 #: build/C/man2/flock.2:38
6540 msgid "flock - apply or remove an advisory lock on an open file"
6541 msgstr "flock - オープンされたファイルに対するアドバイザリロックの適用、解除を行う"
6544 #: build/C/man2/flock.2:40
6545 msgid "B<#include E<lt>sys/file.hE<gt>>"
6546 msgstr "B<#include E<lt>sys/file.hE<gt>>"
6549 #: build/C/man2/flock.2:42
6550 msgid "B<int flock(int >I<fd>B<, int >I<operation>B<);>"
6551 msgstr "B<int flock(int >I<fd>B<, int >I<operation>B<);>"
6554 #: build/C/man2/flock.2:48
6555 msgid "Apply or remove an advisory lock on the open file specified by I<fd>. The argument I<operation> is one of the following:"
6556 msgstr "オープンされたファイルにアドバイザリロック (advisory lock) の適用 や解除を行う。 ファイルは I<fd> で指定する。引き数 I<operation> には以下のいずれか一つを指定する:"
6559 #: build/C/man2/flock.2:49
6565 #: build/C/man2/flock.2:54
6566 msgid "Place a shared lock. More than one process may hold a shared lock for a given file at a given time."
6567 msgstr "共有ロックを適用する。 指定したファイルに対して、 一つ以上のプロセスが同時に共有ロックを保持することができる。"
6570 #: build/C/man2/flock.2:54
6576 #: build/C/man2/flock.2:59
6577 msgid "Place an exclusive lock. Only one process may hold an exclusive lock for a given file at a given time."
6578 msgstr "排他ロックを適用する。 指定したファイルに対して、 ただ一つのプロセスだけが同時に排他ロックを保持することができる。"
6581 #: build/C/man2/flock.2:59
6587 #: build/C/man2/flock.2:62
6588 msgid "Remove an existing lock held by this process."
6589 msgstr "このプロセスが保持している既存のロックを解除する。"
6592 #: build/C/man2/flock.2:71
6593 msgid "A call to B<flock>() may block if an incompatible lock is held by another process. To make a nonblocking request, include B<LOCK_NB> (by ORing) with any of the above operations."
6594 msgstr "B<flock>() を呼び出したときに、指定したロック種別と異なるロックが別プロセスによって 保持されていると、 B<flock>() は停止 (block) されることがある。 非停止 (nonblocking) タイプの要求を行うためには、 上記の操作 (operation) に B<LOCK_NB> を論理和の形で指定する。"
6597 #: build/C/man2/flock.2:73
6598 msgid "A single file may not simultaneously have both shared and exclusive locks."
6599 msgstr "一つのファイルに共有ロックと排他ロックを同時に設定することはできない。"
6602 #: build/C/man2/flock.2:88
6603 msgid "Locks created by B<flock>() are associated with an open file description (see B<open>(2)). This means that duplicate file descriptors (created by, for example, B<fork>(2) or B<dup>(2)) refer to the same lock, and this lock may be modified or released using any of these descriptors. Furthermore, the lock is released either by an explicit B<LOCK_UN> operation on any of these duplicate descriptors, or when all such descriptors have been closed."
6604 msgstr "B<flock>() によって作られるロックは、 オープンファイル記述 (open file description) (B<open>(2) 参照) と関連付けられる。 したがって、ファイルディスクリプターの複製 (B<fork>(2) や B<dup>(2) などにより作成される) は同じロックを参照し、 これらのファイルディスクリプターのどれを使っても このロックを変更したり解放したりできる。 また、ロックの解放は、 上記の複数のファイルディスクリプターのいずれかに対して 明示的に B<LOCK_UN> 操作を指示した場合か、これらのファイルディスクリプターがすべて 閉じられた場合に行われる。"
6607 #: build/C/man2/flock.2:97
6608 msgid "If a process uses B<open>(2) (or similar) to obtain more than one descriptor for the same file, these descriptors are treated independently by B<flock>(). An attempt to lock the file using one of these file descriptors may be denied by a lock that the calling process has already placed via another descriptor."
6609 msgstr "あるプロセスが B<open>(2) (もしくは同様の方法) を使って同じファイルに対して 複数のディスクリプターを取得した場合、 B<flock>() はこれら複数のディスクリプターを各々独立のものとして扱う。 これらのファイルディスクリプターの一つを使ってファイルをロックしようと した際、そのロック要求は、呼び出し元のプロセスがそのファイルの別の ディスクリプター経由ですでに設定しているロックによって拒否される場合がある。"
6612 #: build/C/man2/flock.2:104
6613 msgid "A process may hold only one type of lock (shared or exclusive) on a file. Subsequent B<flock>() calls on an already locked file will convert an existing lock to the new lock mode."
6614 msgstr "一つのプロセスは、一つのファイルに対して (共有ロックと排他ロックのうち) いずれか一種類のロックしか設定できない。 既にロックされたファイルに対して B<flock>() を呼び出すと、既存のロックを新しいロックモードに変更することになる。"
6617 #: build/C/man2/flock.2:109
6618 msgid "Locks created by B<flock>() are preserved across an B<execve>(2)."
6619 msgstr "B<flock>() により作成されたロックは B<execve>(2) の前後で保存される。"
6622 #: build/C/man2/flock.2:112
6623 msgid "A shared or exclusive lock can be placed on a file regardless of the mode in which the file was opened."
6624 msgstr "共有ロックも排他ロックも、ファイルがどのモードでオープンされたかに 関係なく適用することができる。"
6627 #: build/C/man2/flock.2:122
6628 msgid "I<fd> is not an open file descriptor."
6629 msgstr "I<fd> がオープンされたファイルディスクリプターではない。"
6632 #: build/C/man2/flock.2:127
6633 msgid "While waiting to acquire a lock, the call was interrupted by delivery of a signal caught by a handler; see B<signal>(7)."
6634 msgstr "ロックの獲得を待っている間に、ハンドラにより捕捉されたシグナルを 受信し、 B<flock>() が中断された。 B<signal>(7) 参照。"
6637 #: build/C/man2/flock.2:131
6638 msgid "I<operation> is invalid."
6639 msgstr "I<oepration> が無効である。"
6642 #: build/C/man2/flock.2:134
6643 msgid "The kernel ran out of memory for allocating lock records."
6644 msgstr "ロックレコードを割り当てるためのメモリが不足している。"
6647 #: build/C/man2/flock.2:134
6649 msgid "B<EWOULDBLOCK>"
6650 msgstr "B<EWOULDBLOCK>"
6653 #: build/C/man2/flock.2:139
6654 msgid "The file is locked and the B<LOCK_NB> flag was selected."
6655 msgstr "指定したファイルがロックされており、 B<LOCK_NB> フラグが指定されている。"
6658 #: build/C/man2/flock.2:148
6659 msgid "4.4BSD (the B<flock>() call first appeared in 4.2BSD). A version of B<flock>(), possibly implemented in terms of B<fcntl>(2), appears on most UNIX systems."
6660 msgstr "4.4BSD (B<flock>() コールは 4.2BSD で最初に登場した)。 B<fcntl>(2) で実装されているものなどを含めると、 B<flock>() の機能はほとんどの UNIX システムで実装されている。"
6662 #. E.g., according to the flock(2) man page, FreeBSD since at least 5.3
6664 #: build/C/man2/flock.2:171
6665 msgid "Since kernel 2.0, B<flock>() is implemented as a system call in its own right rather than being emulated in the GNU C library as a call to B<fcntl>(2). With this implementation, there is no interaction between the types of lock placed by B<flock>() and B<fcntl>(2), and B<flock>() does not detect deadlock. (Note, however, that on some systems, such as the modern BSDs, B<flock>() and B<fcntl>(2) locks I<do> interact with one another.)"
6666 msgstr "kernel 2.0 以降では、 B<flock>() は、GNU C ライブラリでの B<fcntl>(2) を呼び出してのエミュレーションではなく、 それ自体がシステムコールとして実装されている。 この実装では、 B<flock>() と B<fcntl>(2) で適用されるロックの種別には相互作用がなくなり、 B<flock>() がデッドロックを検出しなくなる。 (ただし、最近の BSD などいくつかのシステムでは、 B<flock>() と B<fcntl>(2) ロックが互いに影響することが「ある」という点に注意すること。)"
6668 #. commit 5eebde23223aeb0ad2d9e3be6590ff8bbfab0fc2
6670 #: build/C/man2/flock.2:202
6671 msgid "In Linux kernels up to 2.6.11, B<flock>() does not lock files over NFS (i.e., the scope of locks was limited to the local system). Instead, one could use B<fcntl>(2) byte-range locking, which does work over NFS, given a sufficiently recent version of Linux and a server which supports locking. Since Linux 2.6.12, NFS clients support B<flock>() locks by emulating them as byte-range locks on the entire file. This means that B<fcntl>(2) and B<flock>() locks I<do> interact with one another over NFS. Since Linux 2.6.37, the kernel supports a compatibility mode that allows B<flock>() locks (and also B<fcntl>(2) byte region locks) to be treated as local; see the discussion of the I<local_lock> option in B<nfs>(5)."
6672 msgstr "バージョン 2.6.11 以前の Linux カーネルでは、 B<flock>() は NFS 上のファイルのロックを行わない (つまり、ロックの対象はローカルシステムに限定されていた)。 その代わり、十分に最近のバージョンの Linux とロックをサポートするサーバーであれば、 B<fcntl>(2) のバイト範囲ロックを使うことができた。 B<fcntl>(2) のバイト範囲ロックは NFS 上で動作する。 Linux 2.6.12 以降では、NFS クライアントは、 ファイル全体に対するバイト範囲ロックでエミュレートすることで、 B<flock>() ロックをサポートしている。 これは、B<fcntl>(2) と B<flock>() ロックが NFS 上では互いに影響しあうことを意味する。 Linux 2.6.37 以降では、 B<flock>() ロック (と B<fcntl>(2) のバイト範囲ロック) をローカルシステムに対するものとして扱う互換性モードが、 カーネルでサポートされている。 B<nfs>(5) の I<local_lock> オプションの議論を参照。"
6675 #: build/C/man2/flock.2:208
6676 msgid "B<flock>() places advisory locks only; given suitable permissions on a file, a process is free to ignore the use of B<flock>() and perform I/O on the file."
6677 msgstr "B<flock>() アドバイザリロックだけを適用する。したがって、ファイルに適切なアクセス権を 付与していれば、プロセスは B<flock>() の使用に無視して、ファイルへの入出力を行うことができる。"
6680 #: build/C/man2/flock.2:221
6681 msgid "B<flock>() and B<fcntl>(2) locks have different semantics with respect to forked processes and B<dup>(2). On systems that implement B<flock>() using B<fcntl>(2), the semantics of B<flock>() will be different from those described in this manual page."
6682 msgstr "B<flock>() と B<fcntl>(2) は fork されたプロセスと B<dup>(2) で違った動作をする。 B<flock>() を B<fcntl>(2) を使って実装しているシステムでは、 B<flock>() の動作はこのマニュアルページに記載されているものとは違うだろう。"
6684 #. Kernel 2.5.21 changed things a little: during lock conversion
6685 #. it is now the highest priority process that will get the lock -- mtk
6687 #: build/C/man2/flock.2:234
6688 msgid "Converting a lock (shared to exclusive, or vice versa) is not guaranteed to be atomic: the existing lock is first removed, and then a new lock is established. Between these two steps, a pending lock request by another process may be granted, with the result that the conversion either blocks, or fails if B<LOCK_NB> was specified. (This is the original BSD behavior, and occurs on many other implementations.)"
6689 msgstr "ロックの変換 (共有ロックから排他ロックへ、もしくはその反対) がアトミックに 行われることは保証されていない: 既存のロックがまず削除され、それから新しい ロックが設定される。この 2つのステップの間に、他のプロセスからの処理待ちの ロック要求が認められるかもしれず、結果として変換は停止 (block) したり、 (B<LOCK_NB> が指定された場合には) 失敗したりする。 (これは元々の BSD の動作であり、多くの他の実装でも起こる。)"
6692 #: build/C/man2/flock.2:243
6693 msgid "B<flock>(1), B<close>(2), B<dup>(2), B<execve>(2), B<fcntl>(2), B<fork>(2), B<open>(2), B<lockf>(3)"
6694 msgstr "B<flock>(1), B<close>(2), B<dup>(2), B<execve>(2), B<fcntl>(2), B<fork>(2), B<open>(2), B<lockf>(3)"
6697 #: build/C/man2/flock.2:248
6698 msgid "I<Documentation/filesystems/locks.txt> in the Linux kernel source tree (I<Documentation/locks.txt> in older kernels)"
6699 msgstr "Linux カーネルソース内の I<Documentation/filesystems/locks.txt> (以前のカーネルでは I<Documentation/locks.txt>)"
6702 #: build/C/man2/fork.2:39
6708 #: build/C/man2/fork.2:39 build/C/man3/fpathconf.3:41 build/C/man2/swapon.2:42
6714 #: build/C/man2/fork.2:42
6715 msgid "fork - create a child process"
6716 msgstr "fork - 子プロセスを生成する"
6719 #: build/C/man2/fork.2:46
6720 msgid "B<pid_t fork(void);>"
6721 msgstr "B<pid_t fork(void);>"
6724 #: build/C/man2/fork.2:52
6725 msgid "B<fork>() creates a new process by duplicating the calling process. The new process, referred to as the I<child>, is an exact duplicate of the calling process, referred to as the I<parent>, except for the following points:"
6726 msgstr "B<fork>() は呼び出し元プロセスを複製して新しいプロセスを生成する。 I<child> で参照される新しいプロセスは、以下の点を除き、 I<parent> で参照される呼び出し元プロセスの完全な複製である:"
6729 #: build/C/man2/fork.2:56
6730 msgid "The child has its own unique process ID, and this PID does not match the ID of any existing process group (B<setpgid>(2))."
6731 msgstr "子プロセスは独自のプロセス ID を持ち、 この PID は既存のどのプロセスグループ (B<setpgid>(2)) の ID とも一致しない。"
6734 #: build/C/man2/fork.2:58
6735 msgid "The child's parent process ID is the same as the parent's process ID."
6736 msgstr "子プロセスの親プロセス ID は、親プロセスのプロセス ID と同じである。"
6739 #: build/C/man2/fork.2:62
6740 msgid "The child does not inherit its parent's memory locks (B<mlock>(2), B<mlockall>(2))."
6741 msgstr "子プロセスは親プロセスのメモリロック (B<mlock>(2), B<mlockall>(2)) を引き継がない。"
6744 #: build/C/man2/fork.2:68
6745 msgid "Process resource utilizations (B<getrusage>(2)) and CPU time counters (B<times>(2)) are reset to zero in the child."
6746 msgstr "プロセスの資源利用量 (B<getrusage>(2)) と CPU タイムカウンタ (B<times>(2)) が、子プロセスでは 0 にリセットされる。"
6749 #: build/C/man2/fork.2:71
6750 msgid "The child's set of pending signals is initially empty (B<sigpending>(2))."
6751 msgstr "子プロセスの処理待ちのシグナルの集合 (B<sigpending>(2)) は、初期状態では空になる。"
6754 #: build/C/man2/fork.2:74
6755 msgid "The child does not inherit semaphore adjustments from its parent (B<semop>(2))."
6756 msgstr "子プロセスは親プロセスからセマフォ調整 (B<semop>(2)) を引き継がない。"
6759 #: build/C/man2/fork.2:82
6760 msgid "The child does not inherit process-associated record locks from its parent (B<fcntl>(2)). (On the other hand, it does inherit B<fcntl>(2) open file description locks and B<flock>(2) locks from its parent.)"
6761 msgstr "子プロセスは親プロセスからプロセスに関連付けられたレコードロックを引き継がない (B<fcntl>(2))。 (一方、子プロセスは親プロセスから B<fcntl>(2) オープンファイル記述ロックと B<flock>(2) ロックを引き継ぐ。)"
6764 #: build/C/man2/fork.2:87
6765 msgid "The child does not inherit timers from its parent (B<setitimer>(2), B<alarm>(2), B<timer_create>(2))."
6766 msgstr "子プロセスは親プロセスからタイマー (B<setitimer>(2), B<alarm>(2), B<timer_create>(2)) を引き継がない。"
6769 #: build/C/man2/fork.2:94
6770 msgid "The child does not inherit outstanding asynchronous I/O operations from its parent (B<aio_read>(3), B<aio_write>(3)), nor does it inherit any asynchronous I/O contexts from its parent (see B<io_setup>(2))."
6771 msgstr "子プロセスは親プロセスから主だった非同期 I/O 操作を引き継がない (B<aio_read>(3), B<aio_write>(3) 参照)。 また、親プロセスから非同期 I/O コンテキストを引き継がない (B<io_setup>(2) 参照)。"
6774 #: build/C/man2/fork.2:99
6775 msgid "The process attributes in the preceding list are all specified in POSIX.1-2001. The parent and child also differ with respect to the following Linux-specific process attributes:"
6776 msgstr "上記のリストにあるプロセス属性は、POSIX.1-2001 で全て指定されている。 親プロセスと子プロセスは、以下の Linux 固有のプロセス属性も異なる:"
6779 #: build/C/man2/fork.2:106
6780 msgid "The child does not inherit directory change notifications (dnotify) from its parent (see the description of B<F_NOTIFY> in B<fcntl>(2))."
6781 msgstr "子プロセスは親プロセスからディレクトリ変更通知 (dnotify) (B<fcntl>(2) における B<F_NOTIFY> の説明を参照) を引き継がない。"
6784 #: build/C/man2/fork.2:112
6785 msgid "The B<prctl>(2) B<PR_SET_PDEATHSIG> setting is reset so that the child does not receive a signal when its parent terminates."
6786 msgstr "B<prctl>(2) の B<PR_SET_PDEATHSIG> の設定がリセットされ、子プロセスは親プロセスが終了したときに シグナルを受信しない。"
6789 #: build/C/man2/fork.2:119
6790 msgid "The default timer slack value is set to the parent's current timer slack value. See the description of B<PR_SET_TIMERSLACK> in B<prctl>(2)."
6791 msgstr "timer slack value のデフォルト値には、親プロセスの現在の timer slack value が設定される。 B<prctl>(2) の B<PR_SET_TIMERSLACK> の説明を参照。"
6794 #: build/C/man2/fork.2:125
6795 msgid "Memory mappings that have been marked with the B<madvise>(2) B<MADV_DONTFORK> flag are not inherited across a B<fork>()."
6796 msgstr "B<madvise>(2) の B<MADV_DONTFORK> フラグでマークされたメモリマッピングは、 B<fork>() によって引き継がれない。"
6799 #: build/C/man2/fork.2:130
6800 msgid "The termination signal of the child is always B<SIGCHLD> (see B<clone>(2))."
6801 msgstr "子プロセスの終了シグナルは常に B<SIGCHLD> である (B<clone>(2) を参照)。"
6804 #: build/C/man2/fork.2:136
6805 msgid "The port access permission bits set by B<ioperm>(2) are not inherited by the child; the child must turn on any bits that it requires using B<ioperm>(2)."
6806 msgstr "B<ioperm>(2) で設定されるポートアクセス許可ビットは、子プロセスには継承されない。子プロセスでは、 B<ioperm>(2) を使って必要なビットをセットしなければならない。"
6809 #: build/C/man2/fork.2:147
6810 msgid "The child process is created with a single thread\\(emthe one that called B<fork>(). The entire virtual address space of the parent is replicated in the child, including the states of mutexes, condition variables, and other pthreads objects; the use of B<pthread_atfork>(3) may be helpful for dealing with problems that this can cause."
6811 msgstr "子プロセスはシングルスレッドで生成される。つまり、 B<fork>() を呼び出したスレッドとなる。 親プロセスの仮想アドレス空間全体が子プロセスに複製される。 これにはミューテックス (mutex) の状態・条件変数・ pthread オブジェクトが含まれる。 これが引き起こす問題を扱うには、 B<pthread_atfork>(3) を使うと良いだろう。"
6814 #: build/C/man2/fork.2:161
6815 msgid "The child inherits copies of the parent's set of open file descriptors. Each file descriptor in the child refers to the same open file description (see B<open>(2)) as the corresponding file descriptor in the parent. This means that the two descriptors share open file status flags, current file offset, and signal-driven I/O attributes (see the description of B<F_SETOWN> and B<F_SETSIG> in B<fcntl>(2))."
6816 msgstr "子プロセスは親プロセスが持つ オープンファイルディスクリプターの集合のコピーを引き継ぐ。 子プロセスの各ファイルディスクリプターは、 親プロセスのファイルディスクリプターに対応する 同じオープンファイル記述 (file description) を参照する (B<open>(2) を参照)。 これは 2 つのディスクリプターが、ファイル状態フラグ・ 現在のファイルオフセット、シグナル駆動 (signal-driven) I/O 属性 (B<fcntl>(2) における B<F_SETOWN>, B<F_SETSIG> の説明を参照) を共有することを意味する。"
6819 #: build/C/man2/fork.2:170
6820 msgid "The child inherits copies of the parent's set of open message queue descriptors (see B<mq_overview>(7)). Each descriptor in the child refers to the same open message queue description as the corresponding descriptor in the parent. This means that the two descriptors share the same flags (I<mq_flags>)."
6821 msgstr "子プロセスは親プロセスが持つオープンメッセージキューディスクリプター (B<mq_overview>(7) を参照) の集合のコピーを引き継ぐ。 子プロセスの各ディスクリプターは、 親プロセスのディスクリプターに対応する 同じオープンメッセージキューディスクリプターを参照する。 これは 2 つのディスクリプターが同じフラグ (I<mq_flags>) を共有することを意味する。"
6824 #: build/C/man2/fork.2:178
6825 msgid "The child inherits copies of the parent's set of open directory streams (see B<opendir>(3)). POSIX.1-2001 says that the corresponding directory streams in the parent and child I<may> share the directory stream positioning; on Linux/glibc they do not."
6826 msgstr "子プロセスは、親プロセスのオープン済みのディレクトリストリームの集合 (B<opendir>(3) 参照) のコピーを継承する。 POSIX.1-2001 では、親プロセスと子プロセス間の対応するディレクトリストリーム はディレクトリストリームの位置 (positioning) を共有してもよいとされている。 Linux/glibc ではディレクトリストリームの位置の共有は行われていない。"
6829 #: build/C/man2/fork.2:185
6830 msgid "On success, the PID of the child process is returned in the parent, and 0 is returned in the child. On failure, -1 is returned in the parent, no child process is created, and I<errno> is set appropriately."
6831 msgstr "成功した場合、親プロセスには子プロセスの PID が返され、 子プロセスには 0 が返される。 失敗した場合、親プロセスに -1 が返され、子プロセスは生成されず、 I<errno> が適切に設定される。"
6834 #: build/C/man2/fork.2:191
6835 msgid "B<fork>() cannot allocate sufficient memory to copy the parent's page tables and allocate a task structure for the child."
6836 msgstr "親プロセスのページテーブルのコピーと 子プロセスのタスク構造に生成に必要なメモリを B<fork>() が割り当てることができなかった。"
6838 #. NOTE! The following should match the description in pthread_create(3)
6840 #: build/C/man2/fork.2:209
6841 msgid "A system-imposed limit on the number of threads was encountered. There are a number of limits that may trigger this error: the B<RLIMIT_NPROC> soft resource limit (set via B<setrlimit>(2)), which limits the number of processes and threads for a real user ID, was reached; the kernel's system-wide limit on the number of processes and threads, I</proc/sys/kernel/threads-max>, was reached (see B<proc>(5)); or the maximum number of PIDs, I</proc/sys/kernel/pid_max>, was reached (see B<proc>(5))."
6842 msgstr "システムで設定されたスレッド数の上限に達していた。 このエラーの原因となる上限値はいくつかある。 実ユーザー ID 当たりのプロセス数とスレッド数の上限である、ソフトリソース上限 B<RLIMIT_NPROC> に達していた (B<setrlimit>(2) で設定できる)。 カーネルのシステム全体のプロセスとスレッドの上限数である I</proc/sys/kernel/threads-max> が達していた (B<proc>(5) 参照)。 PID の最大値 I</proc/sys/kernel/pid_max> に達していた (B<proc>(5) 参照)。"
6845 #: build/C/man2/fork.2:216
6846 msgid "The caller is operating under the B<SCHED_DEADLINE> scheduling policy and does not have the reset-on-fork flag set. See B<sched>(7)."
6847 msgstr "呼び出し元は、スケジューリングポリシー B<SCHED_DEADLINE> で動作しており、かつ reset-on-fork フラグがセットされていない。 B<sched>(7) 参照。"
6850 #: build/C/man2/fork.2:220
6851 msgid "B<fork>() failed to allocate the necessary kernel structures because memory is tight."
6852 msgstr "メモリが足りないために、 B<fork>() は必要なカーネル構造体を割り当てることができなかった。"
6854 #. e.g., arm (optionally), blackfin, c6x, frv, h8300, microblaze, xtensa
6856 #: build/C/man2/fork.2:226
6857 msgid "B<fork>() is not supported on this platform (for example, hardware without a Memory-Management Unit)."
6859 "B<fork>() はこのプラットフォームではサポートされていない\n"
6860 "(例えば、メモリ管理ユニット (MMU) がないハードウェア)。"
6863 #: build/C/man2/fork.2:235
6864 msgid "Under Linux, B<fork>() is implemented using copy-on-write pages, so the only penalty that it incurs is the time and memory required to duplicate the parent's page tables, and to create a unique task structure for the child."
6865 msgstr "Linux では、 B<fork>() を 書き込み時コピー (copy-on-write) ページを用いて実装している。 したがって、fork を行うことの唯一のデメリットは、 親プロセスのページテーブルを複製と 子プロセス自身のタスク構造の作成のための時間とメモリが必要なことである。"
6867 #. nptl/sysdeps/unix/sysv/linux/fork.c
6868 #. and does some magic to ensure that getpid(2) returns the right value.
6870 #: build/C/man2/fork.2:259
6871 msgid "Since version 2.3.3, rather than invoking the kernel's B<fork>() system call, the glibc B<fork>() wrapper that is provided as part of the NPTL threading implementation invokes B<clone>(2) with flags that provide the same effect as the traditional system call. (A call to B<fork>() is equivalent to a call to B<clone>(2) specifying I<flags> as just B<SIGCHLD>.) The glibc wrapper invokes any fork handlers that have been established using B<pthread_atfork>(3)."
6873 "glibc 2.3.3 以降では、 NPTL スレッド実装の一部として提供されている\n"
6874 "glibc のB<fork>() ラッパー関数は、 カーネルの B<fork>() システムコール\n"
6875 "を起動するのではなく、B<clone>(2) を起動する。\n"
6876 "B<clone>(2) に渡すフラグとして、伝統的な B<fork>() システムコールと\n"
6877 "同じ効果が得られるようなフラグが指定される (B<fork>() の呼び出しは、\n"
6878 "I<flags> に B<SIGCHLD> だけを指定して B<clone>(2) を呼び出すのと等価である)。\n"
6879 "glibc のラッパー関数は B<pthread_atfork>(3) を使って設定されている\n"
6880 "任意の fork ハンドラを起動する。"
6883 #: build/C/man2/fork.2:264
6884 msgid "See B<pipe>(2) and B<wait>(2)."
6885 msgstr "B<pipe>(2) および B<wait>(2) を参照。"
6888 #: build/C/man2/fork.2:275
6889 msgid "B<clone>(2), B<execve>(2), B<exit>(2), B<setrlimit>(2), B<unshare>(2), B<vfork>(2), B<wait>(2), B<daemon>(3), B<capabilities>(7), B<credentials>(7)"
6890 msgstr "B<clone>(2), B<execve>(2), B<exit>(2), B<setrlimit>(2), B<unshare>(2), B<vfork>(2), B<wait>(2), B<daemon>(3), B<capabilities>(7), B<credentials>(7)"
6893 #: build/C/man3/fpathconf.3:41
6899 #: build/C/man3/fpathconf.3:44
6900 msgid "fpathconf, pathconf - get configuration values for files"
6901 msgstr "fpathconf, pathconf - ファイルの設定値を取得する"
6904 #: build/C/man3/fpathconf.3:49
6906 msgid "B<long fpathconf(int >I<fd>B<, int >I<name>B<);>\n"
6907 msgstr "B<long fpathconf(int >I<fd>B<, int >I<name>B<);>\n"
6910 #: build/C/man3/fpathconf.3:51
6912 msgid "B<long pathconf(const char *>I<path>B<, int >I<name>B<);>\n"
6913 msgstr "B<long pathconf(const char *>I<path>B<, int >I<name>B<);>\n"
6916 #: build/C/man3/fpathconf.3:58
6917 msgid "B<fpathconf>() gets a value for the configuration option I<name> for the open file descriptor I<fd>."
6918 msgstr "B<fpathconf>() はオープンされているファイルデスクリプター I<fd> に対して設定されているオプション I<name> の値を取得する。"
6921 #: build/C/man3/fpathconf.3:64
6922 msgid "B<pathconf>() gets a value for configuration option I<name> for the filename I<path>."
6923 msgstr "B<pathconf>() はファイル名 I<path> に対して設定されているオプション I<name> の値を取得する。"
6926 #: build/C/man3/fpathconf.3:73
6927 msgid "The corresponding macros defined in I<E<lt>unistd.hE<gt>> are minimum values; if an application wants to take advantage of values which may change, a call to B<fpathconf>() or B<pathconf>() can be made, which may yield more liberal results."
6928 msgstr "対応するマクロのうち I<E<lt>unistd.hE<gt>> で定義されているものは最小値である。アプリケーションによってはこれらの 値を変更してより有利な動作を行おうとするものがある。この場合でも B<fpathconf>() または B<pathconf>() は呼び出すことができる。この場合はより大きな値が返ることになろう。"
6931 #: build/C/man3/fpathconf.3:78
6932 msgid "Setting I<name> equal to one of the following constants returns the following configuration options:"
6933 msgstr "I<name> を以下の定数のどれかにすると、対応する設定オプションが返される。"
6936 #: build/C/man3/fpathconf.3:78
6938 msgid "B<_PC_LINK_MAX>"
6939 msgstr "B<_PC_LINK_MAX>"
6942 #: build/C/man3/fpathconf.3:88
6943 msgid "returns the maximum number of links to the file. If I<fd> or I<path> refer to a directory, then the value applies to the whole directory. The corresponding macro is B<_POSIX_LINK_MAX>."
6944 msgstr "ファイルへのリンクの最大数を返す。 I<fd> または I<path> がディレクトリの場合は、この値はディレクトリ全体に適用される。対応する マクロは B<_POSIX_LINK_MAX> である。"
6947 #: build/C/man3/fpathconf.3:88
6949 msgid "B<_PC_MAX_CANON>"
6950 msgstr "B<_PC_MAX_CANON>"
6953 #: build/C/man3/fpathconf.3:97
6954 msgid "returns the maximum length of a formatted input line, where I<fd> or I<path> must refer to a terminal. The corresponding macro is B<_POSIX_MAX_CANON>."
6955 msgstr "フォーマット付き入力行の最大長を返す。このとき I<fd> または I<path> は端末を参照していなければならない。 対応するマクロは B<_POSIX_MAX_CANON> である。"
6958 #: build/C/man3/fpathconf.3:97
6960 msgid "B<_PC_MAX_INPUT>"
6961 msgstr "B<_PC_MAX_INPUT>"
6964 #: build/C/man3/fpathconf.3:106
6965 msgid "returns the maximum length of an input line, where I<fd> or I<path> must refer to a terminal. The corresponding macro is B<_POSIX_MAX_INPUT>."
6966 msgstr "入力行の最大長を返す。このとき I<fd> または I<path> は端末を参照していなければならない。 対応するマクロは B<_POSIX_MAX_INPUT> である。"
6969 #: build/C/man3/fpathconf.3:106
6971 msgid "B<_PC_NAME_MAX>"
6972 msgstr "B<_PC_NAME_MAX>"
6975 #: build/C/man3/fpathconf.3:115
6976 msgid "returns the maximum length of a filename in the directory I<path> or I<fd> that the process is allowed to create. The corresponding macro is B<_POSIX_NAME_MAX>."
6977 msgstr "ディレクトリ I<path> または I<fd> 内に、そのプロセスが作成することができるファイル名の最大長を返す。 対応するマクロは B<_POSIX_NAME_MAX> である。"
6980 #: build/C/man3/fpathconf.3:115
6982 msgid "B<_PC_PATH_MAX>"
6983 msgstr "B<_PC_PATH_MAX>"
6986 #: build/C/man3/fpathconf.3:124
6987 msgid "returns the maximum length of a relative pathname when I<path> or I<fd> is the current working directory. The corresponding macro is B<_POSIX_PATH_MAX>."
6988 msgstr "I<path> または I<fd> がカレントディレクトリの場合、相対パス名の最大長を返す。 対応するマクロは B<_POSIX_PATH_MAX> である。"
6991 #: build/C/man3/fpathconf.3:124
6993 msgid "B<_PC_PIPE_BUF>"
6994 msgstr "B<_PC_PIPE_BUF>"
6997 #: build/C/man3/fpathconf.3:133
6998 msgid "returns the size of the pipe buffer, where I<fd> must refer to a pipe or FIFO and I<path> must refer to a FIFO. The corresponding macro is B<_POSIX_PIPE_BUF>."
6999 msgstr "パイプ (pipe) バッファーのサイズを返す。このとき I<fd> はパイプか FIFO を参照していなければならず、 I<path> は FIFO を参照していなければならない。 対応するマクロは B<_POSIX_PIPE_BUF> である。"
7002 #: build/C/man3/fpathconf.3:133
7004 msgid "B<_PC_CHOWN_RESTRICTED>"
7005 msgstr "B<_PC_CHOWN_RESTRICTED>"
7008 #: build/C/man3/fpathconf.3:146
7009 msgid "returns nonzero if the B<chown>(2) call may not be used on this file. If I<fd> or I<path> refer to a directory, then this applies to all files in that directory. The corresponding macro is B<_POSIX_CHOWN_RESTRICTED>."
7010 msgstr "このファイルに対する B<chown>(2) の呼び出しが許されていない場合には 0 以外の値を返す。 I<fd> または I<path> がディレクトリを参照している場合は、この制限はそのディレクトリのすべて のファイルに適用される。 対応するマクロは B<_POSIX_CHOWN_RESTRICTED> である。"
7013 #: build/C/man3/fpathconf.3:146
7015 msgid "B<_PC_NO_TRUNC>"
7016 msgstr "B<_PC_NO_TRUNC>"
7019 #: build/C/man3/fpathconf.3:153
7020 msgid "returns nonzero if accessing filenames longer than B<_POSIX_NAME_MAX> generates an error. The corresponding macro is B<_POSIX_NO_TRUNC>."
7021 msgstr "アクセス中のファイル名が B<_POSIX_NAME_MAX> よりも長く、エラーとなる場合には 0 以外の値を返す。 対応するマクロは B<_POSIX_NAME_MAX> である。"
7024 #: build/C/man3/fpathconf.3:153
7026 msgid "B<_PC_VDISABLE>"
7027 msgstr "B<_PC_VDISABLE>"
7030 #: build/C/man3/fpathconf.3:160
7031 msgid "returns nonzero if special character processing can be disabled, where I<fd> or I<path> must refer to a terminal."
7032 msgstr "特殊文字 (special character) の処理が許されていない場合は 0 以外の値を 返す。このとき I<fd> または I<path> は端末を参照していなければならない。"
7035 #: build/C/man3/fpathconf.3:169
7036 msgid "The limit is returned, if one exists. If the system does not have a limit for the requested resource, -1 is returned, and I<errno> is unchanged. If there is an error, -1 is returned, and I<errno> is set to reflect the nature of the error."
7037 msgstr "(存在していれば) 制限値が返される。要求されたリソースへのシステムの制 限が存在していなければ -1 が返され、 I<errno> は変更されない。エラーが起こった場合には -1 が返され、 I<errno> がエラーに対応した値に設定される。"
7040 #: build/C/man3/fpathconf.3:177
7041 msgid "Files with name lengths longer than the value returned for I<name> equal to B<_PC_NAME_MAX> may exist in the given directory."
7042 msgstr "I<name> に B<_PC_NAME_MAX> を入れて返された値よりも長いファイル名を持つファイルが、与えられたディ レクトリに存在するかもしれない。"
7045 #: build/C/man3/fpathconf.3:180 build/C/man3/sysconf.3:338
7046 msgid "Some returned values may be huge; they are not suitable for allocating memory."
7047 msgstr "いくつかの返り値はとても大きくなることがある。これらを使って メモリの割り当てを行うのは適当ではない。"
7050 #: build/C/man3/fpathconf.3:186
7051 msgid "B<getconf>(1), B<open>(2), B<statfs>(2), B<confstr>(3), B<sysconf>(3)"
7052 msgstr "B<getconf>(1), B<open>(2), B<statfs>(2), B<confstr>(3), B<sysconf>(3)"
7055 #: build/C/man2/fsync.2:38
7061 #: build/C/man2/fsync.2:41
7062 msgid "fsync, fdatasync - synchronize a file's in-core state with storage device"
7063 msgstr "fsync - メモリ上にあるファイルの内容をストレージデバイス上のものと同期させる"
7066 #: build/C/man2/fsync.2:45
7067 msgid "B<int fsync(int >I<fd>B<);>"
7068 msgstr "B<int fsync(int >I<fd>B<);>"
7071 #: build/C/man2/fsync.2:47
7072 msgid "B<int fdatasync(int >I<fd>B<);>"
7073 msgstr "B<int fdatasync(int >I<fd>B<);>"
7076 #: build/C/man2/fsync.2:55
7077 msgid "B<fsync>(): _BSD_SOURCE || _XOPEN_SOURCE"
7078 msgstr "B<fsync>(): _BSD_SOURCE || _XOPEN_SOURCE"
7080 #. _POSIX_C_SOURCE\ >=\ 200112L only since glibc 2.8
7082 #: build/C/man2/fsync.2:58
7084 msgid " || /* since glibc 2.8: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L\n"
7085 msgstr " || /* glibc 2.8 以降では: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L\n"
7088 #: build/C/man2/fsync.2:61
7089 msgid "B<fdatasync>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L || _XOPEN_SOURCE\\ E<gt>=\\ 500"
7090 msgstr "B<fdatasync>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L || _XOPEN_SOURCE\\ E<gt>=\\ 500"
7093 #: build/C/man2/fsync.2:74
7094 msgid "B<fsync>() transfers (\"flushes\") all modified in-core data of (i.e., modified buffer cache pages for) the file referred to by the file descriptor I<fd> to the disk device (or other permanent storage device) so that all changed information can be retrieved even after the system crashed or was rebooted. This includes writing through or flushing a disk cache if present. The call blocks until the device reports that the transfer has completed. It also flushes metadata information associated with the file (see B<stat>(2))."
7096 "B<fsync>() は、ファイルディスクリプター I<fd> で参照されるファイルの、メモリ内で存在す\n"
7097 "る修正されたデータ (つまり修正されたバッファーキャッシュページ) を、ディスクデ\n"
7098 "バイス(またはその他の永続ストレージデバイス) に転送 (「フラッシュ」) し、これ\n"
7099 "により、システムがクラッシュしたり、再起動された後も、変更された全ての情報が\n"
7100 "取り出せるようになる。「フラッシュ」には、ライトスルー (write through) や\n"
7101 "(存在する場合には) ディスクキャッシュのフラッシュも含まれる。この呼び出しは\n"
7102 "転送が終わったとデバイスが報告するまでブロックする。またファイルに結びついた\n"
7103 "メタデータ情報 (B<stat>(2) 参照) もフラッシュする。"
7106 #: build/C/man2/fsync.2:82
7107 msgid "Calling B<fsync>() does not necessarily ensure that the entry in the directory containing the file has also reached disk. For that an explicit B<fsync>() on a file descriptor for the directory is also needed."
7108 msgstr "B<fsync>() の呼び出しは、ファイルが存在しているディレクトリのエントリがディスクへ 書き込まれたことを保証するわけではない。 保証するためには明示的にそのディレクトリのファイルディスクリプターに対しても B<fsync>() する必要がある。"
7111 #: build/C/man2/fsync.2:103
7112 msgid "B<fdatasync>() is similar to B<fsync>(), but does not flush modified metadata unless that metadata is needed in order to allow a subsequent data retrieval to be correctly handled. For example, changes to I<st_atime> or I<st_mtime> (respectively, time of last access and time of last modification; see B<stat>(2)) do not require flushing because they are not necessary for a subsequent data read to be handled correctly. On the other hand, a change to the file size (I<st_size>, as made by say B<ftruncate>(2)), would require a metadata flush."
7113 msgstr "B<fdatasync>() は B<fsync>() と同様であるが、メタデータの扱いが異なる。 B<fdatasync>() は、それ以降のデータ読み込みを正しく扱うためにそのメタデータが必要に ならない限り、変更されたメタデータをフラッシュしない。 例えば、 st_atime や st_mtime (それぞれ最終アクセス時刻、最終修正時刻; B<stat>(2) 参照) の変更はフラッシュを必要としない。 なぜならこれらはそれ以降のデータ読み込みを正しく扱うために 必要ではないからである。 一方、ファイルサイズ (B<ftruncate>(2) では I<st_size>) の変更はメタデータのフラッシュが必要である。"
7116 #: build/C/man2/fsync.2:108
7117 msgid "The aim of B<fdatasync>() is to reduce disk activity for applications that do not require all metadata to be synchronized with the disk."
7118 msgstr "B<fdatasync>() の狙いは、全てのメタデータをディスクと同期する必要のない アプリケーションに対して、ディスクアクセスを減らすことである。"
7121 #: build/C/man2/fsync.2:113
7122 msgid "On success, these system calls return zero. On error, -1 is returned, and I<errno> is set appropriately."
7123 msgstr "成功した場合、これらのシステムコールはゼロを返す。 エラーの場合、-1 が返され、 I<errno> が適切に設定される。"
7126 #: build/C/man2/fsync.2:118
7127 msgid "I<fd> is not a valid open file descriptor."
7128 msgstr "I<fd> が有効なオープンされたディスクリプターでない。"
7131 #: build/C/man2/fsync.2:121
7132 msgid "An error occurred during synchronization."
7133 msgstr "同期操作の間にエラーが発生した。"
7136 #: build/C/man2/fsync.2:121
7138 msgid "B<EROFS>, B<EINVAL>"
7139 msgstr "B<EROFS>, B<EINVAL>"
7142 #: build/C/man2/fsync.2:125
7143 msgid "I<fd> is bound to a special file which does not support synchronization."
7144 msgstr "I<fd> が同期操作をサポートしてない特殊なファイルを参照している。"
7147 #: build/C/man2/fsync.2:127
7148 msgid "4.3BSD, POSIX.1-2001."
7149 msgstr "4.3BSD, POSIX.1-2001."
7152 #: build/C/man2/fsync.2:127
7154 msgid "AVAILABILITY"
7157 #. POSIX.1-2001: It shall be defined to -1 or 0 or 200112L.
7158 #. -1: unavailable, 0: ask using sysconf().
7159 #. glibc defines them to 1.
7161 #: build/C/man2/fsync.2:140
7162 msgid "On POSIX systems on which B<fdatasync>() is available, B<_POSIX_SYNCHRONIZED_IO> is defined in I<E<lt>unistd.hE<gt>> to a value greater than 0. (See also B<sysconf>(3).)"
7163 msgstr "B<fdatasync>() が利用可能な POSIX システムでは、 B<_POSIX_SYNCHRONIZED_IO> が I<E<lt>unistd.hE<gt>> で 0 より大きな値に定義される (B<sysconf>(3) 参照)。"
7166 #: build/C/man2/fsync.2:146
7167 msgid "On some UNIX systems (but not Linux), I<fd> must be a I<writable> file descriptor."
7169 "(Linux はそうではないが) いくつかの UNIX システムでは\n"
7170 "I<fd> がI<書き込み可能な>ファイルディスクリプターでなければならない。"
7173 #: build/C/man2/fsync.2:152
7174 msgid "In Linux 2.2 and earlier, B<fdatasync>() is equivalent to B<fsync>(), and so has no performance advantage."
7175 msgstr "Linux 2.2 以前では、 B<fdatasync>() は B<fsync>() と等価であり、性能面でのメリットはない。"
7178 #: build/C/man2/fsync.2:162
7179 msgid "The B<fsync>() implementations in older kernels and lesser used filesystems does not know how to flush disk caches. In these cases disk caches need to be disabled using B<hdparm>(8) or B<sdparm>(8) to guarantee safe operation."
7181 "古いカーネルやあまり使われていないファイルシステムの B<fsync>() の実装では、\n"
7182 "ディスクキャッシュをフラッシュする方法が分からない場合がある。そのような場合\n"
7183 "には、安全に操作が行われることを保証するため、B<hdparm>(8) や B<sdparm>(8) を\n"
7184 "使ってディスクキャッシュを無効にする必要がある。"
7187 #: build/C/man2/fsync.2:170
7188 msgid "B<bdflush>(2), B<open>(2), B<sync>(2), B<sync_file_range>(2), B<hdparm>(8), B<mount>(8), B<sync>(1)"
7189 msgstr "B<bdflush>(2), B<open>(2), B<sync>(2), B<sync_file_range>(2), B<hdparm>(8), B<mount>(8), B<sync>(1)"
7192 #: build/C/man3/get_nprocs_conf.3:26
7198 #: build/C/man3/get_nprocs_conf.3:26
7204 #: build/C/man3/get_nprocs_conf.3:29
7205 msgid "get_nprocs, get_nprocs_conf - get number of processors"
7206 msgstr "get_nprocs, get_nprocs_conf - プロセッサ数を取得する"
7209 #: build/C/man3/get_nprocs_conf.3:31 build/C/man2/sysinfo.2:19
7210 msgid "B<#include E<lt>sys/sysinfo.hE<gt>>"
7211 msgstr "B<#include E<lt>sys/sysinfo.hE<gt>>"
7214 #: build/C/man3/get_nprocs_conf.3:33
7215 msgid "B<int get_nprocs(void);>"
7216 msgstr "B<int get_nprocs(void);>"
7219 #: build/C/man3/get_nprocs_conf.3:35
7220 msgid "B<int get_nprocs_conf(void);>"
7221 msgstr "B<int get_nprocs_conf(void);>"
7224 #: build/C/man3/get_nprocs_conf.3:39
7225 msgid "The function B<get_nprocs_conf>() returns the number of processors configured by the operating system."
7227 "B<get_nprocs_conf>() 関数は、オペレーティングシステムで\n"
7231 #: build/C/man3/get_nprocs_conf.3:46
7232 msgid "The function B<get_nprocs>() returns the number of processors currently available in the system. This may be less than the number returned by B<get_nprocs_conf>() because processors may be offline (e.g., on hotpluggable systems)."
7234 "B<get_nprocs>() 関数は、システムで現在利用可能なプロセッサ数を返す。\n"
7235 "(例えば、ホットプラグが可能なシステムでは)\n"
7236 "オフラインになっているプロセッサがある場合があるので、\n"
7237 "この数は B<get_nprocs_conf>() が返す数より小さい場合がある。"
7240 #: build/C/man3/get_nprocs_conf.3:48
7241 msgid "As given in DESCRIPTION."
7242 msgstr "「説明」の節で説明した通りである。"
7245 #: build/C/man3/get_nprocs_conf.3:50 build/C/man3/getopt.3:350
7246 msgid "These functions are GNU extensions."
7247 msgstr "これらの関数は GNU による拡張である。"
7251 #: build/C/man3/get_nprocs_conf.3:57
7252 msgid "The current implementation of these functions is rather expensive, since they open and parse files in the I</sys> filesystem each time they are called."
7254 "これらの関数の現在の実装はかなりコストがかかる実装になっている。\n"
7255 "関数が呼ばれる度に I</sys> ファイルシステム内のファイルをオープンして\n"
7256 "解析するようになっているからである。"
7259 #: build/C/man3/get_nprocs_conf.3:62
7260 msgid "The following B<sysconf>(3) calls make use of the functions documented on this page to return the same information."
7262 "以下の B<sysconf>(3) の呼び出しで、このページに書かれている関数を使った\n"
7263 "場合に返されるのと同じ情報を得ることができる。"
7266 #: build/C/man3/get_nprocs_conf.3:66
7269 " np = sysconf(_SC_NPROCESSORS_CONF); /* processors configured */\n"
7270 " np = sysconf(_SC_NPROCESSORS_ONLN); /* processors available */\n"
7272 " np = sysconf(_SC_NPROCESSORS_CONF); /* processors configured */\n"
7273 " np = sysconf(_SC_NPROCESSORS_ONLN); /* processors available */\n"
7276 #: build/C/man3/get_nprocs_conf.3:73
7277 msgid "The following example shows how B<get_nprocs>() and B<get_nprocs_conf>() can be used."
7279 "以下の例は、 B<get_nprocs>() と B<get_nprocs_conf>() が\n"
7280 "どのように利用できるかを示すものである。"
7283 #: build/C/man3/get_nprocs_conf.3:77
7286 "#include E<lt>stdio.hE<gt>\n"
7287 "#include E<lt>sys/sysinfo.hE<gt>\n"
7289 "#include E<lt>stdio.hE<gt>\n"
7290 "#include E<lt>sys/sysinfo.hE<gt>\n"
7293 #: build/C/man3/get_nprocs_conf.3:86
7297 "main(int argc, char *argv[])\n"
7299 " printf(\"This system has %d processors configured and \"\n"
7300 " \"%d processors available.\\en\",\n"
7301 " get_nprocs_conf(), get_nprocs());\n"
7306 "main(int argc, char *argv[])\n"
7308 " printf(\"This system has %d processors configured and \"\n"
7309 " \"%d processors available.\\en\",\n"
7310 " get_nprocs_conf(), get_nprocs());\n"
7315 #: build/C/man2/get_thread_area.2:8
7317 msgid "GET_THREAD_AREA"
7318 msgstr "GET_THREAD_AREA"
7321 #: build/C/man2/get_thread_area.2:8 build/C/man2/set_thread_area.2:8
7327 #: build/C/man2/get_thread_area.2:11
7328 msgid "get_thread_area - get a thread-local storage (TLS) area"
7329 msgstr "get_thread_area - スレッド局所記憶 (TLS) 領域を取り出す"
7332 #: build/C/man2/get_thread_area.2:15 build/C/man2/set_thread_area.2:15
7333 msgid "B<#include E<lt>asm/ldt.hE<gt>>"
7334 msgstr "B<#include E<lt>asm/ldt.hE<gt>>"
7337 #: build/C/man2/get_thread_area.2:17
7338 msgid "B<int get_thread_area(struct user_desc *>I<u_info>B<);>"
7339 msgstr "B<int get_thread_area(struct user_desc *>I<u_info>B<);>"
7342 #: build/C/man2/get_thread_area.2:20 build/C/man2/gettid.2:38
7343 #: build/C/man2/set_thread_area.2:20 build/C/man2/sysctl.2:44
7344 msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
7345 msgstr "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節を参照。"
7348 #: build/C/man2/get_thread_area.2:29
7349 msgid "B<get_thread_area>() returns an entry in the current thread's thread-local storage (TLS) array. The index of the entry corresponds to the value of I<u_info-E<gt>entry_number>, passed in by the user. If the value is in bounds, B<get_thread_area>() copies the corresponding TLS entry into the area pointed to by I<u_info>."
7350 msgstr "B<get_thread_area>() は、カレントスレッドのスレッド局所記憶 (thread-local storage; TLS) 配列の中のエントリを返す。 エントリのインデックスは、ユーザーから引き数として渡される I<u_info-E<gt>entry_number> の値に対応している。 値が範囲内にある場合、 B<get_thread_info>() は対応する TLS エントリを I<u_info> で指された領域にコピーする。"
7353 #: build/C/man2/get_thread_area.2:35
7354 msgid "B<get_thread_area>() returns 0 on success. Otherwise, it returns -1 and sets I<errno> appropriately."
7355 msgstr "成功した場合、 B<get_thread_area>() は 0 を返す。 そうでない場合、 -1 を返し、 I<errno> に適切な値をセットする。"
7358 #: build/C/man2/get_thread_area.2:39 build/C/man2/set_thread_area.2:56
7359 msgid "I<u_info> is an invalid pointer."
7360 msgstr "I<u_info> が不正なポインタである。"
7363 #: build/C/man2/get_thread_area.2:42 build/C/man2/set_thread_area.2:53
7364 msgid "I<u_info-E<gt>entry_number> is out of bounds."
7365 msgstr "I<u_info-E<gt>entry_number> が範囲外である。"
7368 #: build/C/man2/get_thread_area.2:46
7369 msgid "A version of B<get_thread_area>() first appeared in Linux 2.5.32."
7370 msgstr "B<get_thread_area>() は Linux 2.5.32 で初めて登場した。"
7373 #: build/C/man2/get_thread_area.2:50
7374 msgid "B<get_thread_area>() is Linux-specific and should not be used in programs that are intended to be portable."
7375 msgstr "B<get_thread_area>() は Linux 独自の関数であり、 移植を意図したプログラムでは使用すべきではない。"
7378 #: build/C/man2/get_thread_area.2:55
7379 msgid "Glibc does not provide a wrapper for this system call, since it is generally intended for use only by threading libraries. In the unlikely event that you want to call it directly, use B<syscall>(2)."
7380 msgstr "このシステムコールは通常はスレッドライブラリでのみ使用されることを目的として用意されているため、 glibc はこのシステムコールに対するラッパー関数を提供していない。おそらくないと思うが、このシステムコールを直接呼び出したい場合は B<syscall>(2) を使うこと。"
7383 #: build/C/man2/get_thread_area.2:58
7384 msgid "B<modify_ldt>(2), B<set_thread_area>(2)"
7385 msgstr "B<modify_ldt>(2), B<set_thread_area>(2)"
7388 #: build/C/man3/getcwd.3:32
7394 #: build/C/man3/getcwd.3:35
7395 msgid "getcwd, getwd, get_current_dir_name - get current working directory"
7396 msgstr "getcwd, getwd, get_current_dir_name - カレントワーキングディレクトリ名の取得"
7399 #: build/C/man3/getcwd.3:40
7401 msgid "B<char *getcwd(char *>I<buf>B<, size_t >I<size>B<);>\n"
7402 msgstr "B<char *getcwd(char *>I<buf>B<, size_t >I<size>B<);>\n"
7405 #: build/C/man3/getcwd.3:42
7407 msgid "B<char *getwd(char *>I<buf>B<);>\n"
7408 msgstr "B<char *getwd(char *>I<buf>B<);>\n"
7411 #: build/C/man3/getcwd.3:44
7413 msgid "B<char *get_current_dir_name(void);>\n"
7414 msgstr "B<char *get_current_dir_name(void);>\n"
7417 #: build/C/man3/getcwd.3:52
7418 msgid "B<get_current_dir_name>():"
7419 msgstr "B<get_current_dir_name>():"
7422 #: build/C/man3/getcwd.3:57
7424 msgstr "B<getwd>():"
7427 #: build/C/man3/getcwd.3:67 build/C/man3/ualarm.3:50 build/C/man3/usleep.3:59
7428 #: build/C/man2/vfork.2:54
7432 " (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
7433 " _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
7434 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)\n"
7437 " (_XOPEN_SOURCE\\ E<gt>=\\ 500 ||\n"
7438 " _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED) &&\n"
7439 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)\n"
7442 #: build/C/man3/getcwd.3:72 build/C/man3/getdtablesize.3:54
7443 #: build/C/man2/getpagesize.2:52 build/C/man3/ualarm.3:55
7444 #: build/C/man3/usleep.3:64 build/C/man2/vfork.2:59
7445 msgid "Before glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
7446 msgstr "glibc 2.12 より前: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
7449 #: build/C/man3/getcwd.3:82
7450 msgid "These functions return a null-terminated string containing an absolute pathname that is the current working directory of the calling process. The pathname is returned as the function result and via the argument I<buf>, if present."
7451 msgstr "これらの関数は、呼び出したプロセスのカレントワーキングディレクトリの 絶対パス名 (absolute pathname) が入った文字列を返す。 返される文字列はヌルで終端される。 パス名は関数の結果として返され、引数 I<buf> がある場合は I<buf> 経由でも返される。"
7454 #: build/C/man3/getcwd.3:90
7455 msgid "The B<getcwd>() function copies an absolute pathname of the current working directory to the array pointed to by I<buf>, which is of length I<size>."
7456 msgstr "B<getcwd>() 関数はカレントワーキングディレクトリの絶対パス名を I<buf> で示された I<size> 長の配列にコピーする。"
7459 #: build/C/man3/getcwd.3:100
7460 msgid "If the length of the absolute pathname of the current working directory, including the terminating null byte, exceeds I<size> bytes, NULL is returned, and I<errno> is set to B<ERANGE>; an application should check for this error, and allocate a larger buffer if necessary."
7461 msgstr "終端のヌルバイトも含めた、カレントワーキングディレクトリの 絶対パス名の長さが I<size> バイトを超えている場合は、返り値として NULL が返り I<errno> に B<ERANGE> がセットされる。 アプリケーションはこのエラーをチェックし、 必要に応じてより長いバッファーを用意すべきである。"
7464 #: build/C/man3/getcwd.3:118
7465 msgid "As an extension to the POSIX.1-2001 standard, glibc's B<getcwd>() allocates the buffer dynamically using B<malloc>(3) if I<buf> is NULL. In this case, the allocated buffer has the length I<size> unless I<size> is zero, when I<buf> is allocated as big as necessary. The caller should B<free>(3) the returned buffer."
7466 msgstr "POSIX.1-2001 標準の拡張として、 glibc では I<buf> が NULL の場合、 B<getcwd>() は必要なバッファーを B<malloc>(3) を用いて動的に割り当てる。 この場合、 I<size> が 0 の場合を除き、バッファーの長さは I<size> となる。 I<size> が 0 の場合には必要な大きさが確保される。 呼び出し側で、返されたバッファーを B<free>(3) すべきである。"
7469 #: build/C/man3/getcwd.3:131
7470 msgid "B<get_current_dir_name>() will B<malloc>(3) an array big enough to hold the absolute pathname of the current working directory. If the environment variable B<PWD> is set, and its value is correct, then that value will be returned. The caller should B<free>(3) the returned buffer."
7471 msgstr "B<get_current_dir_name>() はカレントワーキングディレクトリの絶対パス名を収めるのに 十分な大きさの配列を B<malloc>(3) で獲得する。環境変数 B<PWD> が設定されておりその値が正しければ、その値が返される。 呼び出し側で、返されたバッファーを B<free>(3) すべきである。"
7474 #: build/C/man3/getcwd.3:156
7475 msgid "B<getwd>() does not B<malloc>(3) any memory. The I<buf> argument should be a pointer to an array at least B<PATH_MAX> bytes long. If the length of the absolute pathname of the current working directory, including the terminating null byte, exceeds B<PATH_MAX> bytes, NULL is returned, and I<errno> is set to B<ENAMETOOLONG>. (Note that on some systems, B<PATH_MAX> may not be a compile-time constant; furthermore, its value may depend on the filesystem, see B<pathconf>(3).) For portability and security reasons, use of B<getwd>() is deprecated."
7476 msgstr "B<getwd>() は B<malloc>(3) によるメモリ獲得を一切行なわない。 I<buf> 引数は少なくとも B<PATH_MAX> バイトの長さを持つ配列へのポインタである必要がある。 終端のヌルバイトも含めた、カレントワーキングディレクトリの 絶対パス名の長さが B<PATH_MAX> バイトを超えている場合、 NULL が返され、 I<errno> に B<ENAMETOOLONG> が設定される。 (システムによっては、 B<PATH_MAX> は必ずしもコンパイル時に決まる定数ではない点に注意すること。 また、ファイルシステムに依存する場合もある。 B<pathconf>(3) を参照。) 移植性とセキュリティ上の理由から、 B<getwd>() の利用は推奨されない。"
7479 #: build/C/man3/getcwd.3:165
7480 msgid "On success, these functions return a pointer to a string containing the pathname of the current working directory. In the case B<getcwd>() and B<getwd>() this is the same value as I<buf>."
7481 msgstr "成功すると、これらの関数はカレントワーキングディレクトリの絶対パス名 が入った文字列へのポインタを返す。 B<getcwd>() と B<getwd>() の場合、返り値は I<buf> と同じ値になる。"
7484 #: build/C/man3/getcwd.3:172
7485 msgid "On failure, these functions return NULL, and I<errno> is set to indicate the error. The contents of the array pointed to by I<buf> are undefined on error."
7486 msgstr "失敗した場合、これらの関数は NULL を返し、 I<errno> にエラーを示す値を設定する。 I<buf> が指す配列の内容は未定義である。"
7489 #: build/C/man3/getcwd.3:176
7490 msgid "Permission to read or search a component of the filename was denied."
7491 msgstr "ファイル名の構成要素に対する読み込みあるいは検索の権限がない。"
7494 #: build/C/man3/getcwd.3:180
7495 msgid "I<buf> points to a bad address."
7496 msgstr "I<buf> が不正なアドレスを指している。"
7499 #: build/C/man3/getcwd.3:187
7500 msgid "The I<size> argument is zero and I<buf> is not a null pointer."
7501 msgstr "I<size> 引数が 0 かつ、 I<buf> 引数がヌルポインタでない。"
7504 #: build/C/man3/getcwd.3:187
7510 #: build/C/man3/getcwd.3:192
7511 msgid "B<getwd>(): I<buf> is NULL."
7512 msgstr "B<getwd>(): I<buf> が NULL である。"
7515 #: build/C/man3/getcwd.3:192
7517 msgid "ENAMETOOLONG"
7518 msgstr "B<ENAMETOOLONG>"
7521 #: build/C/man3/getcwd.3:198
7522 msgid "B<getwd>(): The size of the null-terminated absolute pathname string exceeds B<PATH_MAX> bytes."
7523 msgstr "B<getwd>(): 絶対パス名が入ったヌル終端された文字列の長さが B<PATH_MAX> バイトを超えている。"
7526 #: build/C/man3/getcwd.3:201
7527 msgid "The current working directory has been unlinked."
7528 msgstr "カレントワーキングディレクトリが削除されている。"
7531 #: build/C/man3/getcwd.3:201 build/C/man3/getlogin.3:114
7537 #: build/C/man3/getcwd.3:208
7538 msgid "The I<size> argument is less than the length of the absolute pathname of the working directory, including the terminating null byte. You need to allocate a bigger array and try again."
7539 msgstr "I<size> 引数の値がワーキングディレクトリの絶対パス名の長さより小さい。 長さには文字列の終端バイトも含まれる。 より大きい配列を確保してもう一度実行する必要がある。"
7542 #: build/C/man3/getcwd.3:216
7543 msgid "B<getcwd>() conforms to POSIX.1-2001. Note however that POSIX.1-2001 leaves the behavior of B<getcwd>() unspecified if I<buf> is NULL."
7544 msgstr "B<getcwd>() は POSIX.1-2001 に準拠している。 POSIX.1-2001 は、 I<buf> が NULL の場合の B<getcwd>() の動作を規定しないままとしている。"
7547 #: build/C/man3/getcwd.3:227
7548 msgid "B<getwd>() is present in POSIX.1-2001, but marked LEGACY. POSIX.1-2008 removes the specification of B<getwd>(). Use B<getcwd>() instead. POSIX.1-2001 does not define any errors for B<getwd>()."
7549 msgstr "B<getwd>() は POSIX.1-2001 に存在しているが、「過去の名残(LEGACY)」とされている。 POSIX.1-2008 では、 B<getwd>() の仕様が削除されている。 代わりに B<getcwd>() を使うこと。 POSIX.1-2001 は B<getwd>() に関するエラーを定義していない。"
7552 #: build/C/man3/getcwd.3:230
7553 msgid "B<get_current_dir_name>() is a GNU extension."
7554 msgstr "B<get_current_dir_name>() は GNU 拡張である。"
7557 #: build/C/man3/getcwd.3:241
7558 msgid "Under Linux, the function B<getcwd>() is a system call (since 2.1.92). On older systems it would query I</proc/self/cwd>. If both system call and proc filesystem are missing, a generic implementation is called. Only in that case can these calls fail under Linux with B<EACCES>."
7559 msgstr "Linux では (2.1.92 以降)、 B<getcwd>() はシステムコールである。 古いシステムでは I</proc/self/cwd> を参照する。 システムコールも proc ファイルシステムもない場合、 一般的な実装が呼び出される。 この場合においてのみ、(Linux では) この関数は B<EACCES> で失敗する可能性がある。"
7562 #: build/C/man3/getcwd.3:249
7563 msgid "These functions are often used to save the location of the current working directory for the purpose of returning to it later. Opening the current directory (\".\") and calling B<fchdir>(2) to return is usually a faster and more reliable alternative when sufficiently many file descriptors are available, especially on platforms other than Linux."
7564 msgstr "これらの関数はしばしばカレントワーキングディレクトリの位置を保存し、 後で戻ってくるために利用される。 未使用のファイルディスクリプターが十分ある場合は、 現在のディレクトリ (\".\") を開いて B<fchdir>(2) を呼び出すほうが普通は高速で信頼性がある。 特に Linux 以外のプラットフォームの場合はそうである。"
7567 #: build/C/man3/getcwd.3:256
7568 msgid "B<chdir>(2), B<fchdir>(2), B<open>(2), B<unlink>(2), B<free>(3), B<malloc>(3)"
7569 msgstr "B<chdir>(2), B<fchdir>(2), B<open>(2), B<unlink>(2), B<free>(3), B<malloc>(3)"
7572 #: build/C/man2/getdomainname.2:29
7574 msgid "GETDOMAINNAME"
7575 msgstr "GETDOMAINNAME"
7578 #: build/C/man2/getdomainname.2:29
7584 #: build/C/man2/getdomainname.2:32
7585 msgid "getdomainname, setdomainname - get/set NIS domain name"
7586 msgstr "getdomainname, setdomainname - NIS ドメイン名の取得・設定をする"
7589 #: build/C/man2/getdomainname.2:36
7590 msgid "B<int getdomainname(char *>I<name>B<, size_t >I<len>B<);>"
7591 msgstr "B<int getdomainname(char *>I<name>B<, size_t >I<len>B<);>"
7594 #: build/C/man2/getdomainname.2:38
7595 msgid "B<int setdomainname(const char *>I<name>B<, size_t >I<len>B<);>"
7596 msgstr "B<int setdomainname(const char *>I<name>B<, size_t >I<len>B<);>"
7599 #: build/C/man2/getdomainname.2:47
7600 msgid "B<getdomainname>(), B<setdomainname>():"
7601 msgstr "B<getdomainname>(), B<setdomainname>():"
7604 #: build/C/man2/getdomainname.2:49 build/C/man3/gethostid.3:54
7605 #: build/C/man2/gethostname.2:60 build/C/man3/getusershell.3:55
7606 msgid "_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
7607 msgstr "_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
7610 #: build/C/man2/getdomainname.2:54
7611 msgid "These functions are used to access or to change the NIS domain name of the host system."
7612 msgstr "これらの関数は、ホストシステムの NIS ドメイン名を取得・変更するために使われる。"
7615 #: build/C/man2/getdomainname.2:65
7616 msgid "B<setdomainname>() sets the domain name to the value given in the character array I<name>. The I<len> argument specifies the number of bytes in I<name>. (Thus, I<name> does not require a terminating null byte.)"
7617 msgstr "B<setdomainname>() は、ドメイン名を、文字配列 I<name> で指定された値に設定する。 引き数 I<len> には、 I<name> のバイト数を指定する (そのため、 I<name> では文字列終端のヌルバイトは必要ない)。"
7620 #: build/C/man2/getdomainname.2:75
7621 msgid "B<getdomainname>() returns the null-terminated domain name in the character array I<name>, which has a length of I<len> bytes. If the null-terminated domain name requires more than I<len> bytes, B<getdomainname>() returns the first I<len> bytes (glibc) or gives an error (libc)."
7622 msgstr "B<getdomainname>() は、NULL 終端されたドメイン名を、 I<len> バイトの長さの文字配列 I<name> に格納して返す。ヌル終端されたドメイン名が I<len> バイトより長い場合、 B<getdomainname>() は、(glibc では) 始めの I<len> バイトを返し、(libc では) エラーとなる。"
7625 #: build/C/man2/getdomainname.2:83
7626 msgid "B<setdomainname>() can fail with the following errors:"
7627 msgstr "B<setdomainname>() は以下のエラーで失敗する可能性がある。"
7630 #: build/C/man2/getdomainname.2:87
7631 msgid "I<name> pointed outside of user address space."
7632 msgstr "I<name> がユーザーアドレス空間の外を指した。"
7635 #: build/C/man2/getdomainname.2:91
7636 msgid "I<len> was negative or too large."
7637 msgstr "I<len> が負であるか、長すぎる。"
7640 #: build/C/man2/getdomainname.2:96
7641 msgid "the caller is unprivileged (Linux: does not have the B<CAP_SYS_ADMIN> capability)."
7642 msgstr "B<setdomainname>() において、呼び出した人に特権がない (Linux では B<CAP_SYS_ADMIN> ケーパビリティ (capability) がない)。"
7645 #: build/C/man2/getdomainname.2:99
7646 msgid "B<getdomainname>() can fail with the following errors:"
7647 msgstr "B<getdomainname>() は以下のエラーで失敗する可能性がある。"
7650 #: build/C/man2/getdomainname.2:110
7651 msgid "For B<getdomainname>() under libc: I<name> is NULL or I<name> is longer than I<len> bytes."
7652 msgstr "libc での B<getdomainname>() において、 I<name> が NULL であるか、 I<len> バイトより長い。"
7654 #. But they appear on most systems...
7656 #: build/C/man2/getdomainname.2:113
7657 msgid "POSIX does not specify these calls."
7658 msgstr "POSIX では、これら関数は定義されていない。"
7661 #: build/C/man2/getdomainname.2:117
7662 msgid "Since Linux 1.0, the limit on the length of a domain name, including the terminating null byte, is 64 bytes. In older kernels, it was 8 bytes."
7663 msgstr "Linux 1.0 以降では、ドメイン名の長さの上限は 終端のヌルバイトを含めて 64 バイトである。 もっと古いカーネルでは 8 バイトであった。"
7666 #: build/C/man2/getdomainname.2:127
7667 msgid "On most Linux architectures (including x86), there is no B<getdomainname>() system call; instead, glibc implements B<getdomainname>() as a library function that returns a copy of the I<domainname> field returned from a call to B<uname>(2)."
7668 msgstr "(x86 を含む) Linux のほとんどのアーキテクチャでは、 B<getdomainname>() というシステムコールは存在しない。 その代わり、glibc で B<getdomainname>() がライブラリ関数として実装されており、この関数は B<uname>(2) の呼び出しで返された I<domainname> フィールドのコピーを返す。"
7671 #: build/C/man2/getdomainname.2:131
7672 msgid "B<gethostname>(2), B<sethostname>(2), B<uname>(2)"
7673 msgstr "B<gethostname>(2), B<sethostname>(2), B<uname>(2)"
7676 #: build/C/man3/getdtablesize.3:27
7678 msgid "GETDTABLESIZE"
7679 msgstr "GETDTABLESIZE"
7682 #: build/C/man3/getdtablesize.3:30
7683 msgid "getdtablesize - get descriptor table size"
7684 msgstr "getdtablesize - ディスクリプターテーブルのサイズを取得する"
7687 #: build/C/man3/getdtablesize.3:34
7688 msgid "B<int getdtablesize(void);>"
7689 msgstr "B<int getdtablesize(void);>"
7692 #: build/C/man3/getdtablesize.3:41
7693 msgid "B<getdtablesize>():"
7694 msgstr "B<getdtablesize>():"
7697 #: build/C/man3/getdtablesize.3:49 build/C/man2/getpagesize.2:47
7701 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
7704 " !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
7707 #: build/C/man3/getdtablesize.3:61
7708 msgid "B<getdtablesize>() returns the maximum number of files a process can have open, one more than the largest possible value for a file descriptor."
7709 msgstr "B<getdtablesize>() は 1 つのプロセスのオープンできるファイル数の最大値を返す。 返り値はファイルディスクリプターの取り得る最大値より 1 大きい値である。"
7712 #: build/C/man3/getdtablesize.3:63
7713 msgid "The current limit on the number of open files per process."
7714 msgstr "プロセス毎にオープンできるファイル数の現在の制限値。"
7717 #: build/C/man3/getdtablesize.3:69
7718 msgid "On Linux, B<getdtablesize>() can return any of the errors described for B<getrlimit>(2); see NOTES below."
7719 msgstr "Linux では、 B<getdtablesize>() は B<getrlimit>(2) で説明されているエラーを返すことがある。 下記の「注意」を参照のこと。"
7722 #: build/C/man3/getdtablesize.3:74
7723 msgid "The B<getdtablesize>() function is thread-safe."
7724 msgstr "B<getdtablesize>() 関数はスレッドセーフである。"
7727 #: build/C/man3/getdtablesize.3:82
7728 msgid "SVr4, 4.4BSD (the B<getdtablesize>() function first appeared in 4.2BSD). It is not specified in POSIX.1-2001; portable applications should employ I<sysconf(_SC_OPEN_MAX)> instead of this call."
7729 msgstr "SVr4, 4.4BSD (B<getdtablesize>() 関数は 4.2BSD で最初に現われた)。 これは POSIX.1-2001 で規定されていないので、 移植性のあるアプリケーションはこの呼び出しの代わりに I<sysconf(_SC_OPEN_MAX)> を使うべきである。"
7731 #. The libc4 and libc5 versions return
7733 #. (set to 256 since Linux 0.98.4).
7735 #: build/C/man3/getdtablesize.3:95
7736 msgid "B<getdtablesize>() is implemented as a libc library function. The glibc version calls B<getrlimit>(2) and returns the current B<RLIMIT_NOFILE> limit, or B<OPEN_MAX> when that fails."
7737 msgstr "B<getdtablesize>() は libc のライブラリ関数として実装されている。glibc 版は B<getrlimit>(2) を呼び出して、現在の B<RLIMIT_NOFILE> を返す。 呼び出しに失敗した場合は B<OPEN_MAX> を返す。"
7740 #: build/C/man3/getdtablesize.3:100
7741 msgid "B<close>(2), B<dup>(2), B<getrlimit>(2), B<open>(2)"
7742 msgstr "B<close>(2), B<dup>(2), B<getrlimit>(2), B<open>(2)"
7745 #: build/C/man3/gethostid.3:29
7751 #: build/C/man3/gethostid.3:32
7752 msgid "gethostid, sethostid - get or set the unique identifier of the current host"
7753 msgstr "gethostid, sethostid - 現在のホストの固有の識別子を取得/設定する"
7756 #: build/C/man3/gethostid.3:36
7757 msgid "B<long gethostid(void);>"
7758 msgstr "B<long gethostid(void);>"
7761 #: build/C/man3/gethostid.3:38
7762 msgid "B<int sethostid(long >I<hostid>B<);>"
7763 msgstr "B<int sethostid(long >I<hostid>B<);>"
7766 #: build/C/man3/gethostid.3:47
7767 msgid "B<gethostid>():"
7768 msgstr "B<gethostid>():"
7771 #: build/C/man3/gethostid.3:52
7772 msgid "B<sethostid>():"
7773 msgstr "B<sethostid>():"
7776 #: build/C/man3/gethostid.3:67
7777 msgid "B<gethostid>() and B<sethostid>() respectively get or set a unique 32-bit identifier for the current machine. The 32-bit identifier is intended to be unique among all UNIX systems in existence. This normally resembles the Internet address for the local machine, as returned by B<gethostbyname>(3), and thus usually never needs to be set."
7778 msgstr "B<gethostid>() と B<sethostid>() は、それぞれ、現在使用しているホストに固有の 32 ビットの識別子の 取得/設定を行う。 この 32 ビットの識別子は、現在存在している全ての UNIX システム の中で唯一になるように決められる。通常は B<gethostbyname>(3) により返されるローカルマシンの Internet アドレスが代わりに使用され、 普通は識別子をあえて設定する必要はない。"
7781 #: build/C/man3/gethostid.3:71
7782 msgid "The B<sethostid>() call is restricted to the superuser."
7783 msgstr "B<sethostid>() はスーパーユーザーしか使用できない。"
7786 #: build/C/man3/gethostid.3:75
7787 msgid "B<gethostid>() returns the 32-bit identifier for the current host as set by B<sethostid>()."
7788 msgstr "B<gethostid>() は、 B<sethostid>() によって設定された、現在使用しているホストの 32 ビットの識別子の値を返す。"
7791 #: build/C/man3/gethostid.3:81
7792 msgid "On success, B<sethostid>() returns 0; on error, -1 is returned, and I<errno> is set to indicate the error."
7793 msgstr "成功すると、 B<sethostid>() は 0 を返す。 エラーの場合、-1 を返し、 I<errno> にエラーを示す値を設定する。"
7796 #: build/C/man3/gethostid.3:84
7797 msgid "B<sethostid>() can fail with the following errors:"
7798 msgstr "B<sethostid>() は以下のエラーで失敗する可能性がある。"
7801 #: build/C/man3/gethostid.3:88
7802 msgid "The caller did not have permission to write to the file used to store the host ID."
7803 msgstr "呼び出し元がホスト ID を保存するのに使用されるファイルへの 書き込み許可を持っていなかった。"
7806 #: build/C/man3/gethostid.3:92
7807 msgid "The calling process's effective user or group ID is not the same as its corresponding real ID."
7808 msgstr "呼び出し元プロセスの実効 UID/GID が対応する実 UID/GID と同じではない。"
7811 #: build/C/man3/gethostid.3:102
7812 msgid "4.2BSD; these functions were dropped in 4.4BSD. SVr4 includes B<gethostid>() but not B<sethostid>(). POSIX.1-2001 specifies B<gethostid>() but not B<sethostid>()."
7813 msgstr "4.2BSD。4.4BSD ではこれらの関数はなくなった。 SVr4 には B<gethostid>() は含まれているが、 B<sethostid>() は含まれていない。 POSIX.1-2001 では、 B<gethostid>() は規定されているが、 B<sethostid>() は規定されていない。"
7815 #. libc5 used /etc/hostid; libc4 didn't have these functions
7817 #: build/C/man3/gethostid.3:111
7818 msgid "In the glibc implementation, the I<hostid> is stored in the file I</etc/hostid>. (In glibc versions before 2.2, the file I</var/adm/hostid> was used.)"
7819 msgstr "glibc の実装では、 I<hostid> はファイル I</etc/hostid> に保存される (バージョン 2.2 より前の glibc では、 I</var/adm/hostid> が使用されていた)。"
7822 #: build/C/man3/gethostid.3:122
7823 msgid "In the glibc implementation, if B<gethostid>() cannot open the file containing the host ID, then it obtains the hostname using B<gethostname>(2), passes that hostname to B<gethostbyname_r>(3) in order to obtain the host's IPv4 address, and returns a value obtained by bit-twiddling the IPv4 address. (This value may not be unique.)"
7824 msgstr "glibc の実装では、ホスト ID を保存したファイルを オープンできなかった場合、 B<gethostid>() は B<gethostname>(2) を使ってホスト名を入手し、そのホスト名を B<gethostbyname_r>(3) に渡しホストの IPv4 アドレスを取得して、 その IPv4 アドレスのビット入れ替えを行った値を返す。"
7827 #: build/C/man3/gethostid.3:124
7828 msgid "It is impossible to ensure that the identifier is globally unique."
7829 msgstr "識別子が世界中で一意であることを保証することはできない。"
7832 #: build/C/man3/gethostid.3:127
7833 msgid "B<hostid>(1), B<gethostbyname>(3)"
7834 msgstr "B<hostid>(1), B<gethostbyname>(3)"
7837 #: build/C/man2/gethostname.2:32
7840 msgstr "GETHOSTNAME"
7843 #: build/C/man2/gethostname.2:35
7844 msgid "gethostname, sethostname - get/set hostname"
7845 msgstr "gethostname, sethostname - ホスト名の取得・設定をする"
7848 #: build/C/man2/gethostname.2:39
7849 msgid "B<int gethostname(char *>I<name>B<, size_t >I<len>B<);>"
7850 msgstr "B<int gethostname(char *>I<name>B<, size_t >I<len>B<);>"
7853 #: build/C/man2/gethostname.2:41
7854 msgid "B<int sethostname(const char *>I<name>B<, size_t >I<len>B<);>"
7855 msgstr "B<int sethostname(const char *>I<name>B<, size_t >I<len>B<);>"
7858 #: build/C/man2/gethostname.2:50
7859 msgid "B<gethostname>():"
7860 msgstr "B<gethostname>():"
7863 #: build/C/man2/gethostname.2:53
7864 msgid "Since glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
7865 msgstr "glibc 2.12 以降: _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
7868 #: build/C/man2/gethostname.2:55
7869 msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
7870 msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
7873 #: build/C/man2/gethostname.2:58
7874 msgid "B<sethostname>():"
7875 msgstr "B<sethostname>():"
7878 #: build/C/man2/gethostname.2:66
7879 msgid "These system calls are used to access or to change the hostname of the current processor."
7880 msgstr "これらのシステムコールは、現在のプロセッサのホスト名を取得・変更するために 使用される。"
7883 #: build/C/man2/gethostname.2:77
7884 msgid "B<sethostname>() sets the hostname to the value given in the character array I<name>. The I<len> argument specifies the number of bytes in I<name>. (Thus, I<name> does not require a terminating null byte.)"
7885 msgstr "B<sethostname>() は、ホスト名を、文字配列 I<name> で指定された値に設定する。 引き数 I<len> には、 I<name> のバイト数を指定する (そのため、 I<name> では文字列終端のヌルバイトは必要ない)。"
7888 #: build/C/man2/gethostname.2:89
7889 msgid "B<gethostname>() returns the null-terminated hostname in the character array I<name>, which has a length of I<len> bytes. If the null-terminated hostname is too large to fit, then the name is truncated, and no error is returned (but see NOTES below). POSIX.1-2001 says that if such truncation occurs, then it is unspecified whether the returned buffer includes a terminating null byte."
7890 msgstr "B<gethostname>() は、NULL 終端されたホスト名を、 I<len> バイトの長さの文字配列 I<name> に格納して返す。ヌル終端されたホスト名が格納先のバッファーよりも長い場合は、 ホスト名は切り詰められ、エラーは返されない (下記の「注意」の節を参照)。 POSIX.1-2001 では、結果の切り詰めが発生した場合に、 返されたバッファーに終端のヌルバイトが含まれているかどうかは 規定されていない。"
7893 #: build/C/man2/gethostname.2:99
7894 msgid "I<name> is an invalid address."
7895 msgstr "I<name> が不正なアドレスである。"
7897 #. Can't occur for gethostbyname() wrapper, since 'len' has an
7898 #. unsigned type; can occur for the underlying system call.
7900 #: build/C/man2/gethostname.2:109
7901 msgid "I<len> is negative or, for B<sethostname>(), I<len> is larger than the maximum allowed size."
7902 msgstr "I<len> が負である。 B<sethostname>() において I<len> が許容された最大サイズを越えている。"
7905 #: build/C/man2/gethostname.2:117
7906 msgid "(glibc B<gethostname>()) I<len> is smaller than the actual size. (Before version 2.1, glibc uses B<EINVAL> for this case.)"
7907 msgstr "(glibc B<gethostname>() で) I<len> が実際のホスト名の長さよりも小さい (glibc バージョン 2.1 より前では、この状況で B<EINVAL> が使用される)。"
7910 #: build/C/man2/gethostname.2:124
7911 msgid "For B<sethostname>(), the caller did not have the B<CAP_SYS_ADMIN> capability."
7912 msgstr "B<sethostname>() において、呼び出した人が B<CAP_SYS_ADMIN> ケーパビリティ (capability) を持っていなかった。"
7915 #: build/C/man2/gethostname.2:130
7916 msgid "SVr4, 4.4BSD (these interfaces first appeared in 4.2BSD). POSIX.1-2001 specifies B<gethostname>() but not B<sethostname>()."
7917 msgstr "SVr4, 4.4BSD (これらのインタフェースは 4.2BSD で初めて登場した)。 POSIX.1-2001 では B<gethostname>() については規定しているが、 B<sethostname>() は規定していない。"
7920 #: build/C/man2/gethostname.2:140
7921 msgid "SUSv2 guarantees that \"Host names are limited to 255 bytes\". POSIX.1-2001 guarantees that \"Host names (not including the terminating null byte) are limited to B<HOST_NAME_MAX> bytes\". On Linux, B<HOST_NAME_MAX> is defined with the value 64, which has been the limit since Linux 1.0 (earlier kernels imposed a limit of 8 bytes)."
7922 msgstr "SUSv2 では「ホスト名が 255 バイトに制限される」ことを保証している。 POSIX.1-2001 では「ホスト名 (終端のヌルバイトは含まない) が B<HOST_NAME_MAX> バイトに制限される」ことを保証している。 Linux では、 B<HOST_NAME_MAX> は 64 に定義されており、 Linux 1.0 以降ではこれが上限となってきた (もっと古いカーネルでは 8 バイトの上限が適用されていた)。"
7925 #: build/C/man2/gethostname.2:163
7926 msgid "The GNU C library does not employ the B<gethostname>() system call; instead, it implements B<gethostname>() as a library function that calls B<uname>(2) and copies up to I<len> bytes from the returned I<nodename> field into I<name>. Having performed the copy, the function then checks if the length of the I<nodename> was greater than or equal to I<len>, and if it is, then the function returns -1 with I<errno> set to B<ENAMETOOLONG>; in this case, a terminating null byte is not included in the returned I<name>."
7927 msgstr "GNU C ライブラリは、 B<gethostname>() システムコールを利用していない。その代わり、 B<gethostname>() をライブラリ関数として実装しており、 この関数は B<uname>(2) を呼び出し、 B<uname>(2) が返した I<nodename> フィールド (の最大 I<len> バイト) を I<name> にコピーする。 コピーを行った際に、この関数は I<nodename> の長さが I<len> 以上かの確認を行い、 I<len> 以上の場合には -1 を返し、 I<errno> に B<ENAMETOOLONG> を設定する。 この場合、返された I<name> には終端のヌルバイトは含まれない。"
7929 #. At least glibc 2.0 and 2.1, older versions not checked
7931 #: build/C/man2/gethostname.2:176
7932 msgid "Versions of glibc before 2.2 handle the case where the length of the I<nodename> was greater than or equal to I<len> differently: nothing is copied into I<name> and the function returns -1 with I<errno> set to B<ENAMETOOLONG>."
7933 msgstr "バージョン 2.2 より前の glibc では、 I<nodename> の長さが I<len> 以上の場合の扱いが異なる; I<len> 以上の場合には、 I<name> には何もコピーせず、関数は -1 を返し、 I<errno> に B<ENAMETOOLONG> を設定する。"
7936 #: build/C/man2/gethostname.2:180
7937 msgid "B<getdomainname>(2), B<setdomainname>(2), B<uname>(2)"
7938 msgstr "B<getdomainname>(2), B<setdomainname>(2), B<uname>(2)"
7941 #: build/C/man3/getlogin.3:28
7947 #: build/C/man3/getlogin.3:28
7953 #: build/C/man3/getlogin.3:31
7954 msgid "getlogin, getlogin_r, cuserid - get username"
7955 msgstr "getlogin, getlogin_r, cuserid - ユーザー名を取得する"
7958 #: build/C/man3/getlogin.3:35
7959 msgid "B<char *getlogin(void);>"
7960 msgstr "B<char *getlogin(void);>"
7963 #: build/C/man3/getlogin.3:37
7964 msgid "B<int getlogin_r(char *>I<buf>B<, size_t >I<bufsize>B<);>"
7965 msgstr "B<int getlogin_r(char *>I<buf>B<, size_t >I<bufsize>B<);>"
7968 #: build/C/man3/getlogin.3:39
7969 msgid "B<#include E<lt>stdio.hE<gt>>"
7970 msgstr "B<#include E<lt>stdio.hE<gt>>"
7973 #: build/C/man3/getlogin.3:41
7974 msgid "B<char *cuserid(char *>I<string>B<);>"
7975 msgstr "B<char *cuserid(char *>I<string>B<);>"
7978 #: build/C/man3/getlogin.3:49
7979 msgid "B<getlogin_r>(): _REENTRANT || _POSIX_C_SOURCE\\ E<gt>=\\ 199506L"
7980 msgstr "B<getlogin_r>(): _REENTRANT || _POSIX_C_SOURCE\\ E<gt>=\\ 199506L"
7983 #: build/C/man3/getlogin.3:52
7984 msgid "B<cuserid>(): _XOPEN_SOURCE"
7985 msgstr "B<cuserid>(): _XOPEN_SOURCE"
7988 #: build/C/man3/getlogin.3:61
7989 msgid "B<getlogin>() returns a pointer to a string containing the name of the user logged in on the controlling terminal of the process, or a null pointer if this information cannot be determined. The string is statically allocated and might be overwritten on subsequent calls to this function or to B<cuserid>()."
7990 msgstr "B<getlogin>() は、現在のプロセスの制御端末にログインしているユーザー名の文字列への ポインタを返す。ユーザー名が決定できない場合はヌルポインタを返す。 文字列は静的領域に割り当てられており、この後でこの関数や B<cuserid>() が呼び出された際に上書きされることがある。"
7993 #: build/C/man3/getlogin.3:67
7994 msgid "B<getlogin_r>() returns this same username in the array I<buf> of size I<bufsize>."
7995 msgstr "B<getlogin_r>() は、上記の同じユーザー名を、大きさ I<bufsize> の配列 I<buf> に入れて返す。"
7998 #: build/C/man3/getlogin.3:79
7999 msgid "B<cuserid>() returns a pointer to a string containing a username associated with the effective user ID of the process. If I<string> is not a null pointer, it should be an array that can hold at least B<L_cuserid> characters; the string is returned in this array. Otherwise, a pointer to a string in a static area is returned. This string is statically allocated and might be overwritten on subsequent calls to this function or to B<getlogin>()."
8000 msgstr "B<cuserid>() は、現在のプロセスの実効ユーザーID に対応するユーザー名の 文字列へのポインタを返す。 I<string> がヌルポインタ以外の場合、I<string> は少なくとも B<L_cuserid> 文字を保持できる配列でなければならない。 I<string> が ヌルポインタの場合には、静的領域に置かれた文字列への ポインタが返される。この文字列は静的領域に割り当てられており、後で この関数や B<getlogin>() が呼び出された際に上書きされることがある。"
8003 #: build/C/man3/getlogin.3:83
8004 msgid "The macro B<L_cuserid> is an integer constant that indicates how long an array you might need to store a username. B<L_cuserid> is declared in I<E<lt>stdio.hE<gt>>."
8005 msgstr "マクロ B<L_cuserid> は integer の定数で、ユーザー名を保持するために 必要な配列の長さを示す。 B<L_cuserid> は B<stdio.h> で宣言されて いる。"
8008 #: build/C/man3/getlogin.3:90
8009 msgid "These functions let your program identify positively the user who is running (B<cuserid>()) or the user who logged in this session (B<getlogin>()). (These can differ when set-user-ID programs are involved.)"
8010 msgstr "これらの関数を使うと、プログラムを実行しているユーザー (B<cuserid>()) や このセッションにログインしているユーザー (B<getlogin>()) を明確に特定することができる (ただし set-user-ID プログラムでは、状況が違うこともある)。"
8013 #: build/C/man3/getlogin.3:95
8014 msgid "For most purposes, it is more useful to use the environment variable B<LOGNAME> to find out who the user is. This is more flexible precisely because the user can set B<LOGNAME> arbitrarily."
8015 msgstr "たいていの目的では、ユーザーの特定には環境変数 B<LOGNAME> を調べ るほうが便利である。LOGNAME 変数はユーザーが自由に設定できるので より柔軟な対応が可能になる。"
8018 #: build/C/man3/getlogin.3:103
8019 msgid "B<getlogin>() returns a pointer to the username when successful, and NULL on failure, with I<errno> set to indicate the cause of the error. B<getlogin_r>() returns 0 when successful, and nonzero on failure."
8020 msgstr "B<getlogin>() は成功した場合はユーザー名へのポインタを返す。 失敗した場合は NULL を返し、 I<errno> にエラーの原因を示す値を設定する。 B<getlogin_r>() は成功すると 0 を返し、失敗すると 0 以外を返す。"
8023 #: build/C/man3/getlogin.3:105
8024 msgid "POSIX specifies"
8025 msgstr "POSIX では以下のエラーが規定されている:"
8028 #: build/C/man3/getlogin.3:108
8029 msgid "The calling process already has the maximum allowed number of open files."
8030 msgstr "呼び出し元プロセスがオープンしているファイル数がすでにプロセスあたりの 上限に達している。"
8033 #: build/C/man3/getlogin.3:111
8034 msgid "The system already has the maximum allowed number of open files."
8035 msgstr "システム全体でオープンしているファイル数がすでに上限に達している。"
8038 #: build/C/man3/getlogin.3:111
8044 #: build/C/man3/getlogin.3:114
8045 msgid "The calling process has no controlling terminal."
8046 msgstr "呼び出し元プロセスには制御端末がない。"
8049 #: build/C/man3/getlogin.3:120
8050 msgid "(getlogin_r) The length of the username, including the terminating null byte (\\(aq\\e0\\(aq), is larger than I<bufsize>."
8051 msgstr "(getlogin_r) (終端のヌルバイト (\\(aq\\e0\\(aq) も含めた) ユーザー名の長さが I<bufsize> よりも長い。"
8054 #: build/C/man3/getlogin.3:122
8055 msgid "Linux/glibc also has"
8056 msgstr "Linux/glibc には以下のエラーもある。"
8059 #: build/C/man3/getlogin.3:125
8060 msgid "There was no corresponding entry in the utmp-file."
8061 msgstr "utmp ファイルに対応するエントリがなかった。"
8064 #: build/C/man3/getlogin.3:128
8065 msgid "Insufficient memory to allocate passwd structure."
8066 msgstr "passwd 構造体を割り当てるのに十分なメモリがない。"
8069 #: build/C/man3/getlogin.3:128 build/C/man2/ioctl.2:109
8070 #: build/C/man2/ioctl.2:113 build/C/man3/tcgetpgrp.3:95
8076 #: build/C/man3/getlogin.3:132
8077 msgid "Standard input didn't refer to a terminal. (See BUGS.)"
8078 msgstr "標準入力が端末を参照していない (「バグ」の節を参照)。"
8081 #: build/C/man3/getlogin.3:133
8083 msgid "I</etc/passwd>"
8084 msgstr "I</etc/passwd>"
8087 #: build/C/man3/getlogin.3:136
8088 msgid "password database file"
8089 msgstr "パスワードデータベースのファイル"
8092 #: build/C/man3/getlogin.3:136
8094 msgid "I</var/run/utmp>"
8095 msgstr "I</var/run/utmp>"
8098 #: build/C/man3/getlogin.3:140
8099 msgid "(traditionally I</etc/utmp>; some libc versions used I</var/adm/utmp>)"
8100 msgstr "(伝統的には I</etc/utmp> が使われている; libc の中には I</var/adm/utmp> を使うものもある)"
8103 #: build/C/man3/getlogin.3:145
8104 msgid "The B<getlogin>() function is not thread-safe."
8105 msgstr "B<getlogin>() 関数はスレッドセーフではない。"
8108 #: build/C/man3/getlogin.3:149
8109 msgid "The B<getlogin_r>() function is thread-safe."
8110 msgstr "B<getlogin_r>() 関数はスレッドセーフである。"
8113 #: build/C/man3/getlogin.3:154
8114 msgid "The B<cuserid>() function is thread-safe with exceptions. It is not thread-safe if called with a NULL parameter."
8115 msgstr "B<cuserid>() 関数は、例外付きのスレッドセーフである。 パラメーター NULL で呼び出した場合はスレッドセーフではない。"
8118 #: build/C/man3/getlogin.3:159
8119 msgid "B<getlogin>() and B<getlogin_r>() specified in POSIX.1-2001."
8120 msgstr "B<getlogin>() と B<getlogin_r>() は POSIX.1-2001 で規定されている。"
8123 #: build/C/man3/getlogin.3:170
8124 msgid "System V has a B<cuserid>() function which uses the real user ID rather than the effective user ID. The B<cuserid>() function was included in the 1988 version of POSIX, but removed from the 1990 version. It was present in SUSv2, but removed in POSIX.1-2001."
8125 msgstr "System V にも B<cuserid>() があるが、 これは実効ユーザー ID ではなく、実ユーザー ID を使用する。 B<cuserid>() 関数は 1988 年版の POSIX には含まれていたが、 1990 年版では削除された。 SUSv2 に存在したが、POSIX.1-2001 で削除された。"
8128 #: build/C/man3/getlogin.3:177
8129 msgid "OpenBSD has B<getlogin>() and B<setlogin>(), and a username associated with a session, even if it has no controlling terminal."
8130 msgstr "OpenBSD には B<getlogin>() と B<setlogin>() があり、 セッションに対応したユーザー名がある。制御端末がない セッションの場合であっても、対応するユーザー名がある。"
8133 #: build/C/man3/getlogin.3:189
8134 msgid "Unfortunately, it is often rather easy to fool B<getlogin>(). Sometimes it does not work at all, because some program messed up the utmp file. Often, it gives only the first 8 characters of the login name. The user currently logged in on the controlling terminal of our program need not be the user who started it. Avoid B<getlogin>() for security-related purposes."
8135 msgstr "残念ながら、 B<getlogin>() をだますのはそれほど難しいことではない。別のプログラムが utmp ファイルを 壊してしまうと、全く動作しないこともある。またログイン名の最初の 8 文字 しか返さないことも多い。また、プログラムの制御端末に現在ログインしているユーザーは、プログラムを実行したユーザーでない場合もある。 セキュリティの絡む用途には B<getlogin>() を用いるべきではない。"
8138 #: build/C/man3/getlogin.3:199
8139 msgid "Note that glibc does not follow the POSIX specification and uses I<stdin> instead of I</dev/tty>. A bug. (Other recent systems, like SunOS 5.8 and HP-UX 11.11 and FreeBSD 4.8 all return the login name also when I<stdin> is redirected.)"
8140 msgstr "glibc は POSIX 仕様には従っておらず、 I</dev/tty> ではなく I<標準入力 (stdin)> を使う。これはバグである。 (SunOS 5.8 や HP-UX 11.11 や FreeBSD 4.8 といった他の最近のシステムはいずれも、 I<標準入力> がリダイレクトされた場合でもログイン名を返す。)"
8143 #: build/C/man3/getlogin.3:209
8144 msgid "Nobody knows precisely what B<cuserid>() does; avoid it in portable programs. Or avoid it altogether: use I<getpwuid(geteuid())> instead, if that is what you meant. B<Do not use> B<cuserid>()."
8145 msgstr "B<cuserid>() が何を行っているのか、実際のところを知っている者は誰もいない; 移植性が求められるプログラムでは B<cuserid>() は使うべきではない。 というかどんなプログラムでも使うべきではない: 代わりに I<getpwuid(geteuid())> を用いるべきである (これが意図していることならば、だが)。 B<cuserid>() は「使わない」こと。"
8148 #: build/C/man3/getlogin.3:213
8149 msgid "B<geteuid>(2), B<getuid>(2), B<utmp>(5)"
8150 msgstr "B<geteuid>(2), B<getuid>(2), B<utmp>(5)"
8153 #: build/C/man3/getopt.3:41
8159 #: build/C/man3/getopt.3:41 build/C/man2/ioctl.2:41 build/C/man3/sysconf.3:27
8165 #: build/C/man3/getopt.3:45
8166 msgid "getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - Parse command-line options"
8167 msgstr "getopt, getopt_long, getopt_long_only, optarg, optind, opterr, optopt - コマンドラインオプションを解釈する"
8170 #: build/C/man3/getopt.3:51
8173 "B<int getopt(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
8174 "B< const char *>I<optstring>B<);>\n"
8176 "B<int getopt(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
8177 "B< const char *>I<optstring>B<);>\n"
8180 #: build/C/man3/getopt.3:54
8183 "B<extern char *>I<optarg>B<;>\n"
8184 "B<extern int >I<optind>B<, >I<opterr>B<, >I<optopt>B<;>\n"
8186 "B<extern char *>I<optarg>B<;>\n"
8187 "B<extern int >I<optind>B<, >I<opterr>B<, >I<optopt>B<;>\n"
8190 #: build/C/man3/getopt.3:56
8192 msgid "B<#include E<lt>getopt.hE<gt>>\n"
8193 msgstr "B<#include E<lt>getopt.hE<gt>>\n"
8196 #: build/C/man3/getopt.3:60
8199 "B<int getopt_long(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
8200 "B< const char *>I<optstring>B<,>\n"
8201 "B< const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
8203 "B<int getopt_long(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
8204 "B< const char *>I<optstring>B<,>\n"
8205 "B< const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
8208 #: build/C/man3/getopt.3:64
8211 "B<int getopt_long_only(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
8212 "B< const char *>I<optstring>B<,>\n"
8213 "B< const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
8215 "B<int getopt_long_only(int >I<argc>B<, char * const >I<argv[]>B<,>\n"
8216 "B< const char *>I<optstring>B<,>\n"
8217 "B< const struct option *>I<longopts>B<, int *>I<longindex>B<);>\n"
8220 #: build/C/man3/getopt.3:74
8221 msgid "B<getopt>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
8222 msgstr "B<getopt>(): _POSIX_C_SOURCE\\ E<gt>=\\ 2 || _XOPEN_SOURCE"
8225 #: build/C/man3/getopt.3:78
8226 msgid "B<getopt_long>(), B<getopt_long_only>(): _GNU_SOURCE"
8227 msgstr "B<getopt_long>(), B<getopt_long_only>(): _GNU_SOURCE"
8230 #: build/C/man3/getopt.3:99
8231 msgid "The B<getopt>() function parses the command-line arguments. Its arguments I<argc> and I<argv> are the argument count and array as passed to the I<main>() function on program invocation. An element of I<argv> that starts with \\(aq-\\(aq (and is not exactly \"-\" or \"--\") is an option element. The characters of this element (aside from the initial \\(aq-\\(aq) are option characters. If B<getopt>() is called repeatedly, it returns successively each of the option characters from each of the option elements."
8232 msgstr "B<getopt>() 関数はコマンドライン引き数を解釈する。 B<getopt>() がとる引き数 I<argc> と I<argv> は、それぞれプログラムの起動時に I<main>() 関数に渡された引き数の個数と配列である。 I<argv> の要素のうち \\(aq-\\(aq で始まるもの (かつ \"-\" 単独や \"--\" 単独ではないもの) は オプション要素 (option element) とみなされる。 この要素から先頭の \\(aq-\\(aq を除いた文字は オプション文字 (option character) とされる。 B<getopt>() は、繰り返し呼び出されるごとに、次のオプション文字を返す。"
8235 #: build/C/man3/getopt.3:108
8236 msgid "The variable I<optind> is the index of the next element to be processed in I<argv>. The system initializes this value to 1. The caller can reset it to 1 to restart scanning of the same I<argv>, or when scanning a new argument vector."
8237 msgstr "変数 I<optind> は、 I<argv> の次に処理される要素のインデックスである。 システムによりこの変数の値は 1 に初期化される。 呼び出し側でこの値を 1 にリセットすることで、同じ I<argv> のスキャンをやり直したり、新しい引き数ベクトルをスキャンすることができる。"
8240 #: build/C/man3/getopt.3:118
8241 msgid "If B<getopt>() finds another option character, it returns that character, updating the external variable I<optind> and a static variable I<nextchar> so that the next call to B<getopt>() can resume the scan with the following option character or I<argv>-element."
8242 msgstr "新たなオプション文字を見つけると、 B<getopt>() はその文字を返し、 外部変数 I<optind> とスタティックな変数 I<nextchar> を更新する。 これらによって、 B<getopt>() は次回の呼び出しの際に、 以降のオプション文字や I<argv> 要素のスキャンを継続できる。"
8245 #: build/C/man3/getopt.3:124
8246 msgid "If there are no more option characters, B<getopt>() returns -1. Then I<optind> is the index in I<argv> of the first I<argv>-element that is not an option."
8247 msgstr "オプション文字がそれ以上見つからなくなると、 B<getopt>() は -1 を返す。そして I<optind> は、I<argv> の要素のうち、 オプションでない最初の要素を示すようになる。"
8250 #: build/C/man3/getopt.3:151
8251 msgid "I<optstring> is a string containing the legitimate option characters. If such a character is followed by a colon, the option requires an argument, so B<getopt>() places a pointer to the following text in the same I<argv>-element, or the text of the following I<argv>-element, in I<optarg>. Two colons mean an option takes an optional arg; if there is text in the current I<argv>-element (i.e., in the same word as the option name itself, for example, \"-oarg\"), then it is returned in I<optarg>, otherwise I<optarg> is set to zero. This is a GNU extension. If I<optstring> contains B<W> followed by a semicolon, then B<-W foo> is treated as the long option B<--foo>. (The B<-W> option is reserved by POSIX.2 for implementation extensions.) This behavior is a GNU extension, not available with libraries before glibc 2."
8252 msgstr "I<optstring> は受け付けるオプション文字からなる文字列である。 文字のあとにコロン (:) が置かれている場合は、 オプションには引き数が必要であることを示す。 このとき B<getopt>() は、現在注目している I<argv> 要素で、オプション文字に引き続くテキストへのポインタか、 あるいは次の I<argv> 要素のテキストへのポインタを I<optarg> に代入する。 2 個連続してコロンが置かれている場合は、 そのオプションは引き数をとってもとらなくてもよい。 現在の I<argv> 要素にテキストがあれば (つまり、\"-oarg\" のように、オプション名自身と同じワード内に テキストがある場合)、それが I<optarg> に返される。 なければ I<optarg> は 0 に設定される。 これは GNU による拡張である。 I<optstring> に B<W> とそれに続くセミコロンが入っていると、 B<-W foo> は長いオプション B<--foo> と同じように扱われる (POSIX.2 は B<-W> オプションを実装依存の拡張として予約している)。 この動作は GNU による拡張であり、glibc 2 以前のライブラリでは 利用できない。"
8255 #: build/C/man3/getopt.3:169
8256 msgid "By default, B<getopt>() permutes the contents of I<argv> as it scans, so that eventually all the nonoptions are at the end. Two other modes are also implemented. If the first character of I<optstring> is \\(aq+\\(aq or the environment variable B<POSIXLY_CORRECT> is set, then option processing stops as soon as a nonoption argument is encountered. If the first character of I<optstring> is \\(aq-\\(aq, then each nonoption I<argv>-element is handled as if it were the argument of an option with character code 1. (This is used by programs that were written to expect options and other I<argv>-elements in any order and that care about the ordering of the two.) The special argument \"--\" forces an end of option-scanning regardless of the scanning mode."
8257 msgstr "デフォルトでは B<getopt>() は I<argv> をスキャンする際に順序を変更し、 オプション以外の要素を最後に移動する。 他にも 2 つのモードが実装されている。 I<optstring> の先頭文字が \\(aq+\\(aq であるか、環境変数 B<POSIXLY_CORRECT> が設定されている場合には、オプションを対象とする動作は、 非オプションの引き数が現れた段階で終了する。 I<optstring> の先頭文字が \\(aq-\\(aq である場合には、 オプションでない I<argv> 要素は、 文字コード 1 のオプションであるかのように扱われる (これを用いるプログラムは、 オプションや I<argv> 要素を任意の順序で受け入れ、かつそれらの順序が 意味を持つように書かれている必要がある)。 \"--\" は特殊な引き数で、スキャンのモードによらず、 オプションのスキャンを強制的に終了させる。"
8260 #: build/C/man3/getopt.3:177
8261 msgid "If B<getopt>() does not recognize an option character, it prints an error message to I<stderr>, stores the character in I<optopt>, and returns \\(aq?\\(aq. The calling program may prevent the error message by setting I<opterr> to 0."
8262 msgstr "認識できないオプション文字があると、 B<getopt>() はエラーメッセージを標準エラー出力 I<stderr> に表示し、 その文字を I<optopt> に保存して \\(aq?\\(aq を返す。 呼び出したプログラムで I<opterr> を 0 にしておけば、 エラーメッセージの表示を抑制できる。"
8265 #: build/C/man3/getopt.3:196
8266 msgid "If B<getopt>() finds an option character in I<argv> that was not included in I<optstring>, or if it detects a missing option argument, it returns \\(aq?\\(aq and sets the external variable I<optopt> to the actual option character. If the first character (following any optional \\(aq+\\(aq or \\(aq-\\(aq described above) of I<optstring> is a colon (\\(aq:\\(aq), then B<getopt>() returns \\(aq:\\(aq instead of \\(aq?\\(aq to indicate a missing option argument. If an error was detected, and the first character of I<optstring> is not a colon, and the external variable I<opterr> is nonzero (which is the default), B<getopt>() prints an error message."
8267 msgstr "B<getopt>() は I<argv> の中に I<optstring> にないオプション文字を見つけた場合、 またはオプション引き数が足りないことが分かった場合、 \\&\\(aq?\\(aq を返して外部変数 I<optopt> をそのオプション文字に設定する。 I<optstring> の (上で説明したオプションで指定できる \\&\\(aq+\\(aq または \\(aq-\\(aq 後に続く) 最初の文字が コロン (\\(aq:\\(aq) のとき、 B<getopt>() はオプション引き数が足りない場合に \\(aq?\\(aq ではなく \\(aq:\\(aq を返す。 エラーを見つけた場合で、かつ I<optstring> の最初の文字がコロンでなく、 かつ外部変数 I<opterr> が 0 でない場合 (これがデフォルト)、 B<getopt>() はエラーメッセージを表示する。"
8270 #: build/C/man3/getopt.3:196
8272 msgid "getopt_long() and getopt_long_only()"
8273 msgstr "getopt_long() と getopt_long_only()"
8276 #: build/C/man3/getopt.3:212
8277 msgid "The B<getopt_long>() function works like B<getopt>() except that it also accepts long options, started with two dashes. (If the program accepts only long options, then I<optstring> should be specified as an empty string (\"\"), not NULL.) Long option names may be abbreviated if the abbreviation is unique or is an exact match for some defined option. A long option may take a parameter, of the form B<--arg=param> or B<--arg param>."
8278 msgstr "B<getopt_long>() 関数は、長いオプション (2 つのダッシュ \"--\" で始まるオプション) を 受け入れることを除いて B<getopt>() と同じように動作する (プログラムに長いオプションだけが渡された場合、 I<optstring> は NULL ではなく空文字列 (\"\") となる)。 長いオプションの名前は、他と重ならない範囲において短縮できる。 あるいは定義されたオプションに正確にマッチするものでも (当然) かまわない。 長いオプションは引き数を取ることができ、 B<--arg=param> または B<--arg param> と言う形式で指定する。"
8281 #: build/C/man3/getopt.3:219
8282 msgid "I<longopts> is a pointer to the first element of an array of I<struct option> declared in I<E<lt>getopt.hE<gt>> as"
8283 msgstr "I<longopts> は I<struct option> の要素からなる配列の、先頭要素へのポインタである。 I<struct option> は I<E<lt>getopt.hE<gt>> で以下のように定義されている。"
8286 #: build/C/man3/getopt.3:228
8290 " const char *name;\n"
8297 " const char *name;\n"
8304 #: build/C/man3/getopt.3:232
8305 msgid "The meanings of the different fields are:"
8306 msgstr "それぞれのフィールドの意味は以下の通り。"
8309 #: build/C/man3/getopt.3:232
8315 #: build/C/man3/getopt.3:235
8316 msgid "is the name of the long option."
8317 msgstr "長いオプションの名前。"
8320 #: build/C/man3/getopt.3:235
8326 #: build/C/man3/getopt.3:241
8327 msgid "is: B<no_argument> (or 0) if the option does not take an argument; B<required_argument> (or 1) if the option requires an argument; or B<optional_argument> (or 2) if the option takes an optional argument."
8328 msgstr "B<no_argument> (または 0) なら、オプションは引き数をとらない。 B<required_argument> (または 1) なら、オプションは引き数を必要とする。 B<optional_argument> (または 2) なら、オプションは引き数をとっても とらなくても良い。"
8331 #: build/C/man3/getopt.3:241
8337 #: build/C/man3/getopt.3:255
8338 msgid "specifies how results are returned for a long option. If I<flag> is NULL, then B<getopt_long>() returns I<val>. (For example, the calling program may set I<val> to the equivalent short option character.) Otherwise, B<getopt_long>() returns 0, and I<flag> points to a variable which is set to I<val> if the option is found, but left unchanged if the option is not found."
8339 msgstr "長いオプションに対する結果の返し方を指定する。I<flag> が NULL なら B<getopt_long>() は I<val> を返す (例えば呼び出し元のプログラムは、 I<val> に等価なオプション文字を代入することができる)。 NULL 以外の場合には、 B<getopt_long>() は 0 を返す。 このときオプションが見つかると I<flag> がポイントする変数に I<val> が代入される。見つからないとこの変数は変更されない。"
8342 #: build/C/man3/getopt.3:255
8348 #: build/C/man3/getopt.3:259
8349 msgid "is the value to return, or to load into the variable pointed to by I<flag>."
8350 msgstr "返り値、または I<flag> がポイントする変数へロードされる値。"
8353 #: build/C/man3/getopt.3:261
8354 msgid "The last element of the array has to be filled with zeros."
8355 msgstr "配列の最後の要素は、全て 0 で埋められていなければならない。"
8358 #: build/C/man3/getopt.3:265
8359 msgid "If I<longindex> is not NULL, it points to a variable which is set to the index of the long option relative to I<longopts>."
8360 msgstr "I<longindex> は、NULL でなければ、 長いオプションのインデックスを I<longopts> からの相対位置として保持している変数へのポインタとなる。"
8363 #: build/C/man3/getopt.3:274
8364 msgid "B<getopt_long_only>() is like B<getopt_long>(), but \\(aq-\\(aq as well as \"--\" can indicate a long option. If an option that starts with \\(aq-\\(aq (not \"--\") doesn't match a long option, but does match a short option, it is parsed as a short option instead."
8365 msgstr "B<getopt_long_only>() は B<getopt_long>() と同様の動作をするが、 \\(aq-\\(aq も \"--\" と同様に、 長いオプションとして扱われる。\\(aq-\\(aq で始まる (\"--\" 以外の) オプションが、長いものにはマッチしないが短いものに マッチする場合においては、それは短いオプションとして解釈される。"
8368 #: build/C/man3/getopt.3:292
8369 msgid "If an option was successfully found, then B<getopt>() returns the option character. If all command-line options have been parsed, then B<getopt>() returns -1. If B<getopt>() encounters an option character that was not in I<optstring>, then \\(aq?\\(aq is returned. If B<getopt>() encounters an option with a missing argument, then the return value depends on the first character in I<optstring>: if it is \\(aq:\\(aq, then \\(aq:\\(aq is returned; otherwise \\(aq?\\(aq is returned."
8370 msgstr "オプションが正常に見つかれば B<getopt>() はそのオプション文字を返す。 すべてのコマンドラインオプションの解析が終わったら、 B<getopt>() は -1 を返す。 I<optstring> に含まれないオプション文字が見つかると、\\(aq?\\(aq を返す。 引き数が足りないオプションが見つかった場合、 返り値は I<optstring> の最初の文字による異なる: 最初の文字が \\(aq:\\(aq であれば \\(aq:\\(aq を返し、 それ以外の場合は \\(aq?\\(aq を返す。"
8373 #: build/C/man3/getopt.3:304
8374 msgid "B<getopt_long>() and B<getopt_long_only>() also return the option character when a short option is recognized. For a long option, they return I<val> if I<flag> is NULL, and 0 otherwise. Error and -1 returns are the same as for B<getopt>(), plus \\(aq?\\(aq for an ambiguous match or an extraneous parameter."
8375 msgstr "B<getopt_long>() と B<getopt_long_only>() も、 短いオプション文字を認識した場合にはその文字を返す。 長いオプションに対しては、 I<flag> が NULL なら I<val> を返し、 I<flag> が NULL 以外なら 0 を返す。 エラーと -1 の返り値は B<getopt>() と同じである。 さらに \\(aq?\\(aq は、マッチが確定できない場合や余分なパラメーターがある場合にも返る。"
8378 #: build/C/man3/getopt.3:304
8384 #: build/C/man3/getopt.3:305
8386 msgid "B<POSIXLY_CORRECT>"
8387 msgstr "B<POSIXLY_CORRECT>"
8390 #: build/C/man3/getopt.3:309
8391 msgid "If this is set, then option processing stops as soon as a nonoption argument is encountered."
8392 msgstr "これが設定されていると、非オプションの引き数に到達した時点でオプション に対する操作が停止される。"
8395 #: build/C/man3/getopt.3:309
8397 msgid "B<_E<lt>PIDE<gt>_GNU_nonoption_argv_flags_>"
8398 msgstr "B<_E<lt>PIDE<gt>_GNU_nonoption_argv_flags_>"
8401 #: build/C/man3/getopt.3:318
8402 msgid "This variable was used by B<bash>(1) 2.0 to communicate to glibc which arguments are the results of wildcard expansion and so should not be considered as options. This behavior was removed in B<bash>(1) version 2.01, but the support remains in glibc."
8403 msgstr "この変数は B<bash>(1) 2.0 が glibc と通信するために用いられた。 どの引き数がワイルドカードを展開した結果で、 したがってオプションとみなすべきでないかを知らせるものである。 この機能は B<bash>(1) のバージョン 2.01 で削除されたが、glibc にはまだ残っている。"
8406 #: build/C/man3/getopt.3:319
8408 msgid "B<getopt>():"
8409 msgstr "B<getopt>():"
8412 #: build/C/man3/getopt.3:329
8413 msgid "POSIX.2 and POSIX.1-2001, provided the environment variable B<POSIXLY_CORRECT> is set. Otherwise, the elements of I<argv> aren't really const, because we permute them. We pretend they're const in the prototype to be compatible with other systems."
8414 msgstr "環境変数 B<POSIXLY_CORRECT> が設定されている場合は POSIX.2 と POSIX.1-2001 に準拠する。 他の場合は I<argv> の要素は本当の意味での定数にはならない。 なぜなら順序が変更されてしまうからである。 ただしそれらは、プロトタイプでは定数であるかのようにしてある。 これは他のシステムとの互換性のためである。"
8417 #: build/C/man3/getopt.3:333
8418 msgid "The use of \\(aq+\\(aq and \\(aq-\\(aq in I<optstring> is a GNU extension."
8419 msgstr "I<optstring> で \\(aq+\\(aq や \\(aq-\\(aq を使うのは GNU による拡張である."
8422 #: build/C/man3/getopt.3:347
8423 msgid "On some older implementations, B<getopt>() was declared in I<E<lt>stdio.hE<gt>>. SUSv1 permitted the declaration to appear in either I<E<lt>unistd.hE<gt>> or I<E<lt>stdio.hE<gt>>. POSIX.1-2001 marked the use of I<E<lt>stdio.hE<gt>> for this purpose as LEGACY. POSIX.1-2001 does not allow the declaration to appear in I<E<lt>stdio.hE<gt>>."
8424 msgstr "古い実装のいくつかでは、 B<getopt>() は I<E<lt>stdio.hE<gt>> で宣言されていた。 SUSv1 では、 I<E<lt>unistd.hE<gt>> か I<E<lt>stdio.hE<gt>> のどちらかで 宣言してもよかった。 POSIX.1-2001 では、 B<getopt> の宣言を I<E<lt>stdio.hE<gt>> で行うのは「過去の名残」であるとされた。 POSIX.1-2001 では I<E<lt>stdio.hE<gt>> で宣言を行うことを認めていない。"
8427 #: build/C/man3/getopt.3:347
8429 msgid "B<getopt_long>() and B<getopt_long_only>():"
8430 msgstr "B<getopt_long>(), B<getopt_long_only>():"
8433 #: build/C/man3/getopt.3:369
8434 msgid "A program that scans multiple argument vectors, or rescans the same vector more than once, and wants to make use of GNU extensions such as \\(aq+\\(aq and \\(aq-\\(aq at the start of I<optstring>, or changes the value of B<POSIXLY_CORRECT> between scans, must reinitialize B<getopt>() by resetting I<optind> to 0, rather than the traditional value of 1. (Resetting to 0 forces the invocation of an internal initialization routine that rechecks B<POSIXLY_CORRECT> and checks for GNU extensions in I<optstring>.)"
8435 msgstr "複数の引き数ベクトルをスキャンしたり、同じ引き数ベクトルを二回以上 スキャンするようなプログラムで、 I<optstring> の先頭で \\(aq+\\(aq や \\(aq-\\(aq といった GNU による拡張機能を使用したり、 引き数ベクトルの切り替え時に B<POSIXLY_CORRECT> の値を変更したりする場合には、 I<optind> を伝統的な 1 ではなく 0 にリセットすることで B<getopt>() を再初期化しなければならない (0 にリセットすることで、 B<POSIXLY_CORRECT> や I<optstring> の GNU 拡張機能のチェックを行う内部初期化ルーチンが起動される)。"
8438 #: build/C/man3/getopt.3:376
8439 msgid "The POSIX.2 specification of B<getopt>() has a technical error described in POSIX.2 Interpretation 150. The GNU implementation (and probably all other implementations) implements the correct behavior rather than that specified."
8440 msgstr "POSIX.2 における B<getopt>() の仕様には技術的な問題があり、 その内容は POSIX.2 Interpretation 150 に記されている。 GNU による実装では (おそらく他のすべての実装でも)、 仕様と異なる正しい動作をするように実装されている。"
8443 #: build/C/man3/getopt.3:377
8449 #: build/C/man3/getopt.3:385
8450 msgid "The following trivial example program uses B<getopt>() to handle two program options: I<-n>, with no associated value; and I<-t val>, which expects an associated value."
8451 msgstr "以下に示す簡単なサンプルプログラムでは、 二種類のプログラムオプションを扱うのに B<getopt>() を使用している。一つは値を伴わない I<-n> で、もう一つは対応する値が必要な I<-t val> である。"
8454 #: build/C/man3/getopt.3:390
8457 "#include E<lt>unistd.hE<gt>\n"
8458 "#include E<lt>stdlib.hE<gt>\n"
8459 "#include E<lt>stdio.hE<gt>\n"
8461 "#include E<lt>unistd.hE<gt>\n"
8462 "#include E<lt>stdlib.hE<gt>\n"
8463 "#include E<lt>stdio.hE<gt>\n"
8466 #: build/C/man3/getopt.3:396
8470 "main(int argc, char *argv[])\n"
8472 " int flags, opt;\n"
8473 " int nsecs, tfnd;\n"
8476 "main(int argc, char *argv[])\n"
8478 " int flags, opt;\n"
8479 " int nsecs, tfnd;\n"
8482 #: build/C/man3/getopt.3:415
8488 " while ((opt = getopt(argc, argv, \"nt:\")) != -1) {\n"
8490 " case \\(aqn\\(aq:\n"
8493 " case \\(aqt\\(aq:\n"
8494 " nsecs = atoi(optarg);\n"
8497 " default: /* \\(aq?\\(aq */\n"
8498 " fprintf(stderr, \"Usage: %s [-t nsecs] [-n] name\\en\",\n"
8500 " exit(EXIT_FAILURE);\n"
8507 " while ((opt = getopt(argc, argv, \"nt:\")) != -1) {\n"
8509 " case \\(aqn\\(aq:\n"
8512 " case \\(aqt\\(aq:\n"
8513 " nsecs = atoi(optarg);\n"
8516 " default: /* \\(aq?\\(aq */\n"
8517 " fprintf(stderr, \"Usage: %s [-t nsecs] [-n] name\\en\",\n"
8519 " exit(EXIT_FAILURE);\n"
8524 #: build/C/man3/getopt.3:418
8527 " printf(\"flags=%d; tfnd=%d; nsecs=%d; optind=%d\\en\",\n"
8528 " flags, tfnd, nsecs, optind);\n"
8530 " printf(\"flags=%d; tfnd=%d; nsecs=%d; optind=%d\\en\",\n"
8531 " flags, tfnd, nsecs, optind);\n"
8534 #: build/C/man3/getopt.3:423
8537 " if (optind E<gt>= argc) {\n"
8538 " fprintf(stderr, \"Expected argument after options\\en\");\n"
8539 " exit(EXIT_FAILURE);\n"
8542 " if (optind E<gt>= argc) {\n"
8543 " fprintf(stderr, \"Expected argument after options\\en\");\n"
8544 " exit(EXIT_FAILURE);\n"
8548 #: build/C/man3/getopt.3:425
8550 msgid " printf(\"name argument = %s\\en\", argv[optind]);\n"
8551 msgstr " printf(\"name argument = %s\\en\", argv[optind]);\n"
8554 #: build/C/man3/getopt.3:427
8556 msgid " /* Other code omitted */\n"
8557 msgstr " /* Other code omitted */\n"
8560 #: build/C/man3/getopt.3:431
8562 msgid "getopt_long()"
8563 msgstr "getopt_long()"
8566 #: build/C/man3/getopt.3:435
8567 msgid "The following example program illustrates the use of B<getopt_long>() with most of its features."
8568 msgstr "以下は、 B<getopt_long>() の使用法を、ほぼすべての機能について示したプログラムの例である。"
8571 #: build/C/man3/getopt.3:440
8574 "#include E<lt>stdio.hE<gt> /* for printf */\n"
8575 "#include E<lt>stdlib.hE<gt> /* for exit */\n"
8576 "#include E<lt>getopt.hE<gt>\n"
8578 "#include E<lt>stdio.hE<gt> /* for printf */\n"
8579 "#include E<lt>stdlib.hE<gt> /* for exit */\n"
8580 "#include E<lt>getopt.hE<gt>\n"
8583 #: build/C/man3/getopt.3:446
8587 "main(int argc, char **argv)\n"
8590 " int digit_optind = 0;\n"
8593 "main(int argc, char **argv) {\n"
8595 " int digit_optind = 0;\n"
8598 #: build/C/man3/getopt.3:459
8602 " int this_option_optind = optind ? optind : 1;\n"
8603 " int option_index = 0;\n"
8604 " static struct option long_options[] = {\n"
8605 " {\"add\", required_argument, 0, 0 },\n"
8606 " {\"append\", no_argument, 0, 0 },\n"
8607 " {\"delete\", required_argument, 0, 0 },\n"
8608 " {\"verbose\", no_argument, 0, 0 },\n"
8609 " {\"create\", required_argument, 0, \\(aqc\\(aq},\n"
8610 " {\"file\", required_argument, 0, 0 },\n"
8615 " int this_option_optind = optind ? optind : 1;\n"
8616 " int option_index = 0;\n"
8617 " static struct option long_options[] = {\n"
8618 " {\"add\", required_argument, 0, 0 },\n"
8619 " {\"append\", no_argument, 0, 0 },\n"
8620 " {\"delete\", required_argument, 0, 0 },\n"
8621 " {\"verbose\", no_argument, 0, 0 },\n"
8622 " {\"create\", required_argument, 0, \\(aqc\\(aq},\n"
8623 " {\"file\", required_argument, 0, 0 },\n"
8628 #: build/C/man3/getopt.3:464
8631 " c = getopt_long(argc, argv, \"abc:d:012\",\n"
8632 " long_options, &option_index);\n"
8636 " c = getopt_long(argc, argv, \"abc:d:012\",\n"
8637 " long_options, &option_index);\n"
8642 #: build/C/man3/getopt.3:472
8647 " printf(\"option %s\", long_options[option_index].name);\n"
8649 " printf(\" with arg %s\", optarg);\n"
8650 " printf(\"\\en\");\n"
8655 " printf(\"option %s\", long_options[option_index].name);\n"
8657 " printf(\" with arg %s\", optarg);\n"
8658 " printf(\"\\en\");\n"
8662 #: build/C/man3/getopt.3:481
8665 " case \\(aq0\\(aq:\n"
8666 " case \\(aq1\\(aq:\n"
8667 " case \\(aq2\\(aq:\n"
8668 " if (digit_optind != 0 && digit_optind != this_option_optind)\n"
8669 " printf(\"digits occur in two different argv-elements.\\en\");\n"
8670 " digit_optind = this_option_optind;\n"
8671 " printf(\"option %c\\en\", c);\n"
8674 " case \\(aq0\\(aq:\n"
8675 " case \\(aq1\\(aq:\n"
8676 " case \\(aq2\\(aq:\n"
8677 " if (digit_optind != 0 && digit_optind != this_option_optind)\n"
8678 " printf(\"digits occur in two different argv-elements.\\en\");\n"
8679 " digit_optind = this_option_optind;\n"
8680 " printf(\"option %c\\en\", c);\n"
8684 #: build/C/man3/getopt.3:485
8687 " case \\(aqa\\(aq:\n"
8688 " printf(\"option a\\en\");\n"
8691 " case \\(aqa\\(aq:\n"
8692 " printf(\"option a\\en\");\n"
8696 #: build/C/man3/getopt.3:489
8699 " case \\(aqb\\(aq:\n"
8700 " printf(\"option b\\en\");\n"
8703 " case \\(aqb\\(aq:\n"
8704 " printf(\"option b\\en\");\n"
8708 #: build/C/man3/getopt.3:493
8711 " case \\(aqc\\(aq:\n"
8712 " printf(\"option c with value \\(aq%s\\(aq\\en\", optarg);\n"
8715 " case \\(aqc\\(aq:\n"
8716 " printf(\"option c with value \\(aq%s\\(aq\\en\", optarg);\n"
8720 #: build/C/man3/getopt.3:497
8723 " case \\(aqd\\(aq:\n"
8724 " printf(\"option d with value \\(aq%s\\(aq\\en\", optarg);\n"
8727 " case \\(aqd\\(aq:\n"
8728 " printf(\"option d with value \\(aq%s\\(aq\\en\", optarg);\n"
8732 #: build/C/man3/getopt.3:500
8735 " case \\(aq?\\(aq:\n"
8738 " case \\(aq?\\(aq:\n"
8742 #: build/C/man3/getopt.3:505
8746 " printf(\"?? getopt returned character code 0%o ??\\en\", c);\n"
8751 " printf(\"?? getopt returned character code 0%o ??\\en\", c);\n"
8756 #: build/C/man3/getopt.3:512
8759 " if (optind E<lt> argc) {\n"
8760 " printf(\"non-option ARGV-elements: \");\n"
8761 " while (optind E<lt> argc)\n"
8762 " printf(\"%s \", argv[optind++]);\n"
8763 " printf(\"\\en\");\n"
8766 " if (optind E<lt> argc) {\n"
8767 " printf(\"non-option ARGV-elements: \");\n"
8768 " while (optind E<lt> argc)\n"
8769 " printf(\"%s \", argv[optind++]);\n"
8770 " printf(\"\\en\");\n"
8774 #: build/C/man3/getopt.3:518
8775 msgid "B<getsubopt>(3)"
8776 msgstr "B<getsubopt>(3)"
8779 #: build/C/man2/getpagesize.2:25
8782 msgstr "GETPAGESIZE"
8785 #: build/C/man2/getpagesize.2:28
8786 msgid "getpagesize - get memory page size"
8787 msgstr "getpagesize - メモリのページサイズを取得する"
8790 #: build/C/man2/getpagesize.2:32
8791 msgid "B<int getpagesize(void);>"
8792 msgstr "B<int getpagesize(void);>"
8795 #: build/C/man2/getpagesize.2:39
8796 msgid "B<getpagesize>():"
8797 msgstr "B<getpagesize>():"
8800 #. This call first appeared in 4.2BSD.
8802 #: build/C/man2/getpagesize.2:64
8803 msgid "The function B<getpagesize>() returns the number of bytes in a memory page, where \"page\" is a fixed-length block, the unit for memory allocation and file mapping performed by B<mmap>(2)."
8805 "B<getpagesize>() 関数はメモリページの大きさをバイト数で返す。\n"
8806 "ここでいう「ページ」は固定長のブロックであり、\n"
8807 "B<mmap>(2) で実行されるメモリ割り当てとファイルマッピングの単位である。"
8810 #: build/C/man2/getpagesize.2:71
8811 msgid "SVr4, 4.4BSD, SUSv2. In SUSv2 the B<getpagesize>() call is labeled LEGACY, and in POSIX.1-2001 it has been dropped; HP-UX does not have this call."
8813 "SVr4, 4.4BSD, SUSv2.\n"
8814 "SUSv2 では B<getpagesize>() システムコールは「過去の遺物 (LEGACY)」とされており、\n"
8815 "POSIX.1-2001 からは外されている。 HP-UX にはこのシステムコールは存在しない。"
8818 #: build/C/man2/getpagesize.2:76
8819 msgid "Portable applications should employ I<sysconf(_SC_PAGESIZE)> instead of B<getpagesize>():"
8821 "移植性が必要なアプリケーションでは、\n"
8822 "B<getpagesize>() ではなく I<sysconf(_SC_PAGESIZE)> を利用すべきである。"
8825 #: build/C/man2/getpagesize.2:81
8828 "#include E<lt>unistd.hE<gt>\n"
8829 "long sz = sysconf(_SC_PAGESIZE);\n"
8831 "#include E<lt>unistd.hE<gt>\n"
8832 "long sz = sysconf(_SC_PAGESIZE);\n"
8835 #: build/C/man2/getpagesize.2:88
8836 msgid "(Most systems allow the synonym B<_SC_PAGE_SIZE> for B<_SC_PAGESIZE>.)"
8838 "(ほとんどのシステムでは B<_SC_PAGESIZE> の同義語として\n"
8839 "B<_SC_PAGE_SIZE> を使用することができる。)"
8842 #: build/C/man2/getpagesize.2:108
8843 msgid "Whether B<getpagesize>() is present as a Linux system call depends on the architecture. If it is, it returns the kernel symbol B<PAGE_SIZE>, whose value depends on the architecture and machine model. Generally, one uses binaries that are dependent on the architecture but not on the machine model, in order to have a single binary distribution per architecture. This means that a user program should not find B<PAGE_SIZE> at compile time from a header file, but use an actual system call, at least for those architectures (like sun4) where this dependency exists. Here glibc 2.0 fails because its B<getpagesize>() returns a statically derived value, and does not use a system call. Things are OK in glibc 2.1."
8844 msgstr "B<getpagesize>() が Linux のシステムコールとして存在するかどうかは、そのアーキテクチャに 依存している。 システムコールとして存在する場合には、カーネルシンボルの B<PAGE_SIZE> を返す。 B<PAGE_SIZE> の値は、アーキテクチャとマシンモデルに依存する。 一般に、バイナリは、アーキテクチャごとに1つのバイナリ配布で済ませるために、 アーキテクチャには依存しているがマシンモデルには依存していない。 つまり、ユーザープログラムはコンパイル時にヘッダーファイルから B<PAGE_SIZE> を見つけて使用すべきではない。 少なくとも、マシンモデルについても依存性が存在する (sun4 のような) アーキテクチャにおいては本物のシステムコールを使用する必要がある。 尚、 glibc 2.0 では、 B<getpagesize>() がシステムコールを使用せず、固定の値を返すために、この方法は 失敗する。glibc 2.1 では大丈夫である。"
8847 #: build/C/man2/getpagesize.2:111
8848 msgid "B<mmap>(2), B<sysconf>(3)"
8849 msgstr "B<mmap>(2), B<sysconf>(3)"
8852 #: build/C/man2/gettid.2:26
8858 #: build/C/man2/gettid.2:26
8864 #: build/C/man2/gettid.2:29
8865 msgid "gettid - get thread identification"
8866 msgstr "gettid - スレッドID を取得する"
8869 #: build/C/man2/gettid.2:32
8871 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
8872 msgstr "B<#include E<lt>sys/types.hE<gt>>\n"
8875 #: build/C/man2/gettid.2:34
8877 msgid "B<pid_t gettid(void);>\n"
8878 msgstr "B<pid_t gettid(void);>\n"
8881 #: build/C/man2/gettid.2:50
8882 msgid "B<gettid>() returns the caller's thread ID (TID). In a single-threaded process, the thread ID is equal to the process ID (PID, as returned by B<getpid>(2)). In a multithreaded process, all threads have the same PID, but each one has a unique TID. For further details, see the discussion of B<CLONE_THREAD> in B<clone>(2)."
8883 msgstr "B<gettid>() は呼び出し元のスレッド ID (TID) を返す。 シングルスレッドのプロセスでは、スレッド ID は (B<getpid>(2) が返すプロセス ID (PID) と等しい。 マルチスレッドのプロセスでは、全てのスレッドは同じ PID を持つが、 それぞれのスレッドは一意な TID を持つ。 さらなる詳細は、 B<clone>(2) の B<CLONE_THREAD> についての議論を参照すること。"
8886 #: build/C/man2/gettid.2:52
8887 msgid "On success, returns the thread ID of the calling process."
8888 msgstr "成功の場合、呼び出し元のプロセスのスレッドID を返す。"
8891 #: build/C/man2/gettid.2:54
8892 msgid "This call is always successful."
8893 msgstr "このコールは常に成功する。"
8896 #: build/C/man2/gettid.2:58
8897 msgid "The B<gettid>() system call first appeared on Linux in kernel 2.4.11."
8898 msgstr "B<gettid>() システムコールは、カーネル 2.4.11 の Linux で初めて登場した。"
8901 #: build/C/man2/gettid.2:62
8902 msgid "B<gettid>() is Linux-specific and should not be used in programs that are intended to be portable."
8903 msgstr "B<gettid>() は Linux 固有であり、 移植を想定したプログラムでは使用すべきではない。"
8905 #. FIXME . See http://sourceware.org/bugzilla/show_bug.cgi?id=6399
8906 #. "gettid() should have a wrapper"
8908 #: build/C/man2/gettid.2:67
8909 msgid "Glibc does not provide a wrapper for this system call; call it using B<syscall>(2)."
8910 msgstr "glibc はこのシステムコールに対するラッパー関数を提供していない。 このシステムコールは呼び出すには B<syscall>(2) を使うこと。"
8913 #: build/C/man2/gettid.2:71
8914 msgid "The thread ID returned by this call is not the same thing as a POSIX thread ID (i.e., the opaque value returned by B<pthread_self>(3))."
8915 msgstr "このシステムコールが返すスレッド ID は POSIX スレッド ID (B<pthread_self>(3) が返す曖昧な値) と同じものではない。"
8918 #. .BR move_pages (2),
8919 #. .BR migrate_pages (2),
8920 #. .BR process_vm_readv (2),
8923 #: build/C/man2/gettid.2:90
8924 msgid "B<capget>(2), B<clone>(2), B<fcntl>(2), B<fork>(2), B<get_robust_list>(2), B<getpid>(2), B<ioprio_set>(2), B<perf_event_open>(2), B<sched_setaffinity>(2), B<sched_setparam>(2), B<sched_setscheduler>(2), B<tgkill>(2), B<timer_create>(2)"
8925 msgstr "B<capget>(2), B<clone>(2), B<fcntl>(2), B<fork>(2), B<get_robust_list>(2), B<getpid>(2), B<ioprio_set>(2), B<perf_event_open>(2), B<sched_setaffinity>(2), B<sched_setparam>(2), B<sched_setscheduler>(2), B<tgkill>(2), B<timer_create>(2)"
8928 #: build/C/man3/getumask.3:28
8934 #: build/C/man3/getumask.3:28
8940 #: build/C/man3/getumask.3:31
8941 msgid "getumask - get file creation mask"
8942 msgstr "getumask - ファイル作成マスクを取得する"
8945 #: build/C/man3/getumask.3:35 build/C/man2/truncate.2:50
8946 #: build/C/man2/umask.2:39 build/C/man2/vfork.2:33
8947 msgid "B<#include E<lt>sys/types.hE<gt>>"
8948 msgstr "B<#include E<lt>sys/types.hE<gt>>"
8951 #: build/C/man3/getumask.3:37 build/C/man2/umask.2:41
8952 msgid "B<#include E<lt>sys/stat.hE<gt>>"
8953 msgstr "B<#include E<lt>sys/stat.hE<gt>>"
8956 #: build/C/man3/getumask.3:39
8957 msgid "B<mode_t getumask(void);>"
8958 msgstr "B<mode_t getumask(void);>"
8961 #: build/C/man3/getumask.3:42
8962 msgid "This function returns the current file creation mask. It is equivalent to"
8963 msgstr "この関数は現在のファイル作成マスクを返す。 基本的には以下と等価である。"
8966 #: build/C/man3/getumask.3:51
8969 "mode_t getumask(void)\n"
8971 " mode_t mask = umask( 0 );\n"
8976 "mode_t getumask(void)\n"
8978 " mode_t mask = umask( 0 );\n"
8984 #: build/C/man3/getumask.3:58
8985 msgid "except that it is documented to be thread-safe (that is, shares a lock with the B<umask>(2) library call)."
8986 msgstr "ドキュメントによると、この関数は スレッドセーフである (B<umask>(2) ライブラリコールとロックを共有する) 点が異なる。"
8989 #: build/C/man3/getumask.3:60
8990 msgid "This is a vaporware GNU extension."
8991 msgstr "ドキュメントに書いてあるだけの GNU 拡張である。"
8994 #: build/C/man3/getumask.3:63
8995 msgid "This function is documented but not implemented yet in glibc, as at version 2.9."
8996 msgstr "バージョン 2.9 時点の glibc では、 この関数についての記載はあるが、まだ実装されていない。"
8999 #: build/C/man3/getumask.3:65
9001 msgstr "B<umask>(2)"
9004 #: build/C/man3/getusershell.3:30
9006 msgid "GETUSERSHELL"
9007 msgstr "GETUSERSHELL"
9010 #: build/C/man3/getusershell.3:30 build/C/man2/pread.2:25
9016 #: build/C/man3/getusershell.3:33
9017 msgid "getusershell, setusershell, endusershell - get permitted user shells"
9018 msgstr "getusershell, setusershell, endusershell - 許可されたユーザーシェルを得る"
9021 #: build/C/man3/getusershell.3:38
9023 msgid "B<char *getusershell(void);>\n"
9024 msgstr "B<char *getusershell(void);>\n"
9027 #: build/C/man3/getusershell.3:40
9029 msgid "B<void setusershell(void);>\n"
9030 msgstr "B<void setusershell(void);>\n"
9033 #: build/C/man3/getusershell.3:42
9035 msgid "B<void endusershell(void);>\n"
9036 msgstr "B<void endusershell(void);>\n"
9039 #: build/C/man3/getusershell.3:53
9040 msgid "B<getusershell>(), B<setusershell>(), B<endusershell>():"
9041 msgstr "B<getusershell>(), B<setusershell>(), B<endusershell>():"
9044 #: build/C/man3/getusershell.3:75
9045 msgid "The B<getusershell>() function returns the next line from the file I</etc/shells>, opening the file if necessary. The line should contain the pathname of a valid user shell. If I</etc/shells> does not exist or is unreadable, B<getusershell>() behaves as if I</bin/sh> and I</bin/csh> were listed in the file."
9046 msgstr "B<getusershell>() 関数は I</etc/shells> ファイルから (開く必要があればこのファイルを開いてから) 現在行の次の一行を返す。 返された行の中身は有効なユーザーシェルのうちの一つのパス名である。 (訳注. 一行に付き一つのシェルのパス名が書かれている。) もし I</etc/shells> が存在しないか、読み込み不可の場合には、 B<getusershell>() は I</bin/sh> と I</bin/csh> がファイルに記されているかのようにふるまう。"
9049 #: build/C/man3/getusershell.3:80
9050 msgid "The B<setusershell>() function rewinds I</etc/shells>."
9051 msgstr "B<setusershell>() 関数は I</etc/shells> ファイルの ファイルポインタを先頭に戻す。"
9054 #: build/C/man3/getusershell.3:85
9055 msgid "The B<endusershell>() function closes I</etc/shells>."
9056 msgstr "B<endusershell>() 関数は I</etc/shells> ファイルを閉じる。"
9059 #: build/C/man3/getusershell.3:89
9060 msgid "The B<getusershell>() function returns NULL on end-of-file."
9061 msgstr "B<getusershell>() 関数はファイルの終端では NULL を返す。"
9064 #: build/C/man3/getusershell.3:92
9066 msgid "/etc/shells\n"
9067 msgstr "/etc/shells\n"
9070 #: build/C/man3/getusershell.3:101
9071 msgid "The B<getusershell>(), B<setusershell>() and B<endusershell>() functions are not thread-safe."
9072 msgstr "関数 B<getusershell>(), B<setusershell>(), B<endusershell>() はスレッドセーフではない。"
9075 #: build/C/man3/getusershell.3:103
9080 #: build/C/man3/getusershell.3:105
9081 msgid "B<shells>(5)"
9082 msgstr "B<shells>(5)"
9085 #: build/C/man2/idle.2:32
9091 #: build/C/man2/idle.2:32 build/C/man5/shells.5:28
9097 #: build/C/man2/idle.2:35
9098 msgid "idle - make process 0 idle"
9099 msgstr "idle - ID 0 のプロセスをアイドル状態にする"
9102 #: build/C/man2/idle.2:39
9103 msgid "B<int idle(void);>"
9104 msgstr "B<int idle(void);>"
9107 #: build/C/man2/idle.2:46
9108 msgid "B<idle>() is an internal system call used during bootstrap. It marks the process's pages as swappable, lowers its priority, and enters the main scheduling loop. B<idle>() never returns."
9109 msgstr "B<idle>() はブートストラップ時に使用される、内部システムコールである。 プロセスのページをスワップ可能に設定し、優先度を下げ、メインのスケジュー ル処理のためのループへ移行する。 従って B<idle>() は return することはない。"
9112 #: build/C/man2/idle.2:52
9113 msgid "Only process 0 may call B<idle>(). Any user process, even a process with superuser permission, will receive B<EPERM>."
9114 msgstr "ID 0 のプロセスのみが B<idle>() を使用することができる。 他のユーザープロセスはたとえそれがスーパーユーザー権限を持っていたとして も B<EPERM> を受け取る。"
9117 #: build/C/man2/idle.2:55
9118 msgid "B<idle>() never returns for process 0, and always returns -1 for a user process."
9119 msgstr "B<idle>() ID 0 のプロセスに対しては return しない。それ以外のユーザープロセスには 常に -1 を返す。"
9122 #: build/C/man2/idle.2:59 build/C/man2/setup.2:60
9123 msgid "Always, for a user process."
9124 msgstr "ユーザープロセスに対しては、常にこのエラーとなる。"
9127 #: build/C/man2/idle.2:61
9128 msgid "Since Linux 2.3.13, this system call does not exist anymore."
9129 msgstr "Linux 2.3.13 以降では、もはやこのシステムコールは存在しない。"
9132 #: build/C/man2/idle.2:64 build/C/man2/sysinfo.2:90
9133 msgid "This function is Linux-specific, and should not be used in programs intended to be portable."
9134 msgstr "この関数は Linux 特有であり、移植を意図したプログラムでは 使用すべきでない。"
9137 #: build/C/man2/ioctl.2:41
9143 #: build/C/man2/ioctl.2:44
9144 msgid "ioctl - control device"
9145 msgstr "ioctl - デバイスを制御する"
9148 #: build/C/man2/ioctl.2:46
9149 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
9150 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
9152 #. POSIX says 'request' is int, but glibc has the above
9153 #. See https://bugzilla.kernel.org/show_bug.cgi?id=42705
9155 #: build/C/man2/ioctl.2:50
9156 msgid "B<int ioctl(int >I<fd>B<, unsigned long >I<request>B<, ...);>"
9157 msgstr "B<int ioctl(int >I<fd>B<, unsigned long >I<request>B<, ...);>"
9160 #: build/C/man2/ioctl.2:61
9161 msgid "The B<ioctl>() function manipulates the underlying device parameters of special files. In particular, many operating characteristics of character special files (e.g., terminals) may be controlled with B<ioctl>() requests. The argument I<fd> must be an open file descriptor."
9162 msgstr "B<ioctl>() 関数はスペシャルファイルを構成するデバイスのパラメーターを 操作する。特に、キャラクタ型のスペシャルファイル (例えば端末 (terminal)) の多くの動作特性を B<ioctl>() リクエストによって制御することができる。引き数 I<fd> はオープンされたファイルディスクリプターでなければならない。"
9165 #: build/C/man2/ioctl.2:69
9166 msgid "The second argument is a device-dependent request code. The third argument is an untyped pointer to memory. It's traditionally B<char *>I<argp> (from the days before B<void *> was valid C), and will be so named for this discussion."
9167 msgstr "2 番目の引き数は、デバイス依存のリクエストコードである。 3 番目の引き数は、メモリへの型を指定しないポインタである。 この引き数は伝統的に (C で B<void *> という書き方が有効になる前から) B<char *>I<argp> と表記されている。したがって、この文章でもそう名付けることとする。"
9170 #: build/C/man2/ioctl.2:85
9171 msgid "An B<ioctl>() I<request> has encoded in it whether the argument is an I<in> parameter or I<out> parameter, and the size of the argument I<argp> in bytes. Macros and defines used in specifying an B<ioctl>() I<request> are located in the file I<E<lt>sys/ioctl.hE<gt>>."
9172 msgstr "B<ioctl>() の I<request> には、 その引き数が I<入力> パラメーターと I<出力> パラメーターのどちらであるかの区別や、 I<argp> 引き数のバイト単位のサイズ、といった情報がエンコードされている。 B<ioctl>() の I<request> を指定するためのマクロ (macro) と定義は I<E<lt>sys/ioctl.hE<gt>> ファイルにある。"
9175 #: build/C/man2/ioctl.2:94
9176 msgid "Usually, on success zero is returned. A few B<ioctl>() requests use the return value as an output parameter and return a nonnegative value on success. On error, -1 is returned, and I<errno> is set appropriately."
9177 msgstr "たいていの場合、成功するとゼロが返される。 ただし、 B<ioctl>() リクエストの中にはパラメーターの出力に返り値を使用しているものが若干あり、 その場合は、成功したときに非負の値が返される。 エラーの場合は -1 が返され、 I<errno> が適切に設定される。"
9180 #: build/C/man2/ioctl.2:99 build/C/man2/truncate.2:192
9181 msgid "I<fd> is not a valid descriptor."
9182 msgstr "I<fd> が無効なディスクリプターである。"
9185 #: build/C/man2/ioctl.2:103
9186 msgid "I<argp> references an inaccessible memory area."
9187 msgstr "I<argp> がアクセス不可能なメモリを参照している。"
9190 #: build/C/man2/ioctl.2:109
9191 msgid "I<request> or I<argp> is not valid."
9192 msgstr "I<request> または I<argp> が不正である。"
9195 #: build/C/man2/ioctl.2:113
9196 msgid "I<fd> is not associated with a character special device."
9197 msgstr "I<fd> がキャラクタ型のスペシャルデバイスを参照していない。"
9200 #: build/C/man2/ioctl.2:119
9201 msgid "The specified request does not apply to the kind of object that the descriptor I<fd> references."
9202 msgstr "指定されたリクエストはディスクリプター I<fd> が参照する種類のオブジェクトには適用することができない。"
9205 #: build/C/man2/ioctl.2:134
9206 msgid "No single standard. Arguments, returns, and semantics of B<ioctl>() vary according to the device driver in question (the call is used as a catch-all for operations that don't cleanly fit the UNIX stream I/O model). See B<ioctl_list>(2) for a list of many of the known B<ioctl>() calls. The B<ioctl>() function call appeared in Version 7 AT&T UNIX."
9207 msgstr "どれか一つの標準に対応しているわけではない。 B<ioctl>() の引き数、返り値、解釈は、処理対象のデバイスドライバごとに 異なる (この関数は UNIX の ストリーム I/O モデル に きちんと適合していない操作のための便利屋として使用される)。 よく知られている B<ioctl>() のリストについては B<ioctl_list>(2) を参照すること。 B<ioctl>() 関数コールは Version 7 AT&T UNIX で登場した。"
9210 #: build/C/man2/ioctl.2:142
9211 msgid "In order to use this call, one needs an open file descriptor. Often the B<open>(2) call has unwanted side effects, that can be avoided under Linux by giving it the B<O_NONBLOCK> flag."
9212 msgstr "このシステムコールを使うには、オープンされたファイルディスクリプターが 必要である。 B<open>(2) コールはしばしば望んでいない副作用を伴うことがあるが、Linux では B<open>(2) に B<O_NONBLOCK> フラグをつけることでこの副作用を避けることができる。"
9216 #: build/C/man2/ioctl.2:150
9217 msgid "B<execve>(2), B<fcntl>(2), B<ioctl_list>(2), B<open>(2), B<sd>(4), B<tty>(4)"
9218 msgstr "B<execve>(2), B<fcntl>(2), B<ioctl_list>(2), B<open>(2), B<sd>(4), B<tty>(4)"
9221 #: build/C/man2/ioctl_list.2:30
9227 #: build/C/man2/ioctl_list.2:30
9233 #: build/C/man2/ioctl_list.2:33
9234 msgid "ioctl_list - list of ioctl calls in Linux/i386 kernel"
9235 msgstr "ioctl_list - Linux/i386 カーネルの ioctl のリスト"
9238 #: build/C/man2/ioctl_list.2:40
9239 msgid "This is Ioctl List 1.3.27, a list of ioctl calls in Linux/i386 kernel 1.3.27. It contains 421 ioctls from I<E<lt>/usr/include/{asm,linux}/*.hE<gt>>. For each ioctl, its numerical value, its name, and its argument type are given."
9240 msgstr "この文章は ioctl リスト 1.3.27、つまり Linux/i386 カーネル 1.3.27 に おける ioctl コールの一覧です。このリストは I<E<lt>/usr/include/{asm,linux}/*.hE<gt>> にある 421 の ioctl を含んでいます。全ての ioctl に対して、数値、名称、 引き数の型を列挙してあります。"
9243 #: build/C/man2/ioctl_list.2:48
9244 msgid "An argument type of I<const struct foo\\ *> means the argument is input to the kernel. I<struct foo\\ *> means the kernel outputs the argument. If the kernel uses the argument for both input and output, this is marked with I<//\\ I-O>."
9245 msgstr "引き数型 I<const struct foo\\ *> は、その引き数がカーネルへの入力である事を意味します。また、 I<struct foo\\ *> は、その引き数がカーネルからの出力である事を意味します。 カーネルがその引き数を入力と出力の両方に使用する場合は、 I<//\\ I-O> マークを付けてあります。"
9248 #: build/C/man2/ioctl_list.2:53
9249 msgid "Some ioctls take more arguments or return more values than a single structure. These are marked I<//\\ MORE> and documented further in a separate section."
9250 msgstr "いくつかの ioctl は複数の構造体の引き数を必要としたり、値を返したり します。これらには I<//\\ MORE> マークを付けて、 さらに分離したセクションで説明してあります。"
9253 #: build/C/man2/ioctl_list.2:55
9254 msgid "This list is very incomplete."
9255 msgstr "このリストは不完全です。"
9258 #: build/C/man2/ioctl_list.2:55
9260 msgid "ioctl structure"
9263 #. added two sections - aeb
9265 #: build/C/man2/ioctl_list.2:60
9266 msgid "Ioctl command values are 32-bit constants. In principle these constants are completely arbitrary, but people have tried to build some structure into them."
9267 msgstr "ioctl コマンドの値は 32 ビットの定数です。 原則として、これらの定数は全く任意のものですが、 設計者は何らかの構造をこれらの定数に組み込もうとしています。"
9270 #: build/C/man2/ioctl_list.2:79
9271 msgid "The old Linux situation was that of mostly 16-bit constants, where the last byte is a serial number, and the preceding byte(s) give a type indicating the driver. Sometimes the major number was used: 0x03 for the B<HDIO_*> ioctls, 0x06 for the B<LP*> ioctls. And sometimes one or more ASCII letters were used. For example, B<TCGETS> has value 0x00005401, with 0x54 = \\(aqT\\(aq indicating the terminal driver, and B<CYGETTIMEOUT> has value 0x00435906, with 0x43 0x59 = \\(aqC\\(aq \\(aqY\\(aq indicating the cyclades driver."
9272 msgstr "昔の Linux では、大部分は 16 ビットの定数であり、 下位バイトはシリアル番号で、上位バイトはドライバのタイプを表していました。 メジャー番号が使われることもありました: 0x03 が B<HDIO_*> ioctl, 0x06 が B<LP*> ioctl などです。 1 文字以上の ASCII 文字列が使われることもありました。 たとえば B<TCGETS> の値は 0x00005401 であり、 0x54 = \\(aqT\\(aq でターミナルドライバを表します。 B<CYGETTIMEOUT> の値は 0x00435906 であり、 0x43 0x59 = \\(aqC\\(aq \\(aqY\\(aq で cyclades ドライバを表します。"
9275 #: build/C/man2/ioctl_list.2:87
9276 msgid "Later (0.98p5) some more information was built into the number. One has 2 direction bits (00: none, 01: write, 10: read, 11: read/write) followed by 14 size bits (giving the size of the argument), followed by an 8-bit type (collecting the ioctls in groups for a common purpose or a common driver), and an 8-bit serial number."
9277 msgstr "後の時代 (0.98p5) になると、 より多くの情報が数値に組み込まれるようになりました。 1 つの数値は、読み書きの方向を表す 2 ビット (00: 読み書きなし, 01: 書き込み, 10: 読み込み, 11: 読み込み/書き込み)、 (引き数のサイズを表す) 14 ビット、 (共通の目的または共通のドライバで ioctl をグループにするための) 8 ビットのタイプ、8 ビットのシリアル番号から構成されます。"
9280 #: build/C/man2/ioctl_list.2:98
9281 msgid "The macros describing this structure live in I<E<lt>asm/ioctl.hE<gt>> and are B<_IO(type,nr)> and B<{_IOR,_IOW,_IOWR}(type,nr,size)>. They use I<sizeof(size)> so that size is a misnomer here: this third argument is a data type."
9282 msgstr "この構造を記述するマクロは I<E<lt>asm/ioctl.hE<gt>> にあり、 B<_IO(type,nr)> と B<{_IOR,_IOW,_IOWR}(type,nr,size)> です。 これらのマクロは I<sizeof(size)> を使うので、 ここで size という名前にしているのは間違っています: この 3 つ目の引き数はデータタイプです。"
9285 #: build/C/man2/ioctl_list.2:103
9286 msgid "Note that the size bits are very unreliable: in lots of cases they are wrong, either because of buggy macros using I<sizeof(sizeof(struct))>, or because of legacy values."
9287 msgstr "size ビットは全く当てにならない点に注意して下さい: 多くの場合、間違っています。 これは I<sizeof(sizeof(struct))> を使ったバグを含んだマクロや、過去から受け継いだ値が原因です。"
9290 #: build/C/man2/ioctl_list.2:107
9291 msgid "Thus, it seems that the new structure only gave disadvantages: it does not help in checking, but it causes varying values for the various architectures."
9292 msgstr "したがって、新しい構造は不都合な点しかないように思われます: この構造はチェックの手助けにはならず、 様々なアーキテクチャによって値を変化させてしまいます。"
9295 #: build/C/man2/ioctl_list.2:113
9296 msgid "Decent ioctls return 0 on success and -1 on error, while any output value is stored via the argument. However, quite a few ioctls in fact return an output value. This is not yet indicated below."
9297 msgstr "きちんとした ioctl は、成功した場合は 0 を返し、 エラーの場合は -1 を返します。 また出力値は引き数に格納します。 しかし実際は、かなり多くの ioctl が出力値を返します。 これは今のところ以下では示されていません。"
9300 #: build/C/man2/ioctl_list.2:115
9301 msgid "// Main table."
9302 msgstr "// Main table."
9305 #: build/C/man2/ioctl_list.2:117
9306 msgid "// E<lt>include/asm-i386/socket.hE<gt>"
9307 msgstr "// E<lt>include/asm-i386/socket.hE<gt>"
9310 #: build/C/man2/ioctl_list.2:119
9312 msgid "0x00008901\tFIOSETOWN\tconst int *\n"
9313 msgstr "0x00008901\tFIOSETOWN\tconst int *\n"
9316 #: build/C/man2/ioctl_list.2:120
9318 msgid "0x00008902\tSIOCSPGRP\tconst int *\n"
9319 msgstr "0x00008902\tSIOCSPGRP\tconst int *\n"
9322 #: build/C/man2/ioctl_list.2:121
9324 msgid "0x00008903\tFIOGETOWN\tint *\n"
9325 msgstr "0x00008903\tFIOGETOWN\tint *\n"
9328 #: build/C/man2/ioctl_list.2:122
9330 msgid "0x00008904\tSIOCGPGRP\tint *\n"
9331 msgstr "0x00008904\tSIOCGPGRP\tint *\n"
9334 #: build/C/man2/ioctl_list.2:123
9336 msgid "0x00008905\tSIOCATMAR\tint *\n"
9337 msgstr "0x00008905\tSIOCATMAR\tint *\n"
9340 #: build/C/man2/ioctl_list.2:124
9342 msgid "0x00008906\tSIOCGSTAMP\ttimeval *\n"
9343 msgstr "0x00008906\tSIOCGSTAMP\ttimeval *\n"
9346 #: build/C/man2/ioctl_list.2:128
9347 msgid "// E<lt>include/asm-i386/termios.hE<gt>"
9348 msgstr "// E<lt>include/asm-i386/termios.hE<gt>"
9351 #: build/C/man2/ioctl_list.2:130
9353 msgid "0x00005401\tTCGETS\tstruct termios *\n"
9354 msgstr "0x00005401\tTCGETS\tstruct termios *\n"
9357 #: build/C/man2/ioctl_list.2:131
9359 msgid "0x00005402\tTCSETS\tconst struct termios *\n"
9360 msgstr "0x00005402\tTCSETS\tconst struct termios *\n"
9363 #: build/C/man2/ioctl_list.2:132
9365 msgid "0x00005403\tTCSETSW\tconst struct termios *\n"
9366 msgstr "0x00005403\tTCSETSW\tconst struct termios *\n"
9369 #: build/C/man2/ioctl_list.2:133
9371 msgid "0x00005404\tTCSETSF\tconst struct termios *\n"
9372 msgstr "0x00005404\tTCSETSF\tconst struct termios *\n"
9375 #: build/C/man2/ioctl_list.2:134
9377 msgid "0x00005405\tTCGETA\tstruct termio *\n"
9378 msgstr "0x00005405\tTCGETA\tstruct termio *\n"
9381 #: build/C/man2/ioctl_list.2:135
9383 msgid "0x00005406\tTCSETA\tconst struct termio *\n"
9384 msgstr "0x00005406\tTCSETA\tconst struct termio *\n"
9387 #: build/C/man2/ioctl_list.2:136
9389 msgid "0x00005407\tTCSETAW\tconst struct termio *\n"
9390 msgstr "0x00005407\tTCSETAW\tconst struct termio *\n"
9393 #: build/C/man2/ioctl_list.2:137
9395 msgid "0x00005408\tTCSETAF\tconst struct termio *\n"
9396 msgstr "0x00005408\tTCSETAF\tconst struct termio *\n"
9399 #: build/C/man2/ioctl_list.2:138
9401 msgid "0x00005409\tTCSBRK\tint\n"
9402 msgstr "0x00005409\tTCSBRK\tint\n"
9405 #: build/C/man2/ioctl_list.2:139
9407 msgid "0x0000540A\tTCXONC\tint\n"
9408 msgstr "0x0000540A\tTCXONC\tint\n"
9411 #: build/C/man2/ioctl_list.2:140
9413 msgid "0x0000540B\tTCFLSH\tint\n"
9414 msgstr "0x0000540B\tTCFLSH\tint\n"
9417 #: build/C/man2/ioctl_list.2:141
9419 msgid "0x0000540C\tTIOCEXCL\tvoid\n"
9420 msgstr "0x0000540C\tTIOCEXCL\tvoid\n"
9423 #: build/C/man2/ioctl_list.2:142
9425 msgid "0x0000540D\tTIOCNXCL\tvoid\n"
9426 msgstr "0x0000540D\tTIOCNXCL\tvoid\n"
9429 #: build/C/man2/ioctl_list.2:143
9431 msgid "0x0000540E\tTIOCSCTTY\tint\n"
9432 msgstr "0x0000540E\tTIOCSCTTY\tint\n"
9435 #: build/C/man2/ioctl_list.2:144
9437 msgid "0x0000540F\tTIOCGPGRP\tpid_t *\n"
9438 msgstr "0x0000540F\tTIOCGPGRP\tpid_t *\n"
9441 #: build/C/man2/ioctl_list.2:145
9443 msgid "0x00005410\tTIOCSPGRP\tconst pid_t *\n"
9444 msgstr "0x00005410\tTIOCSPGRP\tconst pid_t *\n"
9447 #: build/C/man2/ioctl_list.2:146
9449 msgid "0x00005411\tTIOCOUTQ\tint *\n"
9450 msgstr "0x00005411\tTIOCOUTQ\tint *\n"
9453 #: build/C/man2/ioctl_list.2:147
9455 msgid "0x00005412\tTIOCSTI\tconst char *\n"
9456 msgstr "0x00005412\tTIOCSTI\tconst char *\n"
9459 #: build/C/man2/ioctl_list.2:148
9461 msgid "0x00005413\tTIOCGWINSZ\tstruct winsize *\n"
9462 msgstr "0x00005413\tTIOCGWINSZ\tstruct winsize *\n"
9465 #: build/C/man2/ioctl_list.2:149
9467 msgid "0x00005414\tTIOCSWINSZ\tconst struct winsize *\n"
9468 msgstr "0x00005414\tTIOCSWINSZ\tconst struct winsize *\n"
9471 #: build/C/man2/ioctl_list.2:150
9473 msgid "0x00005415\tTIOCMGET\tint *\n"
9474 msgstr "0x00005415\tTIOCMGET\tint *\n"
9477 #: build/C/man2/ioctl_list.2:151
9479 msgid "0x00005416\tTIOCMBIS\tconst int *\n"
9480 msgstr "0x00005416\tTIOCMBIS\tconst int *\n"
9483 #: build/C/man2/ioctl_list.2:152
9485 msgid "0x00005417\tTIOCMBIC\tconst int *\n"
9486 msgstr "0x00005417\tTIOCMBIC\tconst int *\n"
9489 #: build/C/man2/ioctl_list.2:153
9491 msgid "0x00005418\tTIOCMSET\tconst int *\n"
9492 msgstr "0x00005418\tTIOCMSET\tconst int *\n"
9495 #: build/C/man2/ioctl_list.2:154
9497 msgid "0x00005419\tTIOCGSOFTCAR\tint *\n"
9498 msgstr "0x00005419\tTIOCGSOFTCAR\tint *\n"
9501 #: build/C/man2/ioctl_list.2:155
9503 msgid "0x0000541A\tTIOCSSOFTCAR\tconst int *\n"
9504 msgstr "0x0000541A\tTIOCSSOFTCAR\tconst int *\n"
9507 #: build/C/man2/ioctl_list.2:156
9509 msgid "0x0000541B\tFIONREAD\tint *\n"
9510 msgstr "0x0000541B\tFIONREAD\tint *\n"
9513 #: build/C/man2/ioctl_list.2:157
9515 msgid "0x0000541B\tTIOCINQ\tint *\n"
9516 msgstr "0x0000541B\tTIOCINQ\tint *\n"
9519 #: build/C/man2/ioctl_list.2:158
9521 msgid "0x0000541C\tTIOCLINUX\tconst char *\t// MORE\n"
9522 msgstr "0x0000541C\tTIOCLINUX\tconst char *\t// MORE\n"
9525 #: build/C/man2/ioctl_list.2:159
9527 msgid "0x0000541D\tTIOCCONS\tvoid\n"
9528 msgstr "0x0000541D\tTIOCCONS\tvoid\n"
9531 #: build/C/man2/ioctl_list.2:160
9533 msgid "0x0000541E\tTIOCGSERIAL\tstruct serial_struct *\n"
9534 msgstr "0x0000541E\tTIOCGSERIAL\tstruct serial_struct *\n"
9537 #: build/C/man2/ioctl_list.2:161
9539 msgid "0x0000541F\tTIOCSSERIAL\tconst struct serial_struct *\n"
9540 msgstr "0x0000541F\tTIOCSSERIAL\tconst struct serial_struct *\n"
9543 #: build/C/man2/ioctl_list.2:162
9545 msgid "0x00005420\tTIOCPKT\tconst int *\n"
9546 msgstr "0x00005420\tTIOCPKT\tconst int *\n"
9549 #: build/C/man2/ioctl_list.2:163
9551 msgid "0x00005421\tFIONBIO\tconst int *\n"
9552 msgstr "0x00005421\tFIONBIO\tconst int *\n"
9555 #: build/C/man2/ioctl_list.2:164
9557 msgid "0x00005422\tTIOCNOTTY\tvoid\n"
9558 msgstr "0x00005422\tTIOCNOTTY\tvoid\n"
9561 #: build/C/man2/ioctl_list.2:165
9563 msgid "0x00005423\tTIOCSETD\tconst int *\n"
9564 msgstr "0x00005423\tTIOCSETD\tconst int *\n"
9567 #: build/C/man2/ioctl_list.2:166
9569 msgid "0x00005424\tTIOCGETD\tint *\n"
9570 msgstr "0x00005424\tTIOCGETD\tint *\n"
9573 #: build/C/man2/ioctl_list.2:167
9575 msgid "0x00005425\tTCSBRKP\tint\n"
9576 msgstr "0x00005425\tTCSBRKP\tint\n"
9579 #: build/C/man2/ioctl_list.2:168
9581 msgid "0x00005426\tTIOCTTYGSTRUCT\tstruct tty_struct *\n"
9582 msgstr "0x00005426\tTIOCTTYGSTRUCT\tstruct tty_struct *\n"
9585 #: build/C/man2/ioctl_list.2:169
9587 msgid "0x00005450\tFIONCLEX\tvoid\n"
9588 msgstr "0x00005450\tFIONCLEX\tvoid\n"
9591 #: build/C/man2/ioctl_list.2:170
9593 msgid "0x00005451\tFIOCLEX\tvoid\n"
9594 msgstr "0x00005451\tFIOCLEX\tvoid\n"
9597 #: build/C/man2/ioctl_list.2:171
9599 msgid "0x00005452\tFIOASYNC\tconst int *\n"
9600 msgstr "0x00005452\tFIOASYNC\tconst int *\n"
9603 #: build/C/man2/ioctl_list.2:172
9605 msgid "0x00005453\tTIOCSERCONFIG\tvoid\n"
9606 msgstr "0x00005453\tTIOCSERCONFIG\tvoid\n"
9609 #: build/C/man2/ioctl_list.2:173
9611 msgid "0x00005454\tTIOCSERGWILD\tint *\n"
9612 msgstr "0x00005454\tTIOCSERGWILD\tint *\n"
9615 #: build/C/man2/ioctl_list.2:174
9617 msgid "0x00005455\tTIOCSERSWILD\tconst int *\n"
9618 msgstr "0x00005455\tTIOCSERSWILD\tconst int *\n"
9621 #: build/C/man2/ioctl_list.2:175
9623 msgid "0x00005456\tTIOCGLCKTRMIOS\tstruct termios *\n"
9624 msgstr "0x00005456\tTIOCGLCKTRMIOS\tstruct termios *\n"
9627 #: build/C/man2/ioctl_list.2:176
9629 msgid "0x00005457\tTIOCSLCKTRMIOS\tconst struct termios *\n"
9630 msgstr "0x00005457\tTIOCSLCKTRMIOS\tconst struct termios *\n"
9633 #: build/C/man2/ioctl_list.2:177
9635 msgid "0x00005458\tTIOCSERGSTRUCT\tstruct async_struct *\n"
9636 msgstr "0x00005458\tTIOCSERGSTRUCT\tstruct async_struct *\n"
9639 #: build/C/man2/ioctl_list.2:178
9641 msgid "0x00005459\tTIOCSERGETLSR\tint *\n"
9642 msgstr "0x00005459\tTIOCSERGETLSR\tint *\n"
9645 #: build/C/man2/ioctl_list.2:185
9647 msgid "0x0000545A\tTIOCSERGETMULTI\tstruct serial_multiport_struct *\n"
9648 msgstr "0x0000545A\tTIOCSERGETMULTI\tstruct serial_multiport_struct *\n"
9651 #: build/C/man2/ioctl_list.2:186
9653 msgid "0x0000545B\tTIOCSERSETMULTI\tconst struct serial_multiport_struct *\n"
9654 msgstr "0x0000545B\tTIOCSERSETMULTI\tconst struct serial_multiport_struct *\n"
9657 #: build/C/man2/ioctl_list.2:190
9658 msgid "// E<lt>include/linux/ax25.hE<gt>"
9659 msgstr "// E<lt>include/linux/ax25.hE<gt>"
9662 #: build/C/man2/ioctl_list.2:192
9664 msgid "0x000089E0\tSIOCAX25GETUID\tconst struct sockaddr_ax25 *\n"
9665 msgstr "0x000089E0\tSIOCAX25GETUID\tconst struct sockaddr_ax25 *\n"
9668 #: build/C/man2/ioctl_list.2:193
9670 msgid "0x000089E1\tSIOCAX25ADDUID\tconst struct sockaddr_ax25 *\n"
9671 msgstr "0x000089E1\tSIOCAX25ADDUID\tconst struct sockaddr_ax25 *\n"
9674 #: build/C/man2/ioctl_list.2:194
9676 msgid "0x000089E2\tSIOCAX25DELUID\tconst struct sockaddr_ax25 *\n"
9677 msgstr "0x000089E2\tSIOCAX25DELUID\tconst struct sockaddr_ax25 *\n"
9680 #: build/C/man2/ioctl_list.2:195
9682 msgid "0x000089E3\tSIOCAX25NOUID\tconst int *\n"
9683 msgstr "0x000089E3\tSIOCAX25NOUID\tconst int *\n"
9686 #: build/C/man2/ioctl_list.2:196
9688 msgid "0x000089E4\tSIOCAX25DIGCTL\tconst int *\n"
9689 msgstr "0x000089E4\tSIOCAX25DIGCTL\tconst int *\n"
9692 #: build/C/man2/ioctl_list.2:197
9694 msgid "0x000089E5\tSIOCAX25GETPARMS\tstruct ax25_parms_struct *\t// I-O\n"
9695 msgstr "0x000089E5\tSIOCAX25GETPARMS\tstruct ax25_parms_struct *\t// I-O\n"
9698 #: build/C/man2/ioctl_list.2:201
9700 msgid "0x000089E6\tSIOCAX25SETPARMS\tconst struct ax25_parms_struct *\n"
9701 msgstr "0x000089E6\tSIOCAX25SETPARMS\tconst struct ax25_parms_struct *\n"
9704 #: build/C/man2/ioctl_list.2:205
9705 msgid "// E<lt>include/linux/cdk.hE<gt>"
9706 msgstr "// E<lt>include/linux/cdk.hE<gt>"
9709 #: build/C/man2/ioctl_list.2:207
9711 msgid "0x00007314\tSTL_BINTR\tvoid\n"
9712 msgstr "0x00007314\tSTL_BINTR\tvoid\n"
9715 #: build/C/man2/ioctl_list.2:208
9717 msgid "0x00007315\tSTL_BSTART\tvoid\n"
9718 msgstr "0x00007315\tSTL_BSTART\tvoid\n"
9721 #: build/C/man2/ioctl_list.2:209
9723 msgid "0x00007316\tSTL_BSTOP\tvoid\n"
9724 msgstr "0x00007316\tSTL_BSTOP\tvoid\n"
9727 #: build/C/man2/ioctl_list.2:210
9729 msgid "0x00007317\tSTL_BRESET\tvoid\n"
9730 msgstr "0x00007317\tSTL_BRESET\tvoid\n"
9733 #: build/C/man2/ioctl_list.2:214
9734 msgid "// E<lt>include/linux/cdrom.hE<gt>"
9735 msgstr "// E<lt>include/linux/cdrom.hE<gt>"
9738 #: build/C/man2/ioctl_list.2:216
9740 msgid "0x00005301\tCDROMPAUSE\tvoid\n"
9741 msgstr "0x00005301\tCDROMPAUSE\tvoid\n"
9744 #: build/C/man2/ioctl_list.2:217
9746 msgid "0x00005302\tCDROMRESUME\tvoid\n"
9747 msgstr "0x00005302\tCDROMRESUME\tvoid\n"
9750 #: build/C/man2/ioctl_list.2:218
9752 msgid "0x00005303\tCDROMPLAYMSF\tconst struct cdrom_msf *\n"
9753 msgstr "0x00005303\tCDROMPLAYMSF\tconst struct cdrom_msf *\n"
9756 #: build/C/man2/ioctl_list.2:219
9758 msgid "0x00005304\tCDROMPLAYTRKIND\tconst struct cdrom_ti *\n"
9759 msgstr "0x00005304\tCDROMPLAYTRKIND\tconst struct cdrom_ti *\n"
9762 #: build/C/man2/ioctl_list.2:220
9764 msgid "0x00005305\tCDROMREADTOCHDR\tstruct cdrom_tochdr *\n"
9765 msgstr "0x00005305\tCDROMREADTOCHDR\tstruct cdrom_tochdr *\n"
9768 #: build/C/man2/ioctl_list.2:224
9770 msgid "0x00005306\tCDROMREADTOCENTRY\tstruct cdrom_tocentry *\t// I-O\n"
9771 msgstr "0x00005306\tCDROMREADTOCENTRY\tstruct cdrom_tocentry *\t// I-O\n"
9774 #: build/C/man2/ioctl_list.2:228
9776 msgid "0x00005307\tCDROMSTOP\tvoid\n"
9777 msgstr "0x00005307\tCDROMSTOP\tvoid\n"
9780 #: build/C/man2/ioctl_list.2:229
9782 msgid "0x00005308\tCDROMSTART\tvoid\n"
9783 msgstr "0x00005308\tCDROMSTART\tvoid\n"
9786 #: build/C/man2/ioctl_list.2:230
9788 msgid "0x00005309\tCDROMEJECT\tvoid\n"
9789 msgstr "0x00005309\tCDROMEJECT\tvoid\n"
9792 #: build/C/man2/ioctl_list.2:231
9794 msgid "0x0000530A\tCDROMVOLCTRL\tconst struct cdrom_volctrl *\n"
9795 msgstr "0x0000530A\tCDROMVOLCTRL\tconst struct cdrom_volctrl *\n"
9798 #: build/C/man2/ioctl_list.2:232
9800 msgid "0x0000530B\tCDROMSUBCHNL\tstruct cdrom_subchnl *\t// I-O\n"
9801 msgstr "0x0000530B\tCDROMSUBCHNL\tstruct cdrom_subchnl *\t// I-O\n"
9804 #: build/C/man2/ioctl_list.2:233
9806 msgid "0x0000530C\tCDROMREADMODE2\tconst struct cdrom_msf *\t// MORE\n"
9807 msgstr "0x0000530C\tCDROMREADMODE2\tconst struct cdrom_msf *\t// MORE\n"
9810 #: build/C/man2/ioctl_list.2:234
9812 msgid "0x0000530D\tCDROMREADMODE1\tconst struct cdrom_msf *\t// MORE\n"
9813 msgstr "0x0000530D\tCDROMREADMODE1\tconst struct cdrom_msf *\t// MORE\n"
9816 #: build/C/man2/ioctl_list.2:235
9818 msgid "0x0000530E\tCDROMREADAUDIO\tconst struct cdrom_read_audio *\t// MORE\n"
9819 msgstr "0x0000530E\tCDROMREADAUDIO\tconst struct cdrom_read_audio *\t// MORE\n"
9822 #: build/C/man2/ioctl_list.2:236
9824 msgid "0x0000530F\tCDROMEJECT_SW\tint\n"
9825 msgstr "0x0000530F\tCDROMEJECT_SW\tint\n"
9828 #: build/C/man2/ioctl_list.2:240
9830 msgid "0x00005310\tCDROMMULTISESSION\tstruct cdrom_multisession *\t// I-O\n"
9831 msgstr "0x00005310\tCDROMMULTISESSION\tstruct cdrom_multisession *\t// I-O\n"
9834 #: build/C/man2/ioctl_list.2:244
9836 msgid "0x00005311\tCDROM_GET_UPC\tstruct { char [8]; } *\n"
9837 msgstr "0x00005311\tCDROM_GET_UPC\tstruct { char [8]; } *\n"
9840 #: build/C/man2/ioctl_list.2:245
9842 msgid "0x00005312\tCDROMRESET\tvoid\n"
9843 msgstr "0x00005312\tCDROMRESET\tvoid\n"
9846 #: build/C/man2/ioctl_list.2:246
9848 msgid "0x00005313\tCDROMVOLREAD\tstruct cdrom_volctrl *\n"
9849 msgstr "0x00005313\tCDROMVOLREAD\tstruct cdrom_volctrl *\n"
9852 #: build/C/man2/ioctl_list.2:247
9854 msgid "0x00005314\tCDROMREADRAW\tconst struct cdrom_msf *\t// MORE\n"
9855 msgstr "0x00005314\tCDROMREADRAW\tconst struct cdrom_msf *\t// MORE\n"
9858 #: build/C/man2/ioctl_list.2:248
9860 msgid "0x00005315\tCDROMREADCOOKED\tconst struct cdrom_msf *\t// MORE\n"
9861 msgstr "0x00005315\tCDROMREADCOOKED\tconst struct cdrom_msf *\t// MORE\n"
9864 #: build/C/man2/ioctl_list.2:249
9866 msgid "0x00005316\tCDROMSEEK\tconst struct cdrom_msf *\n"
9867 msgstr "0x00005316\tCDROMSEEK\tconst struct cdrom_msf *\n"
9870 #: build/C/man2/ioctl_list.2:253
9871 msgid "// E<lt>include/linux/cm206.hE<gt>"
9872 msgstr "// E<lt>include/linux/cm206.hE<gt>"
9875 #: build/C/man2/ioctl_list.2:255
9877 msgid "0x00002000\tCM206CTL_GET_STAT\tint\n"
9878 msgstr "0x00002000\tCM206CTL_GET_STAT\tint\n"
9881 #: build/C/man2/ioctl_list.2:256
9883 msgid "0x00002001\tCM206CTL_GET_LAST_STAT\tint\n"
9884 msgstr "0x00002001\tCM206CTL_GET_LAST_STAT\tint\n"
9887 #: build/C/man2/ioctl_list.2:260
9888 msgid "// E<lt>include/linux/cyclades.hE<gt>"
9889 msgstr "// E<lt>include/linux/cyclades.hE<gt>"
9892 #: build/C/man2/ioctl_list.2:262
9894 msgid "0x00435901\tCYGETMON\tstruct cyclades_monitor *\n"
9895 msgstr "0x00435901\tCYGETMON\tstruct cyclades_monitor *\n"
9898 #: build/C/man2/ioctl_list.2:263
9900 msgid "0x00435902\tCYGETTHRESH\tint *\n"
9901 msgstr "0x00435902\tCYGETTHRESH\tint *\n"
9904 #: build/C/man2/ioctl_list.2:264
9906 msgid "0x00435903\tCYSETTHRESH\tint\n"
9907 msgstr "0x00435903\tCYSETTHRESH\tint\n"
9910 #: build/C/man2/ioctl_list.2:265
9912 msgid "0x00435904\tCYGETDEFTHRESH\tint *\n"
9913 msgstr "0x00435904\tCYGETDEFTHRESH\tint *\n"
9916 #: build/C/man2/ioctl_list.2:266
9918 msgid "0x00435905\tCYSETDEFTHRESH\tint\n"
9919 msgstr "0x00435905\tCYSETDEFTHRESH\tint\n"
9922 #: build/C/man2/ioctl_list.2:267
9924 msgid "0x00435906\tCYGETTIMEOUT\tint *\n"
9925 msgstr "0x00435906\tCYGETTIMEOUT\tint *\n"
9928 #: build/C/man2/ioctl_list.2:268
9930 msgid "0x00435907\tCYSETTIMEOUT\tint\n"
9931 msgstr "0x00435907\tCYSETTIMEOUT\tint\n"
9934 #: build/C/man2/ioctl_list.2:269
9936 msgid "0x00435908\tCYGETDEFTIMEOUT\tint *\n"
9937 msgstr "0x00435908\tCYGETDEFTIMEOUT\tint *\n"
9940 #: build/C/man2/ioctl_list.2:270
9942 msgid "0x00435909\tCYSETDEFTIMEOUT\tint\n"
9943 msgstr "0x00435909\tCYSETDEFTIMEOUT\tint\n"
9946 #: build/C/man2/ioctl_list.2:274
9947 msgid "// E<lt>include/linux/ext2_fs.hE<gt>"
9948 msgstr "// E<lt>include/linux/ext2_fs.hE<gt>"
9951 #: build/C/man2/ioctl_list.2:276
9953 msgid "0x80046601\tEXT2_IOC_GETFLAGS\tint *\n"
9954 msgstr "0x80046601\tEXT2_IOC_GETFLAGS\tint *\n"
9957 #: build/C/man2/ioctl_list.2:277
9959 msgid "0x40046602\tEXT2_IOC_SETFLAGS\tconst int *\n"
9960 msgstr "0x40046602\tEXT2_IOC_SETFLAGS\tconst int *\n"
9963 #: build/C/man2/ioctl_list.2:278
9965 msgid "0x80047601\tEXT2_IOC_GETVERSION\tint *\n"
9966 msgstr "0x80047601\tEXT2_IOC_GETVERSION\tint *\n"
9969 #: build/C/man2/ioctl_list.2:279
9971 msgid "0x40047602\tEXT2_IOC_SETVERSION\tconst int *\n"
9972 msgstr "0x40047602\tEXT2_IOC_SETVERSION\tconst int *\n"
9975 #: build/C/man2/ioctl_list.2:283
9976 msgid "// E<lt>include/linux/fd.hE<gt>"
9977 msgstr "// E<lt>include/linux/fd.hE<gt>"
9980 #: build/C/man2/ioctl_list.2:285
9982 msgid "0x00000000\tFDCLRPRM\tvoid\n"
9983 msgstr "0x00000000\tFDCLRPRM\tvoid\n"
9986 #: build/C/man2/ioctl_list.2:286
9988 msgid "0x00000001\tFDSETPRM\tconst struct floppy_struct *\n"
9989 msgstr "0x00000001\tFDSETPRM\tconst struct floppy_struct *\n"
9992 #: build/C/man2/ioctl_list.2:287
9994 msgid "0x00000002\tFDDEFPRM\tconst struct floppy_struct *\n"
9995 msgstr "0x00000002\tFDDEFPRM\tconst struct floppy_struct *\n"
9998 #: build/C/man2/ioctl_list.2:288
10000 msgid "0x00000003\tFDGETPRM\tstruct floppy_struct *\n"
10001 msgstr "0x00000003\tFDGETPRM\tstruct floppy_struct *\n"
10004 #: build/C/man2/ioctl_list.2:289
10006 msgid "0x00000004\tFDMSGON\tvoid\n"
10007 msgstr "0x00000004\tFDMSGON\tvoid\n"
10010 #: build/C/man2/ioctl_list.2:290
10012 msgid "0x00000005\tFDMSGOFF\tvoid\n"
10013 msgstr "0x00000005\tFDMSGOFF\tvoid\n"
10016 #: build/C/man2/ioctl_list.2:291
10018 msgid "0x00000006\tFDFMTBEG\tvoid\n"
10019 msgstr "0x00000006\tFDFMTBEG\tvoid\n"
10022 #: build/C/man2/ioctl_list.2:292
10024 msgid "0x00000007\tFDFMTTRK\tconst struct format_descr *\n"
10025 msgstr "0x00000007\tFDFMTTRK\tconst struct format_descr *\n"
10028 #: build/C/man2/ioctl_list.2:293
10030 msgid "0x00000008\tFDFMTEND\tvoid\n"
10031 msgstr "0x00000008\tFDFMTEND\tvoid\n"
10034 #: build/C/man2/ioctl_list.2:294
10036 msgid "0x0000000A\tFDSETEMSGTRESH\tint\n"
10037 msgstr "0x0000000A\tFDSETEMSGTRESH\tint\n"
10040 #: build/C/man2/ioctl_list.2:295
10042 msgid "0x0000000B\tFDFLUSH\tvoid\n"
10043 msgstr "0x0000000B\tFDFLUSH\tvoid\n"
10046 #: build/C/man2/ioctl_list.2:296
10048 msgid "0x0000000C\tFDSETMAXERRS\tconst struct floppy_max_errors *\n"
10049 msgstr "0x0000000C\tFDSETMAXERRS\tconst struct floppy_max_errors *\n"
10052 #: build/C/man2/ioctl_list.2:297
10054 msgid "0x0000000E\tFDGETMAXERRS\tstruct floppy_max_errors *\n"
10055 msgstr "0x0000000E\tFDGETMAXERRS\tstruct floppy_max_errors *\n"
10058 #: build/C/man2/ioctl_list.2:298
10060 msgid "0x00000010\tFDGETDRVTYP\tstruct { char [16]; } *\n"
10061 msgstr "0x00000010\tFDGETDRVTYP\tstruct { char [16]; } *\n"
10064 #: build/C/man2/ioctl_list.2:299
10066 msgid "0x00000014\tFDSETDRVPRM\tconst struct floppy_drive_params *\n"
10067 msgstr "0x00000014\tFDSETDRVPRM\tconst struct floppy_drive_params *\n"
10070 #: build/C/man2/ioctl_list.2:300
10072 msgid "0x00000015\tFDGETDRVPRM\tstruct floppy_drive_params *\n"
10073 msgstr "0x00000015\tFDGETDRVPRM\tstruct floppy_drive_params *\n"
10076 #: build/C/man2/ioctl_list.2:301
10078 msgid "0x00000016\tFDGETDRVSTAT\tstruct floppy_drive_struct *\n"
10079 msgstr "0x00000016\tFDGETDRVSTAT\tstruct floppy_drive_struct *\n"
10082 #: build/C/man2/ioctl_list.2:302
10084 msgid "0x00000017\tFDPOLLDRVSTAT\tstruct floppy_drive_struct *\n"
10085 msgstr "0x00000017\tFDPOLLDRVSTAT\tstruct floppy_drive_struct *\n"
10088 #: build/C/man2/ioctl_list.2:303
10090 msgid "0x00000018\tFDRESET\tint\n"
10091 msgstr "0x00000018\tFDRESET\tint\n"
10094 #: build/C/man2/ioctl_list.2:304
10096 msgid "0x00000019\tFDGETFDCSTAT\tstruct floppy_fdc_state *\n"
10097 msgstr "0x00000019\tFDGETFDCSTAT\tstruct floppy_fdc_state *\n"
10100 #: build/C/man2/ioctl_list.2:305
10102 msgid "0x0000001B\tFDWERRORCLR\tvoid\n"
10103 msgstr "0x0000001B\tFDWERRORCLR\tvoid\n"
10106 #: build/C/man2/ioctl_list.2:306
10108 msgid "0x0000001C\tFDWERRORGET\tstruct floppy_write_errors *\n"
10109 msgstr "0x0000001C\tFDWERRORGET\tstruct floppy_write_errors *\n"
10112 #: build/C/man2/ioctl_list.2:310
10114 msgid "0x0000001E\tFDRAWCMD\tstruct floppy_raw_cmd *\t// MORE // I-O\n"
10115 msgstr "0x0000001E\tFDRAWCMD\tstruct floppy_raw_cmd *\t// MORE // I-O\n"
10118 #: build/C/man2/ioctl_list.2:311
10120 msgid "0x00000028\tFDTWADDLE\tvoid\n"
10121 msgstr "0x00000028\tFDTWADDLE\tvoid\n"
10123 #. type: Plain text
10124 #: build/C/man2/ioctl_list.2:315
10125 msgid "// E<lt>include/linux/fs.hE<gt>"
10126 msgstr "// E<lt>include/linux/fs.hE<gt>"
10129 #: build/C/man2/ioctl_list.2:317
10131 msgid "0x0000125D\tBLKROSET\tconst int *\n"
10132 msgstr "0x0000125D\tBLKROSET\tconst int *\n"
10135 #: build/C/man2/ioctl_list.2:318
10137 msgid "0x0000125E\tBLKROGET\tint *\n"
10138 msgstr "0x0000125E\tBLKROGET\tint *\n"
10141 #: build/C/man2/ioctl_list.2:319
10143 msgid "0x0000125F\tBLKRRPART\tvoid\n"
10144 msgstr "0x0000125F\tBLKRRPART\tvoid\n"
10147 #: build/C/man2/ioctl_list.2:320
10149 msgid "0x00001260\tBLKGETSIZE\tunsigned long *\n"
10150 msgstr "0x00001260\tBLKGETSIZE\tunsigned long *\n"
10153 #: build/C/man2/ioctl_list.2:321
10155 msgid "0x00001261\tBLKFLSBUF\tvoid\n"
10156 msgstr "0x00001261\tBLKFLSBUF\tvoid\n"
10159 #: build/C/man2/ioctl_list.2:322
10161 msgid "0x00001262\tBLKRASET\tint\n"
10162 msgstr "0x00001262\tBLKRASET\tint\n"
10165 #: build/C/man2/ioctl_list.2:323
10167 msgid "0x00001263\tBLKRAGET\tint *\n"
10168 msgstr "0x00001263\tBLKRAGET\tint *\n"
10171 #: build/C/man2/ioctl_list.2:324
10173 msgid "0x00000001\tFIBMAP\tint *\t// I-O\n"
10174 msgstr "0x00000001\tFIBMAP\tint *\t// I-O\n"
10177 #: build/C/man2/ioctl_list.2:325
10179 msgid "0x00000002\tFIGETBSZ\tint *\n"
10180 msgstr "0x00000002\tFIGETBSZ\tint *\n"
10182 #. type: Plain text
10183 #: build/C/man2/ioctl_list.2:329
10184 msgid "// E<lt>include/linux/hdreg.hE<gt>"
10185 msgstr "// E<lt>include/linux/hdreg.hE<gt>"
10188 #: build/C/man2/ioctl_list.2:331
10190 msgid "0x00000301\tHDIO_GETGEO\tstruct hd_geometry *\n"
10191 msgstr "0x00000301\tHDIO_GETGEO\tstruct hd_geometry *\n"
10194 #: build/C/man2/ioctl_list.2:332
10196 msgid "0x00000302\tHDIO_GET_UNMASKINTR\tint *\n"
10197 msgstr "0x00000302\tHDIO_GET_UNMASKINTR\tint *\n"
10200 #: build/C/man2/ioctl_list.2:333
10202 msgid "0x00000304\tHDIO_GET_MULTCOUNT\tint *\n"
10203 msgstr "0x00000304\tHDIO_GET_MULTCOUNT\tint *\n"
10206 #: build/C/man2/ioctl_list.2:334
10208 msgid "0x00000307\tHDIO_GET_IDENTITY\tstruct hd_driveid *\n"
10209 msgstr "0x00000307\tHDIO_GET_IDENTITY\tstruct hd_driveid *\n"
10212 #: build/C/man2/ioctl_list.2:335
10214 msgid "0x00000308\tHDIO_GET_KEEPSETTINGS\tint *\n"
10215 msgstr "0x00000308\tHDIO_GET_KEEPSETTINGS\tint *\n"
10218 #: build/C/man2/ioctl_list.2:336
10220 msgid "0x00000309\tHDIO_GET_CHIPSET\tint *\n"
10221 msgstr "0x00000309\tHDIO_GET_CHIPSET\tint *\n"
10224 #: build/C/man2/ioctl_list.2:337
10226 msgid "0x0000030A\tHDIO_GET_NOWERR\tint *\n"
10227 msgstr "0x0000030A\tHDIO_GET_NOWERR\tint *\n"
10230 #: build/C/man2/ioctl_list.2:338
10232 msgid "0x0000030B\tHDIO_GET_DMA\tint *\n"
10233 msgstr "0x0000030B\tHDIO_GET_DMA\tint *\n"
10236 #: build/C/man2/ioctl_list.2:339
10238 msgid "0x0000031F\tHDIO_DRIVE_CMD\tint *\t// I-O\n"
10239 msgstr "0x0000031F\tHDIO_DRIVE_CMD\tint *\t// I-O\n"
10242 #: build/C/man2/ioctl_list.2:340
10244 msgid "0x00000321\tHDIO_SET_MULTCOUNT\tint\n"
10245 msgstr "0x00000321\tHDIO_SET_MULTCOUNT\tint\n"
10248 #: build/C/man2/ioctl_list.2:341
10250 msgid "0x00000322\tHDIO_SET_UNMASKINTR\tint\n"
10251 msgstr "0x00000322\tHDIO_SET_UNMASKINTR\tint\n"
10254 #: build/C/man2/ioctl_list.2:342
10256 msgid "0x00000323\tHDIO_SET_KEEPSETTINGS\tint\n"
10257 msgstr "0x00000323\tHDIO_SET_KEEPSETTINGS\tint\n"
10260 #: build/C/man2/ioctl_list.2:343
10262 msgid "0x00000324\tHDIO_SET_CHIPSET\tint\n"
10263 msgstr "0x00000324\tHDIO_SET_CHIPSET\tint\n"
10266 #: build/C/man2/ioctl_list.2:344
10268 msgid "0x00000325\tHDIO_SET_NOWERR\tint\n"
10269 msgstr "0x00000325\tHDIO_SET_NOWERR\tint\n"
10272 #: build/C/man2/ioctl_list.2:345
10274 msgid "0x00000326\tHDIO_SET_DMA\tint\n"
10275 msgstr "0x00000326\tHDIO_SET_DMA\tint\n"
10277 #. type: Plain text
10278 #: build/C/man2/ioctl_list.2:349
10279 msgid "// E<lt>include/linux/if_eql.hE<gt>"
10280 msgstr "// E<lt>include/linux/if_eql.hE<gt>"
10283 #: build/C/man2/ioctl_list.2:351
10285 msgid "0x000089F0\tEQL_ENSLAVE\tstruct ifreq *\t// MORE // I-O\n"
10286 msgstr "0x000089F0\tEQL_ENSLAVE\tstruct ifreq *\t// MORE // I-O\n"
10289 #: build/C/man2/ioctl_list.2:352
10291 msgid "0x000089F1\tEQL_EMANCIPATE\tstruct ifreq *\t// MORE // I-O\n"
10292 msgstr "0x000089F1\tEQL_EMANCIPATE\tstruct ifreq *\t// MORE // I-O\n"
10295 #: build/C/man2/ioctl_list.2:353
10297 msgid "0x000089F2\tEQL_GETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
10298 msgstr "0x000089F2\tEQL_GETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
10301 #: build/C/man2/ioctl_list.2:354
10303 msgid "0x000089F3\tEQL_SETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
10304 msgstr "0x000089F3\tEQL_SETSLAVECFG\tstruct ifreq *\t// MORE // I-O\n"
10307 #: build/C/man2/ioctl_list.2:355
10309 msgid "0x000089F4\tEQL_GETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
10310 msgstr "0x000089F4\tEQL_GETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
10313 #: build/C/man2/ioctl_list.2:356
10315 msgid "0x000089F5\tEQL_SETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
10316 msgstr "0x000089F5\tEQL_SETMASTRCFG\tstruct ifreq *\t// MORE // I-O\n"
10318 #. type: Plain text
10319 #: build/C/man2/ioctl_list.2:360
10320 msgid "// E<lt>include/linux/if_plip.hE<gt>"
10321 msgstr "// E<lt>include/linux/if_plip.hE<gt>"
10324 #: build/C/man2/ioctl_list.2:362
10326 msgid "0x000089F0\tSIOCDEVPLIP\tstruct ifreq *\t// I-O\n"
10327 msgstr "0x000089F0\tSIOCDEVPLIP\tstruct ifreq *\t// I-O\n"
10329 #. type: Plain text
10330 #: build/C/man2/ioctl_list.2:366
10331 msgid "// E<lt>include/linux/if_ppp.hE<gt>"
10332 msgstr "// E<lt>include/linux/if_ppp.hE<gt>"
10335 #: build/C/man2/ioctl_list.2:368
10337 msgid "0x00005490\tPPPIOCGFLAGS\tint *\n"
10338 msgstr "0x00005490\tPPPIOCGFLAGS\tint *\n"
10341 #: build/C/man2/ioctl_list.2:369
10343 msgid "0x00005491\tPPPIOCSFLAGS\tconst int *\n"
10344 msgstr "0x00005491\tPPPIOCSFLAGS\tconst int *\n"
10347 #: build/C/man2/ioctl_list.2:370
10349 msgid "0x00005492\tPPPIOCGASYNCMAP\tint *\n"
10350 msgstr "0x00005492\tPPPIOCGASYNCMAP\tint *\n"
10353 #: build/C/man2/ioctl_list.2:371
10355 msgid "0x00005493\tPPPIOCSASYNCMAP\tconst int *\n"
10356 msgstr "0x00005493\tPPPIOCSASYNCMAP\tconst int *\n"
10359 #: build/C/man2/ioctl_list.2:372
10361 msgid "0x00005494\tPPPIOCGUNIT\tint *\n"
10362 msgstr "0x00005494\tPPPIOCGUNIT\tint *\n"
10365 #: build/C/man2/ioctl_list.2:373
10367 msgid "0x00005495\tPPPIOCSINPSIG\tconst int *\n"
10368 msgstr "0x00005495\tPPPIOCSINPSIG\tconst int *\n"
10371 #: build/C/man2/ioctl_list.2:374
10373 msgid "0x00005497\tPPPIOCSDEBUG\tconst int *\n"
10374 msgstr "0x00005497\tPPPIOCSDEBUG\tconst int *\n"
10377 #: build/C/man2/ioctl_list.2:375
10379 msgid "0x00005498\tPPPIOCGDEBUG\tint *\n"
10380 msgstr "0x00005498\tPPPIOCGDEBUG\tint *\n"
10383 #: build/C/man2/ioctl_list.2:376
10385 msgid "0x00005499\tPPPIOCGSTAT\tstruct ppp_stats *\n"
10386 msgstr "0x00005499\tPPPIOCGSTAT\tstruct ppp_stats *\n"
10389 #: build/C/man2/ioctl_list.2:377
10391 msgid "0x0000549A\tPPPIOCGTIME\tstruct ppp_ddinfo *\n"
10392 msgstr "0x0000549A\tPPPIOCGTIME\tstruct ppp_ddinfo *\n"
10395 #: build/C/man2/ioctl_list.2:378
10397 msgid "0x0000549B\tPPPIOCGXASYNCMAP\tstruct { int [8]; } *\n"
10398 msgstr "0x0000549B\tPPPIOCGXASYNCMAP\tstruct { int [8]; } *\n"
10401 #: build/C/man2/ioctl_list.2:379
10403 msgid "0x0000549C\tPPPIOCSXASYNCMAP\tconst struct { int [8]; } *\n"
10404 msgstr "0x0000549C\tPPPIOCSXASYNCMAP\tconst struct { int [8]; } *\n"
10407 #: build/C/man2/ioctl_list.2:380
10409 msgid "0x0000549D\tPPPIOCSMRU\tconst int *\n"
10410 msgstr "0x0000549D\tPPPIOCSMRU\tconst int *\n"
10413 #: build/C/man2/ioctl_list.2:381
10415 msgid "0x0000549E\tPPPIOCRASYNCMAP\tconst int *\n"
10416 msgstr "0x0000549E\tPPPIOCRASYNCMAP\tconst int *\n"
10419 #: build/C/man2/ioctl_list.2:382
10421 msgid "0x0000549F\tPPPIOCSMAXCID\tconst int *\n"
10422 msgstr "0x0000549F\tPPPIOCSMAXCID\tconst int *\n"
10424 #. type: Plain text
10425 #: build/C/man2/ioctl_list.2:386
10426 msgid "// E<lt>include/linux/ipx.hE<gt>"
10427 msgstr "// E<lt>include/linux/ipx.hE<gt>"
10430 #: build/C/man2/ioctl_list.2:388
10432 msgid "0x000089E0\tSIOCAIPXITFCRT\tconst char *\n"
10433 msgstr "0x000089E0\tSIOCAIPXITFCRT\tconst char *\n"
10436 #: build/C/man2/ioctl_list.2:389
10438 msgid "0x000089E1\tSIOCAIPXPRISLT\tconst char *\n"
10439 msgstr "0x000089E1\tSIOCAIPXPRISLT\tconst char *\n"
10442 #: build/C/man2/ioctl_list.2:390
10444 msgid "0x000089E2\tSIOCIPXCFGDATA\tstruct ipx_config_data *\n"
10445 msgstr "0x000089E2\tSIOCIPXCFGDATA\tstruct ipx_config_data *\n"
10447 #. type: Plain text
10448 #: build/C/man2/ioctl_list.2:394
10449 msgid "// E<lt>include/linux/kd.hE<gt>"
10450 msgstr "// E<lt>include/linux/kd.hE<gt>"
10453 #: build/C/man2/ioctl_list.2:396
10455 msgid "0x00004B60\tGIO_FONT\tstruct { char [8192]; } *\n"
10456 msgstr "0x00004B60\tGIO_FONT\tstruct { char [8192]; } *\n"
10459 #: build/C/man2/ioctl_list.2:397
10461 msgid "0x00004B61\tPIO_FONT\tconst struct { char [8192]; } *\n"
10462 msgstr "0x00004B61\tPIO_FONT\tconst struct { char [8192]; } *\n"
10465 #: build/C/man2/ioctl_list.2:401
10467 msgid "0x00004B6B\tGIO_FONTX\tstruct console_font_desc *\t// MORE // I-O\n"
10468 msgstr "0x00004B6B\tGIO_FONTX\tstruct console_font_desc *\t// MORE // I-O\n"
10471 #: build/C/man2/ioctl_list.2:402
10473 msgid "0x00004B6C\tPIO_FONTX\tconst struct console_font_desc *\t//MORE\n"
10474 msgstr "0x00004B6C\tPIO_FONTX\tconst struct console_font_desc *\t//MORE\n"
10477 #: build/C/man2/ioctl_list.2:406
10479 msgid "0x00004B70\tGIO_CMAP\tstruct { char [48]; } *\n"
10480 msgstr "0x00004B70\tGIO_CMAP\tstruct { char [48]; } *\n"
10483 #: build/C/man2/ioctl_list.2:407
10485 msgid "0x00004B71\tPIO_CMAP\tconst struct { char [48]; }\n"
10486 msgstr "0x00004B71\tPIO_CMAP\tconst struct { char [48]; }\n"
10489 #: build/C/man2/ioctl_list.2:411
10491 msgid "0x00004B2F\tKIOCSOUND\tint\n"
10492 msgstr "0x00004B2F\tKIOCSOUND\tint\n"
10495 #: build/C/man2/ioctl_list.2:412
10497 msgid "0x00004B30\tKDMKTONE\tint\n"
10498 msgstr "0x00004B30\tKDMKTONE\tint\n"
10501 #: build/C/man2/ioctl_list.2:413
10503 msgid "0x00004B31\tKDGETLED\tchar *\n"
10504 msgstr "0x00004B31\tKDGETLED\tchar *\n"
10507 #: build/C/man2/ioctl_list.2:414
10509 msgid "0x00004B32\tKDSETLED\tint\n"
10510 msgstr "0x00004B32\tKDSETLED\tint\n"
10513 #: build/C/man2/ioctl_list.2:415
10515 msgid "0x00004B33\tKDGKBTYPE\tchar *\n"
10516 msgstr "0x00004B33\tKDGKBTYPE\tchar *\n"
10519 #: build/C/man2/ioctl_list.2:416
10521 msgid "0x00004B34\tKDADDIO\tint\t// MORE\n"
10522 msgstr "0x00004B34\tKDADDIO\tint\t// MORE\n"
10525 #: build/C/man2/ioctl_list.2:417
10527 msgid "0x00004B35\tKDDELIO\tint\t// MORE\n"
10528 msgstr "0x00004B35\tKDDELIO\tint\t// MORE\n"
10531 #: build/C/man2/ioctl_list.2:418
10533 msgid "0x00004B36\tKDENABIO\tvoid\t// MORE\n"
10534 msgstr "0x00004B36\tKDENABIO\tvoid\t// MORE\n"
10537 #: build/C/man2/ioctl_list.2:419
10539 msgid "0x00004B37\tKDDISABIO\tvoid\t// MORE\n"
10540 msgstr "0x00004B37\tKDDISABIO\tvoid\t// MORE\n"
10543 #: build/C/man2/ioctl_list.2:420
10545 msgid "0x00004B3A\tKDSETMODE\tint\n"
10546 msgstr "0x00004B3A\tKDSETMODE\tint\n"
10549 #: build/C/man2/ioctl_list.2:421
10551 msgid "0x00004B3B\tKDGETMODE\tint *\n"
10552 msgstr "0x00004B3B\tKDGETMODE\tint *\n"
10555 #: build/C/man2/ioctl_list.2:422
10557 msgid "0x00004B3C\tKDMAPDISP\tvoid\t// MORE\n"
10558 msgstr "0x00004B3C\tKDMAPDISP\tvoid\t// MORE\n"
10561 #: build/C/man2/ioctl_list.2:423
10563 msgid "0x00004B3D\tKDUNMAPDISP\tvoid\t// MORE\n"
10564 msgstr "0x00004B3D\tKDUNMAPDISP\tvoid\t// MORE\n"
10567 #: build/C/man2/ioctl_list.2:424
10569 msgid "0x00004B40\tGIO_SCRNMAP\tstruct { char [E_TABSZ]; } *\n"
10570 msgstr "0x00004B40\tGIO_SCRNMAP\tstruct { char [E_TABSZ]; } *\n"
10573 #: build/C/man2/ioctl_list.2:428
10575 msgid "0x00004B41\tPIO_SCRNMAP\tconst struct { char [E_TABSZ]; } *\n"
10576 msgstr "0x00004B41\tPIO_SCRNMAP\tconst struct { char [E_TABSZ]; } *\n"
10579 #: build/C/man2/ioctl_list.2:429
10581 msgid "0x00004B69\tGIO_UNISCRNMAP\tstruct { short [E_TABSZ]; } *\n"
10582 msgstr "0x00004B69\tGIO_UNISCRNMAP\tstruct { short [E_TABSZ]; } *\n"
10585 #: build/C/man2/ioctl_list.2:430
10587 msgid "0x00004B6A\tPIO_UNISCRNMAP\tconst struct { short [E_TABSZ]; } *\n"
10588 msgstr "0x00004B6A\tPIO_UNISCRNMAP\tconst struct { short [E_TABSZ]; } *\n"
10591 #: build/C/man2/ioctl_list.2:434
10593 msgid "0x00004B66\tGIO_UNIMAP\tstruct unimapdesc *\t// MORE // I-O\n"
10594 msgstr "0x00004B66\tGIO_UNIMAP\tstruct unimapdesc *\t// MORE // I-O\n"
10597 #: build/C/man2/ioctl_list.2:435
10599 msgid "0x00004B67\tPIO_UNIMAP\tconst struct unimapdesc *\t// MORE\n"
10600 msgstr "0x00004B67\tPIO_UNIMAP\tconst struct unimapdesc *\t// MORE\n"
10603 #: build/C/man2/ioctl_list.2:436
10605 msgid "0x00004B68\tPIO_UNIMAPCLR\tconst struct unimapinit *\n"
10606 msgstr "0x00004B68\tPIO_UNIMAPCLR\tconst struct unimapinit *\n"
10609 #: build/C/man2/ioctl_list.2:437
10611 msgid "0x00004B44\tKDGKBMODE\tint *\n"
10612 msgstr "0x00004B44\tKDGKBMODE\tint *\n"
10615 #: build/C/man2/ioctl_list.2:438
10617 msgid "0x00004B45\tKDSKBMODE\tint\n"
10618 msgstr "0x00004B45\tKDSKBMODE\tint\n"
10621 #: build/C/man2/ioctl_list.2:439
10623 msgid "0x00004B62\tKDGKBMETA\tint *\n"
10624 msgstr "0x00004B62\tKDGKBMETA\tint *\n"
10627 #: build/C/man2/ioctl_list.2:440
10629 msgid "0x00004B63\tKDSKBMETA\tint\n"
10630 msgstr "0x00004B63\tKDSKBMETA\tint\n"
10633 #: build/C/man2/ioctl_list.2:441
10635 msgid "0x00004B64\tKDGKBLED\tint *\n"
10636 msgstr "0x00004B64\tKDGKBLED\tint *\n"
10639 #: build/C/man2/ioctl_list.2:442
10641 msgid "0x00004B65\tKDSKBLED\tint\n"
10642 msgstr "0x00004B65\tKDSKBLED\tint\n"
10645 #: build/C/man2/ioctl_list.2:443
10647 msgid "0x00004B46\tKDGKBENT\tstruct kbentry *\t// I-O\n"
10648 msgstr "0x00004B46\tKDGKBENT\tstruct kbentry *\t// I-O\n"
10651 #: build/C/man2/ioctl_list.2:444
10653 msgid "0x00004B47\tKDSKBENT\tconst struct kbentry *\n"
10654 msgstr "0x00004B47\tKDSKBENT\tconst struct kbentry *\n"
10657 #: build/C/man2/ioctl_list.2:445
10659 msgid "0x00004B48\tKDGKBSENT\tstruct kbsentry *\t// I-O\n"
10660 msgstr "0x00004B48\tKDGKBSENT\tstruct kbsentry *\t// I-O\n"
10663 #: build/C/man2/ioctl_list.2:446
10665 msgid "0x00004B49\tKDSKBSENT\tconst struct kbsentry *\n"
10666 msgstr "0x00004B49\tKDSKBSENT\tconst struct kbsentry *\n"
10669 #: build/C/man2/ioctl_list.2:447
10671 msgid "0x00004B4A\tKDGKBDIACR\tstruct kbdiacrs *\n"
10672 msgstr "0x00004B4A\tKDGKBDIACR\tstruct kbdiacrs *\n"
10675 #: build/C/man2/ioctl_list.2:448
10677 msgid "0x00004B4B\tKDSKBDIACR\tconst struct kbdiacrs *\n"
10678 msgstr "0x00004B4B\tKDSKBDIACR\tconst struct kbdiacrs *\n"
10681 #: build/C/man2/ioctl_list.2:449
10683 msgid "0x00004B4C\tKDGETKEYCODE\tstruct kbkeycode *\t// I-O\n"
10684 msgstr "0x00004B4C\tKDGETKEYCODE\tstruct kbkeycode *\t// I-O\n"
10687 #: build/C/man2/ioctl_list.2:450
10689 msgid "0x00004B4D\tKDSETKEYCODE\tconst struct kbkeycode *\n"
10690 msgstr "0x00004B4D\tKDSETKEYCODE\tconst struct kbkeycode *\n"
10693 #: build/C/man2/ioctl_list.2:451
10695 msgid "0x00004B4E\tKDSIGACCEPT\tint\n"
10696 msgstr "0x00004B4E\tKDSIGACCEPT\tint\n"
10698 #. type: Plain text
10699 #: build/C/man2/ioctl_list.2:455
10700 msgid "// E<lt>include/linux/lp.hE<gt>"
10701 msgstr "// E<lt>include/linux/lp.hE<gt>"
10704 #: build/C/man2/ioctl_list.2:457
10706 msgid "0x00000601\tLPCHAR\tint\n"
10707 msgstr "0x00000601\tLPCHAR\tint\n"
10710 #: build/C/man2/ioctl_list.2:458
10712 msgid "0x00000602\tLPTIME\tint\n"
10713 msgstr "0x00000602\tLPTIME\tint\n"
10716 #: build/C/man2/ioctl_list.2:459
10718 msgid "0x00000604\tLPABORT\tint\n"
10719 msgstr "0x00000604\tLPABORT\tint\n"
10722 #: build/C/man2/ioctl_list.2:460
10724 msgid "0x00000605\tLPSETIRQ\tint\n"
10725 msgstr "0x00000605\tLPSETIRQ\tint\n"
10728 #: build/C/man2/ioctl_list.2:461
10730 msgid "0x00000606\tLPGETIRQ\tint *\n"
10731 msgstr "0x00000606\tLPGETIRQ\tint *\n"
10734 #: build/C/man2/ioctl_list.2:462
10736 msgid "0x00000608\tLPWAIT\tint\n"
10737 msgstr "0x00000608\tLPWAIT\tint\n"
10740 #: build/C/man2/ioctl_list.2:463
10742 msgid "0x00000609\tLPCAREFUL\tint\n"
10743 msgstr "0x00000609\tLPCAREFUL\tint\n"
10746 #: build/C/man2/ioctl_list.2:464
10748 msgid "0x0000060A\tLPABORTOPEN\tint\n"
10749 msgstr "0x0000060A\tLPABORTOPEN\tint\n"
10752 #: build/C/man2/ioctl_list.2:465
10754 msgid "0x0000060B\tLPGETSTATUS\tint *\n"
10755 msgstr "0x0000060B\tLPGETSTATUS\tint *\n"
10758 #: build/C/man2/ioctl_list.2:466
10760 msgid "0x0000060C\tLPRESET\tvoid\n"
10761 msgstr "0x0000060C\tLPRESET\tvoid\n"
10764 #: build/C/man2/ioctl_list.2:467
10766 msgid "0x0000060D\tLPGETSTATS\tstruct lp_stats *\n"
10767 msgstr "0x0000060D\tLPGETSTATS\tstruct lp_stats *\n"
10769 #. type: Plain text
10770 #: build/C/man2/ioctl_list.2:471
10771 msgid "// E<lt>include/linux/mroute.hE<gt>"
10772 msgstr "// E<lt>include/linux/mroute.hE<gt>"
10775 #: build/C/man2/ioctl_list.2:473
10777 msgid "0x000089E0\tSIOCGETVIFCNT\tstruct sioc_vif_req *\t// I-O\n"
10778 msgstr "0x000089E0\tSIOCGETVIFCNT\tstruct sioc_vif_req *\t// I-O\n"
10781 #: build/C/man2/ioctl_list.2:474
10783 msgid "0x000089E1\tSIOCGETSGCNT\tstruct sioc_sg_req *\t// I-O\n"
10784 msgstr "0x000089E1\tSIOCGETSGCNT\tstruct sioc_sg_req *\t// I-O\n"
10786 #. type: Plain text
10787 #: build/C/man2/ioctl_list.2:478
10788 msgid "// E<lt>include/linux/msdos_fs.hE<gt>"
10789 msgstr "// E<lt>include/linux/msdos_fs.hE<gt>"
10792 #: build/C/man2/ioctl_list.2:480
10794 msgid "0x82307201\tVFAT_IOCTL_READDIR_BOTH\tstruct dirent [2]\n"
10795 msgstr "0x82307201\tVFAT_IOCTL_READDIR_BOTH\tstruct dirent [2]\n"
10798 #: build/C/man2/ioctl_list.2:481
10800 msgid "0x82307202\tVFAT_IOCTL_READDIR_SHORT\tstruct dirent [2]\n"
10801 msgstr "0x82307202\tVFAT_IOCTL_READDIR_SHORT\tstruct dirent [2]\n"
10804 #: build/C/man2/ioctl_list.2:482
10806 msgid "0x80047210\tFAT_IOCTL_GET_ATTRIBUTES\t__u32 *\n"
10807 msgstr "0x80047210\tFAT_IOCTL_GET_ATTRIBUTES\t__u32 *\n"
10810 #: build/C/man2/ioctl_list.2:483
10812 msgid "0x40047211\tFAT_IOCTL_SET_ATTRIBUTES\tconst __u32 *\n"
10813 msgstr "0x40047211\tFAT_IOCTL_SET_ATTRIBUTES\tconst __u32 *\n"
10815 #. type: Plain text
10816 #: build/C/man2/ioctl_list.2:487
10817 msgid "// E<lt>include/linux/mtio.hE<gt>"
10818 msgstr "// E<lt>include/linux/mtio.hE<gt>"
10821 #: build/C/man2/ioctl_list.2:489
10823 msgid "0x40086D01\tMTIOCTOP\tconst struct mtop *\n"
10824 msgstr "0x40086D01\tMTIOCTOP\tconst struct mtop *\n"
10827 #: build/C/man2/ioctl_list.2:490
10829 msgid "0x801C6D02\tMTIOCGET\tstruct mtget *\n"
10830 msgstr "0x801C6D02\tMTIOCGET\tstruct mtget *\n"
10833 #: build/C/man2/ioctl_list.2:491
10835 msgid "0x80046D03\tMTIOCPOS\tstruct mtpos *\n"
10836 msgstr "0x80046D03\tMTIOCPOS\tstruct mtpos *\n"
10839 #: build/C/man2/ioctl_list.2:492
10841 msgid "0x80206D04\tMTIOCGETCONFIG\tstruct mtconfiginfo *\n"
10842 msgstr "0x80206D04\tMTIOCGETCONFIG\tstruct mtconfiginfo *\n"
10845 #: build/C/man2/ioctl_list.2:493
10847 msgid "0x40206D05\tMTIOCSETCONFIG\tconst struct mtconfiginfo *\n"
10848 msgstr "0x40206D05\tMTIOCSETCONFIG\tconst struct mtconfiginfo *\n"
10850 #. type: Plain text
10851 #: build/C/man2/ioctl_list.2:497
10852 msgid "// E<lt>include/linux/netrom.hE<gt>"
10853 msgstr "// E<lt>include/linux/netrom.hE<gt>"
10856 #: build/C/man2/ioctl_list.2:499
10858 msgid "0x000089E0\tSIOCNRGETPARMS\tstruct nr_parms_struct *\t// I-O\n"
10859 msgstr "0x000089E0\tSIOCNRGETPARMS\tstruct nr_parms_struct *\t// I-O\n"
10862 #: build/C/man2/ioctl_list.2:500
10864 msgid "0x000089E1\tSIOCNRSETPARMS\tconst struct nr_parms_struct *\n"
10865 msgstr "0x000089E1\tSIOCNRSETPARMS\tconst struct nr_parms_struct *\n"
10868 #: build/C/man2/ioctl_list.2:501
10870 msgid "0x000089E2\tSIOCNRDECOBS\tvoid\n"
10871 msgstr "0x000089E2\tSIOCNRDECOBS\tvoid\n"
10874 #: build/C/man2/ioctl_list.2:502
10876 msgid "0x000089E3\tSIOCNRRTCTL\tconst int *\n"
10877 msgstr "0x000089E3\tSIOCNRRTCTL\tconst int *\n"
10879 #. type: Plain text
10880 #: build/C/man2/ioctl_list.2:506
10881 msgid "// E<lt>include/linux/sbpcd.hE<gt>"
10882 msgstr "// E<lt>include/linux/sbpcd.hE<gt>"
10885 #: build/C/man2/ioctl_list.2:508
10887 msgid "0x00009000\tDDIOCSDBG\tconst int *\n"
10888 msgstr "0x00009000\tDDIOCSDBG\tconst int *\n"
10891 #: build/C/man2/ioctl_list.2:509
10893 msgid "0x00005382\tCDROMAUDIOBUFSIZ\tint\n"
10894 msgstr "0x00005382\tCDROMAUDIOBUFSIZ\tint\n"
10896 #. type: Plain text
10897 #: build/C/man2/ioctl_list.2:513
10898 msgid "// E<lt>include/linux/scc.hE<gt>"
10899 msgstr "// E<lt>include/linux/scc.hE<gt>"
10902 #: build/C/man2/ioctl_list.2:515
10904 msgid "0x00005470\tTIOCSCCINI\tvoid\n"
10905 msgstr "0x00005470\tTIOCSCCINI\tvoid\n"
10908 #: build/C/man2/ioctl_list.2:516
10910 msgid "0x00005471\tTIOCCHANINI\tconst struct scc_modem *\n"
10911 msgstr "0x00005471\tTIOCCHANINI\tconst struct scc_modem *\n"
10914 #: build/C/man2/ioctl_list.2:517
10916 msgid "0x00005472\tTIOCGKISS\tstruct ioctl_command *\t// I-O\n"
10917 msgstr "0x00005472\tTIOCGKISS\tstruct ioctl_command *\t// I-O\n"
10920 #: build/C/man2/ioctl_list.2:518
10922 msgid "0x00005473\tTIOCSKISS\tconst struct ioctl_command *\n"
10923 msgstr "0x00005473\tTIOCSKISS\tconst struct ioctl_command *\n"
10926 #: build/C/man2/ioctl_list.2:519
10928 msgid "0x00005474\tTIOCSCCSTAT\tstruct scc_stat *\n"
10929 msgstr "0x00005474\tTIOCSCCSTAT\tstruct scc_stat *\n"
10931 #. type: Plain text
10932 #: build/C/man2/ioctl_list.2:523
10933 msgid "// E<lt>include/linux/scsi.hE<gt>"
10934 msgstr "// E<lt>include/linux/scsi.hE<gt>"
10937 #: build/C/man2/ioctl_list.2:525
10939 msgid "0x00005382\tSCSI_IOCTL_GET_IDLUN\tstruct { int [2]; } *\n"
10940 msgstr "0x00005382\tSCSI_IOCTL_GET_IDLUN\tstruct { int [2]; } *\n"
10943 #: build/C/man2/ioctl_list.2:526
10945 msgid "0x00005383\tSCSI_IOCTL_TAGGED_ENABLE\tvoid\n"
10946 msgstr "0x00005383\tSCSI_IOCTL_TAGGED_ENABLE\tvoid\n"
10949 #: build/C/man2/ioctl_list.2:527
10951 msgid "0x00005384\tSCSI_IOCTL_TAGGED_DISABLE\tvoid\n"
10952 msgstr "0x00005384\tSCSI_IOCTL_TAGGED_DISABLE\tvoid\n"
10955 #: build/C/man2/ioctl_list.2:531
10957 msgid "0x00005385\tSCSI_IOCTL_PROBE_HOST\tconst int *\t// MORE\n"
10958 msgstr "0x00005385\tSCSI_IOCTL_PROBE_HOST\tconst int *\t// MORE\n"
10960 #. type: Plain text
10961 #: build/C/man2/ioctl_list.2:535
10962 msgid "// E<lt>include/linux/smb_fs.hE<gt>"
10963 msgstr "// E<lt>include/linux/smb_fs.hE<gt>"
10966 #: build/C/man2/ioctl_list.2:537
10968 msgid "0x80027501\tSMB_IOC_GETMOUNTUID\tuid_t *\n"
10969 msgstr "0x80027501\tSMB_IOC_GETMOUNTUID\tuid_t *\n"
10971 #. type: Plain text
10972 #: build/C/man2/ioctl_list.2:541
10973 msgid "// E<lt>include/linux/sockios.hE<gt>"
10974 msgstr "// E<lt>include/linux/sockios.hE<gt>"
10977 #: build/C/man2/ioctl_list.2:543
10979 msgid "0x0000890B\tSIOCADDRT\tconst struct rtentry *\t// MORE\n"
10980 msgstr "0x0000890B\tSIOCADDRT\tconst struct rtentry *\t// MORE\n"
10983 #: build/C/man2/ioctl_list.2:544
10985 msgid "0x0000890C\tSIOCDELRT\tconst struct rtentry *\t// MORE\n"
10986 msgstr "0x0000890C\tSIOCDELRT\tconst struct rtentry *\t// MORE\n"
10989 #: build/C/man2/ioctl_list.2:545
10991 msgid "0x00008910\tSIOCGIFNAME\tchar []\n"
10992 msgstr "0x00008910\tSIOCGIFNAME\tchar []\n"
10995 #: build/C/man2/ioctl_list.2:546
10997 msgid "0x00008911\tSIOCSIFLINK\tvoid\n"
10998 msgstr "0x00008911\tSIOCSIFLINK\tvoid\n"
11001 #: build/C/man2/ioctl_list.2:547
11003 msgid "0x00008912\tSIOCGIFCONF\tstruct ifconf *\t// MORE // I-O\n"
11004 msgstr "0x00008912\tSIOCGIFCONF\tstruct ifconf *\t// MORE // I-O\n"
11007 #: build/C/man2/ioctl_list.2:548
11009 msgid "0x00008913\tSIOCGIFFLAGS\tstruct ifreq *\t// I-O\n"
11010 msgstr "0x00008913\tSIOCGIFFLAGS\tstruct ifreq *\t// I-O\n"
11013 #: build/C/man2/ioctl_list.2:549
11015 msgid "0x00008914\tSIOCSIFFLAGS\tconst struct ifreq *\n"
11016 msgstr "0x00008914\tSIOCSIFFLAGS\tconst struct ifreq *\n"
11019 #: build/C/man2/ioctl_list.2:550
11021 msgid "0x00008915\tSIOCGIFADDR\tstruct ifreq *\t// I-O\n"
11022 msgstr "0x00008915\tSIOCGIFADDR\tstruct ifreq *\t// I-O\n"
11025 #: build/C/man2/ioctl_list.2:551
11027 msgid "0x00008916\tSIOCSIFADDR\tconst struct ifreq *\n"
11028 msgstr "0x00008916\tSIOCSIFADDR\tconst struct ifreq *\n"
11031 #: build/C/man2/ioctl_list.2:552
11033 msgid "0x00008917\tSIOCGIFDSTADDR\tstruct ifreq *\t// I-O\n"
11034 msgstr "0x00008917\tSIOCGIFDSTADDR\tstruct ifreq *\t// I-O\n"
11037 #: build/C/man2/ioctl_list.2:553
11039 msgid "0x00008918\tSIOCSIFDSTADDR\tconst struct ifreq *\n"
11040 msgstr "0x00008918\tSIOCSIFDSTADDR\tconst struct ifreq *\n"
11043 #: build/C/man2/ioctl_list.2:554
11045 msgid "0x00008919\tSIOCGIFBRDADDR\tstruct ifreq *\t// I-O\n"
11046 msgstr "0x00008919\tSIOCGIFBRDADDR\tstruct ifreq *\t// I-O\n"
11049 #: build/C/man2/ioctl_list.2:555
11051 msgid "0x0000891A\tSIOCSIFBRDADDR\tconst struct ifreq *\n"
11052 msgstr "0x0000891A\tSIOCSIFBRDADDR\tconst struct ifreq *\n"
11055 #: build/C/man2/ioctl_list.2:556
11057 msgid "0x0000891B\tSIOCGIFNETMASK\tstruct ifreq *\t// I-O\n"
11058 msgstr "0x0000891B\tSIOCGIFNETMASK\tstruct ifreq *\t// I-O\n"
11061 #: build/C/man2/ioctl_list.2:557
11063 msgid "0x0000891C\tSIOCSIFNETMASK\tconst struct ifreq *\n"
11064 msgstr "0x0000891C\tSIOCSIFNETMASK\tconst struct ifreq *\n"
11067 #: build/C/man2/ioctl_list.2:558
11069 msgid "0x0000891D\tSIOCGIFMETRIC\tstruct ifreq *\t// I-O\n"
11070 msgstr "0x0000891D\tSIOCGIFMETRIC\tstruct ifreq *\t// I-O\n"
11073 #: build/C/man2/ioctl_list.2:559
11075 msgid "0x0000891E\tSIOCSIFMETRIC\tconst struct ifreq *\n"
11076 msgstr "0x0000891E\tSIOCSIFMETRIC\tconst struct ifreq *\n"
11079 #: build/C/man2/ioctl_list.2:560
11081 msgid "0x0000891F\tSIOCGIFMEM\tstruct ifreq *\t// I-O\n"
11082 msgstr "0x0000891F\tSIOCGIFMEM\tstruct ifreq *\t// I-O\n"
11085 #: build/C/man2/ioctl_list.2:561
11087 msgid "0x00008920\tSIOCSIFMEM\tconst struct ifreq *\n"
11088 msgstr "0x00008920\tSIOCSIFMEM\tconst struct ifreq *\n"
11091 #: build/C/man2/ioctl_list.2:562
11093 msgid "0x00008921\tSIOCGIFMTU\tstruct ifreq *\t// I-O\n"
11094 msgstr "0x00008921\tSIOCGIFMTU\tstruct ifreq *\t// I-O\n"
11097 #: build/C/man2/ioctl_list.2:563
11099 msgid "0x00008922\tSIOCSIFMTU\tconst struct ifreq *\n"
11100 msgstr "0x00008922\tSIOCSIFMTU\tconst struct ifreq *\n"
11103 #: build/C/man2/ioctl_list.2:567
11105 msgid "0x00008923\tOLD_SIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
11106 msgstr "0x00008923\tOLD_SIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
11109 #: build/C/man2/ioctl_list.2:568
11111 msgid "0x00008924\tSIOCSIFHWADDR\tconst struct ifreq *\t// MORE\n"
11112 msgstr "0x00008924\tSIOCSIFHWADDR\tconst struct ifreq *\t// MORE\n"
11115 #: build/C/man2/ioctl_list.2:569
11117 msgid "0x00008925\tSIOCGIFENCAP\tint *\n"
11118 msgstr "0x00008925\tSIOCGIFENCAP\tint *\n"
11121 #: build/C/man2/ioctl_list.2:570
11123 msgid "0x00008926\tSIOCSIFENCAP\tconst int *\n"
11124 msgstr "0x00008926\tSIOCSIFENCAP\tconst int *\n"
11127 #: build/C/man2/ioctl_list.2:571
11129 msgid "0x00008927\tSIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
11130 msgstr "0x00008927\tSIOCGIFHWADDR\tstruct ifreq *\t// I-O\n"
11133 #: build/C/man2/ioctl_list.2:572
11135 msgid "0x00008929\tSIOCGIFSLAVE\tvoid\n"
11136 msgstr "0x00008929\tSIOCGIFSLAVE\tvoid\n"
11139 #: build/C/man2/ioctl_list.2:573
11141 msgid "0x00008930\tSIOCSIFSLAVE\tvoid\n"
11142 msgstr "0x00008930\tSIOCSIFSLAVE\tvoid\n"
11145 #: build/C/man2/ioctl_list.2:574
11147 msgid "0x00008931\tSIOCADDMULTI\tconst struct ifreq *\n"
11148 msgstr "0x00008931\tSIOCADDMULTI\tconst struct ifreq *\n"
11151 #: build/C/man2/ioctl_list.2:575
11153 msgid "0x00008932\tSIOCDELMULTI\tconst struct ifreq *\n"
11154 msgstr "0x00008932\tSIOCDELMULTI\tconst struct ifreq *\n"
11157 #: build/C/man2/ioctl_list.2:576
11159 msgid "0x00008940\tSIOCADDRTOLD\tvoid\n"
11160 msgstr "0x00008940\tSIOCADDRTOLD\tvoid\n"
11163 #: build/C/man2/ioctl_list.2:577
11165 msgid "0x00008941\tSIOCDELRTOLD\tvoid\n"
11166 msgstr "0x00008941\tSIOCDELRTOLD\tvoid\n"
11169 #: build/C/man2/ioctl_list.2:578
11171 msgid "0x00008950\tSIOCDARP\tconst struct arpreq *\n"
11172 msgstr "0x00008950\tSIOCDARP\tconst struct arpreq *\n"
11175 #: build/C/man2/ioctl_list.2:579
11177 msgid "0x00008951\tSIOCGARP\tstruct arpreq *\t// I-O\n"
11178 msgstr "0x00008951\tSIOCGARP\tstruct arpreq *\t// I-O\n"
11181 #: build/C/man2/ioctl_list.2:580
11183 msgid "0x00008952\tSIOCSARP\tconst struct arpreq *\n"
11184 msgstr "0x00008952\tSIOCSARP\tconst struct arpreq *\n"
11187 #: build/C/man2/ioctl_list.2:581
11189 msgid "0x00008960\tSIOCDRARP\tconst struct arpreq *\n"
11190 msgstr "0x00008960\tSIOCDRARP\tconst struct arpreq *\n"
11193 #: build/C/man2/ioctl_list.2:582
11195 msgid "0x00008961\tSIOCGRARP\tstruct arpreq *\t// I-O\n"
11196 msgstr "0x00008961\tSIOCGRARP\tstruct arpreq *\t// I-O\n"
11199 #: build/C/man2/ioctl_list.2:583
11201 msgid "0x00008962\tSIOCSRARP\tconst struct arpreq *\n"
11202 msgstr "0x00008962\tSIOCSRARP\tconst struct arpreq *\n"
11205 #: build/C/man2/ioctl_list.2:584
11207 msgid "0x00008970\tSIOCGIFMAP\tstruct ifreq *\t// I-O\n"
11208 msgstr "0x00008970\tSIOCGIFMAP\tstruct ifreq *\t// I-O\n"
11211 #: build/C/man2/ioctl_list.2:585
11213 msgid "0x00008971\tSIOCSIFMAP\tconst struct ifreq *\n"
11214 msgstr "0x00008971\tSIOCSIFMAP\tconst struct ifreq *\n"
11216 #. type: Plain text
11217 #: build/C/man2/ioctl_list.2:589
11218 msgid "// E<lt>include/linux/soundcard.hE<gt>"
11219 msgstr "// E<lt>include/linux/soundcard.hE<gt>"
11222 #: build/C/man2/ioctl_list.2:591
11224 msgid "0x00005100\tSNDCTL_SEQ_RESET\tvoid\n"
11225 msgstr "0x00005100\tSNDCTL_SEQ_RESET\tvoid\n"
11228 #: build/C/man2/ioctl_list.2:592
11230 msgid "0x00005101\tSNDCTL_SEQ_SYNC\tvoid\n"
11231 msgstr "0x00005101\tSNDCTL_SEQ_SYNC\tvoid\n"
11234 #: build/C/man2/ioctl_list.2:596
11236 msgid "0xC08C5102\tSNDCTL_SYNTH_INFO\tstruct synth_info *\t// I-O\n"
11237 msgstr "0xC08C5102\tSNDCTL_SYNTH_INFO\tstruct synth_info *\t// I-O\n"
11240 #: build/C/man2/ioctl_list.2:597
11242 msgid "0xC0045103\tSNDCTL_SEQ_CTRLRATE\tint *\t// I-O\n"
11243 msgstr "0xC0045103\tSNDCTL_SEQ_CTRLRATE\tint *\t// I-O\n"
11246 #: build/C/man2/ioctl_list.2:598
11248 msgid "0x80045104\tSNDCTL_SEQ_GETOUTCOUNT\tint *\n"
11249 msgstr "0x80045104\tSNDCTL_SEQ_GETOUTCOUNT\tint *\n"
11252 #: build/C/man2/ioctl_list.2:599
11254 msgid "0x80045105\tSNDCTL_SEQ_GETINCOUNT\tint *\n"
11255 msgstr "0x80045105\tSNDCTL_SEQ_GETINCOUNT\tint *\n"
11258 #: build/C/man2/ioctl_list.2:600
11260 msgid "0x40045106\tSNDCTL_SEQ_PERCMODE\tvoid\n"
11261 msgstr "0x40045106\tSNDCTL_SEQ_PERCMODE\tvoid\n"
11264 #: build/C/man2/ioctl_list.2:604
11266 msgid "0x40285107\tSNDCTL_FM_LOAD_INSTR\tconst struct sbi_instrument *\n"
11267 msgstr "0x40285107\tSNDCTL_FM_LOAD_INSTR\tconst struct sbi_instrument *\n"
11270 #: build/C/man2/ioctl_list.2:608
11272 msgid "0x40045108\tSNDCTL_SEQ_TESTMIDI\tconst int *\n"
11273 msgstr "0x40045108\tSNDCTL_SEQ_TESTMIDI\tconst int *\n"
11276 #: build/C/man2/ioctl_list.2:609
11278 msgid "0x40045109\tSNDCTL_SEQ_RESETSAMPLES\tconst int *\n"
11279 msgstr "0x40045109\tSNDCTL_SEQ_RESETSAMPLES\tconst int *\n"
11282 #: build/C/man2/ioctl_list.2:610
11284 msgid "0x8004510A\tSNDCTL_SEQ_NRSYNTHS\tint *\n"
11285 msgstr "0x8004510A\tSNDCTL_SEQ_NRSYNTHS\tint *\n"
11288 #: build/C/man2/ioctl_list.2:611
11290 msgid "0x8004510B\tSNDCTL_SEQ_NRMIDIS\tint *\n"
11291 msgstr "0x8004510B\tSNDCTL_SEQ_NRMIDIS\tint *\n"
11294 #: build/C/man2/ioctl_list.2:612
11296 msgid "0xC074510C\tSNDCTL_MIDI_INFO\tstruct midi_info *\t// I-O\n"
11297 msgstr "0xC074510C\tSNDCTL_MIDI_INFO\tstruct midi_info *\t// I-O\n"
11300 #: build/C/man2/ioctl_list.2:613
11302 msgid "0x4004510D\tSNDCTL_SEQ_THRESHOLD\tconst int *\n"
11303 msgstr "0x4004510D\tSNDCTL_SEQ_THRESHOLD\tconst int *\n"
11306 #: build/C/man2/ioctl_list.2:614
11308 msgid "0xC004510E\tSNDCTL_SYNTH_MEMAVL\tint *\t// I-O\n"
11309 msgstr "0xC004510E\tSNDCTL_SYNTH_MEMAVL\tint *\t// I-O\n"
11312 #: build/C/man2/ioctl_list.2:615
11314 msgid "0x4004510F\tSNDCTL_FM_4OP_ENABLE\tconst int *\n"
11315 msgstr "0x4004510F\tSNDCTL_FM_4OP_ENABLE\tconst int *\n"
11318 #: build/C/man2/ioctl_list.2:616
11320 msgid "0xCFB85110\tSNDCTL_PMGR_ACCESS\tstruct patmgr_info *\t// I-O\n"
11321 msgstr "0xCFB85110\tSNDCTL_PMGR_ACCESS\tstruct patmgr_info *\t// I-O\n"
11324 #: build/C/man2/ioctl_list.2:617
11326 msgid "0x00005111\tSNDCTL_SEQ_PANIC\tvoid\n"
11327 msgstr "0x00005111\tSNDCTL_SEQ_PANIC\tvoid\n"
11330 #: build/C/man2/ioctl_list.2:621
11332 msgid "0x40085112\tSNDCTL_SEQ_OUTOFBAND\tconst struct seq_event_rec *\n"
11333 msgstr "0x40085112\tSNDCTL_SEQ_OUTOFBAND\tconst struct seq_event_rec *\n"
11336 #: build/C/man2/ioctl_list.2:625
11338 msgid "0xC0045401\tSNDCTL_TMR_TIMEBASE\tint *\t// I-O\n"
11339 msgstr "0xC0045401\tSNDCTL_TMR_TIMEBASE\tint *\t// I-O\n"
11342 #: build/C/man2/ioctl_list.2:626
11344 msgid "0x00005402\tSNDCTL_TMR_START\tvoid\n"
11345 msgstr "0x00005402\tSNDCTL_TMR_START\tvoid\n"
11348 #: build/C/man2/ioctl_list.2:627
11350 msgid "0x00005403\tSNDCTL_TMR_STOP\tvoid\n"
11351 msgstr "0x00005403\tSNDCTL_TMR_STOP\tvoid\n"
11354 #: build/C/man2/ioctl_list.2:628
11356 msgid "0x00005404\tSNDCTL_TMR_CONTINUE\tvoid\n"
11357 msgstr "0x00005404\tSNDCTL_TMR_CONTINUE\tvoid\n"
11360 #: build/C/man2/ioctl_list.2:629
11362 msgid "0xC0045405\tSNDCTL_TMR_TEMPO\tint *\t// I-O\n"
11363 msgstr "0xC0045405\tSNDCTL_TMR_TEMPO\tint *\t// I-O\n"
11366 #: build/C/man2/ioctl_list.2:630
11368 msgid "0xC0045406\tSNDCTL_TMR_SOURCE\tint *\t// I-O\n"
11369 msgstr "0xC0045406\tSNDCTL_TMR_SOURCE\tint *\t// I-O\n"
11372 #: build/C/man2/ioctl_list.2:631
11374 msgid "0x40045407\tSNDCTL_TMR_METRONOME\tconst int *\n"
11375 msgstr "0x40045407\tSNDCTL_TMR_METRONOME\tconst int *\n"
11378 #: build/C/man2/ioctl_list.2:632
11380 msgid "0x40045408\tSNDCTL_TMR_SELECT\tint *\t// I-O\n"
11381 msgstr "0x40045408\tSNDCTL_TMR_SELECT\tint *\t// I-O\n"
11384 #: build/C/man2/ioctl_list.2:633
11386 msgid "0xCFB85001\tSNDCTL_PMGR_IFACE\tstruct patmgr_info *\t// I-O\n"
11387 msgstr "0xCFB85001\tSNDCTL_PMGR_IFACE\tstruct patmgr_info *\t// I-O\n"
11390 #: build/C/man2/ioctl_list.2:634
11392 msgid "0xC0046D00\tSNDCTL_MIDI_PRETIME\tint *\t// I-O\n"
11393 msgstr "0xC0046D00\tSNDCTL_MIDI_PRETIME\tint *\t// I-O\n"
11396 #: build/C/man2/ioctl_list.2:635
11398 msgid "0xC0046D01\tSNDCTL_MIDI_MPUMODE\tconst int *\n"
11399 msgstr "0xC0046D01\tSNDCTL_MIDI_MPUMODE\tconst int *\n"
11402 #: build/C/man2/ioctl_list.2:639
11404 msgid "0xC0216D02\tSNDCTL_MIDI_MPUCMD\tstruct mpu_command_rec *\t// I-O\n"
11405 msgstr "0xC0216D02\tSNDCTL_MIDI_MPUCMD\tstruct mpu_command_rec *\t// I-O\n"
11408 #: build/C/man2/ioctl_list.2:643
11410 msgid "0x00005000\tSNDCTL_DSP_RESET\tvoid\n"
11411 msgstr "0x00005000\tSNDCTL_DSP_RESET\tvoid\n"
11414 #: build/C/man2/ioctl_list.2:644
11416 msgid "0x00005001\tSNDCTL_DSP_SYNC\tvoid\n"
11417 msgstr "0x00005001\tSNDCTL_DSP_SYNC\tvoid\n"
11420 #: build/C/man2/ioctl_list.2:645
11422 msgid "0xC0045002\tSNDCTL_DSP_SPEED\tint *\t// I-O\n"
11423 msgstr "0xC0045002\tSNDCTL_DSP_SPEED\tint *\t// I-O\n"
11426 #: build/C/man2/ioctl_list.2:646
11428 msgid "0xC0045003\tSNDCTL_DSP_STEREO\tint *\t// I-O\n"
11429 msgstr "0xC0045003\tSNDCTL_DSP_STEREO\tint *\t// I-O\n"
11432 #: build/C/man2/ioctl_list.2:647
11434 msgid "0xC0045004\tSNDCTL_DSP_GETBLKSIZE\tint *\t// I-O\n"
11435 msgstr "0xC0045004\tSNDCTL_DSP_GETBLKSIZE\tint *\t// I-O\n"
11438 #: build/C/man2/ioctl_list.2:648
11440 msgid "0xC0045006\tSOUND_PCM_WRITE_CHANNELS\tint *\t// I-O\n"
11441 msgstr "0xC0045006\tSOUND_PCM_WRITE_CHANNELS\tint *\t// I-O\n"
11444 #: build/C/man2/ioctl_list.2:649
11446 msgid "0xC0045007\tSOUND_PCM_WRITE_FILTER\tint *\t// I-O\n"
11447 msgstr "0xC0045007\tSOUND_PCM_WRITE_FILTER\tint *\t// I-O\n"
11450 #: build/C/man2/ioctl_list.2:650
11452 msgid "0x00005008\tSNDCTL_DSP_POST\tvoid\n"
11453 msgstr "0x00005008\tSNDCTL_DSP_POST\tvoid\n"
11456 #: build/C/man2/ioctl_list.2:651
11458 msgid "0xC0045009\tSNDCTL_DSP_SUBDIVIDE\tint *\t// I-O\n"
11459 msgstr "0xC0045009\tSNDCTL_DSP_SUBDIVIDE\tint *\t// I-O\n"
11462 #: build/C/man2/ioctl_list.2:652
11464 msgid "0xC004500A\tSNDCTL_DSP_SETFRAGMENT\tint *\t// I-O\n"
11465 msgstr "0xC004500A\tSNDCTL_DSP_SETFRAGMENT\tint *\t// I-O\n"
11468 #: build/C/man2/ioctl_list.2:653
11470 msgid "0x8004500B\tSNDCTL_DSP_GETFMTS\tint *\n"
11471 msgstr "0x8004500B\tSNDCTL_DSP_GETFMTS\tint *\n"
11474 #: build/C/man2/ioctl_list.2:654
11476 msgid "0xC0045005\tSNDCTL_DSP_SETFMT\tint *\t// I-O\n"
11477 msgstr "0xC0045005\tSNDCTL_DSP_SETFMT\tint *\t// I-O\n"
11480 #: build/C/man2/ioctl_list.2:658
11482 msgid "0x800C500C\tSNDCTL_DSP_GETOSPACE\tstruct audio_buf_info *\n"
11483 msgstr "0x800C500C\tSNDCTL_DSP_GETOSPACE\tstruct audio_buf_info *\n"
11486 #: build/C/man2/ioctl_list.2:659
11488 msgid "0x800C500D\tSNDCTL_DSP_GETISPACE\tstruct audio_buf_info *\n"
11489 msgstr "0x800C500D\tSNDCTL_DSP_GETISPACE\tstruct audio_buf_info *\n"
11492 #: build/C/man2/ioctl_list.2:660
11494 msgid "0x0000500E\tSNDCTL_DSP_NONBLOCK\tvoid\n"
11495 msgstr "0x0000500E\tSNDCTL_DSP_NONBLOCK\tvoid\n"
11498 #: build/C/man2/ioctl_list.2:661
11500 msgid "0x80045002\tSOUND_PCM_READ_RATE\tint *\n"
11501 msgstr "0x80045002\tSOUND_PCM_READ_RATE\tint *\n"
11504 #: build/C/man2/ioctl_list.2:662
11506 msgid "0x80045006\tSOUND_PCM_READ_CHANNELS\tint *\n"
11507 msgstr "0x80045006\tSOUND_PCM_READ_CHANNELS\tint *\n"
11510 #: build/C/man2/ioctl_list.2:663
11512 msgid "0x80045005\tSOUND_PCM_READ_BITS\tint *\n"
11513 msgstr "0x80045005\tSOUND_PCM_READ_BITS\tint *\n"
11516 #: build/C/man2/ioctl_list.2:664
11518 msgid "0x80045007\tSOUND_PCM_READ_FILTER\tint *\n"
11519 msgstr "0x80045007\tSOUND_PCM_READ_FILTER\tint *\n"
11522 #: build/C/man2/ioctl_list.2:665
11524 msgid "0x00004300\tSNDCTL_COPR_RESET\tvoid\n"
11525 msgstr "0x00004300\tSNDCTL_COPR_RESET\tvoid\n"
11528 #: build/C/man2/ioctl_list.2:666
11530 msgid "0xCFB04301\tSNDCTL_COPR_LOAD\tconst struct copr_buffer *\n"
11531 msgstr "0xCFB04301\tSNDCTL_COPR_LOAD\tconst struct copr_buffer *\n"
11534 #: build/C/man2/ioctl_list.2:670
11536 msgid "0xC0144302\tSNDCTL_COPR_RDATA\tstruct copr_debug_buf *\t// I-O\n"
11537 msgstr "0xC0144302\tSNDCTL_COPR_RDATA\tstruct copr_debug_buf *\t// I-O\n"
11540 #: build/C/man2/ioctl_list.2:671
11542 msgid "0xC0144303\tSNDCTL_COPR_RCODE\tstruct copr_debug_buf *\t// I-O\n"
11543 msgstr "0xC0144303\tSNDCTL_COPR_RCODE\tstruct copr_debug_buf *\t// I-O\n"
11546 #: build/C/man2/ioctl_list.2:675
11548 msgid "0x40144304\tSNDCTL_COPR_WDATA\tconst struct copr_debug_buf *\n"
11549 msgstr "0x40144304\tSNDCTL_COPR_WDATA\tconst struct copr_debug_buf *\n"
11552 #: build/C/man2/ioctl_list.2:676
11554 msgid "0x40144305\tSNDCTL_COPR_WCODE\tconst struct copr_debug_buf *\n"
11555 msgstr "0x40144305\tSNDCTL_COPR_WCODE\tconst struct copr_debug_buf *\n"
11558 #: build/C/man2/ioctl_list.2:680
11560 msgid "0xC0144306\tSNDCTL_COPR_RUN\tstruct copr_debug_buf *\t// I-O\n"
11561 msgstr "0xC0144306\tSNDCTL_COPR_RUN\tstruct copr_debug_buf *\t// I-O\n"
11564 #: build/C/man2/ioctl_list.2:681
11566 msgid "0xC0144307\tSNDCTL_COPR_HALT\tstruct copr_debug_buf *\t// I-O\n"
11567 msgstr "0xC0144307\tSNDCTL_COPR_HALT\tstruct copr_debug_buf *\t// I-O\n"
11570 #: build/C/man2/ioctl_list.2:685
11572 msgid "0x4FA44308\tSNDCTL_COPR_SENDMSG\tconst struct copr_msg *\n"
11573 msgstr "0x4FA44308\tSNDCTL_COPR_SENDMSG\tconst struct copr_msg *\n"
11576 #: build/C/man2/ioctl_list.2:686
11578 msgid "0x8FA44309\tSNDCTL_COPR_RCVMSG\tstruct copr_msg *\n"
11579 msgstr "0x8FA44309\tSNDCTL_COPR_RCVMSG\tstruct copr_msg *\n"
11582 #: build/C/man2/ioctl_list.2:687
11584 msgid "0x80044D00\tSOUND_MIXER_READ_VOLUME\tint *\n"
11585 msgstr "0x80044D00\tSOUND_MIXER_READ_VOLUME\tint *\n"
11588 #: build/C/man2/ioctl_list.2:688
11590 msgid "0x80044D01\tSOUND_MIXER_READ_BASS\tint *\n"
11591 msgstr "0x80044D01\tSOUND_MIXER_READ_BASS\tint *\n"
11594 #: build/C/man2/ioctl_list.2:689
11596 msgid "0x80044D02\tSOUND_MIXER_READ_TREBLE\tint *\n"
11597 msgstr "0x80044D02\tSOUND_MIXER_READ_TREBLE\tint *\n"
11600 #: build/C/man2/ioctl_list.2:690
11602 msgid "0x80044D03\tSOUND_MIXER_READ_SYNTH\tint *\n"
11603 msgstr "0x80044D03\tSOUND_MIXER_READ_SYNTH\tint *\n"
11606 #: build/C/man2/ioctl_list.2:691
11608 msgid "0x80044D04\tSOUND_MIXER_READ_PCM\tint *\n"
11609 msgstr "0x80044D04\tSOUND_MIXER_READ_PCM\tint *\n"
11612 #: build/C/man2/ioctl_list.2:692
11614 msgid "0x80044D05\tSOUND_MIXER_READ_SPEAKER\tint *\n"
11615 msgstr "0x80044D05\tSOUND_MIXER_READ_SPEAKER\tint *\n"
11618 #: build/C/man2/ioctl_list.2:693
11620 msgid "0x80044D06\tSOUND_MIXER_READ_LINE\tint *\n"
11621 msgstr "0x80044D06\tSOUND_MIXER_READ_LINE\tint *\n"
11624 #: build/C/man2/ioctl_list.2:694
11626 msgid "0x80044D07\tSOUND_MIXER_READ_MIC\tint *\n"
11627 msgstr "0x80044D07\tSOUND_MIXER_READ_MIC\tint *\n"
11630 #: build/C/man2/ioctl_list.2:695
11632 msgid "0x80044D08\tSOUND_MIXER_READ_CD\tint *\n"
11633 msgstr "0x80044D08\tSOUND_MIXER_READ_CD\tint *\n"
11636 #: build/C/man2/ioctl_list.2:696
11638 msgid "0x80044D09\tSOUND_MIXER_READ_IMIX\tint *\n"
11639 msgstr "0x80044D09\tSOUND_MIXER_READ_IMIX\tint *\n"
11642 #: build/C/man2/ioctl_list.2:697
11644 msgid "0x80044D0A\tSOUND_MIXER_READ_ALTPCM\tint *\n"
11645 msgstr "0x80044D0A\tSOUND_MIXER_READ_ALTPCM\tint *\n"
11648 #: build/C/man2/ioctl_list.2:698
11650 msgid "0x80044D0B\tSOUND_MIXER_READ_RECLEV\tint *\n"
11651 msgstr "0x80044D0B\tSOUND_MIXER_READ_RECLEV\tint *\n"
11654 #: build/C/man2/ioctl_list.2:699
11656 msgid "0x80044D0C\tSOUND_MIXER_READ_IGAIN\tint *\n"
11657 msgstr "0x80044D0C\tSOUND_MIXER_READ_IGAIN\tint *\n"
11660 #: build/C/man2/ioctl_list.2:700
11662 msgid "0x80044D0D\tSOUND_MIXER_READ_OGAIN\tint *\n"
11663 msgstr "0x80044D0D\tSOUND_MIXER_READ_OGAIN\tint *\n"
11666 #: build/C/man2/ioctl_list.2:701
11668 msgid "0x80044D0E\tSOUND_MIXER_READ_LINE1\tint *\n"
11669 msgstr "0x80044D0E\tSOUND_MIXER_READ_LINE1\tint *\n"
11672 #: build/C/man2/ioctl_list.2:702
11674 msgid "0x80044D0F\tSOUND_MIXER_READ_LINE2\tint *\n"
11675 msgstr "0x80044D0F\tSOUND_MIXER_READ_LINE2\tint *\n"
11678 #: build/C/man2/ioctl_list.2:703
11680 msgid "0x80044D10\tSOUND_MIXER_READ_LINE3\tint *\n"
11681 msgstr "0x80044D10\tSOUND_MIXER_READ_LINE3\tint *\n"
11684 #: build/C/man2/ioctl_list.2:704
11686 msgid "0x80044D1C\tSOUND_MIXER_READ_MUTE\tint *\n"
11687 msgstr "0x80044D1C\tSOUND_MIXER_READ_MUTE\tint *\n"
11690 #: build/C/man2/ioctl_list.2:705
11692 msgid "0x80044D1D\tSOUND_MIXER_READ_ENHANCE\tint *\n"
11693 msgstr "0x80044D1D\tSOUND_MIXER_READ_ENHANCE\tint *\n"
11696 #: build/C/man2/ioctl_list.2:706
11698 msgid "0x80044D1E\tSOUND_MIXER_READ_LOUD\tint *\n"
11699 msgstr "0x80044D1E\tSOUND_MIXER_READ_LOUD\tint *\n"
11702 #: build/C/man2/ioctl_list.2:707
11704 msgid "0x80044DFF\tSOUND_MIXER_READ_RECSRC\tint *\n"
11705 msgstr "0x80044DFF\tSOUND_MIXER_READ_RECSRC\tint *\n"
11708 #: build/C/man2/ioctl_list.2:708
11710 msgid "0x80044DFE\tSOUND_MIXER_READ_DEVMASK\tint *\n"
11711 msgstr "0x80044DFE\tSOUND_MIXER_READ_DEVMASK\tint *\n"
11714 #: build/C/man2/ioctl_list.2:709
11716 msgid "0x80044DFD\tSOUND_MIXER_READ_RECMASK\tint *\n"
11717 msgstr "0x80044DFD\tSOUND_MIXER_READ_RECMASK\tint *\n"
11720 #: build/C/man2/ioctl_list.2:710
11722 msgid "0x80044DFB\tSOUND_MIXER_READ_STEREODEVS\tint *\n"
11723 msgstr "0x80044DFB\tSOUND_MIXER_READ_STEREODEVS\tint *\n"
11726 #: build/C/man2/ioctl_list.2:711
11728 msgid "0x80044DFC\tSOUND_MIXER_READ_CAPS\tint *\n"
11729 msgstr "0x80044DFC\tSOUND_MIXER_READ_CAPS\tint *\n"
11732 #: build/C/man2/ioctl_list.2:715
11734 msgid "0xC0044D00\tSOUND_MIXER_WRITE_VOLUME\tint *\t// I-O\n"
11735 msgstr "0xC0044D00\tSOUND_MIXER_WRITE_VOLUME\tint *\t// I-O\n"
11738 #: build/C/man2/ioctl_list.2:716
11740 msgid "0xC0044D01\tSOUND_MIXER_WRITE_BASS\tint *\t// I-O\n"
11741 msgstr "0xC0044D01\tSOUND_MIXER_WRITE_BASS\tint *\t// I-O\n"
11744 #: build/C/man2/ioctl_list.2:717
11746 msgid "0xC0044D02\tSOUND_MIXER_WRITE_TREBLE\tint *\t// I-O\n"
11747 msgstr "0xC0044D02\tSOUND_MIXER_WRITE_TREBLE\tint *\t// I-O\n"
11750 #: build/C/man2/ioctl_list.2:718
11752 msgid "0xC0044D03\tSOUND_MIXER_WRITE_SYNTH\tint *\t// I-O\n"
11753 msgstr "0xC0044D03\tSOUND_MIXER_WRITE_SYNTH\tint *\t// I-O\n"
11756 #: build/C/man2/ioctl_list.2:719
11758 msgid "0xC0044D04\tSOUND_MIXER_WRITE_PCM\tint *\t// I-O\n"
11759 msgstr "0xC0044D04\tSOUND_MIXER_WRITE_PCM\tint *\t// I-O\n"
11762 #: build/C/man2/ioctl_list.2:720
11764 msgid "0xC0044D05\tSOUND_MIXER_WRITE_SPEAKER\tint *\t// I-O\n"
11765 msgstr "0xC0044D05\tSOUND_MIXER_WRITE_SPEAKER\tint *\t// I-O\n"
11768 #: build/C/man2/ioctl_list.2:721
11770 msgid "0xC0044D06\tSOUND_MIXER_WRITE_LINE\tint *\t// I-O\n"
11771 msgstr "0xC0044D06\tSOUND_MIXER_WRITE_LINE\tint *\t// I-O\n"
11774 #: build/C/man2/ioctl_list.2:722
11776 msgid "0xC0044D07\tSOUND_MIXER_WRITE_MIC\tint *\t// I-O\n"
11777 msgstr "0xC0044D07\tSOUND_MIXER_WRITE_MIC\tint *\t// I-O\n"
11780 #: build/C/man2/ioctl_list.2:723
11782 msgid "0xC0044D08\tSOUND_MIXER_WRITE_CD\tint *\t// I-O\n"
11783 msgstr "0xC0044D08\tSOUND_MIXER_WRITE_CD\tint *\t// I-O\n"
11786 #: build/C/man2/ioctl_list.2:724
11788 msgid "0xC0044D09\tSOUND_MIXER_WRITE_IMIX\tint *\t// I-O\n"
11789 msgstr "0xC0044D09\tSOUND_MIXER_WRITE_IMIX\tint *\t// I-O\n"
11792 #: build/C/man2/ioctl_list.2:725
11794 msgid "0xC0044D0A\tSOUND_MIXER_WRITE_ALTPCM\tint *\t// I-O\n"
11795 msgstr "0xC0044D0A\tSOUND_MIXER_WRITE_ALTPCM\tint *\t// I-O\n"
11798 #: build/C/man2/ioctl_list.2:726
11800 msgid "0xC0044D0B\tSOUND_MIXER_WRITE_RECLEV\tint *\t// I-O\n"
11801 msgstr "0xC0044D0B\tSOUND_MIXER_WRITE_RECLEV\tint *\t// I-O\n"
11804 #: build/C/man2/ioctl_list.2:727
11806 msgid "0xC0044D0C\tSOUND_MIXER_WRITE_IGAIN\tint *\t// I-O\n"
11807 msgstr "0xC0044D0C\tSOUND_MIXER_WRITE_IGAIN\tint *\t// I-O\n"
11810 #: build/C/man2/ioctl_list.2:728
11812 msgid "0xC0044D0D\tSOUND_MIXER_WRITE_OGAIN\tint *\t// I-O\n"
11813 msgstr "0xC0044D0D\tSOUND_MIXER_WRITE_OGAIN\tint *\t// I-O\n"
11816 #: build/C/man2/ioctl_list.2:729
11818 msgid "0xC0044D0E\tSOUND_MIXER_WRITE_LINE1\tint *\t// I-O\n"
11819 msgstr "0xC0044D0E\tSOUND_MIXER_WRITE_LINE1\tint *\t// I-O\n"
11822 #: build/C/man2/ioctl_list.2:730
11824 msgid "0xC0044D0F\tSOUND_MIXER_WRITE_LINE2\tint *\t// I-O\n"
11825 msgstr "0xC0044D0F\tSOUND_MIXER_WRITE_LINE2\tint *\t// I-O\n"
11828 #: build/C/man2/ioctl_list.2:731
11830 msgid "0xC0044D10\tSOUND_MIXER_WRITE_LINE3\tint *\t// I-O\n"
11831 msgstr "0xC0044D10\tSOUND_MIXER_WRITE_LINE3\tint *\t// I-O\n"
11834 #: build/C/man2/ioctl_list.2:732
11836 msgid "0xC0044D1C\tSOUND_MIXER_WRITE_MUTE\tint *\t// I-O\n"
11837 msgstr "0xC0044D1C\tSOUND_MIXER_WRITE_MUTE\tint *\t// I-O\n"
11840 #: build/C/man2/ioctl_list.2:733
11842 msgid "0xC0044D1D\tSOUND_MIXER_WRITE_ENHANCE\tint *\t// I-O\n"
11843 msgstr "0xC0044D1D\tSOUND_MIXER_WRITE_ENHANCE\tint *\t// I-O\n"
11846 #: build/C/man2/ioctl_list.2:734
11848 msgid "0xC0044D1E\tSOUND_MIXER_WRITE_LOUD\tint *\t// I-O\n"
11849 msgstr "0xC0044D1E\tSOUND_MIXER_WRITE_LOUD\tint *\t// I-O\n"
11852 #: build/C/man2/ioctl_list.2:735
11854 msgid "0xC0044DFF\tSOUND_MIXER_WRITE_RECSRC\tint *\t// I-O\n"
11855 msgstr "0xC0044DFF\tSOUND_MIXER_WRITE_RECSRC\tint *\t// I-O\n"
11857 #. type: Plain text
11858 #: build/C/man2/ioctl_list.2:739
11859 msgid "// E<lt>include/linux/umsdos_fs.hE<gt>"
11860 msgstr "// E<lt>include/linux/umsdos_fs.hE<gt>"
11863 #: build/C/man2/ioctl_list.2:741
11865 msgid "0x000004D2\tUMSDOS_READDIR_DOS\tstruct umsdos_ioctl *\t// I-O\n"
11866 msgstr "0x000004D2\tUMSDOS_READDIR_DOS\tstruct umsdos_ioctl *\t// I-O\n"
11869 #: build/C/man2/ioctl_list.2:742
11871 msgid "0x000004D3\tUMSDOS_UNLINK_DOS\tconst struct umsdos_ioctl *\n"
11872 msgstr "0x000004D3\tUMSDOS_UNLINK_DOS\tconst struct umsdos_ioctl *\n"
11875 #: build/C/man2/ioctl_list.2:743
11877 msgid "0x000004D4\tUMSDOS_RMDIR_DOS\tconst struct umsdos_ioctl *\n"
11878 msgstr "0x000004D4\tUMSDOS_RMDIR_DOS\tconst struct umsdos_ioctl *\n"
11881 #: build/C/man2/ioctl_list.2:744
11883 msgid "0x000004D5\tUMSDOS_STAT_DOS\tstruct umsdos_ioctl *\t// I-O\n"
11884 msgstr "0x000004D5\tUMSDOS_STAT_DOS\tstruct umsdos_ioctl *\t// I-O\n"
11887 #: build/C/man2/ioctl_list.2:745
11889 msgid "0x000004D6\tUMSDOS_CREAT_EMD\tconst struct umsdos_ioctl *\n"
11890 msgstr "0x000004D6\tUMSDOS_CREAT_EMD\tconst struct umsdos_ioctl *\n"
11893 #: build/C/man2/ioctl_list.2:746
11895 msgid "0x000004D7\tUMSDOS_UNLINK_EMD\tconst struct umsdos_ioctl *\n"
11896 msgstr "0x000004D7\tUMSDOS_UNLINK_EMD\tconst struct umsdos_ioctl *\n"
11899 #: build/C/man2/ioctl_list.2:747
11901 msgid "0x000004D8\tUMSDOS_READDIR_EMD\tstruct umsdos_ioctl *\t// I-O\n"
11902 msgstr "0x000004D8\tUMSDOS_READDIR_EMD\tstruct umsdos_ioctl *\t// I-O\n"
11905 #: build/C/man2/ioctl_list.2:748
11907 msgid "0x000004D9\tUMSDOS_GETVERSION\tstruct umsdos_ioctl *\n"
11908 msgstr "0x000004D9\tUMSDOS_GETVERSION\tstruct umsdos_ioctl *\n"
11911 #: build/C/man2/ioctl_list.2:749
11913 msgid "0x000004DA\tUMSDOS_INIT_EMD\tvoid\n"
11914 msgstr "0x000004DA\tUMSDOS_INIT_EMD\tvoid\n"
11917 #: build/C/man2/ioctl_list.2:750
11919 msgid "0x000004DB\tUMSDOS_DOS_SETUP\tconst struct umsdos_ioctl *\n"
11920 msgstr "0x000004DB\tUMSDOS_DOS_SETUP\tconst struct umsdos_ioctl *\n"
11923 #: build/C/man2/ioctl_list.2:751
11925 msgid "0x000004DC\tUMSDOS_RENAME_DOS\tconst struct umsdos_ioctl *\n"
11926 msgstr "0x000004DC\tUMSDOS_RENAME_DOS\tconst struct umsdos_ioctl *\n"
11928 #. type: Plain text
11929 #: build/C/man2/ioctl_list.2:755
11930 msgid "// E<lt>include/linux/vt.hE<gt>"
11931 msgstr "// E<lt>include/linux/vt.hE<gt>"
11934 #: build/C/man2/ioctl_list.2:757
11936 msgid "0x00005600\tVT_OPENQRY\tint *\n"
11937 msgstr "0x00005600\tVT_OPENQRY\tint *\n"
11940 #: build/C/man2/ioctl_list.2:758
11942 msgid "0x00005601\tVT_GETMODE\tstruct vt_mode *\n"
11943 msgstr "0x00005601\tVT_GETMODE\tstruct vt_mode *\n"
11946 #: build/C/man2/ioctl_list.2:759
11948 msgid "0x00005602\tVT_SETMODE\tconst struct vt_mode *\n"
11949 msgstr "0x00005602\tVT_SETMODE\tconst struct vt_mode *\n"
11952 #: build/C/man2/ioctl_list.2:760
11954 msgid "0x00005603\tVT_GETSTATE\tstruct vt_stat *\n"
11955 msgstr "0x00005603\tVT_GETSTATE\tstruct vt_stat *\n"
11958 #: build/C/man2/ioctl_list.2:761
11960 msgid "0x00005604\tVT_SENDSIG\tvoid\n"
11961 msgstr "0x00005604\tVT_SENDSIG\tvoid\n"
11964 #: build/C/man2/ioctl_list.2:762
11966 msgid "0x00005605\tVT_RELDISP\tint\n"
11967 msgstr "0x00005605\tVT_RELDISP\tint\n"
11970 #: build/C/man2/ioctl_list.2:763
11972 msgid "0x00005606\tVT_ACTIVATE\tint\n"
11973 msgstr "0x00005606\tVT_ACTIVATE\tint\n"
11976 #: build/C/man2/ioctl_list.2:764
11978 msgid "0x00005607\tVT_WAITACTIVE\tint\n"
11979 msgstr "0x00005607\tVT_WAITACTIVE\tint\n"
11982 #: build/C/man2/ioctl_list.2:765
11984 msgid "0x00005608\tVT_DISALLOCATE\tint\n"
11985 msgstr "0x00005608\tVT_DISALLOCATE\tint\n"
11988 #: build/C/man2/ioctl_list.2:766
11990 msgid "0x00005609\tVT_RESIZE\tconst struct vt_sizes *\n"
11991 msgstr "0x00005609\tVT_RESIZE\tconst struct vt_sizes *\n"
11994 #: build/C/man2/ioctl_list.2:767
11996 msgid "0x0000560A\tVT_RESIZEX\tconst struct vt_consize *\n"
11997 msgstr "0x0000560A\tVT_RESIZEX\tconst struct vt_consize *\n"
11999 #. type: Plain text
12000 #: build/C/man2/ioctl_list.2:774
12001 msgid "// More arguments. Some ioctl's take a pointer to a structure which contains additional pointers. These are documented here in alphabetical order."
12002 msgstr "// More arguments. いくつかの ioctl は追加のポインタを含む構造体へのポインタを使用します。 ここでこれらをアルファベット順に説明します。"
12004 #. type: Plain text
12005 #: build/C/man2/ioctl_list.2:782
12006 msgid "B<CDROMREADAUDIO> takes an input pointer I<const struct cdrom_read_audio\\ *>. The I<buf> field points to an output buffer of length I<nframes\\ * CD_FRAMESIZE_RAW>."
12007 msgstr "B<CDROMREADAUDIO> は入力ポインタ I<const struct cdrom_read_audio\\ *> を使用します。 I<buf> フィールドは大きさ I<nframes\\ * CD_FRAMESIZE_RAW> の出力バッファーへのポインタです。"
12009 #. type: Plain text
12010 #: build/C/man2/ioctl_list.2:798
12011 msgid "B<CDROMREADCOOKED>, B<CDROMREADMODE1>, B<CDROMREADMODE2>, and B<CDROMREADRAW> take an input pointer I<const struct cdrom_msf\\ *>. They use the same pointer as an output pointer to I<char []>. The length varies by request. For B<CDROMREADMODE1>, most drivers use CD_FRAMESIZE, but the Optics Storage driver uses OPT_BLOCKSIZE instead (both have the numerical value 2048)."
12012 msgstr "B<CDROMREADCOOKED>, B<CDROMREADMODE1>, B<CDROMREADMODE2>, B<CDROMREADRAW> は入力ポインタ I<const struct cdrom_msf\\ *> を使用します。これらは同じポインタを I<char []> への出力ポインタとして使用します。 長さは要求によって変化します。 B<CDROMREADMODE1> には、多くのデバイスが CD_FRAMESIZE を使用しますが、光学記憶装置 (光ディスク) のドライバは OPT_BLOCKSIZE を使用します (どちらも同じ値で 2048 です)。"
12014 #. type: Plain text
12015 #: build/C/man2/ioctl_list.2:804
12018 " CDROMREADCOOKED char [CD_FRAMESIZE]\n"
12019 " CDROMREADMODE1 char [CD_FRAMESIZE or OPT_BLOCKSIZE]\n"
12020 " CDROMREADMODE2 char [CD_FRAMESIZE_RAW0]\n"
12021 " CDROMREADRAW char [CD_FRAMESIZE_RAW]\n"
12023 " CDROMREADCOOKED char [CD_FRAMESIZE]\n"
12024 " CDROMREADMODE1 char [CD_FRAMESIZE or OPT_BLOCKSIZE]\n"
12025 " CDROMREADMODE2 char [CD_FRAMESIZE_RAW0]\n"
12026 " CDROMREADRAW char [CD_FRAMESIZE_RAW]\n"
12028 #. type: Plain text
12029 #: build/C/man2/ioctl_list.2:818
12030 msgid "B<EQL_ENSLAVE>, B<EQL_EMANCIPATE>, B<EQL_GETSLAVECFG>, B<EQL_SETSLAVECFG>, B<EQL_GETMASTERCFG>, and B<EQL_SETMASTERCFG> take a I<struct ifreq\\ *>. The I<ifr_data> field is a pointer to another structure as follows:"
12031 msgstr "B<EQL_ENSLAVE>, B<EQL_EMANCIPATE>, B<EQL_GETSLAVECFG>, B<EQL_SETSLAVECFG>, B<EQL_GETMASTERCFG>, B<EQL_SETMASTERCFG> は I<struct ifreq\\ *> を使用します。 I<ifr_data> フィールドは以下に示す別の構造体へのポインタです:"
12033 #. type: Plain text
12034 #: build/C/man2/ioctl_list.2:826
12037 " EQL_ENSLAVE const struct slaving_request *\n"
12038 " EQL_EMANCIPATE const struct slaving_request *\n"
12039 " EQL_GETSLAVECFG struct slave_config * // I-O\n"
12040 " EQL_SETSLAVECFG const struct slave_config *\n"
12041 " EQL_GETMASTERCFG struct master_config *\n"
12042 " EQL_SETMASTERCFG const struct master_config *\n"
12044 " EQL_ENSLAVE const struct slaving_request *\n"
12045 " EQL_EMANCIPATE const struct slaving_request *\n"
12046 " EQL_GETSLAVECFG struct slave_config * // I-O\n"
12047 " EQL_SETSLAVECFG const struct slave_config *\n"
12048 " EQL_GETMASTERCFG struct master_config *\n"
12049 " EQL_SETMASTERCFG const struct master_config *\n"
12051 #. type: Plain text
12052 #: build/C/man2/ioctl_list.2:843
12053 msgid "B<FDRAWCMD> takes a I<struct floppy raw_cmd\\ *>. If I<flags & FD_RAW_WRITE> is nonzero, then I<data> points to an input buffer of length I<length>. If I<flags & FD_RAW_READ> is nonzero, then I<data> points to an output buffer of length I<length>."
12054 msgstr "B<FDRAWCMD> は I<struct floppy raw_cmd\\ *> を使用します。 I<flags & FD_RAW_WRITE> がゼロ以外の場合、 I<data> は大きさ I<length> の入力バッファーへのポインタになります。 I<flags & FD_RAW_READ> がゼロ以外の場合、 I<data> は大きさ I<length> の出力バッファーへのポインタになります。"
12056 #. type: Plain text
12057 #: build/C/man2/ioctl_list.2:859
12058 msgid "B<GIO_FONTX> and B<PIO_FONTX> take a I<struct console_font_desc\\ *> or a I<const struct console_font_desc\\ *>, respectively. I<chardata> points to a buffer of I<char [charcount]>. This is an output buffer for B<GIO_FONTX> and an input buffer for B<PIO_FONTX>."
12059 msgstr "B<GIO_FONTX>, B<PIO_FONTX> はそれぞれ I<struct console_font_desc\\ *> と I<const struct console_font_desc\\ *> を使用します。 I<chardata> は I<char [charcount]> バッファーへのポインタです。 これは B<GIO_FONTX> の出力バッファーと B<PIO_FONTX> の入力バッファーです。"
12061 #. type: Plain text
12062 #: build/C/man2/ioctl_list.2:875
12063 msgid "B<GIO_UNIMAP> and B<PIO_UNIMAP> take a I<struct unimapdesc\\ *> or a I<const struct unimapdesc\\ *>, respectively. I<entries> points to a buffer of I<struct unipair [entry_ct]>. This is an output buffer for B<GIO_UNIMAP> and an input buffer for B<PIO_UNIMAP>."
12064 msgstr "B<GIO_UNIMAP>, B<PIO_UNIMAP> はそれぞれ I<struct unimapdesc\\ *> と I<const struct unimapdesc\\ *> を使用します。 I<entries> は I<struct unipair [entry_ct]> バッファーへのポインタです。 これは B<GIO_UNIMAP> の出力バッファーと B<PIO_UNIMAP> の入力バッファーです。"
12066 #. type: Plain text
12067 #: build/C/man2/ioctl_list.2:879
12068 msgid "KDADDIO, KDDELIO, KDDISABIO, and KDENABIO enable or disable access to I/O ports. They are essentially alternate interfaces to 'ioperm'."
12069 msgstr "KDADDIO, KDDELIO, KDDISABIO, KDENABIO は I/O ポートへのアクセスを 可能/不可能にします。これらは本質的に、'ioperm' への別の インターフェースです。"
12071 #. type: Plain text
12072 #: build/C/man2/ioctl_list.2:885
12073 msgid "B<KDMAPDISP> and B<KDUNMAPDISP> enable or disable memory mappings or I/O port access. They are not implemented in the kernel."
12074 msgstr "B<KDMAPDISP>, B<KDUNMAPDISP> はメモリマッピングや I/O ポートへのアクセスを可能/不可能にします。 これらはカーネルに実装されていません。"
12076 #. type: Plain text
12077 #: build/C/man2/ioctl_list.2:893
12078 msgid "B<SCSI_IOCTL_PROBE_HOST> takes an input pointer I<const int\\ *>, which is a length. It uses the same pointer as an output pointer to a I<char []> buffer of this length."
12079 msgstr "B<SCSI_IOCTL_PROBE_HOST> は入力ポインタ I<const int\\ *> を大きさとして使用します。これは同じ大きさの I<char []> バッファー への出力ポインタとしても使用します。"
12081 #. type: Plain text
12082 #: build/C/man2/ioctl_list.2:899
12083 msgid "B<SIOCADDRT> and B<SIOCDELRT> take an input pointer whose type depends on the protocol:"
12084 msgstr "B<SIOCADDRT>, B<SIOCDELRT> は型が以下のプロトコルに依存する入力ポインタを使用します:"
12086 #. type: Plain text
12087 #: build/C/man2/ioctl_list.2:904
12090 " Most protocols const struct rtentry *\n"
12091 " AX.25 const struct ax25_route *\n"
12092 " NET/ROM const struct nr_route_struct *\n"
12094 " Most protocols const struct rtentry *\n"
12095 " AX.25 const struct ax25_route *\n"
12096 " NET/ROM const struct nr_route_struct *\n"
12098 #. type: Plain text
12099 #: build/C/man2/ioctl_list.2:915
12100 msgid "B<SIOCGIFCONF> takes a I<struct ifconf\\ *>. The I<ifc_buf> field points to a buffer of length I<ifc_len> bytes, into which the kernel writes a list of type I<struct ifreq []>."
12101 msgstr "B<SIOCGIFCONF> は I<struct ifconf\\ *> を使用します。この I<ifc_buf> フィールドは長さ I<ifc_len> バイトのバッファーへのポインタです。 これにカーネルが I<struct ifreq []> 型のリストへ書き込みます。"
12103 #. type: Plain text
12104 #: build/C/man2/ioctl_list.2:918
12105 msgid "B<SIOCSIFHWADDR> takes an input pointer whose type depends on the protocol:"
12106 msgstr "B<SIOCSIFHWADDR> は型が以下のプロトコルに依存する入力ポインタを使用します:"
12108 #. type: Plain text
12109 #: build/C/man2/ioctl_list.2:922
12112 " Most protocols const struct ifreq *\n"
12113 " AX.25 const char [AX25_ADDR_LEN]\n"
12115 " Most protocols const struct ifreq *\n"
12116 " AX.25 const char [AX25_ADDR_LEN]\n"
12118 #. type: Plain text
12119 #: build/C/man2/ioctl_list.2:937
12120 msgid "B<TIOCLINUX> takes a I<const char\\ *>. It uses this to distinguish several independent subcases. In the table below, I<N + foo> means I<foo> after an N-byte pad. I<struct selection> is implicitly defined in I<drivers/char/selection.c>"
12121 msgstr "B<TIOCLINUX> は I<const char\\ *> を使用します。このポインタをいくつかの 独立したサブクラスを識別する為に使用します。以下のテーブルの中で、 I<N + foo> は N バイトの詰めものの後にある I<foo> を意味します。 I<struct selection> は暗黙的に I<drivers/char/selection.c> の中で定義されています。"
12123 #. type: Plain text
12124 #: build/C/man2/ioctl_list.2:946
12127 " TIOCLINUX-2 1 + const struct selection *\n"
12128 " TIOCLINUX-3 void\n"
12129 " TIOCLINUX-4 void\n"
12130 " TIOCLINUX-5 4 + const struct { long [8]; } *\n"
12131 " TIOCLINUX-6 char *\n"
12132 " TIOCLINUX-7 char *\n"
12133 " TIOCLINUX-10 1 + const char *\n"
12135 " TIOCLINUX-2 1 + const struct selection *\n"
12136 " TIOCLINUX-3 void\n"
12137 " TIOCLINUX-4 void\n"
12138 " TIOCLINUX-5 4 + const struct { long [8]; } *\n"
12139 " TIOCLINUX-6 char *\n"
12140 " TIOCLINUX-7 char *\n"
12141 " TIOCLINUX-10 1 + const char *\n"
12143 #. type: Plain text
12144 #: build/C/man2/ioctl_list.2:949
12145 msgid "// Duplicate ioctls"
12146 msgstr "// Duplicate ioctls"
12148 #. type: Plain text
12149 #: build/C/man2/ioctl_list.2:954
12150 msgid "This list does not include ioctls in the range B<SIOCDEVPRIVATE> and B<SIOCPROTOPRIVATE>."
12151 msgstr "このリストは B<SIOCDEVPRIVATE> から B<SIOCPROTOPRIVATE> の範囲の ioctl を含んでいません。"
12154 #: build/C/man2/ioctl_list.2:956
12156 msgid "0x00000001\tFDSETPRM\tFIBMAP\n"
12157 msgstr "0x00000001\tFDSETPRM\tFIBMAP\n"
12160 #: build/C/man2/ioctl_list.2:957
12162 msgid "0x00000002\tFDDEFPRM\tFIGETBSZ\n"
12163 msgstr "0x00000002\tFDDEFPRM\tFIGETBSZ\n"
12166 #: build/C/man2/ioctl_list.2:958
12168 msgid "0x00005382\tCDROMAUDIOBUFSIZ\tSCSI_IOCTL_GET_IDLUN\n"
12169 msgstr "0x00005382\tCDROMAUDIOBUFSIZ\tSCSI_IOCTL_GET_IDLUN\n"
12172 #: build/C/man2/ioctl_list.2:959
12174 msgid "0x00005402\tSNDCTL_TMR_START\tTCSETS\n"
12175 msgstr "0x00005402\tSNDCTL_TMR_START\tTCSETS\n"
12178 #: build/C/man2/ioctl_list.2:960
12180 msgid "0x00005403\tSNDCTL_TMR_STOP\tTCSETSW\n"
12181 msgstr "0x00005403\tSNDCTL_TMR_STOP\tTCSETSW\n"
12184 #: build/C/man2/ioctl_list.2:961
12186 msgid "0x00005404\tSNDCTL_TMR_CONTINUE\tTCSETSF\n"
12187 msgstr "0x00005404\tSNDCTL_TMR_CONTINUE\tTCSETSF\n"
12189 #. type: Plain text
12190 #: build/C/man2/ioctl_list.2:965
12191 msgid "B<ioctl>(2)"
12192 msgstr "B<ioctl>(2)"
12195 #: build/C/man2/ioperm.2:34
12200 #. type: Plain text
12201 #: build/C/man2/ioperm.2:37
12202 msgid "ioperm - set port input/output permissions"
12203 msgstr "ioperm - ポートの入出力許可を設定する"
12205 #. type: Plain text
12206 #: build/C/man2/ioperm.2:40
12207 msgid "B<#include E<lt>sys/io.hE<gt>> /* for glibc */"
12208 msgstr "B<#include E<lt>sys/io.hE<gt>> /* for glibc */"
12210 #. type: Plain text
12211 #: build/C/man2/ioperm.2:42
12212 msgid "B<int ioperm(unsigned long >I<from>B<, unsigned long >I<num>B<, int >I<turn_on>B<);>"
12213 msgstr "B<int ioperm(unsigned long >I<from>B<, unsigned long >I<num>B<, int >I<turn_on>B<);>"
12215 #. type: Plain text
12216 #: build/C/man2/ioperm.2:56
12217 msgid "B<ioperm>() sets the port access permission bits for the calling thread for I<num> bits starting from port address I<from>. If I<turn_on> is nonzero, then permission for the specified bits is enabled; otherwise it is disabled. If I<turn_on> is nonzero, the calling thread must be privileged (B<CAP_SYS_RAWIO>)."
12218 msgstr "B<ioperm>() は、引き数 I<from> の I/O ポートアドレスから I<num> ビット分の領域に対する、呼び出し元スレッドのアクセス許可ビットを設定する。 I<turn_on> が 0 以外の場合、指定されたビットに対応する許可が有効になる。 I<turn_on> が 0 以外の場合、呼び出し元プロセスは特権 (B<CAP_SYS_RAWIO>) を持っていなければならない。"
12220 #. type: Plain text
12221 #: build/C/man2/ioperm.2:65
12222 msgid "Before Linux 2.6.8, only the first 0x3ff I/O ports could be specified in this manner. For more ports, the B<iopl>(2) system call had to be used (with a I<level> argument of 3). Since Linux 2.6.8, 65,536 I/O ports can be specified."
12223 msgstr "Linux 2.6.8 より前のバージョンでは、この方法で設定できるのは 0x3ff 番地までの I/Oポートに限られていた。これよりも大きなアドレスのポートに対しては B<iopl>(2) 関数を使わなければならなかった。Linux 2.6.8 以降では、65,536 個の I/O ポートを指定できる。"
12225 #. type: Plain text
12226 #: build/C/man2/ioperm.2:75
12227 msgid "Permissions are not inherited by the child created by B<fork>(2); following a B<fork>(2) the child must turn on those permissions that it needs. Permissions are preserved across B<execve>(2); this is useful for giving port access permissions to unprivileged programs."
12228 msgstr "アクセス権は B<fork>(2) で作成された子プロセスには継承されない。子プロセスでは、B<fork>(2) の後で必要なアクセス権を有効にしなければならない。 B<execve>(2) の前後でアクセス権は保存される。この機能は 非特権プログラムにポートへのアクセス権を 与えるのに使用できる。"
12230 #. type: Plain text
12231 #: build/C/man2/ioperm.2:79
12232 msgid "This call is mostly for the i386 architecture. On many other architectures it does not exist or will always return an error."
12233 msgstr "このシステムコールはほとんど i386 アーキテクチャのためだけのものである。 その他の多くのアーキテクチャでは存在しないか、常にエラーを返す。"
12235 #. type: Plain text
12236 #: build/C/man2/ioperm.2:91
12237 msgid "Invalid values for I<from> or I<num>."
12238 msgstr "I<from> または I<num> の値が不正である。"
12240 #. type: Plain text
12241 #: build/C/man2/ioperm.2:94
12242 msgid "(on PowerPC) This call is not supported."
12243 msgstr "(PowerPC で) このシステムコールはサポートしていない。"
12245 #. Could not allocate I/O bitmap.
12246 #. type: Plain text
12247 #: build/C/man2/ioperm.2:98
12248 msgid "Out of memory."
12251 #. type: Plain text
12252 #: build/C/man2/ioperm.2:101
12253 msgid "The calling thread has insufficient privilege."
12254 msgstr "呼び出し元スレッドに十分な権限がなかった。"
12256 #. type: Plain text
12257 #: build/C/man2/ioperm.2:105
12258 msgid "B<ioperm>() is Linux-specific and should not be used in programs intended to be portable."
12259 msgstr "B<ioperm>() は Linux 特有の関数であり、移植を意図したプログラムで 使用してはならない。"
12261 #. type: Plain text
12262 #: build/C/man2/ioperm.2:109
12263 msgid "The I</proc/ioports> file shows the I/O ports that are currently allocated on the system."
12264 msgstr "I</proc/ioports> ファイルには、現在このシステムに割り当てられている I/O ポートが表示される。"
12266 #. type: Plain text
12267 #: build/C/man2/ioperm.2:117
12268 msgid "Glibc has an B<ioperm>() prototype both in I<E<lt>sys/io.hE<gt>> and in I<E<lt>sys/perm.hE<gt>>. Avoid the latter, it is available on i386 only."
12269 msgstr "glibc2 には I<E<lt>sys/io.hE<gt>> と I<E<lt>sys/perm.hE<gt>> の両方に B<ioperm>() のプロトタイプがある。 後者は i386 のみで利用可能なので、使用すべきではない。"
12271 #. type: Plain text
12272 #: build/C/man2/ioperm.2:121
12273 msgid "B<iopl>(2), B<outb>(2), B<capabilities>(7)"
12274 msgstr "B<iopl>(2), B<outb>(2), B<capabilities>(7)"
12277 #: build/C/man3/lockf.3:28
12283 #: build/C/man3/lockf.3:28
12286 msgstr "2014-06-13"
12288 #. type: Plain text
12289 #: build/C/man3/lockf.3:31
12290 msgid "lockf - apply, test or remove a POSIX lock on an open file"
12291 msgstr "lockf - オープンされたファイルに対する POSIX ロックの適用・テスト・解除を行う"
12293 #. type: Plain text
12294 #: build/C/man3/lockf.3:35
12295 msgid "B<int lockf(int >I<fd>B<, int >I<cmd>B<, off_t >I<len>B<);>"
12296 msgstr "B<int lockf(int >I<fd>B<, int >I<cmd>B<, off_t >I<len>B<);>"
12298 #. type: Plain text
12299 #: build/C/man3/lockf.3:42
12300 msgid "B<lockf>():"
12301 msgstr "B<lockf>():"
12303 #. type: Plain text
12304 #: build/C/man3/lockf.3:46
12305 msgid "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
12306 msgstr "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
12308 #. type: Plain text
12309 #: build/C/man3/lockf.3:69
12310 msgid "Apply, test or remove a POSIX lock on a section of an open file. The file is specified by I<fd>, a file descriptor open for writing, the action by I<cmd>, and the section consists of byte positions I<pos>..I<pos>+I<len>-1 if I<len> is positive, and I<pos>-I<len>..I<pos>-1 if I<len> is negative, where I<pos> is the current file position, and if I<len> is zero, the section extends from the current file position to infinity, encompassing the present and future end-of-file positions. In all cases, the section may extend past current end-of-file."
12311 msgstr "オープンされたファイルのセクションに対して、 POSIX ロックの適用・テスト・解除をする。 ファイルは I<fd> で指定される。 I<fd> は書き込みのためにオープンしたファイルディスクリプターである。 アクションは I<cmd> で指定される。 I<pos> を現在のファイル位置とすると、 I<len> が正の場合、セクションはバイト位置 I<pos>..I<pos>+I<len>-1 となり、 I<len> が負の場合、セクションはバイト位置 I<pos>-I<len>..I<pos>-1 となる。 I<len> が 0 の場合、セクションは現在のファイル位置から無限大までとなる (つまり現在の、あるいは変更された場合は将来の、ファイル終端位置まで)。 どの場合においても、セクションは以前のファイル終端よりも拡大されうる。"
12313 #. type: Plain text
12314 #: build/C/man3/lockf.3:84
12315 msgid "On Linux, B<lockf>() is just an interface on top of B<fcntl>(2) locking. Many other systems implement B<lockf>() in this way, but note that POSIX.1-2001 leaves the relationship between B<lockf>() and B<fcntl>(2) locks unspecified. A portable application should probably avoid mixing calls to these interfaces."
12316 msgstr "Linux では、 B<lockf>() は単に B<fcntl>(2) のロックへのインターフェースである。 多くの他のシステムで B<lockf>() はこのように実装されているが、 POSIX.1-2001 では B<lockf>() と B<fcntl>(2) のロックとの関係は規定されていない。 おそらく、移植性が必要なアプリケーションでは、 B<lockf>() と B<fcntl>(2) のロックを混ぜて呼び出すのは避けるべきであろう。"
12318 #. type: Plain text
12319 #: build/C/man3/lockf.3:86
12320 msgid "Valid operations are given below:"
12321 msgstr "有効なオプションを以下に挙げる。"
12324 #: build/C/man3/lockf.3:86
12329 #. type: Plain text
12330 #: build/C/man3/lockf.3:96
12331 msgid "Set an exclusive lock on the specified section of the file. If (part of) this section is already locked, the call blocks until the previous lock is released. If this section overlaps an earlier locked section, both are merged. File locks are released as soon as the process holding the locks closes some file descriptor for the file. A child process does not inherit these locks."
12332 msgstr "ファイルの指定されたセクションに排他ロックを設定する。 そのセクション (の一部) が既にロックされていた場合、 前のロックが解除されるまで関数の呼び出しがブロックされる。 このセクションが前にロックされているセクションと重なった場合、 2 つのセクションは結合される。 ロックを保持しているプロセスが、 そのファイルのファイルディスクリプターをクローズすると、 ファイルロックは解放される。 子プロセスはロックを継承しない。"
12335 #: build/C/man3/lockf.3:96
12338 msgstr "B<F_TLOCK>"
12340 #. type: Plain text
12341 #: build/C/man3/lockf.3:102
12342 msgid "Same as B<F_LOCK> but the call never blocks and returns an error instead if the file is already locked."
12343 msgstr "B<F_LOCK> と同様であるが、ファイルが既にロックされている場合、 関数の呼び出しはブロックを行わずにエラーを返す。"
12346 #: build/C/man3/lockf.3:102
12349 msgstr "B<F_ULOCK>"
12351 #. type: Plain text
12352 #: build/C/man3/lockf.3:106
12353 msgid "Unlock the indicated section of the file. This may cause a locked section to be split into two locked sections."
12354 msgstr "ファイルの指定されたセクションのロックを解除する。 これによりロックされたセクションが 2 つに分割されるかもしれない。"
12357 #: build/C/man3/lockf.3:106
12362 #. type: Plain text
12363 #: build/C/man3/lockf.3:116
12364 msgid "Test the lock: return 0 if the specified section is unlocked or locked by this process; return -1, set I<errno> to B<EAGAIN> (B<EACCES> on some other systems), if another process holds a lock."
12365 msgstr "次のようにロックのテストをする。 指定されたセクションがロックされていないか、 このプロセスによりロックされている場合、0 を返す。 他のプロセスがロックを保持している場合、-1 を返し、 I<errno> を B<EAGAIN> (いくつかの他のシステムでは B<EACCES>) に設定する。"
12367 #. type: Plain text
12368 #: build/C/man3/lockf.3:130
12369 msgid "The file is locked and B<F_TLOCK> or B<F_TEST> was specified, or the operation is prohibited because the file has been memory-mapped by another process."
12370 msgstr "ロックされたファイルに対して、 B<F_TLOCK> または B<F_TEST> が指定されている。 または、ファイルが他のプロセスによりメモリーマップされており、 指定された操作が禁止されている。"
12372 #. type: Plain text
12373 #: build/C/man3/lockf.3:142
12374 msgid "I<fd> is not an open file descriptor; or I<cmd> is B<F_LOCK> or B<F_TLOCK> and I<fd> is not a writable file descriptor."
12375 msgstr "I<fd> がオープンされたファイルのディスクリプターではない。 または、 I<cmd> が B<F_LOCK> か B<F_TLOCK> で、 I<fd> が書き込み可能なファイルディスクリプターでない。"
12377 #. type: Plain text
12378 #: build/C/man3/lockf.3:147
12379 msgid "The command was B<F_LOCK> and this lock operation would cause a deadlock."
12380 msgstr "コマンドが B<F_LOCK> であり、このロック操作を行うとデッドロックが発生してしまう。"
12382 #. type: Plain text
12383 #: build/C/man3/lockf.3:151
12384 msgid "An invalid operation was specified in I<cmd>."
12385 msgstr "I<cmd> に無効な操作が指定された。"
12387 #. type: Plain text
12388 #: build/C/man3/lockf.3:154
12389 msgid "Too many segment locks open, lock table is full."
12390 msgstr "非常に多くのセグメントロックが開かれ、ロックテーブルが一杯である。"
12392 #. type: Plain text
12393 #: build/C/man3/lockf.3:159
12394 msgid "The B<lockf>() function is thread-safe."
12395 msgstr "B<lockf>() 関数はスレッドセーフである。"
12397 #. type: Plain text
12398 #: build/C/man3/lockf.3:161
12399 msgid "SVr4, POSIX.1-2001."
12400 msgstr "SVr4, POSIX.1-2001."
12402 #. type: Plain text
12403 #: build/C/man3/lockf.3:164
12404 msgid "B<fcntl>(2), B<flock>(2)"
12405 msgstr "B<fcntl>(2), B<flock>(2)"
12407 #. type: Plain text
12408 #: build/C/man3/lockf.3:176
12409 msgid "I<locks.txt> and I<mandatory-locking.txt> in the Linux kernel source directory I<Documentation/filesystems> (on older kernels, these files are directly under the I<Documentation> directory, and I<mandatory-locking.txt> is called I<mandatory.txt>)"
12410 msgstr "Linux カーネルソースの I<Documentation/filesystems> ディレクトリにある I<locks.txt> と I<mandatory-locking.txt> (以前のカーネルでは、これらのファイルは I<Documentation> ディレクトリ直下にあり、 I<mandatory-locking.txt> は I<mandatory.txt> という名前であった。)"
12413 #: build/C/man2/mincore.2:34
12419 #: build/C/man2/mincore.2:34
12422 msgstr "2008-04-22"
12424 #. type: Plain text
12425 #: build/C/man2/mincore.2:37
12426 msgid "mincore - determine whether pages are resident in memory"
12427 msgstr "mincore - ページがメモリ内にあるかどうかを判定する"
12429 #. type: Plain text
12430 #: build/C/man2/mincore.2:41
12431 msgid "B<#include E<lt>sys/mman.hE<gt>>"
12432 msgstr "B<#include E<lt>sys/mman.hE<gt>>"
12434 #. type: Plain text
12435 #: build/C/man2/mincore.2:43
12436 msgid "B<int mincore(void *>I<addr>B<, size_t >I<length>B<, unsigned char *>I<vec>B<);>"
12437 msgstr "B<int mincore(void *>I<addr>B<, size_t >I<length>B<, unsigned char *>I<vec>B<);>"
12439 #. type: Plain text
12440 #: build/C/man2/mincore.2:51
12441 msgid "B<mincore>(): _BSD_SOURCE || _SVID_SOURCE"
12442 msgstr "B<mincore>(): _BSD_SOURCE || _SVID_SOURCE"
12444 #. type: Plain text
12445 #: build/C/man2/mincore.2:62
12446 msgid "B<mincore>() returns a vector that indicates whether pages of the calling process's virtual memory are resident in core (RAM), and so will not cause a disk access (page fault) if referenced. The kernel returns residency information about the pages starting at the address I<addr>, and continuing for I<length> bytes."
12447 msgstr "B<mincore>() は、呼び出し元プロセスの仮想メモリのページがコア (RAM) 内に存在し、 ページ参照時にディスクアクセス (ページフォールト) を起こさないか どうかを示すベクトルを返す。カーネルは、アドレス I<addr> から始まる I<length> バイトの範囲のページに関する存在情報を返す。"
12449 #. type: Plain text
12450 #: build/C/man2/mincore.2:76
12451 msgid "The I<addr> argument must be a multiple of the system page size. The I<length> argument need not be a multiple of the page size, but since residency information is returned for whole pages, I<length> is effectively rounded up to the next multiple of the page size. One may obtain the page size (B<PAGE_SIZE>) using I<sysconf(_SC_PAGESIZE)>."
12452 msgstr "I<addr> 引き数はシステムのページサイズの倍数でなければならない。 I<length> 引き数はページサイズの倍数である必要はないが、 ページ全体に関する存在情報が返されるので、事実上 I<length> はページサイズの倍数に切り上げられることになる。 ページサイズ (B<PAGE_SIZE>) は I<sysconf(_SC_PAGESIZE)> を使って入手できる。"
12454 #. type: Plain text
12455 #: build/C/man2/mincore.2:94
12456 msgid "The I<vec> argument must point to an array containing at least I<(length+PAGE_SIZE-1) / PAGE_SIZE> bytes. On return, the least significant bit of each byte will be set if the corresponding page is currently resident in memory, and be clear otherwise. (The settings of the other bits in each byte are undefined; these bits are reserved for possible later use.) Of course the information returned in I<vec> is only a snapshot: pages that are not locked in memory can come and go at any moment, and the contents of I<vec> may already be stale by the time this call returns."
12457 msgstr "I<vec> 引き数は、少なくとも I<(length+PAGE_SIZE-1) / PAGE_SIZE> バイトが格納できる配列を指していなければならない。 この呼び出しが返るとき、 各バイトの最下位ビットは、対応するページがメモリ内にそのとき存在すれば セットされ、そうでない場合はクリアされる (各バイトのその他のビットは未定義であり、これらのビットは将来の使用に そなえて予約されている)。 もちろん、 I<vec> で返された情報はスナップショットでしかない。 メモリ内にロックされていないページは、任意の時点でメモリ内に 入ったり出たりでき、この呼び出しが返るときには I<vec> の内容はすでに古くなっているかもしれない。"
12459 #. type: Plain text
12460 #: build/C/man2/mincore.2:101
12461 msgid "On success, B<mincore>() returns zero. On error, -1 is returned, and I<errno> is set appropriately."
12462 msgstr "成功した場合、 B<mincore>() は 0 を返す。 エラーの場合は -1 を返して、 I<errno> を適切な値に設定する。"
12464 #. type: Plain text
12465 #: build/C/man2/mincore.2:104
12466 msgid "B<EAGAIN> kernel is temporarily out of resources."
12467 msgstr "B<EAGAIN> カーネルが一時的にリソースを使い果たしている。"
12469 #. type: Plain text
12470 #: build/C/man2/mincore.2:108
12471 msgid "I<vec> points to an invalid address."
12472 msgstr "I<vec> が無効なアドレスを指している。"
12474 #. type: Plain text
12475 #: build/C/man2/mincore.2:112
12476 msgid "I<addr> is not a multiple of the page size."
12477 msgstr "I<addr> がページサイズの倍数でない。"
12479 #. type: Plain text
12480 #: build/C/man2/mincore.2:124
12481 msgid "I<length> is greater than (I<TASK_SIZE> - I<addr>). (This could occur if a negative value is specified for I<length>, since that value will be interpreted as a large unsigned integer.) In Linux 2.6.11 and earlier, the error B<EINVAL> was returned for this condition."
12482 msgstr "I<length> が (I<TASK_SIZE> - I<addr>) より大きい。 (I<length> に負の値が指定された場合、 その値が大きな符号なし整数として解釈されるために起こることがある。) Linux 2.6.11 以前では、この条件の場合はエラー B<EINVAL> が返されていた。"
12484 #. type: Plain text
12485 #: build/C/man2/mincore.2:132
12486 msgid "I<addr> to I<addr> + I<length> contained unmapped memory."
12487 msgstr "I<addr> から I<addr> + I<length> の間にマップされていないメモリがあった。"
12489 #. type: Plain text
12490 #: build/C/man2/mincore.2:134
12491 msgid "Available since Linux 2.3.99pre1 and glibc 2.2."
12492 msgstr "Linux 2.3.99pre1 と glibc 2.2 から利用可能である。"
12494 #. It is on at least NetBSD, FreeBSD, OpenBSD, Solaris 8,
12495 #. AIX 5.1, SunOS 4.1
12499 #. function first appeared in 4.4BSD.
12500 #. type: Plain text
12501 #: build/C/man2/mincore.2:144
12502 msgid "B<mincore>() is not specified in POSIX.1-2001, and it is not available on all UNIX implementations."
12503 msgstr "B<mincore>() は POSIX.1-2001 に記述されておらず、 全ての UNIX 実装で利用可能であるわけではない。"
12505 #. Linux (up to now, 2.6.5),
12507 #. does not return correct information for MAP_PRIVATE mappings:
12508 #. for a MAP_PRIVATE file mapping,
12510 #. returns the residency of the file pages, rather than any
12511 #. modified process-private pages that have been copied on write;
12512 #. for a MAP_PRIVATE mapping of
12515 #. always reports pages as nonresident;
12516 #. and for a MAP_PRIVATE, MAP_ANONYMOUS mapping,
12518 #. always fails with the error
12520 #. type: Plain text
12521 #: build/C/man2/mincore.2:166
12522 msgid "Before kernel 2.6.21, B<mincore>() did not return correct information for B<MAP_PRIVATE> mappings, or for nonlinear mappings (established using B<remap_file_pages>(2))."
12523 msgstr "カーネル 2.6.21 より前は、 B<mincore>() は、 B<MAP_PRIVATE> マッピングや非線形マッピング (B<remap_file_pages>(2) を使って作成される) について正しい情報を返さなかった。"
12525 #. type: Plain text
12526 #: build/C/man2/mincore.2:169
12527 msgid "B<mlock>(2), B<mmap>(2)"
12528 msgstr "B<mlock>(2), B<mmap>(2)"
12531 #: build/C/man2/mkdir.2:11
12536 #. type: Plain text
12537 #: build/C/man2/mkdir.2:14
12538 msgid "mkdir, mkdirat - create a directory"
12539 msgstr "mkdir, mkdirat - ディレクトリを作成する"
12541 #. .B #include <unistd.h>
12542 #. type: Plain text
12543 #: build/C/man2/mkdir.2:19
12546 "B<#include E<lt>sys/stat.hE<gt>>\n"
12547 "B<#include E<lt>sys/types.hE<gt>>\n"
12549 "B<#include E<lt>sys/stat.hE<gt>>\n"
12550 "B<#include E<lt>sys/types.hE<gt>>\n"
12552 #. type: Plain text
12553 #: build/C/man2/mkdir.2:21
12555 msgid "B<int mkdir(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
12556 msgstr "B<int mkdir(const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
12558 #. type: Plain text
12559 #: build/C/man2/mkdir.2:24
12562 "B<#include E<lt>fcntl.hE<gt> >/* Definition of AT_* constants */\n"
12563 "B<#include E<lt>sys/stat.hE<gt>>\n"
12565 "B<#include E<lt>fcntl.hE<gt> >/* AT_* 定数の定義 */\n"
12566 "B<#include E<lt>sys/stat.hE<gt>>\n"
12568 #. type: Plain text
12569 #: build/C/man2/mkdir.2:26
12571 msgid "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
12572 msgstr "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t >I<mode>B<);>\n"
12574 #. type: Plain text
12575 #: build/C/man2/mkdir.2:34
12576 msgid "B<mkdirat>():"
12577 msgstr "B<mkdirat>():"
12579 #. type: Plain text
12580 #: build/C/man2/mkdir.2:51
12581 msgid "B<mkdir>() attempts to create a directory named I<pathname>."
12582 msgstr "B<mkdir>() は I<pathname> で示される名前のディレクトリを作成しようとする。"
12584 #. type: Plain text
12585 #: build/C/man2/mkdir.2:61
12586 msgid "The argument I<mode> specifies the permissions to use. It is modified by the process's I<umask> in the usual way: the permissions of the created directory are (I<mode> & ~I<umask> & 0777). Other mode bits of the created directory depend on the operating system. For Linux, see below."
12587 msgstr "I<mode> 引き数は、作成されたディレクトリの許可属性を決定するのに使われる。 この値に、通常通りプロセスの I<umask> による修正が加えられる。 したがって、作成されたディレクトリの許可属性は (I<mode> & ~I<umask> & 0777) となる。 作成されたディレクトリのその他のモードビットはオペレーティングシステムに 依存する。Linux の場合は、以下の通りである。"
12589 #. type: Plain text
12590 #: build/C/man2/mkdir.2:71
12591 msgid "The newly created directory will be owned by the effective user ID of the process. If the directory containing the file has the set-group-ID bit set, or if the filesystem is mounted with BSD group semantics (I<mount -o bsdgroups> or, synonymously I<mount -o grpid>), the new directory will inherit the group ownership from its parent; otherwise it will be owned by the effective group ID of the process."
12592 msgstr "新しく作成されたディレクトリの所有者はプロセスの実効ユーザー ID に設定される。 新たに作成されたディレクトリが含まれる親ディレクトリに set group ID ビットがセットされていたり、ファイルシステムが BSD の グループセマンティクス (I<mount -o bsdgroups> あるいは、同じ意味の I<mount -o grpid>) に従ってマウントされている場合には、 新たに作成されたディレクトリのグループ所有権は親ディレクトリの ものが継承される (親ディレクトリと同じになる)。 それ以外の場合は、グループ所有権はプロセスの実効グループ ID となる。"
12594 #. type: Plain text
12595 #: build/C/man2/mkdir.2:76
12596 msgid "If the parent directory has the set-group-ID bit set, then so will the newly created directory."
12597 msgstr "もし親ディレクトリに set group ID ビットがセットされていれば新しく作成される ディレクトリにも set group ID ビットがセットされる。"
12600 #: build/C/man2/mkdir.2:76
12605 #. type: Plain text
12606 #: build/C/man2/mkdir.2:82
12607 msgid "The B<mkdirat>() system call operates in exactly the same way as B<mkdir>(), except for the differences described here."
12608 msgstr "B<mkdirat>() システムコールは B<mkdir>() と全く同様に動作するが、以下で説明する点が異なる。"
12610 #. type: Plain text
12611 #: build/C/man2/mkdir.2:92
12612 msgid "If the pathname given in I<pathname> is relative, then it is interpreted relative to the directory referred to by the file descriptor I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<mkdir>() for a relative pathname)."
12613 msgstr "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される (B<mkdir>() に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。"
12615 #. type: Plain text
12616 #: build/C/man2/mkdir.2:104
12617 msgid "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<mkdir>())."
12618 msgstr "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> の場合、 (B<mkdir>() と同様に) I<pathname> は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。"
12620 #. type: Plain text
12621 #: build/C/man2/mkdir.2:115
12622 msgid "See B<openat>(2) for an explanation of the need for B<mkdirat>()."
12623 msgstr "B<mkdirat>() の必要性についての説明については B<openat>(2) を参照。"
12625 #. type: Plain text
12626 #: build/C/man2/mkdir.2:122
12627 msgid "B<mkdir>() and B<mkdirat>() return zero on success, or -1 if an error occurred (in which case, I<errno> is set appropriately)."
12628 msgstr "B<mkdir>() と B<mkdirat>() は成功した場合 0 を、失敗した場合 -1 を返す (また、 I<errno> がエラーの内容にしたがって適切に設定される)。"
12630 #. type: Plain text
12631 #: build/C/man2/mkdir.2:131
12632 msgid "The parent directory does not allow write permission to the process, or one of the directories in I<pathname> did not allow search permission. (See also B<path_resolution>(7).)"
12633 msgstr "プロセスが親ディレクトリへの書き込み許可を持たない、もしくは I<pathname> 中のディレクトリのどれかに検索許可属性が無い (B<path_resolution>(7) も参照)。"
12636 #: build/C/man2/mkdir.2:131
12641 #. type: Plain text
12642 #: build/C/man2/mkdir.2:135
12643 msgid "The user's quota of disk blocks or inodes on the filesystem has been exhausted."
12644 msgstr "ディスクブロックか inode がそのファイルシステムのユーザークォータに達していた。"
12647 #: build/C/man2/mkdir.2:135
12652 #. type: Plain text
12653 #: build/C/man2/mkdir.2:142
12654 msgid "I<pathname> already exists (not necessarily as a directory). This includes the case where I<pathname> is a symbolic link, dangling or not."
12655 msgstr "I<pathname> が既に存在している(ただしそれがディレクトリであるとは限らない)。 I<pathname> がシンボリックリンクの場合も (その指定先が存在するかどうかに関らず)エラーになる。"
12658 #: build/C/man2/mkdir.2:149
12663 #. type: Plain text
12664 #: build/C/man2/mkdir.2:153
12665 msgid "The number of links to the parent directory would exceed B<LINK_MAX>."
12666 msgstr "親ディレクトリへのリンク数が B<LINK_MAX> を超えてしまう。"
12668 #. type: Plain text
12669 #: build/C/man2/mkdir.2:156
12670 msgid "I<pathname> was too long."
12671 msgstr "I<pathname> が長すぎる。"
12673 #. type: Plain text
12674 #: build/C/man2/mkdir.2:161
12675 msgid "A directory component in I<pathname> does not exist or is a dangling symbolic link."
12676 msgstr "I<pathname> の構成要素のディレクトリのいずれかが存在しないか、 またはリンク先が存在しないシンボリックリンクである。"
12679 #: build/C/man2/mkdir.2:164 build/C/man2/mkdir.2:169
12684 #. type: Plain text
12685 #: build/C/man2/mkdir.2:169
12686 msgid "The device containing I<pathname> has no room for the new directory."
12687 msgstr "I<pathname> を含むデバイスに新たにディレクトリを作成する空きが無い。"
12689 #. type: Plain text
12690 #: build/C/man2/mkdir.2:173
12691 msgid "The new directory cannot be created because the user's disk quota is exhausted."
12692 msgstr "もしくはユーザーのディスク quota が使い切られているため、 新たにディレクトリを作成することができない。"
12694 #. type: Plain text
12695 #: build/C/man2/mkdir.2:183
12696 msgid "The filesystem containing I<pathname> does not support the creation of directories."
12697 msgstr "I<pathname> を含むファイルシステムがディレクトリの作成をサポートしていない。"
12699 #. type: Plain text
12700 #: build/C/man2/mkdir.2:187
12701 msgid "I<pathname> refers to a file on a read-only filesystem."
12702 msgstr "I<pathname> が読み出し専用ファイルシステム上のファイルを指している。"
12704 #. type: Plain text
12705 #: build/C/man2/mkdir.2:190
12706 msgid "The following additional errors can occur for B<mkdirat>():"
12707 msgstr "B<mkdirat>() では以下のエラーも発生する。"
12709 #. type: Plain text
12710 #: build/C/man2/mkdir.2:204
12711 msgid "B<mkdirat>() was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4."
12712 msgstr "B<mkdirat>() はカーネル 2.6.16 で Linux に追加された。 ライブラリによるサポートはバージョン 2.4 で glibc に追加された。"
12714 #. SVr4 documents additional EIO, EMULTIHOP
12715 #. type: Plain text
12716 #: build/C/man2/mkdir.2:208
12717 msgid "B<mkdir>(): SVr4, BSD, POSIX.1-2001, POSIX.1-2008."
12718 msgstr "B<mkdir>(): SVr4, BSD, POSIX.1-2001, POSIX.1-2008."
12720 #. type: Plain text
12721 #: build/C/man2/mkdir.2:211
12722 msgid "B<mkdirat>(): POSIX.1-2008."
12723 msgstr "B<mkdirat>(): POSIX.1-2008."
12725 #. type: Plain text
12726 #: build/C/man2/mkdir.2:219
12727 msgid "Under Linux, apart from the permission bits, only the B<S_ISVTX> mode bit is honored. That is, under Linux the created directory actually gets mode (I<mode> & ~I<umask> & 01777). See also B<stat>(2)."
12728 msgstr "Linux では、許可ビット以外で意味を持つのは、 B<S_ISVTX> モードビットだけである。 つまり、Linux では作成されたディレクトリは実際には (I<mode> & ~I<umask> & 01777) のモードを持つことになる。 B<stat>(2) を参照のこと。"
12730 #. type: Plain text
12731 #: build/C/man2/mkdir.2:223
12732 msgid "There are many infelicities in the protocol underlying NFS. Some of these affect B<mkdir>()."
12733 msgstr "NFS を実現しているプロトコルには多くの不備が存在し、 それら中には B<mkdir>() に影響を与えるものもある。"
12735 #. type: Plain text
12736 #: build/C/man2/mkdir.2:236
12737 msgid "On older kernels where B<mkdirat>() is unavailable, the glibc wrapper function falls back to the use of B<mkdir>(). When I<pathname> is a relative pathname, glibc constructs a pathname based on the symbolic link in I</proc/self/fd> that corresponds to the I<dirfd> argument."
12738 msgstr "B<mkdirat>() が利用できない古いカーネルでは、 glibc ラッパー関数は B<mkdir>() を使用するモードにフォールバックする。 I<pathname> が相対パスの場合、 glibc は I<dirfd> 引き数に対応する I</proc/self/fd> のシンボリックリンクに基づいてパス名を構成する。"
12740 #. type: Plain text
12741 #: build/C/man2/mkdir.2:247
12742 msgid "B<mkdir>(1), B<chmod>(2), B<chown>(2), B<mknod>(2), B<mount>(2), B<rmdir>(2), B<stat>(2), B<umask>(2), B<unlink>(2), B<path_resolution>(7)"
12743 msgstr "B<mkdir>(1), B<chmod>(2), B<chown>(2), B<mknod>(2), B<mount>(2), B<rmdir>(2), B<stat>(2), B<umask>(2), B<unlink>(2), B<path_resolution>(7)"
12746 #: build/C/man2/nice.2:31
12752 #: build/C/man2/nice.2:31
12755 msgstr "2014-04-28"
12757 #. type: Plain text
12758 #: build/C/man2/nice.2:34
12759 msgid "nice - change process priority"
12760 msgstr "nice - プロセスの優先度を変更する"
12762 #. type: Plain text
12763 #: build/C/man2/nice.2:38
12764 msgid "B<int nice(int >I<inc>B<);>"
12765 msgstr "B<int nice(int >I<inc>B<);>"
12767 #. type: Plain text
12768 #: build/C/man2/nice.2:46
12769 msgid "B<nice>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
12770 msgstr "B<nice>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
12772 #. type: Plain text
12773 #: build/C/man2/nice.2:56
12774 msgid "B<nice>() adds I<inc> to the nice value for the calling process. (A higher nice value means a low priority.) Only the super\\%user may specify a negative increment, or priority increase. The range for nice values is described in B<getpriority>(2)."
12775 msgstr "B<nice>() は I<inc> の値を B<nice> を呼んだプロセスの nice 値に加える (nice 値が大きい数値ほど低い優先度を表す)。 負の数を指定する、つまり、以前よりも優先度を上げるという指定ができるのは スーパーユーザーだけである。 nice 値の範囲については B<getpriority>(2) で説明されている。"
12777 #. type: Plain text
12778 #: build/C/man2/nice.2:61
12779 msgid "On success, the new nice value is returned (but see NOTES below). On error, -1 is returned, and I<errno> is set appropriately."
12780 msgstr "成功した場合、新しい nice 値が返る (但し、下記の「注意」を参照)。 失敗した場合 -1 が返り、 I<errno> がエラーの内容に従って設定される。"
12782 #. type: Plain text
12783 #: build/C/man2/nice.2:75
12784 msgid "The calling process attempted to increase its priority by supplying a negative I<inc> but has insufficient privileges. Under Linux, the B<CAP_SYS_NICE> capability is required. (But see the discussion of the B<RLIMIT_NICE> resource limit in B<setrlimit>(2).)"
12785 msgstr "スーパーユーザー以外が I<inc> に負の数値を指定して優先度を上げようとした。 呼び出し元のプロセスが I<inc> に負の数値を指定して優先度を上げようとしたが、 十分な権限を持っていなかった。 Linux では B<CAP_SYS_NICE> ケーパビリティが必要である。 (B<setrlimit>(2) のリソース上限 B<RLIMIT_NICE> に関する議論も参照のこと)。"
12787 #. type: Plain text
12788 #: build/C/man2/nice.2:82
12789 msgid "SVr4, 4.3BSD, POSIX.1-2001. However, the Linux and (g)libc (earlier than glibc 2.2.4) return value is nonstandard, see below. SVr4 documents an additional B<EINVAL> error code."
12790 msgstr "SVr4, 4.3BSD, POSIX.1-2001. しかし、Linux と (2.2.4より古い) (g)libc では返り値は標準と異なる。 詳細は以下を参照のこと。 SVr4 には他に B<EINVAL> エラーコードについての記述がある。"
12792 #. type: Plain text
12793 #: build/C/man2/nice.2:92
12794 msgid "SUSv2 and POSIX.1-2001 specify that B<nice>() should return the new nice value. However, the Linux syscall and the B<nice>() library function provided in older versions of (g)libc (earlier than glibc 2.2.4) return 0 on success. The new nice value can be found using B<getpriority>(2)."
12795 msgstr "SUSv2 と POSIX 1003.1-2003 では、 B<nice>() は新しい nice 値を返すと規定されている。 一方、Linux システムコールと (2.2.4 より古い) (g)libc ライブラリ関数は 成功時に 0 を返す。新しい nice 値は B<getpriority>(2) を使って取得できる。"
12797 #. type: Plain text
12798 #: build/C/man2/nice.2:105
12799 msgid "Since glibc 2.2.4, B<nice>() is implemented as a library function that calls B<getpriority>(2) to obtain the new nice value to be returned to the caller. With this implementation, a successful call can legitimately return -1. To reliably detect an error, set I<errno> to 0 before the call, and check its value when B<nice>() returns -1."
12800 msgstr "glibc 2.2.4 以降では、 B<nice>() は B<getpriority>(2) を呼び出すライブラリ関数として実装されており、 呼び出し元に返す新しい nice 値を B<getpriority>(2) を呼び出して取得するようになっている。 この実装では、正常な動作でも -1 が返される可能性がある。 確実にエラーを検出するためには、 呼び出しの前に I<errno> に 0 を設定し、 B<nice>() が -1 を返したときに errno をチェックすると良い。"
12802 #. type: Plain text
12803 #: build/C/man2/nice.2:113
12804 msgid "B<nice>(1), B<renice>(1), B<fork>(2), B<getpriority>(2), B<setpriority>(2), B<capabilities>(7), B<sched>(7)"
12805 msgstr "B<nice>(1), B<renice>(1), B<fork>(2), B<getpriority>(2), B<setpriority>(2), B<capabilities>(7), B<sched>(7)"
12808 #: build/C/man2/pread.2:25
12813 #. type: Plain text
12814 #: build/C/man2/pread.2:28
12815 msgid "pread, pwrite - read from or write to a file descriptor at a given offset"
12816 msgstr "pread, pwrite - 指定したオフセットでファイルディスクリプターを読み書きする"
12818 #. type: Plain text
12819 #: build/C/man2/pread.2:33
12820 msgid "B<ssize_t pread(int >I<fd>B<, void *>I<buf>B<, size_t >I<count>B<, off_t >I<offset>B<);>"
12821 msgstr "B<ssize_t pread(int >I<fd>B<, void *>I<buf>B<, size_t >I<count>B<, off_t >I<offset>B<);>"
12823 #. type: Plain text
12824 #: build/C/man2/pread.2:36
12825 msgid "B<ssize_t pwrite(int >I<fd>B<, const void *>I<buf>B<, size_t >I<count>B<, off_t >I<offset>B<);>"
12826 msgstr "B<ssize_t pwrite(int >I<fd>B<, const void *>I<buf>B<, size_t >I<count>B<, off_t >I<offset>B<);>"
12828 #. type: Plain text
12829 #: build/C/man2/pread.2:46
12830 msgid "B<pread>(), B<pwrite>():"
12831 msgstr "B<pread>(), B<pwrite>():"
12833 #. type: Plain text
12834 #: build/C/man2/pread.2:48
12835 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 500"
12836 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 500"
12838 #. type: Plain text
12839 #: build/C/man2/pread.2:64
12840 msgid "B<pread>() reads up to I<count> bytes from file descriptor I<fd> at offset I<offset> (from the start of the file) into the buffer starting at I<buf>. The file offset is not changed."
12841 msgstr "B<pread>() は、ファイルディスクリプター I<fd> の (ファイルの先頭からの) オフセット I<offset> から最大 I<count> バイトをバッファー I<buf> へ読み込む。ファイルオフセットは変化しない。"
12843 #. type: Plain text
12844 #: build/C/man2/pread.2:75
12845 msgid "B<pwrite>() writes up to I<count> bytes from the buffer starting at I<buf> to the file descriptor I<fd> at offset I<offset>. The file offset is not changed."
12846 msgstr "B<pwrite>() は、バッファー I<buf> から最大 I<count> バイトをファイルディスクリプター I<fd> のオフセット I<offset> に書き込む。ファイルオフセットは変化しない。"
12848 #. type: Plain text
12849 #: build/C/man2/pread.2:79
12850 msgid "The file referenced by I<fd> must be capable of seeking."
12851 msgstr "I<fd> で参照されるファイルはシーク (seek) 可能でなければならない。"
12853 #. type: Plain text
12854 #: build/C/man2/pread.2:89
12855 msgid "On success, the number of bytes read or written is returned (zero indicates that nothing was written, in the case of B<pwrite>(), or end of file, in the case of B<pread>()), or -1 on error, in which case I<errno> is set to indicate the error."
12856 msgstr "成功した場合、読み書きを行ったバイト数が返される (ゼロは、 B<pwrite>() の場合には何も書かれなかったことを意味し、 B<pread>() の場合にはファイル の末尾に達したことを意味する)。 エラーの場合は -1 が返され、 I<errno> がそのエラーを示すように設定される。"
12858 #. type: Plain text
12859 #: build/C/man2/pread.2:104
12860 msgid "B<pread>() can fail and set I<errno> to any error specified for B<read>(2) or B<lseek>(2). B<pwrite>() can fail and set I<errno> to any error specified for B<write>(2) or B<lseek>(2)."
12861 msgstr "B<pread>() では、 B<read>(2) および B<lseek>(2) で規定された全てのエラーが発生する可能性があり、 I<errno> にはエラーを示す値が設定される。 B<pwrite>() では、 B<write>(2) および B<lseek>(2) で規定された全てのエラーが発生する可能性があり、 I<errno> にはエラーを示す値が設定される。"
12863 #. type: Plain text
12864 #: build/C/man2/pread.2:115
12865 msgid "The B<pread>() and B<pwrite>() system calls were added to Linux in version 2.1.60; the entries in the i386 system call table were added in 2.1.69. C library support (including emulation using B<lseek>(2) on older kernels without the system calls) was added in glibc 2.1."
12866 msgstr "システムコール B<pread>() と B<pwrite>() は Linux にバージョン 2.1.60 で追加された。 i386 のシステムコールのエントリは 2.1.69 で追加された。 (システムコールを持たない古いカーネルでの B<lseek>(2) を使ったエミュレーションを含めると) C ライブラリにおけるサポートは glibc 2.1 で追加された。"
12868 #. type: Plain text
12869 #: build/C/man2/pread.2:125
12870 msgid "The B<pread>() and B<pwrite>() system calls are especially useful in multithreaded applications. They allow multiple threads to perform I/O on the same file descriptor without being affected by changes to the file offset by other threads."
12871 msgstr "システムコール B<pread>() と B<pwrite>() は、特にマルチスレッドアプリケーションで役に立つ。 これらを使うと、 他のスレッドによるファイルオフセットの変更の影響を受けることなく、 複数のスレッドが同じファイルディスクリプターに対して入出力を行うことができる。"
12873 #. type: Plain text
12874 #: build/C/man2/pread.2:141
12875 msgid "On Linux, the underlying system calls were renamed in kernel 2.6: B<pread>() became B<pread64>(), and B<pwrite>() became B<pwrite64>(). The system call numbers remained the same. The glibc B<pread>() and B<pwrite>() wrapper functions transparently deal with the change."
12877 "Linux では、裏で呼び出されるシステムコールの名前がカーネル 2.6 で変更された。\n"
12878 "B<pread>() は B<pread64>() になり、 B<pwrite>() は B<pwrite64>() になった。\n"
12879 "システムコールの番号は変更されていない。\n"
12880 "glibc の B<pread>() と B<pwrite>() のラッパー関数はこれらの変更を吸収している。"
12882 #. type: Plain text
12883 #: build/C/man2/pread.2:146 build/C/man2/truncate.2:253
12884 msgid "On some 32-bit architectures, the calling signature for these system calls differ, for the reasons described in B<syscall>(2)."
12885 msgstr "いくつかの 32 ビットアーキテクチャでは、これらのシステムコールの呼び出し時のシグネチャーが違っています。理由は B<syscall>(2) で説明されている通りです。"
12887 #. FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=43178
12888 #. type: Plain text
12889 #: build/C/man2/pread.2:158
12890 msgid "POSIX requires that opening a file with the B<O_APPEND> flag should have no effect on the location at which B<pwrite>() writes data. However, on Linux, if a file is opened with B<O_APPEND>, B<pwrite>() appends data to the end of the file, regardless of the value of I<offset>."
12892 "POSIX では、B<O_APPEND> フラグを指定してファイルをオープンした場合、\n"
12893 "B<pwrite>() がデータを書き込む位置に影響を及ぼさないことが\n"
12894 "求められている。しかし、 Linux では、ファイルを B<O_APPEND> 付きで\n"
12895 "オープンした場合、 I<offset> の値に関わらず、\n"
12896 "B<pwrite>() はファイルの末尾にデータを追記する。"
12898 #. type: Plain text
12899 #: build/C/man2/pread.2:163
12900 msgid "B<lseek>(2), B<read>(2), B<readv>(2), B<write>(2)"
12901 msgstr "B<lseek>(2), B<read>(2), B<readv>(2), B<write>(2)"
12904 #: build/C/man2/set_thread_area.2:8
12906 msgid "SET_THREAD_AREA"
12907 msgstr "SET_THREAD_AREA"
12909 #. type: Plain text
12910 #: build/C/man2/set_thread_area.2:11
12911 msgid "set_thread_area - set a thread local storage (TLS) area"
12912 msgstr "set_thread_area - スレッド局所記憶 (TLS) 領域を設定する"
12914 #. type: Plain text
12915 #: build/C/man2/set_thread_area.2:17
12916 msgid "B<int set_thread_area(struct user_desc *>I<u_info>B<);>"
12917 msgstr "B<int set_thread_area(struct user_desc *>I<u_info>B<);>"
12919 #. type: Plain text
12920 #: build/C/man2/set_thread_area.2:33
12921 msgid "B<set_thread_area>() sets an entry in the current thread's thread-local storage (TLS) array. The TLS array entry set by B<set_thread_area>() corresponds to the value of I<u_info-E<gt>entry_number> passed in by the user. If this value is in bounds, B<set_thread_area>() copies the TLS descriptor pointed to by I<u_info> into the thread's TLS array."
12922 msgstr "B<set_thread_area>() は、カレントスレッドのスレッド局所記憶 (thread-local storage; TLS) 配列の中のエントリを設定する。 B<set_thread_area>() により設定される TLS 配列のエントリは、ユーザーから引き数として渡される I<u_info-E<gt>entry_number> の値に対応している。値が範囲内にある場合、 B<set_thread_area>() は I<u_info> で指された TLS ディスクリプターをスレッドの TLS 配列にコピーする。"
12924 #. type: Plain text
12925 #: build/C/man2/set_thread_area.2:44
12926 msgid "When B<set_thread_area>() is passed an I<entry_number> of -1, it uses a free TLS entry. If B<set_thread_area>() finds a free TLS entry, the value of I<u_info-E<gt>entry_number> is set upon return to show which entry was changed."
12927 msgstr "I<entry_number> として -1 が渡された場合、 B<set_thread_area>() は未使用 (free) の TLS エントリを使用する。 未使用の TLS エントリがあった場合、どのエントリが変更されたかが分かる ように終了時に I<u_info-E<gt>entry_number> の値が変更される。"
12929 #. type: Plain text
12930 #: build/C/man2/set_thread_area.2:49
12931 msgid "B<set_thread_area>() returns 0 on success, and -1 on failure, with I<errno> set appropriately."
12932 msgstr "B<set_thread_area>() は成功した場合 0 を返す。失敗した場合は -1 を返し、 I<errno> を適切に設定する。"
12935 #: build/C/man2/set_thread_area.2:56
12940 #. type: Plain text
12941 #: build/C/man2/set_thread_area.2:59
12942 msgid "A free TLS entry could not be located."
12943 msgstr "未使用の TLS エントリが見つからなかった。"
12945 #. type: Plain text
12946 #: build/C/man2/set_thread_area.2:63
12947 msgid "A version of B<set_thread_area>() first appeared in Linux 2.5.29."
12948 msgstr "B<set_thread_area>() は Linux 2.5.29 で初めて登場した。"
12950 #. type: Plain text
12951 #: build/C/man2/set_thread_area.2:67
12952 msgid "B<set_thread_area>() is Linux-specific and should not be used in programs that are intended to be portable."
12953 msgstr "B<set_thread_area>() は Linux 独自であり、移植を意図したプログラムでは使用すべきではない。"
12955 #. type: Plain text
12956 #: build/C/man2/set_thread_area.2:72
12957 msgid "Glibc does not provide a wrapper for this system call, since it is generally intended only for use by threading libraries. In the unlikely event that you want to call it directly, use B<syscall>(2)."
12958 msgstr "このシステムコールは通常はスレッドライブラリでのみ使用されることを目的として用意されているため、 glibc はこのシステムコールに対するラッパー関数を提供していない。おそらくないと思うが、このシステムコールを直接呼び出したい場合は B<syscall>(2) を使うこと。"
12960 #. type: Plain text
12961 #: build/C/man2/set_thread_area.2:74
12962 msgid "B<get_thread_area>(2)"
12963 msgstr "B<get_thread_area>(2)"
12966 #: build/C/man2/setup.2:34
12972 #: build/C/man2/setup.2:34
12975 msgstr "2008-12-03"
12977 #. type: Plain text
12978 #: build/C/man2/setup.2:37
12979 msgid "setup - setup devices and filesystems, mount root filesystem"
12980 msgstr "setup - デバイスとファイルシステムの初期化を行い、 ルートファイルシステムのマウントを行う"
12982 #. type: Plain text
12983 #: build/C/man2/setup.2:41
12984 msgid "B<int setup(void);>"
12985 msgstr "B<int setup(void);>"
12987 #. type: Plain text
12988 #: build/C/man2/setup.2:47
12989 msgid "B<setup>() is called once from within I<linux/init/main.c>. It calls initialization functions for devices and filesystems configured into the kernel and then mounts the root filesystem."
12990 msgstr "B<setup>() は I<linux/init/main.c> の中で一度だけ呼ばれる。 カーネル内部のデバイスとファイルシステムの初期化関数を呼び、 ルートファイルシステムのマウントを行う。"
12992 #. type: Plain text
12993 #: build/C/man2/setup.2:53
12994 msgid "No user process may call B<setup>(). Any user process, even a process with superuser permission, will receive B<EPERM>."
12995 msgstr "ユーザープロセスからは B<setup>() を呼びだすことはできない。 ユーザープロセスからのアクセスは、たとえそのプロセスが スーパーユーザー権限を持っていても B<EPERM> を受け取ることになる。"
12997 #. type: Plain text
12998 #: build/C/man2/setup.2:56
12999 msgid "B<setup>() always returns -1 for a user process."
13000 msgstr "B<setup>() はユーザープロセスに対して常に -1 を返す。"
13002 #. type: Plain text
13003 #: build/C/man2/setup.2:62
13004 msgid "Since Linux 2.1.121, no such function exists anymore."
13005 msgstr "Linux 2.1.121 以降では、もはやこの関数は存在しない。"
13007 #. type: Plain text
13008 #: build/C/man2/setup.2:65
13009 msgid "This function is Linux-specific, and should not be used in programs intended to be portable, or indeed in any programs at all."
13010 msgstr "この関数は Linux に特有のものであり、移植を考慮したプログラムでは 用いるべきではない。それどころか、あらゆるプログラムで用いるべきではない。"
13012 #. type: Plain text
13013 #: build/C/man2/setup.2:72
13014 msgid "The calling sequence varied: at some times B<setup>() has had a single argument I<void\\ *BIOS> and at other times a single argument I<int magic>."
13015 msgstr "呼び出し手続きは変化してきた。 ある時は B<setup>() は一つの引数 I<void\\ *BIOS> を取っており、またある時には I<int magic> を一つの引数として取っていた。"
13018 #: build/C/man5/shells.5:28
13023 #. type: Plain text
13024 #: build/C/man5/shells.5:31
13025 msgid "shells - pathnames of valid login shells"
13026 msgstr "shells - ログインシェルとして有効なファイルのパス名"
13028 #. type: Plain text
13029 #: build/C/man5/shells.5:37
13030 msgid "I</etc/shells> is a text file which contains the full pathnames of valid login shells. This file is consulted by B<chsh>(1) and available to be queried by other programs."
13031 msgstr "I</etc/shells> はログインシェルとして有効なファイルのフルパスが書かれた テキストファイルである。 B<chsh>(1) はこのファイルを参照する。 他のプログラムもこのファイルを参照できる。"
13033 #. type: Plain text
13034 #: build/C/man5/shells.5:43
13035 msgid "Be aware that there are programs which consult this file to find out if a user is a normal user; for example, FTP daemons traditionally disallow access to users with shells not included in this file."
13036 msgstr "注意して欲しいのだが、プログラムによっては、 ユーザーが通常のユーザーかどうかを判断する際に、このファイルの内容を参考にすることがある。例えば FTP デーモンは、ログインシェルがこのファイルに書かれていないユーザーからのアクセスを許さないのが以前から一般的である。"
13038 #. type: Plain text
13039 #: build/C/man5/shells.5:45
13040 msgid "I</etc/shells>"
13041 msgstr "I</etc/shells>"
13043 #. type: Plain text
13044 #: build/C/man5/shells.5:48
13045 msgid "I</etc/shells> may contain the following paths:"
13046 msgstr "I</etc/shells> には以下のようなパスが含まれているだろう。"
13048 #. type: Plain text
13049 #: build/C/man5/shells.5:51
13051 msgstr "I</bin/sh>"
13053 #. type: Plain text
13054 #: build/C/man5/shells.5:53
13055 msgid "I</bin/bash>"
13056 msgstr "I</bin/bash>"
13058 #. type: Plain text
13059 #: build/C/man5/shells.5:55
13060 msgid "I</bin/csh>"
13061 msgstr "I</bin/csh>"
13063 #. type: Plain text
13064 #: build/C/man5/shells.5:59
13065 msgid "B<chsh>(1), B<getusershell>(3)"
13066 msgstr "B<chsh>(1), B<getusershell>(3)"
13069 #: build/C/man3/sleep.3:26
13075 #: build/C/man3/sleep.3:26
13078 msgstr "2010-02-03"
13080 #. type: Plain text
13081 #: build/C/man3/sleep.3:29
13082 msgid "sleep - sleep for the specified number of seconds"
13083 msgstr "sleep - 指定の秒数の間だけ休止する"
13085 #. type: Plain text
13086 #: build/C/man3/sleep.3:34
13088 msgid "B<unsigned int sleep(unsigned int >I<seconds>B<);>\n"
13089 msgstr "B<unsigned int sleep(unsigned int >I<seconds>B<);>\n"
13091 #. type: Plain text
13092 #: build/C/man3/sleep.3:40
13093 msgid "B<sleep>() makes the calling thread sleep until I<seconds> seconds have elapsed or a signal arrives which is not ignored."
13094 msgstr "B<sleep>() は、呼び出したスレッドを I<seconds> 秒間または無視されないシグナルが到着するまで休止する。"
13096 #. type: Plain text
13097 #: build/C/man3/sleep.3:44
13098 msgid "Zero if the requested time has elapsed, or the number of seconds left to sleep, if the call was interrupted by a signal handler."
13099 msgstr "要求された時間が過ぎた場合はゼロを返す。 呼び出しがシグナルハンドラーに割り込まれた場合は、 休止の残り時間を返す。"
13101 #. type: Plain text
13102 #: build/C/man3/sleep.3:55
13103 msgid "B<sleep>() may be implemented using B<SIGALRM>; mixing calls to B<alarm>(2) and B<sleep>() is a bad idea."
13104 msgstr "B<sleep>() は B<SIGALRM> を用いて実装されている。そのため、 B<alarm>(2) と B<sleep>() を混ぜて使用するのは、まずい考えである。"
13106 #. type: Plain text
13107 #: build/C/man3/sleep.3:61
13108 msgid "Using B<longjmp>(3) from a signal handler or modifying the handling of B<SIGALRM> while sleeping will cause undefined results."
13109 msgstr "休止中にシグナルハンドラーから B<longjmp>(3) を使用することや B<SIGALRM> のハンドリングを変更することは、定義されていない結果を生む。"
13111 #. type: Plain text
13112 #: build/C/man3/sleep.3:66
13113 msgid "B<alarm>(2), B<nanosleep>(2), B<signal>(2), B<signal>(7)"
13114 msgstr "B<alarm>(2), B<nanosleep>(2), B<signal>(2), B<signal>(7)"
13117 #: build/C/man3/swab.3:31
13123 #: build/C/man3/swab.3:31
13126 msgstr "2014-02-25"
13128 #. type: Plain text
13129 #: build/C/man3/swab.3:34
13130 msgid "swab - swap adjacent bytes"
13131 msgstr "swab - 隣接するバイトを交換する"
13133 #. type: Plain text
13134 #: build/C/man3/swab.3:38
13137 "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */\n"
13138 "B<#include E<lt>unistd.hE<gt>>\n"
13140 "B<#define _XOPEN_SOURCE> /* feature_test_macros(7) 参照 */\n"
13141 "B<#include E<lt>unistd.hE<gt>>\n"
13143 #. type: Plain text
13144 #: build/C/man3/swab.3:40
13146 msgid "B<void swab(const void *>I<from>B<, void *>I<to>B<, ssize_t >I<n>B<);>\n"
13147 msgstr "B<void swab(const void *>I<from>B<, void *>I<to>B<, ssize_t >I<n>B<);>\n"
13149 #. type: Plain text
13150 #: build/C/man3/swab.3:55
13151 msgid "The B<swab>() function copies I<n> bytes from the array pointed to by I<from> to the array pointed to by I<to>, exchanging adjacent even and odd bytes. This function is used to exchange data between machines that have different low/high byte ordering."
13152 msgstr "B<swab>() 関数は、I<from> で指された配列から I<n> バイトを I<to> で指された配列に、隣接した偶数/奇数バイトを交換しながらコピーする。 この関数は異なるバイトオーダーを持つマシン間でのデータ交換に 使用される。"
13154 #. type: Plain text
13155 #: build/C/man3/swab.3:68
13156 msgid "This function does nothing when I<n> is negative. When I<n> is positive and odd, it handles I<n-1> bytes as above, and does something unspecified with the last byte. (In other words, I<n> should be even.)"
13157 msgstr "I<n> が負の数の場合、この関数は何もしない。 I<n> が正でかつ奇数の場合、I<n-1> バイトは上記の通り扱い、 最後のバイトについては未規定の動作をする (言い換えれば、I<n> は偶数にするべきである)。"
13159 #. type: Plain text
13160 #: build/C/man3/swab.3:72
13161 msgid "The B<swab>() function returns no value."
13162 msgstr "B<swab>() 関数は、値を返さない。"
13164 #. type: Plain text
13165 #: build/C/man3/swab.3:77
13166 msgid "The B<swab>() function is thread-safe."
13167 msgstr "B<swab>() 関数はスレッドセーフである。"
13169 #. type: Plain text
13170 #: build/C/man3/swab.3:81
13171 msgid "B<bstring>(3)"
13172 msgstr "B<bstring>(3)"
13175 #: build/C/man2/swapon.2:42
13180 #. type: Plain text
13181 #: build/C/man2/swapon.2:45
13182 msgid "swapon, swapoff - start/stop swapping to file/device"
13183 msgstr "swapon, swapoff - ファイル/デバイスへのスワップを開始/停止する"
13185 #. type: Plain text
13186 #: build/C/man2/swapon.2:49
13187 msgid "B<#include E<lt>sys/swap.hE<gt>>"
13188 msgstr "B<#include E<lt>sys/swap.hE<gt>>"
13190 #. type: Plain text
13191 #: build/C/man2/swapon.2:51
13192 msgid "B<int swapon(const char *>I<path>B<, int >I<swapflags>B<);>"
13193 msgstr "B<int swapon(const char *>I<path>B<, int >I<swapflags>B<);>"
13195 #. type: Plain text
13196 #: build/C/man2/swapon.2:53
13197 msgid "B<int swapoff(const char *>I<path>B<);>"
13198 msgstr "B<int swapoff(const char *>I<path>B<);>"
13200 #. type: Plain text
13201 #: build/C/man2/swapon.2:60
13202 msgid "B<swapon>() sets the swap area to the file or block device specified by I<path>. B<swapoff>() stops swapping to the file or block device specified by I<path>."
13203 msgstr "B<swapon>() は I<path> で指定されたファイルやブロックデバイスにスワップ領域を設定する。 B<swapoff>() は I<path> で指定されたファイルやブロックデバイスへのスワップを停止する。"
13205 #. type: Plain text
13206 #: build/C/man2/swapon.2:70
13207 msgid "If the B<SWAP_FLAG_PREFER> flag is specified in the B<swapon>() I<swapflags> argument, the new swap area will have a higher priority than default. The priority is encoded within I<swapflags> as:"
13209 "B<swapon>() の I<swapflags> 引き数に B<SWAP_FLAG_PREFER> フラグが指定された場合、\n"
13210 "新しいスワップ領域はデフォルトよりも高い優先度を持つ。\n"
13211 "優先度は以下のように変換されて I<swapflags> に指定する。"
13213 #. type: Plain text
13214 #: build/C/man2/swapon.2:73
13215 msgid "I<(prio E<lt>E<lt> SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK>"
13216 msgstr "I<(prio E<lt>E<lt> SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK>"
13218 #. type: Plain text
13219 #: build/C/man2/swapon.2:85
13220 msgid "If the B<SWAP_FLAG_DISCARD> flag is specified in the B<swapon>() I<swapflags> argument, freed swap pages will be discarded before they are reused, if the swap device supports the discard or trim operation. (This may improve performance on some Solid State Devices, but often it does not.) See also NOTES."
13222 "B<SWAP_FLAG_DISCARD> フラグが B<swapon>() の I<swapflags> 引き数に指定された場合、\n"
13223 "スワップデバイスが破棄 (discard) 操作や trim 操作をサポートしている場合には、\n"
13224 "解放されたスワップページは再利用される前に破棄される\n"
13225 "(これにより、SSD (Solid State Device) によっては性能が向上することがあるが、\n"
13226 "たいていは性能の向上はない)。\n"
13229 #. type: Plain text
13230 #: build/C/man2/swapon.2:89
13231 msgid "These functions may be used only by a privileged process (one having the B<CAP_SYS_ADMIN> capability)."
13232 msgstr "これらの関数は特権プロセス (B<CAP_SYS_ADMIN> ケーパビリティ (capability) を持つプロセス) のみが使用できる。"
13235 #: build/C/man2/swapon.2:89
13240 #. type: Plain text
13241 #: build/C/man2/swapon.2:94
13242 msgid "Each swap area has a priority, either high or low. The default priority is low. Within the low-priority areas, newer areas are even lower priority than older areas."
13243 msgstr "それぞれのスワップ領域は高 (high) と低 (low) のどちらかの優先度を持つ。 デフォルトの優先度は低である。 低い優先度の領域において、新しい領域は古い領域よりさらに低い 優先度を持つ。"
13245 #. type: Plain text
13246 #: build/C/man2/swapon.2:100
13247 msgid "All priorities set with I<swapflags> are high-priority, higher than default. They may have any nonnegative value chosen by the caller. Higher numbers mean higher priority."
13248 msgstr "I<swapflags> が設定されたものは全て高い優先度となり、デフォルトよりも高い優先度を持つ。 使用者はそれらに負でない値が指定できる。 大きな数字は高い優先度を意味する。"
13250 #. type: Plain text
13251 #: build/C/man2/swapon.2:108
13252 msgid "Swap pages are allocated from areas in priority order, highest priority first. For areas with different priorities, a higher-priority area is exhausted before using a lower-priority area. If two or more areas have the same priority, and it is the highest priority available, pages are allocated on a round-robin basis between them."
13253 msgstr "高い優先度の領域から順にスワップページとして使用される。 より低い優先度の領域を使用する前により高い優先度の 領域を使い切る。もし二つ以上の領域が同じ優先度を持ち、 使える中で一番高い優先度であれば、それらのページは間で ラウンドロビン方式で配分される。"
13255 #. type: Plain text
13256 #: build/C/man2/swapon.2:111
13257 msgid "As of Linux 1.3.6, the kernel usually follows these rules, but there are exceptions."
13258 msgstr "Linux 1.3.6 において、カーネルは通常はこれらの規則に従っている。 しかし例外も存在している。"
13260 #. type: Plain text
13261 #: build/C/man2/swapon.2:124
13262 msgid "(for B<swapon>()) The specified I<path> is already being used as a swap area."
13263 msgstr "(B<swapon>() において) 指定された I<path> が既にスワップ領域として使用されている。"
13265 #. type: Plain text
13266 #: build/C/man2/swapon.2:129
13267 msgid "The file I<path> exists, but refers neither to a regular file nor to a block device;"
13268 msgstr "ファイル I<path> は存在するが、通常のファイルもブロックデバイスも参照していない。"
13270 #. type: Plain text
13271 #: build/C/man2/swapon.2:134
13272 msgid "(B<swapon>()) The indicated path does not contain a valid swap signature or resides on an in-memory filesystem such as tmpfs."
13273 msgstr "(B<swapon>()) 指定されたパスが有効なスワップの署名 (signature) を含んでいないか、tmpfs のようなインメモリファイルシステム上にある。"
13276 #: build/C/man2/swapon.2:134
13278 msgid "B<EINVAL> (since Linux 3.4)"
13279 msgstr "B<EINVAL> (Linux 3.4 以降)"
13281 #. type: Plain text
13282 #: build/C/man2/swapon.2:139
13283 msgid "(B<swapon>()) An invalid flag value was specified in I<flags>."
13284 msgstr "(B<swapon>()) I<flags> に無効なフラグ値が指定された。"
13286 #. type: Plain text
13287 #: build/C/man2/swapon.2:144
13288 msgid "(B<swapoff>()) I<path> is not currently a swap area."
13289 msgstr "(B<swapoff>()) I<path> が現在スワップ領域ではない。"
13291 #. type: Plain text
13292 #: build/C/man2/swapon.2:152
13293 msgid "The file I<path> does not exist."
13294 msgstr "ファイル I<path> が存在しない。"
13296 #. type: Plain text
13297 #: build/C/man2/swapon.2:155
13298 msgid "The system has insufficient memory to start swapping."
13299 msgstr "スワップを開始するのに十分なメモリーがシステムにない。"
13301 #. type: Plain text
13302 #: build/C/man2/swapon.2:162
13303 msgid "The caller does not have the B<CAP_SYS_ADMIN> capability. Alternatively, the maximum number of swap files are already in use; see NOTES below."
13304 msgstr "使用者が B<CAP_SYS_ADMIN> ケーパビリティを持っていない。 もしくは、最大数のスワップファイルがすでに使用されている (下記の「注意」の節を参照)。"
13306 #. type: Plain text
13307 #: build/C/man2/swapon.2:168
13308 msgid "These functions are Linux-specific and should not be used in programs intended to be portable. The second I<swapflags> argument was introduced in Linux 1.3.2."
13309 msgstr "これらの関数は Linux 特有であり、移植を意図したプログラムでは 使用してはいけない。 二番目の I<swapflags> 引き数は Linux 1.3.2 から導入された。"
13311 #. type: Plain text
13312 #: build/C/man2/swapon.2:171
13313 msgid "The partition or path must be prepared with B<mkswap>(8)."
13314 msgstr "パーティションやパスは B<mkswap>(8) によって準備されていなければならない。"
13316 #. type: Plain text
13317 #: build/C/man2/swapon.2:191
13318 msgid "There is an upper limit on the number of swap files that may be used, defined by the kernel constant B<MAX_SWAPFILES>. Before kernel 2.4.10, B<MAX_SWAPFILES> has the value 8; since kernel 2.4.10, it has the value 32. Since kernel 2.6.18, the limit is decreased by 2 (thus: 30) if the kernel is built with the B<CONFIG_MIGRATION> option (which reserves two swap table entries for the page migration features of B<mbind>(2) and B<migrate_pages>(2)). Since kernel 2.6.32, the limit is further decreased by 1 if the kernel is built with the B<CONFIG_MEMORY_FAILURE> option."
13319 msgstr "使用できるスワップファイルの数には上限があり、その上限は カーネル定数 B<MAX_SWAPFILES> で定義される。 B<MAX_SWAPFILES> の値は、カーネル 2.4.10 より前では 8、 カーネル 2.4.10 以降では 32 である。 カーネル 2.6.18 以降では、カーネルが B<CONFIG_MIGRATION> オプションを有効にして作成された場合、 この上限が 2 少ない値 (つまり 30) となる (このカーネルでは、 B<mbind>(2) と B<migrate_pages>(2) のページマイグレーション機能用にスワップテーブルのエントリーが 二つ予約される)。 カーネル 2.6.32 以降では、カーネルが B<CONFIG_MEMORY_FAILURE> オプションを有効にして作成された場合、 この上限がさらに 1 少ない値となる。"
13321 #. To be precise: 2.6.35.5
13322 #. type: Plain text
13323 #: build/C/man2/swapon.2:202
13324 msgid "Discard of swap pages was introduced in kernel 2.6.29, then made conditional on the B<SWAP_FLAG_DISCARD> flag in kernel 2.6.36, which still discards the entire swap area when B<swapon>() is called, even if that flag bit is not set."
13326 "スワップページの破棄は、カーネル 2.6.29 で導入され、その後カーネル 2.6.36 で\n"
13327 "B<SWAP_FLAG_DISCARD> フラグが指定された場合にだけ実行されるようになったが、\n"
13328 "今でも、このフラグビットが指定されていない場合であっても、\n"
13329 "B<swapon> が呼び出された際にスワップ領域全体の破棄が行われる。"
13331 #. type: Plain text
13332 #: build/C/man2/swapon.2:206
13333 msgid "B<mkswap>(8), B<swapoff>(8), B<swapon>(8)"
13334 msgstr "B<mkswap>(8), B<swapoff>(8), B<swapon>(8)"
13337 #: build/C/man2/syscall.2:42
13342 #. type: Plain text
13343 #: build/C/man2/syscall.2:45
13344 msgid "syscall - indirect system call"
13345 msgstr "syscall - 間接システムコール"
13347 #. type: Plain text
13348 #: build/C/man2/syscall.2:50
13351 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
13352 "B<#include E<lt>unistd.hE<gt>>\n"
13353 "B<#include E<lt>sys/syscall.hE<gt> >/* For SYS_xxx definitions */\n"
13355 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
13356 "B<#include E<lt>unistd.hE<gt>>\n"
13357 "B<#include E<lt>sys/syscall.hE<gt> >/* SYS_xxx の定義用 */\n"
13359 #. type: Plain text
13360 #: build/C/man2/syscall.2:52
13362 msgid "B<long syscall(long >I<number>B<, ...);>\n"
13363 msgstr "B<long syscall(long >I<number>B<, ...);>\n"
13365 #. type: Plain text
13366 #: build/C/man2/syscall.2:64
13367 msgid "B<syscall>() is a small library function that invokes the system call whose assembly language interface has the specified I<number> with the specified arguments. Employing B<syscall>() is useful, for example, when invoking a system call that has no wrapper function in the C library."
13368 msgstr "B<syscall>() は、システムコールを起動する小さなライブラリ関数で、 I<number> で指定されたアセンブリ言語インターフェースのシステムコールを、指定された引き数をつけて実行する。 B<syscall>() が役に立つのは、例えば C ライブラリにラッパー関数が存在しないシステムコールを呼び出したい場合である。"
13370 #. type: Plain text
13371 #: build/C/man2/syscall.2:71
13372 msgid "B<syscall>() saves CPU registers before making the system call, restores the registers upon return from the system call, and stores any error code returned by the system call in B<errno>(3) if an error occurs."
13373 msgstr "B<syscall>() は、システムコールを行う前に CPU レジスタを保存し、システムコールから返った際にレジスタを復元し、エラーが発生した場合はシステムコールが返したエラーコードを B<errno>(3) に格納する。"
13375 #. type: Plain text
13376 #: build/C/man2/syscall.2:74
13377 msgid "Symbolic constants for system call numbers can be found in the header file I<E<lt>sys/syscall.hE<gt>>."
13378 msgstr "システムコールのシンボル定数は、ヘッダファイル I<E<lt>sys/syscall.hE<gt>> に書かれている。"
13380 #. type: Plain text
13381 #: build/C/man2/syscall.2:80
13382 msgid "The return value is defined by the system call being invoked. In general, a 0 return value indicates success. A -1 return value indicates an error, and an error code is stored in I<errno>."
13383 msgstr "返り値は呼び出されたシステムコールによって定義される。 一般に、返り値 0 は成功を表す。 -1 はエラーを表し、エラーコードは I<errno> に入れられる。"
13385 #. type: Plain text
13386 #: build/C/man2/syscall.2:84
13387 msgid "B<syscall>() first appeared in 4BSD."
13388 msgstr "B<syscall>() は 4BSD で最初に登場した。"
13391 #: build/C/man2/syscall.2:84
13393 msgid "Architecture-specific requirements"
13394 msgstr "アーキテクチャ固有の要件"
13396 #. type: Plain text
13397 #: build/C/man2/syscall.2:95
13398 msgid "Each architecture ABI has its own requirements on how system call arguments are passed to the kernel. For system calls that have a glibc wrapper (e.g., most system calls), glibc handles the details of copying arguments to the right registers in a manner suitable for the architecture. However, when using B<syscall>() to make a system call, the caller might need to handle architecture-dependent details; this requirement is most commonly encountered on certain 32-bit architectures."
13400 "各アーキテクチャの ABI には、 システムコールの引き数のカーネルへの渡し方に関する独自の要件がある。\n"
13401 "(ほとんどのシステムコールのように) glibc ラッパー関数があるシステムコールでは、 glibc が詳細を処理し、アーキテクチャに応じた方法で引き数が適切なレジスタにコピーされる。 しかし、 システムコールを呼び出すのに B<syscall>() を使う場合には、 呼び出し側でアーキテクチャ依存の詳細を処理しなければならない場合がある。 これはいくつかの 32 ビットアーキテクチャでは非常によくあることだ。"
13403 #. type: Plain text
13404 #: build/C/man2/syscall.2:106
13405 msgid "For example, on the ARM architecture Embedded ABI (EABI), a 64-bit value (e.g., I<long long>) must be aligned to an even register pair. Thus, using B<syscall>() instead of the wrapper provided by glibc, the B<readahead>() system call would be invoked as follows on the ARM architecture with the EABI:"
13406 msgstr "例えば、ARM アーキテクチャの Embedded ABI (EABI) では、 (I<long long> などの) 64 ビット値は偶数番地のレジスタのペアに境界があっていなければならない。したがって、 glibc が提供するラッパー関数ではなく B<syscall>() を使う場合には、 B<readahead>() システムコールは ARM アーキテクチャの EABI では以下のようにして起動されることになる。"
13408 #. type: Plain text
13409 #: build/C/man2/syscall.2:113
13412 "syscall(SYS_readahead, fd, 0,\n"
13413 " (unsigned int) (offset E<gt>E<gt> 32),\n"
13414 " (unsigned int) (offset & 0xFFFFFFFF),\n"
13417 "syscall(SYS_readahead, fd, 0,\n"
13418 " (unsigned int) (offset E<gt>E<gt> 32),\n"
13419 " (unsigned int) (offset & 0xFFFFFFFF),\n"
13422 #. type: Plain text
13423 #: build/C/man2/syscall.2:127
13424 msgid "Since the offset argument is 64 bits, and the first argument (I<fd>) is passed in I<r0>, the caller must manually split and align the 64-bit value so that it is passed in the I<r2>/I<r3> register pair. That means inserting a dummy value into I<r1> (the second argument of 0)."
13425 msgstr "オフセット引き数は 64 ビットで、最初の引き数 (I<fd>) は I<r0> で渡されるので、呼び出し側では手動で 64 ビット値を分割して境界を合わせて、 64 ビット値が I<r2>/I<r3> レジスタペアで渡されるようにしなければならない。このため、 I<r1> (2 番目の引数 0) としてダミー値を挿入している。"
13427 #. Mike Frysinger: this issue ends up forcing MIPS
13428 #. O32 to take 7 arguments to syscall()
13429 #. type: Plain text
13430 #: build/C/man2/syscall.2:132
13431 msgid "Similar issues can occur on MIPS with the O32 ABI, on PowerPC with the 32-bit ABI, and on Xtensa."
13432 msgstr "同様のことが、 MIPS の O32 ABI、 PowerPC の 32 ビット ABI や Xtensa でも起こりうる。"
13434 #. type: Plain text
13435 #: build/C/man2/syscall.2:143
13436 msgid "The affected system calls are B<fadvise64_64>(2), B<ftruncate64>(2), B<posix_fadvise>(2), B<pread64>(2), B<pwrite64>(2), B<readahead>(2), B<sync_file_range>(2), and B<truncate64>(2)."
13437 msgstr "次のシステムコールに影響がある: B<fadvise64_64>(2), B<ftruncate64>(2), B<posix_fadvise>(2), B<pread64>(2), B<pwrite64>(2), B<readahead>(2), B<sync_file_range>(2), B<truncate64>(2)"
13440 #: build/C/man2/syscall.2:143
13442 msgid "Architecture calling conventions"
13443 msgstr "アーキテクチャ毎の呼び出し規約"
13445 #. type: Plain text
13446 #: build/C/man2/syscall.2:147
13447 msgid "Every architecture has its own way of invoking and passing arguments to the kernel. The details for various architectures are listed in the two tables below."
13448 msgstr "各アーキテクチャには、それぞれ独自のシステムコール起動方法とカーネルへの引き数の渡し方がある。 各種のアーキテクチャの詳細を以下の 2 つの表にまとめる。"
13450 #. type: Plain text
13451 #: build/C/man2/syscall.2:154
13452 msgid "The first table lists the instruction used to transition to kernel mode, (which might not be the fastest or best way to transition to the kernel, so you might have to refer to B<vdso>(7)), the register used to indicate the system call number, and the register used to return the system call result."
13453 msgstr "最初の表は、 カーネルモードに遷移するのに使用される命令、 システムコール番号を示すのに使用されるレジスタ、 システムコールの結果を返すのに使用されるレジスタの一覧である (なお、 ここに載っているカーネルモードに遷移するのに使用される命令は、 カーネルモードに遷移する最速や最善の方法でない場合もあるので、 B<vdso>(7) を参照する必要があるかもしれない)。"
13456 #: build/C/man2/syscall.2:159
13458 msgid "arch/ABI\tinstruction\tsyscall #\tretval\tNotes\n"
13459 msgstr "arch/ABI\tinstruction\tsyscall #\tretval\tNotes\n"
13462 #: build/C/man2/syscall.2:161
13464 msgid "arm/OABI\tswi NR\t-\ta1\tNR is syscall #\n"
13465 msgstr "arm/OABI\tswi NR\t-\ta1\tNR はシステムコール番号\n"
13468 #: build/C/man2/syscall.2:162
13470 msgid "arm/EABI\tswi 0x0\tr7\tr0\n"
13471 msgstr "arm/EABI\tswi 0x0\tr7\tr0\n"
13474 #: build/C/man2/syscall.2:163
13476 msgid "arm64\tsvc #0\tx8\tx0\n"
13477 msgstr "arm64\tsvc #0\tx8\tx0\n"
13480 #: build/C/man2/syscall.2:164
13482 msgid "blackfin\texcpt 0x0\tP0\tR0\n"
13483 msgstr "blackfin\texcpt 0x0\tP0\tR0\n"
13486 #: build/C/man2/syscall.2:165
13488 msgid "i386\tint $0x80\teax\teax\n"
13489 msgstr "i386\tint $0x80\teax\teax\n"
13492 #: build/C/man2/syscall.2:166
13494 msgid "ia64\tbreak 0x100000\tr15\tr8\tSee below\n"
13495 msgstr "ia64\tbreak 0x100000\tr15\tr8\t下記参照\n"
13498 #: build/C/man2/syscall.2:167
13500 msgid "mips\tsyscall\tv0\tv0\tSee below\n"
13501 msgstr "mips\tsyscall\tv0\tv0\t下記参照\n"
13504 #: build/C/man2/syscall.2:168
13506 msgid "parisc\tble 0x100(%sr2, %r0)\tr20\tr28\n"
13507 msgstr "parisc\tble 0x100(%sr2, %r0)\tr20\tr28\n"
13510 #: build/C/man2/syscall.2:169
13512 msgid "s390\tsvc 0\tr1\tr2\tSee below\n"
13513 msgstr "s390\tsvc 0\tr1\tr2\t下記参照\n"
13516 #: build/C/man2/syscall.2:170
13518 msgid "s390x\tsvc 0\tr1\tr2\tSee below\n"
13519 msgstr "s390\tsvc 0\tr1\tr2\t下記参照\n"
13522 #: build/C/man2/syscall.2:171
13524 msgid "sparc/32\tt 0x10\tg1\to0\n"
13525 msgstr "sparc/32\tt 0x10\tg1\to0\n"
13528 #: build/C/man2/syscall.2:172
13530 msgid "sparc/64\tt 0x6d\tg1\to0\n"
13531 msgstr "sparc/64\tt 0x6d\tg1\to0\n"
13534 #: build/C/man2/syscall.2:173
13536 msgid "x86_64\tsyscall\trax\trax\n"
13537 msgstr "x86_64\tsyscall\trax\trax\n"
13539 #. type: Plain text
13540 #: build/C/man2/syscall.2:178
13541 msgid "For s390 and s390x, NR (the system call number) may be passed directly with \"svc NR\" if it is less than 256."
13542 msgstr "s390 と s390x では、 NR (システムコール番号) が 256 未満の場合 \"svc NR\" で NR が直接渡される場合がある。"
13544 #. type: Plain text
13545 #: build/C/man2/syscall.2:186
13546 msgid "On a few architectures, a register is used to indicate simple boolean failure of the system call: ia64 uses I<r10> for this purpose, and mips uses I<a3>."
13547 msgstr "少ないがいくつかのアーキテクチャーでは、 システムコールの失敗を示す単純な真偽値がレジスターを使って通知される。この用途に ia64 は I<r10> を使用し、 mips は I<a3> を使用する。"
13549 #. type: Plain text
13550 #: build/C/man2/syscall.2:192
13551 msgid "The second table shows the registers used to pass the system call arguments."
13552 msgstr "2 つ目の表は、システムコールの引き数を渡すのに使用されるレジスタの一覧である。"
13555 #: build/C/man2/syscall.2:197
13557 msgid "arch/ABI\targ1\targ2\targ3\targ4\targ5\targ6\targ7\tNotes\n"
13558 msgstr "arch/ABI\targ1\targ2\targ3\targ4\targ5\targ6\targ7\t備考\n"
13561 #: build/C/man2/syscall.2:199
13563 msgid "arm/OABI\ta1\ta2\ta3\ta4\tv1\tv2\tv3\n"
13564 msgstr "arm/OABI\ta1\ta2\ta3\ta4\tv1\tv2\tv3\n"
13567 #: build/C/man2/syscall.2:200
13569 msgid "arm/EABI\tr0\tr1\tr2\tr3\tr4\tr5\tr6\n"
13570 msgstr "arm/EABI\tr0\tr1\tr2\tr3\tr4\tr5\tr6\n"
13573 #: build/C/man2/syscall.2:201
13575 msgid "arm64\tx0\tx1\tx2\tx3\tx4\tx5\t-\n"
13576 msgstr "arm64\tx0\tx1\tx2\tx3\tx4\tx5\t-\n"
13579 #: build/C/man2/syscall.2:202
13581 msgid "blackfin\tR0\tR1\tR2\tR3\tR4\tR5\t-\n"
13582 msgstr "blackfin\tR0\tR1\tR2\tR3\tR4\tR5\t-\n"
13585 #: build/C/man2/syscall.2:203
13587 msgid "i386\tebx\tecx\tedx\tesi\tedi\tebp\t-\n"
13588 msgstr "i386\tebx\tecx\tedx\tesi\tedi\tebp\t-\n"
13591 #: build/C/man2/syscall.2:204
13593 msgid "ia64\tout0\tout1\tout2\tout3\tout4\tout5\t-\n"
13594 msgstr "ia64\tout0\tout1\tout2\tout3\tout4\tout5\t-\n"
13597 #: build/C/man2/syscall.2:205
13599 msgid "mips/o32\ta0\ta1\ta2\ta3\t-\t-\t-\tSee below\n"
13600 msgstr "mips/o32\ta0\ta1\ta2\ta3\t-\t-\t-\t下記参照\n"
13603 #: build/C/man2/syscall.2:206
13605 msgid "mips/n32,64\ta0\ta1\ta2\ta3\ta4\ta5\t-\n"
13606 msgstr "mips/n32,64\ta0\ta1\ta2\ta3\ta4\ta5\t-\n"
13609 #: build/C/man2/syscall.2:207
13611 msgid "parisc\tr26\tr25\tr24\tr23\tr22\tr21\t-\n"
13612 msgstr "parisc\tr26\tr25\tr24\tr23\tr22\tr21\t-\n"
13615 #: build/C/man2/syscall.2:208
13617 msgid "s390\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
13618 msgstr "s390\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
13621 #: build/C/man2/syscall.2:209
13623 msgid "s390x\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
13624 msgstr "s390x\tr2\tr3\tr4\tr5\tr6\tr7\t-\n"
13627 #: build/C/man2/syscall.2:210
13629 msgid "sparc/32\to0\to1\to2\to3\to4\to5\t-\n"
13630 msgstr "sparc/32\to0\to1\to2\to3\to4\to5\t-\n"
13633 #: build/C/man2/syscall.2:211
13635 msgid "sparc/64\to0\to1\to2\to3\to4\to5\t-\n"
13636 msgstr "sparc/64\to0\to1\to2\to3\to4\to5\t-\n"
13639 #: build/C/man2/syscall.2:212
13641 msgid "x86_64\trdi\trsi\trdx\tr10\tr8\tr9\t-\n"
13642 msgstr "x86_64\trdi\trsi\trdx\tr10\tr8\tr9\t-\n"
13644 #. type: Plain text
13645 #: build/C/man2/syscall.2:217
13646 msgid "The mips/o32 system call convention passes arguments 5 through 8 on the user stack."
13647 msgstr "mips/o32 のシステムコールの規約では、 ユーザースタックに引き数を 5 個から 8 個渡す。"
13649 #. type: Plain text
13650 #: build/C/man2/syscall.2:224
13651 msgid "Note that these tables don't cover the entire calling convention\\(emsome architectures may indiscriminately clobber other registers not listed here."
13652 msgstr "これらの表にはすべての呼び出し規約が記載されているわけではない点に注意すること \\(em アーキテクチャによっては、ここに記載されていない他のレジスタが見境なく上書きされる場合もある。"
13654 #. type: Plain text
13655 #: build/C/man2/syscall.2:231
13658 "#define _GNU_SOURCE\n"
13659 "#include E<lt>unistd.hE<gt>\n"
13660 "#include E<lt>sys/syscall.hE<gt>\n"
13661 "#include E<lt>sys/types.hE<gt>\n"
13662 "#include E<lt>signal.hE<gt>\n"
13664 "#define _GNU_SOURCE\n"
13665 "#include E<lt>unistd.hE<gt>\n"
13666 "#include E<lt>sys/syscall.hE<gt>\n"
13667 "#include E<lt>sys/types.hE<gt>\n"
13668 "#include E<lt>signal.hE<gt>\n"
13670 #. type: Plain text
13671 #: build/C/man2/syscall.2:236
13675 "main(int argc, char *argv[])\n"
13680 "main(int argc, char *argv[])\n"
13684 #. type: Plain text
13685 #: build/C/man2/syscall.2:240
13688 " tid = syscall(SYS_gettid);\n"
13689 " tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);\n"
13692 " tid = syscall(SYS_gettid);\n"
13693 " tid = syscall(SYS_tgkill, getpid(), tid, SIGHUP);\n"
13696 #. type: Plain text
13697 #: build/C/man2/syscall.2:247
13698 msgid "B<_syscall>(2), B<intro>(2), B<syscalls>(2), B<errno>(3), B<vdso>(7)"
13699 msgstr "B<_syscall>(2), B<intro>(2), B<syscalls>(2), B<errno>(3), B<vdso>(7)"
13702 #: build/C/man2/syscalls.2:31
13707 #. type: Plain text
13708 #: build/C/man2/syscalls.2:34
13709 msgid "syscalls - Linux system calls"
13710 msgstr "syscalls - Linux のシステムコール"
13712 #. type: Plain text
13713 #: build/C/man2/syscalls.2:36
13714 msgid "Linux system calls."
13715 msgstr "Linux のシステムコール。"
13717 #. type: Plain text
13718 #: build/C/man2/syscalls.2:39
13719 msgid "The system call is the fundamental interface between an application and the Linux kernel."
13720 msgstr "システムコールは、アプリケーションと Linux カーネルとの間の 基本的なインタフェースである。"
13723 #: build/C/man2/syscalls.2:39
13725 msgid "System calls and library wrapper functions"
13726 msgstr "システムコールとライブラリのラッパー関数"
13728 #. type: Plain text
13729 #: build/C/man2/syscalls.2:49
13730 msgid "System calls are generally not invoked directly, but rather via wrapper functions in glibc (or perhaps some other library). For details of direct invocation of a system call, see B<intro>(2). Often, but not always, the name of the wrapper function is the same as the name of the system call that it invokes. For example, glibc contains a function B<truncate>() which invokes the underlying \"truncate\" system call."
13731 msgstr "システムコールは一般には直接起動されず、 glibc (や他の何らかのライブラリ) 経由で起動される。 システムコールの直接起動については、詳細は B<intro>(2) を参照のこと。 いつもという訳ではないが、普通は、ラッパー関数の名前はその関数が起動する システムコールの名前と同じである。 例えば、glibc には B<truncate>() という関数があり、この関数は \"truncate\" システムコールを起動する。"
13733 #. type: Plain text
13734 #: build/C/man2/syscalls.2:67
13735 msgid "Often the glibc wrapper function is quite thin, doing little work other than copying arguments to the right registers before invoking the system call, and then setting I<errno> appropriately after the system call has returned. (These are the same steps that are performed by B<syscall>(2), which can be used to invoke system calls for which no wrapper function is provided.) Note: system calls indicate a failure by returning a negative error number to the caller; when this happens, the wrapper function negates the returned error number (to make it positive), copies it to I<errno>, and returns -1 to the caller of the wrapper."
13736 msgstr "たいていの場合、glibc のラッパー関数はかなり簡単なもので、 システムコールを起動する前に引き数を適切なレジスタにコピーし、 システムコールが返った後は I<errno> を適切に設定する以外は、ほとんど処理を行わない (これらは、ラッパー関数が提供されていない場合に システムコールを起動するのに使用する B<syscall>(2) により実行される処理と同じである)。 [注意] システムコールは失敗を示すのに負のエラー番号を呼び出し元に返す。 失敗が起こった際には、ラッパー関数は返されたエラー番号を反転して (正の値に変換し)、それを I<errno> にコピーし、ラッパー関数の呼び出し元に -1 を返す。"
13738 #. type: Plain text
13739 #: build/C/man2/syscalls.2:79
13740 msgid "Sometimes, however, the wrapper function does some extra work before invoking the system call. For example, nowadays there are (for reasons described below) two related system calls, B<truncate>(2) and B<truncate64>(2), and the glibc B<truncate>() wrapper function checks which of those system calls are provided by the kernel and determines which should be employed."
13741 msgstr "しかしながら、時には、ラッパー関数がシステムコールを起動する前に 何らかの追加の処理を行う場合がある。 例えば、現在、 二つの関連するシステムコール B<truncate>(2) と B<truncate64>(2) があり、glibc のラッパー関数 B<truncate>() は、カーネルがこれらのシステムコールのうちどちらを提供しているかをチェックし、 どちらを採用するかを決定する。"
13744 #: build/C/man2/syscalls.2:79
13746 msgid "System call list"
13747 msgstr "システムコールのリスト"
13749 #. type: Plain text
13750 #: build/C/man2/syscalls.2:87
13751 msgid "Below is a list of the Linux system calls. In the list, the I<Kernel> column indicates the kernel version for those system calls that were new in Linux 2.2, or have appeared since that kernel version. Note the following points:"
13752 msgstr "以下は Linux のシステムコールのリストである。 このリストで、 I<Kernel> の列は、Linux 2.2 以降で登場したシステムコールが 登場したカーネルバージョンを示す。 以下に詳細な説明を記す。"
13754 #. type: Plain text
13755 #: build/C/man2/syscalls.2:90
13756 msgid "Where no kernel version is indicated, the system call appeared in kernel 1.0 or earlier."
13757 msgstr "カーネルバージョンがない場合、そのシステムコールは カーネル 1.0 もしくはそれ以前に登場した。"
13759 #. type: Plain text
13760 #: build/C/man2/syscalls.2:96
13761 msgid "Where a system call is marked \"1.2\" this means the system call probably appeared in a 1.1.x kernel version, and first appeared in a stable kernel with 1.2. (Development of the 1.2 kernel was initiated from a branch of kernel 1.0.6 via the 1.1.x unstable kernel series.)"
13762 msgstr "システムコールに \"1.2\" と書かれている場合、 そのシステムコールがおそらくバージョン 1.1.x のカーネルで登場し、 安定版のカーネルでは 1.2 で初めて登場したことを意味する。 (バージョン 1.2 のカーネルは、カーネル 1.0.6 から分岐し、 バージョン 1.1.x の不安定版のカーネル系列として開発された。)"
13764 #. Was kernel 2.0 started from a branch of 1.2.10?
13765 #. At least from the timestamps of the tarballs of
13766 #. of 1.2.10 and 1.3.0, that's how it looks, but in
13767 #. fact the diff doesn't seem very clear, the
13768 #. 1.3.0 .tar.bz is much bigger (2.0 MB) than the
13769 #. 1.2.10 .tar.bz2 (1.8 MB), and AEB points out the
13770 #. timestamps of some files in 1.3.0 seem to be older
13771 #. than those in 1.2.10. All of this suggests
13772 #. that there might not have been a clean branch point.
13773 #. type: Plain text
13774 #: build/C/man2/syscalls.2:112
13775 msgid "Where a system call is marked \"2.0\" this means the system call probably appeared in a 1.3.x kernel version, and first appeared in a stable kernel with 2.0. (Development of the 2.0 kernel was initiated from a branch of kernel 1.2.x, somewhere around 1.2.10, via the 1.3.x unstable kernel series.)"
13776 msgstr "システムコールに \"2.0\" と書かれている場合、 そのシステムコールがおそらくバージョン 1.3.x のカーネルで登場し、 安定版のカーネルでは 2.0 で初めて登場したことを意味する。 (バージョン 2.0 のカーネルは、バージョン 1.2.10 あたりのカーネル 1.2.x から分岐し、バージョン 1.3.x の不安定版のカーネル系列として開発された。)"
13778 #. type: Plain text
13779 #: build/C/man2/syscalls.2:118
13780 msgid "Where a system call is marked \"2.2\" this means the system call probably appeared in a 2.1.x kernel version, and first appeared in a stable kernel with 2.2.0. (Development of the 2.2 kernel was initiated from a branch of kernel 2.0.21 via the 2.1.x unstable kernel series.)"
13781 msgstr "システムコールに \"2.2\" と書かれている場合、 そのシステムコールがおそらくバージョン 2.1.x のカーネルで登場し、 安定版のカーネルでは 2.2.0 で初めて登場したことを意味する。 (バージョン 2.2 のカーネルは、カーネル 2.0.21 から分岐し、 バージョン 2.1.x の不安定版のカーネル系列として開発された。)"
13783 #. type: Plain text
13784 #: build/C/man2/syscalls.2:124
13785 msgid "Where a system call is marked \"2.4\" this means the system call probably appeared in a 2.3.x kernel version, and first appeared in a stable kernel with 2.4.0. (Development of the 2.4 kernel was initiated from a branch of kernel 2.2.8 via the 2.3.x unstable kernel series.)"
13786 msgstr "システムコールに \"2.4\" と書かれている場合、 そのシステムコールがおそらくバージョン 2.3.x のカーネルで登場し、 安定版のカーネルでは 2.4.0 で初めて登場したことを意味する。 (バージョン 2.4 のカーネルは、カーネル 2.2.8 から分岐し、 バージョン 2.3.x の不安定版のカーネル系列として開発された。)"
13788 #. type: Plain text
13789 #: build/C/man2/syscalls.2:130
13790 msgid "Where a system call is marked \"2.6\" this means the system call probably appeared in a 2.5.x kernel version, and first appeared in a stable kernel with 2.6.0. (Development of kernel 2.6 was initiated from a branch of kernel 2.4.15 via the 2.5.x unstable kernel series.)"
13791 msgstr "システムコールに \"2.6\" と書かれている場合、 そのシステムコールがおそらくバージョン 2.5.x のカーネルで登場し、 安定版のカーネルでは 2.6.0 で初めて登場したことを意味する。 (バージョン 2.6 のカーネルは、カーネル 2.4.15 から分岐し、 バージョン 2.5.x の不安定版のカーネル系列として開発された。)"
13793 #. type: Plain text
13794 #: build/C/man2/syscalls.2:137
13795 msgid "Starting with kernel 2.6.0, the development model changed, and new system calls may appear in each 2.6.x release. In this case, the exact version number where the system call appeared is shown. This convention continues with the 3.x kernel series, which followed on from kernel 2.6.39."
13797 "カーネル 2.6.0 から開発モデルは変更され、新しいシステムコールが\n"
13798 "個々の 2.6.x のリリースでも登場するようになった。\n"
13799 "その場合、このリストでは、システムコールが登場した\n"
13800 "厳密なバージョン番号が記載されている。この慣習は、カーネル 2.6.39 の\n"
13801 "後継となるバージョン 3.x 系列のカーネルでも継続されている。"
13803 #. type: Plain text
13804 #: build/C/man2/syscalls.2:145
13805 msgid "In some cases, a system call was added to a stable kernel series after it branched from the previous stable kernel series, and then backported into the earlier stable kernel series. For example some system calls that appeared in 2.6.x were also backported into a 2.4.x release after 2.4.15. When this is so, the version where the system call appeared in both of the major kernel series is listed."
13806 msgstr "前の安定版カーネル系列から分岐した後に安定版カーネル系列にシステムコール が追加された場合、以前の安定版カーネル系列にそのシステムコールが 移植 (backport) されることがある。 例えば、2.6.x で登場したシステムコールのいくつかは、 2.4.15 以降の 2.4.x リリースにも backport された。 この場合、システムコールが登場したバージョンとして、 両方の安定版系列のバージョンが記載されている。"
13808 #. Looking at scripts/checksyscalls.sh in the kernel source is
13809 #. instructive about x86 specifics.
13810 #. type: Plain text
13811 #: build/C/man2/syscalls.2:152
13812 msgid "The list of system calls that are available as at kernel 3.15 (or in a few cases only on older kernels) is as follows:"
13814 "カーネル 3.15 で利用可能なシステムコールのリストを以下に示す\n"
13815 "(それ以前のカーネルでだけ利用可能なものも少数だが含まれる):"
13818 #: build/C/man2/syscalls.2:157
13820 msgid "B<System call>\tB<Kernel>\tB<Notes>\n"
13821 msgstr "B<System call>\tB<Kernel>\tB<Notes>\n"
13824 #: build/C/man2/syscalls.2:159
13826 msgid "B<_llseek>(2)\t1.2\n"
13827 msgstr "B<_llseek>(2)\t1.2\n"
13830 #: build/C/man2/syscalls.2:160
13832 msgid "B<_newselect>(2)\t2.0\n"
13833 msgstr "B<_newselect>(2)\t2.0\n"
13836 #: build/C/man2/syscalls.2:161
13838 msgid "B<_sysctl>(2)\t2.0\n"
13839 msgstr "B<_sysctl>(2)\t2.0\n"
13842 #: build/C/man2/syscalls.2:162
13844 msgid "B<accept>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
13845 msgstr "B<accept>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
13848 #: build/C/man2/syscalls.2:163
13850 msgid "B<accept4>(2)\t2.6.28\n"
13851 msgstr "B<accept4>(2)\t2.6.28\n"
13854 #: build/C/man2/syscalls.2:164
13856 msgid "B<access>(2)\t1.0\n"
13857 msgstr "B<access>(2)\t1.0\n"
13860 #: build/C/man2/syscalls.2:165
13862 msgid "B<acct>(2)\t1.0\n"
13863 msgstr "B<acct>(2)\t1.0\n"
13866 #: build/C/man2/syscalls.2:166
13868 msgid "B<add_key>(2)\t2.6.11\n"
13869 msgstr "B<add_key>(2)\t2.6.11\n"
13872 #: build/C/man2/syscalls.2:167
13874 msgid "B<adjtimex>(2)\t1.0\n"
13875 msgstr "B<adjtimex>(2)\t1.0\n"
13878 #: build/C/man2/syscalls.2:168
13880 msgid "B<alarm>(2)\t1.0\n"
13881 msgstr "B<alarm>(2)\t1.0\n"
13884 #: build/C/man2/syscalls.2:169
13886 msgid "B<alloc_hugepages>(2)\t2.5.36\tRemoved in 2.5.44\n"
13887 msgstr "B<alloc_hugepages>(2)\t2.5.36\t2.5.44 で削除\n"
13890 #: build/C/man2/syscalls.2:170
13892 msgid "B<bdflush>(2)\t1.2\tT{\n"
13893 msgstr "B<bdflush>(2)\t1.2\tT{\n"
13896 #: build/C/man2/syscalls.2:171
13898 msgid "Deprecated (does nothing)\n"
13899 msgstr "2.6 以降で非推奨\n"
13902 #: build/C/man2/syscalls.2:172 build/C/man2/syscalls.2:185
13903 #: build/C/man2/syscalls.2:320 build/C/man2/syscalls.2:393
13904 #: build/C/man2/syscalls.2:409 build/C/man2/syscalls.2:422
13910 #: build/C/man2/syscalls.2:173
13912 msgid "since 2.6\n"
13916 #: build/C/man2/syscalls.2:174 build/C/man2/syscalls.2:187
13917 #: build/C/man2/syscalls.2:322 build/C/man2/syscalls.2:395
13918 #: build/C/man2/syscalls.2:411 build/C/man2/syscalls.2:424
13919 #: build/C/man2/syscalls.2:601
13925 #: build/C/man2/syscalls.2:175
13927 msgid "B<bind>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
13928 msgstr "B<bind>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
13931 #: build/C/man2/syscalls.2:176
13933 msgid "B<bpf>(2)\t3.18\n"
13934 msgstr "B<bpf>(2)\t3.18\n"
13937 #: build/C/man2/syscalls.2:177
13939 msgid "B<brk>(2)\t1.0\n"
13940 msgstr "B<brk>(2)\t1.0\n"
13943 #: build/C/man2/syscalls.2:178
13945 msgid "B<cacheflush>(2)\t1.2\tNot on x86\n"
13946 msgstr "B<cacheflush>(2)\t1.2\tx86 にはない\n"
13949 #: build/C/man2/syscalls.2:179
13951 msgid "B<capget>(2)\t2.2\n"
13952 msgstr "B<capget>(2)\t2.2\n"
13955 #: build/C/man2/syscalls.2:180
13957 msgid "B<capset>(2)\t2.2\n"
13958 msgstr "B<capset>(2)\t2.2\n"
13961 #: build/C/man2/syscalls.2:181
13963 msgid "B<chdir>(2)\t1.0\n"
13964 msgstr "B<chdir>(2)\t1.0\n"
13967 #: build/C/man2/syscalls.2:182
13969 msgid "B<chmod>(2)\t1.0\n"
13970 msgstr "B<chmod>(2)\t1.0\n"
13973 #: build/C/man2/syscalls.2:183
13975 msgid "B<chown>(2)\t2.2\tT{\n"
13976 msgstr "B<chown>(2)\t2.2\tT{\n"
13979 #: build/C/man2/syscalls.2:184 build/C/man2/syscalls.2:319
13981 msgid "See B<chown>(2) for\n"
13982 msgstr "バージョン毎の詳細は\n"
13985 #: build/C/man2/syscalls.2:186 build/C/man2/syscalls.2:321
13987 msgid "version details\n"
13988 msgstr "B<chown>(2) を参照。\n"
13991 #: build/C/man2/syscalls.2:188
13993 msgid "B<chown32>(2)\t2.4\n"
13994 msgstr "B<chown32>(2)\t2.4\n"
13997 #: build/C/man2/syscalls.2:189
13999 msgid "B<chroot>(2)\t1.0\n"
14000 msgstr "B<chroot>(2)\t1.0\n"
14003 #: build/C/man2/syscalls.2:190
14005 msgid "B<clock_adjtime>(2)\t2.6.39\n"
14006 msgstr "B<clock_adjtime>(2)\t2.6.39\n"
14009 #: build/C/man2/syscalls.2:191
14011 msgid "B<clock_getres>(2)\t2.6\n"
14012 msgstr "B<clock_getres>(2)\t2.6\n"
14015 #: build/C/man2/syscalls.2:192
14017 msgid "B<clock_gettime>(2)\t2.6\n"
14018 msgstr "B<clock_gettime>(2)\t2.6\n"
14021 #: build/C/man2/syscalls.2:193
14023 msgid "B<clock_nanosleep>(2)\t2.6\n"
14024 msgstr "B<clock_nanosleep>(2)\t2.6\n"
14027 #: build/C/man2/syscalls.2:194
14029 msgid "B<clock_settime>(2)\t2.6\n"
14030 msgstr "B<clock_settime>(2)\t2.6\n"
14033 #: build/C/man2/syscalls.2:195
14035 msgid "B<clone>(2)\t1.0\n"
14036 msgstr "B<clone>(2)\t1.0\n"
14039 #: build/C/man2/syscalls.2:196
14041 msgid "B<close>(2)\t1.0\n"
14042 msgstr "B<close>(2)\t1.0\n"
14045 #: build/C/man2/syscalls.2:197
14047 msgid "B<connect>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
14048 msgstr "B<connect>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
14051 #: build/C/man2/syscalls.2:198
14053 msgid "B<creat>(2)\t1.0\n"
14054 msgstr "B<creat>(2)\t1.0\n"
14057 #: build/C/man2/syscalls.2:199
14059 msgid "B<create_module>(2)\t1.0\tRemoved in 2.6\n"
14060 msgstr "B<create_module>(2)\t1.0\t2.6 で削除\n"
14063 #: build/C/man2/syscalls.2:200
14065 msgid "B<delete_module>(2)\t1.0\n"
14066 msgstr "B<delete_module>(2)\t1.0\n"
14069 #: build/C/man2/syscalls.2:201
14071 msgid "B<dup>(2)\t1.0\n"
14072 msgstr "B<dup>(2)\t1.0\n"
14075 #: build/C/man2/syscalls.2:202
14077 msgid "B<dup2>(2)\t1.0\n"
14078 msgstr "B<dup2>(2)\t1.0\n"
14081 #: build/C/man2/syscalls.2:203
14083 msgid "B<dup3>(2)\t2.6.27\n"
14084 msgstr "B<dup3>(2)\t2.6.27\n"
14087 #: build/C/man2/syscalls.2:204
14089 msgid "B<epoll_create>(2)\t2.6\n"
14090 msgstr "B<epoll_create>(2)\t2.6\n"
14093 #: build/C/man2/syscalls.2:205
14095 msgid "B<epoll_create1>(2)\t2.6.27\n"
14096 msgstr "B<epoll_create1>(2)\t2.6.27\n"
14099 #: build/C/man2/syscalls.2:206
14101 msgid "B<epoll_ctl>(2)\t2.6\n"
14102 msgstr "B<epoll_ctl>(2)\t2.6\n"
14105 #: build/C/man2/syscalls.2:207
14107 msgid "B<epoll_pwait>(2)\t2.6.19\n"
14108 msgstr "B<epoll_pwait>(2)\t2.6.19\n"
14111 #: build/C/man2/syscalls.2:208
14113 msgid "B<epoll_wait>(2)\t2.6\n"
14114 msgstr "B<epoll_wait>(2)\t2.6\n"
14117 #: build/C/man2/syscalls.2:209
14119 msgid "B<eventfd>(2)\t2.6.22\n"
14120 msgstr "B<eventfd>(2)\t2.6.22\n"
14123 #: build/C/man2/syscalls.2:210
14125 msgid "B<eventfd2>(2)\t2.6.27\n"
14126 msgstr "B<eventfd2>(2)\t2.6.27\n"
14129 #: build/C/man2/syscalls.2:211
14131 msgid "B<execve>(2)\t1.0\n"
14132 msgstr "B<execve>(2)\t1.0\n"
14135 #: build/C/man2/syscalls.2:212
14137 msgid "B<execveat>(2)\t3.19\n"
14138 msgstr "B<execveat>(2)\t3.19\n"
14141 #: build/C/man2/syscalls.2:213
14143 msgid "B<exit>(2)\t1.0\n"
14144 msgstr "B<exit>(2)\t1.0\n"
14147 #: build/C/man2/syscalls.2:214
14149 msgid "B<exit_group>(2)\t2.6\n"
14150 msgstr "B<exit_group>(2)\t2.6\n"
14153 #: build/C/man2/syscalls.2:215
14155 msgid "B<faccessat>(2)\t2.6.16\n"
14156 msgstr "B<faccessat>(2)\t2.6.16\n"
14159 #: build/C/man2/syscalls.2:216
14161 msgid "B<fadvise64>(2)\t2.6\n"
14162 msgstr "B<fadvise64>(2)\t2.6\n"
14164 #. Implements \fBposix_fadvise\fP(2)
14166 #: build/C/man2/syscalls.2:218
14168 msgid "B<fadvise64_64>(2)\t2.6\n"
14169 msgstr "B<fadvise64_64>(2)\t2.6\n"
14172 #: build/C/man2/syscalls.2:219
14174 msgid "B<fallocate>(2)\t2.6.23\n"
14175 msgstr "B<fallocate>(2)\t2.6.23\n"
14178 #: build/C/man2/syscalls.2:220
14180 msgid "B<fanotify_init>(2)\t2.6.37\n"
14181 msgstr "B<fanotify_init>(2)\t2.6.37\n"
14184 #: build/C/man2/syscalls.2:221
14186 msgid "B<fanotify_mark>(2)\t2.6.37\n"
14187 msgstr "B<fanotify_mark>(2)\t2.6.37\n"
14189 #. The fanotify calls were added in Linux 2.6.36,
14190 #. but disabled while the API was finalized.
14192 #: build/C/man2/syscalls.2:224
14194 msgid "B<fchdir>(2)\t1.0\n"
14195 msgstr "B<fchdir>(2)\t1.0\n"
14198 #: build/C/man2/syscalls.2:225
14200 msgid "B<fchmod>(2)\t1.0\n"
14201 msgstr "B<fchmod>(2)\t1.0\n"
14204 #: build/C/man2/syscalls.2:226
14206 msgid "B<fchmodat>(2)\t2.6.16\n"
14207 msgstr "B<fchmodat>(2)\t2.6.16\n"
14210 #: build/C/man2/syscalls.2:227
14212 msgid "B<fchown>(2)\t1.0\n"
14213 msgstr "B<fchown>(2)\t1.0\n"
14216 #: build/C/man2/syscalls.2:228
14218 msgid "B<fchown32>(2)\t2.4\n"
14219 msgstr "B<fchown32>(2)\t2.4\n"
14222 #: build/C/man2/syscalls.2:229
14224 msgid "B<fchownat>(2)\t2.6.16\n"
14225 msgstr "B<fchownat>(2)\t2.6.16\n"
14228 #: build/C/man2/syscalls.2:230
14230 msgid "B<fcntl>(2)\t1.0\n"
14231 msgstr "B<fcntl>(2)\t1.0\n"
14234 #: build/C/man2/syscalls.2:231
14236 msgid "B<fcntl64>(2)\t2.4\n"
14237 msgstr "B<fcntl64>(2)\t2.4\n"
14240 #: build/C/man2/syscalls.2:232
14242 msgid "B<fdatasync>(2)\t2.0\n"
14243 msgstr "B<fdatasync>(2)\t2.0\n"
14246 #: build/C/man2/syscalls.2:233
14248 msgid "B<fgetxattr>(2)\t2.6; 2.4.18\n"
14249 msgstr "B<fgetxattr>(2)\t2.6; 2.4.18\n"
14252 #: build/C/man2/syscalls.2:234
14254 msgid "B<finit_module>(2)\t3.8\n"
14255 msgstr "B<finit_module>(2)\t3.8\n"
14258 #: build/C/man2/syscalls.2:235
14260 msgid "B<flistxattr>(2)\t2.6; 2.4.18\n"
14261 msgstr "B<flistxattr>(2)\t2.6; 2.4.18\n"
14264 #: build/C/man2/syscalls.2:236
14266 msgid "B<flock>(2)\t2.0\n"
14267 msgstr "B<flock>(2)\t2.0\n"
14270 #: build/C/man2/syscalls.2:237
14272 msgid "B<fork>(2)\t1.0\n"
14273 msgstr "B<fork>(2)\t1.0\n"
14276 #: build/C/man2/syscalls.2:238
14278 msgid "B<free_hugepages>(2)\t2.5.36\tRemoved in 2.5.44\n"
14279 msgstr "B<free_hugepages>(2)\t2.5.36\t2.5.44 で削除\n"
14282 #: build/C/man2/syscalls.2:239
14284 msgid "B<fremovexattr>(2)\t2.6; 2.4.18\n"
14285 msgstr "B<fremovexattr>(2)\t2.6; 2.4.18\n"
14288 #: build/C/man2/syscalls.2:240
14290 msgid "B<fsetxattr>(2)\t2.6; 2.4.18\n"
14291 msgstr "B<fsetxattr>(2)\t2.6; 2.4.18\n"
14294 #: build/C/man2/syscalls.2:241
14296 msgid "B<fstat>(2)\t1.0\n"
14297 msgstr "B<fstat>(2)\t1.0\n"
14300 #: build/C/man2/syscalls.2:242
14302 msgid "B<fstat64>(2)\t2.4\n"
14303 msgstr "B<fstat64>(2)\t2.4\n"
14306 #: build/C/man2/syscalls.2:243
14308 msgid "B<fstatat64>(2)\t2.6.16\n"
14309 msgstr "B<fstatat64>(2)\t2.6.16\n"
14312 #: build/C/man2/syscalls.2:244
14314 msgid "B<fstatfs>(2)\t1.0\n"
14315 msgstr "B<fstatfs>(2)\t1.0\n"
14318 #: build/C/man2/syscalls.2:245
14320 msgid "B<fstatfs64>(2)\t2.6\n"
14321 msgstr "B<fstatfs64>(2)\t2.6\n"
14324 #: build/C/man2/syscalls.2:246
14326 msgid "B<fsync>(2)\t1.0\n"
14327 msgstr "B<fsync>(2)\t1.0\n"
14330 #: build/C/man2/syscalls.2:247
14332 msgid "B<ftruncate>(2)\t1.0\n"
14333 msgstr "B<ftruncate>(2)\t1.0\n"
14336 #: build/C/man2/syscalls.2:248
14338 msgid "B<ftruncate64>(2)\t2.4\n"
14339 msgstr "B<ftruncate64>(2)\t2.4\n"
14342 #: build/C/man2/syscalls.2:249
14344 msgid "B<futex>(2)\t2.6\n"
14345 msgstr "B<futex>(2)\t2.6\n"
14348 #: build/C/man2/syscalls.2:250
14350 msgid "B<futimesat>(2)\t2.6.16\n"
14351 msgstr "B<futimesat>(2)\t2.6.16\n"
14354 #: build/C/man2/syscalls.2:251
14356 msgid "B<get_kernel_syms>(2)\t1.0\tRemoved in 2.6\n"
14357 msgstr "B<get_kernel_syms>(2)\t1.0\t2.6 で削除\n"
14360 #: build/C/man2/syscalls.2:252
14362 msgid "B<get_mempolicy>(2)\t2.6.6\n"
14363 msgstr "B<get_mempolicy>(2)\t2.6.6\n"
14366 #: build/C/man2/syscalls.2:253
14368 msgid "B<get_robust_list>(2)\t2.6.17\n"
14369 msgstr "B<get_robust_list>(2)\t2.6.17\n"
14372 #: build/C/man2/syscalls.2:254
14374 msgid "B<get_thread_area>(2)\t2.6\n"
14375 msgstr "B<get_thread_area>(2)\t2.6\n"
14378 #: build/C/man2/syscalls.2:255
14380 msgid "B<getcpu>(2)\t2.6.19\n"
14381 msgstr "B<getcpu>(2)\t2.6.19\n"
14384 #: build/C/man2/syscalls.2:256
14386 msgid "B<getcwd>(2)\t2.2\n"
14387 msgstr "B<getcwd>(2)\t2.2\n"
14390 #: build/C/man2/syscalls.2:257
14392 msgid "B<getdents>(2)\t2.0\n"
14393 msgstr "B<getdents>(2)\t2.0\n"
14396 #: build/C/man2/syscalls.2:258
14398 msgid "B<getdents64>(2)\t2.4\n"
14399 msgstr "B<getdents64>(2)\t2.4\n"
14402 #: build/C/man2/syscalls.2:259
14404 msgid "B<getegid>(2)\t1.0\n"
14405 msgstr "B<getegid>(2)\t1.0\n"
14408 #: build/C/man2/syscalls.2:260
14410 msgid "B<getegid32>(2)\t2.4\n"
14411 msgstr "B<getegid32>(2)\t2.4\n"
14414 #: build/C/man2/syscalls.2:261
14416 msgid "B<geteuid>(2)\t1.0\n"
14417 msgstr "B<geteuid>(2)\t1.0\n"
14420 #: build/C/man2/syscalls.2:262
14422 msgid "B<geteuid32>(2)\t2.4\n"
14423 msgstr "B<geteuid32>(2)\t2.4\n"
14426 #: build/C/man2/syscalls.2:263
14428 msgid "B<getgid>(2)\t1.0\n"
14429 msgstr "B<getgid>(2)\t1.0\n"
14432 #: build/C/man2/syscalls.2:264
14434 msgid "B<getgid32>(2)\t2.4\n"
14435 msgstr "B<getgid32>(2)\t2.4\n"
14438 #: build/C/man2/syscalls.2:265
14440 msgid "B<getgroups>(2)\t1.0\n"
14441 msgstr "B<getgroups>(2)\t1.0\n"
14444 #: build/C/man2/syscalls.2:266
14446 msgid "B<getgroups32>(2)\t2.4\n"
14447 msgstr "B<getgroups32>(2)\t2.4\n"
14450 #: build/C/man2/syscalls.2:267
14452 msgid "B<getitimer>(2)\t1.0\n"
14453 msgstr "B<getitimer>(2)\t1.0\n"
14456 #: build/C/man2/syscalls.2:268
14458 msgid "B<getpeername>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
14459 msgstr "B<getpeername>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
14462 #: build/C/man2/syscalls.2:269
14464 msgid "B<getpagesize>(2)\t2.0\tNot on x86\n"
14465 msgstr "B<getpagesize>(2)\t2.0\tx86 にはない\n"
14468 #: build/C/man2/syscalls.2:270
14470 msgid "B<getpgid>(2)\t1.0\n"
14471 msgstr "B<getpgid>(2)\t1.0\n"
14474 #: build/C/man2/syscalls.2:271
14476 msgid "B<getpgrp>(2)\t1.0\n"
14477 msgstr "B<getpgrp>(2)\t1.0\n"
14480 #: build/C/man2/syscalls.2:272
14482 msgid "B<getpid>(2)\t1.0\n"
14483 msgstr "B<getpid>(2)\t1.0\n"
14486 #: build/C/man2/syscalls.2:273
14488 msgid "B<getppid>(2)\t1.0\n"
14489 msgstr "B<getppid>(2)\t1.0\n"
14492 #: build/C/man2/syscalls.2:274
14494 msgid "B<getpriority>(2)\t1.0\n"
14495 msgstr "B<getpriority>(2)\t1.0\n"
14498 #: build/C/man2/syscalls.2:275
14500 msgid "B<getrandom>(2)\t3.17\n"
14501 msgstr "B<getrandom>(2)\t3.17\n"
14504 #: build/C/man2/syscalls.2:276
14506 msgid "B<getresgid>(2)\t2.2\n"
14507 msgstr "B<getresgid>(2)\t2.2\n"
14510 #: build/C/man2/syscalls.2:277
14512 msgid "B<getresgid32>(2)\t2.4\n"
14513 msgstr "B<getresgid32>(2)\t2.4\n"
14516 #: build/C/man2/syscalls.2:278
14518 msgid "B<getresuid>(2)\t2.2\n"
14519 msgstr "B<getresuid>(2)\t2.2\n"
14522 #: build/C/man2/syscalls.2:279
14524 msgid "B<getresuid32>(2)\t2.4\n"
14525 msgstr "B<getresuid32>(2)\t2.4\n"
14528 #: build/C/man2/syscalls.2:280
14530 msgid "B<getrlimit>(2)\t1.0\n"
14531 msgstr "B<getrlimit>(2)\t1.0\n"
14534 #: build/C/man2/syscalls.2:281
14536 msgid "B<getrusage>(2)\t1.0\n"
14537 msgstr "B<getrusage>(2)\t1.0\n"
14540 #: build/C/man2/syscalls.2:282
14542 msgid "B<getsid>(2)\t2.0\n"
14543 msgstr "B<getsid>(2)\t2.0\n"
14546 #: build/C/man2/syscalls.2:283
14548 msgid "B<getsockname>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
14549 msgstr "B<getsockname>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
14552 #: build/C/man2/syscalls.2:284
14554 msgid "B<getsockopt>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
14555 msgstr "B<getsockopt>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
14558 #: build/C/man2/syscalls.2:285
14560 msgid "B<gettid>(2)\t2.4.11\n"
14561 msgstr "B<gettid>(2)\t2.4.11\n"
14564 #: build/C/man2/syscalls.2:286
14566 msgid "B<gettimeofday>(2)\t1.0\n"
14567 msgstr "B<gettimeofday>(2)\t1.0\n"
14570 #: build/C/man2/syscalls.2:287
14572 msgid "B<getuid>(2)\t1.0\n"
14573 msgstr "B<getuid>(2)\t1.0\n"
14576 #: build/C/man2/syscalls.2:288
14578 msgid "B<getuid32>(2)\t2.4\n"
14579 msgstr "B<getuid32>(2)\t2.4\n"
14581 #. \fBgetunwind\fP(2) 2.4.8 ia64; DEPRECATED
14583 #: build/C/man2/syscalls.2:290
14585 msgid "B<getxattr>(2)\t2.6; 2.4.18\n"
14586 msgstr "B<getxattr>(2)\t2.6; 2.4.18\n"
14589 #: build/C/man2/syscalls.2:291
14591 msgid "B<init_module>(2)\t1.0\n"
14592 msgstr "B<init_module>(2)\t1.0\n"
14595 #: build/C/man2/syscalls.2:292
14597 msgid "B<inotify_add_watch>(2)\t2.6.13\n"
14598 msgstr "B<inotify_add_watch>(2)\t2.6.13\n"
14601 #: build/C/man2/syscalls.2:293
14603 msgid "B<inotify_init>(2)\t2.6.13\n"
14604 msgstr "B<inotify_init>(2)\t2.6.13\n"
14607 #: build/C/man2/syscalls.2:294
14609 msgid "B<inotify_init1>(2)\t2.6.27\n"
14610 msgstr "B<inotify_init1>(2)\t2.6.27\n"
14613 #: build/C/man2/syscalls.2:295
14615 msgid "B<inotify_rm_watch>(2)\t2.6.13\n"
14616 msgstr "B<inotify_rm_watch>(2)\t2.6.13\n"
14619 #: build/C/man2/syscalls.2:296
14621 msgid "B<io_cancel>(2)\t2.6\n"
14622 msgstr "B<io_cancel>(2)\t2.6\n"
14625 #: build/C/man2/syscalls.2:297
14627 msgid "B<io_destroy>(2)\t2.6\n"
14628 msgstr "B<io_destroy>(2)\t2.6\n"
14631 #: build/C/man2/syscalls.2:298
14633 msgid "B<io_getevents>(2)\t2.6\n"
14634 msgstr "B<io_getevents>(2)\t2.6\n"
14637 #: build/C/man2/syscalls.2:299
14639 msgid "B<io_setup>(2)\t2.6\n"
14640 msgstr "B<io_setup>(2)\t2.6\n"
14643 #: build/C/man2/syscalls.2:300
14645 msgid "B<io_submit>(2)\t2.6\n"
14646 msgstr "B<io_submit>(2)\t2.6\n"
14649 #: build/C/man2/syscalls.2:301
14651 msgid "B<ioctl>(2)\t1.0\n"
14652 msgstr "B<ioctl>(2)\t1.0\n"
14655 #: build/C/man2/syscalls.2:302
14657 msgid "B<ioperm>(2)\t1.0\n"
14658 msgstr "B<ioperm>(2)\t1.0\n"
14661 #: build/C/man2/syscalls.2:303
14663 msgid "B<iopl>(2)\t1.0\n"
14664 msgstr "B<iopl>(2)\t1.0\n"
14667 #: build/C/man2/syscalls.2:304
14669 msgid "B<ioprio_get>(2)\t2.6.13\n"
14670 msgstr "B<ioprio_get>(2)\t2.6.13\n"
14673 #: build/C/man2/syscalls.2:305
14675 msgid "B<ioprio_set>(2)\t2.6.13\n"
14676 msgstr "B<ioprio_set>(2)\t2.6.13\n"
14679 #: build/C/man2/syscalls.2:306
14681 msgid "B<ipc>(2)\t1.0\n"
14682 msgstr "B<ipc>(2)\t1.0\n"
14684 #. Implements System V IPC calls
14686 #: build/C/man2/syscalls.2:308
14688 msgid "B<kcmp>(2)\t3.5\n"
14689 msgstr "B<kcmp>(2)\t3.5\n"
14692 #: build/C/man2/syscalls.2:309
14694 msgid "B<kern_features>(2)\t3.7\tSparc64\n"
14695 msgstr "B<kern_features>(2)\t3.7\tSparc64\n"
14697 #. FIXME . document kern_features():
14698 #. commit 517ffce4e1a03aea979fe3a18a3dd1761a24fafb
14700 #: build/C/man2/syscalls.2:312
14702 msgid "B<kexec_file_load>(2)\t3.17\n"
14703 msgstr "B<kexec_file_load>(2)\t3.17\n"
14706 #: build/C/man2/syscalls.2:313
14708 msgid "B<kexec_load>(2)\t2.6.13\n"
14709 msgstr "B<kexec_load>(2)\t2.6.13\n"
14711 #. The entry in the syscall table was reserved starting in 2.6.7
14712 #. Was named sys_kexec_load() from 2.6.7 to 2.6.16
14714 #: build/C/man2/syscalls.2:316
14716 msgid "B<keyctl>(2)\t2.6.11\n"
14717 msgstr "B<keyctl>(2)\t2.6.11\n"
14720 #: build/C/man2/syscalls.2:317
14722 msgid "B<kill>(2)\t1.0\n"
14723 msgstr "B<kill>(2)\t1.0\n"
14726 #: build/C/man2/syscalls.2:318
14728 msgid "B<lchown>(2)\t1.0\tT{\n"
14729 msgstr "B<lchown>(2)\t1.0\tT{\n"
14732 #: build/C/man2/syscalls.2:323
14734 msgid "B<lchown32>(2)\t2.4\n"
14735 msgstr "B<lchown32>(2)\t2.4\n"
14738 #: build/C/man2/syscalls.2:324
14740 msgid "B<lgetxattr>(2)\t2.6; 2.4.18\n"
14741 msgstr "B<lgetxattr>(2)\t2.6; 2.4.18\n"
14744 #: build/C/man2/syscalls.2:325
14746 msgid "B<link>(2)\t1.0\n"
14747 msgstr "B<link>(2)\t1.0\n"
14750 #: build/C/man2/syscalls.2:326
14752 msgid "B<linkat>(2)\t2.6.16\n"
14753 msgstr "B<linkat>(2)\t2.6.16\n"
14756 #: build/C/man2/syscalls.2:327
14758 msgid "B<listen>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
14759 msgstr "B<listen>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
14762 #: build/C/man2/syscalls.2:328
14764 msgid "B<listxattr>(2)\t2.6; 2.4.18\n"
14765 msgstr "B<listxattr>(2)\t2.6; 2.4.18\n"
14768 #: build/C/man2/syscalls.2:329
14770 msgid "B<llistxattr>(2)\t2.6; 2.4.18\n"
14771 msgstr "B<llistxattr>(2)\t2.6; 2.4.18\n"
14774 #: build/C/man2/syscalls.2:330
14776 msgid "B<lookup_dcookie>(2)\t2.6\n"
14777 msgstr "B<lookup_dcookie>(2)\t2.6\n"
14780 #: build/C/man2/syscalls.2:331
14782 msgid "B<lremovexattr>(2)\t2.6; 2.4.18\n"
14783 msgstr "B<lremovexattr>(2)\t2.6; 2.4.18\n"
14786 #: build/C/man2/syscalls.2:332
14788 msgid "B<lseek>(2)\t1.0\n"
14789 msgstr "B<lseek>(2)\t1.0\n"
14792 #: build/C/man2/syscalls.2:333
14794 msgid "B<lsetxattr>(2)\t2.6; 2.4.18\n"
14795 msgstr "B<lsetxattr>(2)\t2.6; 2.4.18\n"
14798 #: build/C/man2/syscalls.2:334
14800 msgid "B<lstat>(2)\t1.0\n"
14801 msgstr "B<lstat>(2)\t1.0\n"
14804 #: build/C/man2/syscalls.2:335
14806 msgid "B<lstat64>(2)\t2.4\n"
14807 msgstr "B<lstat64>(2)\t2.4\n"
14810 #: build/C/man2/syscalls.2:336
14812 msgid "B<madvise>(2)\t2.4\n"
14813 msgstr "B<madvise>(2)\t2.4\n"
14816 #: build/C/man2/syscalls.2:337
14818 msgid "B<mbind>(2)\t2.6.6\n"
14819 msgstr "B<mbind>(2)\t2.6.6\n"
14821 #. \fBmemory_ordering\fP(2) ??? Sparc64
14823 #: build/C/man2/syscalls.2:339
14825 msgid "B<memfd_create>(2)\t3.17\n"
14826 msgstr "B<memfd_create>(2)\t3.17\n"
14829 #: build/C/man2/syscalls.2:340
14831 msgid "B<migrate_pages>(2)\t2.6.16\n"
14832 msgstr "B<migrate_pages>(2)\t2.6.16\n"
14835 #: build/C/man2/syscalls.2:341
14837 msgid "B<mincore>(2)\t2.4\n"
14838 msgstr "B<mincore>(2)\t2.4\n"
14841 #: build/C/man2/syscalls.2:342
14843 msgid "B<mkdir>(2)\t1.0\n"
14844 msgstr "B<mkdir>(2)\t1.0\n"
14847 #: build/C/man2/syscalls.2:343
14849 msgid "B<mkdirat>(2)\t2.6.16\n"
14850 msgstr "B<mkdirat>(2)\t2.6.16\n"
14853 #: build/C/man2/syscalls.2:344
14855 msgid "B<mknod>(2)\t1.0\n"
14856 msgstr "B<mknod>(2)\t1.0\n"
14859 #: build/C/man2/syscalls.2:345
14861 msgid "B<mknodat>(2)\t2.6.16\n"
14862 msgstr "B<mknodat>(2)\t2.6.16\n"
14865 #: build/C/man2/syscalls.2:346
14867 msgid "B<mlock>(2)\t2.0\n"
14868 msgstr "B<mlock>(2)\t2.0\n"
14871 #: build/C/man2/syscalls.2:347
14873 msgid "B<mlockall>(2)\t2.0\n"
14874 msgstr "B<mlockall>(2)\t2.0\n"
14877 #: build/C/man2/syscalls.2:348
14879 msgid "B<mmap>(2)\t1.0\n"
14880 msgstr "B<mmap>(2)\t1.0\n"
14883 #: build/C/man2/syscalls.2:349
14885 msgid "B<mmap2>(2)\t2.4\n"
14886 msgstr "B<mmap2>(2)\t2.4\n"
14889 #: build/C/man2/syscalls.2:350
14891 msgid "B<modify_ldt>(2)\t1.0\n"
14892 msgstr "B<modify_ldt>(2)\t1.0\n"
14895 #: build/C/man2/syscalls.2:351
14897 msgid "B<mount>(2)\t1.0\n"
14898 msgstr "B<mount>(2)\t1.0\n"
14901 #: build/C/man2/syscalls.2:352
14903 msgid "B<move_pages>(2)\t2.6.18\n"
14904 msgstr "B<move_pages>(2)\t2.6.18\n"
14907 #: build/C/man2/syscalls.2:353
14909 msgid "B<mprotect>(2)\t1.0\n"
14910 msgstr "B<mprotect>(2)\t1.0\n"
14913 #: build/C/man2/syscalls.2:354
14915 msgid "B<mq_getsetattr>(2)\t2.6.6\n"
14916 msgstr "B<mq_getsetattr>(2)\t2.6.6\n"
14918 #. Implements \fBmq_getattr\fP(3) and \fBmq_setattr\fP(3)
14920 #: build/C/man2/syscalls.2:356
14922 msgid "B<mq_notify>(2)\t2.6.6\n"
14923 msgstr "B<mq_notify>(2)\t2.6.6\n"
14926 #: build/C/man2/syscalls.2:357
14928 msgid "B<mq_open>(2)\t2.6.6\n"
14929 msgstr "B<mq_open>(2)\t2.6.6\n"
14932 #: build/C/man2/syscalls.2:358
14934 msgid "B<mq_timedreceive>(2)\t2.6.6\n"
14935 msgstr "B<mq_timedreceive>(2)\t2.6.6\n"
14938 #: build/C/man2/syscalls.2:359
14940 msgid "B<mq_timedsend>(2)\t2.6.6\n"
14941 msgstr "B<mq_timedsend>(2)\t2.6.6\n"
14944 #: build/C/man2/syscalls.2:360
14946 msgid "B<mq_unlink>(2)\t2.6.6\n"
14947 msgstr "B<mq_unlink>(2)\t2.6.6\n"
14950 #: build/C/man2/syscalls.2:361
14952 msgid "B<mremap>(2)\t2.0\n"
14953 msgstr "B<mremap>(2)\t2.0\n"
14956 #: build/C/man2/syscalls.2:362
14958 msgid "B<msgctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
14959 msgstr "B<msgctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
14962 #: build/C/man2/syscalls.2:363
14964 msgid "B<msgget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
14965 msgstr "B<msgget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
14968 #: build/C/man2/syscalls.2:364
14970 msgid "B<msgrcv>(2)\t2.0\tSee notes on B<ipc>(2)\n"
14971 msgstr "B<msgrcv>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
14974 #: build/C/man2/syscalls.2:365
14976 msgid "B<msgsnd>(2)\t2.0\tSee notes on B<ipc>(2)\n"
14977 msgstr "B<msgsnd>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
14980 #: build/C/man2/syscalls.2:366
14982 msgid "B<msync>(2)\t2.0\n"
14983 msgstr "B<msync>(2)\t2.0\n"
14985 #. \fBmultiplexer\fP(2) ?? __NR_multiplexer reserved on
14986 #. PowerPC, but unimplemented?
14988 #: build/C/man2/syscalls.2:369
14990 msgid "B<munlock>(2)\t2.0\n"
14991 msgstr "B<munlock>(2)\t2.0\n"
14994 #: build/C/man2/syscalls.2:370
14996 msgid "B<munlockall>(2)\t2.0\n"
14997 msgstr "B<munlockall>(2)\t2.0\n"
15000 #: build/C/man2/syscalls.2:371
15002 msgid "B<munmap>(2)\t1.0\n"
15003 msgstr "B<munmap>(2)\t1.0\n"
15006 #: build/C/man2/syscalls.2:372
15008 msgid "B<name_to_handle_at>(2)\t2.6.39\n"
15009 msgstr "B<name_to_handle_at>(2)\t2.6.39\n"
15012 #: build/C/man2/syscalls.2:373
15014 msgid "B<nanosleep>(2)\t2.0\n"
15015 msgstr "B<nanosleep>(2)\t2.0\n"
15018 #: build/C/man2/syscalls.2:374
15020 msgid "B<nfsservctl>(2)\t2.2\tRemoved in 3.1\n"
15021 msgstr "B<nfsservctl>(2)\t2.2\t3.1 で削除\n"
15024 #: build/C/man2/syscalls.2:375
15026 msgid "B<nice>(2)\t1.0\n"
15027 msgstr "B<nice>(2)\t1.0\n"
15030 #: build/C/man2/syscalls.2:376
15032 msgid "B<oldfstat>(2)\t1.0\n"
15033 msgstr "B<oldfstat>(2)\t1.0\n"
15036 #: build/C/man2/syscalls.2:377
15038 msgid "B<oldlstat>(2)\t1.0\n"
15039 msgstr "B<oldlstat>(2)\t1.0\n"
15042 #: build/C/man2/syscalls.2:378
15044 msgid "B<oldolduname>(2)\t1.0\n"
15045 msgstr "B<oldolduname>(2)\t1.0\n"
15048 #: build/C/man2/syscalls.2:379
15050 msgid "B<oldstat>(2)\t1.0\n"
15051 msgstr "B<oldstat>(2)\t1.0\n"
15054 #: build/C/man2/syscalls.2:380
15056 msgid "B<olduname>(2)\t1.0\n"
15057 msgstr "B<olduname>(2)\t1.0\n"
15060 #: build/C/man2/syscalls.2:381
15062 msgid "B<open>(2)\t1.0\n"
15063 msgstr "B<open>(2)\t1.0\n"
15066 #: build/C/man2/syscalls.2:382
15068 msgid "B<open_by_handle_at>(2)\t2.6.39\n"
15069 msgstr "B<open_by_handle_at>(2)\t2.6.39\n"
15072 #: build/C/man2/syscalls.2:383
15074 msgid "B<openat>(2)\t2.6.16\n"
15075 msgstr "B<openat>(2)\t2.6.16\n"
15078 #: build/C/man2/syscalls.2:384
15080 msgid "B<pause>(2)\t1.0\n"
15081 msgstr "B<pause>(2)\t1.0\n"
15084 #: build/C/man2/syscalls.2:385
15086 msgid "B<pciconfig_iobase>(2)\t2.2.15; 2.4\tNot on x86\n"
15087 msgstr "B<pciconfig_iobase>(2)\t2.2.15; 2.4\tx86 にはない\n"
15089 #. Alpha, PowerPC, ARM; not x86
15091 #: build/C/man2/syscalls.2:387
15093 msgid "B<pciconfig_read>(2)\t2.0.26; 2.2\tNot on x86\n"
15094 msgstr "B<pciconfig_read>(2)\t2.0.26; 2.2\tx86 にはない\n"
15096 #. , PowerPC, ARM; not x86
15098 #: build/C/man2/syscalls.2:389
15100 msgid "B<pciconfig_write>(2)\t2.0.26; 2.2\tNot on x86\n"
15101 msgstr "B<pciconfig_write>(2)\t2.0.26; 2.2\tx86 にはない\n"
15103 #. , PowerPC, ARM; not x86
15105 #: build/C/man2/syscalls.2:391
15107 msgid "B<perf_event_open>(2)\t2.6.31\tT{\n"
15108 msgstr "B<perf_event_open>(2)\t2.6.31\tT{\n"
15111 #: build/C/man2/syscalls.2:392
15113 msgid "Was perf_counter_open() in\n"
15114 msgstr "2.6.31 では perf_counter_open() であった;\n"
15117 #: build/C/man2/syscalls.2:394
15119 msgid "2.6.31; renamed in 2.6.32\n"
15120 msgstr "2.6.32 で名称変更\n"
15123 #: build/C/man2/syscalls.2:396
15125 msgid "B<personality>(2)\t1.2\n"
15126 msgstr "B<personality>(2)\t1.2\n"
15129 #: build/C/man2/syscalls.2:397
15131 msgid "B<perfctr>(2)\t2.2\tSparc; removed in 2.6.34\n"
15132 msgstr "B<perfctr>(2)\t2.2\tSparc; 2.6.34 で削除\n"
15134 #. commit c7d5a0050773e98d1094eaa9f2a1a793fafac300 removed perfctr()
15136 #: build/C/man2/syscalls.2:399
15138 msgid "B<perfmonctl>(2)\t2.4\tia64\n"
15139 msgstr "B<perfmonctl>(2)\t2.4\tia64\n"
15142 #: build/C/man2/syscalls.2:400
15144 msgid "B<pipe>(2)\t1.0\n"
15145 msgstr "B<pipe>(2)\t1.0\n"
15148 #: build/C/man2/syscalls.2:401
15150 msgid "B<pipe2>(2)\t2.6.27\n"
15151 msgstr "B<pipe2>(2)\t2.6.27\n"
15154 #: build/C/man2/syscalls.2:402
15156 msgid "B<pivot_root>(2)\t2.4\n"
15157 msgstr "B<pivot_root>(2)\t2.4\n"
15160 #: build/C/man2/syscalls.2:403
15162 msgid "B<poll>(2)\t2.0.36; 2.2\n"
15163 msgstr "B<poll>(2)\t2.0.36; 2.2\n"
15166 #: build/C/man2/syscalls.2:404
15168 msgid "B<ppc_rtas>(2)\t2.6.2\tPowerPC only\n"
15169 msgstr "B<ppc_rtas>(2)\t2.6.2\tPowerPC のみ\n"
15172 #: build/C/man2/syscalls.2:405
15174 msgid "B<ppoll>(2)\t2.6.16\n"
15175 msgstr "B<ppoll>(2)\t2.6.16\n"
15178 #: build/C/man2/syscalls.2:406
15180 msgid "B<prctl>(2)\t2.2\n"
15181 msgstr "B<prctl>(2)\t2.2\n"
15184 #: build/C/man2/syscalls.2:407
15186 msgid "B<pread64>(2)\t\tT{\n"
15187 msgstr "B<pread64>(2)\t\tT{\n"
15190 #: build/C/man2/syscalls.2:408
15192 msgid "Added as \"pread\" in 2.2;\n"
15193 msgstr "2.2 で \"pread\" として追加;\n"
15196 #: build/C/man2/syscalls.2:410
15198 msgid "renamed \"pread64\" in 2.6\n"
15199 msgstr "2.6 で \"pread64\" に名称変更\n"
15202 #: build/C/man2/syscalls.2:412
15204 msgid "B<preadv>(2)\t2.6.30\n"
15205 msgstr "B<preadv>(2)\t2.6.30\n"
15208 #: build/C/man2/syscalls.2:413
15210 msgid "B<prlimit>(2)\t2.6.36\n"
15211 msgstr "B<prlimit>(2)\t2.6.36\n"
15214 #: build/C/man2/syscalls.2:414
15216 msgid "B<prlimit64>(2)\t2.6.36\n"
15217 msgstr "B<prlimit64>(2)\t2.6.36\n"
15220 #: build/C/man2/syscalls.2:415
15222 msgid "B<process_vm_readv>(2)\t3.2\n"
15223 msgstr "B<process_vm_readv>(2)\t3.2\n"
15226 #: build/C/man2/syscalls.2:416
15228 msgid "B<process_vm_writev>(2)\t3.2\n"
15229 msgstr "B<process_vm_writev>(2)\t3.2\n"
15232 #: build/C/man2/syscalls.2:417
15234 msgid "B<pselect6>(2)\t2.6.16\n"
15235 msgstr "B<pselect6>(2)\t2.6.16\n"
15237 #. Implements \fBpselect\fP(2)
15239 #: build/C/man2/syscalls.2:419
15241 msgid "B<ptrace>(2)\t1.0\n"
15242 msgstr "B<ptrace>(2)\t1.0\n"
15245 #: build/C/man2/syscalls.2:420
15247 msgid "B<pwrite64>(2)\t\tT{\n"
15248 msgstr "B<pwrite64>(2)\t\tT{\n"
15251 #: build/C/man2/syscalls.2:421
15253 msgid "Added as \"pwrite\" in 2.2;\n"
15254 msgstr "2.2 で \"pwrite\" として追加;\n"
15257 #: build/C/man2/syscalls.2:423
15259 msgid "renamed \"pwrite64\" in 2.6\n"
15260 msgstr "2.6 で \"pwrite64\" に名称変更\n"
15263 #: build/C/man2/syscalls.2:425
15265 msgid "B<pwritev>(2)\t2.6.30\n"
15266 msgstr "B<pwritev>(2)\t2.6.30\n"
15269 #: build/C/man2/syscalls.2:426
15271 msgid "B<query_module>(2)\t2.2\tRemoved in 2.6\n"
15272 msgstr "B<query_module>(2)\t2.2\t2.6 で削除\n"
15275 #: build/C/man2/syscalls.2:427
15277 msgid "B<quotactl>(2)\t1.0\n"
15278 msgstr "B<quotactl>(2)\t1.0\n"
15281 #: build/C/man2/syscalls.2:428
15283 msgid "B<read>(2)\t1.0\n"
15284 msgstr "B<read>(2)\t1.0\n"
15287 #: build/C/man2/syscalls.2:429
15289 msgid "B<readahead>(2)\t2.4.13\n"
15290 msgstr "B<readahead>(2)\t2.4.13\n"
15293 #: build/C/man2/syscalls.2:430
15295 msgid "B<readdir>(2)\t1.0\n"
15296 msgstr "B<readdir>(2)\t1.0\n"
15298 #. Supersedes \fBgetdents\fP(2)
15300 #: build/C/man2/syscalls.2:432
15302 msgid "B<readlink>(2)\t1.0\n"
15303 msgstr "B<readlink>(2)\t1.0\n"
15306 #: build/C/man2/syscalls.2:433
15308 msgid "B<readlinkat>(2)\t2.6.16\n"
15309 msgstr "B<readlinkat>(2)\t2.6.16\n"
15312 #: build/C/man2/syscalls.2:434
15314 msgid "B<readv>(2)\t2.0\n"
15315 msgstr "B<readv>(2)\t2.0\n"
15318 #: build/C/man2/syscalls.2:435
15320 msgid "B<reboot>(2)\t1.0\n"
15321 msgstr "B<reboot>(2)\t1.0\n"
15324 #: build/C/man2/syscalls.2:436
15326 msgid "B<recv>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15327 msgstr "B<recv>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15330 #: build/C/man2/syscalls.2:437
15332 msgid "B<recvfrom>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15333 msgstr "B<recvfrom>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15336 #: build/C/man2/syscalls.2:438
15338 msgid "B<recvmsg>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15339 msgstr "B<recvmsg>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15342 #: build/C/man2/syscalls.2:439
15344 msgid "B<recvmmsg>(2)\t2.6.33\n"
15345 msgstr "B<recvmmsg>(2)\t2.6.33\n"
15348 #: build/C/man2/syscalls.2:440
15350 msgid "B<remap_file_pages>(2)\t2.6\tDeprecated since 3.16\n"
15351 msgstr "B<remap_file_pages>(2)\t2.6\t3.16 以降では非推奨\n"
15354 #: build/C/man2/syscalls.2:441
15356 msgid "B<removexattr>(2)\t2.6; 2.4.18\n"
15357 msgstr "B<removexattr>(2)\t2.6; 2.4.18\n"
15360 #: build/C/man2/syscalls.2:442
15362 msgid "B<rename>(2)\t1.0\n"
15363 msgstr "B<rename>(2)\t1.0\n"
15366 #: build/C/man2/syscalls.2:443
15368 msgid "B<renameat>(2)\t2.6.16\n"
15369 msgstr "B<renameat>(2)\t2.6.16\n"
15372 #: build/C/man2/syscalls.2:444
15374 msgid "B<renameat2>(2)\t3.15\n"
15375 msgstr "B<renameat2>(2)\t3.15\n"
15378 #: build/C/man2/syscalls.2:445
15380 msgid "B<request_key>(2)\t2.6.11\n"
15381 msgstr "B<request_key>(2)\t2.6.11\n"
15384 #: build/C/man2/syscalls.2:446
15386 msgid "B<restart_syscall>(2)\t2.6\n"
15387 msgstr "B<restart_syscall>(2)\t2.6\n"
15390 #: build/C/man2/syscalls.2:447
15392 msgid "B<rmdir>(2)\t1.0\n"
15393 msgstr "B<rmdir>(2)\t1.0\n"
15396 #: build/C/man2/syscalls.2:448
15398 msgid "B<rt_sigaction>(2)\t2.2\n"
15399 msgstr "B<rt_sigaction>(2)\t2.2\n"
15402 #: build/C/man2/syscalls.2:449
15404 msgid "B<rt_sigpending>(2)\t2.2\n"
15405 msgstr "B<rt_sigpending>(2)\t2.2\n"
15408 #: build/C/man2/syscalls.2:450
15410 msgid "B<rt_sigprocmask>(2)\t2.2\n"
15411 msgstr "B<rt_sigprocmask>(2)\t2.2\n"
15414 #: build/C/man2/syscalls.2:451
15416 msgid "B<rt_sigqueueinfo>(2)\t2.2\n"
15417 msgstr "B<rt_sigqueueinfo>(2)\t2.2\n"
15420 #: build/C/man2/syscalls.2:452
15422 msgid "B<rt_sigreturn>(2)\t2.2\n"
15423 msgstr "B<rt_sigreturn>(2)\t2.2\n"
15426 #: build/C/man2/syscalls.2:453
15428 msgid "B<rt_sigsuspend>(2)\t2.2\n"
15429 msgstr "B<rt_sigsuspend>(2)\t2.2\n"
15432 #: build/C/man2/syscalls.2:454
15434 msgid "B<rt_sigtimedwait>(2)\t2.2\n"
15435 msgstr "B<rt_sigtimedwait>(2)\t2.2\n"
15438 #: build/C/man2/syscalls.2:455
15440 msgid "B<rt_tgsigqueueinfo>(2)\t2.6.31\n"
15441 msgstr "B<rt_tgsigqueueinfo>(2)\t2.6.31\n"
15444 #: build/C/man2/syscalls.2:456
15446 msgid "B<s390_runtime_instr>(2)\t3.7\ts390 only\n"
15447 msgstr "B<s390_runtime_instr>(2)\t3.7\ts390 のみ\n"
15450 #: build/C/man2/syscalls.2:457
15452 msgid "B<s390_pci_mmio_read>(2)\t3.19\ts390 only\n"
15453 msgstr "B<s390_pci_mmio_read>(2)\t3.19\ts390 のみ\n"
15456 #: build/C/man2/syscalls.2:458
15458 msgid "B<s390_pci_mmio_write>(2)\t3.19\ts390 only\n"
15459 msgstr "B<s390_pci_mmio_write>(2)\t3.19\ts390 のみ\n"
15462 #: build/C/man2/syscalls.2:459
15464 msgid "B<sched_get_priority_max>(2)\t2.0\n"
15465 msgstr "B<sched_get_priority_max>(2)\t2.0\n"
15468 #: build/C/man2/syscalls.2:460
15470 msgid "B<sched_get_priority_min>(2)\t2.0\n"
15471 msgstr "B<sched_get_priority_min>(2)\t2.0\n"
15474 #: build/C/man2/syscalls.2:461
15476 msgid "B<sched_getaffinity>(2)\t2.6\n"
15477 msgstr "B<sched_getaffinity>(2)\t2.6\n"
15480 #: build/C/man2/syscalls.2:462
15482 msgid "B<sched_getattr>(2)\t3.14\n"
15483 msgstr "B<sched_getattr>(2)\t3.14\n"
15486 #: build/C/man2/syscalls.2:463
15488 msgid "B<sched_getparam>(2)\t2.0\n"
15489 msgstr "B<sched_getparam>(2)\t2.0\n"
15492 #: build/C/man2/syscalls.2:464
15494 msgid "B<sched_getscheduler>(2)\t2.0\n"
15495 msgstr "B<sched_getscheduler>(2)\t2.0\n"
15498 #: build/C/man2/syscalls.2:465
15500 msgid "B<sched_rr_get_interval>(2)\t2.0\n"
15501 msgstr "B<sched_rr_get_interval>(2)\t2.0\n"
15504 #: build/C/man2/syscalls.2:466
15506 msgid "B<sched_setaffinity>(2)\t2.6\n"
15507 msgstr "B<sched_setaffinity>(2)\t2.6\n"
15510 #: build/C/man2/syscalls.2:467
15512 msgid "B<sched_setattr>(2)\t3.14\n"
15513 msgstr "B<sched_setattr>(2)\t3.14\n"
15516 #: build/C/man2/syscalls.2:468
15518 msgid "B<sched_setparam>(2)\t2.0\n"
15519 msgstr "B<sched_setparam>(2)\t2.0\n"
15522 #: build/C/man2/syscalls.2:469
15524 msgid "B<sched_setscheduler>(2)\t2.0\n"
15525 msgstr "B<sched_setscheduler>(2)\t2.0\n"
15528 #: build/C/man2/syscalls.2:470
15530 msgid "B<sched_yield>(2)\t2.0\n"
15531 msgstr "B<sched_yield>(2)\t2.0\n"
15534 #: build/C/man2/syscalls.2:471
15536 msgid "B<seccomp>(2)\t3.17\n"
15537 msgstr "B<seccomp>(2)\t3.17\n"
15540 #: build/C/man2/syscalls.2:472
15542 msgid "B<select>(2)\t1.0\n"
15543 msgstr "B<select>(2)\t1.0\n"
15546 #: build/C/man2/syscalls.2:473
15548 msgid "B<semctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15549 msgstr "B<semctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15552 #: build/C/man2/syscalls.2:474
15554 msgid "B<semget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15555 msgstr "B<semget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15558 #: build/C/man2/syscalls.2:475
15560 msgid "B<semop>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15561 msgstr "B<semop>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15564 #: build/C/man2/syscalls.2:476
15566 msgid "B<semtimedop>(2)\t2.6; 2.4.22\n"
15567 msgstr "B<semtimedop>(2)\t2.6; 2.4.22\n"
15570 #: build/C/man2/syscalls.2:477
15572 msgid "B<send>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15573 msgstr "B<send>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15576 #: build/C/man2/syscalls.2:478
15578 msgid "B<sendfile>(2)\t2.2\n"
15579 msgstr "B<sendfile>(2)\t2.2\n"
15582 #: build/C/man2/syscalls.2:479
15584 msgid "B<sendfile64>(2)\t2.6; 2.4.19\n"
15585 msgstr "B<sendfile64>(2)\t2.6; 2.4.19\n"
15588 #: build/C/man2/syscalls.2:480
15590 msgid "B<sendmmsg>(2)\t3.0\n"
15591 msgstr "B<sendmmsg>(2)\t3.0\n"
15594 #: build/C/man2/syscalls.2:481
15596 msgid "B<sendmsg>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15597 msgstr "B<sendmsg>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15600 #: build/C/man2/syscalls.2:482
15602 msgid "B<sendto>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15603 msgstr "B<sendto>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15606 #: build/C/man2/syscalls.2:483
15608 msgid "B<set_mempolicy>(2)\t2.6.6\n"
15609 msgstr "B<set_mempolicy>(2)\t2.6.6\n"
15612 #: build/C/man2/syscalls.2:484
15614 msgid "B<set_robust_list>(2)\t2.6.17\n"
15615 msgstr "B<set_robust_list>(2)\t2.6.17\n"
15618 #: build/C/man2/syscalls.2:485
15620 msgid "B<set_thread_area>(2)\t2.6\n"
15621 msgstr "B<set_thread_area>(2)\t2.6\n"
15624 #: build/C/man2/syscalls.2:486
15626 msgid "B<set_tid_address>(2)\t2.6\n"
15627 msgstr "B<set_tid_address>(2)\t2.6\n"
15629 #. See http://lkml.org/lkml/2005/8/1/83
15630 #. "[PATCH] remove sys_set_zone_reclaim()"
15632 #: build/C/man2/syscalls.2:489
15634 msgid "B<setdomainname>(2)\t1.0\n"
15635 msgstr "B<setdomainname>(2)\t1.0\n"
15638 #: build/C/man2/syscalls.2:490
15640 msgid "B<setfsgid>(2)\t1.2\n"
15641 msgstr "B<setfsgid>(2)\t1.2\n"
15644 #: build/C/man2/syscalls.2:491
15646 msgid "B<setfsgid32>(2)\t2.4\n"
15647 msgstr "B<setfsgid32>(2)\t2.4\n"
15650 #: build/C/man2/syscalls.2:492
15652 msgid "B<setfsuid>(2)\t1.2\n"
15653 msgstr "B<setfsuid>(2)\t1.2\n"
15656 #: build/C/man2/syscalls.2:493
15658 msgid "B<setfsuid32>(2)\t2.4\n"
15659 msgstr "B<setfsuid32>(2)\t2.4\n"
15662 #: build/C/man2/syscalls.2:494
15664 msgid "B<setgid>(2)\t1.0\n"
15665 msgstr "B<setgid>(2)\t1.0\n"
15668 #: build/C/man2/syscalls.2:495
15670 msgid "B<setgid32>(2)\t2.4\n"
15671 msgstr "B<setgid32>(2)\t2.4\n"
15674 #: build/C/man2/syscalls.2:496
15676 msgid "B<setgroups>(2)\t1.0\n"
15677 msgstr "B<setgroups>(2)\t1.0\n"
15680 #: build/C/man2/syscalls.2:497
15682 msgid "B<setgroups32>(2)\t2.4\n"
15683 msgstr "B<setgroups32>(2)\t2.4\n"
15686 #: build/C/man2/syscalls.2:498
15688 msgid "B<sethostname>(2)\t1.0\n"
15689 msgstr "B<sethostname>(2)\t1.0\n"
15692 #: build/C/man2/syscalls.2:499
15694 msgid "B<setitimer>(2)\t1.0\n"
15695 msgstr "B<setitimer>(2)\t1.0\n"
15698 #: build/C/man2/syscalls.2:500
15700 msgid "B<setns>(2)\t3.0\n"
15701 msgstr "B<setns>(2)\t3.0\n"
15704 #: build/C/man2/syscalls.2:501
15706 msgid "B<setpgid>(2)\t1.0\n"
15707 msgstr "B<setpgid>(2)\t1.0\n"
15710 #: build/C/man2/syscalls.2:502
15712 msgid "B<setpriority>(2)\t1.0\n"
15713 msgstr "B<setpriority>(2)\t1.0\n"
15716 #: build/C/man2/syscalls.2:503
15718 msgid "B<setregid>(2)\t1.0\n"
15719 msgstr "B<setregid>(2)\t1.0\n"
15722 #: build/C/man2/syscalls.2:504
15724 msgid "B<setregid32>(2)\t2.4\n"
15725 msgstr "B<setregid32>(2)\t2.4\n"
15728 #: build/C/man2/syscalls.2:505
15730 msgid "B<setresgid>(2)\t2.2\n"
15731 msgstr "B<setresgid>(2)\t2.2\n"
15734 #: build/C/man2/syscalls.2:506
15736 msgid "B<setresgid32>(2)\t2.4\n"
15737 msgstr "B<setresgid32>(2)\t2.4\n"
15740 #: build/C/man2/syscalls.2:507
15742 msgid "B<setresuid>(2)\t2.2\n"
15743 msgstr "B<setresuid>(2)\t2.2\n"
15746 #: build/C/man2/syscalls.2:508
15748 msgid "B<setresuid32>(2)\t2.4\n"
15749 msgstr "B<setresuid32>(2)\t2.4\n"
15752 #: build/C/man2/syscalls.2:509
15754 msgid "B<setreuid>(2)\t1.0\n"
15755 msgstr "B<setreuid>(2)\t1.0\n"
15758 #: build/C/man2/syscalls.2:510
15760 msgid "B<setreuid32>(2)\t2.4\n"
15761 msgstr "B<setreuid32>(2)\t2.4\n"
15764 #: build/C/man2/syscalls.2:511
15766 msgid "B<setrlimit>(2)\t1.0\n"
15767 msgstr "B<setrlimit>(2)\t1.0\n"
15770 #: build/C/man2/syscalls.2:512
15772 msgid "B<setsid>(2)\t1.0\n"
15773 msgstr "B<setsid>(2)\t1.0\n"
15776 #: build/C/man2/syscalls.2:513
15778 msgid "B<setsockopt>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15779 msgstr "B<setsockopt>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15782 #: build/C/man2/syscalls.2:514
15784 msgid "B<settimeofday>(2)\t1.0\n"
15785 msgstr "B<settimeofday>(2)\t1.0\n"
15788 #: build/C/man2/syscalls.2:515
15790 msgid "B<setuid>(2)\t1.0\n"
15791 msgstr "B<setuid>(2)\t1.0\n"
15794 #: build/C/man2/syscalls.2:516
15796 msgid "B<setuid32>(2)\t2.4\n"
15797 msgstr "B<setuid32>(2)\t2.4\n"
15800 #: build/C/man2/syscalls.2:517
15802 msgid "B<setup>(2)\t1.0\tRemoved in 2.2\n"
15803 msgstr "B<setup>(2)\t1.0\t2.2 で削除\n"
15806 #: build/C/man2/syscalls.2:518
15808 msgid "B<setxattr>(2)\t2.6; 2.4.18\n"
15809 msgstr "B<setxattr>(2)\t2.6; 2.4.18\n"
15812 #: build/C/man2/syscalls.2:519
15814 msgid "B<sgetmask>(2)\t1.0\n"
15815 msgstr "B<sgetmask>(2)\t1.0\n"
15818 #: build/C/man2/syscalls.2:520
15820 msgid "B<shmat>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15821 msgstr "B<shmat>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15824 #: build/C/man2/syscalls.2:521
15826 msgid "B<shmctl>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15827 msgstr "B<shmctl>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15830 #: build/C/man2/syscalls.2:522
15832 msgid "B<shmdt>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15833 msgstr "B<shmdt>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15836 #: build/C/man2/syscalls.2:523
15838 msgid "B<shmget>(2)\t2.0\tSee notes on B<ipc>(2)\n"
15839 msgstr "B<shmget>(2)\t2.0\tB<ipc>(2) の「注意」の節を参照\n"
15842 #: build/C/man2/syscalls.2:524
15844 msgid "B<shutdown>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15845 msgstr "B<shutdown>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15848 #: build/C/man2/syscalls.2:525
15850 msgid "B<sigaction>(2)\t1.0\n"
15851 msgstr "B<sigaction>(2)\t1.0\n"
15854 #: build/C/man2/syscalls.2:526
15856 msgid "B<sigaltstack>(2)\t2.2\n"
15857 msgstr "B<sigaltstack>(2)\t2.2\n"
15860 #: build/C/man2/syscalls.2:527
15862 msgid "B<signal>(2)\t1.0\n"
15863 msgstr "B<signal>(2)\t1.0\n"
15866 #: build/C/man2/syscalls.2:528
15868 msgid "B<signalfd>(2)\t2.6.22\n"
15869 msgstr "B<signalfd>(2)\t2.6.22\n"
15872 #: build/C/man2/syscalls.2:529
15874 msgid "B<signalfd4>(2)\t2.6.27\n"
15875 msgstr "B<signalfd4>(2)\t2.6.27\n"
15878 #: build/C/man2/syscalls.2:530
15880 msgid "B<sigpending>(2)\t1.0\n"
15881 msgstr "B<sigpending>(2)\t1.0\n"
15884 #: build/C/man2/syscalls.2:531
15886 msgid "B<sigprocmask>(2)\t1.0\n"
15887 msgstr "B<sigprocmask>(2)\t1.0\n"
15890 #: build/C/man2/syscalls.2:532
15892 msgid "B<sigreturn>(2)\t1.0\n"
15893 msgstr "B<sigreturn>(2)\t1.0\n"
15896 #: build/C/man2/syscalls.2:533
15898 msgid "B<sigsuspend>(2)\t1.0\n"
15899 msgstr "B<sigsuspend>(2)\t1.0\n"
15902 #: build/C/man2/syscalls.2:534
15904 msgid "B<socket>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15905 msgstr "B<socket>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15908 #: build/C/man2/syscalls.2:535
15910 msgid "B<socketcall>(2)\t1.0\n"
15911 msgstr "B<socketcall>(2)\t1.0\n"
15913 #. Implements BSD socket calls
15915 #: build/C/man2/syscalls.2:537
15917 msgid "B<socketpair>(2)\t2.0\tSee notes on B<socketcall>(2)\n"
15918 msgstr "B<socketpair>(2)\t2.0\tB<socketcall>(2) の「注意」の節を参照\n"
15921 #: build/C/man2/syscalls.2:538
15923 msgid "B<splice>(2)\t2.6.17\n"
15924 msgstr "B<splice>(2)\t2.6.17\n"
15927 #: build/C/man2/syscalls.2:539
15929 msgid "B<spu_create>(2)\t2.6.16\tPowerPC only\n"
15930 msgstr "B<spu_create>(2)\t2.6.16\tPowerPC のみ\n"
15933 #: build/C/man2/syscalls.2:540
15935 msgid "B<spu_run>(2)\t2.6.16\tPowerPC only\n"
15936 msgstr "B<spu_run>(2)\t2.6.16\tPowerPC のみ\n"
15939 #: build/C/man2/syscalls.2:541
15941 msgid "B<ssetmask>(2)\t1.0\n"
15942 msgstr "B<ssetmask>(2)\t1.0\n"
15945 #: build/C/man2/syscalls.2:542
15947 msgid "B<stat>(2)\t1.0\n"
15948 msgstr "B<stat>(2)\t1.0\n"
15951 #: build/C/man2/syscalls.2:543
15953 msgid "B<stat64>(2)\t2.4\n"
15954 msgstr "B<stat64>(2)\t2.4\n"
15957 #: build/C/man2/syscalls.2:544
15959 msgid "B<statfs>(2)\t1.0\n"
15960 msgstr "B<statfs>(2)\t1.0\n"
15963 #: build/C/man2/syscalls.2:545
15965 msgid "B<statfs64>(2)\t2.6\n"
15966 msgstr "B<statfs64>(2)\t2.6\n"
15969 #: build/C/man2/syscalls.2:546
15971 msgid "B<stime>(2)\t1.0\n"
15972 msgstr "B<stime>(2)\t1.0\n"
15975 #: build/C/man2/syscalls.2:547
15977 msgid "B<subpage_prot>(2)\t2.6.25\tPowerPC only\n"
15978 msgstr "B<subpage_prot>(2)\t2.6.25\tPowerPC のみ\n"
15981 #: build/C/man2/syscalls.2:548
15983 msgid "B<swapoff>(2)\t1.0\n"
15984 msgstr "B<swapoff>(2)\t1.0\n"
15987 #: build/C/man2/syscalls.2:549
15989 msgid "B<swapon>(2)\t1.0\n"
15990 msgstr "B<swapon>(2)\t1.0\n"
15993 #: build/C/man2/syscalls.2:550
15995 msgid "B<symlink>(2)\t1.0\n"
15996 msgstr "B<symlink>(2)\t1.0\n"
15999 #: build/C/man2/syscalls.2:551
16001 msgid "B<symlinkat>(2)\t2.6.16\n"
16002 msgstr "B<symlinkat>(2)\t2.6.16\n"
16005 #: build/C/man2/syscalls.2:552
16007 msgid "B<sync>(2)\t1.0\n"
16008 msgstr "B<sync>(2)\t1.0\n"
16011 #: build/C/man2/syscalls.2:553
16013 msgid "B<sync_file_range>(2)\t2.6.17\n"
16014 msgstr "B<sync_file_range>(2)\t2.6.17\n"
16017 #: build/C/man2/syscalls.2:554
16019 msgid "B<sync_file_range2>(2)\t2.6.22\n"
16020 msgstr "B<sync_file_range2>(2)\t2.6.22\n"
16022 #. PowerPC, ARM, tile
16023 #. First appeared on ARM, as arm_sync_file_range(), but later renamed
16024 #. \fBsys_debug_setcontext\fP(2) ??? PowerPC if CONFIG_PPC32
16026 #: build/C/man2/syscalls.2:558
16028 msgid "B<syncfs>(2)\t2.6.39\n"
16029 msgstr "B<syncfs>(2)\t2.6.39\n"
16032 #: build/C/man2/syscalls.2:559
16034 msgid "B<sysfs>(2)\t1.2\n"
16035 msgstr "B<sysfs>(2)\t1.2\n"
16038 #: build/C/man2/syscalls.2:560
16040 msgid "B<sysinfo>(2)\t1.0\n"
16041 msgstr "B<sysinfo>(2)\t1.0\n"
16044 #: build/C/man2/syscalls.2:561
16046 msgid "B<syslog>(2)\t1.0\n"
16047 msgstr "B<syslog>(2)\t1.0\n"
16049 #. glibc interface is \fBklogctl\fP(3)
16051 #: build/C/man2/syscalls.2:563
16053 msgid "B<tee>(2)\t2.6.17\n"
16054 msgstr "B<tee>(2)\t2.6.17\n"
16057 #: build/C/man2/syscalls.2:564
16059 msgid "B<tgkill>(2)\t2.6\n"
16060 msgstr "B<tgkill>(2)\t2.6\n"
16063 #: build/C/man2/syscalls.2:565
16065 msgid "B<time>(2)\t1.0\n"
16066 msgstr "B<time>(2)\t1.0\n"
16069 #: build/C/man2/syscalls.2:566
16071 msgid "B<timer_create>(2)\t2.6\n"
16072 msgstr "B<timer_create>(2)\t2.6\n"
16075 #: build/C/man2/syscalls.2:567
16077 msgid "B<timer_delete>(2)\t2.6\n"
16078 msgstr "B<timer_delete>(2)\t2.6\n"
16081 #: build/C/man2/syscalls.2:568
16083 msgid "B<timer_getoverrun>(2)\t2.6\n"
16084 msgstr "B<timer_getoverrun>(2)\t2.6\n"
16087 #: build/C/man2/syscalls.2:569
16089 msgid "B<timer_gettime>(2)\t2.6\n"
16090 msgstr "B<timer_gettime>(2)\t2.6\n"
16093 #: build/C/man2/syscalls.2:570
16095 msgid "B<timer_settime>(2)\t2.6\n"
16096 msgstr "B<timer_settime>(2)\t2.6\n"
16099 #: build/C/man2/syscalls.2:571
16101 msgid "B<timerfd_create>(2)\t2.6.25\n"
16102 msgstr "B<timerfd_create>(2)\t2.6.25\n"
16105 #: build/C/man2/syscalls.2:572
16107 msgid "B<timerfd_gettime>(2)\t2.6.25\n"
16108 msgstr "B<timerfd_gettime>(2)\t2.6.25\n"
16111 #: build/C/man2/syscalls.2:573
16113 msgid "B<timerfd_settime>(2)\t2.6.25\n"
16114 msgstr "B<timerfd_settime>(2)\t2.6.25\n"
16117 #: build/C/man2/syscalls.2:574
16119 msgid "B<times>(2)\t1.0\n"
16120 msgstr "B<times>(2)\t1.0\n"
16123 #: build/C/man2/syscalls.2:575
16125 msgid "B<tkill>(2)\t2.6; 2.4.22\n"
16126 msgstr "B<tkill>(2)\t2.6; 2.4.22\n"
16129 #: build/C/man2/syscalls.2:576
16131 msgid "B<truncate>(2)\t1.0\n"
16132 msgstr "B<truncate>(2)\t1.0\n"
16135 #: build/C/man2/syscalls.2:577
16137 msgid "B<truncate64>(2)\t2.4\n"
16138 msgstr "B<truncate64>(2)\t2.4\n"
16141 #: build/C/man2/syscalls.2:578
16143 msgid "B<ugetrlimit>(2)\t2.4\n"
16144 msgstr "B<ugetrlimit>(2)\t2.4\n"
16147 #: build/C/man2/syscalls.2:579
16149 msgid "B<umask>(2)\t1.0\n"
16150 msgstr "B<umask>(2)\t1.0\n"
16153 #: build/C/man2/syscalls.2:580
16155 msgid "B<umount>(2)\t1.0\n"
16156 msgstr "B<umount>(2)\t1.0\n"
16158 #. sys_oldumount() -- __NR_umount
16160 #: build/C/man2/syscalls.2:582
16162 msgid "B<umount2>(2)\t2.2\n"
16163 msgstr "B<umount2>(2)\t2.2\n"
16165 #. sys_umount() -- __NR_umount2
16167 #: build/C/man2/syscalls.2:584
16169 msgid "B<uname>(2)\t1.0\n"
16170 msgstr "B<uname>(2)\t1.0\n"
16173 #: build/C/man2/syscalls.2:585
16175 msgid "B<unlink>(2)\t1.0\n"
16176 msgstr "B<unlink>(2)\t1.0\n"
16179 #: build/C/man2/syscalls.2:586
16181 msgid "B<unlinkat>(2)\t2.6.16\n"
16182 msgstr "B<unlinkat>(2)\t2.6.16\n"
16185 #: build/C/man2/syscalls.2:587
16187 msgid "B<unshare>(2)\t2.6.16\n"
16188 msgstr "B<unshare>(2)\t2.6.16\n"
16191 #: build/C/man2/syscalls.2:588
16193 msgid "B<uselib>(2)\t1.0\n"
16194 msgstr "B<uselib>(2)\t1.0\n"
16197 #: build/C/man2/syscalls.2:589
16199 msgid "B<ustat>(2)\t1.0\n"
16200 msgstr "B<ustat>(2)\t1.0\n"
16203 #: build/C/man2/syscalls.2:590
16205 msgid "B<utime>(2)\t1.0\n"
16206 msgstr "B<utime>(2)\t1.0\n"
16209 #: build/C/man2/syscalls.2:591
16211 msgid "B<utimensat>(2)\t2.6.22\n"
16212 msgstr "B<utimensat>(2)\t2.6.22\n"
16215 #: build/C/man2/syscalls.2:592
16217 msgid "B<utimes>(2)\t2.2\n"
16218 msgstr "B<utimes>(2)\t2.2\n"
16221 #: build/C/man2/syscalls.2:593
16223 msgid "B<utrap_install>(2)\t2.2\tSparc only\n"
16224 msgstr "B<utrap_install>(2)\t2.2\tSparc のみ\n"
16226 #. FIXME . document utrap_install()
16227 #. There's a man page for Solaris 5.11
16229 #: build/C/man2/syscalls.2:596
16231 msgid "B<vfork>(2)\t2.2\n"
16232 msgstr "B<vfork>(2)\t2.2\n"
16235 #: build/C/man2/syscalls.2:597
16237 msgid "B<vhangup>(2)\t1.0\n"
16238 msgstr "B<vhangup>(2)\t1.0\n"
16241 #: build/C/man2/syscalls.2:598
16243 msgid "B<vm86old>(2)\t1.0\tT{\n"
16244 msgstr "B<vm86old>(2)\t1.0\tT{\n"
16247 #: build/C/man2/syscalls.2:599
16249 msgid "Was \"vm86\"; renamed in\n"
16250 msgstr "以前は \"vm86\";\n"
16253 #: build/C/man2/syscalls.2:600
16255 msgid "2.0.28/2.2\n"
16256 msgstr "2.0.28/2.2 で改名された\n"
16259 #: build/C/man2/syscalls.2:602
16261 msgid "B<vm86>(2)\t2.0.28; 2.2\n"
16262 msgstr "B<vm86>(2)\t2.0.28; 2.2\n"
16265 #: build/C/man2/syscalls.2:603
16267 msgid "B<vmsplice>(2)\t2.6.17\n"
16268 msgstr "B<vmsplice>(2)\t2.6.17\n"
16271 #: build/C/man2/syscalls.2:604
16273 msgid "B<wait4>(2)\t1.0\n"
16274 msgstr "B<wait4>(2)\t1.0\n"
16277 #: build/C/man2/syscalls.2:605
16279 msgid "B<waitid>(2)\t2.6.10\n"
16280 msgstr "B<waitid>(2)\t2.6.10\n"
16283 #: build/C/man2/syscalls.2:606
16285 msgid "B<waitpid>(2)\t1.0\n"
16286 msgstr "B<waitpid>(2)\t1.0\n"
16289 #: build/C/man2/syscalls.2:607
16291 msgid "B<write>(2)\t1.0\n"
16292 msgstr "B<write>(2)\t1.0\n"
16295 #: build/C/man2/syscalls.2:608
16297 msgid "B<writev>(2)\t2.0\n"
16298 msgstr "B<writev>(2)\t2.0\n"
16300 #. type: Plain text
16301 #: build/C/man2/syscalls.2:617
16302 msgid "On many platforms, including x86-32, socket calls are all multiplexed (via glibc wrapper functions) through B<socketcall>(2) and similarly System\\ V IPC calls are multiplexed through B<ipc>(2)."
16303 msgstr "x86-32 を含む多くのプラットフォームでは、ソケット関連のシステムコールは (glibc のラッパー関数を介してだが) すべて B<socketcall>(2) 経由に多重されている。 同様に、System\\ V IPC 関連のシステムコールは B<ipc>(2) 経由に多重されている。"
16305 #. __NR_afs_syscall is 53 on Linux 2.6.22/i386
16306 #. __NR_break is 17 on Linux 2.6.22/i386
16307 #. __NR_ftime is 35 on Linux 2.6.22/i386
16308 #. __NR_getpmsg is 188 on Linux 2.6.22/i386
16309 #. __NR_gtty is 32 on Linux 2.6.22/i386
16310 #. __NR_idle is 112 on Linux 2.6.22/i386
16311 #. __NR_lock is 53 on Linux 2.6.22/i386
16312 #. __NR_madvise1 is 219 on Linux 2.6.22/i386
16313 #. __NR_mpx is 66 on Linux 2.6.22/i386
16314 #. Slot has been reused
16315 #. __NR_prof is 44 on Linux 2.6.22/i386
16316 #. __NR_profil is 98 on Linux 2.6.22/i386
16317 #. __NR_putpmsg is 189 on Linux 2.6.22/i386
16318 #. __NR_security is 223 on Linux 2.4/i386
16319 #. __NR_security is 223 on Linux 2.4/i386; absent on 2.6/i386, present
16320 #. on a couple of 2.6 architectures
16321 #. __NR_stty is 31 on Linux 2.6.22/i386
16322 #. The security call is for future use.
16323 #. __NR_tuxcall is 184 on x86_64, also on PPC and alpha
16324 #. __NR_ulimit is 58 on Linux 2.6.22/i386
16325 #. __NR_vserver is 273 on Linux 2.6.22/i386
16326 #. type: Plain text
16327 #: build/C/man2/syscalls.2:662
16328 msgid "Although slots are reserved for them in the system call table, the following system calls are not implemented in the standard kernel: B<afs_syscall>(2), B<break>(2), B<ftime>(2), B<getpmsg>(2), B<gtty>(2), B<idle>(2), B<lock>(2), B<madvise1>(2), B<mpx>(2), B<phys>(2), B<prof>(2), B<profil>(2), B<putpmsg>(2), B<security>(2), B<stty>(2), B<tuxcall>(2), B<ulimit>(2), and B<vserver>(2) (see also B<unimplemented>(2)). However, B<ftime>(3), B<profil>(3), and B<ulimit>(3) exist as library routines. The slot for B<phys>(2) is in use since kernel 2.1.116 for B<umount>(2); B<phys>(2) will never be implemented. The B<getpmsg>(2) and B<putpmsg>(2) calls are for kernels patched to support STREAMS, and may never be in the standard kernel."
16330 "以下のシステムコールは、システムコールテーブルにスロットが予約されているが、\n"
16331 "標準のカーネルには実装されていない:\n"
16332 "B<afs_syscall>(2), B<break>(2), B<ftime>(2), B<getpmsg>(2), B<gtty>(2),\n"
16333 "B<idle>(2), B<lock>(2), B<madvise1>(2), B<mpx>(2), B<phys>(2), B<prof>(2),\n"
16334 "B<profil>(2), B<putpmsg>(2), B<security>(2), B<stty>(2), B<tuxcall>(2),\n"
16335 "B<ulimit>(2), B<vserver>(2) (B<unimplemented>(2) も参照)。\n"
16336 "しかし、B<ftime>(3), B<profil>(3), B<ulimit>(3) はライブラリルーチンとして\n"
16337 "実装されている。 B<phys>(2) 用の場所は 2.1.116 以降では B<umount>(2) 用に\n"
16338 "使用されている; 将来においても B<phys>(2) は実装されない。\n"
16339 "B<getpmsg>(2) と B<putpmsg>(2) は STREAMS 対応のパッチが適用された\n"
16340 "カーネル用であり、標準のカーネルに登場することはないかもしれない。"
16342 #. type: Plain text
16343 #: build/C/man2/syscalls.2:667
16344 msgid "There was briefly B<set_zone_reclaim>(2), added in Linux 2.6.13, and removed in 2.6.16; this system call was never available to user space."
16345 msgstr "B<set_zone_reclaim>(2) は少しの間だけ存在した。 Linux 2.6.13 で追加され、2.6.16 で削除された。このシステムコールがユーザー空間から使える状態になったことはない。"
16347 #. type: Plain text
16348 #: build/C/man2/syscalls.2:684
16349 msgid "Roughly speaking, the code belonging to the system call with number __NR_xxx defined in I</usr/include/asm/unistd.h> can be found in the Linux kernel source in the routine I<sys_xxx>(). (The dispatch table for i386 can be found in I</usr/src/linux/arch/i386/kernel/entry.S>.) There are many exceptions, however, mostly because older system calls were superseded by newer ones, and this has been treated somewhat unsystematically. On platforms with proprietary operating-system emulation, such as parisc, sparc, sparc64, and alpha, there are many additional system calls; mips64 also contains a full set of 32-bit system calls."
16350 msgstr "たいていは、 I</usr/include/asm/unistd.h> で定義されている番号 __NR_xxx のシステムコールのコードは、 Linux カーネルソースの I<sys_xxx>() というルーチンに書かれている (i386 における実行テーブルは I</usr/src/linux/arch/i386/kernel/entry.S> に書かれている)。 しかしこれには多くの例外がある。古いシステムコールは新版に置き換えられて きたが、この置き換えはあまり体系立てて行われて来なかったからである。 parisc, sparc, sparc64, alpha といったプロプリエタリなオペレーティングシステムのエミュレーション機能があるプラットフォームでは、多くの追加システムコールがある。 mips64 には、32 ビットシステムコールのフルセットも含まれている。"
16352 #. type: Plain text
16353 #: build/C/man2/syscalls.2:703
16354 msgid "Over time, changes to the interfaces of some system calls have been necessary. One reason for such changes was the need to increase the size of structures or scalar values passed to the system call. Because of these changes, there are now various groups of related system calls (e.g., B<truncate>(2) and B<truncate64>(2)) which perform similar tasks, but which vary in details such as the size of their arguments. (As noted earlier, applications are generally unaware of this: the glibc wrapper functions do some work to ensure that the right system call is invoked, and that ABI compatibility is preserved for old binaries.) Examples of systems calls that exist in multiple versions are the following:"
16355 msgstr "時間の経過とともに、いくつかのシステムコールではインタフェースの 変更が必要になってきた。 こうした変更の理由の一つは、システムコールに渡される構造体やスカラー値 のサイズを増やす必要があることだった。 これらの変更の結果、現在では、同様の処理を実行するが 引き数のサイズなどの詳細は異なる、一連のシステムコール群が いくつか存在する (例えば、 B<truncate>(2) と B<truncate64>(2))。 (すでに述べたように、 一般にはアプリケーションがこのことを意識することはない。 glibc のラッパー関数が、適切なシステムコールを起動し、古いバイナリに 対して ABI レベルでの互換性を保持することを保証する処理を行っている。) 複数のバージョンが存在するシステムコールの例を以下に挙げる。"
16357 #. e.g., on 2.6.22/i386: __NR_oldstat 18, __NR_stat 106, __NR_stat64 195
16358 #. The stat system calls deal with three different data structures,
16359 #. defined in include/asm-i386/stat.h: __old_kernel_stat, stat, stat64
16360 #. type: Plain text
16361 #: build/C/man2/syscalls.2:724
16362 msgid "By now there are three different versions of B<stat>(2): I<sys_stat>() (slot I<__NR_oldstat>), I<sys_newstat>() (slot I<__NR_stat>), and I<sys_stat64>() (slot I<__NR_stat64>), with the last being the most current. A similar story applies for B<lstat>(2) and B<fstat>(2)."
16363 msgstr "これまでに、 B<stat>(2) には 3 種類の異なるバージョンが存在する。 I<sys_stat>() (スロットは I<__NR_oldstat>)、 I<sys_newstat>() (スロットは I<__NR_stat>)、 I<sys_stat64>() (カーネル 2.4 で導入; スロットは I<__NR_stat64>)。 3つのうち最後のものが最新である。 B<lstat>(2) と B<fstat>(2) についても同様である。"
16365 #. type: Plain text
16366 #: build/C/man2/syscalls.2:735
16367 msgid "Similarly, the defines I<__NR_oldolduname>, I<__NR_olduname>, and I<__NR_uname> refer to the routines I<sys_olduname>(), I<sys_uname>() and I<sys_newuname>()."
16368 msgstr "また、 I<__NR_oldolduname>, I<__NR_olduname>, I<__NR_uname> という定義は、それぞれ I<sys_olduname>(), I<sys_uname>(), I<sys_newuname>() というルーチンを参照している。"
16370 #. type: Plain text
16371 #: build/C/man2/syscalls.2:742
16372 msgid "In Linux 2.0, a new version of B<vm86>(2) appeared, with the old and the new kernel routines being named I<sys_vm86old>() and I<sys_vm86>()."
16373 msgstr "Linux 2.0 では、 B<vm86>(2) の新バージョンが登場した。カーネルルーチンの 古いバージョン、新しいバージョンはそれぞれ I<sys_vm86old>(), I<sys_vm86>() という名前である。"
16375 #. type: Plain text
16376 #: build/C/man2/syscalls.2:753
16377 msgid "In Linux 2.4, a new version of B<getrlimit>(2) appeared, with the old and the new kernel routines being named I<sys_old_getrlimit>() (slot I<__NR_getrlimit>) and I<sys_getrlimit>() (slot I<__NR_ugetrlimit>)."
16378 msgstr "Linux 2.4 では、 B<getrlimit>(2) の新バージョンが登場した。カーネルルーチンの 古いバージョン、新しいバージョンはそれぞれ I<sys_old_getrlimit>() (スロットは I<__NR_getrlimit>), I<sys_getrlimit>() (スロットは I<__NR_ugetrlimit>) という名前である。"
16380 #. 64-bit off_t changes: ftruncate64, *stat64,
16381 #. fcntl64 (because of the flock structure), getdents64, *statfs64
16382 #. type: Plain text
16383 #: build/C/man2/syscalls.2:765
16384 msgid "Linux 2.4 increased the size of user and group IDs from 16 to 32 bits. To support this change, a range of system calls were added (e.g., B<chown32>(2), B<getuid32>(2), B<getgroups32>(2), B<setresuid32>(2)), superseding earlier calls of the same name without the \"32\" suffix."
16385 msgstr "Linux 2.4 で、ユーザー ID とグループ ID のサイズが 16 ビットから 32 ビットに増えた。 この変更に対応するため、いくつかのシステムコールが追加された (B<chown32>(2), B<getuid32>(2), B<getgroups32>(2), B<setresuid32>(2) など)。 これらのシステムコールが、末尾の \"32\" が付かない同名の 古いバージョンに代わって使われるようになった。"
16387 #. type: Plain text
16388 #: build/C/man2/syscalls.2:782
16389 msgid "Linux 2.4 added support for applications on 32-bit architectures to access large files (i.e., files for which the sizes and file offsets can't be represented in 32 bits.) To support this change, replacements were required for system calls that deal with file offsets and sizes. Thus the following system calls were added: B<fcntl64>(2), B<ftruncate64>(2), B<getdents64>(2), B<stat64>(2), B<statfs64>(2), and their analogs that work with file descriptors or symbolic links. These system calls supersede the older system calls which, except in the case of the \"stat\" calls, have the same name without the \"64\" suffix."
16390 msgstr "Linux 2.4 では、32 ビットアーキテクチャ上のアプリケーションが 大きなファイル (つまり、32 ビットでは表現できないサイズや ファイルオフセットが必要なファイル) にアクセスできるようになった。 この変更に対応するため、ファイルオフセットとサイズを扱う システムコールの置き換えが必要となった。その結果、 B<fcntl64>(2), B<ftruncate64>(2), B<getdents64>(2), B<stat64>(2), B<statfs64>(2) と、ファイルディスクリプターやシンボリックリンクで同じ機能を持つ システムコールが追加された。 これらのシステムコールが、末尾の \"64\" が付かない同名の 古いバージョンに代わって使われるようになった。 但し、\"stat\" 系のシステムコールはその限りではない。"
16392 #. type: Plain text
16393 #: build/C/man2/syscalls.2:786
16394 msgid "On newer platforms that only have 64-bit file access and 32-bit uids (e.g., alpha, ia64, s390x) there are no *64 or *32 calls. Where the *64 and *32 calls exist, the other versions are obsolete."
16395 msgstr "64-bit ファイルアクセスと 32-bit UID のみを持つ 新しいプラットフォーム (alpha, ia64, s390x など) では、 *64 や *32 という名前のシステムコールはない。 *64 や *32 というシステムコールが存在する場合、 *64 や *32 がついていないシステムコールは廃止扱いである。"
16397 #. type: Plain text
16398 #: build/C/man2/syscalls.2:794
16399 msgid "The I<rt_sig*> calls were added in kernel 2.2 to support the addition of real-time signals (see B<signal>(7)). These system calls supersede the older system calls of the same name without the \"rt_\" prefix."
16400 msgstr "リアルタイムシグナル (B<signal>(7) 参照) への対応を追加するために、 I<rt_sig*> 系のシステムコールがカーネル 2.2 で追加された。 これらのシステムコールが、先頭に \"rt_\" が付かない同名の 古いバージョンに代わって使われるようになった。"
16402 #. (used by libc 6)
16404 #. Two system call numbers,
16405 #. .IR __NR__llseek
16407 #. .IR __NR__sysctl
16408 #. have an additional underscore absent in
16409 #. .IR sys_llseek ()
16411 #. .IR sys_sysctl ().
16412 #. In kernel 2.1.81,
16416 #. were swapped; that is,
16418 #. was added with the semantics that were then current for
16420 #. and the semantics of the latter call were changed to what
16422 #. type: Plain text
16423 #: build/C/man2/syscalls.2:844
16424 msgid "The B<select>(2) and B<mmap>(2) system calls use five or more arguments, which caused problems in the way argument passing on the i386 used to be set up. Thus, while other architectures have I<sys_select>() and I<sys_mmap>() corresponding to I<__NR_select> and I<__NR_mmap>, on i386 one finds I<old_select>() and I<old_mmap>() (routines that use a pointer to a argument block) instead. These days passing five arguments is not a problem any more, and there is a I<__NR__newselect> that corresponds directly to I<sys_select>() and similarly I<__NR_mmap2>."
16425 msgstr "B<select>(2) と B<mmap>(2) は 5つもしくはそれ以上の引き数を使用しており、 i386 では引き数の受け渡しに問題が生じる。 そのため、他のアーキテクチャでは I<__NR_select> と I<__NR_mmap> に対応する I<sys_select>() と I<sys_mmap>() が存在するが、i386 では代わりに I<old_select>() と I<old_mmap>() というルーチンがある (これらのルーチンは引き数ブロックへのポインタを使用する)。 現在では 5つの引き数を渡すことはもはや問題ではなくなっており、 I<__NR__newselect> は I<sys_select>() に直接対応するようになっている。 I<__NR_mmap2> についても同様である。"
16427 #. type: Plain text
16428 #: build/C/man2/syscalls.2:851
16429 msgid "B<intro>(2), B<syscall>(2), B<unimplemented>(2), B<errno>(3), B<libc>(7), B<vdso>(7)"
16430 msgstr "B<intro>(2), B<syscall>(2), B<unimplemented>(2), B<errno>(3), B<libc>(7), B<vdso>(7)"
16433 #: build/C/man3/sysconf.3:27
16438 #. type: Plain text
16439 #: build/C/man3/sysconf.3:30
16440 msgid "sysconf - get configuration information at run time"
16441 msgstr "sysconf - 動作中に設定情報を取得する"
16443 #. type: Plain text
16444 #: build/C/man3/sysconf.3:35
16446 msgid "B<long sysconf(int >I<name>B<);>\n"
16447 msgstr "B<long sysconf(int >I<name>B<);>\n"
16449 #. type: Plain text
16450 #: build/C/man3/sysconf.3:40
16451 msgid "POSIX allows an application to test at compile or run time whether certain options are supported, or what the value is of certain configurable constants or limits."
16452 msgstr "POSIX では、アプリケーションがコンパイル時や実行時に、 特定のオプションがサポートされているかや、 設定可能な特定の定数や制限 (limits) がどんな値かをテストすることができる。"
16454 #. type: Plain text
16455 #: build/C/man3/sysconf.3:46
16456 msgid "At compile time this is done by including I<E<lt>unistd.hE<gt>> and/or I<E<lt>limits.hE<gt>> and testing the value of certain macros."
16457 msgstr "コンパイル時に行うには、 I<E<lt>unistd.hE<gt>> と I<E<lt>limits.hE<gt>> の両方もしくは一方をインクルードし、 特定のマクロの値を確認する。"
16459 #. type: Plain text
16460 #: build/C/man3/sysconf.3:56
16461 msgid "At run time, one can ask for numerical values using the present function B<sysconf>(). One can ask for numerical values that may depend on the filesystem a file is in using the calls B<fpathconf>(3) and B<pathconf>(3). One can ask for string values using B<confstr>(3)."
16462 msgstr "実行時には、ここで説明する関数 B<sysconf>() を使って数値を問い合わせることができる。 ファイルが存在するファイルシステムに関する数値は、 B<fpathconf>(3) と B<pathconf>(3) を使って確認できる。 文字列の値は B<confstr>(3) を使って確認できる。"
16464 #. except that sysconf(_SC_OPEN_MAX) may change answer after a call
16465 #. to setrlimit( ) which changes the RLIMIT_NOFILE soft limit
16466 #. type: Plain text
16467 #: build/C/man3/sysconf.3:61
16468 msgid "The values obtained from these functions are system configuration constants. They do not change during the lifetime of a process."
16469 msgstr "これらの関数で取得される値は設定可能なシステム定数である。 これらはプロセスの生存期間の間は変化しない。"
16471 #. and 999 to indicate support for options no longer present in the latest
16473 #. type: Plain text
16474 #: build/C/man3/sysconf.3:84
16475 msgid "For options, typically, there is a constant B<_POSIX_FOO> that may be defined in I<E<lt>unistd.hE<gt>>. If it is undefined, one should ask at run time. If it is defined to -1, then the option is not supported. If it is defined to 0, then relevant functions and headers exist, but one has to ask at run time what degree of support is available. If it is defined to a value other than -1 or 0, then the option is supported. Usually the value (such as 200112L) indicates the year and month of the POSIX revision describing the option. Glibc uses the value 1 to indicate support as long as the POSIX revision has not been published yet. The B<sysconf>() argument will be B<_SC_FOO>. For a list of options, see B<posixoptions>(7)."
16476 msgstr "オプションを確認できるように、たいていは I<E<lt>unistd.hE<gt>> で定数 B<_POSIX_FOO> が定義されている。 定義されていないときは、実行時に問い合わせを行う必要がある。 その値が -1 に定義されているときは、そのオプションはサポートされていない。 0 に定義されているときは、関連する関数やヘッダファイルが存在するが、 どの程度サポートされているかは実行時に確認しなければならない。 -1 でも 0 でもない値に定義されているときは、そのオプションがサポート されている。通常は、そのオプションについて記載した POSIX の改訂年月 を示す値になっている (例えば 200112L)。 glibc では 1 が設定されていると、そのオプションはサポートされているが、 POSIX の改訂版がまだ発行されていないことを示す。 B<sysconf>() の引き数には B<_SC_FOO> を指定する。 オプションのリストについては B<posixoptions>(7) を参照のこと。"
16478 #. type: Plain text
16479 #: build/C/man3/sysconf.3:104
16480 msgid "For variables or limits, typically, there is a constant B<_FOO>, maybe defined in I<E<lt>limits.hE<gt>>, or B<_POSIX_FOO>, maybe defined in I<E<lt>unistd.hE<gt>>. The constant will not be defined if the limit is unspecified. If the constant is defined, it gives a guaranteed value, and a greater value might actually be supported. If an application wants to take advantage of values which may change between systems, a call to B<sysconf>() can be made. The B<sysconf>() argument will be B<_SC_FOO>."
16481 msgstr "変数や制限を確認できるように、たいていは、 I<E<lt>limits.hE<gt>> で定数 B<_FOO> が、 I<E<lt>unistd.hE<gt>> で B<_POSIX_FOO> が定義されている。 制限が規定されていない場合は定数は定義されない。 定数が定義されているときには、その定数は保証できる値であり、 実際にはもっと大きな値がサポートされていることもある。 アプリケーションがシステム毎に変化する値を利用したい場合には、 B<sysconf>() を呼び出すことで実現できる。 B<sysconf>() の引き数には B<_SC_FOO> を指定する。"
16484 #: build/C/man3/sysconf.3:104
16486 msgid "POSIX.1 variables"
16487 msgstr "POSIX.1 変数"
16489 #. type: Plain text
16490 #: build/C/man3/sysconf.3:109
16491 msgid "We give the name of the variable, the name of the B<sysconf>() argument used to inquire about its value, and a short description."
16492 msgstr "変数名、その値を取得するのに使われる B<sysconf>() のパラメーター名、簡単な説明を以下に示す。"
16494 #. [for the moment: only the things that are unconditionally present]
16496 #. .BR AIO_LISTIO_MAX " - " _SC_AIO_LISTIO_MAX
16497 #. (if _POSIX_ASYNCHRONOUS_IO)
16498 #. Maximum number of I/O operations in a single list I/O call.
16499 #. Must not be less than _POSIX_AIO_LISTIO_MAX.
16501 #. .BR AIO_MAX " - " _SC_AIO_MAX
16502 #. (if _POSIX_ASYNCHRONOUS_IO)
16503 #. Maximum number of outstanding asynchronous I/O operations.
16504 #. Must not be less than _POSIX_AIO_MAX.
16506 #. .BR AIO_PRIO_DELTA_MAX " - " _SC_AIO_PRIO_DELTA_MAX
16507 #. (if _POSIX_ASYNCHRONOUS_IO)
16508 #. The maximum amount by which a process can decrease its
16509 #. asynchronous I/O priority level from its own scheduling priority.
16510 #. Must be nonnegative.
16511 #. type: Plain text
16512 #: build/C/man3/sysconf.3:128
16513 msgid "First, the POSIX.1 compatible values."
16514 msgstr "まず POSIX.1 互換の変数を示す。"
16517 #: build/C/man3/sysconf.3:128
16519 msgid "B<ARG_MAX> - B<_SC_ARG_MAX>"
16520 msgstr "B<ARG_MAX> - B<_SC_ARG_MAX>"
16522 #. type: Plain text
16523 #: build/C/man3/sysconf.3:136
16524 msgid "The maximum length of the arguments to the B<exec>(3) family of functions. Must not be less than B<_POSIX_ARG_MAX> (4096)."
16525 msgstr "B<exec>(3) 関数群の引き数の最大長。 B<_POSIX_ARG_MAX> (4096) 未満であってはならない。"
16528 #: build/C/man3/sysconf.3:136
16530 msgid "B<CHILD_MAX> - B<_SC_CHILD_MAX>"
16531 msgstr "B<CHILD_MAX> - B<_SC_CHILD_MAX>"
16533 #. type: Plain text
16534 #: build/C/man3/sysconf.3:142
16535 msgid "The maximum number of simultaneous processes per user ID. Must not be less than B<_POSIX_CHILD_MAX> (25)."
16536 msgstr "ユーザーID あたりの同時に存在できるプロセスの最大数。 B<_POSIX_CHILD_MAX> (25) 未満であってはならない。"
16539 #: build/C/man3/sysconf.3:142
16541 msgid "B<HOST_NAME_MAX> - B<_SC_HOST_NAME_MAX>"
16542 msgstr "B<HOST_NAME_MAX> - B<_SC_HOST_NAME_MAX>"
16544 #. type: Plain text
16545 #: build/C/man3/sysconf.3:150
16546 msgid "Maximum length of a hostname, not including the terminating null byte, as returned by B<gethostname>(2). Must not be less than B<_POSIX_HOST_NAME_MAX> (255)."
16547 msgstr "B<gethostname>(2) で返されるホスト名の最大長。末尾のヌルバイトは長さに含まれない。 B<_POSIX_HOST_NAME_MAX> (255) 未満であってはならない。"
16550 #: build/C/man3/sysconf.3:150
16552 msgid "B<LOGIN_NAME_MAX> - B<_SC_LOGIN_NAME_MAX>"
16553 msgstr "B<LOGIN_NAME_MAX> - B<_SC_LOGIN_NAME_MAX>"
16555 #. type: Plain text
16556 #: build/C/man3/sysconf.3:156
16557 msgid "Maximum length of a login name, including the terminating null byte. Must not be less than B<_POSIX_LOGIN_NAME_MAX> (9)."
16558 msgstr "ログイン名の長さの最大値。末尾のヌルバイトも長さに含まれる。 B<_POSIX_LOGIN_NAME_MAX> (9) 未満であってはならない。"
16561 #: build/C/man3/sysconf.3:156
16563 msgid "B<NGROUPS_MAX> - B<_SC_NGROUPS_MAX>"
16564 msgstr "B<NGROUPS_MAX> - B<_SC_NGROUPS_MAX>"
16566 #. type: Plain text
16567 #: build/C/man3/sysconf.3:159
16568 msgid "Maximum number of supplementary group IDs."
16569 msgstr "補助グループ ID の最大数。"
16572 #: build/C/man3/sysconf.3:159
16574 msgid "clock ticks - B<_SC_CLK_TCK>"
16575 msgstr "clock ticks - B<_SC_CLK_TCK>"
16577 #. type: Plain text
16578 #: build/C/man3/sysconf.3:168
16579 msgid "The number of clock ticks per second. The corresponding variable is obsolete. It was of course called B<CLK_TCK>. (Note: the macro B<CLOCKS_PER_SEC> does not give information: it must equal 1000000.)"
16580 msgstr "1秒あたりのクロックティック数。 対応する変数は廃止された。この変数は当然ながら B<CLK_TCK> と呼ばれていた。 (注意: マクロ B<CLOCKS_PER_SEC> からは情報は得られない: この値は 1000000 でなければならない)"
16583 #: build/C/man3/sysconf.3:168
16585 msgid "B<OPEN_MAX> - B<_SC_OPEN_MAX>"
16586 msgstr "B<OPEN_MAX> - B<_SC_OPEN_MAX>"
16588 #. type: Plain text
16589 #: build/C/man3/sysconf.3:174
16590 msgid "The maximum number of files that a process can have open at any time. Must not be less than B<_POSIX_OPEN_MAX> (20)."
16591 msgstr "一つのプロセスが同時にオープンできるファイル数の上限。 B<_POSIX_OPEN_MAX> (20) 未満であってはならない。"
16594 #: build/C/man3/sysconf.3:174
16596 msgid "B<PAGESIZE> - B<_SC_PAGESIZE>"
16597 msgstr "B<PAGESIZE> - B<_SC_PAGESIZE>"
16599 #. type: Plain text
16600 #: build/C/man3/sysconf.3:179
16601 msgid "Size of a page in bytes. Must not be less than 1. (Some systems use PAGE_SIZE instead.)"
16602 msgstr "バイト単位でのページサイズ。 1 より小さくなってはならない。 (この代わりに PAGE_SIZE を使うシステムもある)"
16605 #: build/C/man3/sysconf.3:179 build/C/man3/sysconf.3:266
16607 msgid "B<RE_DUP_MAX> - B<_SC_RE_DUP_MAX>"
16608 msgstr "B<RE_DUP_MAX> - B<_SC_RE_DUP_MAX>"
16610 #. type: Plain text
16611 #: build/C/man3/sysconf.3:188
16612 msgid "The number of repeated occurrences of a BRE permitted by B<regexec>(3) and B<regcomp>(3). Must not be less than B<_POSIX2_RE_DUP_MAX> (255)."
16613 msgstr "B<regexec>(3) と B<regcomp>(3) で許容されている BRE (Basic Regular Expression; 基本正規表現) の繰り返し出現回数の最大値。 B<_POSIX2_RE_DUP_MAX> (255) 未満であってはならない。"
16616 #: build/C/man3/sysconf.3:188
16618 msgid "B<STREAM_MAX> - B<_SC_STREAM_MAX>"
16619 msgstr "B<STREAM_MAX> - B<_SC_STREAM_MAX>"
16621 #. type: Plain text
16622 #: build/C/man3/sysconf.3:197
16623 msgid "The maximum number of streams that a process can have open at any time. If defined, it has the same value as the standard C macro B<FOPEN_MAX>. Must not be less than B<_POSIX_STREAM_MAX> (8)."
16624 msgstr "一つのプロセスが同時にオープンできるストリーム数の上限。 定義されていた場合には、この値は標準 C マクロの B<FOPEN_MAX> と同じである。 B<_POSIX_STREAM_MAX> (8) 未満であってはならない。"
16627 #: build/C/man3/sysconf.3:197
16629 msgid "B<SYMLOOP_MAX> - B<_SC_SYMLOOP_MAX>"
16630 msgstr "B<SYMLOOP_MAX> - B<_SC_SYMLOOP_MAX>"
16632 #. type: Plain text
16633 #: build/C/man3/sysconf.3:205
16634 msgid "The maximum number of symbolic links seen in a pathname before resolution returns B<ELOOP>. Must not be less than B<_POSIX_SYMLOOP_MAX> (8)."
16635 msgstr "パス名の解決時に現れてもよいシンボリックリンクの最大数。 この数を超えると、パス名解決時に B<ELOOP> が返される。 B<_POSIX_SYMLOOP_MAX> (8) 未満であってはならない。"
16638 #: build/C/man3/sysconf.3:205
16640 msgid "B<TTY_NAME_MAX> - B<_SC_TTY_NAME_MAX>"
16641 msgstr "B<TTY_NAME_MAX> - B<_SC_TTY_NAME_MAX>"
16643 #. type: Plain text
16644 #: build/C/man3/sysconf.3:212
16645 msgid "The maximum length of terminal device name, including the terminating null byte. Must not be less than B<_POSIX_TTY_NAME_MAX> (9)."
16646 msgstr "端末デバイス名の最大長。長さには末尾のヌルバイトも含まれる。 B<_POSIX_TTY_NAME_MAX> (9) 未満であってはならない。"
16649 #: build/C/man3/sysconf.3:212
16651 msgid "B<TZNAME_MAX> - B<_SC_TZNAME_MAX>"
16652 msgstr "B<TZNAME_MAX> - B<_SC_TZNAME_MAX>"
16654 #. type: Plain text
16655 #: build/C/man3/sysconf.3:218
16656 msgid "The maximum number of bytes in a timezone name. Must not be less than B<_POSIX_TZNAME_MAX> (6)."
16657 msgstr "タイムゾーン名として使えるバイト数の最大値。 B<_POSIX_TZNAME_MAX> (6) 未満であってはならない。"
16660 #: build/C/man3/sysconf.3:218
16662 msgid "B<_POSIX_VERSION> - B<_SC_VERSION>"
16663 msgstr "B<_POSIX_VERSION> - B<_SC_VERSION>"
16665 #. type: Plain text
16666 #: build/C/man3/sysconf.3:226
16667 msgid "indicates the year and month the POSIX.1 standard was approved in the format B<YYYYMML>; the value B<199009L> indicates the Sept. 1990 revision."
16668 msgstr "POSIX.1 標準が承認された年月。 B<YYYYMML> という書式である。 B<199009L> という値は、1990年 9月 改訂であることを示す。"
16671 #: build/C/man3/sysconf.3:226
16673 msgid "POSIX.2 variables"
16674 msgstr "POSIX.2 変数"
16676 #. type: Plain text
16677 #: build/C/man3/sysconf.3:228
16678 msgid "Next, the POSIX.2 values, giving limits for utilities."
16679 msgstr "次に、POSIX.2 の値を示す。 これらは各ユーティリティに対する制限を指定する。"
16682 #: build/C/man3/sysconf.3:228
16684 msgid "B<BC_BASE_MAX> - B<_SC_BC_BASE_MAX>"
16685 msgstr "B<BC_BASE_MAX> - B<_SC_BC_BASE_MAX>"
16687 #. type: Plain text
16688 #: build/C/man3/sysconf.3:235
16689 msgid "indicates the maximum I<obase> value accepted by the B<bc>(1) utility."
16690 msgstr "B<bc>(1) ユーティリティで許容される I<obase> の最大値。"
16693 #: build/C/man3/sysconf.3:235
16695 msgid "B<BC_DIM_MAX> - B<_SC_BC_DIM_MAX>"
16696 msgstr "B<BC_DIM_MAX> - B<_SC_BC_DIM_MAX>"
16698 #. type: Plain text
16699 #: build/C/man3/sysconf.3:239
16700 msgid "indicates the maximum value of elements permitted in an array by B<bc>(1)."
16701 msgstr "B<bc>(1) で許容される一つの配列中の要素数の最大値。"
16704 #: build/C/man3/sysconf.3:239
16706 msgid "B<BC_SCALE_MAX> - B<_SC_BC_SCALE_MAX>"
16707 msgstr "B<BC_SCALE_MAX> - B<_SC_BC_SCALE_MAX>"
16709 #. type: Plain text
16710 #: build/C/man3/sysconf.3:245
16711 msgid "indicates the maximum I<scale> value allowed by B<bc>(1)."
16712 msgstr "B<bc>(1) で許される I<scale> の最大値。"
16715 #: build/C/man3/sysconf.3:245
16717 msgid "B<BC_STRING_MAX> - B<_SC_BC_STRING_MAX>"
16718 msgstr "B<BC_STRING_MAX> - B<_SC_BC_STRING_MAX>"
16720 #. type: Plain text
16721 #: build/C/man3/sysconf.3:249
16722 msgid "indicates the maximum length of a string accepted by B<bc>(1)."
16723 msgstr "B<bc>(1) で許容される文字列の最大長。"
16726 #: build/C/man3/sysconf.3:249
16728 msgid "B<COLL_WEIGHTS_MAX> - B<_SC_COLL_WEIGHTS_MAX>"
16729 msgstr "B<COLL_WEIGHTS_MAX> - B<_SC_COLL_WEIGHTS_MAX>"
16731 #. type: Plain text
16732 #: build/C/man3/sysconf.3:255
16733 msgid "indicates the maximum numbers of weights that can be assigned to an entry of the B<LC_COLLATE order> keyword in the locale definition file,"
16734 msgstr "ロケール定義ファイル中の B<LC_COLLATE order> キーワードのエントリに割り当て可能な重みの最大値。"
16737 #: build/C/man3/sysconf.3:255
16739 msgid "B<EXPR_NEST_MAX> - B<_SC_EXPR_NEST_MAX>"
16740 msgstr "B<EXPR_NEST_MAX> - B<_SC_EXPR_NEST_MAX>"
16742 #. type: Plain text
16743 #: build/C/man3/sysconf.3:260
16744 msgid "is the maximum number of expressions which can be nested within parentheses by B<expr>(1)."
16745 msgstr "B<expr>(1) において、括弧で入れ子にできる式の最大数。"
16748 #: build/C/man3/sysconf.3:260
16750 msgid "B<LINE_MAX> - B<_SC_LINE_MAX>"
16751 msgstr "B<LINE_MAX> - B<_SC_LINE_MAX>"
16753 #. type: Plain text
16754 #: build/C/man3/sysconf.3:266
16755 msgid "The maximum length of a utility's input line, either from standard input or from a file. This includes space for a trailing newline."
16756 msgstr "ユーティリティの入力行の最大長。標準入力だけでなく、ファイルからの入力にも 適用される。長さには行の末尾の改行文字も含まれる。"
16758 #. type: Plain text
16759 #: build/C/man3/sysconf.3:272
16760 msgid "The maximum number of repeated occurrences of a regular expression when the interval notation B<\\e{m,n\\e}> is used."
16761 msgstr "正規表現で区間表記 (interval notation) B<\\e{m,n\\e}> が使用されたときに許容される繰り返し出現回数の最大値。"
16764 #: build/C/man3/sysconf.3:272
16766 msgid "B<POSIX2_VERSION> - B<_SC_2_VERSION>"
16767 msgstr "B<POSIX2_VERSION> - B<_SC_2_VERSION>"
16769 #. type: Plain text
16770 #: build/C/man3/sysconf.3:276
16771 msgid "indicates the version of the POSIX.2 standard in the format of YYYYMML."
16772 msgstr "POSIX.2 標準のバージョン。YYYYMML という書式で表記される。"
16775 #: build/C/man3/sysconf.3:276
16777 msgid "B<POSIX2_C_DEV> - B<_SC_2_C_DEV>"
16778 msgstr "B<POSIX2_C_DEV> - B<_SC_2_C_DEV>"
16780 #. type: Plain text
16781 #: build/C/man3/sysconf.3:280
16782 msgid "indicates whether the POSIX.2 C language development facilities are supported."
16783 msgstr "POSIX.2 の C 言語開発機能がサポートされているかを示す。"
16786 #: build/C/man3/sysconf.3:280
16788 msgid "B<POSIX2_FORT_DEV> - B<_SC_2_FORT_DEV>"
16789 msgstr "B<POSIX2_FORT_DEV> - B<_SC_2_FORT_DEV>"
16791 #. type: Plain text
16792 #: build/C/man3/sysconf.3:284
16793 msgid "indicates whether the POSIX.2 FORTRAN development utilities are supported."
16794 msgstr "POSIX.2 の FORTRAN 開発ユーティリティがサポートされているかを示す。"
16797 #: build/C/man3/sysconf.3:284
16799 msgid "B<POSIX2_FORT_RUN> - B<_SC_2_FORT_RUN>"
16800 msgstr "B<POSIX2_FORT_RUN> - B<_SC_2_FORT_RUN>"
16802 #. type: Plain text
16803 #: build/C/man3/sysconf.3:287
16804 msgid "indicates whether the POSIX.2 FORTRAN run-time utilities are supported."
16805 msgstr "POSIX.2 の FORTRAN ランタイムユーティリティがサポートされているかを示す。"
16808 #: build/C/man3/sysconf.3:287
16810 msgid "B<_POSIX2_LOCALEDEF> - B<_SC_2_LOCALEDEF>"
16811 msgstr "B<_POSIX2_LOCALEDEF> - B<_SC_2_LOCALEDEF>"
16813 #. type: Plain text
16814 #: build/C/man3/sysconf.3:292
16815 msgid "indicates whether the POSIX.2 creation of locates via B<localedef>(1) is supported."
16816 msgstr "B<localedef>(1) を使った、POSIX.2 のロケールの作成をサポートしているかを示す。"
16819 #: build/C/man3/sysconf.3:292
16821 msgid "B<POSIX2_SW_DEV> - B<_SC_2_SW_DEV>"
16822 msgstr "B<POSIX2_SW_DEV> - B<_SC_2_SW_DEV>"
16824 #. type: Plain text
16825 #: build/C/man3/sysconf.3:296
16826 msgid "indicates whether the POSIX.2 software development utilities option is supported."
16827 msgstr "POSIX.2 ソフトウェア開発ユーティリティオプションがサポートされているかを示す。"
16829 #. type: Plain text
16830 #: build/C/man3/sysconf.3:298
16831 msgid "These values also exist, but may not be standard."
16832 msgstr "以下の値も存在するが、標準には含まれていない。"
16835 #: build/C/man3/sysconf.3:298
16837 msgid " - B<_SC_PHYS_PAGES>"
16838 msgstr " - B<_SC_PHYS_PAGES>"
16840 #. type: Plain text
16841 #: build/C/man3/sysconf.3:305
16842 msgid "The number of pages of physical memory. Note that it is possible for the product of this value and the value of B<_SC_PAGESIZE> to overflow."
16843 msgstr "物理メモリのページ数。 この値と B<_SC_PAGESIZE> 値の積は桁溢れする可能性があるので注意すること。"
16846 #: build/C/man3/sysconf.3:305
16848 msgid " - B<_SC_AVPHYS_PAGES>"
16849 msgstr " - B<_SC_AVPHYS_PAGES>"
16851 #. type: Plain text
16852 #: build/C/man3/sysconf.3:308
16853 msgid "The number of currently available pages of physical memory."
16854 msgstr "現在利用可能な物理メモリのページ数。"
16857 #: build/C/man3/sysconf.3:308
16859 msgid " - B<_SC_NPROCESSORS_CONF>"
16860 msgstr " - B<_SC_NPROCESSORS_CONF>"
16862 #. type: Plain text
16863 #: build/C/man3/sysconf.3:311
16864 msgid "The number of processors configured."
16865 msgstr "設定されたプロセッサ数。"
16868 #: build/C/man3/sysconf.3:311
16870 msgid " - B<_SC_NPROCESSORS_ONLN>"
16871 msgstr " - B<_SC_NPROCESSORS_ONLN>"
16873 #. type: Plain text
16874 #: build/C/man3/sysconf.3:314
16875 msgid "The number of processors currently online (available)."
16876 msgstr "現在オンラインの (利用可能な) プロセッサ数。"
16878 #. type: Plain text
16879 #: build/C/man3/sysconf.3:327
16880 msgid "If I<name> is invalid, -1 is returned, and I<errno> is set to B<EINVAL>. Otherwise, the value returned is the value of the system resource and I<errno> is not changed. In the case of options, a positive value is returned if a queried option is available, and -1 if it is not. In the case of limits, -1 means that there is no definite limit."
16881 msgstr "I<name> が不正な場合、-1 が返され、 I<errno> に B<EINVAL> が設定される。 それ以外の場合、システムリソースの値が返り値として返され、 I<errno> は変更されない。問い合わせがオプションに関するものであれば、 そのオプションが利用できる場合には正の値が返され、 利用できない場合には -1 が返される。 問い合わせが制限に関するものであれば、その制限が設定されていない場合に -1 が返される。"
16883 #. type: Plain text
16884 #: build/C/man3/sysconf.3:335
16885 msgid "It is difficult to use B<ARG_MAX> because it is not specified how much of the argument space for B<exec>(3) is consumed by the user's environment variables."
16886 msgstr "B<ARG_MAX> を使うのは難しい、なぜなら、 B<exec>(3) の引き数領域 (argument space) のうちどれくらいが ユーザーの環境変数によって使われるかは分からないからである。"
16888 #. type: Plain text
16889 #: build/C/man3/sysconf.3:347
16890 msgid "B<bc>(1), B<expr>(1), B<getconf>(1), B<locale>(1), B<confstr>(3), B<fpathconf>(3), B<pathconf>(3), B<posixoptions>(7)"
16891 msgstr "B<bc>(1), B<expr>(1), B<getconf>(1), B<locale>(1), B<confstr>(3), B<fpathconf>(3), B<pathconf>(3), B<posixoptions>(7)"
16894 #: build/C/man2/sysctl.2:30
16900 #: build/C/man2/sysctl.2:30
16903 msgstr "2012-12-22"
16905 #. type: Plain text
16906 #: build/C/man2/sysctl.2:33
16907 msgid "sysctl - read/write system parameters"
16908 msgstr "sysctl - システムパラメーターを読み書きする"
16910 #. type: Plain text
16911 #: build/C/man2/sysctl.2:38
16913 msgid "B<#include E<lt>linux/sysctl.hE<gt>>\n"
16914 msgstr "B<#include E<lt>linux/sysctl.hE<gt>>\n"
16916 #. type: Plain text
16917 #: build/C/man2/sysctl.2:40
16919 msgid "B<int _sysctl(struct __sysctl_args *>I<args>B<);>\n"
16920 msgstr "B<int _sysctl(struct __sysctl_args *>I<args>B<);>\n"
16922 #. type: Plain text
16923 #: build/C/man2/sysctl.2:47
16924 msgid "B<Do not use this system call!> See NOTES."
16925 msgstr "B<このシステムコールを使用しないこと!> 「注意」の節を参照。"
16927 #. type: Plain text
16928 #: build/C/man2/sysctl.2:54
16929 msgid "The B<_sysctl>() call reads and/or writes kernel parameters. For example, the hostname, or the maximum number of open files. The argument has the form"
16930 msgstr "B<_sysctl>() コールはカーネルパラメーターを読み書きする。例えば、 ホストネームや同時にオープンできるファイルの最大数など。 引き数は以下の形式である。"
16932 #. type: Plain text
16933 #: build/C/man2/sysctl.2:66
16936 "struct __sysctl_args {\n"
16937 " int *name; /* integer vector describing variable */\n"
16938 " int nlen; /* length of this vector */\n"
16939 " void *oldval; /* 0 or address where to store old value */\n"
16940 " size_t *oldlenp; /* available room for old value,\n"
16941 " overwritten by actual size of old value */\n"
16942 " void *newval; /* 0 or address of new value */\n"
16943 " size_t newlen; /* size of new value */\n"
16946 "struct __sysctl_args {\n"
16947 " int *name; /* integer vector describing variable */\n"
16948 " int nlen; /* length of this vector */\n"
16949 " void *oldval; /* 0 or address where to store old value */\n"
16950 " size_t *oldlenp; /* available room for old value,\n"
16951 " overwritten by actual size of old value */\n"
16952 " void *newval; /* 0 or address of new value */\n"
16953 " size_t newlen; /* size of new value */\n"
16956 #. type: Plain text
16957 #: build/C/man2/sysctl.2:74
16958 msgid "This call does a search in a tree structure, possibly resembling a directory tree under I</proc/sys>, and if the requested item is found calls some appropriate routine to read or modify the value."
16959 msgstr "このコールは I</proc/sys> の下のディレクトリツリーに似た木構造(tree structure)を検索する。 そして、要求された項目が見つかった場合は適切なルーチンを呼び出して 値を読んだり修正したりする。"
16961 #. type: Plain text
16962 #: build/C/man2/sysctl.2:81
16963 msgid "Upon successful completion, B<_sysctl>() returns 0. Otherwise, a value of -1 is returned and I<errno> is set to indicate the error."
16964 msgstr "成功した場合は B<_sysctl>() は 0 を返す。失敗した場合、-1 が返され、 I<errno> がそのエラーを示す値に設定される。"
16966 #. type: Plain text
16967 #: build/C/man2/sysctl.2:88
16968 msgid "The invocation asked for the previous value by setting I<oldval> non-NULL, but allowed zero room in I<oldlenp>."
16969 msgstr "I<oldval> に NULL でない値を設定して、以前の値を要求しているのに、 I<oldlenp> に空きがない。"
16971 #. type: Plain text
16972 #: build/C/man2/sysctl.2:92
16973 msgid "I<name> was not found."
16974 msgstr "I<name> が見つからなかった。"
16977 #: build/C/man2/sysctl.2:92
16979 msgid "B<EACCES>, B<EPERM>"
16980 msgstr "B<EACCES> か B<EPERM>"
16982 #. type: Plain text
16983 #: build/C/man2/sysctl.2:100
16984 msgid "No search permission for one of the encountered \"directories\", or no read permission where I<oldval> was nonzero, or no write permission where I<newval> was nonzero."
16985 msgstr "「ディレクトリ」のどれかに検索許可がなかったか、 I<oldval> が 0 でないのに読み込み許可がなかったか、 I<newval> が 0 でないのに書き込み許可がなかった。"
16987 #. type: Plain text
16988 #: build/C/man2/sysctl.2:114
16989 msgid "This call is Linux-specific, and should not be used in programs intended to be portable. A B<sysctl>() call has been present in Linux since version 1.3.57. It originated in 4.4BSD. Only Linux has the I</proc/sys> mirror, and the object naming schemes differ between Linux and 4.4BSD, but the declaration of the B<sysctl>() function is the same in both."
16990 msgstr "このコールは Linux 特有であり、移植を意図したプログラムで使用しては いけない。 B<sysctl>() コールは Linux のバージョン 1.3.57 から存在している。 これは 4.4BSD に由来している。Linux は I</proc/sys> に写し(mirror)をもっており、項目の名前の付け方が Linux と 4.4BSD では 異っている。しかし B<sysctl>() 関数の宣言は両方で同じである。"
16992 #. See http://lwn.net/Articles/247243/
16993 #. Though comments in suggest that it is needed by old glibc binaries,
16994 #. so maybe it's not going away.
16995 #. type: Plain text
16996 #: build/C/man2/sysctl.2:131
16997 msgid "Glibc does not provide a wrapper for this system call; call it using B<syscall>(2). Or rather... I<don't> call it: use of this system call has long been discouraged, and it is so unloved that B<it is likely to disappear in a future kernel version>. Since Linux 2.6.24, uses of this system call result in warnings in the kernel log. Remove it from your programs now; use the I</proc/sys> interface instead."
16998 msgstr "glibc はこのシステムコールに対するラッパー関数を提供していない。 B<syscall>(2) を使って呼び出すこと。というよりは・・・このシステムコールを呼び出さないこと。 長い間このシステムコールの使用は非推奨とされており、 「将来のバージョンのカーネルで削除されるようだ」と言われるほどである。 あなたのプログラムにこのシステムコールがあれば、すぐにでも削除すること。 代わりに I</proc/sys> インターフェースを使用すること。"
17000 #. type: Plain text
17001 #: build/C/man2/sysctl.2:135
17002 msgid "This system call is available only if the kernel was configured with the B<CONFIG_SYSCTL_SYSCALL> option."
17003 msgstr "このシステムコールは、カーネルの B<CONFIG_SYSCTL_SYSCALL> オプションが有効になっている場合のみ利用できる。"
17005 #. type: Plain text
17006 #: build/C/man2/sysctl.2:138
17007 msgid "The object names vary between kernel versions, making this system call worthless for applications."
17008 msgstr "オブジェクトの名前は、カーネルのバージョンごとに異なっている。 このため、このシステムコールはアプリケーションにとって 無価値なものとなっている。"
17010 #. type: Plain text
17011 #: build/C/man2/sysctl.2:140
17012 msgid "Not all available objects are properly documented."
17013 msgstr "全ての可能な項目が正確に記述されているわけではない。"
17015 #. type: Plain text
17016 #: build/C/man2/sysctl.2:143
17017 msgid "It is not yet possible to change operating system by writing to I</proc/sys/kernel/ostype>."
17018 msgstr "今のところ I</proc/sys/kernel/ostype> に書き込むことでオペーレーティングシステムを変えることはできない。"
17020 #. type: Plain text
17021 #: build/C/man2/sysctl.2:152
17024 "#define _GNU_SOURCE\n"
17025 "#include E<lt>unistd.hE<gt>\n"
17026 "#include E<lt>sys/syscall.hE<gt>\n"
17027 "#include E<lt>string.hE<gt>\n"
17028 "#include E<lt>stdio.hE<gt>\n"
17029 "#include E<lt>stdlib.hE<gt>\n"
17030 "#include E<lt>linux/sysctl.hE<gt>\n"
17032 "#define _GNU_SOURCE\n"
17033 "#include E<lt>unistd.hE<gt>\n"
17034 "#include E<lt>sys/syscall.hE<gt>\n"
17035 "#include E<lt>string.hE<gt>\n"
17036 "#include E<lt>stdio.hE<gt>\n"
17037 "#include E<lt>stdlib.hE<gt>\n"
17038 "#include E<lt>linux/sysctl.hE<gt>\n"
17040 #. type: Plain text
17041 #: build/C/man2/sysctl.2:154
17043 msgid "int _sysctl(struct __sysctl_args *args );\n"
17044 msgstr "int _sysctl(struct __sysctl_args *args );\n"
17046 #. type: Plain text
17047 #: build/C/man2/sysctl.2:156
17049 msgid "#define OSNAMESZ 100\n"
17050 msgstr "#define OSNAMESZ 100\n"
17052 #. type: Plain text
17053 #: build/C/man2/sysctl.2:164
17059 " struct __sysctl_args args;\n"
17060 " char osname[OSNAMESZ];\n"
17061 " size_t osnamelth;\n"
17062 " int name[] = { CTL_KERN, KERN_OSTYPE };\n"
17067 " struct __sysctl_args args;\n"
17068 " char osname[OSNAMESZ];\n"
17069 " size_t osnamelth;\n"
17070 " int name[] = { CTL_KERN, KERN_OSTYPE };\n"
17072 #. type: Plain text
17073 #: build/C/man2/sysctl.2:170
17076 " memset(&args, 0, sizeof(struct __sysctl_args));\n"
17077 " args.name = name;\n"
17078 " args.nlen = sizeof(name)/sizeof(name[0]);\n"
17079 " args.oldval = osname;\n"
17080 " args.oldlenp = &osnamelth;\n"
17082 " memset(&args, 0, sizeof(struct __sysctl_args));\n"
17083 " args.name = name;\n"
17084 " args.nlen = sizeof(name)/sizeof(name[0]);\n"
17085 " args.oldval = osname;\n"
17086 " args.oldlenp = &osnamelth;\n"
17088 #. type: Plain text
17089 #: build/C/man2/sysctl.2:172
17091 msgid " osnamelth = sizeof(osname);\n"
17092 msgstr " osnamelth = sizeof(osname);\n"
17094 #. type: Plain text
17095 #: build/C/man2/sysctl.2:180
17098 " if (syscall(SYS__sysctl, &args) == -1) {\n"
17099 " perror(\"_sysctl\");\n"
17100 " exit(EXIT_FAILURE);\n"
17102 " printf(\"This machine is running %*s\\en\", osnamelth, osname);\n"
17103 " exit(EXIT_SUCCESS);\n"
17106 " if (syscall(SYS__sysctl, &args) == -1) {\n"
17107 " perror(\"_sysctl\");\n"
17108 " exit(EXIT_FAILURE);\n"
17110 " printf(\"This machine is running %*s\\en\", osnamelth, osname);\n"
17111 " exit(EXIT_SUCCESS);\n"
17114 #. type: Plain text
17115 #: build/C/man2/sysctl.2:183 build/C/man2/sysinfo.2:92
17117 msgstr "B<proc>(5)"
17120 #: build/C/man2/sysinfo.2:14
17125 #. type: Plain text
17126 #: build/C/man2/sysinfo.2:17
17127 msgid "sysinfo - returns information on overall system statistics"
17128 msgstr "sysinfo - システム全体の統計情報を返す。"
17130 #. type: Plain text
17131 #: build/C/man2/sysinfo.2:21
17132 msgid "B<int sysinfo(struct sysinfo *>I<info>B<);>"
17133 msgstr "B<int sysinfo(struct sysinfo *>I<info>B<);>"
17135 #. type: Plain text
17136 #: build/C/man2/sysinfo.2:25
17137 msgid "Until Linux 2.3.16, B<sysinfo>() used to return information in the following structure:"
17138 msgstr "Linux 2.3.16 までは B<sysinfo>() は以下の構造体に情報を入れて返す。"
17140 #. type: Plain text
17141 #: build/C/man2/sysinfo.2:40
17144 "struct sysinfo {\n"
17145 " long uptime; /* Seconds since boot */\n"
17146 " unsigned long loads[3]; /* 1, 5, and 15 minute load averages */\n"
17147 " unsigned long totalram; /* Total usable main memory size */\n"
17148 " unsigned long freeram; /* Available memory size */\n"
17149 " unsigned long sharedram; /* Amount of shared memory */\n"
17150 " unsigned long bufferram; /* Memory used by buffers */\n"
17151 " unsigned long totalswap; /* Total swap space size */\n"
17152 " unsigned long freeswap; /* swap space still available */\n"
17153 " unsigned short procs; /* Number of current processes */\n"
17154 " char _f[22]; /* Pads structure to 64 bytes */\n"
17157 "struct sysinfo {\n"
17158 " long uptime; /* Seconds since boot */\n"
17159 " unsigned long loads[3]; /* 1, 5, and 15 minute load averages */\n"
17160 " unsigned long totalram; /* Total usable main memory size */\n"
17161 " unsigned long freeram; /* Available memory size */\n"
17162 " unsigned long sharedram; /* Amount of shared memory */\n"
17163 " unsigned long bufferram; /* Memory used by buffers */\n"
17164 " unsigned long totalswap; /* Total swap space size */\n"
17165 " unsigned long freeswap; /* swap space still available */\n"
17166 " unsigned short procs; /* Number of current processes */\n"
17167 " char _f[22]; /* Pads structure to 64 bytes */\n"
17170 #. type: Plain text
17171 #: build/C/man2/sysinfo.2:44
17172 msgid "and the sizes were given in bytes."
17173 msgstr "ここでバイト単位で与えられる。"
17175 #. type: Plain text
17176 #: build/C/man2/sysinfo.2:47
17177 msgid "Since Linux 2.3.23 (i386), 2.3.48 (all architectures) the structure is:"
17178 msgstr "Linux 2.3.23 (i386)、2.3.48 (全てのアーキテクチャ) からは構造体は"
17180 #. type: Plain text
17181 #: build/C/man2/sysinfo.2:65
17184 "struct sysinfo {\n"
17185 " long uptime; /* Seconds since boot */\n"
17186 " unsigned long loads[3]; /* 1, 5, and 15 minute load averages */\n"
17187 " unsigned long totalram; /* Total usable main memory size */\n"
17188 " unsigned long freeram; /* Available memory size */\n"
17189 " unsigned long sharedram; /* Amount of shared memory */\n"
17190 " unsigned long bufferram; /* Memory used by buffers */\n"
17191 " unsigned long totalswap; /* Total swap space size */\n"
17192 " unsigned long freeswap; /* swap space still available */\n"
17193 " unsigned short procs; /* Number of current processes */\n"
17194 " unsigned long totalhigh; /* Total high memory size */\n"
17195 " unsigned long freehigh; /* Available high memory size */\n"
17196 " unsigned int mem_unit; /* Memory unit size in bytes */\n"
17197 " char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */\n"
17200 "struct sysinfo {\n"
17201 " long uptime; /* Seconds since boot */\n"
17202 " unsigned long loads[3]; /* 1, 5, and 15 minute load averages */\n"
17203 " unsigned long totalram; /* Total usable main memory size */\n"
17204 " unsigned long freeram; /* Available memory size */\n"
17205 " unsigned long sharedram; /* Amount of shared memory */\n"
17206 " unsigned long bufferram; /* Memory used by buffers */\n"
17207 " unsigned long totalswap; /* Total swap space size */\n"
17208 " unsigned long freeswap; /* swap space still available */\n"
17209 " unsigned short procs; /* Number of current processes */\n"
17210 " unsigned long totalhigh; /* Total high memory size */\n"
17211 " unsigned long freehigh; /* Available high memory size */\n"
17212 " unsigned int mem_unit; /* Memory unit size in bytes */\n"
17213 " char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding to 64 bytes */\n"
17216 #. type: Plain text
17217 #: build/C/man2/sysinfo.2:69
17218 msgid "and the sizes are given as multiples of I<mem_unit> bytes."
17219 msgstr "となり、大きさは I<mem_unit> バイトの倍数で与えられる。"
17221 #. type: Plain text
17222 #: build/C/man2/sysinfo.2:74
17223 msgid "B<sysinfo>() provides a simple way of getting overall system statistics. This is more portable than reading I</dev/kmem>."
17224 msgstr "B<sysinfo>() はシステム全体の統計を取得する簡単な方法を提供する。 これは I</dev/kmem> を読むよりも移植性の高い方法である。"
17226 #. type: Plain text
17227 #: build/C/man2/sysinfo.2:83
17228 msgid "pointer to I<struct\\ sysinfo> is invalid"
17229 msgstr "I<sysinfo 構造体> へのポインターが不正である。"
17231 #. type: Plain text
17232 #: build/C/man2/sysinfo.2:87
17233 msgid "The Linux kernel has a B<sysinfo>() system call since 0.98.pl6."
17234 msgstr "0.98.pl6 以降の Linux カーネルに B<sysinfo>() システムコールは存在する。"
17237 #: build/C/man3/tcgetpgrp.3:25
17243 #: build/C/man3/tcgetpgrp.3:25
17246 msgstr "2014-01-13"
17248 #. type: Plain text
17249 #: build/C/man3/tcgetpgrp.3:28
17250 msgid "tcgetpgrp, tcsetpgrp - get and set terminal foreground process group"
17251 msgstr "tcgetpgrp, tcsetpgrp - 端末のフォアグラウンドプロセスグループの 取得/設定を行う"
17253 #. type: Plain text
17254 #: build/C/man3/tcgetpgrp.3:32
17255 msgid "B<pid_t tcgetpgrp(int >I<fd>B<);>"
17256 msgstr "B<pid_t tcgetpgrp(int >I<fd>B<);>"
17258 #. type: Plain text
17259 #: build/C/man3/tcgetpgrp.3:34
17260 msgid "B<int tcsetpgrp(int >I<fd>B<, pid_t >I<pgrp>B<);>"
17261 msgstr "B<int tcsetpgrp(int >I<fd>B<, pid_t >I<pgrp>B<);>"
17263 #. The process itself may be a background process.
17264 #. type: Plain text
17265 #: build/C/man3/tcgetpgrp.3:42
17266 msgid "The function B<tcgetpgrp>() returns the process group ID of the foreground process group on the terminal associated to I<fd>, which must be the controlling terminal of the calling process."
17267 msgstr "関数 B<tcgetpgrp>() は、 I<fd> に対応する端末のフォアグラウンドプロセスグループの プロセスグループ ID を返す。 I<fd> で指定された端末は、呼び出しを行うプロセスの制御端末でなければならない。"
17269 #. type: Plain text
17270 #: build/C/man3/tcgetpgrp.3:55
17271 msgid "The function B<tcsetpgrp>() makes the process group with process group ID I<pgrp> the foreground process group on the terminal associated to I<fd>, which must be the controlling terminal of the calling process, and still be associated with its session. Moreover, I<pgrp> must be a (nonempty) process group belonging to the same session as the calling process."
17272 msgstr "関数 B<tcsetpgrp>() は、プロセスグループID が I<pgrp> のプロセスグループを I<fd> に対応する端末のフォアグラウンドプロセスグループにする。 このとき、 I<fd> は B<tcsetpgrp>() を呼び出すプロセスの制御端末でなければならない。 さらに、 I<pgrp> は、呼び出しを行うプロセスと同じセッションに 属する (メンバが空でない) プロセスグループでなければならない。"
17274 #. type: Plain text
17275 #: build/C/man3/tcgetpgrp.3:64
17276 msgid "If B<tcsetpgrp>() is called by a member of a background process group in its session, and the calling process is not blocking or ignoring B<SIGTTOU>, a B<SIGTTOU> signal is sent to all members of this background process group."
17277 msgstr "B<tcsetpgrp>() がセッションに属するバックグラウンドグループプロセスのメンバから 呼び出され、かつ呼び出しを行うプロセスが B<SIGTTOU> をブロックしたり 無視したりするようになっていない場合、 B<SIGTTOU> シグナルは バックグラウンドプロセスグループの全てのメンバに送られる。"
17279 #. type: Plain text
17280 #: build/C/man3/tcgetpgrp.3:79
17281 msgid "When I<fd> refers to the controlling terminal of the calling process, the function B<tcgetpgrp>() will return the foreground process group ID of that terminal if there is one, and some value larger than 1 that is not presently a process group ID otherwise. When I<fd> does not refer to the controlling terminal of the calling process, -1 is returned, and I<errno> is set appropriately."
17282 msgstr "I<fd> が呼び出しを行ったプロセスの制御端末を参照している場合、関数 B<tcgetpgrp>() は、その制御端末のフォアグラウンドプロセスグループがあれば そのプロセスグループの ID を返す。 そのようなプロセスグループがなければ、現在プロセスグループ ID として使用されていない、1より大きな何らかの値が返される。 I<fd> が呼び出しを行ったプロセスの制御端末を参照していない場合、 -1 が返され、 I<errno> が適切に設定される。"
17284 #. type: Plain text
17285 #: build/C/man3/tcgetpgrp.3:86
17286 msgid "When successful, B<tcsetpgrp>() returns 0. Otherwise, it returns -1, and I<errno> is set appropriately."
17287 msgstr "成功した場合、 B<tcsetpgrp>() は 0 を返す。そうでない場合、 -1 を返し、 I<errno> を適切に設定する。"
17289 #. type: Plain text
17290 #: build/C/man3/tcgetpgrp.3:95
17291 msgid "I<pgrp> has an unsupported value."
17292 msgstr "I<pgrp> が無効な値である。"
17294 #. type: Plain text
17295 #: build/C/man3/tcgetpgrp.3:104
17296 msgid "The calling process does not have a controlling terminal, or it has one but it is not described by I<fd>, or, for B<tcsetpgrp>(), this controlling terminal is no longer associated with the session of the calling process."
17297 msgstr "呼び出しを行ったプロセスが制御端末を持っていない、もしくは 制御端末を持っているが I<fd> で参照されるものとは異なる、 B<tcsetpgrp>() の場合は、 I<fd> で指定された制御端末がすでに呼び出しを行ったプロセスのセッション と関係のないものになっている際にも、このエラーとなる。"
17299 #. type: Plain text
17300 #: build/C/man3/tcgetpgrp.3:109
17301 msgid "I<pgrp> has a supported value, but is not the process group ID of a process in the same session as the calling process."
17302 msgstr "I<pgrp> が有効な値だが、呼び出しを行ったプロセスと同じセッションに属する プロセスのプロセスグループ ID には該当するものがない。"
17304 #. type: Plain text
17305 #: build/C/man3/tcgetpgrp.3:116
17306 msgid "The B<tcgetpgrp>() and B<tcsetpgrp>() functions are thread-safe."
17307 msgstr "関数 B<tcgetpgrp>() と B<tcsetpgrp>() はスレッドセーフである。"
17309 #. type: Plain text
17310 #: build/C/man3/tcgetpgrp.3:124
17311 msgid "These functions are implemented via the B<TIOCGPGRP> and B<TIOCSPGRP> ioctls."
17312 msgstr "この関数は B<TIOCGPGRP> と B<TIOCGSID> の ioctl 経由で実現されている。"
17315 #: build/C/man3/tcgetpgrp.3:124 build/C/man2/vfork.2:234
17320 #. type: Plain text
17321 #: build/C/man3/tcgetpgrp.3:127
17322 msgid "The ioctls appeared in 4.2BSD. The functions are POSIX inventions."
17323 msgstr "これらの ioctl は 4.2BSD で登場した。 これらの関数は POSIX で考案されたものである。"
17325 #. type: Plain text
17326 #: build/C/man3/tcgetpgrp.3:131
17327 msgid "B<setpgid>(2), B<setsid>(2), B<credentials>(7)"
17328 msgstr "B<setpgid>(2), B<setsid>(2), B<credentials>(7)"
17331 #: build/C/man2/truncate.2:43
17336 #. type: Plain text
17337 #: build/C/man2/truncate.2:46
17338 msgid "truncate, ftruncate - truncate a file to a specified length"
17339 msgstr "truncate, ftruncate - 指定した長さにファイルを切り詰める"
17341 #. type: Plain text
17342 #: build/C/man2/truncate.2:52
17343 msgid "B<int truncate(const char *>I<path>B<, off_t >I<length>B<);>"
17344 msgstr "B<int truncate(const char *>I<path>B<, off_t >I<length>B<);>"
17346 #. type: Plain text
17347 #: build/C/man2/truncate.2:54
17348 msgid "B<int ftruncate(int >I<fd>B<, off_t >I<length>B<);>"
17349 msgstr "B<int ftruncate(int >I<fd>B<, off_t >I<length>B<);>"
17351 #. type: Plain text
17352 #: build/C/man2/truncate.2:63
17353 msgid "B<truncate>():"
17354 msgstr "B<truncate>():"
17356 #. type: Plain text
17357 #: build/C/man2/truncate.2:71
17358 msgid "B<ftruncate>():"
17359 msgstr "B<ftruncate>():"
17361 #. type: Plain text
17362 #: build/C/man2/truncate.2:76
17363 msgid "|| /* Since glibc 2.3.5: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
17364 msgstr "|| /* glibc 2.3.5 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
17366 #. type: Plain text
17367 #: build/C/man2/truncate.2:91
17368 msgid "The B<truncate>() and B<ftruncate>() functions cause the regular file named by I<path> or referenced by I<fd> to be truncated to a size of precisely I<length> bytes."
17369 msgstr "B<truncate>() は I<path> で指定されるファイルを、 B<ftruncate>() は I<fd> で参照されるファイルを I<length> バイトの長さになるように延長する、もしくは切り詰める。"
17371 #. type: Plain text
17372 #: build/C/man2/truncate.2:95
17373 msgid "If the file previously was larger than this size, the extra data is lost. If the file previously was shorter, it is extended, and the extended part reads as null bytes (\\(aq\\e0\\(aq)."
17374 msgstr "もし切り詰める前のファイルが I<length> より長ければ、length バイトを越える部分のデータは失われる。 もし切り詰める前のファイルが I<length> より短かければ、伸張される。 伸張された部分を読んだ場合はヌルバイト (\\(aq\\e0\\(aq) の列が返される。"
17376 #. type: Plain text
17377 #: build/C/man2/truncate.2:97
17378 msgid "The file offset is not changed."
17379 msgstr "ファイルオフセットは変更されない。"
17381 #. type: Plain text
17382 #: build/C/man2/truncate.2:104
17383 msgid "If the size changed, then the st_ctime and st_mtime fields (respectively, time of last status change and time of last modification; see B<stat>(2)) for the file are updated, and the set-user-ID and set-group-ID permission bits may be cleared."
17384 msgstr "大きさが変更されると、ファイルの st_ctime と st_mtime フィールド (それぞれ最終状態変更時刻、最終修正時刻; B<stat>(2) 参照) が更新される。 また、set-user-ID と set-group-ID の許可ビットがクリアされるかもしれない。"
17386 #. type: Plain text
17387 #: build/C/man2/truncate.2:110
17388 msgid "With B<ftruncate>(), the file must be open for writing; with B<truncate>(), the file must be writable."
17389 msgstr "B<ftruncate>() の場合、ファイルは書き込み用に開いていなければならない。 B<truncate>() の場合、ファイルは書き込み可能でなければならない。"
17391 #. type: Plain text
17392 #: build/C/man2/truncate.2:118
17393 msgid "For B<truncate>():"
17394 msgstr "B<truncate>() では以下のエラーコードが定義されている。"
17396 #. type: Plain text
17397 #: build/C/man2/truncate.2:124
17398 msgid "Search permission is denied for a component of the path prefix, or the named file is not writable by the user. (See also B<path_resolution>(7).)"
17399 msgstr "パスで指定されているディレクトリに検索許可のないものがある (訳注:x ビットが立っていない)。 あるいは、指定されたファイルに対する書き込み許可を持っていない。 (B<path_resolution>(7) も参照のこと)"
17401 #. type: Plain text
17402 #: build/C/man2/truncate.2:129
17403 msgid "The argument I<path> points outside the process's allocated address space."
17404 msgstr "引き数 I<path> がプロセスに割り当てられているアドレス空間外を指している。"
17407 #: build/C/man2/truncate.2:129
17412 #. type: Plain text
17413 #: build/C/man2/truncate.2:134
17414 msgid "The argument I<length> is larger than the maximum file size. (XSI)"
17415 msgstr "引き数 I<length> が最大ファイルサイズより大きい。(XSI)"
17417 #. type: Plain text
17418 #: build/C/man2/truncate.2:141
17419 msgid "While blocked waiting to complete, the call was interrupted by a signal handler; see B<fcntl>(2) and B<signal>(7)."
17420 msgstr "完了待ちで停止 (block) している間に、呼び出しが シグナルハンドラにより割り込まれた。 B<fcntl>(2) と B<signal>(7) を参照。"
17422 #. type: Plain text
17423 #: build/C/man2/truncate.2:146
17424 msgid "The argument I<length> is negative or larger than the maximum file size."
17425 msgstr "引き数 I<length> が負数であるか、最大ファイルサイズより大きい。"
17427 #. type: Plain text
17428 #: build/C/man2/truncate.2:149
17429 msgid "An I/O error occurred updating the inode."
17430 msgstr "inode の更新時に I/O エラーが発生した。"
17432 #. type: Plain text
17433 #: build/C/man2/truncate.2:152
17434 msgid "The named file is a directory."
17435 msgstr "指定されたファイルはディレクトリである。"
17437 #. type: Plain text
17438 #: build/C/man2/truncate.2:155
17439 msgid "Too many symbolic links were encountered in translating the pathname."
17440 msgstr "パス名を解釈する際にシンボリックリンクが多すぎた。"
17442 #. type: Plain text
17443 #: build/C/man2/truncate.2:159
17444 msgid "A component of a pathname exceeded 255 characters, or an entire pathname exceeded 1023 characters."
17445 msgstr "パス名中のディレクトリ名が 255 文字を越えている、もしくはパス名全体が 1023 文字を越えている。"
17447 #. type: Plain text
17448 #: build/C/man2/truncate.2:162
17449 msgid "The named file does not exist."
17450 msgstr "指定された名前のファイルが存在しない。"
17452 #. This happens for at least MSDOS and VFAT filesystems
17453 #. on kernel 2.6.13
17454 #. type: Plain text
17455 #: build/C/man2/truncate.2:171
17456 msgid "The underlying filesystem does not support extending a file beyond its current size."
17457 msgstr "下層にあるファイルシステムでは、現在のファイル長を越えて ファイルを伸長することができない。"
17459 #. type: Plain text
17460 #: build/C/man2/truncate.2:175
17461 msgid "The operation was prevented by a file seal; see B<fcntl>(2)."
17462 msgstr "操作が file seal により禁止されている。 B<fcntl>(2) 参照。"
17464 #. type: Plain text
17465 #: build/C/man2/truncate.2:181
17466 msgid "The file is a pure procedure (shared text) file that is being executed."
17467 msgstr "指定されたファイルは実行されているファイルである。"
17469 #. type: Plain text
17470 #: build/C/man2/truncate.2:188
17471 msgid "For B<ftruncate>() the same errors apply, but instead of things that can be wrong with I<path>, we now have things that can be wrong with the file descriptor, I<fd>:"
17472 msgstr "B<ftruncate>() にも同様のエラーが適用される。 但し、 I<path> に関するエラーの場合は、ファイルディスクリプター I<fd> に関するエラーとなる。"
17475 #: build/C/man2/truncate.2:192
17477 msgid "B<EBADF> or B<EINVAL>"
17478 msgstr "B<EBADF> または B<EINVAL>"
17480 #. type: Plain text
17481 #: build/C/man2/truncate.2:196
17482 msgid "I<fd> is not open for writing."
17483 msgstr "I<fd> で指定されているものが書き込みモードで開かれていない。"
17485 #. type: Plain text
17486 #: build/C/man2/truncate.2:200
17487 msgid "I<fd> does not reference a regular file."
17488 msgstr "I<fd> が通常のファイルを参照していない。"
17490 #. POSIX.1-1996 has
17491 #. .BR ftruncate ().
17492 #. POSIX.1-2001 also has
17493 #. .BR truncate (),
17494 #. as an XSI extension.
17496 #. SVr4 documents additional
17498 #. error conditions EMFILE, EMULTIHP, ENFILE, ENOLINK. SVr4 documents for
17499 #. .BR ftruncate ()
17500 #. an additional EAGAIN error condition.
17501 #. type: Plain text
17502 #: build/C/man2/truncate.2:213
17503 msgid "4.4BSD, SVr4, POSIX.1-2001 (these calls first appeared in 4.2BSD)."
17504 msgstr "4.4BSD, SVr4, POSIX.1-2001 (これらのコールは 4.2BSD で初めて登場した)。"
17506 #. At the very least: OSF/1, Solaris 7, and FreeBSD conform, mtk, Jan 2002
17507 #. type: Plain text
17508 #: build/C/man2/truncate.2:234
17509 msgid "The details in DESCRIPTION are for XSI-compliant systems. For non-XSI-compliant systems, the POSIX standard allows two behaviors for B<ftruncate>() when I<length> exceeds the file length (note that B<truncate>() is not specified at all in such an environment): either returning an error, or extending the file. Like most UNIX implementations, Linux follows the XSI requirement when dealing with native filesystems. However, some nonnative filesystems do not permit B<truncate>() and B<ftruncate>() to be used to extend a file beyond its current length: a notable example on Linux is VFAT."
17511 "「説明」の節で述べた詳細は XSI 準拠のシステムについてのものである。\n"
17512 "XSI 非準拠のシステムの場合、POSIX 標準は B<ftruncate>() に対して I<length> が\n"
17513 "ファイルの長さより長かった場合、 エラーを返すかファイルを伸張するかの二つの\n"
17514 "動作を許容している。 B<truncate>() に対しては全く規定されていない。\n"
17515 "ほとんどの UNIX 実装と同様、Linux はネイティブ (Linux 由来) の ファイルシステム\n"
17516 "の扱いでは XSI 要求仕様にしたがっている。 しかしながら、いくつかの非ネイティブ\n"
17517 "のファイルシステムでは、 B<truncate>() や B<ftruncate>() を使って現在のファイル\n"
17518 "長を越えてファイルを伸長することができない。 Linux での有名な例としては\n"
17521 #. type: Plain text
17522 #: build/C/man2/truncate.2:248
17523 msgid "The original Linux B<truncate>() and B<ftruncate>() system calls were not designed to handle large file offsets. Consequently, Linux 2.4 added B<truncate64>() and B<ftruncate64>() system calls that handle large files. However, these details can be ignored by applications using glibc, whose wrapper functions transparently employ the more recent system calls where they are available."
17525 "元々の Linux の B<truncate>() と B<ftruncate>() システムコールは\n"
17526 "大きなファイルオフセットを扱えるように設計されていなかった。\n"
17527 "その結果、大きなファイルファイルを扱うことができる B<truncate64>() と B<ftruncate64>()\n"
17528 "システムコールが Linux 2.4 で追加された。\n"
17529 "ただし、glibc を使ったアプリケーションではこれらの詳細は気にする必要はない。\n"
17530 "glibc のラッパー関数は新しいシステムコールが利用できる場合にはそれらを利用する\n"
17533 #. http://sourceware.org/bugzilla/show_bug.cgi?id=12037
17534 #. type: Plain text
17535 #: build/C/man2/truncate.2:261
17536 msgid "A header file bug in glibc 2.12 meant that the minimum value of B<_POSIX_C_SOURCE> required to expose the declaration of B<ftruncate>() was 200809L instead of 200112L. This has been fixed in later glibc versions."
17537 msgstr "glibc 2.12 のヘッダファイルにはバグがあり、 B<ftruncate>() の宣言を公開するのに必要な B<_POSIX_C_SOURCE> の最小値が 200112L ではなく 200809L となっていた。 このバグは、これ以降のバージョンの glibc では修正されている。"
17539 #. type: Plain text
17540 #: build/C/man2/truncate.2:265
17541 msgid "B<open>(2), B<stat>(2), B<path_resolution>(7)"
17542 msgstr "B<open>(2), B<stat>(2), B<path_resolution>(7)"
17545 #: build/C/man3/ualarm.3:24
17551 #: build/C/man3/ualarm.3:24
17554 msgstr "2013-12-23"
17556 #. type: Plain text
17557 #: build/C/man3/ualarm.3:27
17558 msgid "ualarm - schedule signal after given number of microseconds"
17559 msgstr "ualarm - 指定したマイクロ秒後にシグナルを送る予定をする"
17561 #. type: Plain text
17562 #: build/C/man3/ualarm.3:32
17564 msgid "B<useconds_t ualarm(useconds_t >I<usecs>B<, useconds_t >I<interval>B<);>\n"
17565 msgstr "B<useconds_t ualarm(useconds_t >I<usecs>B<, useconds_t >I<interval>B<);>\n"
17567 #. type: Plain text
17568 #: build/C/man3/ualarm.3:40
17569 msgid "B<ualarm>():"
17570 msgstr "B<ualarm>():"
17572 #. type: Plain text
17573 #: build/C/man3/ualarm.3:69
17574 msgid "The B<ualarm>() function causes the signal B<SIGALRM> to be sent to the invoking process after (not less than) I<usecs> microseconds. The delay may be lengthened slightly by any system activity or by the time spent processing the call or by the granularity of system timers."
17575 msgstr "B<ualarm>() 関数は、呼び出し元のプロセスに対して I<usecs> マイクロ秒 (以上) 後に B<SIGALRM> シグナルを送る。 遅れはシステムの活性度・呼び出しの処理時間・ システムタイマーの粒度によって長くなるかもしれない。"
17577 #. type: Plain text
17578 #: build/C/man3/ualarm.3:73
17579 msgid "Unless caught or ignored, the B<SIGALRM> signal will terminate the process."
17580 msgstr "捕捉または無視されない限り、 B<SIGALRM> シグナルはプロセスを終了させる。"
17582 #. type: Plain text
17583 #: build/C/man3/ualarm.3:81
17584 msgid "If the I<interval> argument is nonzero, further B<SIGALRM> signals will be sent every I<interval> microseconds after the first."
17585 msgstr "I<interval> 引き数が 0 でない場合、最初の B<SIGALRM> シグナルの後、 さらに I<interval> マイクロ秒毎に SIGALRM シグナルが送られる。"
17587 #. type: Plain text
17588 #: build/C/man3/ualarm.3:84
17589 msgid "This function returns the number of microseconds remaining for any alarm that was previously set, or 0 if no alarm was pending."
17590 msgstr "この関数は、過去に設定された alarm の残りマイクロ秒数を返す。 実行中の alarm がない場合は 0 を返す。"
17592 #. type: Plain text
17593 #: build/C/man3/ualarm.3:88
17594 msgid "Interrupted by a signal."
17595 msgstr "シグナルによって割り込まれた。"
17597 #. type: Plain text
17598 #: build/C/man3/ualarm.3:92
17599 msgid "I<usecs> or I<interval> is not smaller than 1000000. (On systems where that is considered an error.)"
17600 msgstr "I<usecs> または I<interval> が 1000000 未満でない (これがエラーとして扱われるシステムの場合)。"
17602 #. type: Plain text
17603 #: build/C/man3/ualarm.3:97
17604 msgid "The B<ualarm>() function is thread-safe."
17605 msgstr "B<ualarm>() 関数はスレッドセーフである。"
17607 #. type: Plain text
17608 #: build/C/man3/ualarm.3:105
17609 msgid "4.3BSD, POSIX.1-2001. POSIX.1-2001 marks B<ualarm>() as obsolete. POSIX.1-2008 removes the specification of B<ualarm>(). 4.3BSD, SUSv2, and POSIX do not define any errors."
17610 msgstr "4.3BSD, POSIX.1-2001. POSIX.1-2001 では B<ualarm>() は過去のものとされている。 POSIX.1-2008 では、 B<ualarm>() の仕様が削除されている。 4.3BSD, SUSv2, POSIX はエラーを定義していない。"
17612 #. This case is not documented in HP-US, Solar, FreeBSD, NetBSD, or OpenBSD!
17613 #. type: Plain text
17614 #: build/C/man3/ualarm.3:112
17615 msgid "POSIX.1-2001 does not specify what happens if the I<usecs> argument is 0. On Linux (and probably most other systems), the effect is to cancel any pending alarm."
17616 msgstr "POSIX.1-2001 では、 I<usecs> 引き数が 0 の場合、何が起こるかは規定されていない。 Linux (やおそらく他ほとんどのシステム) では、 I<usecs> 引き数が 0 の場合、処理待ちのアラームがキャンセルされる。"
17618 #. type: Plain text
17619 #: build/C/man3/ualarm.3:125
17620 msgid "The type I<useconds_t> is an unsigned integer type capable of holding integers in the range [0,1000000]. On the original BSD implementation, and in glibc before version 2.1, the arguments to B<ualarm>() were instead typed as I<unsigned int>. Programs will be more portable if they never mention I<useconds_t> explicitly."
17621 msgstr "I<useconds_t> 型は [0,1000000] の範囲の整数を保持できる符号なし整数型である。 もともとの BSD での実装や、バージョン 2.1 より前の glibc では、 B<ualarm>() の引き数の型は I<unsigned int> であった。 プログラム中に明示的に I<useconds_t> と書かない方が、移植性が高くなる。"
17623 #. type: Plain text
17624 #: build/C/man3/ualarm.3:139
17625 msgid "The interaction of this function with other timer functions such as B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), B<usleep>(3) is unspecified."
17626 msgstr "この関数と B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), B<usleep>(3) のような他のタイマー関数との相互作用は規定されていない。"
17628 #. type: Plain text
17629 #: build/C/man3/ualarm.3:147
17630 msgid "This function is obsolete. Use B<setitimer>(2) or POSIX interval timers (B<timer_create>(2), etc.) instead."
17631 msgstr "この関数は廃止予定である。 代わりに B<setitimer>(2) もしくは POSIX インターバルタイマ (B<timer_create>(2) など) を使うこと。"
17633 #. type: Plain text
17634 #: build/C/man3/ualarm.3:155
17635 msgid "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), B<setitimer>(2), B<usleep>(3), B<time>(7)"
17636 msgstr "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), B<setitimer>(2), B<usleep>(3), B<time>(7)"
17639 #: build/C/man2/umask.2:34
17645 #: build/C/man2/umask.2:34
17648 msgstr "2008-01-09"
17650 #. type: Plain text
17651 #: build/C/man2/umask.2:37
17652 msgid "umask - set file mode creation mask"
17653 msgstr "umask - ファイルモード作成マスクを設定する"
17655 #. type: Plain text
17656 #: build/C/man2/umask.2:43
17657 msgid "B<mode_t umask(mode_t >I<mask>B<);>"
17658 msgstr "B<mode_t umask(mode_t >I<mask>B<);>"
17660 #. type: Plain text
17661 #: build/C/man2/umask.2:50
17662 msgid "B<umask>() sets the calling process's file mode creation mask (umask) to I<mask> & 0777 (i.e., only the file permission bits of I<mask> are used), and returns the previous value of the mask."
17663 msgstr "B<umask>() は、呼び出し元プロセスのファイルモード作成マスク (umask) を I<mask> & 0777 に設定し (I<umask> のファイル許可に対応するビットのみを使用する)、 変更前のマスク値を返す。"
17665 #. e.g., mkfifo(), creat(), mknod(), sem_open(), mq_open(), shm_open()
17666 #. but NOT the System V IPC *get() calls
17667 #. type: Plain text
17668 #: build/C/man2/umask.2:65
17669 msgid "The umask is used by B<open>(2), B<mkdir>(2), and other system calls that create files to modify the permissions placed on newly created files or directories. Specifically, permissions in the umask are turned off from the I<mode> argument to B<open>(2) and B<mkdir>(2)."
17670 msgstr "umask は、 B<open>(2), B<mkdir>(2) やファイル作成を行うその他のシステムコールで、 新しく作成されるファイルやディレクトリの許可 (permission) を 修正するために使用される。 具体的には umask に設定されている許可が B<open>(2) や B<mkdir>(2) の I<mode> 引き数から取り消される。"
17672 #. type: Plain text
17673 #: build/C/man2/umask.2:70
17674 msgid "The constants that should be used to specify I<mask> are described under B<stat>(2)."
17675 msgstr "I<mask> に指定するのに使用すべき定数については B<stat>(2) で説明されている。"
17677 #. type: Plain text
17678 #: build/C/man2/umask.2:79
17679 msgid "The typical default value for the process umask is I<S_IWGRP\\ |\\ S_IWOTH> (octal 022). In the usual case where the I<mode> argument to B<open>(2) is specified as:"
17680 msgstr "プロセスの umask のよくあるデフォルト値は I<S_IWGRP\\ |\\ S_IWOTH> (8進で 022) である。 新しいファイルを作成する際に B<open>(2) の I<mode> 引き数に"
17682 #. type: Plain text
17683 #: build/C/man2/umask.2:82
17685 msgid " S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH\n"
17686 msgstr " S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH\n"
17688 #. type: Plain text
17689 #: build/C/man2/umask.2:86
17690 msgid "(octal 0666) when creating a new file, the permissions on the resulting file will be:"
17691 msgstr "を指定するというよくあるケースでは、作成されたファイルは"
17693 #. type: Plain text
17694 #: build/C/man2/umask.2:89
17696 msgid " S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH\n"
17697 msgstr " S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH\n"
17699 #. type: Plain text
17700 #: build/C/man2/umask.2:92
17701 msgid "(because 0666 & ~022 = 0644; i.e., rw-r--r--)."
17702 msgstr "という許可を持つことになる (なぜなら 0666 & ~022 = 0644、つまり rw-r--r--)。"
17704 #. type: Plain text
17705 #: build/C/man2/umask.2:95
17706 msgid "This system call always succeeds and the previous value of the mask is returned."
17707 msgstr "このシステムコールは必ず成功し、以前の umask 値を返す。"
17709 #. type: Plain text
17710 #: build/C/man2/umask.2:103
17711 msgid "A child process created via B<fork>(2) inherits its parent's umask. The umask is left unchanged by B<execve>(2)."
17712 msgstr "B<fork>(2) で作成された子プロセスは、親プロセスの umask を継承する。 B<execve>(2) によって umask は変更されない。"
17714 #. type: Plain text
17715 #: build/C/man2/umask.2:118
17716 msgid "The umask setting also affects the permissions assigned to POSIX IPC objects (B<mq_open>(3), B<sem_open>(3), B<shm_open>(3)), FIFOs (B<mkfifo>(3)), and UNIX domain sockets (B<unix>(7)) created by the process. The umask does not affect the permissions assigned to System\\ V IPC objects created by the process (using B<msgget>(2), B<semget>(2), B<shmget>(2))."
17717 msgstr "umask の設定は、そのプロセスが生成する POSIX IPC オブジェクト (B<mq_open>(3), B<sem_open>(3), B<shm_open>(3)) や FIFO (B<mkfifo>(3))、 UNIX ドメインソケット (B<unix>(7)) に設定される許可にも影響を与える。 一方、umask は、そのプロセスが (B<msgget>(2), B<semget>(2), B<shmget>(2) を使って) 生成する System\\ V IPC オブジェクトに設定される許可には 影響を与えない。"
17719 #. type: Plain text
17720 #: build/C/man2/umask.2:124
17721 msgid "B<chmod>(2), B<mkdir>(2), B<open>(2), B<stat>(2), B<acl>(5)"
17722 msgstr "B<chmod>(2), B<mkdir>(2), B<open>(2), B<stat>(2), B<acl>(5)"
17725 #: build/C/man2/uname.2:27
17730 #. type: Plain text
17731 #: build/C/man2/uname.2:30
17732 msgid "uname - get name and information about current kernel"
17733 msgstr "uname - 現在稼働中のカーネルについての名前と情報を得る"
17735 #. type: Plain text
17736 #: build/C/man2/uname.2:32
17737 msgid "B<#include E<lt>sys/utsname.hE<gt>>"
17738 msgstr "B<#include E<lt>sys/utsname.hE<gt>>"
17740 #. type: Plain text
17741 #: build/C/man2/uname.2:34
17742 msgid "B<int uname(struct utsname *>I<buf>B<);>"
17743 msgstr "B<int uname(struct utsname *>I<buf>B<);>"
17745 #. type: Plain text
17746 #: build/C/man2/uname.2:42
17747 msgid "B<uname>() returns system information in the structure pointed to by I<buf>. The I<utsname> struct is defined in I<E<lt>sys/utsname.hE<gt>>:"
17748 msgstr "B<uname>() は I<buf> で指される構造体にシステム情報を返す。 I<utsname> 構造体は I<E<lt>sys/utsname.hE<gt>> で以下のように定義されている。"
17750 #. type: Plain text
17751 #: build/C/man2/uname.2:56
17754 "struct utsname {\n"
17755 " char sysname[]; /* Operating system name (e.g., \"Linux\") */\n"
17756 " char nodename[]; /* Name within \"some implementation-defined\n"
17758 " char release[]; /* Operating system release (e.g., \"2.6.28\") */\n"
17759 " char version[]; /* Operating system version */\n"
17760 " char machine[]; /* Hardware identifier */\n"
17761 "#ifdef _GNU_SOURCE\n"
17762 " char domainname[]; /* NIS or YP domain name */\n"
17766 "struct utsname {\n"
17767 " char sysname[]; /* OS の名前 (例: \"Linux\") */\n"
17768 " char nodename[]; /* 「実装時に定義された、何らかの\n"
17769 " ネットワーク」におけるマシン名 */\n"
17770 " char release[]; /* オペレーションシステムのリリース番号 (例: \"2.6.28\") */\n"
17771 " char version[]; /* オペレーティングシステムのバージョン */\n"
17772 " char machine[]; /* ハードウェア識別子 */\n"
17773 "#ifdef _GNU_SOURCE\n"
17774 " char domainname[]; /* NIS や YP のドメイン名 */\n"
17778 #. type: Plain text
17779 #: build/C/man2/uname.2:63
17780 msgid "The length of the arrays in a I<struct utsname> is unspecified (see NOTES); the fields are terminated by a null byte (\\(aq\\e0\\(aq)."
17781 msgstr "I<struct utsname> にある配列の長さは指定されていない (「注意」の節を参照)。 フィールドはヌルバイト (\\(aq\\e0\\(aq) で終端される。"
17783 #. type: Plain text
17784 #: build/C/man2/uname.2:73
17785 msgid "I<buf> is not valid."
17786 msgstr "I<buf> が有効でない。"
17788 #. type: Plain text
17789 #: build/C/man2/uname.2:78
17790 msgid "SVr4, POSIX.1-2001. There is no B<uname>() call in 4.3BSD."
17791 msgstr "SVr4, POSIX.1-2001. 4.3BSD には B<uname>() コールがない。"
17793 #. type: Plain text
17794 #: build/C/man2/uname.2:82
17795 msgid "The I<domainname> member (the NIS or YP domain name) is a GNU extension."
17796 msgstr "I<domainname> メンバー (NIS または YP ドメイン名) は GNU の拡張である。"
17798 #. type: Plain text
17799 #: build/C/man2/uname.2:98
17800 msgid "This is a system call, and the operating system presumably knows its name, release and version. It also knows what hardware it runs on. So, four of the fields of the struct are meaningful. On the other hand, the field I<nodename> is meaningless: it gives the name of the present machine in some undefined network, but typically machines are in more than one network and have several names. Moreover, the kernel has no way of knowing about such things, so it has to be told what to answer here. The same holds for the additional I<domainname> field."
17801 msgstr "これはシステムコールであり、OS は名前・リリース・バージョンなどを たぶん分かっているだろう。 さらにそれが稼働しているハードウェアも分かっているだろう。 よって構造体の 4 つのフィールドには意味がある。 一方、I<nodename> フィールドには意味がない: このフィールドは現在のマシンの (定義されていない) どこかのネットワークにおける名前を与えるが、 通常マシンは複数のネットワークに属し、複数の名前を持つ。 さらに、カーネルはこのような情報を知る術を持たないので、 ここでの答えは前もって教えてやらなければならない。 これは追加フィールドである I<domainname> についても同様である。"
17803 #. type: Plain text
17804 #: build/C/man2/uname.2:116
17805 msgid "To this end, Linux uses the system calls B<sethostname>(2) and B<setdomainname>(2). Note that there is no standard that says that the hostname set by B<sethostname>(2) is the same string as the I<nodename> field of the struct returned by B<uname>() (indeed, some systems allow a 256-byte hostname and an 8-byte nodename), but this is true on Linux. The same holds for B<setdomainname>(2) and the I<domainname> field."
17806 msgstr "このため Linux ではシステムコール B<sethostname>(2) と B<setdomainname>(2) が使われる。 「B<sethostname>(2) で設定されるホスト名は、 B<uname>() で返される構造体の I<nodename> フィールドと同じ文字列である」 と規定している標準規格はない (実際、256 バイトのホスト名と 8 バイトのノード名を許可しているシステムもある)。 しかし、Linux では同じ文字列が返される。 B<setdomainname>(2) と I<domainname> フィールドについても同じことが成り立つ。"
17808 #. type: Plain text
17809 #: build/C/man2/uname.2:131
17810 msgid "The length of the fields in the struct varies. Some operating systems or libraries use a hardcoded 9 or 33 or 65 or 257. Other systems use B<SYS_NMLN> or B<_SYS_NMLN> or B<UTSLEN> or B<_UTSNAME_LENGTH>. Clearly, it is a bad idea to use any of these constants; just use sizeof(...). Often 257 is chosen in order to have room for an internet hostname."
17811 msgstr "構造体のフィールドの長さはさまざまである。 OS やライブラリの中には、 ハードコードされた 9, 33, 65, 257 などの値を使っているものもある。 また B<SYS_NMLN>, B<_SYS_NMLN>, B<UTSLEN>, B<_UTSNAME_LENGTH> などを使っているシステムもある。 はっきり言って、これらの定数を使うのは悪い考え方であり、 sizeof(...) を使うべきである。 インターネットホスト名で使う領域を持たせるために、 257 が選ばれることが多い。"
17813 #. type: Plain text
17814 #: build/C/man2/uname.2:138
17815 msgid "Part of the utsname information is also accessible via I</proc/sys/kernel/>{I<ostype>, I<hostname>, I<osrelease>, I<version>, I<domainname>}."
17816 msgstr "utsname の情報は、 I</proc/sys/kernel/>{I<ostype>, I<hostname>, I<osrelease>, I<version>, I<domainname>} を使ってアクセスすることもできる。"
17818 #. That was back before Linux 1.0
17819 #. That was also back before Linux 1.0
17820 #. type: Plain text
17821 #: build/C/man2/uname.2:167
17822 msgid "Over time, increases in the size of the I<utsname> structure have led to three successive versions of B<uname>(): I<sys_olduname>() (slot I<__NR_oldolduname>), I<sys_uname>() (slot I<__NR_olduname>), and I<sys_newuname>() (slot I<__NR_uname)>. The first one used length 9 for all fields; the second used 65; the third also uses 65 but adds the I<domainname> field. The glibc B<uname>() wrapper function hides these details from applications, invoking the most recent version of the system call provided by the kernel."
17823 msgstr "時間の経過とともに、 I<utsname> 構造体のサイズが大きくなり、この影響で B<uname>() には 3つのバージョンが存在する: I<sys_olduname>() (スロットは I<__NR_oldolduname>)、 I<sys_uname>() (スロットは I<__NR_olduname>)、 I<sys_newuname>() (スロットは I<__NR_uname>)。 I<sys_olduname>() はすべてのフィールドが長さ 9 を使っていた。 I<sys_uname>() は長さ 65 を使っていた。 I<sys_newuname>() も長さ 65 を使っているが、 I<domainname> フィールドが追加されている。 glibc の B<uname>() ラッパー関数は、これらの詳細をアプリケーションから隠蔽し、 カーネルが提供しているシステムコールのうち最新のバージョンを起動する。"
17825 #. type: Plain text
17826 #: build/C/man2/uname.2:172
17827 msgid "B<uname>(1), B<getdomainname>(2), B<gethostname>(2), B<namespaces>(7)"
17828 msgstr "B<uname>(1), B<getdomainname>(2), B<gethostname>(2), B<namespaces>(7)"
17831 #: build/C/man2/uselib.2:31
17837 #: build/C/man2/uselib.2:31
17840 msgstr "2005-01-09"
17842 #. type: Plain text
17843 #: build/C/man2/uselib.2:34
17844 msgid "uselib - load shared library"
17845 msgstr "uselib - 共有ライブラリを選択する"
17847 #. type: Plain text
17848 #: build/C/man2/uselib.2:38
17849 msgid "B<int uselib(const char *>I<library>B<);>"
17850 msgstr "B<int uselib(const char *>I<library>B<);>"
17852 #. type: Plain text
17853 #: build/C/man2/uselib.2:48
17854 msgid "The system call B<uselib>() serves to load a shared library to be used by the calling process. It is given a pathname. The address where to load is found in the library itself. The library can have any recognized binary format."
17855 msgstr "システムコール B<uselib>() は、呼び出し元プロセスが使用する 共有ライブラリをロードする際に使用される。 このシステムコールにはライブラリのパス名を指定する。 ライブラリをロードするアドレスはライブラリ自身に書かれている。 ライブラリは認識可能なバイナリ形式であればどんな形式でもよい。"
17857 #. type: Plain text
17858 #: build/C/man2/uselib.2:59
17859 msgid "In addition to all of the error codes returned by B<open>(2) and B<mmap>(2), the following may also be returned:"
17860 msgstr "B<open>(2) と B<mmap>(2) が返すエラーコードに加えて、以下のエラーコードが設定されることがある。"
17862 #. type: Plain text
17863 #: build/C/man2/uselib.2:67
17864 msgid "The library specified by I<library> does not have read or execute permission, or the caller does not have search permission for one of the directories in the path prefix. (See also B<path_resolution>(7).)"
17865 msgstr "I<library> で指定されたライブラリに対する読み込み許可、または実行許可がない。 もしくは I<library> が存在するディレクトリかその上位のいずれかに対する検索許可がない (B<path_resolution>(7) も参照)。"
17867 #. type: Plain text
17868 #: build/C/man2/uselib.2:76
17869 msgid "The file specified by I<library> is not an executable of a known type; for example, it does not have the correct magic numbers."
17870 msgstr "I<library> で指定されたファイルが、実行可能ファイルと認識されるファイル種別ではない。 例えば、正しいマジックナンバーが付いていない。"
17872 #. type: Plain text
17873 #: build/C/man2/uselib.2:80
17874 msgid "B<uselib>() is Linux-specific, and should not be used in programs intended to be portable."
17875 msgstr "B<uselib>() は Linux 特有の関数であり、移植性を持たせたいプログラム には使用すべきでない。"
17877 #. type: Plain text
17878 #: build/C/man2/uselib.2:85
17879 msgid "B<uselib>() was used by early libc startup code to load the shared libraries with names found in an array of names in the binary."
17880 msgstr "初期の libc の起動コードは、 B<uselib>() を使って、 バイナリ中のリストに書かれている共有ライブラリを リスト中のそのままの名前でロードしていた。"
17882 #. libc 4.3.1f - changelog 1993-03-02
17883 #. libc 4.3.4 - changelog 1993-04-21
17884 #. type: Plain text
17885 #: build/C/man2/uselib.2:95
17886 msgid "Since libc 4.3.2, startup code tries to prefix these names with \"/usr/lib\", \"/lib\" and \"\" before giving up. In libc 4.3.4 and later these names are looked for in the directories found in B<LD_LIBRARY_PATH>, and if not found there, prefixes \"/usr/lib\", \"/lib\" and \"/\" are tried."
17887 msgstr "libc 4.3.2 以降では、これらの名前の前に \"/usr/lib\", \"/lib\", \"\" を つけて共有ライブラリを探すようになった。 libc 4.3.4 以降では、これらの名前の共有ライブラリをまず B<LD_LIBRARY_PATH> で指定されたディレクトリで探し、見つからなければ、 名前の前に \"/usr/lib\", \"/lib\", \"/\" をつけて探す。"
17889 #. type: Plain text
17890 #: build/C/man2/uselib.2:100
17891 msgid "From libc 4.4.4 on only the library \"/lib/ld.so\" is loaded, so that this dynamic library can load the remaining libraries needed (again using this call). This is also the state of affairs in libc5."
17892 msgstr "libc 4.4.4 以降では、ライブラリ \"/lib/ld.so\" だけがロードされ、その後で この動的ライブラリが (このシステムコールをもう一度使って) 必要な残りのライブラリをロードできるようになっている。"
17894 #. type: Plain text
17895 #: build/C/man2/uselib.2:102
17896 msgid "glibc2 does not use this call."
17897 msgstr "glibc2 は、このシステムコールを使用しない。"
17899 #. type: Plain text
17900 #: build/C/man2/uselib.2:112
17901 msgid "B<ar>(1), B<gcc>(1), B<ld>(1), B<ldd>(1), B<mmap>(2), B<open>(2), B<dlopen>(3), B<capabilities>(7), B<ld.so>(8)"
17902 msgstr "B<ar>(1), B<gcc>(1), B<ld>(1), B<ldd>(1), B<mmap>(2), B<open>(2), B<dlopen>(3), B<capabilities>(7), B<ld.so>(8)"
17905 #: build/C/man3/usleep.3:33
17911 #: build/C/man3/usleep.3:33
17914 msgstr "2013-12-10"
17916 #. type: Plain text
17917 #: build/C/man3/usleep.3:36
17918 msgid "usleep - suspend execution for microsecond intervals"
17919 msgstr "usleep - マイクロ秒単位で実行を延期する"
17921 #. type: Plain text
17922 #: build/C/man3/usleep.3:41
17924 msgid "B<int usleep(useconds_t >I<usec>B<);>\n"
17925 msgstr "B<int usleep(useconds_t >I<usec>B<);>\n"
17927 #. type: Plain text
17928 #: build/C/man3/usleep.3:49
17929 msgid "B<usleep>():"
17930 msgstr "B<usleep>():"
17932 #. type: Plain text
17933 #: build/C/man3/usleep.3:75
17934 msgid "The B<usleep>() function suspends execution of the calling thread for (at least) I<usec> microseconds. The sleep may be lengthened slightly by any system activity or by the time spent processing the call or by the granularity of system timers."
17935 msgstr "B<usleep>() 関数は (少なくとも) I<usec>マイクロ秒の間、 呼び出し元スレッドの実行を延期する。 システムの動作状況や呼び出しによる時間の消費やシステムタイマの粒度によって、 停止時間は設定した値よりも少し延ばされるかもしれない。"
17937 #. type: Plain text
17938 #: build/C/man3/usleep.3:82
17939 msgid "The B<usleep>() function returns 0 on success. On error, -1 is returned, with I<errno> set to indicate the cause of the error."
17940 msgstr "B<usleep>() 関数は成功すると 0 を返す。 エラーの場合、 -1 が返され、 I<errno> にエラーの原因を示す値が設定される。"
17942 #. type: Plain text
17943 #: build/C/man3/usleep.3:87
17944 msgid "Interrupted by a signal; see B<signal>(7)."
17945 msgstr "シグナルによって中断された。 B<signal>(7) 参照。"
17947 #. type: Plain text
17948 #: build/C/man3/usleep.3:91
17949 msgid "I<usec> is not smaller than 1000000. (On systems where that is considered an error.)"
17950 msgstr "I<usec> が 1000000 以上だった。 (これをエラーとみなすシステムのみ)"
17952 #. type: Plain text
17953 #: build/C/man3/usleep.3:96
17954 msgid "The B<usleep>() function is thread-safe."
17955 msgstr "B<usleep>() 関数はスレッドセーフである。"
17957 #. type: Plain text
17958 #: build/C/man3/usleep.3:103
17959 msgid "4.3BSD, POSIX.1-2001. POSIX.1-2001 declares this function obsolete; use B<nanosleep>(2) instead. POSIX.1-2008 removes the specification of B<usleep>()."
17960 msgstr "4.3BSD, POSIX.1-2001. POSIX.1-2001 では、この関数は過去のものと宣言されている。 代わりに B<nanosleep>(2) を使うこと。 POSIX.1-2008 では、 B<usleep>() の規定が削除されている。"
17962 #. type: Plain text
17963 #: build/C/man3/usleep.3:110
17964 msgid "On the original BSD implementation, and in glibc before version 2.2.2, the return type of this function is I<void>. The POSIX version returns I<int>, and this is also the prototype used since glibc 2.2.2."
17965 msgstr "もともとの BSD の実装や、バージョン 2.2.2 より前の glibc では、 この関数の返り値の型は I<void> である。 POSIX 版は I<int> を返し、このプロトタイプは glibc 2.2.2 以降で使用されている。"
17967 #. type: Plain text
17968 #: build/C/man3/usleep.3:114
17969 msgid "Only the B<EINVAL> error return is documented by SUSv2 and POSIX.1-2001."
17970 msgstr "エラーとして B<EINVAL> を返すというのは SUSv2 と POSIX.1-2001 でのみ文書化されている。"
17972 #. type: Plain text
17973 #: build/C/man3/usleep.3:122
17974 msgid "The type I<useconds_t> is an unsigned integer type capable of holding integers in the range [0,1000000]. Programs will be more portable if they never mention this type explicitly. Use"
17975 msgstr "I<useconds_t> 型は [0,1000000] の範囲の整数を扱うことができる 符号なし整数型である。 明示的にこの型を使わないことでプログラムの移植性がより高まる。 以下のように使うこと。"
17977 #. type: Plain text
17978 #: build/C/man3/usleep.3:130
17981 "#include E<lt>unistd.hE<gt>\n"
17983 " unsigned int usecs;\n"
17985 " usleep(usecs);\n"
17987 "#include E<lt>unistd.hE<gt>\n"
17989 " unsigned int usecs;\n"
17991 " usleep(usecs);\n"
17993 #. type: Plain text
17994 #: build/C/man3/usleep.3:147
17995 msgid "The interaction of this function with the B<SIGALRM> signal, and with other timer functions such as B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), B<ualarm>(3) is unspecified."
17996 msgstr "この関数と、 B<SIGALRM> シグナルあるいは B<alarm>(2), B<sleep>(3), B<nanosleep>(2), B<setitimer>(2), B<timer_create>(2), B<timer_delete>(2), B<timer_getoverrun>(2), B<timer_gettime>(2), B<timer_settime>(2), B<ualarm>(3) といったその他のタイマー関数を同時に使った場合の動作は未定義である。"
17998 #. type: Plain text
17999 #: build/C/man3/usleep.3:156
18000 msgid "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), B<setitimer>(2), B<sleep>(3), B<ualarm>(3), B<time>(7)"
18001 msgstr "B<alarm>(2), B<getitimer>(2), B<nanosleep>(2), B<select>(2), B<setitimer>(2), B<sleep>(3), B<ualarm>(3), B<time>(7)"
18004 #: build/C/man2/vfork.2:28
18010 #: build/C/man2/vfork.2:28
18013 msgstr "2012-08-05"
18015 #. type: Plain text
18016 #: build/C/man2/vfork.2:31
18017 msgid "vfork - create a child process and block parent"
18018 msgstr "vfork - 子プロセスを生成し親プロセスを停止させる"
18020 #. type: Plain text
18021 #: build/C/man2/vfork.2:37
18022 msgid "B<pid_t vfork(void);>"
18023 msgstr "B<pid_t vfork(void);>"
18025 #. type: Plain text
18026 #: build/C/man2/vfork.2:44
18027 msgid "B<vfork>():"
18028 msgstr "B<vfork>():"
18031 #: build/C/man2/vfork.2:63
18033 msgid "Standard description"
18036 #. type: Plain text
18037 #: build/C/man2/vfork.2:82
18038 msgid "(From POSIX.1) The B<vfork>() function has the same effect as B<fork>(2), except that the behavior is undefined if the process created by B<vfork>() either modifies any data other than a variable of type I<pid_t> used to store the return value from B<vfork>(), or returns from the function in which B<vfork>() was called, or calls any other function before successfully calling B<_exit>(2) or one of the B<exec>(3) family of functions."
18039 msgstr "(POSIX.1 より引用) B<vfork>() 関数は B<fork>(2) と同じ働きをするが、 B<vfork>() で作成されたプロセスが B<vfork>() からの返り値を格納している I<pid_t> 型の変数以外を変更したり、 B<vfork>() を呼び出している関数から return したり、 B<_exit>(2) や B<exec>(3) 族の関数をコールする前に他の関数をコールした場合の動作が 未定義であるという点が異なる。"
18042 #: build/C/man2/vfork.2:82
18044 msgid "Linux description"
18045 msgstr "LINUX での説明"
18047 #. type: Plain text
18048 #: build/C/man2/vfork.2:89
18049 msgid "B<vfork>(), just like B<fork>(2), creates a child process of the calling process. For details and return value and errors, see B<fork>(2)."
18050 msgstr "B<vfork>() は B<fork>(2) と全く同じように呼び出したプロセスの子プロセスを生成する。 詳しい説明と返り値、エラーについては B<fork>(2) を参照すること。"
18052 #. type: Plain text
18053 #: build/C/man2/vfork.2:98
18054 msgid "B<vfork>() is a special case of B<clone>(2). It is used to create new processes without copying the page tables of the parent process. It may be useful in performance-sensitive applications where a child is created which then immediately issues an B<execve>(2)."
18055 msgstr "B<vfork>() は B<clone>(2) の特殊な場合である。 親プロセスのページテーブルのコピーを行わずに新しいプロセスを 作成するために使用する。これは性能に敏感なアプリケーションにおいて 子プロセスを生成してすぐに B<execve>(2) する場合に有用かもしれない。"
18057 #. type: Plain text
18058 #: build/C/man2/vfork.2:115
18059 msgid "B<vfork>() differs from B<fork>(2) in that the calling thread is suspended until the child terminates (either normally, by calling B<_exit>(2), or abnormally, after delivery of a fatal signal), or it makes a call to B<execve>(2). Until that point, the child shares all memory with its parent, including the stack. The child must not return from the current function or call B<exit>(3), but may call B<_exit>(2)."
18061 "B<vfork>() は B<fork>(2) と違い、子プロセスが終了するか、\n"
18062 "B<execve>(2) をコールするまで呼び出し元のスレッドを停止 (suspend) させる。\n"
18063 "子プロセスの終了は、B<_exit>(2) の呼び出しによる通常終了、致命的なシグナルの\n"
18064 "配送後の異常終了の二つのケースがある。\n"
18065 "この時点までは、子プロセスはスタックを含む全てのメモリを親プロセスと共有する。\n"
18066 "子プロセスは現在の関数から return してはならず、\n"
18067 "B<exit>(3) もコールしてはならないが、B<_exit>(2) ならばコールしてもよい。"
18069 #. type: Plain text
18070 #: build/C/man2/vfork.2:126
18071 msgid "As with B<fork>(2), the child process created by B<vfork>() inherits copies of various of the caller's process attributes (e.g., file descriptors, signal dispositions, and current working directory); the B<vfork>() call differs only in the treatment of the virtual address space, as described above."
18073 "B<fork>(2) と同様に、 B<vfork>() で作成された子プロセスは、\n"
18074 "(ファイルディスクリプター、シグナル配送定義、カレントワーキングディレクトリなどの)\n"
18075 "呼び出し元のプロセスの各種の属性を継承する。\n"
18076 "B<vfork>() では、上で説明した仮想アドレス空間の扱いだけが異なる。"
18078 #. type: Plain text
18079 #: build/C/man2/vfork.2:132
18080 msgid "Signals sent to the parent arrive after the child releases the parent's memory (i.e., after the child terminates or calls B<execve>(2))."
18082 "親プロセスへ送られたシグナルは、子プロセスが親プロセスのメモリを解放した後\n"
18083 "(すなわち、子プロセスが終了するか B<execve>(2) を呼んだ後) に到着する。"
18086 #: build/C/man2/vfork.2:132
18088 msgid "Historic description"
18091 #. type: Plain text
18092 #: build/C/man2/vfork.2:159
18093 msgid "Under Linux, B<fork>(2) is implemented using copy-on-write pages, so the only penalty incurred by B<fork>(2) is the time and memory required to duplicate the parent's page tables, and to create a unique task structure for the child. However, in the bad old days a B<fork>(2) would require making a complete copy of the caller's data space, often needlessly, since usually immediately afterward an B<exec>(3) is done. Thus, for greater efficiency, BSD introduced the B<vfork>() system call, which did not fully copy the address space of the parent process, but borrowed the parent's memory and thread of control until a call to B<execve>(2) or an exit occurred. The parent process was suspended while the child was using its resources. The use of B<vfork>() was tricky: for example, not modifying data in the parent process depended on knowing which variables were held in a register."
18094 msgstr "Linux において B<fork>(2) は書き込み時コピー (copy-on-write) ページを使用して実装されている。 そのため B<fork>(2) を使用することによって被る損害は親プロセスのページテーブルを 複製するために必要な時間とメモリだけである。 しかしながら、忌しき昔には B<fork>(2) は呼び出したプロセスのデータ空間の全てのコピーしていたが、 これはしばしば不必要であった。なぜなら、たいていはすぐ後に B<exec>(3) を実行していたからである。 この場合の効率を上げるために BSD は B<vfork>() システムコールを導入して親プロセスのアドレス空間を完全にコピー するかわりに、 B<execve>(2) をコールするか exit が起きるまで親プロセスのメモリと制御スレッド を借りるようにした。 親プロセスは子プロセスがその資源を使用している間は停止された。 B<vfork>() は使いにくいものであった: 例えば、親プロセスの変数を変更しな いようにするためにはどの変数がレジスタに保持されているかを知らな ければならなかった。"
18096 #. type: Plain text
18097 #: build/C/man2/vfork.2:163
18098 msgid "4.3BSD; POSIX.1-2001 (but marked OBSOLETE). POSIX.1-2008 removes the specification of B<vfork>()."
18100 "4.3BSD; POSIX.1-2001 (廃止予定とされている)。\n"
18101 "POSIX.1-2008 では B<vfork>() の規定が削除されている。"
18103 #. In AIXv3.1 vfork is equivalent to fork.
18104 #. type: Plain text
18105 #: build/C/man2/vfork.2:174
18106 msgid "The requirements put on B<vfork>() by the standards are weaker than those put on B<fork>(2), so an implementation where the two are synonymous is compliant. In particular, the programmer cannot rely on the parent remaining blocked until the child either terminates or calls B<execve>(2), and cannot rely on any specific behavior with respect to shared memory."
18108 "B<vfork>() コールは他のオペレーティングシステムの同名のコールと ちょっと似\n"
18109 "ているかもしれない。規格が B<vfork>() に要求していることは、 B<fork>(2) に要\n"
18110 "求していることよりは弱い。したがって、 両者を同じものとして実装しても、規格に\n"
18111 "準拠していることになる。 特にプログラマーは、子プロセスが終了するか\n"
18112 "B<execve>(2) を呼び出すまで親プロセスが停止していることや、メモリを共有するこ\n"
18113 "とによる特殊な動作をあてにすべきではない。"
18115 #. type: Plain text
18116 #: build/C/man2/vfork.2:193
18117 msgid "Some consider the semantics of B<vfork>() to be an architectural blemish, and the 4.2BSD man page stated: \"This system call will be eliminated when proper system sharing mechanisms are implemented. Users should not depend on the memory sharing semantics of B<vfork>() as it will, in that case, be made synonymous to B<fork>(2).\" However, even though modern memory management hardware has decreased the performance difference between B<fork>(2) and B<vfork>(), there are various reasons why Linux and other systems have retained B<vfork>():"
18119 "B<vfork>() の動作は構造的な欠陥と考える人もいるだろうし、\n"
18120 "BSD のマニュアルには、「このシステムコールは妥当なシステム共有機構が実装さ\n"
18121 "れた場合には削除される。ユーザーは B<vfork>() のメモリ共有機能に依存するべき\n"
18122 "ではない。何故ならば、このシステムコール が削除された場合には、それは\n"
18123 "B<fork>(2) の同義語とされるからである。」と書かれている。しかしながら、\n"
18124 "最近のメモリ管理ハードウェアにより B<fork>(2) と B<vfork>() の間の性能差が\n"
18125 "減ったとはいえ、 Linux や他のシステムで B<vfork>() が残されているのには\n"
18128 #. type: Plain text
18129 #: build/C/man2/vfork.2:197
18130 msgid "Some performance-critical applications require the small performance advantage conferred by B<vfork>()."
18132 "性能に厳しいアプリケーションでは、 B<vfork>() により得られる\n"
18133 "小さな性能上のメリットが必要な場合がある。"
18135 #. http://stackoverflow.com/questions/4259629/what-is-the-difference-between-fork-and-vfork
18136 #. http://developers.sun.com/solaris/articles/subprocess/subprocess.html
18137 #. http://mailman.uclinux.org/pipermail/uclinux-dev/2009-April/000684.html
18138 #. type: Plain text
18139 #: build/C/man2/vfork.2:213
18140 msgid "B<vfork>() can be implemented on systems that lack a memory-management unit (MMU), but B<fork>(2) can't be implemented on such systems. (POSIX.1-2008 removed B<vfork>() from the standard; the POSIX rationale for the B<posix_spawn>(3) function notes that that function, which provides functionality equivalent to B<fork>(2)+B<exec>(3), is designed to be implementable on systems that lack an MMU.)"
18142 "B<vfork>() はメモリ管理ユニット (MMU) を持たないシステムでも実装すること\n"
18143 "ができるが、そのようなシステムで B<fork>(2) を実装することはできない。\n"
18144 "(POSIX.1-2008 では B<vfork>() が標準から削除された。\n"
18145 "B<posix_spawn>(3) 関数の POSIX の原理 (rationale) には、\n"
18146 "B<fork>(2)+B<exec>(3) と等価な機能を提供する B<posix_spawn>(3) は、\n"
18147 "MMU を持たないシステムでも実装できるように設計されたとの注記がある。)"
18150 #: build/C/man2/vfork.2:213
18152 msgid "Linux notes"
18153 msgstr "Linux での注意"
18155 #. type: Plain text
18156 #: build/C/man2/vfork.2:224
18157 msgid "Fork handlers established using B<pthread_atfork>(3) are not called when a multithreaded program employing the NPTL threading library calls B<vfork>(). Fork handlers are called in this case in a program using the LinuxThreads threading library. (See B<pthreads>(7) for a description of Linux threading libraries.)"
18158 msgstr "B<pthread_atfork>(3) を使って設定された fork ハンドラは NPTL スレッドライブラリコールを採用したマルチスレッドプログラムでは 呼び出されない。一方、LinuxThreads スレッドライブラリを使った プログラムでは、fork ハンドラは呼び出される。 (Linux のスレッドライブラリの説明は B<pthreads>(7) を参照。)"
18160 #. type: Plain text
18161 #: build/C/man2/vfork.2:232
18162 msgid "A call to B<vfork>() is equivalent to calling B<clone>(2) with I<flags> specified as:"
18164 "B<vfork>() の呼び出しは、以下の I<flags> を指定して B<clone>(2) を呼び出す\n"
18167 #. type: Plain text
18168 #: build/C/man2/vfork.2:234
18170 msgid " CLONE_VM | CLONE_VFORK | SIGCHLD\n"
18171 msgstr " CLONE_VM | CLONE_VFORK | SIGCHLD\n"
18173 #. In the release notes for 4.2BSD Sam Leffler wrote: `vfork: Is still
18174 #. present, but definitely on its way out'.
18175 #. type: Plain text
18176 #: build/C/man2/vfork.2:252
18177 msgid "The B<vfork>() system call appeared in 3.0BSD. In 4.4BSD it was made synonymous to B<fork>(2) but NetBSD introduced it again, cf. E<.UR http://www.netbsd.org\\:/Documentation\\:/kernel\\:/vfork.html> E<.UE .> In Linux, it has been equivalent to B<fork>(2) until 2.2.0-pre6 or so. Since 2.2.0-pre9 (on i386, somewhat later on other architectures) it is an independent system call. Support was added in glibc 2.0.112."
18178 msgstr "B<vfork>() システムコールは 3.0BSD に現われた。 4.4BSD において B<fork>(2) の同義語となったが、NetBSD では再び導入された。 E<.UR http://www.netbsd.org\\:/Documentation\\:/kernel\\:/vfork.html> E<.UE> を参照。 Linux では 2.2.0-pre6 あたりまでは B<fork>(2) と等価であった。(i386 では) 2.2.0-pre9 から (他のアーキテクチャでは 少し遅れて) 独立したシステムコールとなった。 glibc でのサポートは glibc-2.0.112 で追加された。"
18180 #. As far as I can tell, the following is not true in 2.6.19:
18181 #. Currently (Linux 2.3.25),
18185 #. and requires a kernel patch.
18186 #. type: Plain text
18187 #: build/C/man2/vfork.2:273
18188 msgid "Details of the signal handling are obscure and differ between systems. The BSD man page states: \"To avoid a possible deadlock situation, processes that are children in the middle of a B<vfork>() are never sent B<SIGTTOU> or B<SIGTTIN> signals; rather, output or I<ioctl>s are allowed and input attempts result in an end-of-file indication.\""
18189 msgstr "シグナルの扱いの詳細は不明瞭でシステムごとに異っている。 BSD のマニュアルには、 「デッドロック状態になる可能性があるので B<vfork>() の途中の子プロセスに B<SIGTTOU> や B<SIGTTIN> シグナルを送信してはならない; さらに出力や I<ioctl> は許されるが、入力を試みた場合には結果はファイル終端 (EOF) になる。」 と書かれている。"
18191 #. type: Plain text
18192 #: build/C/man2/vfork.2:279
18193 msgid "B<clone>(2), B<execve>(2), B<fork>(2), B<unshare>(2), B<wait>(2)"
18194 msgstr "B<clone>(2), B<execve>(2), B<fork>(2), B<unshare>(2), B<wait>(2)"
18197 #: build/C/man2/vhangup.2:28
18203 #: build/C/man2/vhangup.2:28
18206 msgstr "2007-07-26"
18208 #. type: Plain text
18209 #: build/C/man2/vhangup.2:31
18210 msgid "vhangup - virtually hangup the current terminal"
18211 msgstr "vhangup - 現在の端末を仮想的に (virtualy) ハングアップ (hangup) させる"
18213 #. type: Plain text
18214 #: build/C/man2/vhangup.2:35
18215 msgid "B<int vhangup(void);>"
18216 msgstr "B<int vhangup(void);>"
18218 #. type: Plain text
18219 #: build/C/man2/vhangup.2:44
18220 msgid "B<vhangup>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
18221 msgstr "B<vhangup>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
18223 #. type: Plain text
18224 #: build/C/man2/vhangup.2:50
18225 msgid "B<vhangup>() simulates a hangup on the current terminal. This call arranges for other users to have a ``clean'' terminal at login time."
18226 msgstr "B<vhangup>() は現在の端末 (terminal) でハングアップをシミュレートする。このコールは他のユーザーがログインした時に綺麗 (clean) な端末を得ることができるよう手配する。"
18228 #. type: Plain text
18229 #: build/C/man2/vhangup.2:63
18230 msgid "The calling process has insufficient privilege to call B<vhangup>(); the B<CAP_SYS_TTY_CONFIG> capability is required."
18231 msgstr "呼び出し元プロセスに B<vhangup>() を呼び出すための十分な特権がない。 B<CAP_SYS_TTY_CONFIG> ケーパビリティ (capability) が必要である。"
18233 #. type: Plain text
18234 #: build/C/man2/vhangup.2:66
18235 msgid "This call is Linux-specific, and should not be used in programs intended to be portable."
18236 msgstr "このコールは Linux 特有であり、移植を意図したプログラムで 使用してはいけない。"
18238 #. type: Plain text
18239 #: build/C/man2/vhangup.2:69
18240 msgid "B<capabilities>(7), B<init>(1)"
18241 msgstr "B<capabilities>(7), B<init>(1)"
18244 #: build/C/man2/execveat.2:26
18249 #. type: Plain text
18250 #: build/C/man2/execveat.2:29
18251 msgid "execveat - execute program relative to a directory file descriptor"
18252 msgstr "execveat - ディレクトリファイルディスクリプターからの相対パスで指定されるプログラムを実行する"
18254 #. type: Plain text
18255 #: build/C/man2/execveat.2:33
18256 msgid "B<int execveat(int >I<dirfd>B<, const char *>I<pathname>B<,>"
18257 msgstr "B<int execveat(int >I<dirfd>B<, const char *>I<pathname>B<,>"
18259 #. type: Plain text
18260 #: build/C/man2/execveat.2:35
18261 msgid "B< char *const >I<argv>B<[], char *const >I<envp>B<[],>"
18262 msgstr "B< char *const >I<argv>B<[], char *const >I<envp>B<[],>"
18264 #. type: Plain text
18265 #: build/C/man2/execveat.2:37
18266 msgid "B< int >I<flags>B<);>"
18267 msgstr "B< int >I<flags>B<);>"
18269 #. commit 51f39a1f0cea1cacf8c787f652f26dfee9611874
18270 #. type: Plain text
18271 #: build/C/man2/execveat.2:48
18272 msgid "The B<execveat>() system call executes the program referred to by the combination of I<dirfd> and I<pathname>. It operates in exactly the same way as B<execve>(2), except for the differences described in this manual page."
18273 msgstr "B<execveat>() システムコールは I<dirfd> と I<pathname> の組み合わせで参照されるプログラムを実行する。 B<execve>(2) と全く同様に動作するが、 以下で説明する点が異なる。"
18275 #. type: Plain text
18276 #: build/C/man2/execveat.2:58
18277 msgid "If the pathname given in I<pathname> is relative, then it is interpreted relative to the directory referred to by the file descriptor I<dirfd> (rather than relative to the current working directory of the calling process, as is done by B<execve>(2) for a relative pathname)."
18278 msgstr "I<pathname> で指定されたパス名が相対パスの場合、このパス名はファイルディスクリプター I<dirfd> が参照するディレクトリに対する相対パスと解釈される (B<execve>(2) に相対パス名を渡した場合のように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスではない)。"
18280 #. type: Plain text
18281 #: build/C/man2/execveat.2:70
18282 msgid "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current working directory of the calling process (like B<execve>(2))."
18283 msgstr "I<pathname> で指定されたパス名が相対パスで、 I<dirfd> が特別な値 B<AT_FDCWD> の場合、 (B<execve>(2) と同様に) I<pathname> は呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。"
18285 #. type: Plain text
18286 #: build/C/man2/execveat.2:86
18287 msgid "If I<pathname> is an empty string and the B<AT_EMPTY_PATH> flag is specified, then the file descriptor I<dirfd> specifies the file to be executed (i.e., I<dirfd> refers to an executable file, rather than a directory)."
18288 msgstr "I<pathname> が空文字列で、 B<AT_EMPTY_PATH> フラグが指定されている場合、 ファイルディスクリプター I<dirfd> は実行するファイルを指定する (すなわち I<dirfd> はディレクトリではなく実行ファイルを参照する)。"
18290 #. type: Plain text
18291 #: build/C/man2/execveat.2:90
18292 msgid "The I<flags> argument is a bit mask that can include zero or more of the following flags:"
18293 msgstr "I<flags> 引き数は、以下に示す値の 0 個以上を指定できるビットマスクである。"
18296 #: build/C/man2/execveat.2:90
18298 msgid "B<AT_EMPTY_PATH>"
18299 msgstr "B<AT_EMPTY_PATH>"
18301 #. type: Plain text
18302 #: build/C/man2/execveat.2:100
18303 msgid "If I<pathname> is an empty string, operate on the file referred to by I<dirfd> (which may have been obtained using the B<open>(2) B<O_PATH> flag)."
18304 msgstr "I<pathname> が空文字列の場合、 I<dirfd> が参照するファイルに対して動作を行う (I<dirfd> は B<open>(2() B<O_PATH> フラグを使って取得できる)。"
18306 #. type: Plain text
18307 #: build/C/man2/execveat.2:108
18308 msgid "If the file identified by I<dirfd> and a non-NULL I<pathname> is a symbolic link, then the call fails with the error B<ELOOP>."
18309 msgstr "I<dirfd> と NULL でない I<pathname> で指定されたファイルがシンボリックリンクの場合、 呼び出しはエラー B<ELOOP> で失敗する。"
18311 #. type: Plain text
18312 #: build/C/man2/execveat.2:115
18313 msgid "On success, B<execveat>() does not return. On error, -1 is returned, and I<errno> is set appropriately."
18314 msgstr "成功すると B<execveat>() は返らない。エラーの場合は -1 を返し、 I<errno> を適切に設定する。"
18316 #. type: Plain text
18317 #: build/C/man2/execveat.2:122
18318 msgid "The same errors that occur for B<execve>(2) can also occur for B<execveat>(). The following additional errors can occur for B<execveat>():"
18319 msgstr "B<execve>() で発生するのと同じエラーが B<execveat>() でも起こる。 B<execveat>() では以下のエラーも発生する。"
18321 #. type: Plain text
18322 #: build/C/man2/execveat.2:140
18323 msgid "I<flags> includes B<AT_SYMLINK_NOFOLLOW> and the file identified by I<dirfd> and a non-NULL I<pathname> is a symbolic link."
18324 msgstr "I<flags> に B<AT_SYMLINK_NOFOLLOW> が指定されていて、 I<dirfd> と NULL でない I<pathname> で指定されたファイルがシンボリックリンクである。"
18326 #. type: Plain text
18327 #: build/C/man2/execveat.2:154
18328 msgid "The program identified by I<dirfd> and I<pathname> requires the use of an interpreter program (such as a script starting with \"#!\"), but the file descriptor I<dirfd> was opened with the B<O_CLOEXEC> flag, with the result that the program file is inaccessible to the launched interpreter. See BUGS."
18329 msgstr "I<dirfd> と I<pathname> で指定されるプログラムはインタープリタープログラムを使用する必要があるが (例えば \"#!\" で始まるスクリプト)、 ファイルディスクリプター I<dirfd> が B<O_CLOEXEC> フラグ付きでオープンされており、 その結果プログラムファイルは起動されたインタープリターにアクセスできないことになる。 「バグ」を参照。"
18331 #. FIXME . check for glibc support in a future release
18332 #. type: Plain text
18333 #: build/C/man2/execveat.2:165
18334 msgid "B<execveat>() was added to Linux in kernel 3.19. GNU C library support is pending."
18335 msgstr "B<execveat>() はバージョン 3.19 で Linux に追加された。 GNU C ライブラリによるサポートは検討中である。"
18337 #. type: Plain text
18338 #: build/C/man2/execveat.2:169
18339 msgid "The B<execveat>() system call is Linux-specific."
18340 msgstr "B<execveat>() システムコールは Linux 固有である。"
18342 #. type: Plain text
18343 #: build/C/man2/execveat.2:179
18344 msgid "In addition to the reasons explained in B<openat>(2), the B<execveat>() system call is also needed to allow B<fexecve>(3) to be implemented on systems that do not have the I</proc> filesystem mounted."
18345 msgstr "B<openat>(2) で説明されている理由に加え、 B<execveat>() システムコールは、 B<fexecve>(3) を I</proc> ファイルシステムがマウントされていないシステムで実装するためにも必要である。"
18347 #. type: Plain text
18348 #: build/C/man2/execveat.2:202
18349 msgid "When asked to execute a script file, the I<argv[0]> that is passed to the script interpreter is a string of the form I</dev/fd/N> or I</dev/fd/N/P>, where I<N> is the number of the file descriptor passed via the I<dirfd> argument. A string of the first form occurs when B<AT_EMPTY_PATH> is employed. A string of the second form occurs when the script is specified via both I<dirfd> and I<pathname>; in this case, I<P> is the value given in I<pathname>."
18350 msgstr "スクリプトファイルを実行するように要求された際、 スクリプトインタープリターに渡される I<argv[0]> は、 I</dev/fd/N> 形式または I</dev/fd/N/P> 形式の文字列である。 ここで I<N> は I<dirfd> 引き数で渡されたファイルディスクリプター数である。 最初の形式の文字列となるのは、 B<AT_EMPTY_PATH> が使用された場合である。 2 番目の形式の文字列になるのは、 スクリプトが I<dirfd> と I<pathname> の両方を使って指定された場合である。 このとき I<P> は I<pathname> に指定された値である。"
18352 #. type: Plain text
18353 #: build/C/man2/execveat.2:210
18354 msgid "For the same reasons described in B<fexecve>(3), the natural idiom when using B<execveat>(2) is to set the close-on-exec flag on I<dirfd>. (But see BUGS.)"
18355 msgstr "B<fexecve>(3) で説明されているのと同じ理由で、 B<execveat>(2) を使う際の理にかなった方法は I<dirfd> に close-on-exec フラグをセットすることである (ただし「バグ」を参照のこと)。"
18357 #. type: Plain text
18358 #: build/C/man2/execveat.2:215
18359 msgid "The B<ENOENT> error described above means that it is not possible to set the close-on-exec flag on the file descriptor given to a call of the form:"
18360 msgstr "上記で説明したエラー B<ENOENT> は、 以下の形式の呼び出しに渡すファイルディスクリプターで close-on-exec フラグをセットできないことを意味している。"
18362 #. type: Plain text
18363 #: build/C/man2/execveat.2:217
18365 msgid " execveat(fd, \"\", argv, envp, AT_EMPTY_PATH);\n"
18366 msgstr " execveat(fd, \"\", argv, envp, AT_EMPTY_PATH);\n"
18369 #. For an example, see Michael Kerrisk's 2015-01-10 reply in this LKML
18370 #. thread (http://thread.gmane.org/gmane.linux.kernel/1836105/focus=20229):
18371 #. Subject: [PATCHv10 man-pages 5/5] execveat.2: initial man page.\" for execveat(2
18372 #. Date: Mon, 24 Nov 2014 11:53:59 +0000
18373 #. type: Plain text
18374 #: build/C/man2/execveat.2:229
18375 msgid "However, the inability to set the close-on-exec flag means that a file descriptor referring to the script leaks through to the script itself. As well as wasting a file descriptor, this leakage can lead to file-descriptor exhaustion in scenarios where scripts recursively employ B<execveat>()."
18376 msgstr "しかしながら、 close-on-exec フラグをセットできないということは、 スクリプトを参照するファイルディスクリプターはスクリプト自身に見えてしまうということである。 ファイルディスクリプターを無駄に使うだけでなく、 ファイルディスクリプターが見えてしまうことにより、 スクリプトが B<execveat>() を再帰的に利用する状況ではファイルディスクリプターの枯渇につながる可能性がある。"
18378 #. type: Plain text
18379 #: build/C/man2/execveat.2:233
18380 msgid "B<execve>(2), B<openat>(2), B<fexecve>(3)"
18381 msgstr "B<execve>(2), B<openat>(2), B<fexecve>(3)"