第十一讲高效的静态分析符号执行与缺陷模式知识讲稿.pptVIP

  • 10
  • 0
  • 约6.96千字
  • 约 55页
  • 2018-11-29 发布于天津
  • 举报

第十一讲高效的静态分析符号执行与缺陷模式知识讲稿.ppt

第十一讲高效的静态分析符号执行与缺陷模式知识讲稿.ppt

第十一讲 高效的静态分析 ---符号执行 与 缺陷模式; int x, y; 1: if (x y) { 2: x = x + y; 3: y = x - y; 4: x = x - y; 5: if (x y) foo1(); 6: else foo2(); };J. C. King 于 1976 年提出Symbolic Execution 使用符号值,而不是实际数据,作为输入 将程序变量的值表示为符号表达式 程序计算的输出表达为输入符号值的函数 ;优点 分析是路径敏感的 因为没有对路径、状态做近似,结果精确 适合做状态检查、时序检查 对并发类型的错误十分有效 缺点 对所有可能的状态进行穷举搜索,开销大 对系统的行为进行近似,可能导致这类结果不精确 对于数据密集的系统分析困难 在边界处对路径、时序属性近似困难,故复合困难;优点 由于对路径、状态进行抽象,扩展性好 可以对许多有价值的属性构造格 易于组合 提供了坚实的数学基础 缺点 适合的属性需要是简单的、“状态”“值”型的 对时序性质支持弱 属性格的定义不容易 有时近似过强;优点 支持灵活的属性 易于扩展 缺点 开发人员需要提供额外的信息 自动化程度不高 路径不敏感,对并发系统不适合 ;记录执行的状态,包括: 程序变量的符号值 路径条件(PC: Path Cond

文档评论(0)

1亿VIP精品文档

相关文档