wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Concurrency:Deadlock and Starvation

profile
Nihar Kotadia
Aug 13, 2024
0 Likes
0 Discussions
163 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

This too shall pass

Blog banner

Time Series Analysis

Blog banner

KPMG (Klynveld Peat Marwick Goerdeler)

Blog banner

Cyber Attacks -- Trends Patterns and Security Countermeasures

Blog banner

Fashion marketing in india

Blog banner

10 Unsolved Mysteries all over the world

Blog banner

The Truth Behind Viral DIY Dental Hacks

Blog banner

Multiple-Processor Scheduling in Operating System

Blog banner

WINDOWS I/ O

Blog banner

Vikrant’s first blog

Blog banner

MQTT (MQ Telemetry Transport) in Data Science

Blog banner

Marvel Cinematic Universe

Blog banner

Deadlock and Starvation in an Operating System

Blog banner

Why is online marketing is important in current scenario

Blog banner

Threads

Blog banner

When Is the Right Time to Enrol My Toddler Into Preschool? NEP

Blog banner

OPERATING SYSTEM

Blog banner

Digital marketing spotlight “Dove’s Real Beauty Campaign”

Blog banner

RAID

Blog banner

OS Assignment 3

Blog banner

The Procedural Framework for Corporate High-Tech Investigations

Blog banner

Data Warehousing

Blog banner

Broken Authentication Attacks

Blog banner

computer security

Blog banner

MY FIRST BLOG?

Blog banner

What is thread and multithreading ?

Blog banner

A small world of Sockets

Blog banner

Note Taker App

Blog banner

Virtual memory in os

Blog banner

Cyber Forensics in a Ransomware Attack Recovery

Blog banner

The New Classic: Indo Western Patola Outfits for Today’s Woman

Blog banner

BUSINESS MODELS OF E COMMERCE

Blog banner

Memory management

Blog banner

Models of Information Security.

Blog banner

IoT Architecture Based Security

Blog banner

Reconnaissance

Blog banner

Smitten Kitchen Keepers

Blog banner

The Role of Cyber Forensics in Addressing Cyber security Challenges in Smart Cities

Blog banner

Photography

Blog banner

What is Spyware? and examples of them.

Blog banner

Functions of Operating System

Blog banner

Why do you need a personalised bag tag for your kids' school bags?

Blog banner