next up previous contents Back to Operating Systems Home Page
Next: Shortest remaining time next Up: Alternative scheduling methods Previous: Round robin (RR)

Shortest process next (SPN)

Nonpreemptive. Assume that the execution time of a program can be accurately estimated in advance. Then a suitable selection criterion is to always pick the shortest process, because in this way throughput is obviously maximised. As obviously, there's a risk of starvation for long processes, and they experience sluggish response times anyway.

A difficulty with this method is that the execution time must be estimated as accurately as possible in advance: if too short a time is specified the scheduler might abort the job. Hence this methods is mainly suitable in a production environment, where the same jobs are often run with about the same amount of data to process (e.g., printing paychecks for a firm every second week), so that a running average of previous execution times is likely to yield a good prediction for the next one.

Franco Callari