> Linux Reviews > man >

fifo


  1. fifo.4.man
  2. fifo.7.man


1. fifo.4.man

Invalid Manpage

Invalid Manpage

The requested file (stdin) is not a valid (unformatted) man page.

2. fifo.7.man

Manpage of FIFO

FIFO

Section: Linux Programmer's Manual (7)
Updated: 2008-12-03
Index Return to Main Contents
 

名前

fifo - 先入先出特殊ファイル、名前付きパイプ  

書式

FIFO 特殊ファイル(名前付きパイプ)はパイプに似ているが、 ファイルシステムの一部に関連付けられている点が異っている。 複数のプロセスが読み込みや書き込みのためにオープンすること ができる。プロセスが FIFO を通しデータを交換する場合、 実際にそれをファイルシステムには書き込まず、カーネルは全ての データを内部的に渡す。このように、FIFO 特殊ファイルはファイルシステム 上には内容を持たないので、ファイルシステムのエントリは プロセスがそのファイルシステム上の名前を使用してそのパイプに アクセスできるように参照ポイントを提供しているに過ぎない。

カーネルは、少なくとも一つのプロセスによってオープンされている FIFO 特殊ファイルについて、それぞれ一つのパイプのみを管理している。 データが渡される前にその FIFO の両端(書き込みと読み出し)がオープン されていなければならない。通常、FIFO をオープンすると、 その反対側がオープンされるまで停止(block)させられる。

プロセスは FIFO を非停止(nonblocking)モードでオープンすることもできる。 この場合、読み込み専用でオープンした場合には書き込み側を誰もオープン していなくても成功する。書き込み専用でオープンした場合は反対側が既に オープンされていなければ ENXIO (そのようなデバイスまたはアドレスは存在しない) というエラーで失敗する。

Linux では、FIFO を読み込みと書き込み両用にオープンした場合、 停止、非停止のどちらのモードでも成功する。POSIX ではこの場合の 動作は定義されていない。これは読み込み側がいない時に書き込み用に オープンするために使用することができる。自分自身と通信するために 両端を使用するプロセスはデッドロックを避けるために非常に注意深く なければならない。  

注意

プロセスが、反対の読み込み側がオープンされていない FIFO を 書き込みのためにオープンしようとした場合、そのプロセスに SIGPIPE シグナルが送られる。

FIFO 特殊ファイルは mkfifo(3) で作成することができ、 ls -l ではファイル種別 aqpaq で表示される。  

関連項目

mkfifo(1), open(2), pipe(2), sigaction(2), signal(2), socketpair(2), mkfifo(3), pipe(7)


 

Index

名前
書式
注意
関連項目

This document was created by man2html using the manual pages.
Time: 17:38:23 GMT, October 23, 2013

SVENSKA - SVENSKA - SVENSKA - SVENSKA - SVENSKA