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

本文详细介绍了Soot和Polyglot这两个软件分析框架的起源、核心功能及其在不同场景中的应用,特别是它们如何在abc(TheAspectBenchCompilerforAspectJ)等项目中协同工作。文章还提到了McGill大学Sable实验室开发的Dava反编译软件,强调了Sable实验室的技术实力和研究贡献。

在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实验室的实力还是非常强的,而且他们对研究项目的坚持和执着,非常值得我们学习。)

转载于:https://www.cnblogs.com/quyu/archive/2011/12/08/2281401.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值