(Geräte/FIFO-)Datei-Status (beschrieben, geöffnet?)

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
thomas2496
Beiträge: 20
Registriert: 01.05.2004 12:16:56

(Geräte/FIFO-)Datei-Status (beschrieben, geöffnet?)

Beitrag von thomas2496 » 25.07.2005 19:51:44

Hallo, ich bin newbee was Programmierung unter Linux angeht - soviel vorne weg.

Ich möchte ein Programm schreiben welches eine FIFO-Datei (Pipe) öffnet und die in sie geschriebenen Daten weiterverarbeitet. Soweit sollte das nicht schwer sein.

Ich möchte aber erfahren ob ein anderes Programm diese Datei geöffnet hat - dies muss erfasst werden. Desweiteren möchte ich wissen ob Daten in dieser Datei vorhanden sind, also ob der Puffer nicht mehr leer ist.

Könntet ihr mir Stichworte geben nach denen ich in Referenzen suchen kann? Kontroll-Befehle für Dateidescriptoren etc...


Vielen Dank im voraus.

Grüße,

Thomas Lehmann.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 25.07.2005 21:36:42

schau dir mal "man 4 fifo" und "man 3 open" (O_NONBLOCK) an

Gruß
gms

[edit]
"man 3 mkfifo" hätte ich fast vergessen :)

Wenn du die Datei readonly mit O_NONBLOCK öffnest, kannst du jederzeit und ungeblockt überprüfen ob Daten vorhanden sind.
wenn du die Datei writeonly öffnest erhältst du einen Fehler, wenn kein Prozeß diese Datei zum Lesen geöffnet hat, also nicht exakt das was du suchst, aber vielleicht genügt es. (möglicherweise mit zusätzlichem locking)




[/edit]

Antworten