计算机系统容错技术

2016-08-16 03:28梁皓覃庆勇
大科技 2016年17期
关键词:容错性计算机系统错误

梁皓 覃庆勇

(广西捷通高速科技股份有限公司 广西南宁 530022)

计算机系统容错技术

梁皓1覃庆勇2

(广西捷通高速科技股份有限公司 广西南宁 530022)

随着第三次科技革命的展开,计算机已经普遍的出现在人们的日常生活中了。计算机的出现不仅丰富了人们的日常生活,而且还对社会经济建设产生了重大的影响。随着人们对计算机使用的普遍加强,在使用的过程中不仅对计算机的硬件系统提出了要求,更对计算机系统的稳定运行提出了很高的要求。只有通过加强计算机系统的容错性,才能够从根本上保证计算机系统的稳定性。为此,对于计算机系统容错技术的研究已经成为了当下计算机科学主要的研究方向。

计算机系统;硬件容错技术;软件容错技术

前言

随着电子技术的发展,计算机已经广泛的存在于人们的日常生活以及工作中了。为了能够保证计算机系统的稳定运行,需要对计算机系统的容错性进行提高,所以对计算机系统容错技术的研究就变得格外的重要。在计算机系统工作的过程中不可避免的会出现因为种种因素导致的计算机系统遭受损害或者遭受到错误的指令,计算机的容错性就是指计算机系统能够在遭受到突发情况下,为了保护计算机内部的重要的文件的丢失,而采取的有效的手段避免计算机系统崩溃的现象。随着计算机在日常的生活以及经济建设过程中的广泛应用,为了避免因为计算机遭受损害而造成对企业以及个人的不必要的损失,就必须要对计算机系统的容错性进行加强。

1 计算机系统故障产生原因

目前,计算机已经被广泛的应用在了经济建设、国防建设以及人们日常生活中,由于受到外界的干扰会导致计算机在一定时间内不能提供稳定的服务。计算机系统的故障对于航空航天、国防军事、核能电力、工业化工以及卫生医疗等部门都会造成很严重的损失。为了避免因计算机系统的崩溃而造成的不必要的损失,就必须保证计算机能够在系统运行错误的指令的情况下仍然能够保证不间断的为客户提供相应的服务。为了保证计算机的容错性,计算机科学的工作者就需要对计算机系统的容错性技术进行研究以提高。

通常情况下计算机系统发生的系统错误可以大体上分为硬件错误和软件错误两类。接下来我们就对计算机的硬件系统错误进行简单的介绍。随着国际上电子技术的发展以及集成电路工艺的有效的提高,中央处理器发生瞬时故障概率在急剧的上升。

硬件系统错误产生的原因主要可以归结为以下的几个方面:①晶体管工作电压的下降造成了集成电路噪声容限减少的现象,这样就会造成在硬件使用的过程中主板芯片更加容易受到瞬态故障的影响;②随着微电子技术的不断提高,计算机的中央处理器的主频不断的提高,在CPU主频提高的过程中也增加了其发生故障的几率;③目前集成电路工艺逐步的提高,随着集成度的提高芯片内部的晶体管的数量也在不断的提高,这样也就会增加芯片发生故障的几率。

以上我们对计算机硬件系统影响计算机系统发生故障的原因做出了详细的阐述,在计算机工作的过程中出了有硬件系统之外还存在着软件系统,因此软件系统对计算机系统也会产生很大的影响。由于在计算机软件系统的生命周期内,经常会出现因为设计的错误而导致的整个计算机系统的崩溃。

2 计算机系统的容错技术

以上我们对计算机系统发生故障的原因进行了详细的分析,经过分析可得计算机系统的错误源自于计算机的硬件系统以及计算机的软件系统两个方面。由于计算机的广泛应用,导致了计算机系统的崩溃很可能会对企业以及个人造成严重的经济损失,所以为了能够尽量的避免不必要的损失,我们需要对计算机系统的容错技术进行不断的创新、研究以及突破,以保证我国经济建设的正常进行。接下来我们就从计算机的硬件容错技术以及计算机的软件容错技术两个方面来对计算机系统的容错技术进行详细的介绍。

2.1 计算机硬件容错技术分析

在计算机的硬件系统错误中根据错误的发生的时间以及状态可以将计算机的硬件系统错误分为瞬态错误、间歇性错误以及永久性错误。其中,硬件系统的瞬态错误是计算机系统中经常发生的错误,同时对计算机系统造成的安全性以及可靠性也会造成较大的影响。而间歇性错误是对瞬态错误的发生频率加以控制而产生的硬件系统错误,当瞬态错误的发生频率超过了设定的阈值的时候就成为了间歇性错误。永久性的错误一旦发生就会对计算机造成严重的影响,并且只有通过对原有的电子器件的更换才能解决这些问题。一般情况下,计算机相关的电子器件的老化以及电路的短路都会造成计算机硬件的永久性错误。接下来,我们将从信息冗余量、硬件冗余、时间冗余以及硬件线程冗余四个方面来对计算机硬件系统的容错技术进行分析。

2.1.1 信息冗余

一般情况下计算机硬件的信息冗余可以分为纠错编码以及检错编码两个部分。对硬件系统的信息冗余容错技术主要是通过在原始数据中添加若干的冗余位来实现对计算机系统的故障检测以及故障修复。通过使用纠错编码,可以对计算机硬件系统中的故障进行检测并纠正错误,而使用检错编码能够对计算机系统中的错误进行检测。使用信息冗余的检错方法能够有效的避免因为错误恢复操作而造成的时间延迟,检查成本低廉的基础上还具有处理速度较快的优点。

2.1.2 硬件冗余

硬件冗余是根据动态可重构现场可编程门阵列进行开发的一项新的硬件冗余技术,也是计算机系统容错技术开发最多的一项技术。其中,硬件冗余可以分为很多类,通常情况下根据冗余的程度可以将硬件冗余划分为部分冗余和完全冗余两类。在硬件冗余的完全冗余体系之下又可以分为温备、冷备、热备以及双工四种工作方式。由于硬件冗余是整个计算机容错技术中开发时间最长的一项技术,所以在保证计算机稳定工作的基础之上硬件冗余的技术手段也是最为成熟的。通过使用硬件冗余技术能够很好的将计算机系统的稳定性以及安全性进行提高。

图1 硬件冗余的四种工作方式

2.1.3 时间冗余

在不注意系统时效性的计算机系统上能够通过使用时间冗余来提高没有硬件冗余的计算机系统的容错性。时间冗余是指同一硬件的同一数据在不同的时间片内执行相同的指令集。但是,在使用时间冗余技术的时候会对计算机系统的延时时间造成较大的影响,通常情况下延长时间过短对使系统达不到应有的容错效果,而延时时间过长则会造成其成本的增长。所以,为了能够通过使用时间冗余来达到良好的计算机容错效果,我们必须对计算机的系统延时时间进行合理的掌控。

图2 时间冗余容错方法的一般结构

2.2 计算机软件容错技术的分析

计算机的容错技术除了计算机的硬件容错技术之外还有计算机的软件容错技术。相对于硬件容错系统而言计算机的软件容错技术具有方法多种多样的优势,但是由于开发的时间较短,所以相对于硬件容错技术而言软件容错技术还是不够成熟。经常使用的计算机软件容错技术有软件多样性方法、恢复块方法以及防卫式程序设计方法。按照计算机恢复的不同的方向可以将计算机软件恢复技术分为向前恢复和向后恢复两种,向前恢复是指通过采取有效的措施来弥补因系统的故障而造成的不连贯的现象,并且能够使系统继续向前运行;向后恢复主要是指将系统还原到正确的阶段部分重新运行计算。

2.2.1 恢复块方法

恢复块配置方法主要是将功能相同的主块和后备块进行相互的配置,先将主块启动运行,如果主块在启动运行的过程中出现故障,我们就需要启动备用块进行程序的运行,之后完成整个程序的测试过程。如果在测试的过程中出现故障,在使用了主块和备用块之后均不能排除故障不能完成测试,则我们就可以判断故障为不可恢复故障。为了保证在测试的过程中能够顺利的进行,需要保证程序运行的主块和备用块之间的相互独立性,通过加强主块和备用块之间的独立性,来尽量的减少主块和备用块之间的错误的关联。通过以上的步骤能够尽量的减少因为主块和备用块之间的错误关联导致的程序运行错误,尽量的保证测试计算结果的正确。

图3 恢复快工作的原理图

2.2.2 防卫式程序设计法

防卫式程序设计法与现存的计算机软件容错技术不同,它没有采用任何的传统的容错技术来实现计算机的容错功能,是一种比较传统的保守的容错机制。防卫式的程序设计法主要的工作步骤是:如果在程序运行的过程中出现相关的程序运行错误,程序本身会调用程序自带的检测、恢复代码对整个程序进行相关的处理。通过防卫式程序设计法能够将降程序运行过程中出现的错误,进行必要的检测以及恢复,并使系统自动的返回到上一个正确的状态。通过这种检测方法能够有效的对程序中出现的错误进行必要的检测,除此之外还能够对错误的影响范围、类型等因素进行估计,最终达到错误恢复的效果。

3 总结

随着信息科学的逐步发展,信息对人们的日常生活以及经济建设起到了重大的作用。而在当下计算机已经逐步的深入到了人们生活工作的每个角落,为了能够保证计算机系统的工作稳定性以及可靠性,不可避免的要对计算机系统的容错性进行必要的研发提高。通常情况下,高性能的计算机容错系统具有高的可靠性、错误检测、错误恢复的低延时性、性能的低损耗性以及成本的低廉性等特点。

[1]郭耀辉.探析规则互连多计算机系统的容错性及诊断算法[J].网络安全技术与应用,2014(9):89,91.

[2]邓玉元,李少根.提高系统容错性的软件技术[J].现代电子技术,2006,29(23):33~35.

[3]王高才,王国军,陈建二,等.自适应路由算法优于确定性路由算法[J].小型微型计算机系统,2005,26(2):181~185.

TP302.8

A

1004-7344(2016)17-0235-02

2016-5-11

梁皓(1978-),男,助理工程师,本科,主要从事Etc通信、监控等系统设计、建设和运营管理工作。

覃庆勇(1979-),男,中级工程师,本科,主要从事Etc通信、监控等系统设计、建设和运营管理工作。

猜你喜欢
容错性计算机系统错误
在错误中成长
IBM推出可与人类“辩论”的计算机系统
基于一致性哈希的高可用多级缓存系统设计
分布处理计算机系统研究
基于认知心理学的交互式产品的容错性设计研究
MIMD 并行计算机系统结构与定量分析
地面气象测报业务计算机系统
基于免疫算法的高容错性广域保护研究
不犯同样错误
基于多Agent的有限广域方向比较算法与仿真实现