A system and method is disclosed for synchronizing certain periodic activities and/or processes in a computer system or device. The synchronization allows more efficient use of the computer system's or device's processing capabilities, and may result in conservation of electrical power. In one example embodiment, a periodic scheduler is implemented to periodically verify the continued existence of critical processes operating in the computer system or device. Corrective, or other appropriate, action may be taken in the event of a failure of a critical process. A schedule list, which may be a linked list, may be used to track the periodic processes that are to occur. Upon registration of a critical process, the schedule list may be modified to synchronize the new periodic process with the existing schedule list.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for scheduling periodic events in a computing system, comprising the steps of: storing a schedule list of time entries for a plurality of periodic events, wherein one or more of said periodic events is to occur at one or more times represented by said list of time entries; receiving a registration request for a new periodic event from a process, wherein said registration request includes period time data for said new periodic event; comparing said period time data with said schedule list to determine whether said new periodic event can occur at one or more of said times represented by said schedule list of time entries; and modifying said schedule list of time entries responsive to said step of comparing.
2. The method of claim 1 , wherein said period time data includes a plurality of time values.
3. The method of claim 2 , wherein one of said plurality of time values in said period time data indicates an open end of a time range.
4. The method of claim 1 , wherein said step of modifying includes the step of storing an indication that said new periodic event is to occur at one or more of said one or more times represented by said schedule list of time entries.
5. The method of claim 1 , wherein said step of modifying includes the step of adding one or more new time entries to said schedule list of time entries.
6. The method of claim 5 , wherein said step of modifying further includes the step of extending said schedule list of time entries such that a last entry in said schedule list is a common multiple of a plurality of periods of said plurality of periodic events.
7. A computer-readable medium having computer-executable instructions for performing the steps recited in claim 1 .
8. A method for carrying out periodic events, comprising the steps of: storing a schedule list of time entries corresponding to a plurality of periodic events; receiving a request to schedule a new periodic event, wherein said request includes a minimum time parameter and a maximum time parameter; assigning said new periodic event to a first entry in said schedule list if both said minimum time parameter and said maximum time parameter are wildcard values; assigning said new periodic event to a first entry in said schedule list if said minimum time parameter is a wildcard value, and said maximum time parameter is greater than or equal to a time value in said first entry in said schedule list; and assigning said new periodic event to a last entry in said schedule list if said maximum time parameter is a wildcard value, and said minimum time parameter is less than or equal to a time value of said last entry.
9. The method of claim 8 , further comprising the steps of: adding a new entry to said schedule list if said minimum time parameter is a wildcard value and said maximum time parameter is less than a time value of said first entry in said schedule list; and extending said schedule list until a last entry in said list is a common multiple of a plurality of periods for said plurality of periodic events.
10. The method of claim 8 , further comprising the steps of: adding a new entry to said schedule list if said maximum time value is a wildcard value and said minimum time value is greater than a time value of a last entry in said schedule list, wherein said new entry includes a time value that is an integer multiple of a time value in said last entry in said schedule list; and extending said schedule list until a last entry in said list is a common multiple of a plurality of periods for said plurality of periodic events.
11. A computer-readable medium having computer-executable instructions for performing the steps recited in claim 8 .
12. A method for monitoring processes in a computing system, comprising the steps of: maintaining a schedule list of processes to be monitored, said schedule list including one or more entries identifying one or more times at which said processes are to be monitored; receiving a request to add a new entry to said list, wherein said request includes an identification of a new process to be monitored and a frequency with which said new process is to be monitored; and synchronizing said new entry with one or more entries on said schedule list such that said new process is monitored at times synchronized with said one or more entries.
13. The method of claim 12 , wherein said step of synchronizing includes the step of determining whether said frequency corresponds to said one or more entries in said schedule list.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
February 16, 2001
July 12, 2005
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.