Patent Document ID: 5381546
Application ID: 08031081
Patent Flag: 1

Claim One:
1. A process executed by a computer for selecting by said computer a next sequential task to be allocation service of a computer processor while scheduling the allocation of services of the computer processor among two or more queues of tasks wherein said queues Q.sub.i are sequentially numbered for i equal to 0, 1, 2,. .. , n-1, comprising the steps of: receiving by said computer probability parameters p.sub.0,. .. p.sub.n-1, where 0.ltoreq.p.sup.i .ltoreq.1 for indicating the relative priorities of said queues 0.sub.i ; assigning by said computer each of said probability parameters p.sub.i to a respective queue Q.sub.i ; selecting by said computer a task from queue Q.sub.i for allocation of service of said computer processor determining by said computer if there is at least another task in queue Q.sub.i ; selecting by said computer a task from queue Q.sub.i+1 modulus (n) for allocation of service of said computer processor, having no other task in queue Q.sub.i ; performing the following steps if there is at least another task in queue Q.sub.i ; generating by said computer a random number M where 0.ltoreq.M.ltoreq.1; comparing by said computer said random number M to said probability parameter p.sub.i ; selecting by said computer the next sequential task to be allocated service of the computer processor, from said tasks in the next sequential queue Q.sub.i+1 modulus (n) if M&gt;p.sub.i and selecting by said computer the next sequential task to be allocated service of the computer processor, from said tasks in queue Q.sub.i if M&lt;p.sub.i.