Highest response ratio next


Highest response ratio next scheduling is a non-preemptive discipline. It was developed by Brinch Hansen as modification of shortest job next to mitigate the problem of process starvation. In HRRN, the next job is not that with the shortest estimated run time, but that with the highest response ratio defined as
This means, the jobs that have spent a long time waiting compete against those estimated to have short run times.

Algorithm

given a Linked list Q, iterate through Q to find the highest ratio by comparing each ratio within the queue. Once a ratio of element N is greater than the element M with the highest ratio replace element M with element N as the highest ratio element in the list. Once the end of the list is reached dequeue the highest ratio element. If the element is at the start of the list, dequeue it and set the list to its next element, returning the element. Otherwise N's neighbours are reassigned to identify each other as their next and previous neighbour, returning the result of N.