wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock

profile
Darshan Somaiya
Aug 16, 2024
1 Like
0 Discussions
149 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

Virtualization

Blog banner

Semaphores

Blog banner

Deadlock and Starvation

Blog banner

Virtual Machine

Blog banner

Memory Management of Operating System(OS)

Blog banner

Memory Hierarchy

Blog banner

The IT Service Lifecycle

Blog banner

Advanced Persistent Threats (APTs)

Blog banner

Image Steganography: Hiding Secrets in Plain Sight

Blog banner

Microsoft powerpoint presentation

Blog banner

Operating Systems

Blog banner

I/O Buffering

Blog banner

Hosting basics

Blog banner

Disk Management

Blog banner

File management In Operating System

Blog banner

How Cyber Forensics help prevent Crimes

Blog banner

Memory management

Blog banner

Traditional UNIX Scheduling

Blog banner

Cache memory

Blog banner

ZOHO

Blog banner

Short note on expert system

Blog banner

Pilgrimage at LOC: A privilege and a paradox

Blog banner

Image Steganalysis in Digital Forensics

Blog banner

PPT methodology

Blog banner

IT Service as as Value Creation

Blog banner

The Dark Web: A Breeding Ground for Cybercriminals – How to Guard Against Threats

Blog banner

Malware Detection Techniques for Mobile Devices

Blog banner

Bitcoin sent using radio waves! No internet!

Blog banner

10 Interesting Facts about Attack on Titan

Blog banner

Memory management

Blog banner

Water Resources are about to exhaust...

Blog banner

Regression Analysis

Blog banner

What are Tenders its various types

Blog banner

Mutual exclusion

Blog banner

Types of email

Blog banner

Concurrency:Deadlock and Starvation

Blog banner

Lemon and Chilli Pickle (Limbu Mirchi Achar)

Blog banner

Topic: Sessions in Operating system

Blog banner

Modern Operating Systems

Blog banner

“Shot on iPhone” : A campaign by Apple that turned into a prodigy

Blog banner

What are the different types of E-mail crime and process of email forensic?

Blog banner

Data Lake

Blog banner