In order to explore different methods of allocating processing power to jobs we employ a slightly modified version of the generalization of processor allocation policies proposed by Brecht [3]. In this generalization, is the characteristic of job being used to make the allocation decision, P is the number of processors in the system, N is the number of jobs currently executing, is the control that determines the actual allocation policy, and is the number of processors allocated to job as a result of the policy. The generalization is defined as:
Different values of represent various points on a spectrum of processor allocation strategies. The chosen acts as both a means of selecting the degree of processor sharing and as a control on which jobs should be given larger portions of the processors. Different values of can be used to make allocation decisions based on different job characteristics. For example, using , we have policies that base allocation decisions on work. In this case larger positive values of allocate a greater portion of processors to jobs with more work (larger jobs) while larger negative values of allocate a greater portion of processors to jobs with less work (smaller jobs). Specific values of worth noting (when using ) are:
We consider dynamic scheduling policies that allocate or reallocate processors at job arrival and departures (if required). The scheduling algorithm limits the number of jobs active at any time, N, to be less than or equal to the number of processors, P.