wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock and Starvation

profile
Niraj Parulekar
Aug 13, 2024
0 Likes
0 Discussions
93 Reads

1] Deadlock :
                       Deadlock is a situation where a set of processes becomes stuck, each waiting for a resource that the other  processes in the set are holding. This results in a cycle of dependencies where no process can proceed, leading to a complete halt in the system. Deadlock typically occurs under four conditions, known as        Coffman’s conditions:

1. Mutual Exclusion: At least one resource must be held in a non-shareable mode, meaning that 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 can be released only voluntarily by the process holding it after that process has                                      completed its task.

4. Circular Wait: There must be a circular chain of processes, where each process holds at least one resource                                 that the next process in the chain needs.

--Deadlock prevention, avoidance, detection, and recovery are the primary strategies used to handle deadlocks.

  Prevention involves breaking one of Coffman’s conditions, whereas avoidance uses algorithms like the Banker’s    Algorithm to ensure that the system remains in a safe state. Detection algorithms can identify deadlock when it      occurs, and recovery techniques involve terminating or rolling back processes to break the deadlock.

2] Starvation :
                    Starvation, on the other hand, occurs when a process is perpetually denied the resources it needs to proceed. Unlike deadlock, where processes are waiting on each other in a cycle, starvation involves one or more processes being overlooked in favor of others. This often happens in scheduling algorithms that prioritize certain processes, causing lower-priority processes to wait indefinitely.

For example, in a priority-based scheduling system, a low-priority process might never get CPU time if higher-priority processes continuously arrive. Starvation is particularly problematic in systems where fairness and equitable resource allocation are critical.

To mitigate starvation, algorithms such as aging are used, where the priority of a process increases the longer it waits, eventually ensuring that it will receive the necessary resources.


Comments ()


Sign in

Read Next

Article on Zoho Corporation

Blog banner

Dal Bafla Recipe

Blog banner

DATA SCIENCE IN BUSINESS AND MARKETING

Blog banner

Bitcoin sent using radio waves! No internet!

Blog banner

Web Site

Blog banner

Why You Need 2FA (Two-Factor Authentication) On Your Email And Other Online Accounts

Blog banner

TOP 5 GAMING GADGETS (2024)

Blog banner

A Happier Workplace Starts with Healthy Lunches by Meal Maharaj

Blog banner

Processes: Process Description and Control.

Blog banner

Starvation

Blog banner

Threads in OS

Blog banner

SECURITY TOOLS

Blog banner

Yoga in INDIA and ABROAD

Blog banner

Malware Defense

Blog banner

LinkedIn

Blog banner

Evolution of operating systems

Blog banner

Open Source Project By Google

Blog banner

therapist blog

Blog banner

The Peephole

Blog banner

Principles of Service Operation

Blog banner

Computer Security

Blog banner

Dekkers Algorithm : Ensuring Safe Process Synchronization

Blog banner

Gis in agriculture and farming

Blog banner

Security issues in Sensor Networks and gathering admissible evidence in Network Forensics

Blog banner

INTERRUPTS

Blog banner

GIS info about Bermuda Triangle

Blog banner

Security Breaches in Stock market trading

Blog banner

virtual machines and virtualization

Blog banner

Virtual machine and virtualizing

Blog banner

Travel: Everything Everywhere!

Blog banner

What is M-commerce and how it's work

Blog banner

Sage business cloud accounting

Blog banner

Game via listing method

Blog banner

Data Science in Healthcare: Predicting Diseases

Blog banner

note taker app

Blog banner

Reclaim Your Bite and Beauty: All About Dental Restorative Treatments

Blog banner

Working with Sniffers for monitoring network communication

Blog banner

Linux -V Server Virtual Machine

Blog banner

Deadlock

Blog banner

Evolution of Operating Systems

Blog banner

Evolution of Operating System

Blog banner

Decision Tree: A Diagram Model

Blog banner