In this post we learn about What is understood by jitter associated with a periodic task? Mention techniques by which jitter can be overcome.
What is understood by Jitter Associated with a Periodic Task?
Jitter is the deviation of a periodic task from its strict periodic behavior. The arrival time jitter is the deviation of the task from arriving at the precise periodic time of arrival. It may be caused by imprecise clocks, or other factors such as network congestions. Similarly, completion time jitter is the deviation of the completion of a task from precise periodic points. The completion time jitter may be caused by the specific scheduling algorithm employed which takes up as task for scheduling as per convenience and the load at an instant, rather than scheduling at some strict time instants. Real time programmers commonly handle tasks with tight completion time jitter requirements using any one of the following two techniques:
Mention techniques by which Jitter can be overcome
- If only one or two actions (tasks) have tight jitter requirements, these actions are assigned very high priority. This method works well only when there are a very small number of actions (tasks).
- When it is used in an application in which the tasks are barely schedulable, it may result in some tasks missing their respective deadlines.
- If jitter must be minimized for an application that is barely schedulable, each task needs to be split into two: one which computes the output but does not pass it on, and one which passes the output on.
- This method involves setting the second tasks priority to very high values and its period to be the same as that of the first task.
- An action scheduled with this approach will run one cycle behind schedule, but the tasks will have tight completion time jitter.