RTUComputer ScienceYr 2020 · Sem 82020

Q11Real Time Systems

Question

4 marks

Differentiate between static and dynamic scheduling in real-time systems.

Answer

A definitive architectural contrast between Static and Dynamic Scheduling. Details how Static (offline) scheduling provides absolute mathematical guarantees at the cost of rigidity, while Dynamic (online) scheduling offers flexibility at the risk of catastrophic runtime failure.

The absolute core of a Real-Time System is the mathematical algorithm that dictates exactly which task controls the CPU at any given microsecond. This architecture is strictly divided into two paradigms: Static (Offline) and Dynamic (Online) scheduling.

The entire schedule is mathematically computed before the system is ever turned on.

  • Mechanism: Algorithms like Rate Monotonic Scheduling (RMS) analyze the exact execution times () and periods () of all tasks. Priorities are rigidly hardcoded. The task with the shortest period gets absolute highest priority forever.
  • Merits: Absolute mathematical determinism. If the system passes the offline mathematical schedulability test (e.g., ), it is physically impossible for a deadline to be missed during runtime. Zero runtime overhead because the OS doesn't have to think; it just follows the pre-calculated list.
  • Demerits: Extreme rigidity. It mathematically cannot handle aperiodic tasks or dynamic environments. If a new sensor is added, the entire system must be taken offline and completely recompiled.

The schedule is violently recalculated by the OS during actual execution.

  • Mechanism: Algorithms like Earliest Deadline First (EDF) analyze the current state of the system every time a new task arrives. The OS mathematically calculates the absolute deadlines and dynamically shifts priorities on the fly.
  • Merits: Massive flexibility. It can instantly accommodate chaotic, unpredictable aperiodic events and can mathematically push CPU utilization to exactly 100%.
  • Demerits: High algorithmic overhead (the CPU burns power just calculating who should run next). Furthermore, if an unexpected overload occurs, dynamic systems can suffer catastrophic cascade failures (Domino Effect), missing multiple deadlines unpredictably.
Back to Paper