Explain how the system can deal with the starvation problem, Operating System

Assignment Help:

Q. Can a system detect that some of its processes are starving? If you answer "yes," explain how it can. If you answer "no," explain how the system can deal with the starvation problem.

Answer: Starvation is a difficult topic to define as it may signify different things for different systems. For the cause of this question we will define starvation as the situation whereby a process must wait beyond a reasonable period of time-perhaps indefinitely-prior to receiving a requested resource. One way of noticing starvation would be to first identify a period of time-T-that is considered unreasonable. When a process desires a resource a timer is started. If the elapsed times go beyond T then the process is considered to be starved.

One approach for dealing with starvation would be to adopt a policy where resources are assigned only to the process that has been waiting the longest. For instance if process Pa has been waiting longer for resource X than process Pb the request from process Pb would be deferred until process Pa's request has been satisfied.

An additional strategy would be less strict than what was just mentioned. In this situation a resource might be granted to a process that has waited less than another process providing that the other process isn't starving. Nevertheless if another process is considered to be starving its request would be satisfied first.


Related Discussions:- Explain how the system can deal with the starvation problem

Explain linked list allocation using index, Linked list allocation using in...

Linked list allocation using index The blocks don't have a fixed size. Pointers are utilized to point to the next block in a file. The pointers are set aside as a separate tabl

Pstree, Construct a process tree similar to Figure 1. Look up the Linux com...

Construct a process tree similar to Figure 1. Look up the Linux command pstree -p and describe what it does. Then type in the command the capture the output.

What are the multithreading models, What are the multithreading models? ...

What are the multithreading models? There are three models:- a) Many-to-One model b) One-to-One model c) Many-to-Many model

Thread pools, Another solution then would be to keep a pool of threads. Whe...

Another solution then would be to keep a pool of threads. Whenever a new task arrives, the system would simply get a thread from pool and set that thread to work on the given task.

Define lazy swapper, Define lazy swapper. Rather than swapping the enti...

Define lazy swapper. Rather than swapping the entire process into main memory, a lazy swapper is used. A lazy swapper never swaps a page into memory unless that page will be ne

Computers, What is operating system?

What is operating system?

What is a path name, What is a path name? A pathname is the path from t...

What is a path name? A pathname is the path from the root by all subdirectories to a specified file. In a two-level directory structure a user name and a file name explain a pa

Is disk scheduling except fcfs scheduling, Q. Is disk scheduling except FC...

Q. Is disk scheduling except FCFS scheduling useful in a single-user environment? describe your answer. Answer: In a single-user environment the I/O queue typically is empty.

Determine the reasons for poor response time, Determine the reasons for Poo...

Determine the reasons for Poor response time Process busy or High I/O rates or High paging rates

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd