亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        計算機系統(tǒng)的容錯技術(shù)方法

        2010-03-20 02:31:40李洪超
        關(guān)鍵詞:可靠性程序軟件

        李洪超

        (上海理工大學(xué)光電信息與計算機工程學(xué)院,上海200090)

        計算機的應(yīng)用十分廣泛,航空航天、軍事、銀行監(jiān)管系統(tǒng)、交通運輸系統(tǒng)以及其他重要的工業(yè)領(lǐng)域?qū)τ嬎銠C的可靠性要求非常高。計算機系統(tǒng)出現(xiàn)故障不僅會導(dǎo)致國家財產(chǎn)的嚴(yán)重?fù)p失,還會危及人身安全。因此,在這些領(lǐng)域中計算機的可靠性越來越受到人們的重視,國家非常重視可靠性的研究工作,投入了大量的資源。

        1 基本容錯技術(shù)

        一般而言,提高計算機的可靠性有兩種比較有效的方法。一種是避錯,就是避免出現(xiàn)故障,這就需要嚴(yán)格篩選計算機元器件,完善設(shè)計,提高制造工藝,以及加強質(zhì)量管理等。但即使是這樣一個計算機系統(tǒng),由于其所在的工作環(huán)境有各種環(huán)境應(yīng)力,如濕度、溫度、電磁干擾、強震動等,因此總避免不了出現(xiàn)故障。這就要求在計算機出現(xiàn)故障的情況下容忍故障的存在,即第二種方法——容錯技術(shù)。容錯技術(shù)最早由約翰?馮?諾依曼(John Von Neumann)提出,所謂容錯是指在出現(xiàn)一個或者幾個硬件或軟件方面的故障或錯誤的情況下,計算機系統(tǒng)能夠檢測出故障的存在并采取措施容忍故障,不影響正常工作,或者在能夠完成規(guī)定的任務(wù)的情況下降級運行[1]。

        故障是指由于部件的物理失效、環(huán)境應(yīng)力的作用、操作錯誤或不正確的設(shè)計,引起系統(tǒng)的硬件或軟件的錯誤狀態(tài)[2]。下面介紹幾種相關(guān)技術(shù)的基本概念。

        故障檢錯技術(shù):對于計算機系統(tǒng)的容錯首先要用到故障檢錯技術(shù),即在計算機系統(tǒng)發(fā)生故障的情況下能夠檢測出故障的存在。

        故障診斷技術(shù):檢測出系統(tǒng)存在故障后要進行故障的定位,找出故障所在的位置。

        故障恢復(fù)技術(shù):在檢測出故障和定位故障的所在位置之后,就要運用故障恢復(fù)技術(shù)把系統(tǒng)從故障的狀態(tài)恢復(fù)到無故障的狀態(tài)繼續(xù)運行。

        容錯最基本的的方法是冗余技術(shù),所謂冗余就是超過系統(tǒng)實現(xiàn)正常功能的額外資源。冗余包括硬件冗余、軟件冗余、時間冗余和信息冗余[3]。

        1.1 硬件容錯技術(shù)

        硬件冗余又包括靜態(tài)硬件冗余(也叫被動硬件冗余)、動態(tài)硬件冗余(也叫主動硬件冗余)和混合冗余(靜態(tài)冗余和動態(tài)冗余的結(jié)合)。靜態(tài)硬件冗余常見的形式有三模冗余(TMR),其基本原理是:系統(tǒng)輸入通過3個功能相同的模塊,產(chǎn)生的3個結(jié)果送到多數(shù)表決器進行表決,即三中取二的原則,如果模塊中有一個出錯,而另外兩個模塊正常,則表決器的輸出正確,從而可以屏蔽一個故障,TMR的缺點是,如果3個模塊的輸出各不相同,則無法進行多數(shù)表決;若有兩個模塊出現(xiàn)一致的故障,則表決的結(jié)果會出現(xiàn)錯誤。TM R結(jié)構(gòu)如圖1所示。

        三模冗余可推廣到N模冗余(NM R),其基本原理與TMR的原理相同,其中N≥3,且N為奇數(shù),以便進行多數(shù)表決。動態(tài)冗余是指當(dāng)檢測到工作的模塊出現(xiàn)錯誤時,就切換到一個備用的模塊,當(dāng)換上的備用模塊又發(fā)生故障時,再切換到另一個備用模塊,依次類推,直到備用的模塊用完。

        圖1 TMR結(jié)構(gòu)圖

        1.2 時間容錯技術(shù)

        時間容錯的基本思想是:重復(fù)執(zhí)行指令或者一段程序來消除故障的影響,以達到容錯的效果,它是用消耗時間來換取容錯的目的。根據(jù)執(zhí)行的是一條指令還是一段程序,分成兩種方法:

        一種是指令復(fù)執(zhí)。當(dāng)檢測出故障的時候,重復(fù)執(zhí)行故障指令,若故障是瞬時的,則在指令復(fù)執(zhí)期間可能不會出現(xiàn),程序就可以繼續(xù)向前運行。指令復(fù)執(zhí)必須保留上一指令結(jié)束的“現(xiàn)場”,包括累加器、PC及其他狀態(tài)寄存器的狀態(tài)。

        另一種是程序卷回。它不是重復(fù)執(zhí)行一條指令,而是重復(fù)執(zhí)行一小段程序。在整段程序中可以設(shè)置多個恢復(fù)點,程序有錯誤的情況下可以從一個個恢復(fù)點處開始重復(fù)執(zhí)行程序。首先檢驗一小段程序的計算結(jié)果,若結(jié)果出現(xiàn)錯誤則卷回再重復(fù)執(zhí)行那個部分,若一次卷回不能解決,可以多次卷回,直到故障消除。

        1.3 信息容錯技術(shù)

        信息容錯技術(shù)是通過在數(shù)據(jù)中附加冗余的信息位來達到故障檢測和容錯的目的。通常情況下,附加的信息位越多,其檢錯糾錯的能力就越強,但是這同時也增加了復(fù)雜度和難度。信息冗余最常見的有檢錯碼和糾錯碼。檢錯碼只能檢查出錯誤的存在,不能改正錯誤,而糾錯碼能檢查出錯誤并能糾正錯誤。常用的檢錯糾錯碼有奇偶校驗碼、海明碼、循環(huán)碼等。

        1.4 軟件容錯技術(shù)

        由于硬件系統(tǒng)的故障主要來自生產(chǎn)和使用階段,因此容錯可以通過相同部件的重復(fù),即相同資源的累積設(shè)置來實現(xiàn);而軟件故障主要來自說明、設(shè)計和實現(xiàn)階段,因此程序的簡單重復(fù)不能實現(xiàn)容錯,它只能防止硬件損壞或者環(huán)境干擾等引起的物理性故障,而不能防止軟件本身缺陷造成的故障。實現(xiàn)軟件容錯的基本方法,是將若干個根據(jù)同一需求說明編寫的不同程序(即多版本程序),在不同空間同時運行,然后在每一個設(shè)置點通過表決或接收測試進行表決。

        最基本的軟件容錯技術(shù)是Algirdas Avizienis提出的基于靜態(tài)冗余的N版本編程方法和B.Randell提出的基于動態(tài)冗余的恢復(fù)塊技術(shù)[4]。

        1.4.1 軟件的相異性設(shè)計

        對于軟件容錯,考慮的重點是軟件設(shè)計的相異性和版本的獨立性。軟件的相異性設(shè)計是為了防止由于軟件發(fā)生共性故障而采用的一種設(shè)計方法。軟件設(shè)計時的共性越小,出現(xiàn)相同故障的概率也就越小,容錯性能就越強[5]。

        相異性設(shè)計要求,對于同一需求說明的軟件功能,不同的研發(fā)設(shè)計人員及不同的研發(fā)設(shè)計小組對于這同一功能的軟件設(shè)計禁止談?wù)摵蜏贤?在不同的環(huán)境空間中獨立進行設(shè)計;另外,還要求軟件設(shè)計的多樣性,如采取不同的設(shè)計方法、開發(fā)工具、編程語言、編譯器、算法等。在航空航天、核電站控制以及鐵路交通的控制等對軟件的可靠性要求很高的場合,軟件的相異性設(shè)計可以有效提高軟件的容錯能力和軟件的可靠性,對提高整個系統(tǒng)的可靠性有很重要的作用。

        1.4.2 軟件容錯的基本結(jié)構(gòu)

        軟件容錯的基本結(jié)構(gòu)有兩種[1,3-4]:

        一種是NVP(N-Version Programming)結(jié)構(gòu)(多版本編程設(shè)計),這種結(jié)構(gòu)方法是Algirdas Avizienis于1977年在參考文獻[6]中提出的,它是一種靜態(tài)冗余方法,其基本的設(shè)計思想是用N個具有同一功能而采用不同編程方法的程序執(zhí)行一項運算,其結(jié)果通過多數(shù)表決器輸出。NVP系統(tǒng)中的多版本是指根據(jù)同一需求說明由不同的設(shè)計人員或由不同的設(shè)計方法、開發(fā)工具、編程語言等開發(fā)的具有同一功能的軟件版本,即所謂的版本設(shè)計的相異性。這種容錯結(jié)構(gòu)方法有效避免了由于軟件共性故障所造成的系統(tǒng)出錯,提高了軟件的可靠性。NNP結(jié)構(gòu)如圖2所示。

        另一種是RB(Recovery Block,恢復(fù)快結(jié)構(gòu)),它是Randell于1975年在參考文獻[7]中提出的一種的軟件容錯技術(shù),它是一種動態(tài)冗余方法。在RB結(jié)構(gòu)中,有主程序塊和一些備用程序塊構(gòu),這里的主程序塊和備用程序塊采用不同編程方法但具有相同的功能。每個主程序塊都可以用一個根據(jù)同一需求說明設(shè)計的備用程序塊替換。首先運行主程序塊,然后進行接收測試,如果測試通過則將結(jié)果輸出給后續(xù)程序,否則調(diào)用第一個備用塊,依次類推,在N個備用程序塊替換完后仍沒有通過測試,則要進行故障處理。RB結(jié)構(gòu)如圖3所示。

        圖2 NVP結(jié)構(gòu)

        圖3 RB結(jié)構(gòu)

        其他的軟件容錯結(jié)構(gòu)都是基于這兩個基本結(jié)構(gòu)而來的,例如NVPP[8](多版本階段程序設(shè)計),它要求程序的版本運行分多個階段進行,而且每個階段運行的程序都包括適當(dāng)?shù)陌姹緮?shù)量。運行一個階段后,要通過表決程序來對這一階段運行的程序進行表決,如果得到正確的結(jié)果就結(jié)束運行,否則繼續(xù)下一個階段版本的運行,直到得出正確的結(jié)果。

        NVP和RB這兩種基本結(jié)構(gòu)在軟件容錯中用得最廣泛,占據(jù)很重要的地位。這里要注意的是,驗證表決程序的可靠性以及表決結(jié)果的正確性是個難點,因為如果表決程序本身就是錯誤的,那表決的結(jié)果就不可信了,所以要用正確性證明技術(shù)來保證表決程序的正確。

        2 結(jié) 論

        本文詳細(xì)介紹了計算機容錯的各種方法,包括硬件容錯、時間容錯、信息容錯以及軟件容錯等,這些容錯方法在其他工業(yè)場合有廣泛的應(yīng)用,現(xiàn)在很多工業(yè)系統(tǒng)都是采用基于三模冗余的容錯技術(shù)來提高系統(tǒng)的可靠性。對于其他要求可靠性高的場合,計算機容錯技術(shù)的方法有著良好的應(yīng)用前景。

        [1]袁由光,陳以農(nóng).容錯與避錯技術(shù)及其應(yīng)用[M].北京:科學(xué)出版社,1992.

        [2]國防科學(xué)工業(yè)技術(shù)委員會.GJB 3180-98軍用計算機容錯要求與測評[S],1998.

        [3]胡謀.計算機容錯技術(shù)[M].北京:中國鐵道出版社,1995.

        [4]Kanoun K,Kaaniche M,Beounes C,et al.Reliability Grow th of Fault-tolerant Software[J].IEEE Transactions on Reliability,1993,42(2):205-218.

        [5]韓煒,楊孝宗,等.相異性容錯設(shè)計的概念及其實現(xiàn)[J].哈爾濱工業(yè)大學(xué)學(xué)報,2001,33(5).

        [6]Randell B.System Structure for Software Fault Tolerance[J].IEEE Transactions on Software Engineering,1975(SE-1):220-232.

        [7]Avizienis A,Chen L.On The Implementation of N-Version Programming for Softw are Fault-Tolerance During Program Execution:proceedings of the 1977 International Conference on Computer Software and Application[C],1977:149-155.

        [8]徐仁佐.軟件可靠性工程[M].北京:清華大學(xué)出版社,2007.

        猜你喜歡
        可靠性程序軟件
        禪宗軟件
        英語文摘(2021年10期)2021-11-22 08:02:26
        可靠性管理體系創(chuàng)建與實踐
        試論我國未決羈押程序的立法完善
        軟件對對碰
        “程序猿”的生活什么樣
        電子制作(2017年2期)2017-05-17 03:55:06
        英國與歐盟正式啟動“離婚”程序程序
        創(chuàng)衛(wèi)暗訪程序有待改進
        基于可靠性跟蹤的薄弱環(huán)節(jié)辨識方法在省級電網(wǎng)可靠性改善中的應(yīng)用研究
        電測與儀表(2015年6期)2015-04-09 12:01:18
        可靠性比一次采購成本更重要
        風(fēng)能(2015年9期)2015-02-27 10:15:24
        国产女人av一级一区二区三区| 无码专区无码专区视频网址| 亚洲中文字幕在线精品2021| 亚洲中文字幕在线综合| 国产午夜福利在线观看红一片| 偷窥村妇洗澡毛毛多| 国产精品久久一区性色a| 亚洲精品在线免费视频| √新版天堂资源在线资源| 亚欧AV无码乱码在线观看性色| 熟女少妇av免费观看| 日本系列有码字幕中文字幕| 67194熟妇人妻欧美日韩| 亚洲国产精品无码久久电影| 国产在线观看网址不卡一区| 中字无码av电影在线观看网站| 亚洲传媒av一区二区三区| 国产av综合网站不卡| 无码a级毛片免费视频内谢| 亚州少妇无套内射激情视频| 国产成人精品无码一区二区老年人| 区一区二区三免费观看视频| 久久99国产精品久久99果冻传媒| 曰本无码人妻丰满熟妇5g影院| 日本一区二区三本视频在线观看| 日本精品免费看99久久| 真人做爰片免费观看播放| 国产成人77亚洲精品www| 中文字幕日本五十路熟女| 免费不卡无码av在线观看| 三上悠亚av影院在线看| 一区二区三区国产97| 精品亚洲第一区二区三区| 少妇被爽到高潮喷水久久欧美精品| 狠狠躁夜夜躁人人爽天天天天97| 欧美丝袜秘书在线一区| 日本一区三区三区在线观看| 人人爽人人爽人人爽人人片av| 国产高清a| 久久99热精品免费观看麻豆| 91九色成人蝌蚪首页|