wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock

profile
Prishi Jain
Aug 16, 2024
1 Like
0 Discussions
185 Reads

A deadlock in an operating system is a situation where a set of processes become stuck, unable to proceed because each process is waiting for a resource that another process in the same set is holding. Since none of the processes can proceed until another releases its resources, they are in a state of perpetual waiting, leading to a deadlock.

Key Conditions for Deadlock:

A deadlock can occur if the following four conditions hold simultaneously:

  1. Mutual Exclusion: At least one resource must be held in a non-shareable mode, meaning 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 being held by other processes.
  3. No Preemption: A resource cannot be forcibly removed from a process holding it; it can only be released voluntarily by the process holding it.
  4. Circular Wait: A set of processes exist where each process is waiting for a resource that the next process in the chain holds, forming a circular chain of dependencies.

Example Scenario:

Imagine two processes, P1 and P2, and two resources, R1 and R2. Suppose:

  • P1 holds R1 and requests R2.
  • P2 holds R2 and requests R1.

In this situation, P1 and P2 are waiting on each other to release the resources, leading to a deadlock.

Deadlock Handling Strategies:

Operating systems handle deadlocks using one of the following approaches:

  1. Deadlock Prevention: Ensuring that at least one of the four conditions for deadlock cannot occur.
  2. Deadlock Avoidance: Using algorithms (like the Banker’s algorithm) to ensure that the system never enters an unsafe state where a deadlock might occur.
  3. Deadlock Detection and Recovery: Allowing deadlocks to occur, but the system periodically checks for deadlocks and takes action to recover, such as terminating one or more processes involved in the deadlock.
  4. Ignoring the Problem: Some systems, especially simple ones or those where deadlocks are rare, choose to ignore the problem, hoping that deadlocks will not occur frequently.

Comments ()


Sign in

Read Next

Uniprocessor and Types

Blog banner

Operating system evolution

Blog banner

Modern operating systems (OS)

Blog banner

A-B-C of Networking: Part-1 (Basics)

Blog banner

COMFORT IS ALL ABOUT FASHION

Blog banner

Pooja Silver

Blog banner

Every body is beautiful

Blog banner

The Essential Guide to Dynamic Arrays vs. Linked Lists: Which to Use and When ?

Blog banner

Artical on FreshBooks

Blog banner

Clarizen

Blog banner

Firewall

Blog banner

Data Mapping

Blog banner

The Peephole

Blog banner

Environmental Management using GIS

Blog banner

What is M-commerce and how it's work

Blog banner

Cache memory

Blog banner

CONCURRENCY: MUTUAL EXCLUSION AND SYNCHRONIZATION-het karia

Blog banner

The 60-Minute Window: What to Do (And What NOT to Do) When You Knock Out a Tooth

Blog banner

SMARTSHEET

Blog banner

The War With Cold On Earth

Blog banner

OS Assignment-3

Blog banner

THE LEGAL ISSUES OF COMPUTER FORENSICS IN INDIA

Blog banner

Critical success factors

Blog banner

Deadlock

Blog banner

All you need to know about Website Traffic

Blog banner

Understanding Regression Analysis

Blog banner

MAILFENCE

Blog banner

GIS Bharat Maps

Blog banner

Smart Shoephone: Is that technology overdose!?

Blog banner

Social Engineering

Blog banner

Python as a tool for data analysis

Blog banner

Access management

Blog banner

Coping with Diagnosis Shock

Blog banner

The Memory Hierarchy

Blog banner

OS Assignment 3

Blog banner

Making Money through Instagram

Blog banner

Top 5 Post-Wedding Skin Care Tips

Blog banner

Office Lunch Problems in Mumbai and How Tiffin Services Solve Them

Blog banner

Secure Hypertext transfer protocol

Blog banner

MY MOST THRILLED TREK ..... BHAIRAVGAD

Blog banner

5 People who claimed to have Time Traveled

Blog banner

An Approach To Spyware Detection And Removal

Blog banner