wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock

profile
Jeet Ved
Aug 15, 2024
0 Likes
0 Discussions
67 Reads

Concurrency in operating systems involves multiple processes or threads executing simultaneously, which can lead to complex interactions. Two common problems that arise in this context are deadlock and starvation. Here’s an overview of both:


1. *Deadlock*


A deadlock occurs when a set of processes or threads become stuck in a situation where each one is waiting for a resource that the others in the set are holding. Since none of them can proceed, they remain in this waiting state indefinitely. Four conditions are necessary for a deadlock to occur:


- *Mutual Exclusion:* At least one resource must be held in a non-sharable mode; only one process can use the resource at any given time.


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


- *No Preemption:* Resources cannot be forcibly taken away from a process; they must be released voluntarily.


- *Circular Wait:* A closed chain of processes exists, where each process holds a resource that the next process in the chain is waiting for.


*Example:* Consider two processes, P1 and P2. P1 holds Resource A and is waiting for Resource B, while P2 holds Resource B and is waiting for Resource A. Neither process can proceed, leading to a deadlock.


 *Deadlock Prevention and Avoidance*


- *Deadlock Prevention:* Modify one of the necessary conditions to ensure that a deadlock cannot occur (e.g., imposing a strict order on resource allocation to prevent circular wait).


- *Deadlock Avoidance:* Use algorithms (e.g., Banker's algorithm) to allocate resources in a way that ensures the system remains in a safe state.


 2. *Starvation*


Starvation, also known as indefinite blocking, occurs when a process is perpetually denied necessary resources because other processes keep gaining access to them first. Unlike deadlock, where processes stop making progress due to being stuck in a cycle, starvation involves one or more processes making no progress because they are continually bypassed.


*Example:* Consider a scheduling system where high-priority processes keep getting resources, and a low-priority process is continually skipped over, leading to starvation.


 *Solutions to Starvation*


- *Aging:* Gradually increase the priority of a waiting process over time to ensure it eventually gets the resources it needs.


- *Fair Scheduling Algorithms:* Use algorithms like round-robin or fair share that ensure all processes eventually receive attention.






Name:Jeet Ved


SAP ID:53003230116


DIV:B


Comments ()


Sign in

Read Next

RAID

Blog banner

What Makes a School Safe, Supportive, and Student-Friendly

Blog banner

MEMORY MANAGEMENT FILE

Blog banner

An Approach To Spyware Detection And Removal

Blog banner

Shoulders

Blog banner

Man VS Nature

Blog banner

Beatbox

Blog banner

Never give up

Blog banner

semaphores

Blog banner

A Weekend of Wildlife, Rivers, and Relaxation in Southwest Florida

Blog banner

Starvation

Blog banner

Service Strategy In ITSM

Blog banner

Security requirements for Safe E-Payments

Blog banner

Incorporating Automation into Digital Forensics.

Blog banner

Online Games

Blog banner

Deadlocks

Blog banner

LIMITED EDITION

Blog banner

What is Anxiety? How to manage Anxiety?

Blog banner

Types of email

Blog banner

Zomato's Secret Digital Marketing Techniques!

Blog banner

Deadlocks in Operating System

Blog banner

Different types of e-commerce platforms or advantages and disadvantages

Blog banner

Google

Blog banner

Types of Malware in Cyber Security

Blog banner

Memory Management

Blog banner

Confidence Building Activities for the New School Year

Blog banner

Multicore CPUs

Blog banner

Mumbai

Blog banner

Why Skipping Afternoon Meals Affects More Than Just Your Hunger?

Blog banner

The IT Service Lifecycle

Blog banner

Broken Authentication Attacks

Blog banner

The Memory Hierarchy

Blog banner

Deadlock

Blog banner

KAHAWA TEA

Blog banner

The New Rules of UI/UX Design Every Website Must Follow in 2026

Blog banner

The Everyday Parenting Dilemma: Safety Vs Independence

Blog banner

Modern Teaching Methods: Why Inquiry-based & Experiential Learning Works Best

Blog banner

COMMUNICATION

Blog banner

"Can Lisp do Machine Learning?"

Blog banner

Vulnerabilities in OnePlus Devices

Blog banner

Decoding Confusion Matrix

Blog banner

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

Blog banner