Provided by: manpages-de_4.13-4_all 

BEZEICHNUNG
fifo - »first-in-first-out«-Spezialdatei (named pipe)
BESCHREIBUNG
Eine FIFO-Spezialdatei (eine benannte Pipe) ähnelt einer Pipe. Auf sie wird aber als Teil des
Dateisystems zugegriffen. Auf den FIFO kann von mehreren Prozessen lesend oder schreibend zugegriffen
werden. Wenn die Prozesse über den FIFO Daten austauschen, werden die Daten vom Kernel intern
weitergegeben, ohne tatsächlich im Dateisystem gespeichert zu werden. Der FIFO enthält als Datei somit
keine Daten. Der Eintrag im Dateisystem dient als Bezugspunkt, auf den Prozesse über einen Namen im
Dateisystem zugreifen können.
Der Kernel verwaltet genau ein Pipe-Objekt für jeden FIFO, der von wenigstens einem Prozess zum Lesen
oder Schreiben geöffnet ist. Damit Daten durch den FIFO transportiert werden können, muss der FIFO von
beiden Enden geöffnet sein, einmal lesend und einmal schreibend. Im Normalfall wird die Verarbeitung nach
dem Öffnen des FIFOs so lange blockiert, bis auch das andere Ende geöffnet ist.
Ein FIFO kann vom Prozess auch nicht blockierend geöffnet werden. In diesem Fall funktioniert das Öffnen
des FIFOs zum Lesen auch dann, wenn er noch von keinem anderen Prozess zum Schreiben geöffnet wurde und
das Öffnen zum Schreiben schläg mit ENXIO (Datei oder Adresse nicht gefunden) fehl, wenn nicht bereits
ein anderer Prozess den FIFO zum Lesen geöffnet hat.
Unter Linux können FIFOs sowohl lesend als auch schreibend in den beiden Modi blockierend und nicht
blockierend geöffnet werden. Gemäß POSIX ist dafür kein Verfahren definiert. Dadurch kann ein FIFO zum
Schreiben geöffnet werden, ohne dass lesende Prozesse vorhanden sind. Falls ein Prozess beide Seiten
eines FIFOs öffnet, um mit sich selbst zu kommunizieren, sollte er sorgfältig auf die Vermeidung von
Deadlocks (Verklemmungen) achten.
ANMERKUNGEN
Für Details zur Semantik von E/A bei FIFOs siehe pipe(7).
Versucht ein Prozess in einen FIFO zu schreiben, der nicht auf der anderen Seite zum Lesen geöffnet ist,
erhält er vom Kernel das Signal SIGPIPE.
FIFOs werden mit mkfifo(3) angelegt. In der Ausgabe von ls -l ist ihr Dateityp 'p'.
SIEHE AUCH
mkfifo(1), open(2), pipe(2), sigaction(2), signal(2), socketpair(2), mkfifo(3), pipe(7)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.10 des Projekts Linux-man-pages. Eine Beschreibung des
Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schmitt <martin@schmitt.li>, Martin
Eberhard Schauer <Martin.E.Schauer@gmx.de> und Dr. Tobias Quathamer <toddy@debian.org> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
Mailingliste der Übersetzer.
Linux 26. November 2017 FIFO(7)