嵌入式系统设计人员经常需要实现那些能在99.999%的业务时间内可靠运行的系统,这意味着一天内系统故障的时间将少于一秒。这些系统称为高可用性系统。高可用性系统的设计通过对冗余硬件和软件进行组合,无需人为干预即可管理故障检测和纠错。本文首先简要回顾了与高可用性系统和故障管理相关的一些概念,然后研究了容错系统的一些硬件和软件设计模式。
故障与失效
在设计高可用性系统时,需要重点关注“故障”和“失效”。为了更好地说明,这里将“失效”定义为系统提供的业务与设计规范不符的情况。故障则是与系统相互作用的一种错误,它是人们通常所指的不期望发生事件的可能原因。因此,故障可能是系统的子系统失效、器件