n Has been implemented on some Unix OS
n Processes are divided into groups
n Group k has a fraction Wk of the CPU
n The priority Pj[i] of process j (belonging to group
k) at time interval i is given by:
u Pj[i] = Bj + (1/2) CPUj[i-1] + GCPUk[i-1]/(4Wk)
F A high value means a low priority
F Process with highest priority is executed next
F Bj = base priority of process j
F CPUj[i] = Exponentially weighted average of
processor usage by process j in time interval i
F GCPUk[i] = Exponentially weighted average
processor usage by group k in time interval i