Algorytm bankiera

Algorytm bankiera – z angielskiego banker's algorithm. Służy on do lokacji zasobów w taki sposób, aby uniknąć zakleszczeń. Jego autorem jest Edsger Dijkstra. Algorytm ten był po raz pierwszy wykorzystany w systemie operacyjnym zwanym THE, a opisany został w języku niderlandzkim w książce pod tytułem EWD108 "Een algorithme ter vooikoming van de dodelijke omarming" Algorytm bankiera stosowany jest przez system operacyjny kiedy jakikolwiek proces zażąda zasobu. Zapobiega on wystąpieniu zakleszczeń przez odmówienie lub zawieszenie dostępu do zasobu w przypadku, gdyby dostęp do tego zasobu mógł spowodować wejście systemu w stan niebezpieczny (ang. unsafe state .Aby algorytm bankiera działał potrzebuje wiedzieć trzy rzeczy:Zakładając, że system rozróżnia 4 rodzaje zasobów (A, B, C i D), następujący przykład obrazuje jak te zasoby mogą być rozmieszczane. Obrazuje on system w momencie przed otrzymaniem nowego żądania o zasób. W przykładzie tym typy i rodzaje zasobów są abstrakcyjne. Prawdziwe systemy zajmowały by się większymi ilościami zasobów.