列表

详情


论信息系统的可靠性分析与设计
随着企业信息化程度不断提高,企业的正常动作高度依赖于信息系统为其持续不断地提供有效服务,这对信息系统的可靠性提出了更高的要求。为了提高系统的可靠性,需要对系统进行可靠性分析与设计,对信息系统生命周期故障的发生、发展规律进行研究实现预防故障、消灭故障的目标。信息系统的可靠性分析与设计的重要内容是根据业务可靠性需求,建立可靠性模型,反复进行可靠性指标的预计与分配,选择合适方案,逐步将可靠性指标分配到系统各个层次或部件中。

参考答案:


详细解析:

软件容错的基本思想是从硬件容错中引伸而来,利用软件设计的冗余和多样化来达到屏蔽错误的影响,提高系统可靠性的目的。软件容错的主要方法是提供足够的冗余信息和算法程序,使系统在实际运行时能够及时发现程序设计错误,采取补救措施,以提高系统可靠性,保证整个系统的正常运行。

软件容错技术主要有N版本程序设计、恢复块方法和防卫式程序设计等。除上述三种方法外,提高软件容错能力也可以从计算机平台环境、软件工程和构造异常处理模块等不同方面达到。此外,利用高级程序设计语言本身的容错能力,采取相应的策略,也是可行的办法。例如,c++语言中的try_except处理法和try_finally中止法等。
下面是对N版本程序设计、恢复块方法和防卫式程序设计的详细说明。
1、N版本程序设计
N版本程序设计是一种静态的故障屏蔽技术,采用前向恢复的策略,如图1-1所示。
图1-1  N版本程序设计
N版本程序的设计思想是用N个具有相同功能的程序同时执行一项计算,结果通过多数表决来选择。其中N个版本的程序必须由不同的人(小组)独立设计,使用不同的方法、不同的设计语言、不同的开发环境和工具来实现,目的是减少N个版本的程序在表决点上相关错误的概率。
2、恢复块方法
恢复块方法是一种动态的故障屏蔽技术,采用后向恢复策略,如图1-2所示。
图1-2  恢复块方法
恢复块方法提供具有相同功能的主块和几个后备块,一个块就是一个执行完整的程序段,主块首先投入运行,结束后进行验证测试,如果没有通过验证测试,系统经现场恢复后由后备块1运行。后备块1运行结束后也进行验证测试,如果没有通过验证测试,系统经现场恢复后由后备块2运行。重复这一过程,可以重复到耗尽所有的后备块,或者某个程序故障行为超出了预料,从而导致不可恢复的后果。
在程序设计时,应保证实现主块和后备块之间的独立性,避免相关错误的产生,使主块和后备块之间的共性错误降到最低程度。
3、防卫式程序设计
N版本程序设计和恢复块方法都是基于设计冗余的思想,这给程序员和处理机都增加了许多工作,而且它们的结构本身又带来了一些问题和困难,例如,多版本程序设计中的相关性错误问题和恢复块方法中的验证测试的设计等。
防卫式程序设计是一种不采用任何传统的容错技术就能实现软件容错的方法,对于程序中存在的错误和不一致性,防卫式程序设计的基本思想是通过在程序中包含错误检查代码和错误恢复代码,使得一旦发生错误,程序就能撤消错误状态,恢复到一个已知的正确状态中去。
有关容错技术更加详细的内容,请阅读《系统分析师教程》。

上一题