Why is waiting time a useful criterion to evaluate alternative scheduling algorithms?
Waiting time represents how much time a process could have been doing useful work but didn’t. It is useful because small processes, with minimal waiting time, will tend to clear the system and hence free resources faster, even if total time in a short time window isn’t faster. Since our back of the envelope calculations don’t take into account resource conflicts, they don’t capture this reason for wanting to minimize waiting time. Explain why preemptive SJF is better than nonpreemptive SJF. Use an example to illustrate your point. Pre-emptive SJF is better. If a large job arrives, followed by several smaller jobs, pSJF will switch to the smaller jobs. By contrast, with nonpreemptive SJF, if a large one gets in first, the smaller ones have to wait, reducing the value of the SJF approach of finishing short ones quickly, to minimize overall waiting time. Explain why exponential averaging is a useful way to use history to estimate the length of the next CPU burst. If we used exponential av