wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock

profile
example undefined
Sep 10, 2024
0 Likes
0 Discussions
101 Reads

A deadlock occurs when two or more processes are in a waiting state, each holding at least one resource and waiting for other resources that are being held by another process. This creates a cycle of dependency, where no process can proceed because they are each waiting for resources that are locked by others.

Conditions for Deadlock


For a deadlock to occur, four necessary conditions must hold simultaneously, often referred to as Coffman’s Conditions:

  1. Mutual Exclusion: At least one resource must be non-shareable, meaning only one process can use it at any given time.
  2. Hold and Wait: A process holding one or more resources can request additional resources and wait while holding the already allocated ones.
  3. No Preemption: Resources cannot be forcibly taken from processes. They can only be released voluntarily by the process holding them.
  4. Circular Wait: A circular chain of processes exists where each process is waiting for a resource held by the next process in the chain.



Deadlock Prevention and Avoidance

There are several strategies to prevent or avoid deadlock in concurrent systems:

  1. Deadlock Prevention: This strategy aims to ensure that at least one of the four conditions for deadlock cannot hold:
  • Mutual Exclusion: Some resources are inherently non-shareable, but for others, allowing concurrent access can prevent deadlocks.
  • Hold and Wait: Processes must request all necessary resources at once, preventing them from holding some resources while waiting for others.
  • No Preemption: If a process holding some resources is denied a further resource request, it must release its current resources.
  • Circular Wait: Impose an ordering on resources, and processes can only request resources in a predefined order, breaking the circular chain.


  1. Deadlock Avoidance: This involves careful resource allocation based on a system’s state, ensuring that resource requests do not lead to deadlock. The Banker’s Algorithm, developed by Edsger Dijkstra, is a well-known deadlock avoidance strategy that allocates resources dynamically while ensuring that the system remains in a safe state.


Deadlock Detection and Recovery

In systems where deadlock prevention and avoidance are impractical, deadlock detection can be used. This approach allows deadlock to occur but regularly checks for its presence by analyzing resource allocation graphs for cycles.

Once a deadlock is detected, recovery techniques can be used, including:

  • Process Termination: Terminating one or more processes involved in the deadlock to break the cycle.
  • Resource Preemption: Forcibly taking resources from some processes and reallocating them to others.




Comments ()


Sign in

Read Next

Women empowerment

Blog banner

Blog on health and fitness

Blog banner

Study of Backdoor and Trojan tools

Blog banner

Women Empowerment

Blog banner

Understanding Endometriosis and Its Psychological Impact on Quality of Life

Blog banner

Cache memory

Blog banner

Mumbai

Blog banner

Animal’s have my heart

Blog banner

Google

Blog banner

Hypothesis Testing in Data Science

Blog banner

The Power of Cyber Forensic in Solving Crimes

Blog banner

Deadlock

Blog banner

Skills An Ethical Hacker Must Have

Blog banner

10 Signs your Computer has Virus

Blog banner

GIS info about Bermuda Triangle

Blog banner

Digital Marketing - The new way to reach end consumer

Blog banner

Social Media Marketing Trends 2022

Blog banner

ADIDAS

Blog banner

Game via listing method

Blog banner

How Harshad Valia International School is nurturing India’s Young Minds?

Blog banner

IT Service Continuity Management

Blog banner

Uber

Blog banner

How Does Preschool Help Children Become Better Decision Makers?

Blog banner

Importance Of Yoga.

Blog banner

Business Intelligence v/s Big Data

Blog banner

Why do you need a personalised bag tag for your kids' school bags?

Blog banner

The New Role of Social Media Managers: Beyond Posting Content

Blog banner

Starvation and Deadlock.

Blog banner

Logical and physical address

Blog banner

Exploring Virtual Machines and Computer Forensic Validation Tools

Blog banner

File Management In OS

Blog banner

MPL and how its effects?

Blog banner

EMAIL INVESTIGATION

Blog banner

Deadlock in operating system

Blog banner

Starvation

Blog banner

World’s rarest passport owned by 500 people.

Blog banner

Tea, Coffee, Red Wine, and Teeth: A Stain Survival Guide

Blog banner

differentiate thinking humanly and rationally

Blog banner

GIS Bharat Maps

Blog banner

Operating system

Blog banner

?Why Social and Emotional Skills Matter More Than ABCs in Early Years?

Blog banner

Risk management in IT

Blog banner