paperbot · PL 论文追踪

全部论文 待读 收藏

P2 JNI program analysis with automatically extracted C semantic summary

基于自动提取 C 语义摘要的 JNI 程序分析
ISSTA Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis2019匹配度 2/10 · 该论文属于传统程序分析与抽象解释领域,关注 Java-C 互操作(JNI)的跨语言缺陷检测,并未涉及用户的 PL↔AI/LLM、Agentic 程序、浮点程序分析或贝叶斯程序分析等核心方向。虽然同属程序分析,但缺乏与 LLM/Agent 或机器学习系统的交叉,匹配度较低。引用 7 inbox
Sungho Lee
crossref: 2026-09-12

AI 速览

一句话:提出面向 JNI 的程序分析,通过自动提取 C 语义摘要来刻画 Java-C 互操作语义,以发现跨语言缺陷。

Java 运行时普遍通过 JNI 支持 Java 与 C 的互操作,使开发者能够提升性能或复用 C 库;但两种语言在语义上的差异,以及开发者对完整互操作语义理解不足,会引入各类意外缺陷。现有程序分析技术并不覆盖这一互操作过程,因而难以保障 JNI 程序质量。本文提出面向 JNI 的程序分析,其核心是自动提取 C 语言的语义摘要,用该摘要描述本机代码行为并支撑对 Java-C 交互的分析。摘要未报告具体实验或工具评估结果。

问题
Java 与 C 通过 JNI 互操作时,语言语义差异和开发者理解不足会导致意外缺陷,而现有程序分析技术未覆盖这种互操作。
方法
通过自动提取 C 语言的语义摘要,并将其用于 JNI 程序分析,以建模 Java 调用 C 等跨语言交互行为。
评估
给出的摘要未包含具体评估信息,仅指出既有分析不覆盖 JNI 互操作,因此无法判断实验设置或效果。
原文摘要(Abstract)

From Oracle JVM to Android Runtime, most Java runtime environments officially support Java Native Interface (JNI) for interaction between Java and C. Using JNI, developers can improve Java program performance or reuse existing libraries implemented in C. At the same time, differences between the languages can lead to various kinds of unexpected bugs when developers do not understand the differences or comprehensive interoperation semantics completely. Furthermore, existing program analysis techniques do not cover the interoperation, which can reduce the quality of JNI programs.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot5367,
  title = {JNI program analysis with automatically extracted C semantic summary},
  author = {Sungho Lee},
  booktitle = {ISSTA},
  year = {2019},
  doi = {10.1145/3293882.3338990}
}