基于Heros的过程间数据流分析的相关API
来源:互联网 发布:网页游戏劫持数据 编辑:程序博客网 时间:2024/06/01 19:32
https://ssebuild.cased.de/nightly/soot/javadoc/
soot.jimple.toolkits.ide
ClassMain:
public classMain extends Object.
构造方法:public Main()
其他方法:public staticvoid main(String[] args)
ClassJimpleIFDSSolver<D,I extendsheros.InterproceduralCFG<Unit,SootMethod>>
public classJimpleIFDSSolver<D,I extendsheros.InterproceduralCFG<Unit,SootMethod>> extendsheros.solver.IFDSSolver<Unit,D,SootMethod,I>
构造方法:JimpleIFDSSolver(heros.IFDSTabulationProblem<Unit,D,SootMethod,I>problem)
JimpleIFDSSolver(heros.IFDSTabulationProblem<Unit,D,SootMethod,I>problem,Boolean dumpResults)
其他方法:
public voidsolve(),覆写
classheros.solver.IDESolver
<Unit,D,SootMethod,heros.solver.IFDSSolver.BinaryDomain,
I extendsheros.InterproceduralCFG<Unit,SootMethod>>中的solve()方法
public voiddumpResults()
ClassJimpleIDESolver<D,V,I extendsheros.InterproceduralCFG<Unit,SootMethod>>
publicclass JimpleIDESolver<D,V,I extendsheros.InterproceduralCFG<Unit,SootMethod>> extendsheros.solver.IDESolver<Unit,D,SootMethod,V,I>
构造方法:
JimpleIDESolver(heros.IDETabulationProblem<Unit,D,SootMethod,V,I>problem)
JimpleIDESolver(heros.IDETabulationProblem<Unit,D,SootMethod,V,I>problem,Boolean dumpResults)
其他方法:
public voidsolve()覆写class heros.solver.IDESolver
<Unit,D,SootMethod,V,Iextends heros.InterproceduralCFG<Unit,SootMethod>>中的solve
public voiddumpResults()
ClassDefaultJimpleIDETabulationProblem
<D,V,I extends heros.InterproceduralCFG<Unit,SootMethod>>
Public abstractclass DefaultJimpleIDETabulationProblem
<D,V,Iextends heros.InterproceduralCFG<Unit,SootMethod> >
extendsheros.template.DefaultIDETabulationProblem<Unit,D,SootMethod,V,I>
一个DefaultIDETabulationProblem使用Units作为node,SootMethods作为methods。
构造方法:
DefaultJimpleIDETabulationProblem(Iicfg)
ClassDefaultJimpleIFDSTabulationProblem
<D,I extendsheros.InterproceduralCFG<Unit,SootMethod>>
publicabstract class DefaultJimpleIFDSTabulationProblem
<D,I extendsheros.InterproceduralCFG<Unit,SootMethod>>
extendsheros.template.DefaultIFDSTabulationProblem<Unit,D,SootMethod,I>
一个DefaultIDETabulationProblem使用Units作为nodes和使用SootMethods作为methods。
构造方法:
publicDefaultJimpleIFDSTabulationProblem(I icfg)
Class SortableCSVString
public classSortableCSVString extends Object implements Comparable<SortableCSVString>
构造方法:
publicSortableCSVString(String str,int pos)
其他方法:
public intcompareTo(SortableCSVString anotherString)
compareTo in interface Comparable<SortableCSVString>中指定
CSV文件是以“,”为分隔表示表格内容的一种通用文件。详细的可见:
http://baike.baidu.com/link?url=APWkpi6lxwpSbNawYLgV-m819sh89xfiXFJ9xltVhC4yfG6JmZExJJxw13DUvY8CJnGLKANEA4PRbjye-u1jb9qmhXAiEQm8ixo0bCXABh7
https://ssebuild.cased.de/nightly/soot/javadoc/
soot.jimple.toolkits.ide.exampleproblems
Class IFDSReachingDefinitions
public class IFDSReachingDefinitions
https://ssebuild.cased.de/nightly/soot/javadoc/
soot.jimple.toolkits.ide.icfg
Interface BiDiInterproceduralCFG<N,M>
已知的子类:
AbstractJimpleBasedICFG,BackwardInterproceduralCFG,JimpleBasedInterproceduralCFG,OnTheFlyJimpleBasedCFG
publicinterface BiDiInterproceduralCFG<N,M> extendsheros.InterproceduralCFG<N,M>
一个支持计算前驱的InterproceduralCFG
例子:Reachingdefinition
https://en.wikipedia.org/wiki/Reaching_definition
一个程序点的reachingdefinitions指的是定义当前语句中变量的当前值的那些赋值语句。
例如:
D1:x=1;
D2:y=x;
那么,D2程序点的reaching definitions就是D1,因为D2中的变量x的当前值是由D1定义的;
D1:x=1;
D2:x=2;
D3:y=x;
那么,D3程序点的reaching definitions就是D2,因为D3中的变量x的当前值是由D2定义的,而D1定义的x值在D2时被销毁了。
数据流的方向:前向;
交汇运算采用并集;
传递函数:针对赋值语句采用REACHout[S]=GEN[S]∪(REACHin[S]-KILL[S])。
- 基于Heros的过程间数据流分析的相关API
- 基于soot的过程内数据流分析
- soot数据流 -- 基于soot的过程内数据流分析
- 一部很好看的剧集heros
- X264的数据流分析
- 串口数据流的分析
- 数据流分析的局限性
- Soot 学习笔记 3:实现过程内的数据流分析
- Hadoop MapReduce基于新API的WordCount程序运行过程分析
- 基于典型相关分析的词向量
- 传统的概要设计 详细设计是不是面向过程或者是数据流的分析方法
- 基于MapReduce作业的MapReduce数据流优化
- [经验之谈]基于数据流的MVC模式实现
- 基于数据流的原始套接字
- 基于数据流的挖掘算法研究
- 基于数据流的挖掘算法研究
- Flux - 基于单向数据流的应用架构
- 基于akka和data-sketch技术的实时数据流分析服务
- 背包相关问题
- JAVA项目一:图形化界面计算器
- 机器学习笔记:Fisher Vector基本原理与用法
- pthread第一次使用
- 用c++实现红黑树的判断、插入、遍历操作
- 基于Heros的过程间数据流分析的相关API
- select函数详解及其应用
- 相机姿态估计(二)--单目POSIT算法
- Map使用Iterator遍历输出
- IP地址与子网掩码
- ID卡的原理和ID卡复制器
- Linux下的几种实用软件安装方法
- Spring的xml文件格式(4.0版本)
- HDU 1044