wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock

profile
Darshan Somaiya
Aug 16, 2024
1 Like
0 Discussions
150 Reads

DEADLOCK


Deadlock is a situation in an operating system where a set of processes become stuck because each process in the set is waiting for another process to release resources. This leads to a cascade of dependencies where nothing can really progress, thus halting everything.


Four Conditions for Deadlock 

A deadlock can only occur when the following four conditions are met simultaneously:


1. Mutual Exclusion: At least one resource must be held in a non-sharable mode, and only one process can use the resource at a time.


2. Hold and Wait: A process holding at least one resource is waiting to acquire additional resources that are currently held by other processes.


3. No Preemption: Resources cannot be preempted from the process holding them; they can only be released voluntarily by the process.


4. Circular Wait: There is a set of processes such that each process in the chain is waiting for another which is ahead, forming a circle.


Example Scenario:

Suppose there are two processes and two resources. P1 process requests R1, and P2 requests R1 & holds R2. Neither process will release the resources it currently holds, and neither can proceed until it is able to acquire a resource that both processes are waiting on for completion. Therefore, both stall simultaneously, giving rise to deadlock.


Deadlock Prevention and Avoidance 

Operating systems employ various strategies to prevent or avoid deadlock:


- Deadlock Prevention: This is a set of methods for ensuring that at least one of the necessary conditions cannot hold. It can be done by requiring all processes to ask for resources at once or by preventing circular wait, etc.


- Deadlock Avoidance: It employs algorithms like the Banker’s Algorithm, which dynamically check the state of resource allocation to make sure a system will never enter an unsafe state where deadlock can happen.


Some systems may allow deadlocks to occur but have standby algorithms in place for detection and recovery, such as terminating one or more processes involved to free up resources.


Comments ()


Sign in

Read Next

VIRTUAL MACHINE

Blog banner

Operating system evolution

Blog banner

Europe Through My Lens

Blog banner

Service Design Principles

Blog banner

De-Coding Love

Blog banner

Security Issues and Countermeasures

Blog banner

MEMORY MANAGEMENT

Blog banner

Data-Driven Prediction of Virtual Item Prices in Online Games

Blog banner

Mail merge

Blog banner

Image Steganalysis in Digital Forensics

Blog banner

Risk mitigation and management

Blog banner

HACKING MOBILE PLATFORM

Blog banner

What is a Dumpster Diving Attack?

Blog banner

memory cache

Blog banner

Mumbaicha Dabbawalla

Blog banner

Not anti-social, but pro-solitude

Blog banner

How to Plan a Week of Healthy Meals Without Stress

Blog banner

Evolution of Operating Systems

Blog banner

Student Grade Calculator in LISP

Blog banner

SPAM

Blog banner

SQL Injection

Blog banner

Tracking Emails & Email Crimes

Blog banner

Introduction to Virtual Memory - 080

Blog banner

ROLE OF THE COMPUTER FORENSICS TOOLS AND TECHNIQUES

Blog banner

Why Consistency in Eating Habits Matters and How Meal Maharaj Makes It Easy

Blog banner

Deadlock

Blog banner

Corporate Discipline.

Blog banner

EFT

Blog banner

Guidelines for a Low sodium Diet.

Blog banner

Types of Viruses

Blog banner

Annual Day Preparation for Toddlers: What Helps and What to Avoid

Blog banner

GIS

Blog banner

Instagram

Blog banner

5 Common Faults In Construction Tenders

Blog banner

Key to success in Sports

Blog banner

Emotional Suppression: The Hidden Costs Of Unfelt Feelings

Blog banner

Mesh Topology

Blog banner

Workplace mental health: A Psychological Perspective on Employee Well-being and Organizational Growth

Blog banner

What is Anxiety? How to manage Anxiety?

Blog banner

Deadlock

Blog banner

How to grow followers on Instagram business account?

Blog banner

Human Error: The weakest link in Cybersecurity

Blog banner