Minimizing timing uncertainties is a key constraint for real-time operating systems. Real-time embedded applications can tolerate some software-timing uncertainty but need the system to be deterministic for worst-case situations. The harder the real-time requirements, the tighter the timing uncertainties need to be. Exceeding these timing tolerances may cause system degradation, or worse, cause the application to exhibit erroneous or fatal behavior. Many possible sources of software-timing uncertainty exist, and a development team can often account for them if its members properly consider them. Production designs that experience timing-threshold violations often have timing-uncertainty sources that interact with each other in unconsidered ways.
展开▼