loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05)
Precise Analysis of Memory Consumption using Program Logics
Koblenz, Germany
September 07-September 09
ISBN: 0-7695-2435-4
Gilles Barthe, INRIA Sophia-Antipolis, France
Mariela Pavlova, INRIA Sophia-Antipolis, France
Gerardo Schneider, University of Oslo, Norway

Memory consumption policies provide ameans to control resource usage on constrained devices, and play an important role in ensuring the overall quality of software systems, and in particular resistance against resource exhaustion attacks. Such memory consumption policies have been previously enforced through static analysis, which yield automatic bounds at the cost of precision, or run-time analysis, which incur an overhead that is not acceptable for constrained devices.

In this paper, we study the use of logical methods to specify and statically verify precisememory consumption policies for Java bytecode programs. First, we demonstrate how the Bytecode Specification Language (a variant of the Java Modelling Language tailored to bytecode) can be used to specify precise memory consumption policies for (sequential) Java applets, and how verification tools can be used to enforce such memory consumption policies. Second, we consider the issue of inferring some of the annotations required to express the memory consumption policy, and report on an inference algorithm. Our broad conclusion is that logical methods provide a suitable means to specify and verify expressive memory consumption policies, with an acceptable overhead.

Citation:
Gilles Barthe, Mariela Pavlova, Gerardo Schneider, "Precise Analysis of Memory Consumption using Program Logics," sefm, pp.86-95, Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05), 2005
Usage of this product signifies your acceptance of the Terms of Use.