wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock and starvation in operating system

profile
Nishchay Maurya
Jul 11, 2023
0 Likes
0 Discussions
30 Reads

Deadlock

All processes keep waiting for each other to complete and none get executed. Resources are blocked by the processes.A deadlock occurs when no process can proceed and becomes blocked . In other words, a deadlock occurs when multiple processes in the CPU compete for the limited number of resources available in the CPU .Deadlocks typically occur in systems that use resource allocation policies like mutual exclusion, hold and wait, no preemption, and circular wait. Let's discuss each of these conditions:

 

1)Mutual Exclusion: At least one resource must be held in a non-shareable mode, meaning that only one process can use it at a time. If a process requests a resource that is already held by another process, it must wait until the resource is released.

 

2)Hold and Wait: A process must be holding at least one resource while waiting to acquire additional resources. If a process holds a resource and requests another that is held by a different process, a situation of deadlock can occur if the second process is also waiting for a resource held by the first process.

 

3)No Preemption: Resources cannot be forcibly taken away from a process that is currently using them. The only way a resource can be released is voluntarily by the process holding it. This condition contributes to the possibility of deadlock, as processes may hold resources indefinitely.

 

4)Circular Wait: A set of processes is involved in a circular chain, where each process is waiting for a resource held by the next process in the chain. This circular dependency leads to a situation where no process can proceed.

 

 

 

 

Starvation 

Starvation happens when a low priority program requests a system resource but cannot run because a higher priority program has been employing that resource for a long time.

 

1)High priority processes keep executing and low priority processes are blocked. Resources are continuously utilized by high priority processes.When a process is ready to start executing, it waits for the CPU to allocate the necessary resources. However, because other processes continue to block the required resources, the process must wait indefinitely.

 

2)Deadlock: In a deadlock situation, multiple processes are waiting for resources that are held by other processes, forming a circular dependency. If the deadlock resolution policy in the operating system is ineffective, processes may remain deadlocked indefinitely, resulting in resource starvation for those processes.

For example, if a process is granted a large amount of memory and holds onto it for an extended period, other processes may be unable to acquire sufficient memory and may not be able to progress.

 

3)CPU Scheduling: In a multi-programmed operating system, if a scheduling algorithm always prioritizes certain processes over others, lower-priority processes may starve for CPU time. They may experience delays or never get a chance to execute if higher-priority processes continually occupy the CPU.


Comments ()


Sign in

Read Next

security controls

Blog banner

Bharat Maps

Blog banner

What your Favorite colour says about You?

Blog banner

JIRA SOFTWARE

Blog banner

LEMON PICKLE (NIMBU KA ACHAR)

Blog banner

Deadlock in Operating System

Blog banner

Twisted world

Blog banner

Street foods

Blog banner

Solving Problems with AI: The Power of Search Algorithms

Blog banner

Modern operating system

Blog banner

Title: Network Sniffing Techniques: Uncovering the Secrets of Data Transfer

Blog banner

IP Address

Blog banner

MODERN OPERATING SYSTEM

Blog banner

Study of Backdoor and Trojan tools

Blog banner

Modern Operating System - Suren Kotian

Blog banner

Concurrency and memory

Blog banner

This Windows 11 encryption bug may cause data damage

Blog banner

?How long does wisdom tooth pain last?

Blog banner

Bit Coins

Blog banner

Virtual Machine

Blog banner

Explain DBMS in Brief

Blog banner

5 ways to save money on catering services in Mumbai

Blog banner

Europe Through My Lens

Blog banner

Kafka - A Framework

Blog banner

Race Conditions

Blog banner

Classification Algorithms (Decision trees, SVM, Logistic regreession)

Blog banner

Starvation

Blog banner

Ola

Blog banner

Corporate Discipline.

Blog banner

Review on Cyber Forensics and its Analysis Tools

Blog banner

Sensory Play for Toddlers: Boosting Curiosity Through Touch, Sound, and Colour

Blog banner

Vulnerability Assessment

Blog banner

Importance Of Education.

Blog banner

SMARTSHEET

Blog banner

Data Visualization- Importance and tools (Tableau,Power BI, Matplotlib)

Blog banner

THE ACTORS LIFE

Blog banner

A Traveller’s Guide to Offbeat Places in Arcadia, Florida

Blog banner

Virtual memory

Blog banner

VIRTUAL MACHINES

Blog banner

Deming’s Process

Blog banner

My Favorite Sportsperson

Blog banner

virtual machines and virtualization

Blog banner