wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

OS Assignment-3

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

ADD A SPICE TO YOUR LIFE.

Blog banner

Why Should You Schedule Tweets on Twitter?

Blog banner

Race condition

Blog banner

Best password managers: Reviews of the top products

Blog banner

ASANA- A Management System.

Blog banner

John Titor: The Time Traveler

Blog banner

Linux 94

Blog banner

Smitten Kitchen Keepers

Blog banner

Blog name

Blog banner

Firewall

Blog banner

10 Alien Encounters and Abduction Stories

Blog banner

Flipkart

Blog banner

From Classic to Flavoured: Exploring Different Types of Khari

Blog banner

Why Moms Are Choosing Customised School Accessories Over Generic Products

Blog banner

virtual machine

Blog banner

10 Types of Friends in every friend group

Blog banner

social media issue

Blog banner

Principles of Concurrency

Blog banner

10 Interesting Facts about Attack on Titan

Blog banner

How Seasons affect online sales and how to overcome them

Blog banner

Cloud Computing

Blog banner

File management In Operating System

Blog banner

Getting started with Android Studio

Blog banner

Security issues

Blog banner

Operating System Objectives and Functions

Blog banner

The Peephole

Blog banner

CYBER FORENCIS: PAST, PRESENT AND FUTURE.

Blog banner

MODERN OPERATING SYSTEM

Blog banner

Risk mitigation and management

Blog banner

Personalised Name Labels vs. Handwritten Stickers: Which Is Better for Your Child’s School Essentials?

Blog banner

LISP - Library Management System

Blog banner

Use case of K-means clustering

Blog banner

5 ways to save money on catering services in Mumbai

Blog banner

Objectives and functions of Operating System...

Blog banner

EdTech (Education Technology)

Blog banner

OPERATING SYSTEM OBJECTIVES AND FAULT TOLERENCE.

Blog banner

PERT Overview

Blog banner

Virtual memory

Blog banner

Instagram

Blog banner

MySQL

Blog banner

Process Description

Blog banner

Types Of Interrupt

Blog banner