Deadlock Models In Distributed Systems