wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlocks in Operating Systems

profile
Mansi Barot
Aug 15, 2024
0 Likes
0 Discussions
151 Reads

In an operating system, a deadlock occurs when a set of processes get stuck because each process is waiting for a resource that another process in the set is holding. None of the processes can proceed because they are all waiting for resources that are currently being held by each other, creating a cycle of dependency.

 

  • Conditions for Deadlock: A deadlock happens when all of these four conditions occur simultaneously:
  1. Mutual Exclusion: At least one resource must be held in a non-shareable mode (i.e., only one process can use the resource at a time).
  2. Hold and Wait: Processes holding resources can request new ones without releasing what they already have.
  3. No Preemption: Resources cannot be forcibly taken away from a process; they must be released voluntarily.
  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.

 

  • Dealing with Deadlocks

Operating systems use various strategies to handle deadlocks:

  • Deadlock Prevention: Modify the system to prevent one of the four conditions from occurring.
  • Deadlock Avoidance: Use algorithms like Banker's Algorithm to avoid unsafe states.
  • Deadlock Detection and Recovery: Allow deadlocks to happen, but detect and resolve them by terminating or preempting processes.
  • Ignoring Deadlock: In some systems (e.g., UNIX), deadlocks are ignored under the assumption that they are rare.


In an easier way to understand, imagine you're playing a game with your friends, and you all want to use each other's toys at the same time. But no one is willing to share until they get the toy they want. Now, everyone is stuck waiting, and no one can keep playing. 

In an operating system, a deadlock is like that. It's when programs are waiting for resources (like memory or files) that another program is using. But since each program is waiting and won't give up what it already has, they all get stuck and can't continue.


Comments ()


Sign in

Read Next

Dove’s Real Beauty Campaign- Case Study

Blog banner

Cache memory

Blog banner

Financial Stress and Mental Health

Blog banner

Short note on expert system

Blog banner

OS Assignment-3

Blog banner

Virtual Memory

Blog banner

HOW CAN SOCIAL MEDIA MAKE YOU HAPPIER?

Blog banner

Social Media.

Blog banner

Who decides your overthinking, anyway?

Blog banner

A little bit of salt is all the hash needs!

Blog banner

Top 5 Places To Stay And Visit In Berlin, Germany

Blog banner

Evolution of the Microprocessor ~ Aditya Pai

Blog banner

A-B-C of Networking: Part-2 (Components)

Blog banner

Mumbai local ......

Blog banner

Data Warehouse Bus Matrix

Blog banner

How to Encrypt and Decrypt Using GNU PGP

Blog banner

Natural Language Processing(NLP)

Blog banner

What is OS Fingerprinting?

Blog banner

Crypto tax evasion

Blog banner

Deadlock in Operating systems

Blog banner

Artificial Intelligence and I

Blog banner

Understanding Portion Control: How Much Food Do You Really Need?

Blog banner

Deadlock and Starvation

Blog banner

Memory management

Blog banner

Travelling blog

Blog banner

How to Find the Right Therapist For Me?

Blog banner

SNAPCHAT

Blog banner

Regression Analysis

Blog banner

Oracle Corporation

Blog banner

How Puppet Shows and Role Play Teach Empathy to Preschoolers

Blog banner

Raid

Blog banner

How to feel Happy everyday day

Blog banner

Memory Management

Blog banner

Open Source Project By Google

Blog banner

Data Lakes: A Key to Modern Data Management

Blog banner

How to tie a Tie

Blog banner

Hacking Mobile Platforms

Blog banner

COMFORT IS ALL ABOUT FASHION

Blog banner

Modern Operating System - Suren Kotian

Blog banner

Trends that began during the pandemic

Blog banner

Hacking

Blog banner

Palm Vein Biometric Technology; Contactless vein authentication

Blog banner