如果冗余系统基本相同,那么冗余系统如何降低故障率?

时间:2012-09-12 09:44:41

标签: testing redundancy system-analysis

在系统分析课中,讲师谈到了冗余系统。她讲述了一个故事,其中3个独立系统可以降落飞机,并且在测试运行中所有3个同时失败(不知何故飞行员仍然有时间手动降落)。我不明白为什么冗余系统会有所帮助?如果系统A无法与起落架通信,系统B和C也不能,对吧?冗余系统背后的想法“让我们希望其中一个没有错误”?如果是,那么在发现错误时就不会太迟(例如主系统发生故障,所以切换到二级,哦,等待飞机爆炸)?

在我看来,多余的系统就像是在说“这是同一个工具制造了一系列不同的方法,但如果你需要一个不同的工具,那你的运气不好”。

1 个答案:

答案 0 :(得分:4)

相同的系统有助于防止某类故障,即设备中的电子或物理故障,如果这是一种非确定性故障。换句话说,如果您在RAID 5排列中有3个硬盘驱动器,则可以防止一个硬盘驱动器出现故障,但如果有两个硬盘驱动器,则会从备份时间恢复。硬盘驱动器的头部崩溃,电子故障等都是这种事情可以防止的错误。

它无法防范的是由所有三个系统中的软件错误引起的确定性故障。回到你的RAID 5阵列,如果硬盘驱动器是相同的,并且控制器中有一个错误导致磁头在所有三个磁盘上写入损坏的数据,那么你有三个写入损坏数据的硬盘驱动器的事实是否定的真正的安慰。

作为一个好人,real world example在这里,一队F22战斗机从夏威夷飞到日本,当他们越过国际日期线并经历了航空电子设备转储。显然,从某些来源,他们失去了惯性参考,一些空中数据,一些通信,武器系统的一切。一个软件错误显然没有正确处理日期线并锁定了所有冗余系统。该中队不得不返回基地并没有仪器降落。如果天气恶劣,计算机崩溃将导致飞机坠毁,但我们希望飞行员能够弹出。

此外,您在冗余系统中遇到了更复杂的故障情况,这些对于维护安全性的个人而言,在出现问题时通常难以进行故障排除。例如how is the failure of the second system handled?这导致至少一架飞机的恐怖和受伤。在这种情况下,第二迎角单元(空气数据/惯性参考单元的一部分)的故障导致系统使用来自第一个故障传感器的输入,这首先引起非命令性爬升然后引起非命令性下降。飞机安全着陆,但这是坐在飞机上时系好安全带的好理由!

因此,一如既往,在稳健性和能够证明对所有可能的失败状态的优雅处理之间存在权衡。一般来说,在航空业中,这被认为是一种积极的权衡,但它不是免费的。