Designers utilize real-time operating systems (RTOSs) so applications can meet predefined timing constraints. The RTOS guarantees time-related quality of service. Hard real-time systems try to minimize system overhead in areas such as interrupt latency and context switching so application code can respond to external changes and output information in a deterministic fashion.
Hard RTOSs tend to run close to the hardware limits and provide very predictable priority and scheduling mechanisms. This lets developers fit an application into the constraints imposed by the operating system and hardware.
It does not necessarily mean that the system runs as fast as possible. Rather, the system operates as predictably as possible. Typically, the operating system must then prevent an arbitrary application from using operations, such as disabling interrupts, that would have harmful effects on other applications trying to handle time-critical operations.Click here to download the PDF version of this entire article.