免费智能真题库 > 历年试卷 > 软件设计师 > 2010年下半年 软件设计师 上午试卷 综合知识
  第29题      
  知识点:   软件容错技术   冗余技术
  章/节:   软件工程基础知识       

 
冗余技术通常分为4类,其中(29)按照工作方法可以分为静态、动态和混合冗余。
 
 
  A.  时间冗余
 
  B.  信息冗余
 
  C.  结构冗余
 
  D.  冗余附件技术
 
 
 

 
  第33题    2010年下半年  
   53%
软件系统的可维护性评价指标不包括(33)。
  第31题    2009年上半年  
   31%
根据ISO/IEC 9126软件质量度量模型定义,一个软件的时间和资源质量子特性属于(31)质量特件。
  第32题    2011年上半年  
   25%
软件(32)是指一个系统在给定时间间隔内和给定条件下无失效运行的概率。
   知识点讲解    
   · 软件容错技术    · 冗余技术
 
       软件容错技术
        1)容错软件定义
        归纳容错软件的定义,有以下4种。
        (1)规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件为具有容错功能的软件,即容错软件。
        (2)规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称之为容错软件。
        (3)规定功能的软件,在发生错误时,仍然能在一定程度上完成预期的功能,则把该软件称为容错软件。
        (4)规定功能的软件,在一定程度上具有容错能力,则称之为容错软件。
        2)容错的一般方法
        实现容错的主要手段是冗余。冗余是指对于实现系统规定功能是多余的那部分资源,包括硬件、软件、信息和时间。由于加入了这些资源,有可能使系统的可靠性得到较大的提高。通常冗余技术分为4类,即结构冗余、信息冗余、时间冗余和冗余附加技术。
 
       冗余技术
        实现容错的主要手段就是冗余。冗余是指所有对于实现系统规定功能来说是多余的那部分的资源,包括硬件、软件、信息和时间。通过冗余资源的加入,可以使系统的可靠性得到较大的提高。主要的冗余技术包括结构冗余、信息冗余、时间冗余、冗余附加四种。
               结构冗余
               结构冗余是常用的冗余技术,按其工作方式,可分为静态冗余、动态冗余和混合冗余3种。
               (1)静态冗余。常用的有三模冗余和多模冗余。静态冗余通过表决和比较来屏蔽系统中出现的错误。例如,三模冗余是对3个功能相同,但由不同的人采用不同的方法开发出的模块的运行结果进行表决,以多数结果作为系统的最终结果。即如果模块中有一个出错,这个错误能够被其他模块的正确结果“屏蔽”。由于无需对错误进行特别的测试,也不必进行模块的切换就能实现容错,故称为静态容错。
               (2)动态冗余。动态冗余的主要方式是多重模块待机储备,当系统检测到某工作模块出现错误时,就用一个备用的模块来顶替它并重新运行。这里须有检测、切换和恢复过程,故称其为动态冗余。每当一个出错模块被备用模块顶替后,冗余系统相当于进行了一次重构。各备用模块在待机时,可与主模块一样工作,也可不工作。前者叫做热备份系统(双重系统),后者叫做冷备份系统(双工系统、双份系统)。在热备份系统中,两套系统同时、同步运行,当联机子系统检测到错误时,退出服务进行检修,而由热备份子系统接替工作,备用模块在待机过程中其失效率为0;处于冷备份的子系统平时停机或者运行与联机系统无关的运算,当联机子系统产生故障时,人工或自动进行切换,使冷备份系统成为联机系统。在运行冷备份时,不能保证从程序端点处精确地连续工作,因为备份机不能取得原来机器上当前运行的全部数据。
               (3)混合冗余。它兼有静态冗余和动态冗余的长处。
               信息冗余
               信息冗余是在实现正常功能所需要的信息外,再添加一些信息,以保证运行结果正确的方法。例如,纠错码就是信息冗余的例子。
               时间冗余
               时间冗余使用附加一定时间的方法来完成系统功能。这些附加的时间主要用在故障检测、复查或故障屏蔽上。时间冗余以重复执行指令(指令复执)或程序(程序复算)来消除瞬时错误带来的影响。
               冗余附加技术
               冗余附加技术指为实现上述冗余技术所需的资源和技术,包括程序、指令、数据、存放和调动它们的空间和通道等。
               系统一旦发生故障,就需要采用某种方法进行恢复。故障的恢复策略一般有两种,分别是前向恢复和后向恢复。前向恢复是指使当前的计算继续下去,把系统恢复成连贯的正确状态,弥补当前状态的不连贯情况,这需要有错误的详细说明;后向恢复是指系统恢复到前一个正确状态,继续执行。这种方法显然不适合实时处理场合。
   题号导航      2010年下半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第29题    在手机中做本题