恢复块方案是 软件 这是一种基于设计多样性和向后错误恢复的容错技术。它将程序结构化为一系列模块,每个模块包含一个主模块、一个验收测试模块以及一个或多个备用模块。如果主模块的输出未能通过验收测试,则系统状态恢复,并执行备用模块。

(图片仅供参考)
恢复块方案是 软件 这是一种基于设计多样性和向后错误恢复的容错技术。它将程序结构化为一系列模块,每个模块包含一个主模块、一个验收测试模块以及一个或多个备用模块。如果主模块的输出未能通过验收测试,则系统状态恢复,并执行备用模块。
由Brian Randell提出的恢复块概念是一种实现软件容错的结构化方法。其基本原理是为给定的操作提供冗余的软件模块(称为备选方案),并结合一种机制来验证操作结果的正确性。关键组件包括:验收测试(AT)、主备选方案(P)和一系列辅助备选方案(Q1、Q2、Q3)。在执行主备选方案之前,系统会保存其当前状态的检查点。P完成后,系统会对输出运行验收测试。验收测试是验证结果是否可接受的关键逻辑;它不需要证明绝对正确性,而是验证结果是否合理且一致。
如果验收测试 (AT) 的结果通过,则丢弃检查点,程序继续执行。但是,如果验收测试失败,或者主备选方案本身执行失败(例如,由于运行时错误),系统将执行回滚操作。它会从保存的检查点恢复状态,然后执行序列中的下一个备选方案 (Q1)。Q1 的输出随后将接受相同的验收测试。此过程持续进行,直到某个备选方案产生通过测试的结果,或者所有备选方案都已执行完毕,此时将宣布系统级故障。
恢复模块的有效性取决于备选方案的多样性。主模块和辅助模块应独立设计和实现,理想情况下由不同的团队使用不同的算法或编程语言完成。这最大限度地降低了所有备选方案中存在共同设计缺陷(bug)的可能性,否则所有备选方案都会以相同的方式通过验收测试。验收测试本身就是一个单点故障,因此必须比它所测试的模块更简单、更可靠。与另一种软件容错技术——N版本编程相比,恢复模块由于一次只执行一个模块,因此效率更高,但由于存在回滚和重新执行的可能性,它会引入延迟。
复苏计划
(如果日期未知或不相关,例如“流体力学”,则提供其显著出现的近似估计)
只有注册会员才能免费获得 100% 的全尺寸图片和下载。.
> 登录 <