Deadlock Prevention in Single-Server Multi-CS Distributed Systems Using Voting- and Priority-Based Strategies

  • Kamta Nath MishraEmail author
Conference paper
Part of the Lecture Notes in Networks and Systems book series (LNNS, volume 34)


In order to solve the concurrency and starvation control problems of distributed systems, the voting- and priority-based optimal and feasible solution is presented in this research work. In voting-based approach, a process getting the majority of votes will be only allowed to enter into the critical section (CS). But, this method has a disadvantage as if no process remains in the situation of achieving majority of votes then the system will remain in idle state although a considerable amount of minority processes will remain in waiting queue. In the prioritized distributed mutual exclusion-based algorithm, the process having highest priority amongst all the processes of distributed system is allowed to enter into the critical section (CS). Hence, leaving the other lower priority processes into the waiting queue which results an increase in the length of waiting queue. The proposed technique allows the creation of multiple critical sections in a distributed system and prevents the processors from entering into idle state which leads towards increase in throughput.


Critical section Maskable/Non-maskable interrupts Mutual exclusion Priority-based distributed systems Voting-based distributed systems 


  1. 1.
    Lamport, L.: Time, clocks and the ordering of events in a distributed system. ACM Commun. 21(1), 558–565 (1978)CrossRefGoogle Scholar
  2. 2.
    Lamport, Leslie: A new approach to proving the correctness of multi-process programs. ACM Trans. Program. Lang. Syst. 1(1), 84–97 (1979)CrossRefGoogle Scholar
  3. 3.
    Lamport, L.: A fast mutual exclusion algorithm. ACM Trans. Comput. Syst. 5(1) (1987)CrossRefGoogle Scholar
  4. 4.
    Ricart, G., Agrawala, A.K.: An optimal algorithm for mutual exclusion in computer networks. ACM Commun. 24(1), 9–17 (1981)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Maekawa, M.: A:N algorithm for mutual exclusion in decentralized systems. ACM Trans. Comput. Syst. 3(1), 145–159 (2012)Google Scholar
  6. 6.
    Niami, M.: Uncadre structure arborescente pour une classe d’algorithmes distributes déxclsuion mutuelle, Ph.D. Thesis of University of Franche-Comté, pp. 1–201 (1987)Google Scholar
  7. 7.
    Kanrar, S., Chattopadhyay, S., Chaki, N.: A new voting-based mutual exclusion algorithm for distributed systems. In: NIMS University IEEE International Conference on Engineering, pp. 1–7 (2013)Google Scholar
  8. 8.
    Kanrar, S., Chaki, N.: A new fairness algorithm for priority process mutual exclusion in distributed systems. J. Networks 5(1), 11–18 (2010)CrossRefGoogle Scholar
  9. 9.
    Kshemkalyani, A.D., Singhal, M.: Correct two-phase and one-phase deadlock detection algorithms for distributed systems. In: IEEE Symposium on Parallel and Distributed Computing, pp. 126–129 (1990)Google Scholar
  10. 10.
    Goscinski, A.M.: Two algorithms for mutual exclusion in real-time distributed computer systems. J. Parallel Distrib. Comput. 9(1), 77–82 (1990)CrossRefGoogle Scholar
  11. 11.
    Muller, F.: Prioritized token-based mutual exclusion for distributed systems. In: International Conference on IPPS-SPDP, pp. 791–795 (1998)Google Scholar
  12. 12.
    Mishra, K.N.: An efficient voting and priority based mechanism for deadlock prevention in distributed systems. In: IEEE International Conference on Control Computing Communication and Materials, pp. 1–6 (2016)Google Scholar
  13. 13.
    Thiare, O., Naimi, M., Gueroui, M.: Distributed groups mutual exclusion based on dynamical data structures. J. Theor. Appl. Exclusion Based Dyn. Data Struct. 2(2), 277–285 (2009)Google Scholar
  14. 14.
    Chandy, K.M., Misra, J.: The drinking philosopher’s problem. ACM TOPLAS 6(4), 632–646 (1984)CrossRefGoogle Scholar
  15. 15.
    Lejeune, J., Arantes, L., Sopena, J., Sens, P.: A prioritized distributed mutual exclusion algorithm balancing priority inversions and response time. In: 42nd IEEE International Conference on Parallel Processing, pp. 290–299 (2013)Google Scholar
  16. 16.
    Suzuki, I., Kasami, T.: A distributed mutual exclusion algorithm. ACM Trans. Comput. Syst. 3(4), 344–349 (1985)CrossRefGoogle Scholar
  17. 17.
    Johnston, B.M., Javagal, R.D., Datta, A.K., Ghosh, S.: A distributed algorithm for resource deadlock detection. In: 10th IEEE Annual International Phoenix Conference on Computer and Communications, pp. 252–256 (1991)Google Scholar
  18. 18.
    Singhal, M.: Deadlock detection in distributed systems. IEEE Survey & Tutorial Series, pp. 37–48 (1989)CrossRefGoogle Scholar
  19. 19.
    Lejeune, J., Arantes, L., Sopena, J., Sens, P.: Service level agreement for distributed mutual exclusion in cloud computing. In: 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 180–187 (2012)Google Scholar
  20. 20.
    Singhal, M., Manivannan, D.: A distributed mutual exclusion algorithm for mobile computing environments. In: IEEE International Conference on Intelligent Information System, pp. 557–561 (1997)Google Scholar
  21. 21.
    Raymond, K.: A tree-based algorithm for distributed mutual exclusion. ACM Trans. Comput. Syst. 7(1), 61–77 (1989)CrossRefGoogle Scholar
  22. 22.
    Muller, F.: Priority inheritance and ceilings for distributed mutual exclusion. In: IEEE International Symposium on Real-Time Systems, pp. 1–14 (1999)Google Scholar
  23. 23.
    Bukhres, O.: Performance comparison of distributed deadlock detection algorithms. In: 8th IEEE ICDC, pp. 210–217 (1992)Google Scholar

Copyright information

© Springer Nature Singapore Pte Ltd. 2018

Authors and Affiliations

  1. 1.Department of Computer Science & EngineeringBirla Institute of TechnologyMesra, RanchiIndia

Personalised recommendations