20.05.2014 Aufrufe

Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster

Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster

Puehlhofer Betriebsysteme1-1.pdf - von Petra Schuster

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

88 BETRIEBSSYSTEME<br />

4. Überprüfe, ob <strong>von</strong> dem aktuellen Knoten noch nicht markierte<br />

Kanten ausgehen. Falls ja, gehe zu Schritt 5, sonst zu Schritt 6.<br />

5. Wähle eine der unmarkierten Kanten aus und markiere sie. Setze den<br />

Endknoten dieser Kante als neuen aktuellen Knoten und gehe zu<br />

Schritt 3.<br />

6. Es ist nun eine Sackgasse erreicht. Gehe zurück zu dem vorherigen<br />

Knoten, also zu dem Knoten, der zuvor der aktuelle Knoten war, und<br />

setze den Algorithmus mit Schritt 3 fort. Falls dieser Knoten der<br />

Startknoten ist, enthält der Graph keinen Zyklus und der Algorithmus<br />

terminiert.<br />

Es gibt bessere als den vorgestellten Algorithmus zur Lösung des Problems.<br />

An dieser Stelle genügt uns jedoch die Existenz eines Algorithmus.<br />

'HDGORFN(UNHQQXQJPLWPHKUHUHQ%HWULHEVPLWWHOQLQMHGHU.ODVVH<br />

Wenn es mehrere Instanzen einer Betriebsmittelklasse gibt, wird ein Matrixbasierter<br />

Algorithmus eingesetzt.<br />

Im ersten Schritt sucht der Algorithmus nach einem Prozeß, der bis zu seiner<br />

Beendigung ausgeführt werden kann. Ein solcher Prozeß ist dadurch<br />

charakterisiert, daß alle seine Betriebsmittelanforderungen durch die aktuell<br />

verfügbaren erfüllt werden können. Bei Beendigung gibt der Prozeß alle<br />

seine Betriebsmittel frei.<br />

Falls alle Prozesse vollständig ausgeführt werden können, ist keiner an<br />

einem Deadlock beteiligt.<br />

Falls einer oder mehrere niemals ausgeführt werden können, befinden sie<br />

sich in einem Deadlock-Zustand.<br />

Deadlocks können also erkannt werden. Aber wann soll die Suche<br />

durchgeführt werden?<br />

Wird bei jeder Anforderung überprüft, wird der Deadlock zum<br />

frühestmöglichen Zeitpunkt erkannt, aber sehr viel Prozessorzeit verbraucht.<br />

Wenn die Überprüfung nur durchgeführt wird, wenn die Prozessorauslastung<br />

gering ist, fällt der Verlust an Rechenleistung nicht sehr ins Gewicht und<br />

wenige ausführbare Prozesse deuten auf Blockaden hin.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!