What is Deadline Monotonic Analysis?

  • DMA is a fixed-priority scheduling algorithm used for real-time systems.
  • The priority of each task is assigned based on its deadline: tasks with shorter deadlines have higher priority.
  • Only cases where the deadline is less than or equal to the task period are considered: .
  • DMA is suitable for periodic and sporadic tasks, but not for aperiodic tasks since they do not have a fixed .

Types of Tasks

  1. Periodic Task: Has a known, fixed period , with a repeating pattern.
  2. Sporadic Task: Requests are not periodic, but there is a minimum time between two subsequent requests.
  3. Aperiodic Task: No specified ; requests can occur at any time without a known pattern.

Worst-Case Response Time Calculation

To calculate the worst-case response time of a task , the iterative formula used is:

Where:

  • is the response time in the iteration.
  • is the computation time of task .
  • is the total interference time from higher priority tasks.
  • represents the set of tasks with higher priority than task .
  • is the period of a higher priority task .
  • is the computation time of a higher priority task .

Explanation of Terms

  • The term calculates how many times the higher priority task will execute within the response time of task .
  • The sum adds the computation times of all these executions to determine the interference .

Iterative Calculation Steps

  1. Initialize: Set .
  2. Iterate: Calculate using the above formula.
  3. Convergence Check: If , the iteration stops.
  4. Deadline Check: Verify if . If true, the task meets the deadline.

Jitter Calculation

Jitter is the variability in the response time or delay for a task.

Where:

  • is the maximum delay.
  • is the minimum delay.

With and Without Global Time

  • With Global Time: The jitter calculation remains as above.
  • Without Global Time: The formula changes to:

Priority Assignment

If two tasks have equal deadlines, secondary conditions such as computation time or laxity can be used to determine priority:

  • Laxity is defined as .
  • A task with smaller laxity is typically assigned higher priority.

Interference Time Calculation

The interference time for a task is calculated as:

Where:

  • denotes the set of higher-priority tasks than task .