Memory Leak Analysis of Java Virtual Machine charcterizing Software Aging
Embed Size (px)
This project work presents a practical experience with memory analysis on a real worldcomplex middleware platform, being developed in the context of academic-industrialcollaboration. The reported experience suggests a practical method that can help practitionersto analyze memory leaks and to adopt proper actions to mitigate these bugs,especially in the context of complex Off-The-Shelf (OTS) based software systems.In this report I shall explain how memory management works inside application process,focusing on the main memory problem that cause software aging: Memory leakage. Along with the theoretical explanation, I present an experimental study that illustrateshow memory leaks occur and how they accumulate over time in order to causesystem aging-related failures.Although several approaches have already been proposed to study the developmentof software aging phenomena there are still some open issues, especially in the field ofOTS-based software systems. All measurement-based software aging analyses consideraging introduced by long-running applications, such as web servers and mail servers,as measured at the operating system level, neglecting the contribution of intermediatelayers, such as middleware, virtual machines, and, more in general third-party OTS items.Starting from an experimental campaign on real world testbeds, this work isolatesthe contribution of the Java Virtual Machine to the overall aging trend, and identifies,through statistical methods, which workload parameters are more relevant to agingdynamics. Experimental results show that the Sun Hotspot JVM experiences softwareaging phenomena due to memory leakage. Presented results clearly indicate that muchmore efforts have still to be done in order to improve the dependability of the JVM.
Transcript of Memory Leak Analysis of Java Virtual Machine charcterizing Software Aging
Invalid document format