Bankier-Algorithmus (Dijkstra)

Algorithmus zur Ermittlung, ob ein BM-Zustand sicher ist:

  1. Wähle eine Zeile aus der Restforderungsmatrix R aus, für die gilt:
    • Prozess Pi ist noch nicht terminiert.
    • Restforderungen sind kleiner/gleich den freien Ressourcen: rif
  2. Nimm an, der zugehörige Prozess wird bedient, terminiert dann und gibt schließlich seine gesamten belegten Ressourcen frei:
    • Aktualisiere den Vektor der freien Ressourcen: f=f+bi
  3. Wiederhole die Schritte 1 und 2, bis:
    • Sicherer Zustand: Alle Prozesse sind terminiert.
    • Unsicherer Zustand: Kein Prozess mehr kann bedient werden, obwohl noch Prozess übrig sind.

Hinweis: Sind mehrere Prozesse auswählbar, spielt die Reihenfolge keine Rolle (beliebige Wahl).