wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock and Starvation

profile
Supriya Nagraj
Aug 14, 2024
0 Likes
0 Discussions
64 Reads

-Deadlock


Deadlock is a situation in computing where two or more processes are unable to proceed because each one is waiting for a resource that the other has locked. 


In technical terms, deadlock occurs when the following four conditions are met simultaneously:


1. Mutual Exclusion: At least one resource must be held in a non-shareable mode. Only one process can use the resource at a time.

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

3. No Preemption : A resource cannot be forcibly taken away from a process. The process must release the resource voluntarily.

4. Circular Wait: There exists a set of processes where each process is waiting for a resource that is held by the next process in the chain, forming a circular chain of dependencies.


In a deadlock, none of the processes can proceed, and they remain stuck indefinitely unless an external action is taken to break the deadlock, such as terminating a process or forcibly taking resources.


-Starvation


Starvation is a condition where a process is perpetually denied the resources it needs to proceed because other processes are continuously being prioritized over it.


Starvation can occur in situations where:


  1. Resource Allocation Policies: If the system's resource allocation policy unfairly favors some processes over others, a low-priority process may be consistently delayed or ignored.

2. Priority Scheduling: In systems that use priority scheduling, a high-priority process may keep interrupting a lower-priority one, causing the latter to wait indefinitely.

3. Resource Contention: If a resource is constantly being used by other processes, the starved process might never get access to it.


Starvation is different from deadlock because, in a deadlock, the processes involved are permanently stuck, whereas in starvation, a process may eventually get the resources it needs if the circumstances change. However, in extreme cases, starvation can lead to a situation where a process never gets the resources it needs, effectively being "starved" indefinitely.


Comments ()


Sign in

Read Next

Ghee vs. Coconut Oil vs. Mustard Oil: Which Cooking Fat Wins for Indian Food?

Blog banner

Unlocking Success: Mastering Google Ads Strategies

Blog banner

Mobile Security

Blog banner

CRISP-DM Methodology

Blog banner

Types of Viruses

Blog banner

Types of Threads

Blog banner

Real time scheduling

Blog banner

What's Better : Supervised or Unsupervised Learning

Blog banner

Deadlock

Blog banner

How social media affect

Blog banner

Deadlock

Blog banner

File management

Blog banner

Technical Challenges and Directions for Digital Forensics

Blog banner

Heart Fulness Meditation

Blog banner

Design Considerations for Disk Cache Management

Blog banner

Sage business cloud accounting

Blog banner

OLA

Blog banner

Financial Stress and Mental Health

Blog banner

Malware

Blog banner

Are Social Media Paid Campaigns Worth It?

Blog banner

File management In Operating System

Blog banner

Cache memory

Blog banner

Direct Memory Access

Blog banner

De-Coding Love

Blog banner

Rapido

Blog banner

Modern operating system

Blog banner

Working with Sniffers for monitoring network communication

Blog banner

Internet: The Vast Ocean Of Knowledge.

Blog banner

Education?

Blog banner

Virtual Memory

Blog banner

Interrupts in OS

Blog banner

What if COVID does not exist!

Blog banner

Multicore and multithreading 171

Blog banner

This Windows 11 encryption bug may cause data damage

Blog banner

HTML vs HTML5

Blog banner

How Men and Women Process Pain Differently

Blog banner

What is OS Fingerprinting?

Blog banner

Importance of modern technology era

Blog banner

Evolution of Operating system

Blog banner

Malicious softwares

Blog banner

Electronic Funds Transfer

Blog banner

12 Principles of Animation

Blog banner