.\" permission notice identical to this one.
.\" %%%LICENSE_END
.\"
-.\" FIXME Should programs normally be using this API directly, or should
+.\" FIXME Should programs normally be using move_pages() directly, or should
.\" they rather be using interfaces in the numactl package?
.\" (e.g., compare with recommendation in mbind(2)).
+.\" Does this page need to give advise on this topic?
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
+.\"
+.\" Japanese Version Copyright (c) 2008 Akihiro MOTOKI
+.\" all rights reserved.
+.\" Translated 2008-10-26, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\"
.TH MOVE_PAGES 2 2010\-06\-11 Linux "Linux Programmer's Manual"
.SH 名前
move_pages \- あるプロセスの個々のページを別のノードに移動する
\fI\-lnuma\fP とリンクする。
.SH 説明
\fBmove_pages\fP() は、プロセス \fIpid\fP の指定されたページ \fIpages\fP を \fInodes\fP
-で指定されたメモリノードに移動する。 移動の結果は \fIstatus\fP に反映される。 \fIflags\fP では移動されるページに関する制約を指定する。
+ã\81§æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\83\8eã\83¼ã\83\89ã\81«ç§»å\8b\95ã\81\99ã\82\8bã\80\82 移å\8b\95ã\81®çµ\90æ\9e\9cã\81¯ \fIstatus\fP ã\81«å\8f\8dæ\98 ã\81\95ã\82\8cã\82\8bã\80\82 \fIflags\fP ã\81§ã\81¯ç§»å\8b\95ã\81\95ã\82\8cã\82\8bã\83\9aã\83¼ã\82¸ã\81«é\96¢ã\81\99ã\82\8bå\88¶ç´\84ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82
\fIpid\fP は、移動されるページが属するプロセスの ID である。 別のプロセスのページを移動するためには、呼び出し元が特権
-(\fBCAP_SYS_NICE\fP) を持っているか、呼び出したプロセスの実ユーザ ID か実効ユーザ ID が ページ移動対象のプロセスの実ユーザ
-ID か保存 set\-user\-ID のどちらかと 一致しなければならない。 \fIpid\fP が 0 の場合、 \fBmove_pages\fP()
-は呼び出したプロセスのページを移動する。
+(\fBCAP_SYS_NICE\fP) を持っているか、呼び出したプロセスの実ユーザー ID か実効ユーザー ID が
+ページ移動対象のプロセスの実ユーザー ID か保存 set\-user\-ID のどちらかと 一致しなければならない。 \fIpid\fP が 0 の場合、
+\fBmove_pages\fP() は呼び出したプロセスのページを移動する。
\fIcount\fP は移動するページ数である。 \fIcount\fP により \fIpages\fP, \fInodes\fP, \fIstatus\fP の 3
つの配列の大きさが定義される。
-.\" FIXME what if they are not aligned?
-\fIpages\fP は、移動すべきページへのポインタの配列であり、 各ポインタはページ境界に揃えた値を指定すべきである。 \fIpid\fP
+.\" FIXME Describe the result if pointers in the 'pages' array are
+.\" not aligned to page boundaries
+\fIpages\fP は、移動すべきページへのポインターの配列であり、 各ポインターはページ境界に揃えた値を指定すべきである。 \fIpid\fP
で指定されたプロセスで見えるアドレスを指定する。
\fInodes\fP は、各ページの希望の移動場所を示す整数値の配列であり、 配列の各要素はノード番号である。 \fInodes\fP には NULL
は、そのプロセスが排他的に使用しているページだけを移動することを意味する。 \fBMPOL_MF_MOVE_ALL\fP
は、複数のプロセス間で共有されているページも移動できることを意味する。 \fBMPOL_MF_MOVE_ALL\fP を使用するためには、そのプロセスが特権
(\fBCAP_SYS_NICE\fP) を持っていなければならない。
-.SH "status 配列に格納されるページ状態"
+.SS "status 配列に格納されるページ状態"
\fIstatus\fP 配列の各要素として、以下の値が返される。
.TP
\fB0..MAX_NUMNODES\fP
がそのページへの参照を保持している場合に発生する。
.TP
\fB\-EFAULT\fP
-そのページが zero page であるか、そのメモリ領域はそのプロセスにより マップされていない。
+そのページが zero page であるか、そのメモリー領域はそのプロセスにより マップされていない。
.TP
\fB\-EIO\fP
ページを書き戻す (write back) ことができない。 ページが dirty で、ファイルシステムが dirty なページを移動できるような
ページが存在しない。
.TP
\fB\-ENOMEM\fP
-移動先のノードでメモリを確保することができない。
+移å\8b\95å\85\88ã\81®ã\83\8eã\83¼ã\83\89ã\81§ã\83¡ã\83¢ã\83ªã\83¼ã\82\92確ä¿\9dã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\84ã\80\82
.SH 返り値
-.\" FIXME Is the following quite true: does the wrapper in numactl
+.\" FIXME . Is the following quite true: does the wrapper in numactl
.\" do the right thing?
成功すると、 \fBmove_pages\fP() は 0 を返す。 エラーの場合、\-1 を返し、 \fIerrno\fP にエラーを示す値を設定する。
.SH エラー
移動すべきページが多過ぎる。
.TP
\fBEACCES\fP
-.\" FIXME Clarify "current cpuset". Is that the cpuset of the caller
-.\" or the target?
+.\" FIXME Clarify "current cpuset" in the description of the EACCESS error.
+.\" Is that the cpuset of the caller or the target?
移動先のノードのいずれかが現在の CPU 集合では許可されていない。
.TP
\fBEFAULT\fP
-パラメータ配列にアクセスできなかった。
+パラメーター配列にアクセスできなかった。
.TP
\fBEINVAL\fP
\fIflags\fP に \fBMPOL_MF_MOVE\fP でも \fBMPOL_MF_MOVE_ALL\fP
.TP
\fBEPERM\fP
呼び出し元は \fBMPOL_MF_MOVE_ALL\fP を指定したが、十分な特権 (\fBCAP_SYS_NICE\fP) を持っていない。
-または、呼び出し元が他のユーザに属するプロセスのページを移動しようとしたが、 それを行えるだけの特権 (\fBCAP_SYS_NICE\fP)
+ã\81¾ã\81\9fã\81¯ã\80\81å\91¼ã\81³å\87ºã\81\97å\85\83ã\81\8cä»\96ã\81®ã\83¦ã\83¼ã\82¶ã\83¼ã\81«å±\9eã\81\99ã\82\8bã\83\97ã\83ã\82»ã\82¹ã\81®ã\83\9aã\83¼ã\82¸ã\82\92移å\8b\95ã\81\97ã\82\88ã\81\86ã\81¨ã\81\97ã\81\9fã\81\8cã\80\81 ã\81\9dã\82\8cã\82\92è¡\8cã\81\88ã\82\8bã\81 ã\81\91ã\81®ç\89¹æ¨© (\fBCAP_SYS_NICE\fP)
を持っていなかった。
.TP
\fBESRCH\fP
\fBget_mempolicy\fP(2) を使用すればよい。 取得した情報は、CPU 集合の手動または自動での再構成により
いつ何時変化してしまうか分からない。
-この関数を使用すると、ページの位置 (ノード) が 指定されたアドレスに対して設定されたメモリポリシー (\fBmbind\fP(2) 参照)
-や指定されたプロセスに対して設定されたメモリポリシー (\fBset_mempolicy\fP(2) 参照) に違反してしまう可能性がある。
-つまり、メモリポリシーは \fBmove_pages\fP() で使われる移動先ノードを制限しないということである。
+ã\81\93ã\81®é\96¢æ\95°ã\82\92使ç\94¨ã\81\99ã\82\8bã\81¨ã\80\81ã\83\9aã\83¼ã\82¸ã\81®ä½\8dç½® (ã\83\8eã\83¼ã\83\89) ã\81\8c æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¢ã\83\89ã\83¬ã\82¹ã\81«å¯¾ã\81\97ã\81¦è¨å®\9aã\81\95ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\83\9dã\83ªã\82·ã\83¼ (\fBmbind\fP(2) å\8f\82ç\85§)
+ã\82\84æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\83\97ã\83ã\82»ã\82¹ã\81«å¯¾ã\81\97ã\81¦è¨å®\9aã\81\95ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\83\9dã\83ªã\82·ã\83¼ (\fBset_mempolicy\fP(2) å\8f\82ç\85§) ã\81«é\81\95å\8f\8dã\81\97ã\81¦ã\81\97ã\81¾ã\81\86å\8f¯è\83½æ\80§ã\81\8cã\81\82ã\82\8bã\80\82
+ã\81¤ã\81¾ã\82\8aã\80\81ã\83¡ã\83¢ã\83ªã\83¼ã\83\9dã\83ªã\82·ã\83¼ã\81¯ \fBmove_pages\fP() ã\81§ä½¿ã\82\8fã\82\8cã\82\8b移å\8b\95å\85\88ã\83\8eã\83¼ã\83\89ã\82\92å\88¶é\99\90ã\81\97ã\81ªã\81\84ã\81¨ã\81\84ã\81\86ã\81\93ã\81¨ã\81§ã\81\82ã\82\8bã\80\82
-ヘッダファイル \fI<numaif.h>\fP は glibc には含まれておらず、 \fIlibnuma\-devel\fP
+ã\83\98ã\83\83ã\83\80ã\83¼ã\83\95ã\82¡ã\82¤ã\83« \fI<numaif.h>\fP ã\81¯ glibc ã\81«ã\81¯å\90«ã\81¾ã\82\8cã\81¦ã\81\8aã\82\89ã\81\9aã\80\81 \fIlibnuma\-devel\fP
か同様のパッケージをインストールする必要がある。
.SH 関連項目
\fBget_mempolicy\fP(2), \fBmbind\fP(2), \fBset_mempolicy\fP(2), \fBnuma\fP(3),
\fBnuma_maps\fP(5), \fBcpuset\fP(7), \fBnuma\fP(7), \fBmigratepages\fP(8),
-\fBnuma_stat\fP(8)
+\fBnumastat\fP(8)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.51 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。