|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
|
|