Bibliographic Details
| Title: |
Interactive Cross-Language Pointer Analysis For Resolving Native Code in Java Programs. |
| Authors: |
Zhang, Chenxi1 dz1733024@mail.nju.edu.cn, Liang, Yufei1 602024330013@mail.nju.edu.cn, Tan, Tian1 tiantan@nju.edu.cn, Xu, Chang1 changxu@nju.edu.cn, Kan, Shuangxiang2 shuangxiang.kan@unsw.edu.au, Sui, Yulei2 y.sui@unsw.edu.au, Li, Yue1 yueli@nju.edu.cn |
| Source: |
ICSE: International Conference on Software Engineering. 2025, p1237-1248. 12p. |
| Subjects: |
Java programming language, Application program interfaces |
| Abstract: |
Java offers the Java Native Interface (JNI), which allows programs running in the Java Virtual Machine to invoke and be manipulated by native applications and libraries written in other languages, typically C. While JNI mechanism significantly enhances the Java platform's capabilities, it also presents challenges for static analysis of Java programs due to the complex behaviors introduced by native code. Therefore, effectively resolving the interactions between Java and native code is crucial for static analysis. In this paper, we introduce JNIFER, the first interactive cross-language pointer analysis for resolving native code in Java programs. JNIFER integrates both Java and C pointer analyses, equipped with advanced native call and JNI function analyses, enabling the simultaneous analysis of both Java and native code. During the analysis of cross-language interactions, the two analyzers interact with each other, constructing cross-language points-to relations and call graphs, thereby approximating the runtime behavior at the interaction sites. Our evaluation shows that JNIFER outperforms state-of-the-art approaches in terms of soundness while maintaining high precision and comparable efficiency, as evidenced by extensive experiments on OpenJDK and real-world Java applications. [ABSTRACT FROM AUTHOR] |
|
Copyright of ICSE: International Conference on Software Engineering is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.) |
| Database: |
Engineering Source |