Java Bytecode Transformations for Efficient, Portable CPU Accounting

Resource management is essential to build reliable middleware and to host potentially untrusted software components. Resource accounting allows to study and optimize program performance and to charge users for the resource consumption of their deployed components, while resource control can limit the resource consumption of components in order to prevent denial-of-service attacks. In the approach presented here, program transformations enable resource management in Java-based environments, even though the underlying runtime system may not expose information concerning the resource consumption of applications. We present a fully portable program transformation scheme to enhance standard Java runtime systems with mechanisms for CPU management. We implemented several optimizations in order to reduce the overhead of our CPU accounting scheme. Detailed performance measurements quantify this overhead and show the impact of various optimizations.


Editor(s):
Spoto, F.
Published in:
First Workshop on Bytecode Semantics, Verification, Analysis and Transformation (Bytecode 2005), 141, 53-73
Presented at:
Bytecode Semantics, Verification, Analysis and Transformation 2005 (Bytecode 2005), Edinburgh, 9 April 2005
Year:
2005
Publisher:
Elsevier
Keywords:
Laboratories:




 Record created 2005-09-20, last modified 2018-08-14

External link:
Download fulltext
URL
Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)