OSDN Git Service

長音記号の修正を release に反映
[linuxjm/LDP_man-pages.git] / release / man3 / posix_memalign.3
index eb57678..bb526b2 100644 (file)
@@ -46,7 +46,7 @@
 .TH POSIX_MEMALIGN 3 2013\-09\-02 GNU "Linux Programmer's Manual"
 .SH 名前
 posix_memalign, aligned_alloc, memalign, valloc, pvalloc \- アラインメント
-されたメモリの割り当てを行う
\81\95ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\81®å\89²ã\82\8aå½\93ã\81¦ã\82\92è¡\8cã\81\86
 .SH 書式
 .nf
 \fB#include <stdlib.h>\fP
@@ -88,37 +88,37 @@ glibc 2.12 より前:
 _BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .ad b
 .br
-((非標準の) ヘッダファイル \fI<malloc.h>\fP も
+((é\9d\9eæ¨\99æº\96ã\81®) ã\83\98ã\83\83ã\83\80ã\83¼ã\83\95ã\82¡ã\82¤ã\83« \fI<malloc.h>\fP ã\82\82
 \fBvalloc\fP() の宣言も公開する。機能検査マクロは不要である。
 .RE
 .PD
 .SH 説明
 .\" glibc does this:
\96¢æ\95° \fBposix_memalign\fP()  ã\81¯ã\80\81 \fIsize\fP ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\82\92å\89²ã\82\8aå½\93ã\81¦ã\80\81å\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92 \fI*memptr\fP
-に設定する。 割り当てられたメモリのアドレスは \fIalignment\fP の倍数になっているはずである。 \fIalignment\fP は 2
-のべき乗で、かつ \fIsizeof(void\ *)\fP の倍数でなければならない。 \fIsize\fP が 0 の場合、 \fI*memptr\fP には
-NULL か一意なポインタ値が書かれる。 このポインタ値は、後で \fBfree\fP(3)  に問題なく渡すことができる。
\96¢æ\95° \fBposix_memalign\fP()  ã\81¯ã\80\81 \fIsize\fP ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\83¼ã\82\92å\89²ã\82\8aå½\93ã\81¦ã\80\81å\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92
+\fI*memptr\fP に設定する。 割り当てられたメモリーのアドレスは \fIalignment\fP の倍数になっているはずである。
+\fIalignment\fP は 2 のべき乗で、かつ \fIsizeof(void\ *)\fP の倍数でなければならない。 \fIsize\fP が 0 の場合、
+\fI*memptr\fP には NULL か一意なポインター値が書かれる。 このポインター値は、後で \fBfree\fP(3)  に問題なく渡すことができる。
 
 .\" The behavior of memalign() for size==0 is as for posix_memalign()
 .\" but no standards govern this.
-廃止された関数である \fBmemalign\fP() は、 \fIsize\fP バイトのメモリを割り当て、
\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\82\92è¿\94ã\81\99ã\80\82 ã\83¡ã\83¢ã\83ªのアドレスは \fIalignment\fP
+å»\83æ­¢ã\81\95ã\82\8cã\81\9fé\96¢æ\95°ã\81§ã\81\82ã\82\8b \fBmemalign\fP() ã\81¯ã\80\81 \fIsize\fP ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\83¼ã\82\92å\89²ã\82\8aå½\93ã\81¦ã\80\81
\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 ã\83¡ã\83¢ã\83ªã\83¼のアドレスは \fIalignment\fP
 の倍数になっているはずである。 \fIalignment\fP は 2 のべき乗でなければならない。
 
 関数 \fBaligned_alloc\fP() は \fBmemalign\fP() と同じだが、\fIsize\fP が \fIalignment\fP
 の倍数でなければならないという追加の制限がある点が異なる。
 
-å»\83æ­¢ã\81\95ã\82\8cã\81\9fé\96¢æ\95°ã\81§ã\81\82ã\82\8b \fBvalloc\fP()  ã\81¯ \fIsize\fP ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\82\92å\89²ã\82\8aå½\93ã\81¦ã\80\81å\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿を返す。
-メモリのアドレスはページサイズの倍数になっているはずである。 これは \fImemalign(sysconf(_SC_PAGESIZE),size)\fP
+å»\83æ­¢ã\81\95ã\82\8cã\81\9fé\96¢æ\95°ã\81§ã\81\82ã\82\8b \fBvalloc\fP()  ã\81¯ \fIsize\fP ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\83¼ã\82\92å\89²ã\82\8aå½\93ã\81¦ã\80\81å\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼を返す。
\83¡ã\83¢ã\83ªã\83¼ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81¯ã\83\9aã\83¼ã\82¸ã\82µã\82¤ã\82ºã\81®å\80\8dæ\95°ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\81¯ã\81\9aã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\82\8cã\81¯ \fImemalign(sysconf(_SC_PAGESIZE),size)\fP
 と等価である。
 
 廃止された関数 \fBpvalloc\fP() は \fBvalloc\fP() と同様だが、
 割り当てられるサイズがシステムのページサイズの倍数に切り上げられる。
 
-これらの関数はいずれもメモリのゼロクリアを行わない。
\81\93ã\82\8cã\82\89ã\81®é\96¢æ\95°ã\81¯ã\81\84ã\81\9aã\82\8cã\82\82ã\83¡ã\83¢ã\83ªã\83¼ã\81®ã\82¼ã\83­ã\82¯ã\83ªã\82¢ã\82\92è¡\8cã\82\8fã\81ªã\81\84ã\80\82
 .SH 返り値
 \fBaligned_alloc\fP(), \fBmemalign\fP(), \fBvalloc\fP(), \fBpvalloc\fP() は割り当てられた
\83¡ã\83¢ã\83ªã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿を返す。 割り当てに失敗した場合は NULL を返す。
\83¡ã\83¢ã\83ªã\83¼ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼を返す。 割り当てに失敗した場合は NULL を返す。
 
 \fBposix_memalign\fP()  は成功した場合は 0 を返し、 失敗した場合は次のセクションに記載されたエラー値のいずれかを返す。
 \fBposix_memalign\fP() の呼び出し後は \fIerrno\fP の値は不定である。
@@ -128,7 +128,7 @@ NULL か一意なポインタ値が書かれる。 このポインタ値は、
 \fIalignment\fP 引き数が 2 のべき乗でなかったか、 \fIsizeof(void\ *)\fP の倍数でなかった。
 .TP 
 \fBENOMEM\fP
-割り当て要求を満たすのに十分なメモリがなかった。
\89²ã\82\8aå½\93ã\81¦è¦\81æ±\82ã\82\92æº\80ã\81\9fã\81\99ã\81®ã\81«å\8d\81å\88\86ã\81ªã\83¡ã\83¢ã\83ªã\83¼ã\81\8cã\81ªã\81\8bã\81£ã\81\9fã\80\82
 .SH バージョン
 関数 \fBmemalign\fP(), \fBvalloc\fP(), \fBpvalloc\fP() は
 すべての Linux libc ライブラリで使用可能である。
@@ -148,7 +148,7 @@ SUSv2 では過去の名残だと記載されている。 POSIX.1\-2001 には
 
 .\"
 関数 \fIaligned_alloc\fP() は C11 標準で規定されている。
-.SS ヘッダ
+.SS ヘッダ
 \fBposix_memalign\fP()  の宣言を \fI<stdlib.h>\fP で行うことに関しては、 皆の意見が一致している。
 
 いくつかのシステムでは、 \fBmemalign\fP()  は \fI<malloc.h>\fP ではなく
@@ -158,7 +158,7 @@ SUSv2 によると、 \fBvalloc\fP() は \fI<stdlib.h>\fP で宣言される。
 や glibc では \fI<malloc.h>\fP で宣言されており、 さらに適切な機能検査
 マクロが定義された場合には \fI<stdlib.h>\fP でも宣言される(上記を参照)。
 .SH 注意
-多くのシステムでは、アラインメントに関して制限がある。例えば、 ブロックデバイスに対するダイレクト I/O に使用するバッファには
+å¤\9aã\81\8fã\81®ã\82·ã\82¹ã\83\86ã\83 ã\81§ã\81¯ã\80\81ã\82¢ã\83©ã\82¤ã\83³ã\83¡ã\83³ã\83\88ã\81«é\96¢ã\81\97ã\81¦å\88¶é\99\90ã\81\8cã\81\82ã\82\8bã\80\82ä¾\8bã\81\88ã\81°ã\80\81 ã\83\96ã\83­ã\83\83ã\82¯ã\83\87ã\83\90ã\82¤ã\82¹ã\81«å¯¾ã\81\99ã\82\8bã\83\80ã\82¤ã\83¬ã\82¯ã\83\88 I/O ã\81«ä½¿ç\94¨ã\81\99ã\82\8bã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81«ã\81¯
 アラインメントに関する制限がある。 POSIX では、どんなアラインメントが必要かを知るために
 \fIpathconf(path,_PC_REC_XFER_ALIGN)\fP コールを規定している。ここで \fBposix_memalign\fP()
 を使うと、この必要条件を満たすことができる。
@@ -173,21 +173,21 @@ SUSv2 によると、 \fBvalloc\fP() は \fI<stdlib.h>\fP で宣言される。
 .\" .IR free (3),
 .\" but not to
 .\" .IR realloc (3).
-POSIX では \fBposix_memalign\fP() によって獲得したメモリは \fBfree\fP(3) を
+POSIX ã\81§ã\81¯ \fBposix_memalign\fP() ã\81«ã\82\88ã\81£ã\81¦ç\8d²å¾\97ã\81\97ã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\81¯ \fBfree\fP(3) ã\82\92
 使って解放することができる必要がある。 いくつかのシステムでは
-\fBmemalign\fP() や\fBvalloc\fP() で割り当てられたメモリを再利用する手段が
+\fBmemalign\fP() ã\82\84\fBvalloc\fP() ã\81§å\89²ã\82\8aå½\93ã\81¦ã\82\89ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\82\92å\86\8då\88©ç\94¨ã\81\99ã\82\8bæ\89\8b段ã\81\8c
 提供されていない(なぜなら \fBfree\fP(3) に渡すことができるのは
-\fBmalloc\fP(3) から受け取ったポインタだけだが、例えば \fBmemalign\fP() は
+\fBmalloc\fP(3) ã\81\8bã\82\89å\8f\97ã\81\91å\8f\96ã\81£ã\81\9fã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81 ã\81\91ã\81 ã\81\8cã\80\81ä¾\8bã\81\88ã\81° \fBmemalign\fP() ã\81¯
 \fBmalloc\fP(3) を呼び出し、得た値をアラインメントしてしまうからである)。
-glibc の実装では、 ここに述べた関数のいずれで獲得したメモリも
+glibc ã\81®å®\9fè£\85ã\81§ã\81¯ã\80\81 ã\81\93ã\81\93ã\81«è¿°ã\81¹ã\81\9fé\96¢æ\95°ã\81®ã\81\84ã\81\9aã\82\8cã\81§ç\8d²å¾\97ã\81\97ã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\82\82
 \fBfree\fP(3) で再利用することができる。
 
-glibc の \fBmalloc\fP(3) は常に 8 バイトにアラインメントされたメモリアドレスを
+glibc ã\81® \fBmalloc\fP(3) ã\81¯å¸¸ã\81« 8 ã\83\90ã\82¤ã\83\88ã\81«ã\82¢ã\83©ã\82¤ã\83³ã\83¡ã\83³ã\83\88ã\81\95ã\82\8cã\81\9fã\83¡ã\83¢ã\83ªã\83¼ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92
 返すので、ここで述べた関数が必要になるのは 8 バイトよりも大きなアラインメント
 が必要な場合だけである。
 .SH 関連項目
 \fBbrk\fP(2), \fBgetpagesize\fP(2), \fBfree\fP(3), \fBmalloc\fP(3)
 .SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.64 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.78 の一部
 である。プロジェクトの説明とバグ報告に関する情報は
 http://www.kernel.org/doc/man\-pages/ に書かれている。