摘要 |
A method and system of allocating bandwidth between a plurality of competing processes, the method comprising the steps of (a) registering, within a computer, the plurality of processes, each having an assigned priority from highest priority to lowest priority; (b) assigning to each of the plurality of processes a count value relative to each of the process' priority, wherein the lowest priority process is assigned a base count value, and each higher priority process is assigned a count value which is determined based on the ratio of its priority to the process with the lowest priority; (c) determining the process having the highest count value; (d) executing the process having the highest count value, wherein if more than one process has the same highest count value, the currently executing process continues to be executed if it is one of the processes having the highest count value, otherwise, one of the processes having the same highest count value is selected based on a predetermined criteria; (e) decrementing the count value of the currently executing process; (f) repeating steps (c)-(e) until the count value of each process is zero; (g) reassigning the initial respective count values to processes which are not complete; and (h) repeating steps (c)-(g) until each process is complete.
|