.PD
.SH 説明
.\" glibc does this:
-The function \fBposix_memalign\fP() allocates \fIsize\fP bytes and places the
-address of the allocated memory in \fI*memptr\fP. The address of the allocated
-memory will be a multiple of \fIalignment\fP, which must be a power of two and
-a multiple of \fIsizeof(void\ *)\fP. If \fIsize\fP is 0, then \fBposix_memalign\fP()
-returns either NULL, or a unique pointer value that can later be
-successfully passed to \fBfree\fP(3).
+関数 \fBposix_memalign\fP() は、 \fIsize\fP バイトのメモリを割り当て、割り当てられたメモリのアドレスを \fI*memptr\fP
+に設定する。 割り当てられたメモリのアドレスは \fIalignment\fP の倍数になっているはずである。 \fIalignment\fP は 2
+のべき乗で、かつ \fIsizeof(void\ *)\fP の倍数でなければならない。 \fIsize\fP が 0 の場合、
+\fBposix_memalign\fP() は NULL か一意なポインタ値を返す。 このポインタ値は、後で \fBfree\fP(3)
+に問題なく渡すことができる。
.\" The behavior of memalign() for size==0 is as for posix_memalign()
.\" but no standards govern this.
.SH エラー
.TP
\fBEINVAL\fP
-The \fIalignment\fP argument was not a power of two, or was not a multiple of
-\fIsizeof(void\ *)\fP.
+\fIalignment\fP 引き数が 2 のべき乗でなかったか、 \fIsizeof(void\ *)\fP の倍数でなかった。
.TP
\fBENOMEM\fP
割り当て要求を満たすのに十分なメモリがなかった。