.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
-.TH SYNC_FILE_RANGE 2 2013\-04\-01 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 2007 Akihiro MOTOKI
+.\" all rights reserved.
+.\" Translated 2007-01-09, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.43
+.\" Updated 2008-08-06, Akihiro MOTOKI, LDP v3.05
+.\" Updated 2010-04-23, Akihiro MOTOKI, LDP v3.24
+.\" Updated 2012-05-31, Akihiro MOTOKI <amotoki@gmail.com>
+.\" Updated 2013-05-06, Akihiro MOTOKI <amotoki@gmail.com>
+.\"
+.TH SYNC_FILE_RANGE 2 2014\-08\-19 Linux "Linux Programmer's Manual"
.SH 名前
sync_file_range \- ファイルセグメントをディスクと同期する
.SH 書式
\fB unsigned int \fP\fIflags\fP\fB);\fP
.fi
.SH 説明
-\fBsync_file_range\fP() を使うと、ファイルディスクリプタ \fIfd\fP で参照されるオープンされたファイルのディスクとの同期に関して、
-きめ細かな制御が可能となる。
+\fBsync_file_range\fP() を使うと、ファイルディスクリプター \fIfd\fP
+ã\81§å\8f\82ç\85§ã\81\95ã\82\8cã\82\8bã\82ªã\83¼ã\83\97ã\83³ã\81\95ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\81¨ã\81®å\90\8cæ\9c\9fã\81«é\96¢ã\81\97ã\81¦ã\80\81 ã\81\8dã\82\81ç´°ã\81\8bã\81ªå\88¶å¾¡ã\81\8cå\8f¯è\83½ã\81¨ã\81ªã\82\8bã\80\82
\fIoffset\fP は、同期を行うファイルの領域の開始バイトである。 \fInbytes\fP には同期を行う領域の長さをバイト単位で指定する。
\fInbytes\fP が 0 の場合は、 \fIoffset\fP からファイル末尾までの全バイトを同期する。 同期はシステムのページサイズの単位で行われる。
.SS 警告
このシステムコールは非常に危険であり、 移植性が必要なプログラムで使用すべきではない。 これらの操作ではどれもファイルのメタデータの書き出しを行わない。
したがって、アプリケーションにより作成済みのディスクブロックの 上書きの実行が確実に行われない限り、クラッシュの後でもデータが 利用できる保証はない。
-æ\9b¸ã\81\8dè¾¼ã\81¿ã\81\8cä¸\8aæ\9b¸ã\81\8dã\81 ã\81\91ã\81§ã\81\82ã\82\8bã\81\8bã\82\92ç\9f¥ã\82\8bã\81\9fã\82\81ã\81®ã\83¦ã\83¼ã\82¶ã\82¤ã\83³ã\82¿フェースは存在しない。 (\fIbtrfs\fP などの) copy\-on\-write
+æ\9b¸ã\81\8dè¾¼ã\81¿ã\81\8cä¸\8aæ\9b¸ã\81\8dã\81 ã\81\91ã\81§ã\81\82ã\82\8bã\81\8bã\82\92ç\9f¥ã\82\8bã\81\9fã\82\81ã\81®ã\83¦ã\83¼ã\82¶ã\83¼ã\82¤ã\83³ã\82¿ã\83¼フェースは存在しない。 (\fIbtrfs\fP などの) copy\-on\-write
動作を使ったファイルシステムでは、 既存の割り当て済みのブロックに対する上書き自体ができない。 前もって割り当てられた領域に書き込みを行う場合、
多くのファイルシステムでは block allocator への書き込みも必要となるが、 このシステムコールは block allocator
のディスクへの同期を行わない。 このシステムコールはディスク書き込みキャッシュのフラッシュを
これは write\-for\-data\-integrity 操作 (データ完全性確保のための書き込み) であり、指定された範囲内の、
\fBsync_file_range\fP() が呼ばれた時点で dirty な全てのページが ディスクに格納されることが保証される。
.SH 返り値
-成功の場合、 \fBsync_file_range\fP() は 0 を返す。失敗の場合、\-1 を返し、 \fIerror\fP にエラーを示す値を設定する。
+成功の場合、 \fBsync_file_range\fP() は 0 を返す。失敗の場合、\-1 を返し、 \fIerrno\fP にエラーを示す値を設定する。
.SH エラー
.TP
\fBEBADF\fP
-\fIfd\fP が有効なファイルディスクリプタではない。
+\fIfd\fP ã\81\8cæ\9c\89å\8a¹ã\81ªã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81¯ã\81ªã\81\84ã\80\82
.TP
\fBEINVAL\fP
\fIflags\fP に不正なビットが指定されている。または \fIoffset\fP か \fInbytes\fP が不正である。
I/O エラー。
.TP
\fBENOMEM\fP
-メモリ不足である。
+メモリー不足である。
.TP
\fBENOSPC\fP
ディスク領域不足である。
.SH 準拠
このシステムコールは Linux 独自であり、 移植性が必要なプログラムでは使用を避けるべきである。
.SH 注意
+.SS sync_file_range2()
.\" See kernel commit edd5cd4a9424f22b0fa08bef5e299d41befd5622
-Some architectures (e.g., PowerPC, ARM) need 64\-bit arguments to be aligned
-in a suitable pair of registers. On such architectures, the call signature
-of \fBsync_file_range\fP() shown in the SYNOPSIS would force a register to be
-wasted as padding between the \fIfd\fP and \fIoffset\fP arguments. (See
-\fBsyscall\fP(2) for details.) Therefore, these architectures define a
-different system call that orders the arguments suitably:
+いくつかのアーキテクチャー (例えば、 PowerPC や ARM) では、 64 ビットの引き数は適切なレジスターの組に割り当てる必要がある。
+このようなアーキテクチャーでは、 「書式」に書かれている \fBsync_file_range\fP() の呼び出しシグネチャーで、 引き数 \fIfd\fP と
+\fIoffset\fP の間のパディング (詰めもの) でレジスターが一つ消費されてしまう (詳細は \fBsyscall\fP(2) 参照)。 そのため、
+これらのアーキテクチャーでは引き数が適切な順序になった別のシステムコールが定義されている。
.PP
.in +4n
.nf
全く同じである。このシステムコールに対するライブラリによるサポートは
glibc では提供されていない。
-このバージョンのシステムコールは、Linux 2.6.20 で ARM アーキテクチャで
+ã\81\93ã\81®ã\83\90ã\83¼ã\82¸ã\83§ã\83³ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯ã\80\81Linux 2.6.20 ã\81§ ARM ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§
初めて登場し、 \fBarm_sync_file_range\fP() という名前であった。
Linux 2.6.22 で、同様のシステムコールが PowerPC 用に追加された際に、
システムコールの名前が変更された。
-glibc によるサポートが提供されているアーキテクチャでは、
+glibc ã\81«ã\82\88ã\82\8bã\82µã\83\9dã\83¼ã\83\88ã\81\8cæ\8f\90ä¾\9bã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§ã\81¯ã\80\81
glibc のラッパー関数は \fBsync_file_range\fP() という名前で
\fBsync_file_range2\fP() を適切に使用するようになっている。
.SH 関連項目
\fBfdatasync\fP(2), \fBfsync\fP(2), \fBmsync\fP(2), \fBsync\fP(2)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.51 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。