銀行家のアルゴリズム
上記の例において、全てのプロセスが実行を完了するのであれば現在の状態は安全と考えることができる。システムにはプロセスが完了するか、また完了までに要求する資源の量は未知なので、全てのプロセスが最終的には決められた最大の資源を要求して、その直後に終了すると考える。これはたいていの場合には理にかなった仮定で、(少なくともデッドロックを防ぐという観点からは)システムは各プロセスの実行する時間と関係がないためである。また、最大の資源を確保することなく終了した場合には問題が簡単になるのみである。
この仮定をもとに、アルゴリズムは状態が安全かどうかを判断するため、各プロセスが最大の資源を獲得し、終了する(そして資源を返却する)ことができるような仮想的なプロセスからの要求を作り出すことができるかを判定する。そのような状態がなければ、システムは危険な状態である。