1

想象一下汽车的收音机,汽车经过的电磁场,在处理过程中是否有干扰?很容易理解,强字段会损坏数据。但是正在处理的数据呢?也可以改吗?

如果是这样,您如何保护您的代码免受此侵害?(没有电子保护只是代码)

4

3 回答 3

4

对于最强大的任务关键型系统,您可以使用多个处理器并比较结果。这就是我们对飞机自动驾驶(自动着陆)所做的。我们有三个自动驾驶仪,一个驾驶飞机,两个检查那个。如果这三个中的任何一个不同意,它就会被关闭。

于 2008-10-16T11:15:26.090 回答
1

您指的是维基百科所说的软错误正如Jim Cfmsf 所指出的,业界接受的传统解决方法是通过冗余。

几年前,我们维修部门的分析显示,在保存固件的电池供电 SRAM 中,有数量不可接受的退回单元存在单位错误。尽管我们努力进行根本原因分析,但我们无法解释问题的根源。那时,硬件更改是不可能的,因此我们需要一个纯软件解决方案来治疗症状。

我们想要一个可以简单快速地实施的可靠修复,因此我们对 SRAM 中的代码块生成奇偶校验。我们选择的块大小需要很少的额外存储来存储奇偶校验数据,但提供了足够的冗余来检测和纠正我们看到的任何错误,然后是一些错误。它记录它检测到的错误并指示它是否可以纠正它们,因此我们仍然知道现场何时发生位错误。到现在为止还挺好!

我们的产品经理出于好奇做了一些额外的研究,并说服自己,罪魁祸首是宇宙辐射。我们从未明确地证明这一点,但他对错误的数量似乎与根据他发现的数据的预期一致感到满意。我很高兴回报已经停止。

于 2009-07-12T21:59:46.960 回答
0

我怀疑你可以。

更改的代码将无法运行,因此如果您遇到此问题,您的程序可能会崩溃。

这是一个硬件问题。

于 2008-10-16T11:03:17.377 回答