OSDN Git Service

長音記号の修正を release に反映
[linuxjm/LDP_man-pages.git] / release / man2 / flock.2
index e3624b8..2140c39 100644 (file)
@@ -1,8 +1,7 @@
-.\" Hey Emacs! This file is -*- nroff -*- source.
-.\"
 .\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu) and
 .\" and Copyright 2002 Michael Kerrisk
 .\"
+.\" %%%LICENSE_START(VERBATIM)
 .\" 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.
@@ -22,6 +21,7 @@
 .\"
 .\" Formatted or processed versions of this manual, if unaccompanied by
 .\" the source, must acknowledge the copyright and authors of this work.
+.\" %%%LICENSE_END
 .\"
 .\" Modified Fri Jan 31 16:26:07 1997 by Eric S. Raymond <esr@thyrsus.com>
 .\" Modified Fri Dec 11 17:57:27 1998 by Jamie Lokier <jamie@imbolc.ucc.ie>
 .\"    Substantial rewrites and additions
 .\" 2005-05-10 mtk, noted that lock conversions are not atomic.
 .\"
+.\" FIXME Maybe document LOCK_MAND, LOCK_RW, LOCK_READ, LOCK_WRITE
+.\" which only have effect for SAMBA.
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.\"
 .\" Japanese Version Copyright (c) 1996 Takeshi Ueno
 .\"         all rights reserved.
 .\" Translated 1996-07-03, Takeshi Ueno <tueno@vio.co.jp>
 .\" Modified 2005-02-26, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
 .\" Updated 2005-09-06, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
 .\"
-.TH FLOCK 2 2009-07-25 "Linux" "Linux Programmer's Manual"
-.SH Ì¾Á°
-flock \- ¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥¢¥É¥Ð¥¤¥¶¥ê¡¦¥í¥Ã¥¯¤ÎŬÍÑ¡¢²ò½ü¤ò¹Ô¤¦
-.SH ½ñ¼°
-.B #include <sys/file.h>
+.TH FLOCK 2 2014\-09\-21 Linux "Linux Programmer's Manual"
+.SH 名前
+flock \- オープンされたファイルに対するアドバイザリロックの適用、解除を行う
+.SH 書式
+\fB#include <sys/file.h>\fP
 .sp
-.BI "int flock(int " fd ", int " operation );
-.SH ÀâÌÀ
-¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë¥¢¥É¥Ð¥¤¥¶¥ê¡¦¥í¥Ã¥¯ (advisory lock) ¤ÎŬÍÑ
-¤ä²ò½ü¤ò¹Ô¤¦¡£
-¥Õ¥¡¥¤¥ë¤Ï
-.I fd
-¤Ç»ØÄꤹ¤ë¡£°ú¤­¿ô
-.I operation
-¤Ë¤Ï°Ê²¼¤Î¤¤¤º¤ì¤«°ì¤Ä¤ò»ØÄꤹ¤ë:
+\fBint flock(int \fP\fIfd\fP\fB, int \fP\fIoperation\fP\fB);\fP
+.SH 説明
+オープンされたファイルにアドバイザリロック (advisory lock) の適用 や解除を行う。 ファイルは \fIfd\fP で指定する。引き数
+\fIoperation\fP には以下のいずれか一つを指定する:
 .RS 4
-.TP 9
-.B LOCK_SH
-¶¦Í­¥í¥Ã¥¯¤òŬÍѤ¹¤ë¡£ »ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¡¢
-°ì¤Ä°Ê¾å¤Î¥×¥í¥»¥¹¤¬Æ±»þ¤Ë¶¦Í­¥í¥Ã¥¯¤òÊÝ»ý¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
-.TP
-.B LOCK_EX
-ÇÓ¾¥í¥Ã¥¯¤òŬÍѤ¹¤ë¡£  »ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¡¢
-¤¿¤À°ì¤Ä¤Î¥×¥í¥»¥¹¤À¤±¤¬Æ±»þ¤ËÇÓ¾¥í¥Ã¥¯¤òÊÝ»ý¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
-.TP
-.B LOCK_UN
-¤³¤Î¥×¥í¥»¥¹¤¬ÊÝ»ý¤·¤Æ¤¤¤ë´û¸¤Î¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë¡£
+.TP  9
+\fBLOCK_SH\fP
+共有ロックを適用する。 指定したファイルに対して、 一つ以上のプロセスが同時に共有ロックを保持することができる。
+.TP 
+\fBLOCK_EX\fP
+排他ロックを適用する。 指定したファイルに対して、 ただ一つのプロセスだけが同時に排他ロックを保持することができる。
+.TP 
+\fBLOCK_UN\fP
+このプロセスが保持している既存のロックを解除する。
 .RE
 .PP
-.BR flock ()
-¤ò¸Æ¤Ó½Ð¤·¤¿¤È¤­¤Ë¡¢»ØÄꤷ¤¿¥í¥Ã¥¯¼ïÊ̤Ȱۤʤë¥í¥Ã¥¯¤¬ÊÌ¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ
-ÊÝ»ý¤µ¤ì¤Æ¤¤¤ë¤È¡¢
-.BR flock ()
-¤ÏÄä»ß (block) ¤µ¤ì¤ë¤³¤È¤¬¤¢¤ë¡£
-ÈóÄä»ß (nonblocking) ¥¿¥¤¥×¤ÎÍ×µá¤ò¹Ô¤¦¤¿¤á¤Ë¤Ï¡¢
-¾åµ­¤ÎÁàºî (operation) ¤Ë
-.B LOCK_NB
-¤òÏÀÍýϤηÁ¤Ç»ØÄꤹ¤ë¡£
+\fBflock\fP()  を呼び出したときに、指定したロック種別と異なるロックが別プロセスによって 保持されていると、 \fBflock\fP()  は停止
+(block) されることがある。 非停止 (nonblocking) タイプの要求を行うためには、 上記の操作 (operation) に
+\fBLOCK_NB\fP を論理和の形で指定する。
 
-°ì¤Ä¤Î¥Õ¥¡¥¤¥ë¤Ë¶¦Í­¥í¥Ã¥¯¤ÈÇÓ¾¥í¥Ã¥¯¤òƱ»þ¤ËÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¡£
+一つのファイルに共有ロックと排他ロックを同時に設定することはできない。
 
-.BR flock ()
-¤Ë¤è¤Ã¤Æºî¤é¤ì¤ë¥í¥Ã¥¯¤Ï¡¢
-¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î¥Æ¡¼¥Ö¥ë¡¦¥¨¥ó¥È¥ê¤È´ØÏ¢ÉÕ¤±¤é¤ì¤ë¡£
-¤·¤¿¤¬¤Ã¤Æ¡¢¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤ÎÊ£À½
-.RB ( fork (2)
-¤ä
-.BR dup (2)
-¤Ê¤É¤Ë¤è¤êºîÀ®¤µ¤ì¤ë) ¤ÏƱ¤¸¥í¥Ã¥¯¤ò»²¾È¤·¡¢
-¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Î¤É¤ì¤ò»È¤Ã¤Æ¤â
-¤³¤Î¥í¥Ã¥¯¤òÊѹ¹¤·¤¿¤ê²òÊü¤·¤¿¤ê¤Ç¤­¤ë¡£
-¤Þ¤¿¡¢¥í¥Ã¥¯¤Î²òÊü¤Ï¡¢
-¾åµ­¤ÎÊ£¿ô¤Î¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Î¤¤¤º¤ì¤«¤ËÂФ·¤Æ
-ÌÀ¼¨Åª¤Ë
-.B LOCK_UN
-Áàºî¤ò»Ø¼¨¤·¤¿¾ì¹ç¤«¡¢¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤¬¤¹¤Ù¤Æ
-ÊĤ¸¤é¤ì¤¿¾ì¹ç¤Ë¹Ô¤ï¤ì¤ë¡£
+\fBflock\fP() によって作られるロックは、 オープンファイル記述 (open file description) (\fBopen\fP(2) 参照)
+と関連付けられる。 したがって、ファイルディスクリプターの複製 (\fBfork\fP(2)  や \fBdup\fP(2)  などにより作成される)
+は同じロックを参照し、 これらのファイルディスクリプターのどれを使っても このロックを変更したり解放したりできる。 また、ロックの解放は、
+上記の複数のファイルディスクリプターのいずれかに対して 明示的に \fBLOCK_UN\fP 操作を指示した場合か、これらのファイルディスクリプターがすべて
+閉じられた場合に行われる。
 
-¤¢¤ë¥×¥í¥»¥¹¤¬
-.BR open (2)
-(¤â¤·¤¯¤ÏƱÍͤÎÊýË¡) ¤ò»È¤Ã¤ÆƱ¤¸¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ
-Ê£¿ô¤Î¥Ç¥£¥¹¥¯¥ê¥×¥¿¤ò¼èÆÀ¤·¤¿¾ì¹ç¡¢
-.BR flock ()
-¤Ï¤³¤ì¤éÊ£¿ô¤Î¥Ç¥£¥¹¥¯¥ê¥×¥¿¤ò³Æ¡¹ÆÈΩ¤Î¤â¤Î¤È¤·¤Æ°·¤¦¡£
-¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Î°ì¤Ä¤ò»È¤Ã¤Æ¥Õ¥¡¥¤¥ë¤ò¥í¥Ã¥¯¤·¤è¤¦¤È
-¤·¤¿ºÝ¡¢¤½¤Î¥í¥Ã¥¯Í×µá¤Ï¡¢¸Æ¤Ó½Ð¤·¸µ¤Î¥×¥í¥»¥¹¤¬¤½¤Î¥Õ¥¡¥¤¥ë¤ÎÊ̤Î
-¥Ç¥£¥¹¥¯¥ê¥×¥¿·Ðͳ¤Ç¤¹¤Ç¤ËÀßÄꤷ¤Æ¤¤¤ë¥í¥Ã¥¯¤Ë¤è¤Ã¤ÆµñÈݤµ¤ì¤ë¾ì¹ç¤¬¤¢¤ë¡£
+あるプロセスが \fBopen\fP(2)  (もしくは同様の方法) を使って同じファイルに対して 複数のディスクリプターを取得した場合、
+\fBflock\fP()  はこれら複数のディスクリプターを各々独立のものとして扱う。
+これらのファイルディスクリプターの一つを使ってファイルをロックしようと した際、そのロック要求は、呼び出し元のプロセスがそのファイルの別の
+ディスクリプター経由ですでに設定しているロックによって拒否される場合がある。
 
-°ì¤Ä¤Î¥×¥í¥»¥¹¤Ï¡¢°ì¤Ä¤Î¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ (¶¦Í­¥í¥Ã¥¯¤ÈÇÓ¾¥í¥Ã¥¯¤Î¤¦¤Á)
-¤¤¤º¤ì¤«°ì¼ïÎà¤Î¥í¥Ã¥¯¤·¤«ÀßÄê¤Ç¤­¤Ê¤¤¡£
-´û¤Ë¥í¥Ã¥¯¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ
-.BR flock ()
-¤ò¸Æ¤Ó½Ð¤¹¤È¡¢´û¸¤Î¥í¥Ã¥¯¤ò¿·¤·¤¤¥í¥Ã¥¯¥â¡¼¥É¤ËÊѹ¹¤¹¤ë¤³¤È¤Ë¤Ê¤ë¡£
+一つのプロセスは、一つのファイルに対して (共有ロックと排他ロックのうち)  いずれか一種類のロックしか設定できない。 既にロックされたファイルに対して
+\fBflock\fP()  を呼び出すと、既存のロックを新しいロックモードに変更することになる。
 
-.BR flock ()
-¤Ë¤è¤êºîÀ®¤µ¤ì¤¿¥í¥Ã¥¯¤Ï
-.BR execve (2)
-¤ÎÁ°¸å¤ÇÊݸ¤µ¤ì¤ë¡£
+\fBflock\fP()  により作成されたロックは \fBexecve\fP(2)  の前後で保存される。
 
-¶¦Í­¥í¥Ã¥¯¤âÇÓ¾¥í¥Ã¥¯¤â¡¢¥Õ¥¡¥¤¥ë¤¬¤É¤Î¥â¡¼¥É¤Ç¥ª¡¼¥×¥ó¤µ¤ì¤¿¤«¤Ë
-´Ø·¸¤Ê¤¯Å¬ÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
-.SH ÊÖ¤êÃÍ
-À®¸ù¤Î¾ì¹ç¡¢0 ¤¬ÊÖ¤µ¤ì¤ë¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ï¡¢\-1 ¤¬ÊÖ¤µ¤ì¡¢
-.I errno
-¤ËŬÀÚ¤ÊÃͤ¬ÀßÄꤵ¤ì¤ë¡£
-.SH ¥¨¥é¡¼
-.TP
-.B EBADF
-.I fd
-¤¬¥ª¡¼¥×¥ó¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Ç¤Ï¤Ê¤¤¡£
-.TP
-.B EINTR
-¥í¥Ã¥¯¤Î³ÍÆÀ¤òÂԤäƤ¤¤ë´Ö¤Ë¡¢¥Ï¥ó¥É¥é¤Ë¤è¤êÊ᪤µ¤ì¤¿¥·¥°¥Ê¥ë¤ò
-¼õ¿®¤·¡¢
-.BR flock ()
-¤¬ÃæÃǤµ¤ì¤¿¡£
-.BR signal (7)
-»²¾È¡£
-.TP
-.B EINVAL
-.I oepration
-¤¬Ìµ¸ú¤Ç¤¢¤ë¡£
-.TP
-.B ENOLCK
-¥í¥Ã¥¯¡¦¥ì¥³¡¼¥É¤ò³ä¤êÅö¤Æ¤ë¤¿¤á¤Î¥á¥â¥ê¤¬ÉÔ­¤·¤Æ¤¤¤ë¡£
-.TP
-.B EWOULDBLOCK
-»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¤¬¥í¥Ã¥¯¤µ¤ì¤Æ¤ª¤ê¡¢
-.B LOCK_NB
-¥Õ¥é¥°¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¡£
-.SH ½àµò
-4.4BSD
-.RB ( flock ()
-¥³¡¼¥ë¤Ï 4.2BSD ¤ÇºÇ½é¤ËÅо줷¤¿)¡£
-.BR fcntl (2)
-¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤Ê¤É¤ò´Þ¤á¤ë¤È¡¢
-.BR flock ()
-¤Îµ¡Ç½¤Ï¤Û¤È¤ó¤É¤Î Unix ¥·¥¹¥Æ¥à¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¡£
-.SH Ãí°Õ
-.BR flock ()
-¤Ï NFS ¾å¤Î¥Õ¥¡¥¤¥ë¤Î¥í¥Ã¥¯¤ò¤·¤Ê¤¤¡£Âå¤ï¤ê¤Ë
-.BR fcntl (2)
-¤ò»ÈÍѤ¹¤ë¤³¤È¡£¤³¤ì¤Ë¤è¤ê¡¢½½Ê¬¤Ë¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î Linux ¤È¡¢¥í¥Ã¥¯µ¡Ç½¤ò
-¥µ¥Ý¡¼¥È¤·¤¿ NFS ¥µ¡¼¥Ð¤ò»ÈÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢NFS ¾å¤Ç¥í¥Ã¥¯¤¬¤Ç¤­¤ë¡£
+共有ロックも排他ロックも、ファイルがどのモードでオープンされたかに 関係なく適用することができる。
+.SH 返り値
+成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。
+.SH エラー
+.TP 
+\fBEBADF\fP
+\fIfd\fP がオープンされたファイルディスクリプターではない。
+.TP 
+\fBEINTR\fP
+ロックの獲得を待っている間に、ハンドラーにより捕捉されたシグナルを 受信し、 \fBflock\fP()  が中断された。 \fBsignal\fP(7)  参照。
+.TP 
+\fBEINVAL\fP
+\fIoepration\fP が無効である。
+.TP 
+\fBENOLCK\fP
+ロックレコードを割り当てるためのメモリーが不足している。
+.TP 
+\fBEWOULDBLOCK\fP
+指定したファイルがロックされており、 \fBLOCK_NB\fP フラグが指定されている。
+.SH 準拠
+4.4BSD (\fBflock\fP()  コールは 4.2BSD で最初に登場した)。 \fBfcntl\fP(2)  で実装されているものなどを含めると、
+\fBflock\fP()  の機能はほとんどの UNIX システムで実装されている。
+.SH 注意
+.\" E.g., according to the flock(2) man page, FreeBSD since at least 5.3
+kernel 2.0 以降では、 \fBflock\fP()  は、GNU C ライブラリでの \fBfcntl\fP(2)
+を呼び出してのエミュレーションではなく、 それ自体がシステムコールとして実装されている。 この実装では、 \fBflock\fP()  と
+\fBfcntl\fP(2)  で適用されるロックの種別には相互作用がなくなり、 \fBflock\fP()  がデッドロックを検出しなくなる。 (ただし、最近の
+BSD などいくつかのシステムでは、 \fBflock\fP() と \fBfcntl\fP(2) ロックが互いに影響することが「ある」という点に注意すること。)
 .PP
-kernel 2.0 °Ê¹ß¤Ç¤Ï¡¢
-.BR flock ()
-¤Ï¡¢GNU C ¥é¥¤¥Ö¥é¥ê¤Ç¤Î
-.BR fcntl (2)
-¤ò¸Æ¤Ó½Ð¤·¤Æ¤Î¥¨¥ß¥å¥ì¡¼¥·¥ç¥ó¤Ç¤Ï¤Ê¤¯¡¢
-¤½¤ì¼«ÂΤ¬¥·¥¹¥Æ¥à¥³¡¼¥ë¤È¤·¤Æ¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¡£
-¤³¤ì¤Ë¤è¤êÀµ¿¿ÀµÌäΠBSD ¤Ç¤ÎÆ°ºî¤¬Ã£À®¤µ¤ì¤ë:
-.BR flock ()
-¤È
-.BR fcntl (2)
-¤ÇŬÍѤµ¤ì¤ë¥í¥Ã¥¯¤Î¼ïÊ̤ˤÏÁê¸ßºîÍѤ¬¤Ê¤¯¤Ê¤ê¡¢
-.BR flock ()
-¤¬¥Ç¥Ã¥É¥í¥Ã¥¯¤ò¸¡½Ð¤·¤Ê¤¯¤Ê¤ë¡£
+.\" commit 5eebde23223aeb0ad2d9e3be6590ff8bbfab0fc2
+バージョン 2.6.11 以前の Linux カーネルでは、 \fBflock\fP() は NFS 上のファイルのロックを行わない
+(つまり、ロックの対象はローカルシステムに限定されていた)。 その代わり、十分に最近のバージョンの Linux とロックをサポートするサーバーであれば、
+\fBfcntl\fP(2) のバイト範囲ロックを使うことができた。 \fBfcntl\fP(2) のバイト範囲ロックは NFS 上で動作する。 Linux
+2.6.12 以降では、NFS クライアントは、 ファイル全体に対するバイト範囲ロックでエミュレートすることで、 \fBflock\fP()
+ロックをサポートしている。 これは、\fBfcntl\fP(2) と \fBflock\fP() ロックが NFS 上では互いに影響しあうことを意味する。
+Linux 2.6.37 以降では、 \fBflock\fP() ロック (と \fBfcntl\fP(2) のバイト範囲ロック)
+をローカルシステムに対するものとして扱う互換性モードが、 カーネルでサポートされている。 \fBnfs\fP(5) の \fIlocal_lock\fP
+オプションの議論を参照。
 .PP
-.BR flock ()
-¥¢¥É¥Ð¥¤¥¶¥ê¡¦¥í¥Ã¥¯¤À¤±¤òŬÍѤ¹¤ë¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥Õ¥¡¥¤¥ë¤ËŬÀڤʥ¢¥¯¥»¥¹¸¢¤ò
-ÉÕÍ¿¤·¤Æ¤¤¤ì¤Ð¡¢¥×¥í¥»¥¹¤Ï
-.BR flock ()
-¤Î»ÈÍѤË̵»ë¤·¤Æ¡¢¥Õ¥¡¥¤¥ë¤Ø¤ÎÆþ½ÐÎϤò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤ë¡£
+\fBflock\fP()  アドバイザリロックだけを適用する。したがって、ファイルに適切なアクセス権を 付与していれば、プロセスは \fBflock\fP()
+の使用に無視して、ファイルへの入出力を行うことができる。
 .PP
-.BR flock ()
-¤È
-.BR fcntl (2)
-¤Ï fork ¤µ¤ì¤¿¥×¥í¥»¥¹¤È
-.BR dup (2)
-¤Ç°ã¤Ã¤¿Æ°ºî¤ò¤¹¤ë¡£
-.BR flock ()
-¤ò
-.BR fcntl (2)
-¤ò»È¤Ã¤Æ¼ÂÁõ¤·¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç¤Ï¡¢
-.BR flock ()
-¤ÎÆ°ºî¤Ï¤³¤Î¥Þ¥Ë¥å¥¢¥ë¡¦¥Ú¡¼¥¸¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤È¤Ï°ã¤¦¤À¤í¤¦¡£
+\fBflock\fP()  と \fBfcntl\fP(2)  は fork されたプロセスと \fBdup\fP(2)  で違った動作をする。 \fBflock\fP()
+を \fBfcntl\fP(2)  を使って実装しているシステムでは、 \fBflock\fP()
+の動作はこのマニュアルページに記載されているものとは違うだろう。
 .PP
-¥í¥Ã¥¯¤ÎÊÑ´¹ (¶¦Í­¥í¥Ã¥¯¤«¤éÇÓ¾¥í¥Ã¥¯¤Ø¡¢¤â¤·¤¯¤Ï¤½¤ÎÈ¿ÂÐ) ¤¬¥¢¥È¥ß¥Ã¥¯¤Ë
-¹Ô¤ï¤ì¤ë¤³¤È¤ÏÊݾڤµ¤ì¤Æ¤¤¤Ê¤¤: ´û¸¤Î¥í¥Ã¥¯¤¬¤Þ¤ººï½ü¤µ¤ì¡¢¤½¤ì¤«¤é¿·¤·¤¤
-¥í¥Ã¥¯¤¬ÀßÄꤵ¤ì¤ë¡£¤³¤Î 2¤Ä¤Î¥¹¥Æ¥Ã¥×¤Î´Ö¤Ë¡¢Â¾¤Î¥×¥í¥»¥¹¤«¤é¤Î½èÍýÂÔ¤Á¤Î
-¥í¥Ã¥¯Í׵᤬ǧ¤á¤é¤ì¤ë¤«¤â¤·¤ì¤º¡¢·ë²Ì¤È¤·¤ÆÊÑ´¹¤ÏÄä»ß (block) ¤·¤¿¤ê¡¢
-.RB ( LOCK_NB
-¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¤Ë¤Ï) ¼ºÇÔ¤·¤¿¤ê¤¹¤ë¡£
-(¤³¤ì¤Ï¸µ¡¹¤Î BSD ¤ÎÆ°ºî¤Ç¤¢¤ê¡¢Â¿¤¯¤Î¾¤Î¼ÂÁõ¤Ç¤âµ¯¤³¤ë¡£)
-.\" ¥«¡¼¥Í¥ë 2.5.21 ¤Ç¾¯¤·Æ°ºî¤¬Êѹ¹¤µ¤ì¤¿: ¥í¥Ã¥¯ÊÑ´¹¤ÎºÇÃæ¤Ï
-.\" ¤½¤Î¥í¥Ã¥¯¤ò¹Ô¤ª¤¦¤È¤·¤Æ¤¤¤ë¥×¥í¥»¥¹¤¬ºÇ¹âÍ¥Àè¤È¤Ê¤ë -- mtk
-.SH ´ØÏ¢¹àÌÜ
-.BR close (2),
-.BR dup (2),
-.BR execve (2),
-.BR fcntl (2),
-.BR fork (2),
-.BR open (2),
-.BR lockf (3)
+.\" Kernel 2.5.21 changed things a little: during lock conversion
+.\" it is now the highest priority process that will get the lock -- mtk
+ロックの変換 (共有ロックから排他ロックへ、もしくはその反対) がアトミックに 行われることは保証されていない:
+既存のロックがまず削除され、それから新しい ロックが設定される。この 2つのステップの間に、他のプロセスからの処理待ちの
+ロック要求が認められるかもしれず、結果として変換は停止 (block) したり、 (\fBLOCK_NB\fP が指定された場合には) 失敗したりする。
+(これは元々の BSD の動作であり、多くの他の実装でも起こる。)
+.SH 関連項目
+\fBflock\fP(1), \fBclose\fP(2), \fBdup\fP(2), \fBexecve\fP(2), \fBfcntl\fP(2), \fBfork\fP(2),
+\fBopen\fP(2), \fBlockf\fP(3)
 
-¥«¡¼¥Í¥ë¥½¡¼¥¹Æâ¤Î
-.I Documentation/filesystem/locks.txt
-(°ÊÁ°¤Î¥«¡¼¥Í¥ë¤Ç¤Ï
-.IR Documentation/locks.txt )
-¤â»²¾È¤Î¤³¤È¡£
+Linux カーネルソース内の \fIDocumentation/filesystems/locks.txt\fP (以前のカーネルでは
+\fIDocumentation/locks.txt\fP)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.78 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。