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

一、软件容错技术

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

1-1、容错软件的定义

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

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

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

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

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

1-2、容错的一般方法

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

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

(1)结构冗余。

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

(2)信息几余。

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

(3)时间冗余。

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

(4)冗余附加技术。

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

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

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

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

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

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

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

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

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

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

二、真题

真题1:

真题2:

真题3:

相关推荐
愚昧之山绝望之谷开悟之坡2 分钟前
业务接待-公务接待-商务接待
笔记
断水客18 分钟前
如何在手机上搭建Linux学习环境
linux·运维·学习
j***12151 小时前
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
爬虫·学习·selenium
大数据追光猿2 小时前
LangChain / LangGraph / AutoGPT / CrewAI / AutoGen 五大框架对比
经验分享·笔记·python·langchain·agent
✎ ﹏梦醒͜ღ҉繁华落℘2 小时前
freeRTOS学习笔记(十四)--内存
笔记·学习
又是忙碌的一天3 小时前
mysql 学习第二天 SQL语句
sql·学习·mysql
客梦3 小时前
Java 学生管理系统
java·笔记
拼好饭和她皆失3 小时前
C#学习入门
开发语言·学习·c#
LFly_ice3 小时前
学习React-22-Zustand
前端·学习·react.js
q***3754 小时前
爬虫学习 01 Web Scraper的使用
前端·爬虫·学习