节点文献
非法计算故障的检测技术研究
Research of Inspecting Techniques on Invalid Arithmetic Fault
【作者】 张涛;
【导师】 叶俊民;
【作者基本信息】 华中师范大学 , 软件与理论, 2007, 硕士
【摘要】 随着计算机软件的不断普及,如何提高安全关键软件的安全性成为了一个重要课题。非法计算是常见的一类引起计算机程序崩溃的严重错误,降低非法计算故障的发生率能够显著提高软件的性能和安全性,因此,如何定位非法计算故障并查找原因是当今故障诊断领域的研究热点。通过人们的研究,已经有了很多成熟的方法,程序静态分析和故障树就是其中比较重要的方法。其中,程序静态分析能够查找出可能出现故障的语句,而故障树则擅长于通过故障现象来推导故障产生的原因。如何将这两者结合起来,以获得良好的故障定位和故障原因诊断效果,是一个值得进一步研究的课题。本文将程序静态分析和故障树结合起来,将程序静态分析和故障树方法看作是诊断程序错误的两个不同阶段,作为前一阶段的程序静态分析所输出的错误语句表正好可以作为后一阶段故障树分析法的输入,这样既能够定位故障,又可以通过故障树分析方法推导故障发生的源头,在此基础上,将故障树分析法与区间运算结合起来,使之更适合非法计算故障的建树。本文的主要内容如下:1.提出了将程序静态分析方法与故障树分析方法结合在一起进行非法计算故障定位和故障诊断的方法,其中程序静态分析过程所得到的输出作为故障树分析法的输入,故障树分析过程的输出即为导致故障发生的故障源;2.介绍了程序静态分析技术在非法计算故障诊断过程中的使用方法,提出了在C/C++语言中的非法计算故障模型,同时给出了在抽象语法树中如何抽取所需要的非法计算信息的方法,设计了变量表的数据结构,使其记录变量变化的过程,描述了作为程序静态分析过程结果输出的格式;3.以程序静态分析结果作为顶事件集合,在传统的故障树构造方法基础上,结合非法计算判定规则构造非法计算故障树,提出了通过区间运算对需要建模的故障树进行组合的方法;4.以非法计算故障树的最小割集为依据,采用变量约束和区间运算找到导致非法计算故障发生的真正源头。
【Abstract】 With the popularization of software, how to improve the safety of safety critical software is becoming an important problem. Invalid arithmetic operations is a common kind of serious fault which can break down the computer system, we can improve the performance and safety through reducing the occurrence of invalid arithmetic operations, So how to locate these operations is becoming a kind of hotspots in area of fault diagnosis in nowadays. Through the research, many methods and techniques have been proposed for fault diagnosis, static method of source codes and fault tree analysis play very important role in these methods. Static method of source codes is used to find out those sentences which may have fault, fault tree analysis is good at finding out the reason why these faults happen. So how to integrate these two methods to get good result in fault diagnosis is a problem that needed to research.In this issue, we combine these two methods together to find out faults. It is thought that static method of source codes and fault tree analysis should be two phases in fault diagnosis. We can use the output of static method of source codes as input of fault tree analysis. So we can locate the position of fault, also we can use fault tree to get the original reason that why this fault happen, then we combine the fault tree analysis and range competition to make a better method which suits the construction for invalid arithmetic of fault tree . The main content of this issue is listed as below:1. we put forward a method that make static method of source codes and fault tree analysis work together to locate the invalid arithmetic fault and find why this fault happens, they are thought to be two phases in the whole process, the output of static method of source codes is used as the input of fault tree analysis, the output of fault tree analysis is the reason why these faults happen;2. describe the way that how the static method of source codes is used in fault diagnosis of invalid arithmetic operations, then the fault model of invalid arithmetic operations in C/C++ programming languages would be given, at the meanwhile we describe how to get the invalid arithmetic information in the abstract syntax tree, design the data structure of variable table, the format as the output of the static method of source codes will be given;3. on the basis of invalid arithmetic information which through static analyzing and traditional method of constructing fault tree, we combine the judgment of invalid arithmetic to construct the fault tree of invalid arithmetic, then we use interval arithmetic to incorporate some fault trees that fit some situations;4. on the basis of the minimal cut sets of invalid arithmetic fault tree, we use the variable constraint and interval arithmetic to find out the reason why these faults happen.
【Key words】 fault diagnosis; fault tree analysis; static method of source cods; invalid arithmetic; fault modeling;
- 【网络出版投稿人】 华中师范大学 【网络出版年期】2007年 04期
- 【分类号】TP309
- 【被引频次】1
- 【下载频次】109