两阶段在线内存泄漏检测

J. Liang, H. Kao, Han-Ching Tsao, Shao-Chen Chang, Meng-Hsun Tsai, Kuan-Hsien Li, Y. C. Sung
{"title":"两阶段在线内存泄漏检测","authors":"J. Liang, H. Kao, Han-Ching Tsao, Shao-Chen Chang, Meng-Hsun Tsai, Kuan-Hsien Li, Y. C. Sung","doi":"10.1109/APNOMS.2012.6356092","DOIUrl":null,"url":null,"abstract":"Memory leaks generated by a running program may exhaust memory resources and degrade system performance. It is hard to reproduce these kinds of leaks, let alone to identify and fix them early in the development phase. Thus online memory leak detection is required. In this paper we propose a two-phase approach to the online memory leak detection problem for Java programs. In phase one (offline analysis), the user executes the investigated program for a while and analyzes its heap with the proposed agent. The agent then summarizes the total occupied bytes of data structures in the heap offline, and the user is then able to select classes whose object instances seem to be potential leaks by examining the total occupied bytes summary. In phase two (online monitoring), to reduce the space and time overhead at runtime, the agent monitors online the objects of selected classes instead of monitoring all objects in the heap. The approach reports the last accessed time and location (including the source file name and the line number) of each leak candidate, with which the user can identify and fix leaks in the program.","PeriodicalId":385920,"journal":{"name":"2012 14th Asia-Pacific Network Operations and Management Symposium (APNOMS)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2012-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"Two-phase online memory leak detection\",\"authors\":\"J. Liang, H. Kao, Han-Ching Tsao, Shao-Chen Chang, Meng-Hsun Tsai, Kuan-Hsien Li, Y. C. Sung\",\"doi\":\"10.1109/APNOMS.2012.6356092\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Memory leaks generated by a running program may exhaust memory resources and degrade system performance. It is hard to reproduce these kinds of leaks, let alone to identify and fix them early in the development phase. Thus online memory leak detection is required. In this paper we propose a two-phase approach to the online memory leak detection problem for Java programs. In phase one (offline analysis), the user executes the investigated program for a while and analyzes its heap with the proposed agent. The agent then summarizes the total occupied bytes of data structures in the heap offline, and the user is then able to select classes whose object instances seem to be potential leaks by examining the total occupied bytes summary. In phase two (online monitoring), to reduce the space and time overhead at runtime, the agent monitors online the objects of selected classes instead of monitoring all objects in the heap. The approach reports the last accessed time and location (including the source file name and the line number) of each leak candidate, with which the user can identify and fix leaks in the program.\",\"PeriodicalId\":385920,\"journal\":{\"name\":\"2012 14th Asia-Pacific Network Operations and Management Symposium (APNOMS)\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2012-11-26\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2012 14th Asia-Pacific Network Operations and Management Symposium (APNOMS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/APNOMS.2012.6356092\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 14th Asia-Pacific Network Operations and Management Symposium (APNOMS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APNOMS.2012.6356092","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

摘要

运行程序产生的内存泄漏可能会耗尽内存资源,降低系统性能。很难重现这些类型的泄漏,更不用说在开发阶段早期识别和修复它们了。因此需要在线内存泄漏检测。本文提出了一种两阶段的方法来解决Java程序的在线内存泄漏检测问题。在阶段一(脱机分析)中,用户执行调查的程序一段时间,并使用建议的代理分析其堆。然后,代理总结脱机堆中数据结构的总占用字节,然后用户可以通过检查总占用字节摘要来选择对象实例似乎是潜在泄漏的类。在第二阶段(在线监视)中,为了减少运行时的空间和时间开销,代理在线监视所选类的对象,而不是监视堆中的所有对象。该方法报告每个候选泄漏的最后访问时间和位置(包括源文件名和行号),用户可以使用这些信息识别和修复程序中的泄漏。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Two-phase online memory leak detection
Memory leaks generated by a running program may exhaust memory resources and degrade system performance. It is hard to reproduce these kinds of leaks, let alone to identify and fix them early in the development phase. Thus online memory leak detection is required. In this paper we propose a two-phase approach to the online memory leak detection problem for Java programs. In phase one (offline analysis), the user executes the investigated program for a while and analyzes its heap with the proposed agent. The agent then summarizes the total occupied bytes of data structures in the heap offline, and the user is then able to select classes whose object instances seem to be potential leaks by examining the total occupied bytes summary. In phase two (online monitoring), to reduce the space and time overhead at runtime, the agent monitors online the objects of selected classes instead of monitoring all objects in the heap. The approach reports the last accessed time and location (including the source file name and the line number) of each leak candidate, with which the user can identify and fix leaks in the program.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信