[Soot-list] Re: java.lang.ref.Finalizer

Khilan Gudka khilan.gudka at imperial.ac.uk
Wed Mar 12 07:58:50 EDT 2008


Dear Chris,

Thanks very much for the email. I would like to spend some time in replying
to your email. Would that be ok? At present I am currently working on
something and thus cannot spare much time, but as soon as that is finished I
will be able to reply.

Regards,
Khilan

On 11/03/2008, Chris Pickett <chris.pickett at mail.mcgill.ca> wrote:
>
> Hi Khilan,
>
>
> Khilan Gudka wrote:
> > What should one do about these for a sound analysis?
>
>
> List them as entry points and assume the worst at calls to native
> methods that you don't have simulations for?  Or, create additional
> simulations?  Or (partly), force all static initializers to execute
> before main()?
>
> Now I want to step back and ask something else.  What are you actually
> trying to do?  I gather you:
>
> 1) have a context-sensitive analysis
> 2) are duplicating method bodies
> 3) care about soundness in the call graph
> 4) want to compute which objects are accessed by a given block of code
> 5) are working on lock inference/allocation (w/ Dave Cunningham, CC'08)
>
> I'm going to guess that it's primarily to do with 5).  Have you looked
> at Richard's lock allocation analyses in Soot?  Are you trying to
> implement your CC'08 paper in Soot?  Did you consider building on and
> integrating with what's already there?  Did you know that we have
> locksets working now?  Here are some slides:
>
> http://www.sable.mcgill.ca/~rhalpe/talks/slides-SABLE-2008-03-07.pdf
>
> and you can find the source code in the Soot trunk.  (Thesis pending.)
>
> Cheers,
> Chris
>
>
> > Thanks,
> > Khilan
> >
> > On 11/03/2008, *Khilan Gudka* <khilan.gudka at imperial.ac.uk
>
> > <mailto:khilan.gudka at imperial.ac.uk>> wrote:
> >
> >     Dear All,
> >
> >     I'm running soot + spark with Sun Java 1.5 with 1.3 libs
> >     (rt.jar,tools.jar,sunrsasign.jar) prepended to the classpath. I've
> >     been comparing static and dynamic call graphs (using probe with soot
> >     and starj) and have a question about one particular edge that
> >     appears at run-time but doesn't appear in spark's call graph:
> >
> >     java.security.Security: initialize() ===> java.lang.ref.Finalizer:
> >     register(Ljava/lang/Object;)
> >
> >     The call to register(Object) exists because a FileInputStream is
> >     constructed in initialize(), which has a finalize() method. Why does
> >     it not appear in spark's call graph? This class isn't loaded by
> >     reflection, so the -dynamic-class flag doesn't work,
> >     register(Object) is an implicit invokation by the JVM.
> >
> >     Any help would be greatly appreciated.
> >
> >     Thanks,
> >     Khilan
> >
> >
> >
>
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Soot-list mailing list
> > Soot-list at sable.mcgill.ca
> > http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20080312/48ffd128/attachment.htm


More information about the Soot-list mailing list