OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.37.
[linuxjm/LDP_man-pages.git] / po4a / numa / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2012-03-22 04:26+0900\n"
10 "PO-Revision-Date: 2012-03-22 00:35+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man2/get_mempolicy.2:25
20 #, no-wrap
21 msgid "GET_MEMPOLICY"
22 msgstr "GET_MEMPOLICY"
23
24 #. type: TH
25 #: build/C/man2/get_mempolicy.2:25 build/C/man2/mbind.2:25
26 #: build/C/man7/numa.7:27 build/C/man2/set_mempolicy.2:25
27 #, no-wrap
28 msgid "2008-08-15"
29 msgstr "2008-08-15"
30
31 #. type: TH
32 #: build/C/man2/get_mempolicy.2:25 build/C/man2/getcpu.2:7
33 #: build/C/man2/mbind.2:25 build/C/man2/migrate_pages.2:17
34 #: build/C/man2/move_pages.2:18 build/C/man7/numa.7:27
35 #: build/C/man2/set_mempolicy.2:25
36 #, no-wrap
37 msgid "Linux"
38 msgstr "Linux"
39
40 #. type: TH
41 #: build/C/man2/get_mempolicy.2:25 build/C/man2/getcpu.2:7
42 #: build/C/man2/mbind.2:25 build/C/man2/migrate_pages.2:17
43 #: build/C/man2/move_pages.2:18 build/C/man7/numa.7:27
44 #: build/C/man2/set_mempolicy.2:25
45 #, no-wrap
46 msgid "Linux Programmer's Manual"
47 msgstr "Linux Programmer's Manual"
48
49 #. type: SH
50 #: build/C/man2/get_mempolicy.2:26 build/C/man2/getcpu.2:8
51 #: build/C/man2/mbind.2:26 build/C/man2/migrate_pages.2:18
52 #: build/C/man2/move_pages.2:19 build/C/man7/numa.7:28
53 #: build/C/man2/set_mempolicy.2:26
54 #, no-wrap
55 msgid "NAME"
56 msgstr "名前"
57
58 #. type: Plain text
59 #: build/C/man2/get_mempolicy.2:28
60 msgid "get_mempolicy - Retrieve NUMA memory policy for a process"
61 msgstr "get_mempolicy - プロセスの NUMA メモリのポリシーを取得する"
62
63 #. type: SH
64 #: build/C/man2/get_mempolicy.2:28 build/C/man2/getcpu.2:10
65 #: build/C/man2/mbind.2:28 build/C/man2/migrate_pages.2:20
66 #: build/C/man2/move_pages.2:21 build/C/man2/set_mempolicy.2:28
67 #, no-wrap
68 msgid "SYNOPSIS"
69 msgstr "書式"
70
71 #. type: Plain text
72 #: build/C/man2/get_mempolicy.2:30
73 msgid "B<#include E<lt>numaif.hE<gt>>"
74 msgstr "B<#include E<lt>numaif.hE<gt>>\n"
75
76 #. type: Plain text
77 #: build/C/man2/get_mempolicy.2:35
78 #, no-wrap
79 msgid ""
80 "B<int get_mempolicy(int *>I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
81 "B<                  unsigned long >I<maxnode>B<, unsigned long >I<addr>B<,>\n"
82 "B<                  unsigned long >I<flags>B<);>\n"
83 msgstr ""
84 "B<int get_mempolicy(int *>I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
85 "B<                  unsigned long >I<maxnode>B<, unsigned long >I<addr>B<,>\n"
86 "B<                  unsigned long >I<flags>B<);>\n"
87
88 #. type: Plain text
89 #: build/C/man2/get_mempolicy.2:37 build/C/man2/mbind.2:37
90 #: build/C/man2/set_mempolicy.2:36
91 #, no-wrap
92 msgid "Link with I<-lnuma>.\n"
93 msgstr "I<-lnuma> でリンクする。\n"
94
95 #. type: SH
96 #: build/C/man2/get_mempolicy.2:38 build/C/man2/getcpu.2:17
97 #: build/C/man2/mbind.2:38 build/C/man2/migrate_pages.2:30
98 #: build/C/man2/move_pages.2:30 build/C/man7/numa.7:30
99 #: build/C/man2/set_mempolicy.2:37
100 #, no-wrap
101 msgid "DESCRIPTION"
102 msgstr "説明"
103
104 #. type: Plain text
105 #: build/C/man2/get_mempolicy.2:43
106 msgid ""
107 "B<get_mempolicy>()  retrieves the NUMA policy of the calling process or of a "
108 "memory address, depending on the setting of I<flags>."
109 msgstr ""
110 "B<get_mempolicy>()  は、呼び出し元プロセスもしくは指定されたメモリアドレスの "
111 "NUMA ポリシーを I<flags> の設定に従って取得する。"
112
113 #. type: Plain text
114 #: build/C/man2/get_mempolicy.2:48 build/C/man2/set_mempolicy.2:52
115 msgid ""
116 "A NUMA machine has different memory controllers with different distances to "
117 "specific CPUs.  The memory policy defines from which node memory is "
118 "allocated for the process."
119 msgstr ""
120 "NUMA (非対称メモリアクセス) マシンでは、CPU により メモリコントローラが異な"
121 "り、距離も異なっている。 メモリポリシーは、どのノードからメモリをそのプロセス"
122 "に 割り当てるかを定めるものである。"
123
124 #. type: Plain text
125 #: build/C/man2/get_mempolicy.2:65
126 msgid ""
127 "If I<flags> is specified as 0, then information about the calling process's "
128 "default policy (as set by B<set_mempolicy>(2))  is returned.  The policy "
129 "returned [I<mode> and I<nodemask>] may be used to restore the process's "
130 "policy to its state at the time of the call to B<get_mempolicy>()  using "
131 "B<set_mempolicy>(2)."
132 msgstr ""
133 "I<flags> に 0 が指定された場合、 (B<set_mempolicy>(2)  で設定された)  呼び出"
134 "し元プロセスのデフォルトポリシーに関する情報を返す。 返されたポリシー "
135 "[I<mode> と I<nodemask>] を B<set_mempolicy>(2)  に渡すことで、そのプロセスの"
136 "ポリシーを B<get_mempolicy>()  を呼び出した時点の状態に戻すことができる。"
137
138 #. type: Plain text
139 #: build/C/man2/get_mempolicy.2:87
140 msgid ""
141 "If I<flags> specifies B<MPOL_F_MEMS_ALLOWED> (available since Linux 2.6.24), "
142 "the I<mode> argument is ignored and the set of nodes [memories] that the "
143 "process is allowed to specify in subsequent calls to B<mbind>(2)  or "
144 "B<set_mempolicy>(2)  [in the absence of any I<mode flags>] is returned in "
145 "I<nodemask>.  It is not permitted to combine B<MPOL_F_MEMS_ALLOWED> with "
146 "either B<MPOL_F_ADDR> or B<MPOL_F_NODE>."
147 msgstr ""
148 "I<flags> に B<MPOL_F_MEMS_ALLOWED> (Linux 2.6.24 以降で利用可能) を指定する"
149 "と、 I<mode> 引き数は無視され、 そのプロセスがその後の B<mbind>(2)  や "
150 "B<set_mempolicy>(2)  で [I<モードフラグ> が指定されていない場合に ] 指定でき"
151 "るノード (メモリ) の集合が I<nodemask> に返される。 B<MPOL_F_MEMS_ALLOWED> "
152 "を、 B<MPOL_F_ADDR> や B<MPOL_F_NODE> と同時に指定することはできない。"
153
154 #. type: Plain text
155 #: build/C/man2/get_mempolicy.2:101
156 msgid ""
157 "If I<flags> specifies B<MPOL_F_ADDR>, then information is returned about the "
158 "policy governing the memory address given in I<addr>.  This policy may be "
159 "different from the process's default policy if B<mbind>(2)  or one of the "
160 "helper functions described in B<numa>(3)  has been used to establish a "
161 "policy for the memory range containing I<addr>."
162 msgstr ""
163 "I<flags> に B<MPOL_F_ADDR> が指定された場合、 I<addr> で指定されたメモリアド"
164 "レスに適用されているポリシーに関する情報を返す。 B<mbind>(2)  や B<numa>(3)  "
165 "で説明されているヘルパー関数を使って、 I<addr> を含むメモリ領域に対するポリ"
166 "シーが設定されていた場合には、 返されるポリシーはプロセスのデフォルトポリシー"
167 "と違うことがある。"
168
169 #. type: Plain text
170 #: build/C/man2/get_mempolicy.2:122
171 msgid ""
172 "If the I<mode> argument is not NULL, then B<get_mempolicy>()  will store the "
173 "policy mode and any optional I<mode flags> of the requested NUMA policy in "
174 "the location pointed to by this argument.  If I<nodemask> is not NULL, then "
175 "the nodemask associated with the policy will be stored in the location "
176 "pointed to by this argument.  I<maxnode> specifies the number of node IDs "
177 "that can be stored into I<nodemask>\\(emthat is, the maximum node ID plus "
178 "one.  The value specified by I<maxnode> is always rounded to a multiple of "
179 "I<sizeof(unsigned long)>."
180 msgstr ""
181 "I<mode> 引き数が NULL でない場合、 B<get_mempolicy>()  は要求された NUMA ポリ"
182 "シーのモードと追加の I<モードフラグ> を I<mode> が指す場所に格納する。 "
183 "I<nodemask> が NULL 以外の場合、そのポリシーに対応するノードマスクを この引き"
184 "数が指す場所に格納する。 I<maxnode> には I<nodemask> に格納できるノード ID の"
185 "数、つまり最大ノード ID に 1 を足した値を指定する。 I<maxnode> で指定された値"
186 "は常に I<sizeof(unsigned long)> の倍数に切り上げられる。"
187
188 #. type: Plain text
189 #: build/C/man2/get_mempolicy.2:139
190 msgid ""
191 "If I<flags> specifies both B<MPOL_F_NODE> and B<MPOL_F_ADDR>, "
192 "B<get_mempolicy>()  will return the node ID of the node on which the address "
193 "I<addr> is allocated into the location pointed to by I<mode>.  If no page "
194 "has yet been allocated for the specified address, B<get_mempolicy>()  will "
195 "allocate a page as if the process had performed a read [load] access to that "
196 "address, and return the ID of the node where that page was allocated."
197 msgstr ""
198 "I<flags> で B<MPOL_F_NODE> と B<MPOL_F_ADDR> の両方が指定された場合、 "
199 "B<get_mempolicy>()  はアドレス I<addr> が割り当てられているノードのノード ID "
200 "を I<mode> が指す場所に入れて返す。 指定されたアドレスにどのページもまだ割り"
201 "当てられていない場合、 B<get_mempolicy>()  は、あたかもそのプロセスがそのアド"
202 "レスに対して読み込みアクセスを 実行したかのようにページの割り当てを行い、ペー"
203 "ジが割り当てられた ノードの ID を返す。"
204
205 #.  Note:  code returns next interleave node via 'mode' argument -Lee Schermerhorn
206 #. type: Plain text
207 #: build/C/man2/get_mempolicy.2:164
208 msgid ""
209 "If I<flags> specifies B<MPOL_F_NODE>, but not B<MPOL_F_ADDR>, and the "
210 "process's current policy is B<MPOL_INTERLEAVE>, then B<get_mempolicy>()  "
211 "will return in the location pointed to by a non-NULL I<mode> argument, the "
212 "node ID of the next node that will be used for interleaving of internal "
213 "kernel pages allocated on behalf of the process.  These allocations include "
214 "pages for memory mapped files in process memory ranges mapped using the "
215 "B<mmap>(2)  call with the B<MAP_PRIVATE> flag for read accesses, and in "
216 "memory ranges mapped with the B<MAP_SHARED> flag for all accesses."
217 msgstr ""
218 "I<flags> で B<MPOL_F_NODE> は指定されたが、 B<MPOL_F_ADDR> は指定されていない"
219 "場合で、かつ そのプロセスの現在のポリシーが B<MPOL_INTERLEAVE> の場合、 "
220 "B<get_mempolicy>()  は、そのプロセスに対して割り当てられたカーネルの内部ペー"
221 "ジで 次にインターリーブ用に使用されるノードのノード ID を、 NULL でない "
222 "I<mode> 引き数が指す場所に入れて返す。 読み込みアクセス用として "
223 "B<MAP_PRIVATE> フラグ付きで B<mmap>(2)  したプロセスメモリ領域や、 任意のアク"
224 "セス用として B<MAP_SHARED> フラグ付きで B<mmap>(2)  したメモリ領域の、メモリ"
225 "マップされたファイルに対するページも 上記のプロセスに対して割り当てられたペー"
226 "ジに含まれる。"
227
228 #. type: Plain text
229 #: build/C/man2/get_mempolicy.2:166
230 msgid "Other flag values are reserved."
231 msgstr "他のフラグは予約されている。"
232
233 #. type: Plain text
234 #: build/C/man2/get_mempolicy.2:169
235 msgid "For an overview of the possible policies see B<set_mempolicy>(2)."
236 msgstr "設定可能なポリシーの概要については B<set_mempolicy>(2)  を参照。"
237
238 #. type: SH
239 #: build/C/man2/get_mempolicy.2:169 build/C/man2/mbind.2:289
240 #: build/C/man2/migrate_pages.2:87 build/C/man2/move_pages.2:141
241 #: build/C/man2/set_mempolicy.2:218
242 #, no-wrap
243 msgid "RETURN VALUE"
244 msgstr "返り値"
245
246 #. type: Plain text
247 #: build/C/man2/get_mempolicy.2:176
248 msgid ""
249 "On success, B<get_mempolicy>()  returns 0; on error, -1 is returned and "
250 "I<errno> is set to indicate the error."
251 msgstr ""
252 "成功すると、 B<get_mempolicy>()  は 0 を返す。エラーの場合、-1 を返し、 "
253 "I<errno> にエラーを示す値を設定する。"
254
255 #. type: SH
256 #: build/C/man2/get_mempolicy.2:176 build/C/man2/mbind.2:297
257 #: build/C/man2/migrate_pages.2:94 build/C/man2/move_pages.2:150
258 #: build/C/man2/set_mempolicy.2:225
259 #, no-wrap
260 msgid "ERRORS"
261 msgstr "エラー"
262
263 #. type: TP
264 #: build/C/man2/get_mempolicy.2:177 build/C/man2/mbind.2:299
265 #: build/C/man2/move_pages.2:159 build/C/man2/set_mempolicy.2:226
266 #, no-wrap
267 msgid "B<EFAULT>"
268 msgstr "B<EFAULT>"
269
270 #. type: Plain text
271 #: build/C/man2/get_mempolicy.2:184 build/C/man2/set_mempolicy.2:233
272 msgid ""
273 "Part of all of the memory range specified by I<nodemask> and I<maxnode> "
274 "points outside your accessible address space."
275 msgstr ""
276 "I<nodemask> と I<maxnode> で指定されたメモリ領域の一部または全部が、 呼び出し"
277 "元がアクセス可能なアドレス空間外を指している。"
278
279 #. type: TP
280 #: build/C/man2/get_mempolicy.2:184 build/C/man2/mbind.2:307
281 #: build/C/man2/move_pages.2:162 build/C/man2/set_mempolicy.2:233
282 #, no-wrap
283 msgid "B<EINVAL>"
284 msgstr "B<EINVAL>"
285
286 #. type: Plain text
287 #: build/C/man2/get_mempolicy.2:228
288 msgid ""
289 "The value specified by I<maxnode> is less than the number of node IDs "
290 "supported by the system.  Or I<flags> specified values other than "
291 "B<MPOL_F_NODE> or B<MPOL_F_ADDR>; or I<flags> specified B<MPOL_F_ADDR> and "
292 "I<addr> is NULL, or I<flags> did not specify B<MPOL_F_ADDR> and I<addr> is "
293 "not NULL.  Or, I<flags> specified B<MPOL_F_NODE> but not B<MPOL_F_ADDR> and "
294 "the current process policy is not B<MPOL_INTERLEAVE>.  Or, I<flags> "
295 "specified B<MPOL_F_MEMS_ALLOWED> with either B<MPOL_F_ADDR> or "
296 "B<MPOL_F_NODE>.  (And there are other B<EINVAL> cases.)"
297 msgstr ""
298 "I<maxnode> で指定された値がシステムがサポートするノード ID の数よりも少な"
299 "い。 または、 I<flags> に B<MPOL_F_NODE> でも B<MPOL_F_ADDR> でもない値が指定"
300 "された。 または、 I<flags> に B<MPOL_F_ADDR> が指定されており、 I<addr> が "
301 "NULL である。 または、 I<flags> に B<MPOL_F_ADDR> がされておらず、 I<addr> "
302 "が NULL でない。 または、 I<flags> に B<MPOL_F_NODE> が指定されており、 "
303 "B<MPOL_F_ADDR> が指定されておらず、 プロセスの現在のポリシーが "
304 "B<MPOL_INTERLEAVE> でない。 または、 I<flags> に B<MPOL_F_MEMS_ALLOWED> が指"
305 "定されており、さらに B<MPOL_F_ADDR> か B<MPOL_F_NODE> のいずれかが指定されて"
306 "いる。 (他にも B<EINVAL> となる場合がある。)"
307
308 #. type: SH
309 #: build/C/man2/get_mempolicy.2:228 build/C/man2/getcpu.2:51
310 #: build/C/man2/mbind.2:379 build/C/man2/migrate_pages.2:110
311 #: build/C/man2/move_pages.2:190 build/C/man2/set_mempolicy.2:273
312 #, no-wrap
313 msgid "VERSIONS"
314 msgstr "バージョン"
315
316 #. type: Plain text
317 #: build/C/man2/get_mempolicy.2:232
318 msgid ""
319 "The B<get_mempolicy>()  system call was added to the Linux kernel in version "
320 "2.6.7."
321 msgstr ""
322 "B<get_mempolicy>()  システムコールはバージョン 2.6.7 で Linux カーネルに追加"
323 "された。"
324
325 #. type: SH
326 #: build/C/man2/get_mempolicy.2:232 build/C/man2/getcpu.2:54
327 #: build/C/man2/mbind.2:383 build/C/man2/migrate_pages.2:114
328 #: build/C/man2/move_pages.2:193 build/C/man7/numa.7:178
329 #: build/C/man2/set_mempolicy.2:277
330 #, no-wrap
331 msgid "CONFORMING TO"
332 msgstr "準拠"
333
334 #. type: Plain text
335 #: build/C/man2/get_mempolicy.2:234 build/C/man2/mbind.2:385
336 #: build/C/man2/migrate_pages.2:116 build/C/man2/move_pages.2:195
337 #: build/C/man2/set_mempolicy.2:279
338 msgid "This system call is Linux-specific."
339 msgstr "このシステムコールは Linux 固有である。"
340
341 #. type: SH
342 #: build/C/man2/get_mempolicy.2:234 build/C/man2/getcpu.2:57
343 #: build/C/man2/mbind.2:385 build/C/man2/migrate_pages.2:116
344 #: build/C/man2/move_pages.2:195 build/C/man7/numa.7:146
345 #: build/C/man2/set_mempolicy.2:279
346 #, no-wrap
347 msgid "NOTES"
348 msgstr "注意"
349
350 #. type: Plain text
351 #: build/C/man2/get_mempolicy.2:237 build/C/man2/mbind.2:388
352 #: build/C/man2/migrate_pages.2:119 build/C/man2/move_pages.2:198
353 #: build/C/man2/set_mempolicy.2:287
354 msgid "For information on library support, see B<numa>(7)."
355 msgstr "ライブラリによるサポートについては B<numa>(7)  を参照。"
356
357 #. type: SH
358 #: build/C/man2/get_mempolicy.2:237 build/C/man2/getcpu.2:120
359 #: build/C/man2/mbind.2:437 build/C/man2/migrate_pages.2:146
360 #: build/C/man2/move_pages.2:225 build/C/man7/numa.7:180
361 #: build/C/man2/set_mempolicy.2:287
362 #, no-wrap
363 msgid "SEE ALSO"
364 msgstr "関連項目"
365
366 #. type: Plain text
367 #: build/C/man2/get_mempolicy.2:245
368 msgid ""
369 "B<getcpu>(2), B<mbind>(2), B<mmap>(2), B<set_mempolicy>(2), B<numa>(3), "
370 "B<numa>(7), B<numactl>(8)"
371 msgstr ""
372 "B<getcpu>(2), B<mbind>(2), B<mmap>(2), B<set_mempolicy>(2), B<numa>(3), "
373 "B<numa>(7), B<numactl>(8)"
374
375 #. type: SH
376 #: build/C/man2/get_mempolicy.2:245 build/C/man2/getcpu.2:126
377 #: build/C/man2/mbind.2:448 build/C/man2/migrate_pages.2:159
378 #: build/C/man2/move_pages.2:235 build/C/man7/numa.7:188
379 #: build/C/man2/set_mempolicy.2:296
380 #, no-wrap
381 msgid "COLOPHON"
382 msgstr ""
383
384 #. type: Plain text
385 #: build/C/man2/get_mempolicy.2:252 build/C/man2/getcpu.2:133
386 #: build/C/man2/mbind.2:455 build/C/man2/migrate_pages.2:166
387 #: build/C/man2/move_pages.2:242 build/C/man7/numa.7:195
388 #: build/C/man2/set_mempolicy.2:303
389 msgid ""
390 "This page is part of release 3.37 of the Linux I<man-pages> project.  A "
391 "description of the project, and information about reporting bugs, can be "
392 "found at http://www.kernel.org/doc/man-pages/."
393 msgstr ""
394
395 #. type: TH
396 #: build/C/man2/getcpu.2:7
397 #, no-wrap
398 msgid "GETCPU"
399 msgstr "GETCPU"
400
401 #. type: TH
402 #: build/C/man2/getcpu.2:7
403 #, no-wrap
404 msgid "2008-06-03"
405 msgstr "2008-06-03"
406
407 #. type: Plain text
408 #: build/C/man2/getcpu.2:10
409 msgid ""
410 "getcpu - determine CPU and NUMA node on which the calling thread is running"
411 msgstr ""
412 "getcpu - determine CPU and NUMA node on which the calling thread is running"
413
414 #. type: Plain text
415 #: build/C/man2/getcpu.2:13
416 #, no-wrap
417 msgid "B<#include E<lt>linux/getcpu.hE<gt>>\n"
418 msgstr "B<#include E<lt>linux/getcpu.hE<gt>>\n"
419
420 #. type: Plain text
421 #: build/C/man2/getcpu.2:16
422 #, no-wrap
423 msgid "B<int getcpu(unsigned *>I<cpu>B<, unsigned *>I<node>B<, struct getcpu_cache *>I<tcache>B<);>\n"
424 msgstr "B<int getcpu(unsigned *>I<cpu>B<, unsigned *>I<node>B<, struct getcpu_cache *>I<tcache>B<);>\n"
425
426 #. type: Plain text
427 #: build/C/man2/getcpu.2:34
428 msgid ""
429 "The B<getcpu>()  system call identifies the processor and node on which the "
430 "calling thread or process is currently running and writes them into the "
431 "integers pointed to by the I<cpu> and I<node> arguments.  The processor is a "
432 "unique small integer identifying a CPU.  The node is a unique small "
433 "identifier identifying a NUMA node.  When either I<cpu> or I<node> is NULL "
434 "nothing is written to the respective pointer."
435 msgstr ""
436 "The B<getcpu>()  system call identifies the processor and node on which the "
437 "calling thread or process is currently running and writes them into the "
438 "integers pointed to by the I<cpu> and I<node> arguments.  The processor is a "
439 "unique small integer identifying a CPU.  The node is a unique small "
440 "identifier identifying a NUMA node.  When either I<cpu> or I<node> is NULL "
441 "nothing is written to the respective pointer."
442
443 #. type: Plain text
444 #: build/C/man2/getcpu.2:36
445 msgid "The third argument to this system call is nowadays unused."
446 msgstr "The third argument to this system call is nowadays unused."
447
448 #. type: Plain text
449 #: build/C/man2/getcpu.2:51
450 msgid ""
451 "The information placed in I<cpu> is only guaranteed to be current at the "
452 "time of the call: unless the CPU affinity has been fixed using "
453 "B<sched_setaffinity>(2), the kernel might change the CPU at any time.  "
454 "(Normally this does not happen because the scheduler tries to minimize "
455 "movements between CPUs to keep caches hot, but it is possible.)  The caller "
456 "must be prepared to handle the situation when I<cpu> and I<node> are no "
457 "longer the current CPU and node."
458 msgstr ""
459 "The information placed in I<cpu> is only guaranteed to be current at the "
460 "time of the call: unless the CPU affinity has been fixed using "
461 "B<sched_setaffinity>(2), the kernel might change the CPU at any time.  "
462 "(Normally this does not happen because the scheduler tries to minimize "
463 "movements between CPUs to keep caches hot, but it is possible.)  The caller "
464 "must be prepared to handle the situation when I<cpu> and I<node> are no "
465 "longer the current CPU and node."
466
467 #. type: Plain text
468 #: build/C/man2/getcpu.2:54
469 msgid "B<getcpu>()  was added in kernel 2.6.19 for x86_64 and i386."
470 msgstr "B<getcpu>()  was added in kernel 2.6.19 for x86_64 and i386."
471
472 #. type: Plain text
473 #: build/C/man2/getcpu.2:57
474 msgid "B<getcpu>()  is Linux specific."
475 msgstr "B<getcpu>()  is Linux specific."
476
477 #. type: Plain text
478 #: build/C/man2/getcpu.2:63
479 msgid ""
480 "Linux makes a best effort to make this call as fast possible.  The intention "
481 "of B<getcpu>()  is to allow programs to make optimizations with per-CPU data "
482 "or for NUMA optimization."
483 msgstr ""
484 "Linux makes a best effort to make this call as fast possible.  The intention "
485 "of B<getcpu>()  is to allow programs to make optimizations with per-CPU data "
486 "or for NUMA optimization."
487
488 #. type: Plain text
489 #: build/C/man2/getcpu.2:69
490 msgid ""
491 "Glibc does not provide a wrapper for this system call; call it using "
492 "B<syscall>(2); or use B<sched_getcpu>(3)  instead."
493 msgstr ""
494 "Glibc does not provide a wrapper for this system call; call it using "
495 "B<syscall>(2); or use B<sched_getcpu>(3)  instead."
496
497 #.  commit 4307d1e5ada595c87f9a4d16db16ba5edb70dcb1
498 #.  Author: Ingo Molnar <mingo@elte.hu>
499 #.  Date:   Wed Nov 7 18:37:48 2007 +0100
500 #.  x86: ignore the sys_getcpu() tcache parameter
501 #.  ===== Before kernel 2.6.24: =====
502 #.  .I tcache
503 #.  is a pointer to a
504 #.  .IR "struct getcpu_cache"
505 #.  that is used as a cache by
506 #.  .BR getcpu ().
507 #.  The caller should put the cache into a thread-local variable
508 #.  if the process is multithreaded,
509 #.  because the cache cannot be shared between different threads.
510 #.  .I tcache
511 #.  can be NULL.
512 #.  If it is not NULL
513 #.  .BR getcpu ()
514 #.  will use it to speed up operation.
515 #.  The information inside the cache is private to the system call
516 #.  and should not be accessed by the user program.
517 #.  The information placed in the cache can change between kernel releases.
518 #.  When no cache is specified
519 #.  .BR getcpu ()
520 #.  will be slower,
521 #.  but always retrieve the current CPU and node information.
522 #.  With a cache
523 #.  .BR getcpu ()
524 #.  is faster.
525 #.  However, the cached information is only updated once per jiffy (see
526 #.  .BR time (7)).
527 #.  This means that the information could theoretically be out of date,
528 #.  although in practice the scheduler's attempt to maintain
529 #.  soft CPU affinity means that the information is unlikely to change
530 #.  over the course of the caching interval.
531 #. type: Plain text
532 #: build/C/man2/getcpu.2:120
533 msgid ""
534 "The I<tcache> argument is unused since Linux 2.6.24.  In earlier kernels, if "
535 "this argument was non-NULL, then it specified a pointer to a caller-"
536 "allocated buffer in thread-local storage that was used to provide a caching "
537 "mechanism for B<getcpu>().  Use of the cache could speed B<getcpu>()  calls, "
538 "at the cost that there was a very small chance that the returned information "
539 "would be out of date.  The caching mechanism was considered to cause "
540 "problems when migrating threads between CPUs, and so the argument is now "
541 "ignored."
542 msgstr ""
543 "The I<tcache> argument is unused since Linux 2.6.24.  In earlier kernels, if "
544 "this argument was non-NULL, then it specified a pointer to a caller-"
545 "allocated buffer in thread-local storage that was used to provide a caching "
546 "mechanism for B<getcpu>().  Use of the cache could speed B<getcpu>()  calls, "
547 "at the cost that there was a very small chance that the returned information "
548 "would be out of date.  The caching mechanism was considered to cause "
549 "problems when migrating threads between CPUs, and so the argument is now "
550 "ignored."
551
552 #. type: Plain text
553 #: build/C/man2/getcpu.2:126
554 msgid ""
555 "B<mbind>(2), B<sched_setaffinity>(2), B<set_mempolicy>(2), B<sched_getcpu>"
556 "(3), B<cpuset>(7)"
557 msgstr ""
558 "B<mbind>(2), B<sched_setaffinity>(2), B<set_mempolicy>(2), B<sched_getcpu>"
559 "(3), B<cpuset>(7)"
560
561 #. type: TH
562 #: build/C/man2/mbind.2:25
563 #, no-wrap
564 msgid "MBIND"
565 msgstr "MBIND"
566
567 #. type: Plain text
568 #: build/C/man2/mbind.2:28
569 msgid "mbind - Set memory policy for a memory range"
570 msgstr "mbind - メモリ領域に対してメモリポリシーを設定する"
571
572 #. type: Plain text
573 #: build/C/man2/mbind.2:31 build/C/man2/migrate_pages.2:23
574 #: build/C/man2/move_pages.2:24 build/C/man2/set_mempolicy.2:31
575 #, no-wrap
576 msgid "B<#include E<lt>numaif.hE<gt>>\n"
577 msgstr "B<#include E<lt>numaif.hE<gt>>\n"
578
579 #. type: Plain text
580 #: build/C/man2/mbind.2:35
581 #, no-wrap
582 msgid ""
583 "B<int mbind(void *>I<addr>B<, unsigned long >I<len>B<, int >I<mode>B<,>\n"
584 "B<          unsigned long *>I<nodemask>B<, unsigned long >I<maxnode>B<,>\n"
585 "B<          unsigned >I<flags>B<);>\n"
586 msgstr ""
587 "B<int mbind(void *>I<addr>B<, unsigned long >I<len>B<, int >I<mode>B<,>\n"
588 "B<          unsigned long *>I<nodemask>B<, unsigned long >I<maxnode>B<,>\n"
589 "B<          unsigned >I<flags>B<);>\n"
590
591 #. type: Plain text
592 #: build/C/man2/mbind.2:48
593 msgid ""
594 "B<mbind>()  sets the NUMA memory policy, which consists of a policy mode and "
595 "zero or more nodes, for the memory range starting with I<addr> and "
596 "continuing for I<len> bytes.  The memory policy defines from which node "
597 "memory is allocated."
598 msgstr ""
599 "B<mbind>()  は、 I<addr> から始まる長さ I<len> バイトの範囲のメモリに NUMA メ"
600 "モリポリシーを設定する。 NUMA ポリシーはポリシーモードと 0 個以上のノードから"
601 "構成される。 メモリポリシーはどのノードからメモリを割り当てるかを決定する。"
602
603 #. type: Plain text
604 #: build/C/man2/mbind.2:70
605 msgid ""
606 "If the memory range specified by the I<addr> and I<len> arguments includes "
607 "an \"anonymous\" region of memory\\(emthat is a region of memory created "
608 "using the B<mmap>(2)  system call with the B<MAP_ANONYMOUS>\\(emor a memory "
609 "mapped file, mapped using the B<mmap>(2)  system call with the "
610 "B<MAP_PRIVATE> flag, pages will only be allocated according to the specified "
611 "policy when the application writes [stores] to the page.  For anonymous "
612 "regions, an initial read access will use a shared page in the kernel "
613 "containing all zeros.  For a file mapped with B<MAP_PRIVATE>, an initial "
614 "read access will allocate pages according to the process policy of the "
615 "process that causes the page to be allocated.  This may not be the process "
616 "that called B<mbind>()."
617 msgstr ""
618 "I<addr> と I<len> で指定されたメモリ範囲に、 メモリの「無名」領域 \\(em "
619 "B<MAP_ANONYMOUS> 付きの B<mmap>(2)  システムコールを使って作成されたメモリ領"
620 "域 \\(em や B<MAP_PRIVATE> 付きの B<mmap>(2)  を使ってマップされたメモリマッ"
621 "プ・ファイルが含まれている場合、 ページが指定されたポリシーに基づいて割り当て"
622 "られるのは、アプリケーション がそのページへの書き込み (データの格納) を行った"
623 "時だけである。 無名領域の場合、最初の読み出しアクセスの際には カーネル内の全"
624 "データが 0 である共有ページが使用される。 B<MAP_PRIVATE> でマップされたファイ"
625 "ルの場合、最初の読み出しアクセスがあると、 ページ割り当てが発生するきっかけと"
626 "なったプロセスのデフォルトポリシー にしたがってページの割り当てが行われる。 "
627 "ページ割り当てのきっかけとなったプロセスは、 B<mbind>()  を呼び出したプロセス"
628 "と同じとは限らない。"
629
630 #. type: Plain text
631 #: build/C/man2/mbind.2:78
632 msgid ""
633 "The specified policy will be ignored for any B<MAP_SHARED> mappings in the "
634 "specified memory range.  Rather the pages will be allocated according to the "
635 "process policy of the process that caused the page to be allocated.  Again, "
636 "this may not be the process that called B<mbind>()."
637 msgstr ""
638 "指定されたメモリ範囲内にある B<MAP_SHARED> のマッピングでは指定されたポリシー"
639 "は無視され、 ページ割り当てが発生するきっかけとなったプロセスのデフォルトポリ"
640 "シーに したがってページの割り当てが行われることになる。 繰り返しになるが、"
641 "ページ割り当てのきっかけとなったプロセスは、 B<mbind>()  を呼び出したプロセス"
642 "と同じとは限らない。"
643
644 #. type: Plain text
645 #: build/C/man2/mbind.2:95
646 msgid ""
647 "If the specified memory range includes a shared memory region created using "
648 "the B<shmget>(2)  system call and attached using the B<shmat>(2)  system "
649 "call, pages allocated for the anonymous or shared memory region will be "
650 "allocated according to the policy specified, regardless which process "
651 "attached to the shared memory segment causes the allocation.  If, however, "
652 "the shared memory region was created with the B<SHM_HUGETLB> flag, the huge "
653 "pages will be allocated according to the policy specified only if the page "
654 "allocation is caused by the process that calls B<mbind>()  for that region."
655 msgstr ""
656 "指定されたメモリ範囲に、 B<shmget>(2)  システムコールを使って作成されたり、 "
657 "B<shmat>(2)  システムコールを使って付加 (attach) されたりした共有メモリ領域"
658 "が 含まれる場合、無名メモリ領域や共有メモリ領域に対するページ割り当ては、 共"
659 "有メモリセグメントへポリシーの設定を行ったプロセスがページ割り当て のきっかけ"
660 "となったかに関わらず、指定されたポリシーにしたがって割り当て が行われる。 し"
661 "かしながら、共有メモリ領域が B<SHM_HUGETLB> フラグを指定して作成された場合に"
662 "は、ヒュージページ (huge page) の割り当てが 指定されたポリシーにしたがって行"
663 "われるのは、その領域に対して B<mbind>()  を呼び出したプロセスがページ割り当て"
664 "のきっかけとなった場合のみである。"
665
666 #. type: Plain text
667 #: build/C/man2/mbind.2:106
668 msgid ""
669 "By default, B<mbind>()  only has an effect for new allocations; if the pages "
670 "inside the range have been already touched before setting the policy, then "
671 "the policy has no effect.  This default behavior may be overridden by the "
672 "B<MPOL_MF_MOVE> and B<MPOL_MF_MOVE_ALL> flags described below."
673 msgstr ""
674 "デフォルトでは、 B<mbind>()  は新規のメモリ割り当てに対してのみ効果を持つ。 "
675 "ポリシーが設定される前にすでに使用されている範囲内のページに対しては、 ポリ"
676 "シーは影響しない。 このデフォルトの動作は、以下で説明するフラグ "
677 "B<MPOL_MF_MOVE> や B<MPOL_MF_MOVE_ALL> により上書きされる可能性がある。"
678
679 #. type: Plain text
680 #: build/C/man2/mbind.2:121
681 msgid ""
682 "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
683 "B<MPOL_INTERLEAVE> or B<MPOL_PREFERRED>.  All policy modes except "
684 "B<MPOL_DEFAULT> require the caller to specify via the I<nodemask> argument, "
685 "the node or nodes to which the mode applies."
686 msgstr ""
687 "I<mode> 引き数には、 B<MPOL_DEFAULT>, B<MPOL_BIND>, B<MPOL_INTERLEAVE>, "
688 "B<MPOL_PREFERRED> のいずれか一つを指定しなければならない。 B<MPOL_DEFAULT> 以"
689 "外のポリシーモードの場合、呼び出し元は I<nodemask> 引き数でそのポリシーモード"
690 "を適用するノードを指定する必要がある。"
691
692 #. type: Plain text
693 #: build/C/man2/mbind.2:129
694 msgid ""
695 "The I<mode> argument may also include an optional I<mode flag >.  The "
696 "supported I<mode flags> are:"
697 msgstr ""
698 "I<mode> 引き数には、追加で I<モードフラグ> を含めることもできる。 サポートさ"
699 "れている I<モードフラグ> は以下の通りである。"
700
701 #. type: TP
702 #: build/C/man2/mbind.2:129
703 #, no-wrap
704 msgid "B<MPOL_F_STATIC_NODES> (since Linux-2.6.26)"
705 msgstr "B<MPOL_F_STATIC_NODES> (Linux-2.6.26 以降)"
706
707 #. type: Plain text
708 #: build/C/man2/mbind.2:139
709 msgid ""
710 "A nonempty I<nodemask> specifies physical node ids.  Linux does not remap "
711 "the I<nodemask> when the process moves to a different cpuset context, nor "
712 "when the set of nodes allowed by the process's current cpuset context "
713 "changes."
714 msgstr ""
715 "空でない I<nodemask> は、物理ノード ID である。 Linux では、そのプロセスが異"
716 "なる CPU 集合コンテキスト (cpuset context)  に移動した場合でも、そのプロセス"
717 "の現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、 "
718 "I<nodemask> をマッピングし直すことはない。"
719
720 #. type: TP
721 #: build/C/man2/mbind.2:139
722 #, no-wrap
723 msgid "B<MPOL_F_RELATIVE_NODES> (since Linux-2.6.26)"
724 msgstr "B<MPOL_F_RELATIVE_NODES> (Linux-2.6.26 以降)"
725
726 #. type: Plain text
727 #: build/C/man2/mbind.2:145 build/C/man2/set_mempolicy.2:111
728 msgid ""
729 "A nonempty I<nodemask> specifies node ids that are relative to the set of "
730 "node ids allowed by the process's current cpuset."
731 msgstr ""
732 "空でない I<nodemask> は、そのプロセスの現在の CPU 集合で許可されているノード "
733 "ID 集合 における相対的なノード ID である。"
734
735 #. type: Plain text
736 #: build/C/man2/mbind.2:173
737 msgid ""
738 "I<nodemask> points to a bitmask of nodes containing up to I<maxnode> bits.  "
739 "The bit mask size is rounded to the next multiple of I<sizeof(unsigned long)"
740 ">, but the kernel will only use bits up to I<maxnode>.  A NULL value of "
741 "I<nodemask> or a I<maxnode> value of zero specifies the empty set of nodes.  "
742 "If the value of I<maxnode> is zero, the I<nodemask> argument is ignored.  "
743 "Where a I<nodemask> is required, it must contain at least one node that is "
744 "on-line, allowed by the process's current cpuset context [unless the "
745 "B<MPOL_F_STATIC_NODES> mode flag is specified], and contains memory."
746 msgstr ""
747 "I<nodemask> は、最大で I<maxnode> ビットから構成されるノードのビットマスクを"
748 "指す。 ビットマスクの大きさは、直近の I<sizeof(unsigned long)> の倍数に切り上"
749 "げられるが、カーネルが使用するのは I<maxnode> 個までのビットだけである。 "
750 "NULL 値の I<nodemask> もしくは値が 0 の I<maxnode> はノードの空集合を表す。 "
751 "I<maxnode> の値が 0 の場合、 I<nodemask> 引き数は無視される。 I<nodemask> が"
752 "必須の場面では、 I<nodemask> に、オンラインで、そのプロセスの現在の CPU 集合"
753 "コンテキストで 許可されており (B<MPOL_F_STATIC_NODES> モードフラグが指定され"
754 "ていない場合)、メモリがあるノードが 少なくとも一つ入っていなければならない。"
755
756 #. type: Plain text
757 #: build/C/man2/mbind.2:195
758 msgid ""
759 "The B<MPOL_DEFAULT> mode requests that any nondefault policy be removed, "
760 "restoring default behavior.  When applied to a range of memory via B<mbind>"
761 "(), this means to use the process policy, which may have been set with "
762 "B<set_mempolicy>(2).  If the mode of the process policy is also "
763 "B<MPOL_DEFAULT>, the system-wide default policy will be used.  The system-"
764 "wide default policy allocates pages on the node of the CPU that triggers the "
765 "allocation.  For B<MPOL_DEFAULT>, the I<nodemask> and I<maxnode> arguments "
766 "must be specify the empty set of nodes."
767 msgstr ""
768 "モード B<MPOL_DEFAULT> はデフォルトではないプロセスのメモリポリシーを削除"
769 "し、 デフォルトの動作に戻すことを指定するものである。 B<mbind>()  経由で、あ"
770 "るメモリ領域に対して B<MPOL_DEFAULT> が適用された場合、プロセスのデフォルトポ"
771 "リシーを使用することを意味する。 プロセスのデフォルトポリシーは、 "
772 "B<set_mempolicy>(2)  で変更されているかもしれない。 プロセスのポリシーのモー"
773 "ドも B<MPOL_DEFAULT> の場合、システム全体のデフォルトポリシーが使用される。 "
774 "システム全体のデフォルトポリシーでは、割り当てのきっかけとなった CPU のノード"
775 "からページの割り当てを行う。 B<MPOL_DEFAULT> では、引き数 I<nodemask> と "
776 "I<maxnode> にノードの空集合を指定しなければならない。"
777
778 #. type: Plain text
779 #: build/C/man2/mbind.2:212
780 msgid ""
781 "The B<MPOL_BIND> mode specifies a strict policy that restricts memory "
782 "allocation to the nodes specified in I<nodemask>.  If I<nodemask> specifies "
783 "more than one node, page allocations will come from the node with the lowest "
784 "numeric node ID first, until that node contains no free memory.  Allocations "
785 "will then come from the node with the next highest node ID specified in "
786 "I<nodemask> and so forth, until none of the specified nodes contain free "
787 "memory.  Pages will not be allocated from any node not specified in the "
788 "I<nodemask>."
789 msgstr ""
790 "B<MPOL_BIND> は厳しいポリシーで、メモリ割り当ては I<nodemask> に指定された"
791 "ノードに限定される。 他のノードへの割り当ては行われない。 I<nodemask> に 2 個"
792 "以上のノードが指定された場合、ページの割り当ては ノード ID が数字として最小の"
793 "ノードから開始され、 そのノードに空きメモリがなくなるまでそのノードから ペー"
794 "ジ割り当てが行われる。そのノードに空きメモリがなくなったら、 次に小さなノー"
795 "ド ID を持つノードからページ割り当てが行われる。 これを、 I<nodemask> で指定"
796 "された全てのノードで空きメモリがなくなるまで繰り返す。 I<nodemask> で指定され"
797 "た以外のノードからはページの割り当ては行われない。"
798
799 #. type: Plain text
800 #: build/C/man2/mbind.2:225
801 msgid ""
802 "The B<MPOL_INTERLEAVE> mode specifies that page allocations be interleaved "
803 "across the set of nodes specified in I<nodemask>.  This optimizes for "
804 "bandwidth instead of latency by spreading out pages and memory accesses to "
805 "those pages across multiple nodes.  To be effective the memory area should "
806 "be fairly large, at least 1MB or bigger with a fairly uniform access "
807 "pattern.  Accesses to a single page of the area will still be limited to the "
808 "memory bandwidth of a single node."
809 msgstr ""
810 "B<MPOL_INTERLEAVE> は、メモリ割り当てが I<nodemask> に指定されたノード間で交"
811 "互に行われることを指定するものである。 このポリシーでは、複数のノードにページ"
812 "を広げて配置し、これらのページへの メモリアクセスを分散することで、遅延ではな"
813 "く、帯域を最適化する。 効果を得るには、メモリ領域をある程度大きくすべきであ"
814 "り、 メモリアクセスのパターンがかなり均一な場合でも 少なくとも 1MB 以上にすべ"
815 "きである。 このモードでも、一つのページへのアクセスに関しては 一つのノードの"
816 "メモリ帯域が上限となることは変わりない。"
817
818 #. type: Plain text
819 #: build/C/man2/mbind.2:244
820 msgid ""
821 "B<MPOL_PREFERRED> sets the preferred node for allocation.  The kernel will "
822 "try to allocate pages from this node first and fall back to other nodes if "
823 "the preferred nodes is low on free memory.  If I<nodemask> specifies more "
824 "than one node ID, the first node in the mask will be selected as the "
825 "preferred node.  If the I<nodemask> and I<maxnode> arguments specify the "
826 "empty set, then the memory is allocated on the node of the CPU that "
827 "triggered the allocation.  This is the only way to specify \"local allocation"
828 "\" for a range of memory via B<mbind>()."
829 msgstr ""
830 "B<MPOL_PREFERRED> は、割り当て時に優先されるノードを設定する。 カーネルはまず"
831 "優先ノードにページ割り当てを行おうとし、 優先ノードに空きメモリが少ない場合に"
832 "他のノードに割り当てを行う。 I<nodemask> に複数のノード ID が指定された場合"
833 "は、 I<nodemask> 内の最初のノードが優先ノードとして選択される。 引き数 "
834 "I<nodemask>, I<maxnode> で空集合が指定された場合は、割り当てのきっかけとなっ"
835 "た CPU のノードに メモリ割り当てが行われる。 B<mbind>(2)  で、あるメモリ領域"
836 "に対して「ローカルからの割り当て (local allocation)」を 指定する方法はこれし"
837 "かない。"
838
839 #.  According to the kernel code, the following is not true
840 #.  --Lee Schermerhorn
841 #.  In 2.6.16 or later the kernel will also try to move pages
842 #.  to the requested node with this flag.
843 #. type: Plain text
844 #: build/C/man2/mbind.2:260
845 msgid ""
846 "If B<MPOL_MF_STRICT> is passed in I<flags> and I<mode> is not "
847 "B<MPOL_DEFAULT>, then the call will fail with the error B<EIO> if the "
848 "existing pages in the memory range don't follow the policy."
849 msgstr ""
850 "I<flags> に B<MPOL_MF_STRICT> が 指定され、 I<mode> が B<MPOL_DEFAULT> でない"
851 "場合、 指定されたポリシーに従っていないメモリ領域にページが存在すると、 "
852 "B<mbind>()  はエラー B<EIO> で失敗する。"
853
854 #. type: Plain text
855 #: build/C/man2/mbind.2:273
856 msgid ""
857 "If B<MPOL_MF_MOVE> is specified in I<flags>, then the kernel will attempt to "
858 "move all the existing pages in the memory range so that they follow the "
859 "policy.  Pages that are shared with other processes will not be moved.  If "
860 "B<MPOL_MF_STRICT> is also specified, then the call will fail with the error "
861 "B<EIO> if some pages could not be moved."
862 msgstr ""
863 "I<flags> に B<MPOL_MF_MOVE> が指定されると、カーネルはそのメモリ領域内の既存"
864 "の全てのページを移動し、 指定されたポリシーに従うようにしようとする。 他のプ"
865 "ロセスと共有されているページは移動されない。 B<MPOL_MF_STRICT> も指定された場"
866 "合、移動できなかったページがあると、 B<mbind>()  はエラー B<EIO> で失敗する。"
867
868 #.  ---------------------------------------------------------------
869 #. type: Plain text
870 #: build/C/man2/mbind.2:289
871 msgid ""
872 "If B<MPOL_MF_MOVE_ALL> is passed in I<flags>, then the kernel will attempt "
873 "to move all existing pages in the memory range regardless of whether other "
874 "processes use the pages.  The calling process must be privileged "
875 "(B<CAP_SYS_NICE>)  to use this flag.  If B<MPOL_MF_STRICT> is also "
876 "specified, then the call will fail with the error B<EIO> if some pages could "
877 "not be moved."
878 msgstr ""
879 "I<flags> に B<MPOL_MF_MOVE_ALL> が指定されると、カーネルはそのメモリ領域内の"
880 "既存の全てのページを、 他のプロセスがページを使用しているかどうかに関わらず移"
881 "動する。 このフラグを使用するには、呼び出し元のプロセスは特権 "
882 "(B<CAP_SYS_NICE>)  を持っていなければならない。 B<MPOL_MF_STRICT> も指定され"
883 "た場合、移動できなかったページがあると、 B<mbind>()  はエラー B<EIO> で失敗す"
884 "る。"
885
886 #.  ---------------------------------------------------------------
887 #. type: Plain text
888 #: build/C/man2/mbind.2:297
889 msgid ""
890 "On success, B<mbind>()  returns 0; on error, -1 is returned and I<errno> is "
891 "set to indicate the error."
892 msgstr ""
893 "成功すると、 B<mbind>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> にエ"
894 "ラーを示す値を設定する。"
895
896 #. type: Plain text
897 #: build/C/man2/mbind.2:307
898 msgid ""
899 "Part or all of the memory range specified by I<nodemask> and I<maxnode> "
900 "points outside your accessible address space.  Or, there was an unmapped "
901 "hole in the specified memory range."
902 msgstr ""
903 "I<nodemask> と I<maxnode> で指定されたメモリ領域の一部または全部が、 呼び出し"
904 "元がアクセス可能なアドレス空間外を指している。 もしくは指定されたメモリ領域に"
905 "マップされていない部分 (unmapped hole)  があった、"
906
907 #.  As at 2.6.23, this limit is "a page worth of bits", e.g.,
908 #.  8 * 4096 bits, assuming a 4kB page size.
909 #. type: Plain text
910 #: build/C/man2/mbind.2:355
911 msgid ""
912 "An invalid value was specified for I<flags> or I<mode>; or I<addr + len> was "
913 "less than I<addr>; or I<addr> is not a multiple of the system page size.  "
914 "Or, I<mode> is B<MPOL_DEFAULT> and I<nodemask> specified a nonempty set; or "
915 "I<mode> is B<MPOL_BIND> or B<MPOL_INTERLEAVE> and I<nodemask> is empty.  Or, "
916 "I<maxnode> exceeds a kernel-imposed limit.  Or, I<nodemask> specifies one or "
917 "more node IDs that are greater than the maximum supported node ID.  Or, none "
918 "of the node IDs specified by I<nodemask> are on-line and allowed by the "
919 "process's current cpuset context, or none of the specified nodes contain "
920 "memory.  Or, the I<mode> argument specified both B<MPOL_F_STATIC_NODES> and "
921 "B<MPOL_F_RELATIVE_NODES>."
922 msgstr ""
923 "I<flags> や I<mode> に不正な値が指定された。 I<addr + len> が I<addr> より小"
924 "さい。 I<addr> がシステムのページサイズの倍数になっていない。 または I<mode> "
925 "が B<MPOL_DEFAULT> で I<nodemask> に空でない集合が指定された。 I<mode> が "
926 "B<MPOL_BIND> か B<MPOL_INTERLEAVE> で I<nodemask> が空であった。 I<maxnode> "
927 "がカーネルに適用された上限を超えている。 I<nodemask> に、サポートされている最"
928 "大ノード ID より大きいノードが指定された。 I<nodemask> に、オンラインで、かつ"
929 "そのプロセスの現在の CPU 集合コンテキストで 許可されているノードが一つも含ま"
930 "れていないか、 メモリを含むノードが一つも指定されていない。 I<mode> 引き数に "
931 "B<MPOL_F_STATIC_NODES> と B<MPOL_F_RELATIVE_NODES> の両方が指定された。"
932
933 #. type: TP
934 #: build/C/man2/mbind.2:355
935 #, no-wrap
936 msgid "B<EIO>"
937 msgstr "B<EIO>"
938
939 #. type: Plain text
940 #: build/C/man2/mbind.2:366
941 msgid ""
942 "B<MPOL_MF_STRICT> was specified and an existing page was already on a node "
943 "that does not follow the policy; or B<MPOL_MF_MOVE> or B<MPOL_MF_MOVE_ALL> "
944 "was specified and the kernel was unable to move all existing pages in the "
945 "range."
946 msgstr ""
947 "B<MPOL_MF_STRICT> が指定されたが、このポリシーに従っていないノードに すでに"
948 "ページが存在していた。 もしくは B<MPOL_MF_MOVE> か B<MPOL_MF_MOVE_ALL> が指定"
949 "されたが、カーネルが指定された領域内の既存の全てのページを 移動することができ"
950 "なかった。"
951
952 #. type: TP
953 #: build/C/man2/mbind.2:366 build/C/man2/set_mempolicy.2:270
954 #, no-wrap
955 msgid "B<ENOMEM>"
956 msgstr "B<ENOMEM>"
957
958 #. type: Plain text
959 #: build/C/man2/mbind.2:369 build/C/man2/set_mempolicy.2:273
960 msgid "Insufficient kernel memory was available."
961 msgstr "利用可能なカーネルメモリが十分でなかった。"
962
963 #. type: TP
964 #: build/C/man2/mbind.2:369 build/C/man2/migrate_pages.2:95
965 #: build/C/man2/move_pages.2:178
966 #, no-wrap
967 msgid "B<EPERM>"
968 msgstr "B<EPERM>"
969
970 #.  ---------------------------------------------------------------
971 #. type: Plain text
972 #: build/C/man2/mbind.2:379
973 msgid ""
974 "The I<flags> argument included the B<MPOL_MF_MOVE_ALL> flag and the caller "
975 "does not have the B<CAP_SYS_NICE> privilege."
976 msgstr ""
977 "I<flags> 引き数に B<MPOL_MF_MOVE_ALL> フラグが含まれているが、呼び出し元が "
978 "B<CAP_SYS_NICE> 特権を持たない。"
979
980 #. type: Plain text
981 #: build/C/man2/mbind.2:383
982 msgid ""
983 "The B<mbind>()  system call was added to the Linux kernel in version 2.6.7."
984 msgstr ""
985 "B<mbind>()  システムコールはバージョン 2.6.7 で Linux カーネルに追加された。"
986
987 #. type: Plain text
988 #: build/C/man2/mbind.2:393
989 msgid ""
990 "NUMA policy is not supported on a memory mapped file range that was mapped "
991 "with the B<MAP_SHARED> flag."
992 msgstr ""
993 "NUMA ポリシーは、 B<MAP_SHARED> フラグが指定されてマップされたメモリマップ・"
994 "ファイルの領域では サポートされていない。"
995
996 #. type: Plain text
997 #: build/C/man2/mbind.2:425
998 msgid ""
999 "The B<MPOL_DEFAULT> mode can have different effects for B<mbind>()  and "
1000 "B<set_mempolicy>(2).  When B<MPOL_DEFAULT> is specified for B<set_mempolicy>"
1001 "(2), the process's policy reverts to system default policy or local "
1002 "allocation.  When B<MPOL_DEFAULT> is specified for a range of memory using "
1003 "B<mbind>(), any pages subsequently allocated for that range will use the "
1004 "process's policy, as set by B<set_mempolicy>(2).  This effectively removes "
1005 "the explicit policy from the specified range, \"falling back\" to a possibly "
1006 "nondefault policy.  To select explicit \"local allocation\" for a memory "
1007 "range, specify a I<mode> of B<MPOL_PREFERRED> with an empty set of nodes.  "
1008 "This method will work for B<set_mempolicy>(2), as well."
1009 msgstr ""
1010 "B<MPOL_DEFAULT> モードは、 B<mbind>()  と B<set_mempolicy>(2)  で異なる効果を"
1011 "持つことができる。 B<set_mempolicy>(2)  で B<MPOL_DEFAULT> が指定された場合、"
1012 "そのプロセスのポリシーはシステムの デフォルトポリシー、すなわちローカルからの"
1013 "割り当て、に戻る。 B<mbind>()  を使ってメモリのある領域に B<MPOL_DEFAULT> が"
1014 "指定された場合、その範囲に対してそれ以降に行われるページの割り当てでは、 "
1015 "B<set_mempolicy>(2)  で設定したのと同じように、そのプロセスのポリシーが適用さ"
1016 "れる。 これにより、特定のメモリ領域についてだけ明示的なポリシーを削除し、 デ"
1017 "フォルトのポリシーに「戻す」ことができる。 あるメモリ領域に対して「ローカルか"
1018 "らの割り当て」を明示的に設定するには、 I<mode> に B<MPOL_PREFERRED> を指定"
1019 "し、 I<nodemask> に空集合のノードを指定すればよい。 この方法は "
1020 "B<set_mempolicy>(2)  でも通用する。"
1021
1022 #. type: Plain text
1023 #: build/C/man2/mbind.2:429
1024 msgid ""
1025 "Support for huge page policy was added with 2.6.16.  For interleave policy "
1026 "to be effective on huge page mappings the policied memory needs to be tens "
1027 "of megabytes or larger."
1028 msgstr ""
1029 "2.6.16 でヒュージページ・ポリシーへの対応が追加された。 インターリーブ・ポリ"
1030 "シーがヒュージページのマッピングで効果を持つには、 ポリシーが適用されるメモリ"
1031 "が数十メガバイト以上である必要がある。"
1032
1033 #. type: Plain text
1034 #: build/C/man2/mbind.2:432
1035 msgid "B<MPOL_MF_STRICT> is ignored on huge page mappings."
1036 msgstr "B<MPOL_MF_STRICT> はヒュージページのマッピングでは無視される。"
1037
1038 #. type: Plain text
1039 #: build/C/man2/mbind.2:437
1040 msgid ""
1041 "B<MPOL_MF_MOVE> and B<MPOL_MF_MOVE_ALL> are only available on Linux 2.6.16 "
1042 "and later."
1043 msgstr ""
1044 "B<MPOL_MF_MOVE> と B<MPOL_MF_MOVE_ALL> は Linux 2.6.16 以降でのみ利用可能であ"
1045 "る。"
1046
1047 #. type: Plain text
1048 #: build/C/man2/mbind.2:448
1049 msgid ""
1050 "B<get_mempolicy>(2), B<getcpu>(2), B<mmap>(2), B<set_mempolicy>(2), B<shmat>"
1051 "(2), B<shmget>(2), B<numa>(3), B<cpuset>(7), B<numa>(7), B<numactl>(8)"
1052 msgstr ""
1053 "B<get_mempolicy>(2), B<getcpu>(2), B<mmap>(2), B<set_mempolicy>(2), B<shmat>"
1054 "(2), B<shmget>(2), B<numa>(3), B<cpuset>(7), B<numa>(7), B<numactl>(8)"
1055
1056 #. type: TH
1057 #: build/C/man2/migrate_pages.2:17
1058 #, no-wrap
1059 msgid "MIGRATE_PAGES"
1060 msgstr "MIGRATE_PAGES"
1061
1062 #. type: TH
1063 #: build/C/man2/migrate_pages.2:17
1064 #, no-wrap
1065 msgid "2010-11-01"
1066 msgstr "2010-11-01"
1067
1068 #. type: Plain text
1069 #: build/C/man2/migrate_pages.2:20
1070 msgid "migrate_pages - move all pages in a process to another set of nodes"
1071 msgstr "migrate_pages - move all pages in a process to another set of nodes"
1072
1073 #. type: Plain text
1074 #: build/C/man2/migrate_pages.2:27
1075 #, no-wrap
1076 msgid ""
1077 "B<long migrate_pages(int >I<pid>B<, unsigned long >I<maxnode,>\n"
1078 "B<                   const unsigned long *>I<old_nodes,>\n"
1079 "B<                   const unsigned long *>I<new_nodes);>\n"
1080 msgstr ""
1081 "B<long migrate_pages(int >I<pid>B<, unsigned long >I<maxnode,>\n"
1082 "B<                   const unsigned long *>I<old_nodes,>\n"
1083 "B<                   const unsigned long *>I<new_nodes);>\n"
1084
1085 #. type: Plain text
1086 #: build/C/man2/migrate_pages.2:30 build/C/man2/move_pages.2:30
1087 msgid "Link with I<-lnuma>."
1088 msgstr "I<-lnuma> とリンクする。"
1089
1090 #. type: Plain text
1091 #: build/C/man2/migrate_pages.2:46
1092 msgid ""
1093 "B<migrate_pages>()  moves all pages of the process I<pid> that are in memory "
1094 "nodes I<old_nodes> to the memory nodes in I<new_nodes>.  Pages not located "
1095 "in any node in I<old_nodes> will not be migrated.  As far as possible, the "
1096 "kernel maintains the relative topology relationship inside I<old_nodes> "
1097 "during the migration to I<new_nodes>."
1098 msgstr ""
1099 "B<migrate_pages>()  moves all pages of the process I<pid> that are in memory "
1100 "nodes I<old_nodes> to the memory nodes in I<new_nodes>.  Pages not located "
1101 "in any node in I<old_nodes> will not be migrated.  As far as possible, the "
1102 "kernel maintains the relative topology relationship inside I<old_nodes> "
1103 "during the migration to I<new_nodes>."
1104
1105 #. type: Plain text
1106 #: build/C/man2/migrate_pages.2:68
1107 msgid ""
1108 "The I<old_nodes> and I<new_nodes> arguments are pointers to bit masks of "
1109 "node numbers, with up to I<maxnode> bits in each mask.  These masks are "
1110 "maintained as arrays of unsigned I<long> integers (in the last I<long> "
1111 "integer, the bits beyond those specified by I<maxnode> are ignored).  The "
1112 "I<maxnode> argument is the maximum node number in the bit mask plus one "
1113 "(this is the same as in B<mbind>(2), but different from B<select>(2))."
1114 msgstr ""
1115 "The I<old_nodes> and I<new_nodes> arguments are pointers to bit masks of "
1116 "node numbers, with up to I<maxnode> bits in each mask.  These masks are "
1117 "maintained as arrays of unsigned I<long> integers (in the last I<long> "
1118 "integer, the bits beyond those specified by I<maxnode> are ignored).  The "
1119 "I<maxnode> argument is the maximum node number in the bit mask plus one "
1120 "(this is the same as in B<mbind>(2), but different from B<select>(2))."
1121
1122 #. type: Plain text
1123 #: build/C/man2/migrate_pages.2:82
1124 msgid ""
1125 "The I<pid> argument is the ID of the process whose pages are to be moved.  "
1126 "To move pages in another process, the caller must be privileged "
1127 "(B<CAP_SYS_NICE>)  or the real or effective user ID of the calling process "
1128 "must match the real or saved-set user ID of the target process.  If I<pid> "
1129 "is 0, then B<migrate_pages>()  moves pages of the calling process."
1130 msgstr ""
1131 "The I<pid> argument is the ID of the process whose pages are to be moved.  "
1132 "To move pages in another process, the caller must be privileged "
1133 "(B<CAP_SYS_NICE>)  or the real or effective user ID of the calling process "
1134 "must match the real or saved-set user ID of the target process.  If I<pid> "
1135 "is 0, then B<migrate_pages>()  moves pages of the calling process."
1136
1137 #. type: Plain text
1138 #: build/C/man2/migrate_pages.2:87
1139 msgid ""
1140 "Pages shared with another process will only be moved if the initiating "
1141 "process has the B<CAP_SYS_NICE> privilege."
1142 msgstr ""
1143 "Pages shared with another process will only be moved if the initiating "
1144 "process has the B<CAP_SYS_NICE> privilege."
1145
1146 #. type: Plain text
1147 #: build/C/man2/migrate_pages.2:94
1148 msgid ""
1149 "On success B<migrate_pages>()  returns zero.  On error, it returns -1, and "
1150 "sets I<errno> to indicate the error."
1151 msgstr ""
1152 "On success B<migrate_pages>()  returns zero.  On error, it returns -1, and "
1153 "sets I<errno> to indicate the error."
1154
1155 #. type: Plain text
1156 #: build/C/man2/migrate_pages.2:104
1157 msgid ""
1158 "Insufficient privilege (B<CAP_SYS_NICE>)  to move pages of the process "
1159 "specified by I<pid>, or insufficient privilege (B<CAP_SYS_NICE>)  to access "
1160 "the specified target nodes."
1161 msgstr ""
1162 "Insufficient privilege (B<CAP_SYS_NICE>)  to move pages of the process "
1163 "specified by I<pid>, or insufficient privilege (B<CAP_SYS_NICE>)  to access "
1164 "the specified target nodes."
1165
1166 #. type: TP
1167 #: build/C/man2/migrate_pages.2:104 build/C/man2/move_pages.2:187
1168 #, no-wrap
1169 msgid "B<ESRCH>"
1170 msgstr "B<ESRCH>"
1171
1172 #.  FIXME There are other errors
1173 #. type: Plain text
1174 #: build/C/man2/migrate_pages.2:110
1175 msgid "No process matching I<pid> could be found."
1176 msgstr "No process matching I<pid> could be found."
1177
1178 #. type: Plain text
1179 #: build/C/man2/migrate_pages.2:114
1180 msgid ""
1181 "The B<migrate_pages>()  system call first appeared on Linux in version "
1182 "2.6.16."
1183 msgstr ""
1184 "The B<migrate_pages>()  system call first appeared on Linux in version "
1185 "2.6.16."
1186
1187 #. type: Plain text
1188 #: build/C/man2/migrate_pages.2:128
1189 msgid ""
1190 "Use B<get_mempolicy>(2)  with the B<MPOL_F_MEMS_ALLOWED> flag to obtain the "
1191 "set of nodes that are allowed by the calling process's cpuset.  Note that "
1192 "this information is subject to change at any time by manual or automatic "
1193 "reconfiguration of the cpuset."
1194 msgstr ""
1195 "Use B<get_mempolicy>(2)  with the B<MPOL_F_MEMS_ALLOWED> flag to obtain the "
1196 "set of nodes that are allowed by the calling process's cpuset.  Note that "
1197 "this information is subject to change at any time by manual or automatic "
1198 "reconfiguration of the cpuset."
1199
1200 #. type: Plain text
1201 #: build/C/man2/migrate_pages.2:140
1202 msgid ""
1203 "Use of B<migrate_pages>()  may result in pages whose location (node) "
1204 "violates the memory policy established for the specified addresses (see "
1205 "B<mbind>(2))  and/or the specified process (see B<set_mempolicy>(2)).  That "
1206 "is, memory policy does not constrain the destination nodes used by "
1207 "B<migrate_pages>()."
1208 msgstr ""
1209 "Use of B<migrate_pages>()  may result in pages whose location (node) "
1210 "violates the memory policy established for the specified addresses (see "
1211 "B<mbind>(2))  and/or the specified process (see B<set_mempolicy>(2)).  That "
1212 "is, memory policy does not constrain the destination nodes used by "
1213 "B<migrate_pages>()."
1214
1215 #. type: Plain text
1216 #: build/C/man2/migrate_pages.2:146 build/C/man2/move_pages.2:225
1217 msgid ""
1218 "The I<E<lt>numaif.hE<gt>> header is not included with glibc, but requires "
1219 "installing I<libnuma-devel> or a similar package."
1220 msgstr ""
1221 "ヘッダファイル I<E<lt>numaif.hE<gt>> は glibc には含まれておらず、 I<libnuma-"
1222 "devel> か同様のパッケージをインストールする必要がある。"
1223
1224 #. type: Plain text
1225 #: build/C/man2/migrate_pages.2:156
1226 msgid ""
1227 "B<get_mempolicy>(2), B<mbind>(2), B<set_mempolicy>(2), B<numa>(3), "
1228 "B<numa_maps>(5), B<cpuset>(7), B<numa>(7), B<migratepages>(8), B<numa_stat>"
1229 "(8);"
1230 msgstr ""
1231 "B<get_mempolicy>(2), B<mbind>(2), B<set_mempolicy>(2), B<numa>(3), "
1232 "B<numa_maps>(5), B<cpuset>(7), B<numa>(7), B<migratepages>(8), B<numa_stat>"
1233 "(8);"
1234
1235 #. type: Plain text
1236 #: build/C/man2/migrate_pages.2:159
1237 msgid "the kernel source file I<Documentation/vm/page_migration>."
1238 msgstr "the kernel source file I<Documentation/vm/page_migration>."
1239
1240 #. type: TH
1241 #: build/C/man2/move_pages.2:18
1242 #, no-wrap
1243 msgid "MOVE_PAGES"
1244 msgstr "MOVE_PAGES"
1245
1246 #. type: TH
1247 #: build/C/man2/move_pages.2:18
1248 #, no-wrap
1249 msgid "2010-06-11"
1250 msgstr "2010-06-11"
1251
1252 #. type: Plain text
1253 #: build/C/man2/move_pages.2:21
1254 msgid "move_pages - move individual pages of a process to another node"
1255 msgstr "move_pages - あるプロセスの個々のページを別のノードに移動する"
1256
1257 #. type: Plain text
1258 #: build/C/man2/move_pages.2:27
1259 #, no-wrap
1260 msgid ""
1261 "B<long move_pages(int >I<pid>B<, unsigned long count, void **>I<pages>B<,>\n"
1262 "B<                const int *>I<nodes>B<, int *>I<status>B<, int >I<flags>B<);>\n"
1263 msgstr ""
1264 "B<long move_pages(int >I<pid>B<, unsigned long count, void **>I<pages>B<,>\n"
1265 "B<                const int *>I<nodes>B<, int *>I<status>B<, int >I<flags>B<);>\n"
1266
1267 #. type: Plain text
1268 #: build/C/man2/move_pages.2:43
1269 msgid ""
1270 "B<move_pages>()  moves the specified I<pages> of the process I<pid> to the "
1271 "memory nodes specified by I<nodes>.  The result of the move is reflected in "
1272 "I<status>.  The I<flags> indicate constraints on the pages to be moved."
1273 msgstr ""
1274 "B<move_pages>()  は、プロセス I<pid> の指定されたページ I<pages> を I<nodes> "
1275 "で指定されたメモリノードに移動する。 移動の結果は I<status> に反映される。 "
1276 "I<flags> では移動されるページに関する制約を指定する。"
1277
1278 #. type: Plain text
1279 #: build/C/man2/move_pages.2:56
1280 msgid ""
1281 "I<pid> is the ID of the process in which pages are to be moved.  To move "
1282 "pages in another process, the caller must be privileged (B<CAP_SYS_NICE>)  "
1283 "or the real or effective user ID of the calling process must match the real "
1284 "or saved-set user ID of the target process.  If I<pid> is 0, then "
1285 "B<move_pages>()  moves pages of the calling process."
1286 msgstr ""
1287 "I<pid> は、移動されるページが属するプロセスの ID である。 別のプロセスのペー"
1288 "ジを移動するためには、呼び出し元が特権 (B<CAP_SYS_NICE>)  を持っているか、呼"
1289 "び出したプロセスの実ユーザ ID か実効ユーザ ID が ページ移動対象のプロセスの実"
1290 "ユーザ ID か保存 set-user-ID のどちらかと 一致しなければならない。 I<pid> が "
1291 "0 の場合、 B<move_pages>()  は呼び出したプロセスのページを移動する。"
1292
1293 #. type: Plain text
1294 #: build/C/man2/move_pages.2:64
1295 msgid ""
1296 "I<count> is the number of pages to move.  It defines the size of the three "
1297 "arrays I<pages>, I<nodes>, and I<status>."
1298 msgstr ""
1299 "I<count> は移動するページ数である。 I<count> により I<pages>, I<nodes>, "
1300 "I<status> の 3 つの配列の大きさが定義される。"
1301
1302 #.  FIXME what if they are not aligned?
1303 #. type: Plain text
1304 #: build/C/man2/move_pages.2:71
1305 msgid ""
1306 "I<pages> is an array of pointers to the pages that should be moved.  These "
1307 "are pointers that should be aligned to page boundaries.  Addresses are "
1308 "specified as seen by the process specified by I<pid>."
1309 msgstr ""
1310 "I<pages> は、移動すべきページへのポインタの配列であり、 各ポインタはページ境"
1311 "界に揃えた値を指定すべきである。 I<pid> で指定されたプロセスで見えるアドレス"
1312 "を指定する。"
1313
1314 #. type: Plain text
1315 #: build/C/man2/move_pages.2:84
1316 msgid ""
1317 "I<nodes> is an array of integers that specify the desired location for each "
1318 "page.  Each element in the array is a node number.  I<nodes> can also be "
1319 "NULL, in which case B<move_pages>()  does not move any pages but instead "
1320 "will return the node where each page currently resides, in the I<status> "
1321 "array.  Obtaining the status of each page may be necessary to determine "
1322 "pages that need to be moved."
1323 msgstr ""
1324 "I<nodes> は、各ページの希望の移動場所を示す整数値の配列であり、 配列の各要素"
1325 "はノード番号である。 I<nodes> には NULL を指定することもでき、この場合には "
1326 "B<move_pages>()  はどのページも移動しないが、各ページが現在配置されているノー"
1327 "ドを配列 I<status> に格納して返す。どのページを移動する必要があるかを判断する"
1328 "ために、 各ページの状態の取得が必要な場合もある。"
1329
1330 #. type: Plain text
1331 #: build/C/man2/move_pages.2:90
1332 msgid ""
1333 "I<status> is an array of integers that return the status of each page.  The "
1334 "array only contains valid values if B<move_pages>()  did not return an error."
1335 msgstr ""
1336 "I<status> は、各ページの状態を表す整数値の配列である。 この配列に有効な値が格"
1337 "納されるのは、 B<move_pages>()  がエラーを返さなかった場合だけである。"
1338
1339 #. type: Plain text
1340 #: build/C/man2/move_pages.2:102
1341 msgid ""
1342 "I<flags> specify what types of pages to move.  B<MPOL_MF_MOVE> means that "
1343 "only pages that are in exclusive use by the process are to be moved.  "
1344 "B<MPOL_MF_MOVE_ALL> means that pages shared between multiple processes can "
1345 "also be moved.  The process must be privileged (B<CAP_SYS_NICE>)  to use "
1346 "B<MPOL_MF_MOVE_ALL>."
1347 msgstr ""
1348 "I<flags> には、どの種類のページを移動するかを指定する。 B<MPOL_MF_MOVE> は、"
1349 "そのプロセスが排他的に使用しているページだけを移動することを意味する。 "
1350 "B<MPOL_MF_MOVE_ALL> は、複数のプロセス間で共有されているページも移動できるこ"
1351 "とを意味する。 B<MPOL_MF_MOVE_ALL> を使用するためには、そのプロセスが特権 "
1352 "(B<CAP_SYS_NICE>)  を持っていなければならない。"
1353
1354 #. type: SH
1355 #: build/C/man2/move_pages.2:102
1356 #, no-wrap
1357 msgid "Page states in the status array"
1358 msgstr "status 配列に格納されるページ状態"
1359
1360 #. type: Plain text
1361 #: build/C/man2/move_pages.2:106
1362 msgid ""
1363 "The following values can be returned in each element of the I<status> array."
1364 msgstr "I<status> 配列の各要素として、以下の値が返される。"
1365
1366 #. type: TP
1367 #: build/C/man2/move_pages.2:106
1368 #, no-wrap
1369 msgid "B<0..MAX_NUMNODES>"
1370 msgstr "B<0..MAX_NUMNODES>"
1371
1372 #. type: Plain text
1373 #: build/C/man2/move_pages.2:109
1374 msgid "Identifies the node on which the page resides."
1375 msgstr "そのページが配置されているノードを示す。"
1376
1377 #. type: TP
1378 #: build/C/man2/move_pages.2:109
1379 #, no-wrap
1380 msgid "B<-EACCES>"
1381 msgstr "B<-EACCES>"
1382
1383 #. type: Plain text
1384 #: build/C/man2/move_pages.2:114
1385 msgid ""
1386 "The page is mapped by multiple processes and can only be moved if "
1387 "B<MPOL_MF_MOVE_ALL> is specified."
1388 msgstr ""
1389 "そのページは複数のプロセスによりマップされており、 B<MPOL_MF_MOVE_ALL> が指定"
1390 "された場合にのみ移動できる。"
1391
1392 #. type: TP
1393 #: build/C/man2/move_pages.2:114
1394 #, no-wrap
1395 msgid "B<-EBUSY>"
1396 msgstr "B<-EBUSY>"
1397
1398 #. type: Plain text
1399 #: build/C/man2/move_pages.2:120
1400 msgid ""
1401 "The page is currently busy and cannot be moved.  Try again later.  This "
1402 "occurs if a page is undergoing I/O or another kernel subsystem is holding a "
1403 "reference to the page."
1404 msgstr ""
1405 "そのページが現在ビジーであり、移動できない。後でもう一度試すこと。 この状況"
1406 "は、ページが I/O の実行中であったり、カーネルの他のサブシステム がそのページ"
1407 "への参照を保持している場合に発生する。"
1408
1409 #. type: TP
1410 #: build/C/man2/move_pages.2:120
1411 #, no-wrap
1412 msgid "B<-EFAULT>"
1413 msgstr "B<-EFAULT>"
1414
1415 #. type: Plain text
1416 #: build/C/man2/move_pages.2:123
1417 msgid "This is a zero page or the memory area is not mapped by the process."
1418 msgstr ""
1419 "そのページが zero page であるか、そのメモリ領域はそのプロセスにより マップさ"
1420 "れていない。"
1421
1422 #. type: TP
1423 #: build/C/man2/move_pages.2:123
1424 #, no-wrap
1425 msgid "B<-EIO>"
1426 msgstr "B<-EIO>"
1427
1428 #. type: Plain text
1429 #: build/C/man2/move_pages.2:130
1430 msgid ""
1431 "Unable to write back a page.  The page has to be written back in order to "
1432 "move it since the page is dirty and the file system does not provide a "
1433 "migration function that would allow the move of dirty pages."
1434 msgstr ""
1435 "ページを書き戻す (write back) ことができない。 ページが dirty で、ファイルシ"
1436 "ステムが dirty なページを移動できるような 移動機能を提供していないため、その"
1437 "ページを移動するためにはページを 書き戻さなければならない。"
1438
1439 #. type: TP
1440 #: build/C/man2/move_pages.2:130
1441 #, no-wrap
1442 msgid "B<-EINVAL>"
1443 msgstr "B<-EINVAL>"
1444
1445 #. type: Plain text
1446 #: build/C/man2/move_pages.2:135
1447 msgid ""
1448 "A dirty page cannot be moved.  The file system does not provide a migration "
1449 "function and has no ability to write back pages."
1450 msgstr ""
1451 "dirty なページを移動できない。 ファイルシステムが dirty なページを移動するた"
1452 "めの機能を提供しておらず、 ページを書き戻す能力もない。"
1453
1454 #. type: TP
1455 #: build/C/man2/move_pages.2:135
1456 #, no-wrap
1457 msgid "B<-ENOENT>"
1458 msgstr "B<-ENOENT>"
1459
1460 #. type: Plain text
1461 #: build/C/man2/move_pages.2:138
1462 msgid "The page is not present."
1463 msgstr "ページが存在しない。"
1464
1465 #. type: TP
1466 #: build/C/man2/move_pages.2:138
1467 #, no-wrap
1468 msgid "B<-ENOMEM>"
1469 msgstr "B<-ENOMEM>"
1470
1471 #. type: Plain text
1472 #: build/C/man2/move_pages.2:141
1473 msgid "Unable to allocate memory on target node."
1474 msgstr "移動先のノードでメモリを確保することができない。"
1475
1476 #.  FIXME Is the following quite true: does the wrapper in numactl
1477 #.  do the right thing?
1478 #. type: Plain text
1479 #: build/C/man2/move_pages.2:150
1480 msgid ""
1481 "On success B<move_pages>()  returns zero.  On error, it returns -1, and sets "
1482 "I<errno> to indicate the error."
1483 msgstr ""
1484 "成功すると、 B<move_pages>()  は 0 を返す。 エラーの場合、-1 を返し、 "
1485 "I<errno> にエラーを示す値を設定する。"
1486
1487 #. type: TP
1488 #: build/C/man2/move_pages.2:151
1489 #, no-wrap
1490 msgid "B<E2BIG>"
1491 msgstr "B<E2BIG>"
1492
1493 #. type: Plain text
1494 #: build/C/man2/move_pages.2:154
1495 msgid "Too many pages to move."
1496 msgstr "移動すべきページが多過ぎる。"
1497
1498 #. type: TP
1499 #: build/C/man2/move_pages.2:154
1500 #, no-wrap
1501 msgid "B<EACCES>"
1502 msgstr "B<EACCES>"
1503
1504 #.  FIXME Clarify "current cpuset".  Is that the cpuset of the caller
1505 #.  or the target?
1506 #. type: Plain text
1507 #: build/C/man2/move_pages.2:159
1508 msgid "One of the target nodes is not allowed by the current cpuset."
1509 msgstr "移動先のノードのいずれかが現在の CPU 集合では許可されていない。"
1510
1511 #. type: Plain text
1512 #: build/C/man2/move_pages.2:162
1513 msgid "Parameter array could not be accessed."
1514 msgstr "パラメータ配列にアクセスできなかった。"
1515
1516 #. type: Plain text
1517 #: build/C/man2/move_pages.2:169
1518 msgid ""
1519 "Flags other than B<MPOL_MF_MOVE> and B<MPOL_MF_MOVE_ALL> was specified or an "
1520 "attempt was made to migrate pages of a kernel thread."
1521 msgstr ""
1522 "I<flags> に B<MPOL_MF_MOVE> でも B<MPOL_MF_MOVE_ALL> でもない値が指定された"
1523 "か、カーネルスレッドのページを移動させようとした。"
1524
1525 #. type: TP
1526 #: build/C/man2/move_pages.2:169
1527 #, no-wrap
1528 msgid "B<ENODEV>"
1529 msgstr "B<ENODEV>"
1530
1531 #. type: Plain text
1532 #: build/C/man2/move_pages.2:172
1533 msgid "One of the target nodes is not online."
1534 msgstr "移動先のノードのいずれかがオンラインでない。"
1535
1536 #. type: TP
1537 #: build/C/man2/move_pages.2:172
1538 #, no-wrap
1539 msgid "B<ENOENT>"
1540 msgstr "B<ENOENT>"
1541
1542 #. type: Plain text
1543 #: build/C/man2/move_pages.2:178
1544 msgid ""
1545 "No pages were found that require moving.  All pages are either already on "
1546 "the target node, not present, had an invalid address or could not be moved "
1547 "because they were mapped by multiple processes."
1548 msgstr ""
1549 "移動が必要なページが全く見つからなかった。 指定された全てのページが、すでに移"
1550 "動先のノードに存在するか、存在しないか、 無効なアドレスであったか、複数のプロ"
1551 "セスによってマップされていて移動でき なかったか、のいずれかであった。"
1552
1553 #. type: Plain text
1554 #: build/C/man2/move_pages.2:187
1555 msgid ""
1556 "The caller specified B<MPOL_MF_MOVE_ALL> without sufficient privileges "
1557 "(B<CAP_SYS_NICE>).  Or, the caller attempted to move pages of a process "
1558 "belonging to another user but did not have privilege to do so "
1559 "(B<CAP_SYS_NICE>)."
1560 msgstr ""
1561 "呼び出し元は B<MPOL_MF_MOVE_ALL> を指定したが、十分な特権 (B<CAP_SYS_NICE>)  "
1562 "を持っていない。 または、呼び出し元が他のユーザに属するプロセスのページを移動"
1563 "しようとしたが、 それを行えるだけの特権 (B<CAP_SYS_NICE>)  を持っていなかっ"
1564 "た。"
1565
1566 #. type: Plain text
1567 #: build/C/man2/move_pages.2:190
1568 msgid "Process does not exist."
1569 msgstr "プロセスが存在しない。"
1570
1571 #. type: Plain text
1572 #: build/C/man2/move_pages.2:193
1573 msgid "B<move_pages>()  first appeared on Linux in version 2.6.18."
1574 msgstr "B<move_pages>()  は、バージョン 2.6.18 で初めて Linux に登場した。"
1575
1576 #.  FIXME Clarify "current cpuset".  Is that the cpuset of the caller
1577 #.  or the target?
1578 #. type: Plain text
1579 #: build/C/man2/move_pages.2:209
1580 msgid ""
1581 "Use B<get_mempolicy>(2)  with the B<MPOL_F_MEMS_ALLOWED> flag to obtain the "
1582 "set of nodes that are allowed by the current cpuset.  Note that this "
1583 "information is subject to change at any time by manual or automatic "
1584 "reconfiguration of the cpuset."
1585 msgstr ""
1586 "現在の CPU 集合で許可されているノードの集合を取得するには、フラグ "
1587 "B<MPOL_F_MEMS_ALLOWED> を指定して B<get_mempolicy>(2)  を使用すればよい。 取"
1588 "得した情報は、CPU 集合の手動または自動での再構成により いつ何時変化してしまう"
1589 "か分からない。"
1590
1591 #. type: Plain text
1592 #: build/C/man2/move_pages.2:219
1593 msgid ""
1594 "Use of this function may result in pages whose location (node) violates the "
1595 "memory policy established for the specified addresses (See B<mbind>(2))  and/"
1596 "or the specified process (See B<set_mempolicy>(2)).  That is, memory policy "
1597 "does not constrain the destination nodes used by B<move_pages>()."
1598 msgstr ""
1599 "この関数を使用すると、ページの位置 (ノード) が 指定されたアドレスに対して設定"
1600 "されたメモリポリシー (B<mbind>(2)  参照) や指定されたプロセスに対して設定され"
1601 "たメモリポリシー (B<set_mempolicy>(2)  参照) に違反してしまう可能性がある。 "
1602 "つまり、メモリポリシーは B<move_pages>()  で使われる移動先ノードを制限しない"
1603 "ということである。"
1604
1605 #. type: Plain text
1606 #: build/C/man2/move_pages.2:235
1607 msgid ""
1608 "B<get_mempolicy>(2), B<mbind>(2), B<set_mempolicy>(2), B<numa>(3), "
1609 "B<numa_maps>(5), B<cpuset>(7), B<numa>(7), B<migratepages>(8), B<numa_stat>"
1610 "(8)"
1611 msgstr ""
1612 "B<get_mempolicy>(2), B<mbind>(2), B<set_mempolicy>(2), B<numa>(3), "
1613 "B<numa_maps>(5), B<cpuset>(7), B<numa>(7), B<migratepages>(8), B<numa_stat>"
1614 "(8)"
1615
1616 #. type: TH
1617 #: build/C/man7/numa.7:27
1618 #, no-wrap
1619 msgid "NUMA"
1620 msgstr "NUMA"
1621
1622 #. type: Plain text
1623 #: build/C/man7/numa.7:30
1624 msgid "numa - overview of Non-Uniform Memory Architecture"
1625 msgstr "numa - overview of Non-Uniform Memory Architecture"
1626
1627 #. type: Plain text
1628 #: build/C/man7/numa.7:41
1629 msgid ""
1630 "Non-Uniform Memory Access (NUMA) refers to multiprocessor systems whose "
1631 "memory is divided into multiple memory nodes.  The access time of a memory "
1632 "node depends on the relative locations of the accessing CPU and the accessed "
1633 "node.  (This contrasts with a symmetric multiprocessor system, where the "
1634 "access time for all of the memory is the same for all CPUs.)  Normally, each "
1635 "CPU on a NUMA system has a local memory node whose contents can be accessed "
1636 "faster than the memory in the node local to another CPU or the memory on a "
1637 "bus shared by all CPUs."
1638 msgstr ""
1639 "Non-Uniform Memory Access (NUMA) refers to multiprocessor systems whose "
1640 "memory is divided into multiple memory nodes.  The access time of a memory "
1641 "node depends on the relative locations of the accessing CPU and the accessed "
1642 "node.  (This contrasts with a symmetric multiprocessor system, where the "
1643 "access time for all of the memory is the same for all CPUs.)  Normally, each "
1644 "CPU on a NUMA system has a local memory node whose contents can be accessed "
1645 "faster than the memory in the node local to another CPU or the memory on a "
1646 "bus shared by all CPUs."
1647
1648 #. type: SS
1649 #: build/C/man7/numa.7:41
1650 #, no-wrap
1651 msgid "NUMA system calls"
1652 msgstr "NUMA system calls"
1653
1654 #. type: Plain text
1655 #: build/C/man7/numa.7:52
1656 msgid ""
1657 "The Linux kernel implements the following NUMA-related system calls: "
1658 "B<get_mempolicy>(2), B<mbind>(2), B<migrate_pages>(2), B<move_pages>(2), and "
1659 "B<set_mempolicy>(2).  However, applications should normally use the "
1660 "interface provided by I<libnuma>; see \"Library Support\" below."
1661 msgstr ""
1662 "The Linux kernel implements the following NUMA-related system calls: "
1663 "B<get_mempolicy>(2), B<mbind>(2), B<migrate_pages>(2), B<move_pages>(2), and "
1664 "B<set_mempolicy>(2).  However, applications should normally use the "
1665 "interface provided by I<libnuma>; see \"Library Support\" below."
1666
1667 #. type: SS
1668 #: build/C/man7/numa.7:52
1669 #, no-wrap
1670 msgid "/proc/[number]/numa_maps  (since Linux 2.6.14)"
1671 msgstr "/proc/[number]/numa_maps  (since Linux 2.6.14)"
1672
1673 #.  See also Changelog-2.6.14
1674 #. type: Plain text
1675 #: build/C/man7/numa.7:56
1676 msgid ""
1677 "This file displays information about a process's NUMA memory policy and "
1678 "allocation."
1679 msgstr ""
1680 "This file displays information about a process's NUMA memory policy and "
1681 "allocation."
1682
1683 #. type: Plain text
1684 #: build/C/man7/numa.7:60
1685 msgid ""
1686 "Each line contains information about a memory range used by the process, "
1687 "displaying\\(emamong other information\\(emthe effective memory policy for "
1688 "that memory range and on which nodes the pages have been allocated."
1689 msgstr ""
1690 "Each line contains information about a memory range used by the process, "
1691 "displaying\\(emamong other information\\(emthe effective memory policy for "
1692 "that memory range and on which nodes the pages have been allocated."
1693
1694 #. type: Plain text
1695 #: build/C/man7/numa.7:68
1696 msgid ""
1697 "I<numa_maps> is a read-only file.  When I</proc/E<lt>pidE<gt>/numa_maps> is "
1698 "read, the kernel will scan the virtual address space of the process and "
1699 "report how memory is used.  One line is displayed for each unique memory "
1700 "range of the process."
1701 msgstr ""
1702 "I<numa_maps> is a read-only file.  When I</proc/E<lt>pidE<gt>/numa_maps> is "
1703 "read, the kernel will scan the virtual address space of the process and "
1704 "report how memory is used.  One line is displayed for each unique memory "
1705 "range of the process."
1706
1707 #. type: Plain text
1708 #: build/C/man7/numa.7:75
1709 msgid ""
1710 "The first field of each line shows the starting address of the memory "
1711 "range.  This field allows a correlation with the contents of the I</proc/"
1712 "E<lt>pidE<gt>/maps> file, which contains the end address of the range and "
1713 "other information, such as the access permissions and sharing."
1714 msgstr ""
1715 "The first field of each line shows the starting address of the memory "
1716 "range.  This field allows a correlation with the contents of the I</proc/"
1717 "E<lt>pidE<gt>/maps> file, which contains the end address of the range and "
1718 "other information, such as the access permissions and sharing."
1719
1720 #. type: Plain text
1721 #: build/C/man7/numa.7:83
1722 msgid ""
1723 "The second field shows the memory policy currently in effect for the memory "
1724 "range.  Note that the effective policy is not necessarily the policy "
1725 "installed by the process for that memory range.  Specifically, if the "
1726 "process installed a \"default\" policy for that range, the effective policy "
1727 "for that range will be the process policy, which may or may not be \"default"
1728 "\"."
1729 msgstr ""
1730 "The second field shows the memory policy currently in effect for the memory "
1731 "range.  Note that the effective policy is not necessarily the policy "
1732 "installed by the process for that memory range.  Specifically, if the "
1733 "process installed a \"default\" policy for that range, the effective policy "
1734 "for that range will be the process policy, which may or may not be \"default"
1735 "\"."
1736
1737 #. type: Plain text
1738 #: build/C/man7/numa.7:86
1739 msgid ""
1740 "The rest of the line contains information about the pages allocated in the "
1741 "memory range, as follows:"
1742 msgstr ""
1743 "The rest of the line contains information about the pages allocated in the "
1744 "memory range, as follows:"
1745
1746 #. type: TP
1747 #: build/C/man7/numa.7:86
1748 #, no-wrap
1749 msgid "I<NE<lt>nodeE<gt>=E<lt>nr_pagesE<gt>>"
1750 msgstr "I<NE<lt>nodeE<gt>=E<lt>nr_pagesE<gt>>"
1751
1752 #. type: Plain text
1753 #: build/C/man7/numa.7:99
1754 msgid ""
1755 "The number of pages allocated on I<E<lt>nodeE<gt>>.  I<E<lt>nr_pagesE<gt>> "
1756 "includes only pages currently mapped by the process.  Page migration and "
1757 "memory reclaim may have temporarily unmapped pages associated with this "
1758 "memory range.  These pages may only show up again after the process has "
1759 "attempted to reference them.  If the memory range represents a shared memory "
1760 "area or file mapping, other processes may currently have additional pages "
1761 "mapped in a corresponding memory range."
1762 msgstr ""
1763 "The number of pages allocated on I<E<lt>nodeE<gt>>.  I<E<lt>nr_pagesE<gt>> "
1764 "includes only pages currently mapped by the process.  Page migration and "
1765 "memory reclaim may have temporarily unmapped pages associated with this "
1766 "memory range.  These pages may only show up again after the process has "
1767 "attempted to reference them.  If the memory range represents a shared memory "
1768 "area or file mapping, other processes may currently have additional pages "
1769 "mapped in a corresponding memory range."
1770
1771 #. type: TP
1772 #: build/C/man7/numa.7:99
1773 #, no-wrap
1774 msgid "I<file=E<lt>filenameE<gt>>"
1775 msgstr "I<file=E<lt>filenameE<gt>>"
1776
1777 #. type: Plain text
1778 #: build/C/man7/numa.7:105
1779 msgid ""
1780 "The file backing the memory range.  If the file is mapped as private, write "
1781 "accesses may have generated COW (Copy-On-Write) pages in this memory range.  "
1782 "These pages are displayed as anonymous pages."
1783 msgstr ""
1784 "The file backing the memory range.  If the file is mapped as private, write "
1785 "accesses may have generated COW (Copy-On-Write) pages in this memory range.  "
1786 "These pages are displayed as anonymous pages."
1787
1788 #. type: TP
1789 #: build/C/man7/numa.7:105
1790 #, no-wrap
1791 msgid "I<heap>"
1792 msgstr "I<heap>"
1793
1794 #. type: Plain text
1795 #: build/C/man7/numa.7:108
1796 msgid "Memory range is used for the heap."
1797 msgstr "Memory range is used for the heap."
1798
1799 #. type: TP
1800 #: build/C/man7/numa.7:108
1801 #, no-wrap
1802 msgid "I<stack>"
1803 msgstr "I<stack>"
1804
1805 #. type: Plain text
1806 #: build/C/man7/numa.7:111
1807 msgid "Memory range is used for the stack."
1808 msgstr "Memory range is used for the stack."
1809
1810 #. type: TP
1811 #: build/C/man7/numa.7:111
1812 #, no-wrap
1813 msgid "I<huge>"
1814 msgstr "I<huge>"
1815
1816 #. type: Plain text
1817 #: build/C/man7/numa.7:115
1818 msgid ""
1819 "Huge memory range.  The page counts shown are huge pages and not regular "
1820 "sized pages."
1821 msgstr ""
1822 "Huge memory range.  The page counts shown are huge pages and not regular "
1823 "sized pages."
1824
1825 #. type: TP
1826 #: build/C/man7/numa.7:115
1827 #, no-wrap
1828 msgid "I<anon=E<lt>pagesE<gt>>"
1829 msgstr "I<anon=E<lt>pagesE<gt>>"
1830
1831 #. type: Plain text
1832 #: build/C/man7/numa.7:118
1833 msgid "The number of anonymous page in the range."
1834 msgstr "The number of anonymous page in the range."
1835
1836 #. type: TP
1837 #: build/C/man7/numa.7:118
1838 #, no-wrap
1839 msgid "I<dirty=E<lt>pagesE<gt>>"
1840 msgstr "I<dirty=E<lt>pagesE<gt>>"
1841
1842 #. type: Plain text
1843 #: build/C/man7/numa.7:121
1844 msgid "Number of dirty pages."
1845 msgstr "Number of dirty pages."
1846
1847 #. type: TP
1848 #: build/C/man7/numa.7:121
1849 #, no-wrap
1850 msgid "I<mapped=E<lt>pagesE<gt>>"
1851 msgstr "I<mapped=E<lt>pagesE<gt>>"
1852
1853 #. type: Plain text
1854 #: build/C/man7/numa.7:128
1855 msgid ""
1856 "Total number of mapped pages, if different from I<dirty> and I<anon> pages."
1857 msgstr ""
1858 "Total number of mapped pages, if different from I<dirty> and I<anon> pages."
1859
1860 #. type: TP
1861 #: build/C/man7/numa.7:128
1862 #, no-wrap
1863 msgid "I<mapmax=E<lt>countE<gt>>"
1864 msgstr "I<mapmax=E<lt>countE<gt>>"
1865
1866 #. type: Plain text
1867 #: build/C/man7/numa.7:134
1868 msgid ""
1869 "Maximum mapcount (number of processes mapping a single page) encountered "
1870 "during the scan.  This may be used as an indicator of the degree of sharing "
1871 "occurring in a given memory range."
1872 msgstr ""
1873 "Maximum mapcount (number of processes mapping a single page) encountered "
1874 "during the scan.  This may be used as an indicator of the degree of sharing "
1875 "occurring in a given memory range."
1876
1877 #. type: TP
1878 #: build/C/man7/numa.7:134
1879 #, no-wrap
1880 msgid "I<swapcache=E<lt>countE<gt>>"
1881 msgstr "I<swapcache=E<lt>countE<gt>>"
1882
1883 #. type: Plain text
1884 #: build/C/man7/numa.7:137
1885 msgid "Number of pages that have an associated entry on a swap device."
1886 msgstr "Number of pages that have an associated entry on a swap device."
1887
1888 #. type: TP
1889 #: build/C/man7/numa.7:137
1890 #, no-wrap
1891 msgid "I<active=E<lt>pagesE<gt>>"
1892 msgstr "I<active=E<lt>pagesE<gt>>"
1893
1894 #. type: Plain text
1895 #: build/C/man7/numa.7:143
1896 msgid ""
1897 "The number of pages on the active list.  This field is only shown if "
1898 "different from the number of pages in this range.  This means that some "
1899 "inactive pages exist in the memory range that may be removed from memory by "
1900 "the swapper soon."
1901 msgstr ""
1902 "The number of pages on the active list.  This field is only shown if "
1903 "different from the number of pages in this range.  This means that some "
1904 "inactive pages exist in the memory range that may be removed from memory by "
1905 "the swapper soon."
1906
1907 #. type: TP
1908 #: build/C/man7/numa.7:143
1909 #, no-wrap
1910 msgid "I<writeback=E<lt>pagesE<gt>>"
1911 msgstr "I<writeback=E<lt>pagesE<gt>>"
1912
1913 #. type: Plain text
1914 #: build/C/man7/numa.7:146
1915 msgid "Number of pages that are currently being written out to disk."
1916 msgstr "Number of pages that are currently being written out to disk."
1917
1918 #. type: Plain text
1919 #: build/C/man7/numa.7:153
1920 msgid ""
1921 "The Linux NUMA system calls and I</proc> interface are only available if the "
1922 "kernel was configured and built with the B<CONFIG_NUMA> option."
1923 msgstr ""
1924 "The Linux NUMA system calls and I</proc> interface are only available if the "
1925 "kernel was configured and built with the B<CONFIG_NUMA> option."
1926
1927 #. type: SS
1928 #: build/C/man7/numa.7:153
1929 #, no-wrap
1930 msgid "Library Support"
1931 msgstr "Library Support"
1932
1933 #. type: Plain text
1934 #: build/C/man7/numa.7:162
1935 msgid ""
1936 "Link with I<-lnuma> to get the system call definitions.  I<libnuma> and the "
1937 "required I<E<lt>numaif.hE<gt>> header are available in the I<numactl> "
1938 "package."
1939 msgstr ""
1940 "Link with I<-lnuma> to get the system call definitions.  I<libnuma> and the "
1941 "required I<E<lt>numaif.hE<gt>> header are available in the I<numactl> "
1942 "package."
1943
1944 #. type: Plain text
1945 #: build/C/man7/numa.7:178
1946 msgid ""
1947 "However, applications should not use these system calls directly.  Instead, "
1948 "the higher level interface provided by the B<numa>(3)  functions in the "
1949 "I<numactl> package is recommended.  The I<numactl> package is available at "
1950 "I<ftp://oss.sgi.com/www/projects/libnuma/download/>.  The package is also "
1951 "included in some Linux distributions.  Some distributions include the "
1952 "development library and header in the separate I<numactl-devel> package."
1953 msgstr ""
1954 "However, applications should not use these system calls directly.  Instead, "
1955 "the higher level interface provided by the B<numa>(3)  functions in the "
1956 "I<numactl> package is recommended.  The I<numactl> package is available at "
1957 "I<ftp://oss.sgi.com/www/projects/libnuma/download/>.  The package is also "
1958 "included in some Linux distributions.  Some distributions include the "
1959 "development library and header in the separate I<numactl-devel> package."
1960
1961 #. type: Plain text
1962 #: build/C/man7/numa.7:180
1963 msgid "No standards govern NUMA interfaces."
1964 msgstr "No standards govern NUMA interfaces."
1965
1966 #. type: Plain text
1967 #: build/C/man7/numa.7:188
1968 msgid ""
1969 "B<get_mempolicy>(2), B<mbind>(2), B<move_pages>(2), B<set_mempolicy>(2), "
1970 "B<numa>(3), B<cpuset>(7), B<numactl>(8)"
1971 msgstr ""
1972 "B<get_mempolicy>(2), B<mbind>(2), B<move_pages>(2), B<set_mempolicy>(2), "
1973 "B<numa>(3), B<cpuset>(7), B<numactl>(8)"
1974
1975 #. type: TH
1976 #: build/C/man2/set_mempolicy.2:25
1977 #, no-wrap
1978 msgid "SET_MEMPOLICY"
1979 msgstr "SET_MEMPOLICY"
1980
1981 #. type: Plain text
1982 #: build/C/man2/set_mempolicy.2:28
1983 msgid ""
1984 "set_mempolicy - set default NUMA memory policy for a process and its children"
1985 msgstr ""
1986 "set_mempolicy - プロセスとその子プロセスの NUMA メモリの デフォルトポリシーを"
1987 "設定する"
1988
1989 #. type: Plain text
1990 #: build/C/man2/set_mempolicy.2:34
1991 #, no-wrap
1992 msgid ""
1993 "B<int set_mempolicy(int >I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
1994 "B<                  unsigned long >I<maxnode>B<);>\n"
1995 msgstr ""
1996 "B<int set_mempolicy(int >I<mode>B<, unsigned long *>I<nodemask>B<,>\n"
1997 "B<                  unsigned long >I<maxnode>B<);>\n"
1998
1999 #. type: Plain text
2000 #: build/C/man2/set_mempolicy.2:47
2001 msgid ""
2002 "B<set_mempolicy>()  sets the NUMA memory policy of the calling process, "
2003 "which consists of a policy mode and zero or more nodes, to the values "
2004 "specified by the I<mode>, I<nodemask> and I<maxnode> arguments."
2005 msgstr ""
2006 "B<set_mempolicy>()  は、呼び出し元プロセスの NUMA ポリシーを I<policy> に設定"
2007 "する。 NUMA ポリシーはポリシーモードと 0 個以上のノードから構成され、 設定内"
2008 "容は引き数 I<mode>, I<nodemask>, I<maxnode> により指定される。"
2009
2010 #. type: Plain text
2011 #: build/C/man2/set_mempolicy.2:73
2012 msgid ""
2013 "This system call defines the default policy for the process.  The process "
2014 "policy governs allocation of pages in the process's address space outside of "
2015 "memory ranges controlled by a more specific policy set by B<mbind>(2).  The "
2016 "process default policy also controls allocation of any pages for memory "
2017 "mapped files mapped using the B<mmap>(2)  call with the B<MAP_PRIVATE> flag "
2018 "and that are only read [loaded] from by the process and of memory mapped "
2019 "files mapped using the B<mmap>(2)  call with the B<MAP_SHARED> flag, "
2020 "regardless of the access type.  The policy is only applied when a new page "
2021 "is allocated for the process.  For anonymous memory this is when the page is "
2022 "first touched by the application."
2023 msgstr ""
2024 "B<set_mempolicy>()  は、プロセスのデフォルトポリシーを定める。 プロセスのポリ"
2025 "シーは、 B<mbind>(2)  で設定される特定のポリシーにより制御されるメモリ領域以"
2026 "外の プロセスのアドレス空間におけるページの割り当てに適用される。 プロセスの"
2027 "デフォルトポリシーは、 B<MAP_PRIVATE> フラグを指定した B<mmap>(2)  を使って"
2028 "マップされたメモリマップ・ファイルに対する読み出し専用 (ロードされるだけ) の"
2029 "ページの割り当てにも適用される。 また、 B<MAP_SHARED> フラグを指定した "
2030 "B<mmap>(2)  を使ってマップされたメモリマップ・ファイルに対するページの割り当"
2031 "てにも 適用される (この場合はページのアクセス種別に関わらず適用される) 。 設"
2032 "定したポリシーは、プロセスに新規のページが割り当てられるときにのみ 適用され"
2033 "る。無名メモリ (anonymous memory) の場合、新規ページの割り当ては アプリケー"
2034 "ションが初めてページにアクセスした際に行われる。"
2035
2036 #. type: Plain text
2037 #: build/C/man2/set_mempolicy.2:87
2038 msgid ""
2039 "The I<mode> argument must specify one of B<MPOL_DEFAULT>, B<MPOL_BIND>, "
2040 "B<MPOL_INTERLEAVE> or B<MPOL_PREFERRED>.  All modes except B<MPOL_DEFAULT> "
2041 "require the caller to specify via the I<nodemask> argument one or more nodes."
2042 msgstr ""
2043 "I<mode> 引き数には B<MPOL_DEFAULT>, B<MPOL_BIND>, B<MPOL_INTERLEAVE>, "
2044 "B<MPOL_PREFERRED> のいずれか一つを指定してしなければならない。 "
2045 "B<MPOL_DEFAULT> 以外のポリシーの場合、呼び出し元は I<nodemask> 引き数で一つ以"
2046 "上のノードを指定する必要がある。"
2047
2048 #. type: Plain text
2049 #: build/C/man2/set_mempolicy.2:95
2050 msgid ""
2051 "The I<mode> argument may also include an optional I<mode flag>.  The "
2052 "supported I<mode flags> are:"
2053 msgstr ""
2054 "I<mode> 引き数には、追加で I<モードフラグ> を含めることもできる。 サポートさ"
2055 "れている I<モードフラグ> は以下の通りである。"
2056
2057 #. type: TP
2058 #: build/C/man2/set_mempolicy.2:95
2059 #, no-wrap
2060 msgid "B<MPOL_F_STATIC_NODES> (since Linux 2.6.26)"
2061 msgstr "B<MPOL_F_STATIC_NODES> (Linux 2.6.26 以降)"
2062
2063 #. type: Plain text
2064 #: build/C/man2/set_mempolicy.2:105
2065 msgid ""
2066 "A nonempty I<nodemask> specifies physical node ids.  Linux does will not "
2067 "remap the I<nodemask> when the process moves to a different cpuset context, "
2068 "nor when the set of nodes allowed by the process's current cpuset context "
2069 "changes."
2070 msgstr ""
2071 "空でない I<nodemask> は、物理ノード ID である。 Linux では、そのプロセスが異"
2072 "なる CPU 集合コンテキスト (cpuset context)  に移動した場合でも、そのプロセス"
2073 "の現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、 "
2074 "I<nodemask> をマッピングし直すことはない。"
2075
2076 #. type: TP
2077 #: build/C/man2/set_mempolicy.2:105
2078 #, no-wrap
2079 msgid "B<MPOL_F_RELATIVE_NODES> (since Linux 2.6.26)"
2080 msgstr "B<MPOL_F_RELATIVE_NODES> (Linux 2.6.26 以降)"
2081
2082 #. type: Plain text
2083 #: build/C/man2/set_mempolicy.2:131
2084 msgid ""
2085 "I<nodemask> points to a bit mask of node IDs that contains up to I<maxnode> "
2086 "bits.  The bit mask size is rounded to the next multiple of I<sizeof"
2087 "(unsigned long)>, but the kernel will only use bits up to I<maxnode>.  A "
2088 "NULL value of I<nodemask> or a I<maxnode> value of zero specifies the empty "
2089 "set of nodes.  If the value of I<maxnode> is zero, the I<nodemask> argument "
2090 "is ignored."
2091 msgstr ""
2092 "I<nodemask> は、最大で I<maxnode> ビットから構成されるノード ID のビットマス"
2093 "クを指す。 ビットマスクの大きさは、直近の I<sizeof(unsigned long)> の倍数に切"
2094 "り上げられるが、カーネルが使用するのは I<maxnode> 個までのビットだけである。 "
2095 "NULL 値の I<nodemask> もしくは値が 0 の I<maxnode> はノードの空集合を表す。 "
2096 "I<maxnode> の値が 0 の場合、 I<nodemask> 引き数は無視される。"
2097
2098 #. type: Plain text
2099 #: build/C/man2/set_mempolicy.2:152
2100 msgid ""
2101 "Where a I<nodemask> is required, it must contain at least one node that is "
2102 "on-line, allowed by the process's current cpuset context, [unless the "
2103 "B<MPOL_F_STATIC_NODES> mode flag is specified], and contains memory.  If the "
2104 "B<MPOL_F_STATIC_NODES> is set in I<mode> and a required I<nodemask> contains "
2105 "no nodes that are allowed by the process's current cpuset context, the "
2106 "memory policy reverts to I<local allocation>.  This effectively overrides "
2107 "the specified policy until the process's cpuset context includes one or more "
2108 "of the nodes specified by I<nodemask>."
2109 msgstr ""
2110 "I<nodemask> が必須の場面では、 I<nodemask> に、オンラインで、そのプロセスの現"
2111 "在の CPU 集合コンテキストで 許可されており (B<MPOL_F_STATIC_NODES> モードフラ"
2112 "グが指定されていない場合)、メモリがあるノードが 少なくとも一つ入っていなけれ"
2113 "ばならない。 I<mode> に B<MPOL_F_STATIC_NODES> がセットされ、 I<nodemask> が"
2114 "必須の場面で、 I<nodemask> に、そのプロセスの現在の CPU 集合コンテキストで許"
2115 "可されたノードが 一つも含まれていない場合には、メモリのポリシーとしてデフォル"
2116 "トの 「ローカルから割り当て (local allocation)」が適用される。 そのプロセス"
2117 "の CPU 集合コンテキストが I<nodemask> で指定されたノードを少なくとも一つ含む"
2118 "ようになるまでは、 結果的に指定された動作が上書きされることになる。"
2119
2120 #. type: Plain text
2121 #: build/C/man2/set_mempolicy.2:163
2122 msgid ""
2123 "The B<MPOL_DEFAULT> mode specifies that any nondefault process memory policy "
2124 "be removed, so that the memory policy \"falls back\" to the system default "
2125 "policy.  The system default policy is \"local allocation\"-- i.e., allocate "
2126 "memory on the node of the CPU that triggered the allocation.  I<nodemask> "
2127 "must be specified as NULL.  If the \"local node\" contains no free memory, "
2128 "the system will attempt to allocate memory from a \"near by\" node."
2129 msgstr ""
2130 "B<MPOL_DEFAULT> モードは、デフォルトではないプロセスのメモリポリシーを削除す"
2131 "ることを 指定するものである。これにより、メモリポリシーはシステムの デフォル"
2132 "トポリシーに「戻る」ことになる。 システムのデフォルトポリシーは「ローカルから"
2133 "の割り当て (local allocation)」、 つまりメモリ割り当てのきっかけとなった CPU "
2134 "のノードのメモリが割り当てられる。 I<nodemask> には NULL を指定しなければなら"
2135 "ない。 「自ノード (local node)」に空きメモリが全くない場合、システムは 「近く"
2136 "の (near by) ノード」からメモリを割り当てようと試みる。"
2137
2138 #. type: Plain text
2139 #: build/C/man2/set_mempolicy.2:180
2140 msgid ""
2141 "The B<MPOL_BIND> mode defines a strict policy that restricts memory "
2142 "allocation to the nodes specified in I<nodemask>.  If I<nodemask> specifies "
2143 "more than one node, page allocations will come from the node with the lowest "
2144 "numeric node ID first, until that node contains no free memory.  Allocations "
2145 "will then come from the node with the next highest node ID specified in "
2146 "I<nodemask> and so forth, until none of the specified nodes contain free "
2147 "memory.  Pages will not be allocated from any node not specified in the "
2148 "I<nodemask>."
2149 msgstr ""
2150 "B<MPOL_BIND> モードは厳密なポリシーで、メモリ割り当ては I<nodemask> に指定さ"
2151 "れたノードに限定される。 I<nodemask> に 2 個以上のノードが指定された場合、"
2152 "ページの割り当ては ノード ID が数字として最小のノードから開始され、 そのノー"
2153 "ドに空きメモリがなくなるまでそのノードから ページ割り当てが行われる。そのノー"
2154 "ドに空きメモリがなくなったら、 次に小さなノード ID を持つノードからページ割り"
2155 "当てが行われる。 これを、 I<nodemask> で指定された全てのノードで空きメモリが"
2156 "なくなるまで繰り返す。 I<nodemask> で指定された以外のノードからはページの割り"
2157 "当ては行われない。"
2158
2159 #.  NOTE:  the following sentence doesn't make sense in the context
2160 #.  of set_mempolicy() -- no memory area specified.
2161 #.  To be effective the memory area should be fairly large,
2162 #.  at least 1MB or bigger.
2163 #. type: Plain text
2164 #: build/C/man2/set_mempolicy.2:194
2165 msgid ""
2166 "B<MPOL_INTERLEAVE> interleaves page allocations across the nodes specified "
2167 "in I<nodemask> in numeric node ID order.  This optimizes for bandwidth "
2168 "instead of latency by spreading out pages and memory accesses to those pages "
2169 "across multiple nodes.  However, accesses to a single page will still be "
2170 "limited to the memory bandwidth of a single node."
2171 msgstr ""
2172 "B<MPOL_INTERLEAVE> では、ページ割り当てを I<nodemask> に指定されたノードの間"
2173 "でノード ID の数字順で交互に行う。 このポリシーでは、複数のノードにページを広"
2174 "げて配置し、これらのページへのメモリ アクセスを分散することで、遅延ではなく、"
2175 "帯域を最適化する。 ただし、一つのページへのアクセスに関しては依然として一つの"
2176 "ノードのメモリ帯域 が上限となる。"
2177
2178 #. type: Plain text
2179 #: build/C/man2/set_mempolicy.2:211
2180 msgid ""
2181 "B<MPOL_PREFERRED> sets the preferred node for allocation.  The kernel will "
2182 "try to allocate pages from this node first and fall back to \"near by\" "
2183 "nodes if the preferred node is low on free memory.  If I<nodemask> specifies "
2184 "more than one node ID, the first node in the mask will be selected as the "
2185 "preferred node.  If the I<nodemask> and I<maxnode> arguments specify the "
2186 "empty set, then the policy specifies \"local allocation\" (like the system "
2187 "default policy discussed above)."
2188 msgstr ""
2189 "B<MPOL_PREFERRED> は、割り当て時に優先されるノード (preferred node) を設定す"
2190 "る。 カーネルはまず優先ノードからページ割り当てを行おうとし、 優先ノードに空"
2191 "きメモリが少ない場合に「近くの (near by)」ノードから 割り当てを行う。 "
2192 "I<nodemask> に複数のノード ID が指定された場合は、 I<nodemask> 内の最初のノー"
2193 "ドが優先ノードとして選択される。 引き数 I<nodemask>, I<maxnode> で空集合が指"
2194 "定された場合は、ポリシーは (上述のシステムの デフォルトポリシーと同様に) "
2195 "「ローカルからの割り当て」となる。"
2196
2197 #. type: Plain text
2198 #: build/C/man2/set_mempolicy.2:218
2199 msgid ""
2200 "The process memory policy is preserved across an B<execve>(2), and is "
2201 "inherited by child processes created using B<fork>(2)  or B<clone>(2)."
2202 msgstr ""
2203 "プロセスのメモリポリシーは B<execve>(2)  の前後で保持され、 B<fork>(2)  や "
2204 "B<clone>(2)  を使って作成された子プロセスに継承される。"
2205
2206 #. type: Plain text
2207 #: build/C/man2/set_mempolicy.2:225
2208 msgid ""
2209 "On success, B<set_mempolicy>()  returns 0; on error, -1 is returned and "
2210 "I<errno> is set to indicate the error."
2211 msgstr ""
2212 "成功すると、 B<set_mempolicy>()  は 0 を返す。エラーの場合、-1 を返し、 "
2213 "I<errno> にエラーを示す値を設定する。"
2214
2215 #. type: Plain text
2216 #: build/C/man2/set_mempolicy.2:270
2217 msgid ""
2218 "I<mode> is invalid.  Or, I<mode> is B<MPOL_DEFAULT> and I<nodemask> is "
2219 "nonempty, or I<mode> is B<MPOL_BIND> or B<MPOL_INTERLEAVE> and I<nodemask> "
2220 "is empty.  Or, I<maxnode> specifies more than a page worth of bits.  Or, "
2221 "I<nodemask> specifies one or more node IDs that are greater than the maximum "
2222 "supported node ID.  Or, none of the node IDs specified by I<nodemask> are on-"
2223 "line and allowed by the process's current cpuset context, or none of the "
2224 "specified nodes contain memory.  Or, the I<mode> argument specified both "
2225 "B<MPOL_F_STATIC_NODES> and B<MPOL_F_RELATIVE_NODES>."
2226 msgstr ""
2227 "I<mode> が不正である。 I<mode> が B<MPOL_DEFAULT> で、 I<nodemask> が空ではな"
2228 "い。 I<mode> が B<MPOL_BIND> か B<MPOL_INTERLEAVE> で、 I<nodemask> が空であ"
2229 "る。 I<maxnode> で実際に意味があるビット数より多くのビット数が指定された。 "
2230 "I<nodemask> に、サポートされている最大ノード ID より大きいノードが指定され"
2231 "た。 I<nodemask> に、オンラインで、かつそのプロセスの現在の CPU 集合コンテキ"
2232 "ストで 許可されているノードが一つも含まれていないか、 メモリを含むノードが一"
2233 "つも指定されていない。 I<mode> 引き数に B<MPOL_F_STATIC_NODES> と "
2234 "B<MPOL_F_RELATIVE_NODES> の両方が指定された。"
2235
2236 #. type: Plain text
2237 #: build/C/man2/set_mempolicy.2:277
2238 msgid ""
2239 "The B<set_mempolicy>(), system call was added to the Linux kernel in version "
2240 "2.6.7."
2241 msgstr ""
2242 "B<set_mempolicy>()  システムコールはバージョン 2.6.7 で Linux カーネルに追加"
2243 "された。"
2244
2245 #. type: Plain text
2246 #: build/C/man2/set_mempolicy.2:284
2247 msgid ""
2248 "Process policy is not remembered if the page is swapped out.  When such a "
2249 "page is paged back in, it will use the policy of the process or memory range "
2250 "that is in effect at the time the page is allocated."
2251 msgstr ""
2252 "ページがスワップ・アウトされる場合には、 プロセスポリシーの設定は推奨されな"
2253 "い。 スワップ・アウトされたページがページ・インする際にも、 ページ割り当て時"
2254 "に適用されるプロセスポリシーやメモリ領域ポリシーが 使用される。"
2255
2256 #. type: Plain text
2257 #: build/C/man2/set_mempolicy.2:296
2258 msgid ""
2259 "B<get_mempolicy>(2), B<getcpu>(2), B<mbind>(2), B<mmap>(2), B<numa>(3), "
2260 "B<cpuset>(7), B<numa>(7), B<numactl>(8)"
2261 msgstr ""
2262 "B<get_mempolicy>(2), B<getcpu>(2), B<mbind>(2), B<mmap>(2), B<numa>(3), "
2263 "B<cpuset>(7), B<numa>(7), B<numactl>(8)"