[Soot学习笔记][5]Soot依赖的两个框架

在Soot的下载页面http://www.sable.mcgill.ca/soot/soot_download.html中我们可以看到,Soot实际上是依赖于两个框架:Jasmin和polyglot。对于这两个框架(或软件),我之前不是特别了解,但是在很多地方都可以看到polyglot,例如,abc(The AspectBench Compiler for AspectJ)就是基于Soot和polyglot的(怎么这些框架还循环调用?)

今天抽了些时间简单搜索了一下,找到了上面两个框架的主页,了解到:

前者最早是基于这本书:Jon Meyer. Java Virtual Machine. O'Reilly Associates,1st Edition march 1997. ISBN 978-1-56592-194-8,为了让读者更好理解JVM,设计的教程性质的软件,其主页是:http://jasmin.sourceforge.net/这里我也不多做解释,大家可以自行到主页参考。

后者是Cornell(康奈尔大学)计算机系的一个研究项目,其主页在:http://www.cs.cornell.edu/projects/polyglot/大家也可以自行参考。

准备这两天再看看http://www.bodden.de/clara/documentation/how-to-implement-a-typestate-analysis/基于Clara的typestate analysis,似乎Clara也用到了Soot和polyglot,看来,polyglot也是应用非常广泛的一个框架,应该好好学习下。

PS:今天看到McGill大学的Sable实验室开发的软件中还包括Dava这样一个Java反编译软件,这个反编译软件是网上流传的3大反编译软件之一(可参考:http://wenku.baidu.com/view/034cfd3143323968011c92bf.html),顿时觉得Sable实验室的实力还是非常强的,而且他们对研究项目的坚持和执着,非常值得我们学习。)

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...