Gadara: Dynamic Deadlock Avoidance for Multithreaded Programs
An extended banker's algorithm for deadlock avoidance