wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock and Starvation

profile
Kush Patel
Aug 15, 2024
0 Likes
0 Discussions
110 Reads

Deadlock and Starvation are two issues that can occur in computer systems, particularly in the context of concurrent processes and resource management.


Deadlock occurs in a system when a set of processes are each waiting for a resource held by another process in the set, causing all of them to be stuck in a state of waiting with no progress being made. For instance, imagine two processes: Process A and Process B. Process A holds Resource 1 and needs Resource 2 to continue, while Process B holds Resource 2 and needs Resource 1 to proceed. Neither process can continue because they are each waiting for the other to release a resource, leading to a cycle of dependencies with no process able to move forward. Deadlocks can be avoided or managed through techniques such as resource allocation graphs, deadlock detection algorithms, or using protocols like Banker's algorithm.

Starvation

Starvation occurs when a process is perpetually denied the resources it needs for execution because other processes are continuously allocated these resources. This problem can arise from improper scheduling or resource allocation policies. For example, in a priority-based scheduling system, if high-priority processes continuously arrive, lower-priority processes may never get a chance to execute. This is because the system always prioritizes the high-priority processes, leading to the lower-priority ones being indefinitely postponed. Starvation can be mitigated through techniques such as aging, where the priority of a process is gradually increased the longer it waits, ensuring that eventually, it gets the resources it needs.


Both deadlock and starvation are critical concerns in system design. Deadlock represents a state of complete standstill in resource usage, while starvation indicates an unfair allocation of resources leading to some processes never completing. Proper system design and management strategies are essential to avoid or resolve these issues, ensuring efficient and fair resource utilization.


Comments ()


Sign in

Read Next

operating system

Blog banner

Computer Security

Blog banner

S-Tool : Steganography

Blog banner

The Role of Cyber Forensics in Addressing Cyber security Challenges in Smart Cities

Blog banner

How to feel Happy everyday day

Blog banner

Street foods

Blog banner

How Preschools Help Children Make Their First Friends

Blog banner

Why do you need a personalised bag tag for your kids' school bags?

Blog banner

Why Social Search Is Becoming the New Discovery Channel for Brands?

Blog banner

Interrupts in OS

Blog banner

gis substation

Blog banner

THREADS (assignment 1)

Blog banner

"Audit" In Data Science

Blog banner

Texting is actually better than talking in person

Blog banner

PYTHON

Blog banner

Python as a tool for Data science task & project

Blog banner

Office Lunch Problems in Mumbai and How Tiffin Services Solve Them

Blog banner

What is Influencer Marketing and its Trends

Blog banner

The Rich Heritage Of Patola Sarees: Gujarat’s Timeless Weaving Art

Blog banner

Indian Culture and Tradition

Blog banner

Why we fail after giving 100% ?

Blog banner

VIRTUAL MEMORY

Blog banner

Modern operating system

Blog banner

How to Plan a Week of Healthy Meals Without Stress

Blog banner

“CONSISTENCY” in Social Media Marketing

Blog banner

Autonomy Vehicles: Future Ki Gadiya

Blog banner

Linux

Blog banner

Interesting fact about kangaroo.

Blog banner

Raising Emotionally Intelligent Students: The Classroom Beyond Academics

Blog banner

MORDERN UNIX SYSTEM

Blog banner

UniProcessor Scheduling

Blog banner

Outlook mail

Blog banner

10 Survival Tips that might save your life

Blog banner

Deadlock in Operating System

Blog banner

Fault tolerance

Blog banner

RAID_142

Blog banner

Why am I never satisfied with my Life?

Blog banner

ProofHub

Blog banner

Drawing tips for a beginner

Blog banner

What is 'Multi-core and Multi-threading' ?

Blog banner

Facebook marketing

Blog banner

Clustering Techniques

Blog banner