nächste Seite: NachrichtenSemaphoren, Gemeinsamer Datenspeicher
vorherige Seite: Interprozeßkommunikation


Signale, Pipes, Named Pipe

Beim Ur-UNIX war eine Interprozeßkommunikation (IPK) nur durch Signale oder Pipes möglich. Ein Signal ist ein asynchrones Ereignis und bewirkt eine Unterbrechung auf der Prozeßebene. Es kann von außen durch den Benutzer, durch das Auftreten von Programmfehlern oder durch externe Unterbrechungen (alarm) ausgelöst werden. Auch Prozesse können Signale an andere Prozesse senden, wie zum Beispiel durch die Beendigung des Sohnprozesses nach einem fork-Aufruf.

Eine Pipe muß durch den Vaterprozeß explizit aufgebaut werden. Anschließend müssen dann zwei Sohnprozesse erzeugt werden, die vom Vaterprozeß diese Pipe-Dateien erben. Eine Pipe hat nur eine Eingabe- und eine Ausgabeseite und ist somit unidirektional. Auf diesen Dateien kann außer Positionierung jede Dateioperation ausgeführt werden. Eine Variation der Pipe, die Named Pipe, ist eine temporäre Pufferdatei, die nur solange existiert, wie die daran beteiligten Prozesse existieren. Eine solche Pufferdatei hat den Typ FIFO.



nächste Seite: NachrichtenSemaphoren, Gemeinsamer Datenspeicher
vorherige Seite: Interprozeßkommunikation


Thorsten Schlump
Tue Jun 27 23:03:15 MEST 2000