This technical overview by veteran real-time instructor David Kalinsky examines a number of design patterns used to architect high-availability embedded systems that utilize a real-time operating system. The design of high availability systems is based on a combination of redundant hardware components and software to manage fault detection and correction, to achieve “five-nines” (99.999%) or greater availability, equivalent to less than 1 second of downtime per day.