There are many different strategies used for scheduling in computers.
This section examines a simple strategy, with no allowance for process
prioritisation, this is the Batch Processing algorithm, and has the following
The model can be considered as an M/G/1 case.
Each process gets as much time as it needs to complete
There is a single FIFO queue for processes waiting to be processed
New processes are placed on the back of the queue
It is clear that the average response time of the system for a process
that takes x seconds to complete, T(x), will be the time spent waiting
in the queue, plus the time to complete the process:
For an M/G/1 queue:
Notice how the wait time is totally independent of the job's length, thus
batch processing is completely indiscriminate of job length, but this does
have the disadvantage that short jobs get no priority and thus batch processing
isn't suitable for a time shared system. From the above we can substitute
in W0 to give: