wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Assignment-3

profile
Nikita Mitna
Sep 08, 2024
0 Likes
0 Discussions
52 Reads

What is Starvation

Starvation is a problem with resource management where a process runs out of resources in the OS because those resources are being utilised by other processes. This issue primarily arises in a priority-based scheduling system where requests with high priority are processed first and those with low priority take longer to process.

What exactly does starvation mean in operating systems?

Problems arise when high-priority requests lead low-priority processes to become stalled for an extended period of time. The low-priority process cannot get the processor or resources because of a constant stream of high-priority demands. Starvation typically occurs when a task is postponed for an endless amount of time. The operating system requires the following resources to respond to process requests:

  • I/O access to disk or network
  • Memory
  • Disk space
  • Bandwidth of network
  • CPU time


What Leads to Starvation?

Following are a few causes of OS starvation:

  • If a higher priority operation uses a CPU continuously, a low priority process may wait indefinitely in starvation.
  • Deadlock does not happen because low-priority processes do not interact with resources, but because they are stuck in a waiting state, there is a risk of starving.
  • Thus, hunger is a fail-safe strategy, as it prevents deadlock temporarily but has an overall negative impact on the system.
  • The main contributor to starving may be the fact that not enough resources are available to meet all needs.
  • There is a chance that a process may have to wait for a long time if a process selection is random.
  • Starvation can also happen when an improper resource allocation prevents a process from ever receiving a resource for use.


Various Approaches to Tackle Starvation

The following are some options for dealing with the starving condition in OS:

  • To make sure that resources are distributed equally, a freelancing manager should be in charge of CPU resource allocation.
  • Starvation happens as a result of random process method selection, which should be avoided.
  • To prevent starvation, the ageing criterion for processes should be taken into account while allocating resources.
  • To prevent starvation, a scheduling method with a priority queue can be utilised.
  • If the random approach must be employed, treat starvation by combining it with a priority queue.
  • The multilevel feedback queue can also be utilised to prevent operating system starvation.


Example:

The P2 process is given the highest priority in the example, while P1 is given the lowest priority. There are n processes that are ready to be executed, as shown in the diagram. As a result, P2 will enter the CPU as the process with the greatest priority, while P1 will continue to wait for its turn because P1 is low on the priority list for all other processes. Starvation is the term used to describe the state in which the process is waiting.

  • Causes of Starvation in OS:
  • If a higher priority operation uses a CPU continuously, a low priority process may wait indefinitely in starvation.
  • Resources are not available in sufficient quantities to meet all needs.
  • There is a chance that a process may have to wait for a long time if a process selection is random.
  • Due to improper resource allocation, a process is never given a resource to use for execution.
  • Various OS Starvation Management Techniques
  • To make sure that resources are distributed equally, a freelancing manager should be in charge of CPU resource allocation.
  • It is best to avoid selecting a process approach at random.
  • It is important to take processes' ageing requirements into account.
  • There is a chance that a process may have to wait for a long time if a process selection is random.
  • Starvation can also happen when an improper resource allocation prevents a process from ever receiving a resource for use.



Nikita Mitna

53003230109

Div-A



Comments ()


Sign in

Read Next

Memory Management

Blog banner

Virtual memory

Blog banner

Bit Coins

Blog banner

Cache memory

Blog banner

MODERN OPERATING SYSTEM

Blog banner

GOOGLE

Blog banner

Digital Balance: Keeping Children Mindful in the Screen Age

Blog banner

DEVELOPMENTS LEADING TO MODERN OPERATING SYSTEMS

Blog banner

CYBERPEACEKEEPING: NEW WAYS TO PREVENT AND MANAGE CYBERATTACKS

Blog banner

Embaded operating system

Blog banner

Amazon

Blog banner

Sensory Play for Toddlers: Boosting Curiosity Through Touch, Sound, and Colour

Blog banner

Modern operating system

Blog banner

Why Data Security Is Important

Blog banner

Twisted world

Blog banner

Caching windows

Blog banner

Dekkers Algorithm : Ensuring Safe Process Synchronization

Blog banner

Answer

Blog banner

objectives and functions of operating system

Blog banner

Types of Threads

Blog banner

Threads Concurrency: Mutual Exclusion and Synchronization

Blog banner

Process states

Blog banner

Internet of Things and cyber security

Blog banner

Deadlock and starvation

Blog banner

Full Disk Encryption

Blog banner

Data Structures

Blog banner

Mumbai Metro 3

Blog banner

Exploring Human Factors in Cyber Forensics Investigations.

Blog banner

Threats To Computer System

Blog banner

Simple AI Symptom Diagnosis Using LISP – Rule-Based Expert System

Blog banner

Benefits of Yoga

Blog banner

Google classroom

Blog banner

Bharat Maps

Blog banner

A-B-C of Networking: Part-3 (Topology [Ring, Tree, Mesh])

Blog banner

"Audit" In Data Science

Blog banner

RSA (Rivest-Shamir-Adelman) Algorithm

Blog banner

Uniprocessor scheduling

Blog banner

Never give up

Blog banner

Challenges and risks in service operations

Blog banner

E-security systems | CCTV

Blog banner

POSITIVE ATTITUDE IN LIFE

Blog banner

Not anti-social, but pro-solitude

Blog banner