Object-oriented system having anonymous scheduler design pattern
First Claim
1. A method for interfacing to a system having at least one control input, said method comprising the steps of:
- determining at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically defining a resource usage for each of said events; and
subsequent to determining at least one event associated with said control input, dynamically scheduling a performance of said events based on said resource usage and a required quality of service using an object oriented class pattern.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are disclosed for scheduling control inputs in an embedded real-time system through anonymous events. An object-oriented design pattern is provided that treats all events anonymously using an abstracted interface. Events are said to be anonymous since the details of each event are irrelevant, i.e., only the resource usage of the event is characterized and exposed. Deadlines and priorities are assigned to each event, as appropriate for the required quality of service (i.e., urgent events, routine events or deferred events). Response times for each event are appropriate to the quality of service associated with the event. Guaranteed response time determinism for time-critical events is implemented by re-clocking the event to a periodic time indication, such as a video synchronization signal delineating frames in a video feed. Events are validated against system resources at the time the events are submitted to the system to ensure that sufficient resources will exist when the event is to be executed, and if sufficient resources will exist, a commitment is provided.
20 Citations
20 Claims
-
1. A method for interfacing to a system having at least one control input, said method comprising the steps of:
-
determining at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically defining a resource usage for each of said events; and
subsequent to determining at least one event associated with said control input, dynamically scheduling a performance of said events based on said resource usage and a required quality of service using an object oriented class pattern. - View Dependent Claims (2, 3, 4)
-
-
5. A method for scheduling a control input, said method comprising the steps of:
-
determining at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically establishing a deadline and priority for each of said events based on a required quality of service; and
subsequent to determining at least one event associated with said control input, dynamically scheduling a performance of said events based on said deadline and priority using an object oriented class pattern. - View Dependent Claims (6, 7, 8)
-
-
9. A method for scheduling a control input, said method comprising the steps of:
-
determining one or more asynchronous time-critical events associated with said control input;
synchronizing said one or more asynchronous time-critical events to a common time reference having a predefined period; and
establishing a deadline for each of said asynchronous time-critical events that is deterministic with respect to said common time reference. - View Dependent Claims (10, 11, 12)
-
-
13. A method for scheduling a control input, said method comprising the steps of:
-
determining at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically establishing a deadline for each of said events based on a required quality of service;
subsequent to determining at least one event associated with said control input, dynamically determining if sufficient resources exist to perform said event prior to said deadline; and
subsequent to determining at least one event associated with said control input, dynamically providing a commitment to perform said event if sufficient resources exist to perform said event prior to said deadline. - View Dependent Claims (14, 15, 16)
-
-
17. A system for interfacing to a system having at least one control input, said system comprising:
-
a memory for storing computer readable code; and
a processor operatively coupled to said memory, said processor configured to;
determine at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically define a resource usage for each of said events; and
subsequent to determining at least one event associated with said control input, dynamically schedule a performance of said events based on said resource usage and a required quality of service using an object oriented class pattern.
-
-
18. A system for scheduling a control input, said system comprising:
-
a memory for storing computer readable code; and
a processor operatively coupled to said memory, said processor configured to;
determine at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically establish a deadline and priority for each of said events based on a required quality of service; and
subsequent to determining at least one event associated with said control input, dynamically schedule a performance of said events based on said deadline and priority using an object oriented class pattern.
-
-
19. A system for scheduling a control input, said system comprising:
-
a memory for storing computer readable code; and
a processor operatively coupled to said memory, said processor configured to;
determine one or more asynchronous time-critical events associated with said control input;
synchronize said one or more asynchronous time-critical events to a common time reference having a predefined period; and
establish a deadline for each of said asynchronous time-critical events that is deterministic with respect to said common time reference.
-
-
20. A system for scheduling a control input, said system comprising:
-
a memory for storing computer readable code; and
a processor operatively coupled to said memory, said processor configured to;
determine at least one event associated with said control input;
subsequent to determining at least one event associated with said control input, dynamically establish a deadline for each of said events based on a required quality of service;
subsequent to determining at least one event associated with said control input, dynamically determine if sufficient resources exist to perform said event prior to said deadline; and
subsequent to determining at least one event associated with said control input, dynamically provide a commitment to perform said event if sufficient resources exist to perform said event prior to said deadline.
-
Specification