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

Chris Pickett chris.pickett at mail.mcgill.ca
Wed Mar 12 10:14:51 EDT 2008


Of course.  Good luck!

Chris

Khilan Gudka wrote:
> 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 
> <mailto: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>
> 
>      > <mailto: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 <mailto:Soot-list at sable.mcgill.ca>
>      > http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> 
> 


More information about the Soot-list mailing list