Patent ID: 6920632

Claim:
In a data processing system, a method of selecting tasks for execution by one or more system resources comprising the steps of: (a) placing a task set into circuit modules arranged in a predetermined order determined by a task ID code, each of said circuit modules comprising a bid constructor circuit for constructing a bid for each task, said bid comprising at least a priority code and said task ID code, the bid comprising an integral portion and a fractional portion, the integral portion being determined by the priority code and the fractional portion indicating whether the task has been previously executed; (b) establishing in each of said circuit modules a single priority code for each task in the task set thereby rendering the task set as a round-robin task set; (c) initiating the execution of the round-robin task set in the order established by the task ID code; (d) interrupting the execution of the round-robin task set for a new task comprising a second round-robin task set having a higher priority code than the priority code established for the round-robin task set, wherein said priority codes vary dynamically over time; and (e) after the execution of the new task, resuming the execution of the round-robin set while maintaining the order of said round-robin task set as established in step (a).