1

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

在我看来,冗余系统就像在说“这是同一个工具以多种不同的方式制作的,但如果你需要不同的工具,那你就倒霉了”。

4

1 回答 1

4

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

它不能保护的是由所有三个系统中的软件错误引起的确定性故障。回到您的 RAID 5 阵列,如果硬盘驱动器相同并且控制器中存在导致磁头在所有三个上写入损坏数据的错误,那么您有三个硬盘驱动器写入损坏数据的事实是没有的真正的舒适。

因此,作为一个很好的真实世界示例,一个 F22 战斗机中队从夏威夷飞往日本,当时他们越过国际日期变更线并经历了一次糟糕的航空电子设备倾销。显然,从某些来源,他们失去了惯性参考、一些空中数据、一些通信、武器系统的一切。一个软件错误显然没有正确处理日期变更线并锁定了所有冗余系统。该中队不得不在没有仪器的情况下返回基地并着陆。如果天气不好,虽然我们希望飞行员能够弹射,但计算机崩溃会变成飞机失事。

此外,您还有更复杂的冗余系统故障案例,当出现问题时,参与维护安全的人员通常更难排除故障。例如,第二个系统的故障如何处理? 这在至少一个飞机案件中造成了恐怖和伤害。在这种情况下,第二个攻角单元(大气数据/惯性参考单元的一部分)的故障导致系统使用来自第一个故障传感器的输入,这首先导致了无指令的爬升,然后导致了无指令的俯冲。飞机安全着陆,但这是坐在飞机上系好安全带的好理由!

因此,与往常一样,在健壮性和能够证明优雅地处理所有可能的故障状态之间存在权衡。一般来说,在航空领域,这被认为是一个积极的权衡,但它不是免费的。

于 2012-09-12T09:55:45.843 回答