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

A little bit of salt is all the hash needs!

Blog banner

Survey of Which Movies Types people are Prefer to Watch in India.

Blog banner

Therapy Myths That Need to End in 2025

Blog banner

WAKE UP ITS FOOD o'CLOCK...!!!!!

Blog banner

Types of Big Data

Blog banner

Deadlock and Starvation

Blog banner

Why Mumbai Professionals Are Switching Back to Home-Style Tiffin Meals

Blog banner

MODERN OPERATING SYSTEM

Blog banner

'C', 'C++' and 'Java': Head-to-Head

Blog banner

Data Science in Predictive Analytics: Transforming Business Decision-Making

Blog banner

National Payments Corporation of India-Rupay - Gayatri Nayak

Blog banner

What is hydration pack/ hydration bladder?

Blog banner

Everything You Need for a Perfect Stay in Arcadia, Florida, USA.

Blog banner

How To Invest in Indian Stock Market For Beginners. ~ Tutorial 2 (NSDL And CSDL) Continued...

Blog banner

COMMUNICATION

Blog banner

ACHIEVEMENTS IN OPERATING SYSTEMS

Blog banner

College Life

Blog banner

Uniprocessor scheduling

Blog banner

Platonic Solids

Blog banner

Types of OS

Blog banner

Top 5 Benefits of Artificial Intelligence

Blog banner

Data Structures

Blog banner

How to Build an Effective Digital Campaign

Blog banner

Photorec - media recovery tool

Blog banner

Multicore CPUs

Blog banner

What is M-commerce and how it's work

Blog banner

Data Mining

Blog banner

LINUX VSERVER VIRTUAL MACHINE ARCHITECTURE

Blog banner

Theads

Blog banner

Kernel in Operating System

Blog banner

Be kind person

Blog banner

How to Encrypt and Decrypt Using GNU PGP

Blog banner

MEMORY MANAGEMENT REQUIREMENT

Blog banner

Digital Marketing - The new way to reach end consumer

Blog banner

Simple AI Symptom Diagnosis Using LISP – Rule-Based Expert System

Blog banner

Travelling blog

Blog banner

THE DESIRE OF MANY

Blog banner

Predicting Student Performance with Data Science

Blog banner

Google classroom

Blog banner

Street foods

Blog banner

Gis in agriculture and farming

Blog banner

Explain Multiprocessors

Blog banner