zoukankan      html  css  js  c++  java
  • 静态分析的四种基本方法

    • 数据流分析(Data Flow Analysis)
      将数据看作是图,节点是程序的基本快,边是描述控制如何从一个基本快转移掉另一个基本快。图可以解决很多问题,例如:以
      图中边的抽象得出数学方程,七届就是可达性问题的答案;PREfix、SLAM静态分析系统使用了数据流分析的思想。
    • 基于约束的分析(Constraint-based Analysis)
      从程序问文本中产生一系列的本地约束,通过解释这些约束来验证所有的属性。Cqual是这种类型的系统。
    • 抽象解析(Abstract Interpretation)
      将程序映射成更加抽象的域(Domain),试分析更加具有可跟中兴并具有检验代码的作用;抽象解析通过计算能够直接得出分析结果,而不是像其他
      类型的方法使用验证的方式进行分析;ASTREE是抽象分析的静态检查器。
    • 类型与结果分析(Type and Effect Analysis)
      是结果系统和注释的类型系统的混合。结果系统表达一个语句的执行有什么结果;注释的类型系统提供结果系统的予以。这种分析广泛应用于各类编译器(如:gcc - Wall选项)

    参考klockwork介绍

  • 相关阅读:
    次小生成树(SST)
    传纸条(scrip)
    动态规划练习5
    动态规划练习4
    整数的lqp拆分
    [HNOI2002]跳蚤
    BZOJ1803: Spoj1487 Query on a tree III
    51nod-1526: 分配笔名
    51nod-1615: 跳跃的杰克
    BZOJ2588: Spoj 10628. Count on a tree
  • 原文地址:https://www.cnblogs.com/chen310/p/4408925.html
Copyright © 2011-2022 走看看