本文分为知识点总结、写作思路、完整论文三部分。知识总结部分如果不小心侵权,请联系删除,谢谢。
知识点总结
软件可靠性是指:
在规定的条件下,在规定的时间内,软件不引起系统失效的概率;
在规定的时间周期内,在所述条件下程序执行所要求的功能的能力。
容错技术
- 恢复块设计
选择一组软件操作作为容错设计单元,把普通的程序块变成恢复块。一个恢复块包含若干个功能相同、设计差异的程序块文本,一个运行文本,多个备份文本,构成“动态冗余”,一旦运行文本出现故障,则用备份文本替换。软件容错的恢复块方法就是使软件包含一些列的恢复块。
- N版本程序设计
N版本程序的核心是通过设计出多个模块或者不同的版本,对于相同的初始条件和相同的输入的操作,实现多数表决,防止其中一个模块/版本的故障提供错误的服务,已实现软件容错。
- 冗余设计
在一套完整的软件体系之外,设计一种不同路径,不同算法或者不同实现方法的模块或系统作为备份,在出现故障的时候,可以用冗余的部分进行替换,从而维持软件系统的正常运行。缺点是费用和资源的消耗会增加。
检错技术
在软件系统中,无需在线容错的地方,或者不能采用冗余设计技术的部分,如果对可靠性要求比较高,故障有可能导致严重后果时,一般需要采用检错技术,在软件出现故障的时候能及时发现并报警。缺点是不能自动解决故障。