wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Deadlock and Starvation

profile
Khush Bagaria
Aug 15, 2024
0 Likes
0 Discussions
119 Reads

1. Deadlock

 

Deadlock in an operating system occurs when a set of processes become stuck because each process is waiting for a resource that another process holds, and none of the processes can proceed. This situation usually arises in multi-process systems where processes share resources such as files, memory, or devices. The four necessary conditions for deadlock, often referred to as Coffman’s conditions, are mutual exclusion, hold and wait, no preemption, and circular wait. If all these conditions hold simultaneously, the system can enter a deadlock state. Deadlocks can be addressed through prevention, avoidance, or detection and recovery methods. Prevention involves designing the system to negate one or more of the Coffman conditions, while avoidance uses algorithms like Banker’s Algorithm to ensure the system never enters an unsafe state. Detection and recovery involve allowing the deadlock to occur but having mechanisms to identify and resolve it by terminating processes or rolling them back.

 

2.Starvation

 

Starvation occurs in an operating system when a process waits indefinitely to gain access to a resource it needs, even though the resource is available at times. This typically happens in scheduling algorithms that favor certain processes over others, like when a low-priority process is continually preempted by higher-priority processes. Starvation is a significant problem because it can lead to reduced system performance and inefficiency. Solutions to starvation include using aging, a technique where the priority of a waiting process is gradually increased, ensuring that every process eventually gets a chance to execute. By incorporating aging into scheduling algorithms, the operating system can prevent starvation by ensuring that processes waiting for resources for a long time are eventually given access, thus maintaining system fairness.


Comments ()


Sign in

Read Next

Virtual Memory

Blog banner

Scheduling in Operating Systems

Blog banner

Volatile Memory & Non-Volatile Memory Explained

Blog banner

Privacy-Enhancing Computation Techniques

Blog banner

Linux 94

Blog banner

Data Science in Everyday Life (like a phone, shopping cart, or social media icons)

Blog banner

Process Description

Blog banner

IOT- Internet Of Things

Blog banner

Memory Management in Operating System

Blog banner

MENDELEY

Blog banner

Virtual Machine

Blog banner

c

Blog banner

Types of Threads

Blog banner

Deming’s Process

Blog banner

Virtual memory

Blog banner

Anomaly Detection in Behavioral Data Using Machine Learning

Blog banner

Incident management in ITSM

Blog banner

UniProcessor Scheduling

Blog banner

Python as a tool for data analysis

Blog banner

Install Ubuntu Easily

Blog banner

Uniprocessor scheduling

Blog banner

IoT Evolution

Blog banner

Wedding photographer

Blog banner

Electronic Funds Transfer

Blog banner

Satellite Based Positioning

Blog banner

Process, process creation and process termination

Blog banner

Deadlock

Blog banner

Virtual memory

Blog banner

HR Automation : Need of the hour

Blog banner

How to kiss

Blog banner

Internet of Things and cyber security

Blog banner

Review on Recovering Deleted Files

Blog banner

Veg Mix Pickle

Blog banner

Threads

Blog banner

What is Packet Filtering?

Blog banner

Virtualisation

Blog banner

Solving Problems with AI: The Power of Search Algorithms

Blog banner

5 Common Faults In Construction Tenders

Blog banner

What is Internet

Blog banner

Meal Maharaj — 3 CP, 5 CP, 8 CP. Same Love, Different Portions

Blog banner

Hash password! Is it really secured?

Blog banner

Cyber Forensic in the Banking sector

Blog banner