Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster
Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster
Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
28 BETRIEBSSYSTEME<br />
0RQLWRUH)D]LW<br />
Semaphore sind ein sehr einfacher Mechanismus, der einen gemeinsamen<br />
Speicher voraussetzt. Dies ist in verteilten Anwendungen nicht gegeben.<br />
Monitore werden nur in wenigen und keiner „gängigen“ Sprache unterstützt.<br />
1DFKULFKWHQDXVWDXVFK<br />
Der Mechanismus des Nachrichtenaustausches benutzt die Primitive SEND<br />
und RECEIVE, die als Systemaufrufe implementier sind.<br />
SEND (destination, message) sendet eine Nachrichtan den Empfänger<br />
(destination).<br />
RECEIVE (destination, message) empfängt eine Nachricht, und kann sich<br />
blockieren, bis die Nachricht eintrifft.<br />
Nachrichtenaustausch ist geeignet, um in verteilten System eingesetzt zu<br />
werden. Allerdings treten dort zusätzliche Problem auf:<br />
• es können Nachrichten oder Quittungen verloren gehen,<br />
• Namen müssen eindeutig sein (process@machine.domain),<br />
• Authentifikation,<br />
• Performance.<br />
Beispiel Erzeuger-Verbraucher-Problem<br />
Rendezvous<br />
• Bei einem Rendezvous wird jede Pufferung <strong>von</strong> Nachrichten<br />
vermieden, die Prozesse synchronisieren sich und tauschen (beim<br />
Rendezvous) die Nachrichten direkt miteinander aus.<br />
• Falls der Empfänger schon bereit ist, wenn der Sender senden will,<br />
werden die Nachrichten sofort ausgetauscht, anderenfalls blockiert<br />
sich der Sender, bis der Empfänger seine Bereitschaft signalisiert.