wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

OS Assignment-3

profile
Nikita Mitna
Aug 13, 2024
0 Likes
0 Discussions
31 Reads

Concurrency in operating systems involves multiple processes or threads executing simultaneously, which can lead to complex interactions. Two common problems that arise in this context are deadlock and starvation. Here’s an overview of both:

1. *Deadlock*
A deadlock occurs when a set of processes or threads become stuck in a situation where each one is waiting for a resource that the others in the set are holding. Since none of them can proceed, they remain in this waiting state indefinitely. Four conditions are necessary for a deadlock to occur:

- *Mutual Exclusion:* At least one resource must be held in a non-sharable mode; only one process can use the resource at any given time.
- *Hold and Wait:* A process holding at least one resource is waiting to acquire additional resources that are currently being held by other processes.
- *No Preemption:* Resources cannot be forcibly taken away from a process; they must be released voluntarily.
- *Circular Wait:* A closed chain of processes exists, where each process holds a resource that the next process in the chain is waiting for.

*Example:* Consider two processes, P1 and P2. P1 holds Resource A and is waiting for Resource B, while P2 holds Resource B and is waiting for Resource A. Neither process can proceed, leading to a deadlock.

 *Deadlock Prevention and Avoidance*
- *Deadlock Prevention:* Modify one of the necessary conditions to ensure that a deadlock cannot occur (e.g., imposing a strict order on resource allocation to prevent circular wait).
- *Deadlock Avoidance:* Use algorithms (e.g., Banker's algorithm) to allocate resources in a way that ensures the system remains in a safe state.

 2. *Starvation*
Starvation, also known as indefinite blocking, occurs when a process is perpetually denied necessary resources because other processes keep gaining access to them first. Unlike deadlock, where processes stop making progress due to being stuck in a cycle, starvation involves one or more processes making no progress because they are continually bypassed.

*Example:* Consider a scheduling system where high-priority processes keep getting resources, and a low-priority process is continually skipped over, leading to starvation.

 *Solutions to Starvation*
- *Aging:* Gradually increase the priority of a waiting process over time to ensure it eventually gets the resources it needs.
- *Fair Scheduling Algorithms:* Use algorithms like round-robin or fair share that ensure all processes eventually receive attention.

 

Nikita Mitna

53003230109

Div-A

 

 


Comments ()


Sign in

Read Next

The Peephole

Blog banner

Kayak Eco Tours Near Arcadia: A Complete Guide for Nature Lovers

Blog banner

Malware Defense

Blog banner

Indian Food

Blog banner

Deadlock and Starvation

Blog banner

Top 4 Places To Stay In Copenhagen

Blog banner

Apache Spark :- Powerful Data Processing Tool

Blog banner

What is time ? The term which has astonished Scientists

Blog banner

Retiring ISS

Blog banner

GUIDE TO GIS

Blog banner

Things You Should Leave Behind In 2025, Whilst In 2026

Blog banner

A book review

Blog banner

Data Storytelling: Turning Analysis into Business Action

Blog banner

A Brief Review on Cyber Forensics and its Analysis Tool

Blog banner

Device driver

Blog banner

10 Unknown facts about India's Independence

Blog banner

Software Piracy & Online Data Protection in Digital World

Blog banner

From Model Mistakes to Metrics

Blog banner

Revolutionary AI Tool: ChatGPT

Blog banner

Emotional Intelligence in Children: Why It Is as Important as Academics

Blog banner

Overcoming the bedtime brushing Battle with Dr. Roxanne Irani, Dentist in Maroubra

Blog banner

Virtual Memory

Blog banner

What are the different types of E-mail crime and process of email forensic?

Blog banner

Virtual memory

Blog banner

Dekkers Algorithm

Blog banner

PHONE TECHNOLOGY

Blog banner

Uniprocessor Scheduling

Blog banner

Virtual memory

Blog banner

Cyber Forensic in the Banking sector

Blog banner

Earth with no trees

Blog banner

Cyber Security Standards

Blog banner

'Positivity in life'

Blog banner

Deadlocks in Operating System

Blog banner

All you need to know about Cassandra

Blog banner

How return on investment is defined in IT services

Blog banner

Session Vulnerabilities

Blog banner

Koinex is shutting down and here is how you can withdraw...

Blog banner

OS ASSIGNMENT

Blog banner

Elegant fashion style

Blog banner

Understanding Loneliness: Why We Feel Disconnected in a Connected World (Part -1)

Blog banner

Soak knowledge and level up your intellectual potential!!!

Blog banner

What is Segmentation?

Blog banner