.\"
.TH PREAD 2 2013\-06\-21 Linux "Linux Programmer's Manual"
.SH 名前
-pread, pwrite \- 指定したオフセットでファイルディスクリプタを読み書きする
+pread, pwrite \- æ\8c\87å®\9aã\81\97ã\81\9fã\82ªã\83\95ã\82»ã\83\83ã\83\88ã\81§ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92èªã\81¿æ\9b¸ã\81\8dã\81\99ã\82\8b
.SH 書式
\fB#include <unistd.h>\fP
.sp
.ad
.PD
.SH 説明
-\fBpread\fP() は、ファイルディスクリプタ \fIfd\fP の (ファイルの先頭からの) オフセット \fIoffset\fP から最大 \fIcount\fP
-バイトをバッファ \fIbuf\fP へ読み込む。ファイルオフセットは変化しない。
+\fBpread\fP() は、ファイルディスクリプター \fIfd\fP の (ファイルの先頭からの) オフセット \fIoffset\fP から最大
+\fIcount\fP バイトをバッファー \fIbuf\fP へ読み込む。ファイルオフセットは変化しない。
.PP
-\fBpwrite\fP() は、バッファ \fIbuf\fP から最大 \fIcount\fP バイトをファイルディスクリプタ \fIfd\fP のオフセット
+\fBpwrite\fP() は、バッファー \fIbuf\fP から最大 \fIcount\fP バイトをファイルディスクリプター \fIfd\fP のオフセット
\fIoffset\fP に書き込む。ファイルオフセットは変化しない。
.PP
\fIfd\fP で参照されるファイルはシーク (seek) 可能でなければならない。
で規定された全てのエラーが発生する可能性があり、 \fIerrno\fP にはエラーを示す値が設定される。
.SH バージョン
システムコール \fBpread\fP() と \fBpwrite\fP() は Linux にバージョン 2.1.60 で追加された。 i386
-のシステムコールのエントリは 2.1.69 で追加された。 (システムコールを持たない古いカーネルでの \fBlseek\fP(2)
+ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\81¯ 2.1.69 ã\81§è¿½å\8a ã\81\95ã\82\8cã\81\9fã\80\82 (ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\92æ\8c\81ã\81\9fã\81ªã\81\84å\8f¤ã\81\84ã\82«ã\83¼ã\83\8dã\83«ã\81§ã\81® \fBlseek\fP(2)
を使ったエミュレーションを含めると) C ライブラリにおけるサポートは glibc 2.1 で追加された。
.SH 準拠
POSIX.1\-2001.
.SH 注意
システムコール \fBpread\fP() と \fBpwrite\fP() は、特にマルチスレッドアプリケーションで役に立つ。 これらを使うと、
-他のスレッドによるファイルオフセットの変更の影響を受けることなく、 複数のスレッドが同じファイルディスクリプタに対して入出力を行うことができる。
+ä»\96ã\81®ã\82¹ã\83¬ã\83\83ã\83\89ã\81«ã\82\88ã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\82ªã\83\95ã\82»ã\83\83ã\83\88ã\81®å¤\89æ\9b´ã\81®å½±é\9f¿ã\82\92å\8f\97ã\81\91ã\82\8bã\81\93ã\81¨ã\81ªã\81\8fã\80\81 è¤\87æ\95°ã\81®ã\82¹ã\83¬ã\83\83ã\83\89ã\81\8cå\90\8cã\81\98ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«å¯¾ã\81\97ã\81¦å\85¥å\87ºå\8a\9bã\82\92è¡\8cã\81\86ã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82
Linux では、裏で呼び出されるシステムコールの名前がカーネル 2.6 で変更された。
\fBpread\fP() は \fBpread64\fP() になり、 \fBpwrite\fP() は \fBpwrite64\fP() になった。
システムコールの番号は変更されていない。
glibc の \fBpread\fP() と \fBpwrite\fP() のラッパー関数はこれらの変更を吸収している。
-いくつかの 32 ビットアーキテクチャでは、これらのシステムコールの呼び出し時のシグネチャーが違っています。理由は \fBsyscall\fP(2)
+ã\81\84ã\81\8fã\81¤ã\81\8bã\81® 32 ã\83\93ã\83\83ã\83\88ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§ã\81¯ã\80\81ã\81\93ã\82\8cã\82\89ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®å\91¼ã\81³å\87ºã\81\97æ\99\82ã\81®ã\82·ã\82°ã\83\8dã\83\81ã\83£ã\83¼ã\81\8cé\81\95ã\81£ã\81¦ã\81\84ã\81¾ã\81\99ã\80\82ç\90\86ç\94±ã\81¯ \fBsyscall\fP(2)
で説明されている通りです。
.SH バグ
.\" FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=43178