← Back to Patent Explorer
US5828878A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and a scheduler for controlling when a server provides service with rate control to an entity

Assignee: Ericsson AB
•
Filing: 1995-06-07
•
Granted: 1998-10-27
•
Expires: 2015-06-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A scheduler for controlling when N entities, where N is an integer greater than or equal to one, are operated upon by a server. The scheduler includes a starting time memory. The starting time memory has only arriving times which are greater than virtual time. The scheduler also includes a finishing time memory. The finishing time memory has finishing times of the N entities whose starting times are less than or equal to virtual time. Additionally, the scheduler includes a virtual clock that keeps track of virtual time so the arriving times and finishing times can be identified. Moreover, the scheduler is also comprised of a controller for choosing entities to be operated upon by the server from the finishing time memory. A method of scheduling when a server provides service to entities.

Inventors

  • 👤 Jon C. R. Bennett

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 13:21
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/48; G06F9/4806; G06F9/4843; G06F9/4881; G06F9/50; G06F9/5005; G06F9/5027; H; H04; H04L; H04L9/00; H04L9/40

Claims Analysis

Total Claims: 44
Claim 1
Independent Claim 248 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities, where 1≦I<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server, said starting time memory having only starting times s i which are greater than virtual time; a finishing time memory having finishing times f i of the N entities, where f i corresponds to the time the i'th entity is to be operated upon by the server, said finishing time memory having finishing times f i of the N entities whose starting times s i are less than or equal to virtual time; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing entities to be operated upon by the server from the finishing time memory, for entering entities into the finishing time memory from the starting time memory whose starting times s i become less than or equal to virtual time, and into the starting time memory whose starting times s i are greater than the virtual time, and for deleting entities from the starting time memory whose starting times s i become less than or equal to virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 2
Dependent Claim 248 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities, where 1≦I<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server, said starting time memory having only starting times s i which are greater than virtual time; a finishing time memory having finishing times f i of the N entities, where f i corresponds to the time the i'th entity is to be operated upon by the server, said finishing time memory having finishing times f i of the N entities whose starting times s i are less than or equal to virtual time; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing entities to be operated upon by the server from the finishing time memory, for entering entities into the finishing time memory from the starting time memory whose starting times s i become less than or equal to virtual time, and into the starting time memory whose starting times s i are greater than the virtual time, and for deleting entities from the starting time memory whose starting times s i become less than or equal to virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 3
Dependent Claim 72 words
A scheduler as described in claim 1 wherein the entities having starting times s i in the starting time memory are sorted in order of descending times with the entity having the smallest starting time being first, and the controller stores entities having starting times s i greater than virtual time in the starting time memory in order of descending starting times with the entity having the smallest starting time being first.
Claim 4
Dependent Claim 69 words
A scheduler as described in claim 2 wherein the finishing times f i in the finishing time memory are sorted in order of descending times with the entity having the smallest finishing time being first, and the controller stores entities having starting times s i less than or equal to virtual time in the order of descending finishing times with the entity having the smallest finishing time being first.
Claim 5
Dependent Claim 33 words
A scheduler as described in claim 3 including a second finishing time memory which stores the corresponding finishing times f i of the entities having starting times stored in the starting time memory.
Claim 6
Dependent Claim 74 words
A scheduler as described in claim 4 wherein the controller takes the starting time s i of an entity in the starting time memory and the corresponding finishing time f i from the second finishing time memory when the entity's starting time s i becomes less than or equal to virtual time and sorts and stores the finishing time f i of the entity in the finishing time memory corresponding to its finishing time.
Claim 7
Dependent Claim 28 words
A scheduler as described in claim 5 wherein the controller provides service from the server to the entity having the smallest finishing time in the finishing time memory.
Claim 8
Dependent Claim 18 words
A scheduler as described in claim 6 wherein the controller causes the virtual clock to increase virtual time.
Claim 9
Dependent Claim 29 words
A scheduler as described in claim 7 wherein the controller causes the virtual clock to increase virtual time a unit of virtual time after a predetermined period of time.
Claim 10
Dependent Claim 52 words
A scheduler as described in claim 7 wherein the controller causes the virtual clock to increase virtual time a unit of virtual time after the server provides service to an entity, or to increase virtual time to equal virtual time of the entity having the earliest time in the starting time memory.
Claim 11
Dependent Claim 182 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities and the identity of at least the entity having the earliest starting time, where 1≦i<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server; a finishing time memory having finishing times f i of the N entities and the identity of at least the entity having the earliest finishing time, where f i corresponds to the time the i'th entity is to be operated upon by the server; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing entities to be operated upon by the server from the finishing time memory and which have starting times s i less than or equal to the virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 12
Dependent Claim 182 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities and the identity of at least the entity having the earliest starting time, where 1≦i<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server; a finishing time memory having finishing times f i of the N entities and the identity of at least the entity having the earliest finishing time, where f i corresponds to the time the i'th entity is to be operated upon by the server; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing entities to be operated upon by the server from the finishing time memory and which have starting times s i less than or equal to the virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 13
Dependent Claim 41 words
A scheduler as described in claim 10 wherein the controller provides service from the server to the entity having the smallest finishing time in the finishing time memory and which has an starting time less than or equal to virtual time.
Claim 14
Dependent Claim 18 words
A scheduler as described in claim 11 wherein the controller causes the virtual clock to increase virtual time.
Claim 15
Dependent Claim 29 words
A scheduler as described in claim 12 wherein the controller causes the virtual clock to increase virtual time a unit of virtual time after a predetermined period of time.
Claim 16
Dependent Claim 52 words
A scheduler as described in claim 12 wherein the controller causes the virtual clock to increase virtual time a unit of virtual time after the server provides service to an entity, or to increase virtual time to equal virtual time of the entity having the earliest time in the starting time memory.
Claim 17
Independent Claim 113 words
A method of scheduling when a server provides service to entities comprising the steps of: requesting service from the server by N entities, where N≧1 and is an integer; storing when each of the N entities first requests service from the server, the identity of each of the N entities which requests service from the server and when each of the N entities is to have received service from the server; and providing an entity of the N entities service which has the earliest receiving time and a request time which is less than or equal to virtual time; and incrementing virtual time by one unit of virtual time after a predetermined time.
Claim 18
Independent Claim 113 words
A method of scheduling when a server provides service to entities comprising the steps of: requesting service from the server by N entities, where N≧1 and is an integer; storing when each of the N entities first requests service from the server, the identity of each of the N entities which requests service from the server and when each of the N entities is to have received service from the server; and providing an entity of the N entities service which has the earliest receiving time and a request time which is less than or equal to virtual time; and incrementing virtual time by one unit of virtual time after a predetermined time.
Claim 19
Dependent Claim 33 words
A method as described in claim 15 including after the providing step, there is the step of repeating the providing step in regard to other entities who have requested service from the server.
Claim 20
Dependent Claim 20 words
A method as described in claim 16 including after the providing step, there is the step of increasing virtual time.
Claim 21
Dependent Claim 27 words
A method as described in claim 17 wherein the incrementing step includes the step of incrementing virtual time one unit of virtual time after a predetermined time.
Claim 22
Dependent Claim 51 words
A method as described in claim 17 wherein the incrementing step includes the step of incrementing virtual time one unit of virtual time after the server provides service to an entity, or increasing the virtual time to equal the smallest virtual time of an entity which requested service from the server.
Claim 23
Independent Claim 112 words
A method for controlling when N entities, where N≧1 and is an integer, are operated upon by a server comprising the steps of: storing in a starting time memory starting times s i of the N entities which are greater than virtual time, where 1≦I<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server; storing in a finishing time memory finishing times f i of the N entities whose starting times s i are less than or equal to virtual time; and providing service from the server to an entity having a finishing time f i in the finishing time memory.
Claim 24
Independent Claim 112 words
A method for controlling when N entities, where N≧1 and is an integer, are operated upon by a server comprising the steps of: storing in a starting time memory starting times s i of the N entities which are greater than virtual time, where 1≦I<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server; storing in a finishing time memory finishing times f i of the N entities whose starting times s i are less than or equal to virtual time; and providing service from the server to an entity having a finishing time f i in the finishing time memory.
Claim 25
Dependent Claim 49 words
A method as described in claim 20 wherein the step of storing in a starting time memory includes the step of sorting the starting times s i of entities in the starting time memory in order of descending times with the entity having the smallest starting time being first.
Claim 26
Dependent Claim 48 words
A method as described in claim 21 wherein the step of storing in a finishing time memory includes the step of sorting the finishing times f i in the finishing time memory in order of descending finishing times with the entity having the smallest finishing time being first.
Claim 27
Dependent Claim 47 words
A method as described in claim 22 including after the step of storing in a starting time memory, there is the step of storing in a second finishing time memory corresponding finishing times f i of the entities having starting times stored in the starting time memory.
Claim 28
Dependent Claim 107 words
A method as described in claim 23 including after the step of storing in the second finishing time memory, there are the steps of taking the starting time s i of an entity in the starting time memory and the corresponding finishing time f i from the second finishing time memory when the entity starting time s i becomes less than or equal to virtual time, sorting the finishing time f i from the second finishing time memory with the finishing times f i in the finishing time memory, and storing the finishing time f i from the second finishing time memory in the finishing time memory.
Claim 29
Dependent Claim 37 words
A method as described in claim 24 wherein the providing step includes the step of providing service from the server to the entity whose finishing time f i has the smallest finishing time in the finishing memory.
Claim 30
Dependent Claim 21 words
A method as described in claim 25 including after the providing service step, there is the step of increasing virtual time.
Claim 31
Dependent Claim 29 words
A method as described in claim 26 wherein the increasing step includes the step of increasing virtual time a unit of virtual time after a predetermined period of time.
Claim 32
Dependent Claim 51 words
A method as described in claim 26 wherein the increasing step includes the step of increasing virtual time a unit of virtual time after the server provides service to an entity, or increasing virtual time to equal virtual time of the entity having the earliest time in the starting time memory.
Claim 33
Dependent Claim 191 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities and the identity of at least the entity having the earliest starting time, where 1≦i<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server; a finishing time memory having finishing times f i of the N entities and the identity of at least the entity having the earliest finishing time, where f i corresponds to the time the i'th entity is to be operated upon by the server; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing the entity having the earliest finishing time from the N entities in the finishing time memory to be operated upon by the server and which has an starting time less than or equal to the virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 34
Dependent Claim 191 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities and the identity of at least the entity having the earliest starting time, where 1≦i<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server; a finishing time memory having finishing times f i of the N entities and the identity of at least the entity having the earliest finishing time, where f i corresponds to the time the i'th entity is to be operated upon by the server; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing the entity having the earliest finishing time from the N entities in the finishing time memory to be operated upon by the server and which has an starting time less than or equal to the virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 35
Dependent Claim 262 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities, where 1≦I<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server, said starting time memory having only starting times s i which are greater than virtual time; a finishing time memory having finishing times f i of the N entities, where f i corresponds to the time the i'th entity is to be operated upon by the server, said finishing time memory having finishing times f i of the N entities whose starting times s i are less than or equal to virtual time; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing the entity having the smallest finishing time in the finishing time memory of the entities in the finishing time memory to be operated upon by the server, for entering entities into the finishing time memory from the starting time memory whose starting times s i become less than or equal to virtual time and into the starting time memory whose starting times s i are greater than the virtual time, and for deleting entities from the starting time memory whose starting times s i become less than or equal to virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 36
Dependent Claim 262 words
A scheduler for controlling when N entities, where N is an integer ≧1, are operated upon by a server comprising: a starting time memory having starting times s i of the N entities, where 1≦I<N and is an integer, and s i corresponds to the time the i'th entity first requests service from the server, said starting time memory having only starting times s i which are greater than virtual time; a finishing time memory having finishing times f i of the N entities, where f i corresponds to the time the i'th entity is to be operated upon by the server, said finishing time memory having finishing times f i of the N entities whose starting times s i are less than or equal to virtual time; a virtual clock that keeps track of virtual time so the starting times s i and finishing times f i can be identified; and a controller for choosing the entity having the smallest finishing time in the finishing time memory of the entities in the finishing time memory to be operated upon by the server, for entering entities into the finishing time memory from the starting time memory whose starting times s i become less than or equal to virtual time and into the starting time memory whose starting times s i are greater than the virtual time, and for deleting entities from the starting time memory whose starting times s i become less than or equal to virtual time, said controller connected to the starting time memory, finishing time memory, and virtual clock.
Claim 37
Dependent Claim 18 words
A scheduler as described in claim 29 wherein the controller causes the virtual clock to decrease virtual time.
Claim 38
Dependent Claim 18 words
A scheduler as described in claim 30 wherein the controller causes the virtual clock to decrease virtual time.
Claim 39
Independent Claim 145 words
A method for controlling when entities are operated upon by a server comprising the steps of: receiving requests for service by a server from the entities, each of said requests having a starting time, a finishing time when the respective entity is to have received service from the server, and an identity associated with the respective entity; placing in a starting time memory the starting time and the identity of each request; placing in a finishing time memory the finishing time and the identity of each request; identifying the identity of the entity having the earliest finishing time in the finishing time memory; determining whether the entity whose identity has the earliest finishing time has a starting time earlier than virtual time; and providing service by the server to the entity with the earliest finishing time if its starting time is earlier than virtual time.
Claim 40
Independent Claim 145 words
A method for controlling when entities are operated upon by a server comprising the steps of: receiving requests for service by a server from the entities, each of said requests having a starting time, a finishing time when the respective entity is to have received service from the server, and an identity associated with the respective entity; placing in a starting time memory the starting time and the identity of each request; placing in a finishing time memory the finishing time and the identity of each request; identifying the identity of the entity having the earliest finishing time in the finishing time memory; determining whether the entity whose identity has the earliest finishing time has a starting time earlier than virtual time; and providing service by the server to the entity with the earliest finishing time if its starting time is earlier than virtual time.
Claim 41
Dependent Claim 74 words
The method as described in claim 33 wherein after the providing step, there are the steps of deleting the identity, starting time, and finishing time of the entity from the starting time memory and finishing time memory if the entity is provided with service; providing service by the server to the entity having the earliest finishing time in the finishing time memory if the entity also has a starting time earlier than virtual time.
Claim 42
Dependent Claim 32 words
The method as described in claim 34 wherein after the second providing step, there is the step of incrementing virtual time to equal the earliest starting time in the starting time memory.
Claim 43
Dependent Claim 27 words
A method as described in claim 34 wherein after the second providing step, there is the step of incrementing virtual time by a unit of virtual time.
Claim 44
Dependent Claim 50 words
A method as described in claim 33 wherein after the providing step, there is the step of providing service to the entity having the earliest starting time that is also earlier than virtual time if the entity with the earliest finishing time has a starting time later than virtual time.

References Cited (Backward Citations)

US5142533A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-10-26 2002-04-27 2002-10-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-10-26 2006-04-27 2006-10-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-10-26 2010-04-27 2010-10-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag