跳到主要导航 跳到搜索 跳到主要内容

SafeCheck: Safety Enhancement of Java Unsafe API

  • Shiyou Huang
  • , Jianmei Guo
  • , Sanhong Li
  • , Xiang Li
  • , Yumin Qi
  • , Kingsum Chow
  • , Jeff Huang

科研成果: 书/报告/会议事项章节会议稿件同行评审

摘要

Java is a safe programming language by providing bytecode verification and enforcing memory protection. For instance, programmers cannot directly access the memory but have to use object references. Yet, the Java runtime provides an Unsafe API as a backdoor for the developers to access the low- level system code. Whereas the Unsafe API is designed to be used by the Java core library, a growing community of third-party libraries use it to achieve high performance. The Unsafe API is powerful, but dangerous, which leads to data corruption, resource leaks and difficult-to-diagnose JVM crash if used improperly. In this work, we study the Unsafe crash patterns and propose a memory checker to enforce memory safety, thus avoiding the JVM crash caused by the misuse of the Unsafe API at the bytecode level. We evaluate our technique on real crash cases from the openJDK bug system and real-world applications from AJDK. Our tool reduces the efforts from several days to a few minutes for the developers to diagnose the Unsafe related crashes. We also evaluate the runtime overhead of our tool on projects using intensive Unsafe operations, and the result shows that our tool causes a negligible perturbation to the execution of the applications.

源语言英语
主期刊名Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering, ICSE 2019
出版商IEEE Computer Society
889-899
页数11
ISBN(电子版)9781728108698
DOI
出版状态已出版 - 5月 2019
已对外发布
活动41st IEEE/ACM International Conference on Software Engineering, ICSE 2019 - Montreal, 加拿大
期限: 25 5月 201931 5月 2019

出版系列

姓名Proceedings - International Conference on Software Engineering
2019-May
ISSN(印刷版)0270-5257

会议

会议41st IEEE/ACM International Conference on Software Engineering, ICSE 2019
国家/地区加拿大
Montreal
时期25/05/1931/05/19

指纹

探究 'SafeCheck: Safety Enhancement of Java Unsafe API' 的科研主题。它们共同构成独一无二的指纹。

引用此