IPSJ Online Transactions
Online ISSN : 1882-6660
ISSN-L : 1882-6660
SEAN: Support Tool for Detecting Rule Violations in JNI Coding
Haruna NishiwakiTomoharu UgawaSeiji UmataniMasahiro YasugiTaiichi Yuasa
Author information
JOURNAL FREE ACCESS

2012 Volume 5 Pages 139-144

Details
Abstract

A static analysis tool has been developed for finding common mistakes in programs that use the Java Native Interface (JNI). Specific rules in JNI are not caught by C++ and other compilers, and this tool is aimed at rules about references to Java objects, which are passed to native methods as local references. Local references become invalid when the native method returns. To keep them valid after the return, the programmer should convert them into global references. If they are not converted, the garbage collector may malfunction and may, for example, fail to mark referenced objects. The developed static analysis tool finds assignments of local references to locations other than local variables such as global variables and structure fields. The tool was implemented as a plug-in for Clang, a compiler front-end for the LLVM. Application of this tool to native Android code demonstrated its effectiveness.

Content from these authors
© 2012 by the Information Processing Society of Japan
Previous article Next article
feedback
Top