OSDN Git Service

Retire LDP man-pages repository
[linuxjm/LDP_man-pages.git] / release / man2 / set_mempolicy.2
diff --git a/release/man2/set_mempolicy.2 b/release/man2/set_mempolicy.2
deleted file mode 100644 (file)
index 17758d0..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-.\" Copyright 2003,2004 Andi Kleen, SuSE Labs.
-.\" and Copyright 2007 Lee Schermerhorn, Hewlett Packard
-.\"
-.\" %%%LICENSE_START(VERBATIM_PROF)
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
-.\" %%%LICENSE_END
-.\"
-.\" 2006-02-03, mtk, substantial wording changes and other improvements
-.\" 2007-08-27, Lee Schermerhorn <Lee.Schermerhorn@hp.com>
-.\"     more precise specification of behavior.
-.\"
-.\"*******************************************************************
-.\"
-.\" This file was generated with po4a. Translate the source file.
-.\"
-.\"*******************************************************************
-.\"
-.\" Translated 2006-08-14, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.39
-.\" Updated 2007-01-07, Akihiro MOTOKI, LDP v2.43
-.\" Updated 2008-02-13, Akihiro MOTOKI, LDP v2.77
-.\" Updated 2008-08-06, Akihiro MOTOKI, LDP v3.05
-.\" Updated 2008-08-21, Akihiro MOTOKI, LDP v3.07
-.\" Updated 2008-09-02, Akihiro MOTOKI, LDP v3.08
-.\" Updated 2008-11-19, Akihiro MOTOKI, LDP v3.13
-.\"
-.TH SET_MEMPOLICY 2 2014\-05\-28 Linux "Linux Programmer's Manual"
-.SH 名前
-set_mempolicy \- プロセスとその子プロセスの NUMA メモリーの デフォルトポリシーを設定する
-.SH 書式
-.nf
-\fB#include <numaif.h>\fP
-.sp
-\fBlong set_mempolicy(int \fP\fImode\fP\fB, const unsigned long *\fP\fInodemask\fP\fB,\fP
-\fB                   unsigned long \fP\fImaxnode\fP\fB);\fP
-.sp
-\fI\-lnuma\fP でリンクする。
-.fi
-.SH 説明
-\fBset_mempolicy\fP()  は、呼び出し元プロセスの NUMA ポリシーを \fIpolicy\fP に設定する。 NUMA
-ポリシーはポリシーモードと 0 個以上のノードから構成され、 設定内容は引き数 \fImode\fP, \fInodemask\fP, \fImaxnode\fP
-により指定される。
-
-NUMA (非対称メモリーアクセス) マシンでは、CPU により メモリーコントローラーが異なり、距離も異なっている。
-メモリーポリシーは、どのノードからメモリーをそのプロセスに 割り当てるかを定めるものである。
-
-\fBset_mempolicy\fP()  は、プロセスのデフォルトポリシーを定める。 プロセスのポリシーは、 \fBmbind\fP(2)
-で設定される特定のポリシーにより制御されるメモリー領域以外の プロセスのアドレス空間におけるページの割り当てに適用される。
-プロセスのデフォルトポリシーは、 \fBMAP_PRIVATE\fP フラグを指定した \fBmmap\fP(2)
-を使ってマップされたメモリーマップファイルに対する読み出し専用 (ロードされるだけ) のページの割り当てにも適用される。 また、
-\fBMAP_SHARED\fP フラグを指定した \fBmmap\fP(2)  を使ってマップされたメモリーマップファイルに対するページの割り当てにも 適用される
-(この場合はページのアクセス種別に関わらず適用される) 。 設定したポリシーは、プロセスに新規のページが割り当てられるときにのみ
-適用される。無名メモリー (anonymous memory) の場合、新規ページの割り当ては
-アプリケーションが初めてページにアクセスした際に行われる。
-
-\fImode\fP 引き数には \fBMPOL_DEFAULT\fP, \fBMPOL_BIND\fP, \fBMPOL_INTERLEAVE\fP,
-\fBMPOL_PREFERRED\fP のいずれか一つを指定してしなければならない。 \fBMPOL_DEFAULT\fP 以外のポリシーの場合、呼び出し元は
-\fInodemask\fP 引き数で一つ以上のノードを指定する必要がある。
-
-\fImode\fP 引き数には、追加で \fIモードフラグ\fP を含めることもできる。 サポートされている \fIモードフラグ\fP は以下の通りである。
-.TP 
-\fBMPOL_F_STATIC_NODES\fP (Linux 2.6.26 以降)
-空でない \fInodemask\fP は、物理ノード ID である。 Linux では、そのプロセスが異なる CPU 集合コンテキスト (cpuset
-context)  に移動した場合でも、そのプロセスの現在の CPU 集合コンテキストで 許可されているノード集合が変化した場合でも、
-\fInodemask\fP をマッピングし直すことはない。
-.TP 
-\fBMPOL_F_RELATIVE_NODES\fP (Linux 2.6.26 以降)
-空でない \fInodemask\fP は、そのプロセスの現在の CPU 集合で許可されているノード ID 集合 における相対的なノード ID である。
-.PP
-\fInodemask\fP は、最大で \fImaxnode\fP ビットから構成されるノード ID のビットマスクを指す。 ビットマスクの大きさは、直近の
-\fIsizeof(unsigned long)\fP の倍数に切り上げられるが、カーネルが使用するのは \fImaxnode\fP 個までのビットだけである。
-NULL 値の \fInodemask\fP もしくは値が 0 の \fImaxnode\fP はノードの空集合を表す。 \fImaxnode\fP の値が 0 の場合、
-\fInodemask\fP 引き数は無視される。
-
-\fInodemask\fP が必須の場面では、 \fInodemask\fP に、オンラインで、そのプロセスの現在の CPU 集合コンテキストで 許可されており
-(\fBMPOL_F_STATIC_NODES\fP モードフラグが指定されていない場合)、メモリーがあるノードが 少なくとも一つ入っていなければならない。
-\fImode\fP に \fBMPOL_F_STATIC_NODES\fP がセットされ、 \fInodemask\fP が必須の場面で、 \fInodemask\fP
-に、そのプロセスの現在の CPU 集合コンテキストで許可されたノードが 一つも含まれていない場合には、メモリーのポリシーとしてデフォルトの
-「ローカルから割り当て (local allocation)」が適用される。 そのプロセスの CPU 集合コンテキストが \fInodemask\fP
-で指定されたノードを少なくとも一つ含むようになるまでは、 結果的に指定された動作が上書きされることになる。
-
-\fBMPOL_DEFAULT\fP モードは、デフォルトではないプロセスのメモリーポリシーを削除することを
-指定するものである。これにより、メモリーポリシーはシステムの デフォルトポリシーに「戻る」ことになる。
-システムのデフォルトポリシーは「ローカルからの割り当て (local allocation)」、 つまりメモリー割り当てのきっかけとなった CPU
-のノードのメモリーが割り当てられる。 \fInodemask\fP には NULL を指定しなければならない。 「自ノード (local
-node)」に空きメモリーが全くない場合、システムは 「近くの (near by) ノード」からメモリーを割り当てようと試みる。
-
-\fBMPOL_BIND\fP モードは厳密なポリシーで、メモリー割り当ては \fInodemask\fP に指定されたノードに限定される。 \fInodemask\fP
-に 2 個以上のノードが指定された場合、ページの割り当ては ノード ID が数字として最小のノードから開始され、
-そのノードに空きメモリーがなくなるまでそのノードから ページ割り当てが行われる。そのノードに空きメモリーがなくなったら、 次に小さなノード ID
-を持つノードからページ割り当てが行われる。 これを、 \fInodemask\fP で指定された全てのノードで空きメモリーがなくなるまで繰り返す。
-\fInodemask\fP で指定された以外のノードからはページの割り当ては行われない。
-
-.\" NOTE:  the following sentence doesn't make sense in the context
-.\" of set_mempolicy() -- no memory area specified.
-.\" To be effective the memory area should be fairly large,
-.\" at least 1MB or bigger.
-\fBMPOL_INTERLEAVE\fP では、ページ割り当てを \fInodemask\fP に指定されたノードの間でノード ID の数字順で交互に行う。
-このポリシーでは、複数のノードにページを広げて配置し、これらのページへのメモリー アクセスを分散することで、遅延ではなく、帯域を最適化する。
-ただし、一つのページへのアクセスに関しては依然として一つのノードのメモリー帯域 が上限となる。
-
-\fBMPOL_PREFERRED\fP は、割り当て時に優先されるノード (preferred node) を設定する。
-カーネルはまず優先ノードからページ割り当てを行おうとし、 優先ノードに空きメモリーが少ない場合に「近くの (near by)」ノードから
-割り当てを行う。 \fInodemask\fP に複数のノード ID が指定された場合は、 \fInodemask\fP
-内の最初のノードが優先ノードとして選択される。 引き数 \fInodemask\fP, \fImaxnode\fP で空集合が指定された場合は、ポリシーは
-(上述のシステムの デフォルトポリシーと同様に) 「ローカルからの割り当て」となる。
-
-プロセスのメモリーポリシーは \fBexecve\fP(2)  の前後で保持され、 \fBfork\fP(2)  や \fBclone\fP(2)
-を使って作成された子プロセスに継承される。
-.SH 返り値
-成功すると、 \fBset_mempolicy\fP()  は 0 を返す。エラーの場合、\-1 を返し、 \fIerrno\fP にエラーを示す値を設定する。
-.SH エラー
-.TP 
-\fBEFAULT\fP
-\fInodemask\fP と \fImaxnode\fP で指定されたメモリー領域の一部または全部が、 呼び出し元がアクセス可能なアドレス空間外を指している。
-.TP 
-\fBEINVAL\fP
-\fImode\fP が不正である。 \fImode\fP が \fBMPOL_DEFAULT\fP で、 \fInodemask\fP が空ではない。 \fImode\fP が
-\fBMPOL_BIND\fP か \fBMPOL_INTERLEAVE\fP で、 \fInodemask\fP が空である。 \fImaxnode\fP
-で実際に意味があるビット数より多くのビット数が指定された。 \fInodemask\fP に、サポートされている最大ノード ID
-より大きいノードが指定された。 \fInodemask\fP に、オンラインで、かつそのプロセスの現在の CPU 集合コンテキストで
-許可されているノードが一つも含まれていないか、 メモリーを含むノードが一つも指定されていない。 \fImode\fP 引き数に
-\fBMPOL_F_STATIC_NODES\fP と \fBMPOL_F_RELATIVE_NODES\fP の両方が指定された。
-.TP 
-\fBENOMEM\fP
-利用可能なカーネルメモリーが十分でなかった。
-.SH バージョン
-\fBset_mempolicy\fP()  システムコールはバージョン 2.6.7 で Linux カーネルに追加された。
-.SH 準拠
-このシステムコールは Linux 固有である。
-.SH 注意
-ページがスワップアウトされる場合には、 プロセスポリシーの設定は推奨されない。 スワップアウトされたページがページインする際にも、
-ページ割り当て時に適用されるプロセスポリシーやメモリー領域ポリシーが 使用される。
-
-ライブラリによるサポートについては \fBnuma\fP(7)  を参照。
-.SH 関連項目
-\fBget_mempolicy\fP(2), \fBgetcpu\fP(2), \fBmbind\fP(2), \fBmmap\fP(2), \fBnuma\fP(3),
-\fBcpuset\fP(7), \fBnuma\fP(7), \fBnumactl\fP(8)
-.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
-である。プロジェクトの説明とバグ報告に関する情報は
-http://www.kernel.org/doc/man\-pages/ に書かれている。