wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock and Starvation

profile
Supriya Nagraj
Aug 14, 2024
0 Likes
0 Discussions
56 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

Blog on health and fitness

Blog banner

'Positivity in life'

Blog banner

File management In Operating System

Blog banner

CYBER FORENCIS: PAST, PRESENT AND FUTURE.

Blog banner

How to use open SSL for web server - browser communication

Blog banner

Evolution of operating systems

Blog banner

Smitten Kitchen Keepers

Blog banner

ACHIEVEMENTS IN OPERATING SYSTEMS

Blog banner

Blockchain

Blog banner

RAID

Blog banner

10 Things To Do On Valentine's Day If You're Single

Blog banner

Khau Galli – Vile Parle

Blog banner

E-commerce

Blog banner

Elegant fashion style

Blog banner

Technological Advancement

Blog banner

File system

Blog banner

The most common internet security threats

Blog banner

Risk management in IT

Blog banner

Introduction to Solidity Programming for Blockchain Development

Blog banner

COMFORT IS ALL ABOUT FASHION

Blog banner

Dekkers Algorithm

Blog banner

Cache memory

Blog banner

Answer

Blog banner

Advantage of freedom

Blog banner

How College Events Build Real-world Skills You Can’t Learn From Textbooks

Blog banner

Data Structures

Blog banner

Child labour

Blog banner

APACHE KAFKA

Blog banner

Assignment 2

Blog banner

Palm Vein Biometric Technology; Contactless vein authentication

Blog banner

ZOHO

Blog banner

Wedding photographer

Blog banner

Deadlock and starvation in operating system

Blog banner

Mobile Security

Blog banner

Blockchain in IoT Applications

Blog banner

Big Data Architecture

Blog banner

gis substation

Blog banner

10 Survival Tips that might save your life

Blog banner

Deadlock and starvation

Blog banner

Video games

Blog banner

MODERN OPERATING SYSTEMS

Blog banner

SMARTSHEET MANAGEMENT SYSTEM

Blog banner