wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Concurrency:Deadlock and Starvation

profile
Nihar Kotadia
Aug 13, 2024
0 Likes
0 Discussions
161 Reads

In Operating Systems, concurrency refers to the ability of multiple processes to execute simultaneously, sharing common resources such as CPU time, memory, and I/O devices. However, this concurrency can lead to two major problems: Deadlock and Starvation.

Deadlock:

A deadlock is a situation where two or more processes are blocked indefinitely, each waiting for the other to release a resource. This occurs when the following four conditions are met:

  1. Mutual Exclusion: Two or more processes require exclusive access to a common resource.
  2. Hold and Wait: A process holds a resource and waits for another resource, which is held by another process.
  3. No Preemption: The operating system cannot preempt a process holding a resource.
  4. Circular Wait: A circular chain of processes exists, where each process waits for a resource held by the next process in the chain.

Starvation:

Starvation is a situation where a process is unable to gain access to a shared resource and is indefinitely postponed. This occurs when a process is waiting for a resource that is being held by another process, and the waiting process is not given a chance to execute.

Causes of Starvation:

  1. Priority Scheduling: A process with a lower priority may be starved of CPU time if a higher-priority process is always running.
  2. Resource Constraints: A process may be starved of a resource if another process is holding onto it for an extended period.
  3. Scheduling Algorithms: Certain scheduling algorithms, such as First-Come-First-Served (FCFS), can lead to starvation.

Prevention of Deadlock and Starvation:

To prevent deadlock and starvation, operating systems use various techniques, including:

  1. Resource Ordering: Ordering resources to prevent circular waits.
  2. Banker's Algorithm: A resource allocation algorithm that prevents deadlock.
  3. Priority Ceiling Protocol: A protocol that prevents starvation by assigning a priority ceiling to each resource.
  4. Scheduling Algorithms: Using scheduling algorithms that prevent starvation, such as Round Robin (RR) and Multilevel Feedback Queue (MFQ).

Comments ()


Sign in

Read Next

Jira service Management

Blog banner

The khan mehtab transforming the modular switches company

Blog banner

Starvation

Blog banner

Some facts about Technology

Blog banner

The Features of Blockchain

Blog banner

What is a geographic information system (GIS)?

Blog banner

Super Garlicky Tomato Soup with Smashed White Beans

Blog banner

It's all about our Brain.- The Brain Metaphor

Blog banner

Why Extreme Opinions Are Rising: Psychological Insights into Society’s Divides

Blog banner

Modern Operating System - Suren Kotian

Blog banner

The Role of Cyber Forensics in Criminology

Blog banner

What is semaphore in operating system?

Blog banner

NETSUITE

Blog banner

Harsh Rathod

Blog banner

Smartsheet

Blog banner

How return on investment is defined in IT services

Blog banner

Uniprocessor Scheduling

Blog banner

Different types of e-commerce platforms or advantages and disadvantages

Blog banner

OS ASSIGNMENT

Blog banner

File System

Blog banner

A Brief Review on Cyber Forensics and its Analysis Tool

Blog banner

Facebook Shut Down an AI Program!!! Facebook AI bots became Terminators???

Blog banner

INTERNET SECURITY

Blog banner

Article on team management software

Blog banner

Components of GIS

Blog banner

Os(Computer security threats)

Blog banner

BLOCKCHAIN MACHANISM

Blog banner

Security in Cloud Computing

Blog banner

Top 5 Post-Wedding Skin Care Tips

Blog banner

Clarizen

Blog banner

Video games

Blog banner

All you need to know about “Off-page SEO”

Blog banner

This is my first blog.

Blog banner

Modern operating system

Blog banner

Evolution of OS

Blog banner

operating system

Blog banner

Riddhi Miyani 53003220140

Blog banner

Explain Multiprocessors

Blog banner

How Does SSO Works

Blog banner

Deadlock

Blog banner

LINUX

Blog banner

Financial Stress and Mental Health

Blog banner