During the implementation of its new and improved back-office operating system, Top Secret, Inc. (TSI) finds that the TSI OS lacks mechanisms for the ordered acquisition of synchronization objects. The result is that its web servers are periodically locking up.
Systems administrators are perplexed because the systems show all processes are active using the [ps -ef] command except for the web server process, which appears to be waiting in a call to pthread_mutex_lock(). When they reboot the servers, the problem disappears until the servers get busy and the lock-up occurs again. The business impact of this problem is that TSI customers are unable to access the website to make purchases during peak periods.
Write a short paper that recommends a deadlock avoidance approach most suitable for the TSI web server application that is not using an ordered acquisition of mutexes.