摘要:资源泄漏是影响软件质量和可靠性的一种重要软件缺陷,存在资源泄漏的程序长时间运行会由于资源耗尽而发生异常甚至崩溃.静态代码分析是进行资源泄漏检测的一种有效的技术手段,能够基于源代码或者二进制代码有效地发现程序中潜在的资源泄漏问题.然而,精确的资源泄漏检测算法的复杂性会随着程序规模的增加呈指数级增长,无法满足生产中即时对缺陷进行分析检测的实际应用需求.面向大规模源代码提出了一种增量式的静态资源泄漏检测方法,该方法支持过程间流敏感的资源泄漏检测,在用户编辑代码的过程中,从变更的函数入手,通过资源闭包、指向分析过滤等多种技术手段缩小资源泄漏检测范围,进而实现了大规模代码的即时缺陷分析与报告.实验结果表明:该方法在保证准确率的前提下,90%的增量检测实验可以在10s内完成,能够满足在用户编辑程序过程中对缺陷进行即时检测和报告的实际应用需求.
Abstract:Resource leak is an important software defect that affects the quality and reliability of software and may cause program abnormality or even system crash.Static analysis is an effective defect detection method which can identify potential resource leaks in source code or executable binary.However,as the scale of programs increases,the complexity of accurate resource leak detection rises exponentially,thereby making it difficult to meet the demand of just-in-time defect detection for large practical applications.In this paper,an incremental static resource leak detection algorithm is proposed for large-scale source code projects.The algorithm supports inter-procedural flow sensitive resource leak detection that allows developers to observe the impact of their changes immediately.Starting from the modified functions,this approach narrows down the scope of resource leak detection by generating method closures and performing points-to analysis to analyze hundreds of thousands of lines of source code in seconds.Experimental results show that the algorithm completes defect detection within 10s with a high accuracy on more than 90% of the tests,which makes it possible for just-in-time resource leak detection for practical applications.
PDF全文下载地址:
http://jos.org.cn/jos/article/pdf/5506
删除或更新信息,请邮件至freekaoyan#163.com(#换成@)
大规模源代码增量式资源泄漏检测方法
本站小编 Free考研考试/2022-01-02
相关话题/资源 代码 程序 软件 过程
一种面向模糊测试的GUI程序空转状态实时检测方法
摘要:针对当前Windows下GUI软件模糊测试过程中,由于进入空转状态时刻判断不准确导致的测试效率降低的问题,利用自然语言处理的方法在函数执行迹的基础上来解决空转状态识别问题.首先分析了传统程序分析方法在空转状态判断上遇到的困难,提出了基于Bi-Gram模型以及统计分析的空转状态识别方法.通过Bi ...中科院软件研究所 本站小编 Free考研考试 2022-01-02对软件工程中经验研究的调查
摘要:为了描述、理解、评估、预测、控制、管理或者改善与软件相关的内容,研究者常常使用经验研究的方法.经验研究在软件工程领域已经得到广泛的应用并备受关注.为了了解近年来软件工程中经验研究的特点,并希望经验研究方法为更多研究者所了解,通过系统映射的方法,对软件工程中经验研究的典型期刊《Empirical ...中科院软件研究所 本站小编 Free考研考试 2022-01-02量子程序验证
摘要:量子硬件设计与制造技术的飞速发展使得人们开始预言大于100个量子比特的特定用途的量子计算机有望在5~10年内实现.可以想见,到那时候,量子软件的开发将变成真正发挥这些计算机能力的关键因素.然而,由于量子信息的不可克隆性和纠缠的非局域作用等量子特征,如何设计正确、高效的量子程序和量子通信协议将是 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02众包软件测试技术研究进展
摘要:众包测试是一种新兴的软件测试方式,得到了学术界和工业界的广泛关注.系统地总结了近年来众包软件测试研究的学术文献以及工业界实践进展:首先,从学术文献涉及的研究主题演变、涵盖的软件测试问题和众包测试流程、采用的实验对象及测试人员规模等多个角度对相关文献中提出的技术和方法进行了汇总;然后,从测试领域 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02软件定义网络控制平面可扩展性研究进展
摘要:软件定义网络(software-definednetworking,简称SDN)遵循控制转发分离的设计原则,其控制平面采用集中的控制逻辑,在提供灵活、高效的网络控制的同时,也面临着严重的可扩展性问题.对SDN控制平面可扩展性相关工作进行了综述.首先,分析了控制平面可扩展性的影响因素并给出改善思 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02秦皇岛2019年冬季重污染过程PM2.5来源数值模拟
摘要摘要:秦皇岛地处河北省东北部,是环渤海重要的港口城市,在近几年京津冀地区减排效果较好的情况下,于2019年1月出现了多次持续细颗粒物(PM2.5)污染过程。因此本文利用耦合了数值源解析模块ISAM(IntegratedSourceApportionmentMethod)的区域空气质量模式RAMS ...中科院大气物理研究所 本站小编 Free考研考试 2022-01-02秦皇岛2019年冬季重污染过程PM2.5来源数值模拟
摘要摘要:秦皇岛地处河北省东北部,是环渤海重要的港口城市,在近几年京津冀地区减排效果较好的情况下,于2019年1月出现了多次持续细颗粒物(PM2.5)污染过程。因此本文利用耦合了数值源解析模块ISAM(IntegratedSourceApportionmentMethod)的区域空气质量模式RAMS ...中科院大气物理研究所 本站小编 Free考研考试 2022-01-02华北地区2015年“1106”降雪过程诊断分析
摘要摘要:利用中国气象局MICAPS地面、高空等常规观测资料及欧洲中心ERA-Interim的0.25°(纬度)×0.25°(经度)逐6h再分析资料,对2015年11月5日至7日影响北京、河北的一次降雪过程的环流形势和动热力物理量进行了诊断分析,揭示了降雪特征及其形成原因。环流形势分析发现,此次降雪 ...中科院大气物理研究所 本站小编 Free考研考试 2022-01-02华北地区2015年“1106”降雪过程诊断分析
摘要摘要:利用中国气象局MICAPS地面、高空等常规观测资料及欧洲中心ERA-Interim的0.25°(纬度)×0.25°(经度)逐6h再分析资料,对2015年11月5日至7日影响北京、河北的一次降雪过程的环流形势和动热力物理量进行了诊断分析,揭示了降雪特征及其形成原因。环流形势分析发现,此次降雪 ...中科院大气物理研究所 本站小编 Free考研考试 2022-01-02不同类型华南暖区暴雨过程的环流特征
摘要摘要:在对34年华南暖区暴雨的筛选和客观分类研究的基础上,继续深入研究不同类型暖区暴雨的环流特征与对流发生环境变量特征的异同。主要结果如下:大部分切变线型、低涡型和回流型暖区暴雨个例的环境场斜压性较强,其中回流型暖区暴雨在关键区斜压性最强,而南风型暖区暴雨个例的环境场斜压性相对较弱;所有类型暖区 ...中科院大气物理研究所 本站小编 Free考研考试 2022-01-02