计算机系统容错技术解析

前言:寻找写作灵感?中文期刊网用心挑选的计算机系统容错技术解析,希望能为您的阅读和创作带来灵感,欢迎大家阅读并分享。

计算机系统容错技术解析

计算机是一个较为复杂的系统,为确保其运行稳定性和可靠性,应当在系统设计时,对容错技术进行合理运用。基于此点,文章从容错的常用方法分析入手,论述了容错技术在计算机系统中的具体应用。期望通过本文的研究能够对计算机系统性能的提升有所帮助。

1容错的常用方法

1.1冗余

这是计算机系统容错最为基本的途径之一,通过冗余可以大幅度提升系统的容错性能。大体上可将冗余分为两类,一类是时间冗余,另一类是空间冗余。前者是指借助重复计算过程来实现系统容错;后者是指利用额外的资源来实现系统容错,按照使用的冗余资源,可将之细分为硬件冗余、软件冗余、信息冗余等等。

1.2回滚恢复容错

这是一种通过对计算状态进行周期性保存来达到容错目的的方法。计算机系统在运行的过程中,如果出现故障问题,通过回滚恢复,可以使应用程序回到之前保存的某个状态处,重新对程序进行执行。该容错方法是时间冗余与空间冗余的有机结合,最早出现在分布式系统当中,随着技术的逐步完善,其在并行计算领域中得到广泛应用。

1.3TRM容错

这是目前计算机系统中应用最为广泛的容错技术,一个基本的TRM系统由三个完全相同的模块和一个投票器组成,三个模块会同时对输入的数据进行接收,每个模块将生成的结果发送给投票器,并由投票器通过投票的方式进行表决,其输出的数据主要取决于三个输入中多数一方的结果。如果三个模块中的某一个发生故障,其它两个模块可以保持正常运行,并对故障模块的错误输出进行掩盖,这样一来,投票器的输出结果便可以保持正确。容错系统可靠运行的条件是至少有两个模块需要始终保持正常。

1.4检查点技术

这是一种通过保留与恢复来达到容错目的的方法,其基本的技术原理如下:定期将执行状态存储于稳定的介质当中,当系统发生故障后,可从该介质中对状态进行恢复。被保存的状态即检查点,含有检查点的磁盘为检查点文件。如果计算机系统中加入检查点技术,运行中发生故障时,那么系统则可从故障中快速恢复正常,由此可确保系统的稳定运行,减轻了相应的损失。在计算机系统中,检查点的类型有两种,一种是局部,也就是所谓的单进程,另一种是全局,即并行程序。通过相关协议的设计,检查点可实现程序的快速恢复。在实际应用中发现,检查点技术存在如下不足:很难对软错误进行检测、开销大、可扩展性差、容易出现存储失效的情况。为了解决上述问题,业内的专家学者经过不断研究,对检查点技术进行优化改进,开发出无盘和增量两种检查点技术,前者是通过对计算机系统的内存进行利用,达到减少记录检查点开销的目的;后者则是通过保存必须的程序来减少存储开销。

2容错技术在计算机系统中的具体应用

2.1容错的实现步骤

在计算机系统中对容错技术进行应用的过程中,容错的具体实现步骤如下:

2.1.1对系统故障问题进行自动检测

由上文可知,计算机系统出现故障后,会导致错误,由此可能会引起失效。而部分失效会造成系统的逻辑故障。在对逻辑故障进行检测时,可以使用的方法较多,其中较具典型性和代表性的有奇偶校验、一致性校验等等。大体上可将故障检测分为两种类型,一类是脱机,另一类是联机。在脱机状态下,对系统故障问题进行检测时,计算机及相关设备无法正常执行任务,而在联机状态下对系统故障进行检测时,可确保任务与检测过程一并进行,这是联机检测的应用优势,具体可以利用冗余校验的方法进行联机检测(田丽娜,王海龙,计算机系统容错技术分析:科技展望,2016)。

2.1.2故障限制与屏蔽

通常情况下,计算机系统中的故障都会出现在某个部位,但由于系统本身是一个整体,所以局部故障可能会影响到其它的功能,为使故障的影响范围降至最低程度,需要对故障进行限制,这是容错技术在计算机系统中应用时较为重要的一个作用。通过故障限制,将故障的传播限定在一个特定的区域内,避免对其它的区域造成影响。故障屏蔽是掩盖失效的一种方法,从本质上讲,就是利用冗余解决错误信息,比较常见的故障屏蔽为多数表决。

2.1.3重试与诊断

计算机系统是一个较为复杂的系统,在对系统进行首次操作时,可能无法成功,但再次操作却可以成功。这种情况大多是因为瞬时故障引起,其通常不会造成物理破坏,所以只需要通过重试便可进行解决。容错技术中的诊断,则是在故障检测并未提供故障性质、发生位置等信息的情况下,对故障进行准确判断的做法。

2.1.4重组与恢复

当容错系统检测到计算机当中存在故障问题时,并判断该故障为永久性故障后,通过重组,可对失效的器件进行替代,并将其从系统中隔离出去。这一过程也可通过冗余系统来完成,由此可以使计算机系统的性能得到保障。经过重组之后,需要将计算机系统中的错误消除掉,此时系统会回到故障检测前的某个点上,并从该点重新开始操作。为确保系统在故障后能够快速恢复,既要有备份文件和检验点,还要有应用记录。

2.1.5重启

当计算机系统中出现的错误导致大量的信息被破坏,并且系统未设计恢复功能,这样系统无法通过自动恢复来消除错误的影响(刘娟,高可靠计算机系统的容错技术分析:计算机产品与流通,2018)。如果系统在出现错误时,并未遭到破坏,可以通过重新启动来恢复相关的操作。重启分为两种方式,一种是热重启,在这种重启方式下,不会对系统造成任何损失,另一种是冷启动,这种方式下,系统需要对相应的程序进行重新加载。

2.1.6修复与重构

通过诊断找到计算机系统中某个故障元件后,可用完好的元件进行替换,从而快速消除故障,使系统恢复正常运行。容错技术中的修复,既可以在脱机的状态下进行,也可在联机的情况下完成。当元件替换后,应当使修复的模块重新加入到系统当中,这个过程即为重构。

2.2实现容错的方法

计算机系统实现容错时,需要对如下技术方法进行运用:

2.2.1自动检验

当计算机系统中出现故障时,在恢复错误前,系统应当具备发现错误及其成因的能力,也就是说,容错离不开自动检验的支撑。所谓的自动检验是一种快速检测系统故障的方法,可以通过自动检验装置来实现。系统容错设计时,通过自动检验的运用,可使系统对错误进行及时处理(仇宇婕,计算机控制系统可靠性技术分析:山东工业技术,2018)。

2.2.2自动备份

通过自动备份,可以使容错系统及时对丢失或是损坏的数据进行恢复,从而保证计算机系统在遭受无法抵御的破坏时,重要数据信息不会丢失。

2.2.3事务跟踪

在计算机系统容错设计中,事务跟踪主要针对的是用户软件和数据库的运行而设计的,其能够确保系统损坏时,数据信息的一致性。

3结论

总而言之,计算机系统在人们日常工作、生活中的使用越来越广泛,保证系统的运行可靠性尤为重要。为实现这一目标,应当对容错技术进行合理运用。鉴于此,在未来一段时期,应加大对容错技术的研究力度,除对现有的技术和方法进行优化改进与完善之外,还应加快开发一些新的容错技术,从而使其能够更好地为计算机系统服务。

作者:雷利香 单位:枣庄科技职业学院