Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CPU Scheduling : Finding burst time

In the FCFS scheduling algorithm the drawback is that if a process P1 with a higher burst time comes before some processes P2,P3... with much smaller burst times then the average waiting time and average completion time is pretty high.

A solution to this problem is to schedule the Shortest Job First(SJF Algo).

But how is the burst time computed in advance? Does the developer specify a formula by which (according to the resources available) the burst time to perform a job is computed in advance?

like image 766
Dubby Avatar asked Jul 20 '14 08:07

Dubby


People also ask

How can I tell how long my CPU burst?

Determining Length of Next CPU Burst Can be done by using the length of previous CPU bursts, using exponential averaging. 1. tn = actual length of nth CPU burst 2. τn+1 = predicted value for the next CPU burst 3.

What is Brust time?

Burst time is the amount of time required by a process for executing on CPU. It is also called as execution time or running time. Burst time of a process can not be known in advance before executing the process. It can be known only after the process has executed.

Is burst time same as arrival time?

Arrival time The arrival time of a process is when a process is ready to be executed, which means it is finally in a ready state and is waiting in a queue for its turn to be executed. Each process has a pre-determined arrival and burst time, as highlighted in the table below.


1 Answers

Estimating burst time of a process is a very large topic . in general scheduler estimates the length of the next burst based on the lengths of recent cpu bursts. basically what we do is to guess the next CPU burst time by assuming that it will be related to past CPU bursts for that process .

A quick google search led me to this article which will give you a basic idea .

here is a more detailed article

like image 148
Namit Sinha Avatar answered Sep 16 '22 11:09

Namit Sinha