Hard vs Soft Real-Time
A real-time system is judged by whether it meets deadlines, not by raw speed; the cost of a missed deadline separates hard from soft.
Correctness Includes Time
In a real-time system, a result computed too late is wrong even if the arithmetic is perfect. The defining property is not average throughput but the guarantee that responses arrive within a bounded time. This reframes performance engineering: a system that is fast on average but occasionally slow can be worse than one that is uniformly slower yet predictable.
Hard Real-Time
A hard deadline is one whose violation constitutes system failure. Missing it can cause damage, injury, or loss of a physical process. Flight control surfaces, engine ignition timing, and plasma position control are hard: the deadline is a contract with the physical world. Hard systems are designed so the worst case, not the typical case, still meets timing. They are analyzed with worst-case execution time and provable schedules.
Soft and Firm Real-Time
A soft deadline degrades value gracefully when missed. A late video frame lowers quality but does not break the system; the utility of a result decays after its deadline rather than falling to zero. A firm deadline is an intermediate case: a late result has zero value but causes no harm, so it is simply discarded.
- Hard: missed deadline = failure (safety interlocks, motion control)
- Firm: late result is useless but harmless and dropped
- Soft: late result still has reduced value (streaming, telemetry displays)
Design Consequences
Classifying each deadline drives the whole architecture. Hard paths demand deterministic scheduling, bounded interrupt latency, and often static memory allocation to avoid unpredictable pauses. Soft paths can use best-effort operating systems and dynamic resource allocation. Many real systems are mixed-criticality: a single controller runs a hard inner loop alongside soft logging and user-interface tasks, isolated so the soft work can never steal timing from the hard work.
The engineering discipline is to state, for every task, what the deadline is and what happens when it is missed. That single question determines whether you need a formal timing proof or merely a reasonable average.