wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

OS Assignment-3

profile
Nikita Mitna
Aug 13, 2024
0 Likes
0 Discussions
30 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

Apache Spark :- Powerful Data Processing Tool

Blog banner

Big Data Architecture

Blog banner

Artificial Intelligence and I

Blog banner

Risk mitigation and management

Blog banner

PERSONAL STORIES

Blog banner

Types of Big Data

Blog banner

Precision-Recall in Data Science

Blog banner

Concurrency:Deadlock and Starvation

Blog banner

Artical on FreshBooks

Blog banner

Why we should do reading

Blog banner

Deadlock

Blog banner

Uniprocessor and Types

Blog banner

Clustering Techniques

Blog banner

How to insert contacts in zoho crm using php

Blog banner

Smart Shoephone: Is that technology overdose!?

Blog banner

Hypothesis Testing in Data Science

Blog banner

File Management

Blog banner

Explain Multiprocessors

Blog banner

10 Reasons Why Guy BestFriends are the Must in Every Girl's Life

Blog banner

VPN

Blog banner

Modern Operating System

Blog banner

What if COVID does not exist!

Blog banner

Threats To Computer System

Blog banner

Memory Management

Blog banner

Full Disk Encryption

Blog banner

(Input/Output) in os

Blog banner

Environmental Management using GIS

Blog banner

Modern Operating System - Khush Bagaria

Blog banner

Understanding Toddler Tantrums: What They Really Mean

Blog banner

Paid Email

Blog banner

To travel is to live

Blog banner

Cache memory

Blog banner

Firewall

Blog banner

Memory Management

Blog banner

BrainGate Technology

Blog banner

What's Better : Supervised or Unsupervised Learning

Blog banner

Office Lunch Problems in Mumbai and How Tiffin Services Solve Them

Blog banner

Automating OSINT tasks for efficient Cyber Forensics Investigations

Blog banner

Malware

Blog banner

Processes: Process Description and Control.

Blog banner

Blog on health and fitness

Blog banner

Severe landslides continue to cause concern in Joshimath, Uttarakhand

Blog banner