AbstractJava virtual machine (JVM) crashes are often due to an invalid memory reference to the JVM heap. Before the bug that caused the invalid reference can be fixed, its location must be identified. It can be in either the JVM implementation or the native library written in C invoked from Java applications. To help system engineers identify the location, we implemented a feature using page protection that prevents threads executing native methods from referring to the JVM heap. This feature protects the JVM heap during native method execution; if the heap is referred to invalidly, it interrupts the execution by generating a page-fault exception. It then reports the location where the exception was generated. The runtime overhead for using...
The last twenty years have witnessed the constant reaction of the security com-munity to memory corr...
We propose to remove live objects from near-full heaps to reduce memory pressure. We modify Java ...
Fault localization is usually the most time-consuming step when debugging software bugs in general a...
AbstractJava virtual machine (JVM) crashes are often due to an invalid memory reference to the JVM h...
By using Java Native Interface (JNI), programmers can integrate Java programs with legacy systems or...
Explicit memory management of Java objects is a frequent source of programming errors in Java native...
[[abstract]]This paper studies the memory system behavior of Java programs by analyzing memory refer...
AbstractWe present a framework for statically reasoning about temporal heap safety properties. We fo...
Memory leak is unrecoverable software bug that causes performance degradation and re- liability issu...
Ahead-of-Time and Just-in-Time compilation are common ways to improve runtime performances of restra...
Data memory (heap) management is a particularly important feature of the Java programming environmen...
Static analysis which takes into account the values of data stored in the heap is considered complex...
Recently released non-volatile main memory (NVMM), as fast and durable memory, dramatically increase...
Existing virtual memory systems usually work well with applications written in C and C++, but they d...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
The last twenty years have witnessed the constant reaction of the security com-munity to memory corr...
We propose to remove live objects from near-full heaps to reduce memory pressure. We modify Java ...
Fault localization is usually the most time-consuming step when debugging software bugs in general a...
AbstractJava virtual machine (JVM) crashes are often due to an invalid memory reference to the JVM h...
By using Java Native Interface (JNI), programmers can integrate Java programs with legacy systems or...
Explicit memory management of Java objects is a frequent source of programming errors in Java native...
[[abstract]]This paper studies the memory system behavior of Java programs by analyzing memory refer...
AbstractWe present a framework for statically reasoning about temporal heap safety properties. We fo...
Memory leak is unrecoverable software bug that causes performance degradation and re- liability issu...
Ahead-of-Time and Just-in-Time compilation are common ways to improve runtime performances of restra...
Data memory (heap) management is a particularly important feature of the Java programming environmen...
Static analysis which takes into account the values of data stored in the heap is considered complex...
Recently released non-volatile main memory (NVMM), as fast and durable memory, dramatically increase...
Existing virtual memory systems usually work well with applications written in C and C++, but they d...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
The last twenty years have witnessed the constant reaction of the security com-munity to memory corr...
We propose to remove live objects from near-full heaps to reduce memory pressure. We modify Java ...
Fault localization is usually the most time-consuming step when debugging software bugs in general a...