软考139-上午题-【软件工程】-软件容错技术

一、软件容错技术

提高软件质量和可靠性的技术大致可分为两类,一类是避开错误,即在开发的过程中不让差错潜入软件的技术;另一类是容错技术,即对某些无法避开的差错,使其影响减至最小的技术。

1-1、容错软件的定义

归纳容错软件的定义,有以下4种:

(1)规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称该软件为具有容错功能的软件,即容错软件。

(2)规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为容错软件。

(3)规定功能的软件,在因错误发生错误时仍然能在一定程度上完成预期的功能,则称该软件为容错软件。

(4)规定功能的软件,在一定程度上具有容错能力,则称该软件为容错软件。

1-2、容错的一般方法

实现容错的主要手段是冗余。冗余是指对于实现系统规定功能是多余的那部分资源,包括硬件、软件、信息和时间。由于加入了这些资源,有可能使系统的可靠性得到较大的提高。通常,冗余技术分为4类:

  • 结构冗余;
  • 信息冗余;
  • 时间冗余;
  • 冗余附加技术

(1)结构冗余。

结构冗余是通常采用的冗余技术,按其工作方法可以分为静态、动态和混合几余3种。

(2)信息几余。

为检测或纠正信息在运算或传输中的错误需外加一部分信息,这种现象称为信息冗余。

(3)时间冗余。

时间几余是指以重复执行指令或程序来消除瞬时错误带来的影响。

(4)冗余附加技术。

冗余附加技术是指为实现上述冗余技术所需的资源和技术,包括程序、指令、数据、存放和调动它们的空间和通道等。

1、屏蔽硬件错误的容错技术

在屏蔽硬件错误的容错技术中,冗余附加技术包括:

①关键程序和数据的冗余存储及调用。

②检测、表决、切换、重构、纠错和复算的实现。

2、屏蔽软件错误的容错系统

在屏蔽软件错误的容错系统中,冗余附加技术的构成包括:

①冗余备份程序的存储及调用。

②实现错误检测和错误恢复的程序。

③实现容错软件所需的固化程序。

二、真题

真题1:

真题2:

真题3:

相关推荐
AOwhisky3 小时前
Redis 学习笔记(第三期):持久化与主从复制
运维·数据库·redis·笔记·学习·云计算
问心无愧05133 小时前
ctf show web入门160 161
前端·笔记
Tbisnic4 小时前
AI大模型学习第十一天:技术选型、安全防护与金融实战
python·学习·ai·大模型·提示词工程
xmtxz6 小时前
计算机网络基础课程学习心得:从理论抽象到硬核实战的进阶之路
运维·学习
YM52e7 小时前
男孩子在外自我保护指南——用鸿蒙 ArkTS 构建交互式安全教育应用
学习·安全·华为·harmonyos·鸿蒙·鸿蒙系统
aXin_ya7 小时前
Ai Vibecoding学习(各个AI的讲解)
学习
乘~风8 小时前
408考研-计组-1.2计算机系统层次结构笔记+1.3计算机性能指标
笔记·考研·408
fanged8 小时前
Linux内核学习16--I2C子系统(TODO)
学习
.千余8 小时前
【C++】C++继承入门(下):友元、静态成员与菱形继承的底层逻辑
开发语言·c++·笔记·学习·其他
YJlio8 小时前
《Sysinternals实战指南》16.5 Ctrl2Cap 工具详解:把 Caps Lock 变成 Ctrl 的键盘改造与回退方法
linux·运维·服务器·网络·python·学习·计算机外设