fifo

FIFO(7)                     Linux-Programmierhandbuch                    FIFO(7)



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.08 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 <debian-l10n-german@lists.debian.org>.



Linux                           26. November 2017                        FIFO(7)