【技术实现步骤摘要】
本专利技术总体上涉及确定程序中内存泄漏位置的方法和装置,更具 体地涉及通过结合动态分析和静态分析来确定程序中的内存泄漏位置 的方法和装置。
技术介绍
可靠性是衡量软件系统质量的重要指标,内存泄漏是破坏系统可 靠性的重要因素。内存泄漏会降低系统性能,严重时会导致系统崩溃。程序执行过程中,由于很多变量所需的内存空间在编译时无法确 定,操作系统需要为这些变量动态地分配内存。相应地,许多编程语 言都有其内存分配/回收机制,变量被创建时分配内存,变量不再需要 时释放其所占内存。程序中不适当的编程项会导致出现内存泄漏,其在不同类型程序中的表现形式不同。比如,在c/c+十程序中,内存泄漏是指程序中已动态分配的堆内存由于某种原因未释放或无法释放,造成系统内存的浪费。而在Java程序中,通过垃圾收集机制(Garbage Collection, GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存, 但是Java软件程序中还是有可能出现内存泄漏。这是因为GC只能回 收无用并且不再被其它对象引用的那些对象所占用的空间,而无法处 理因编码错误而意外地保存了对该对象的引用的情况。 ...
【技术保护点】
一种确定程序中的内存泄漏位置的方法,该方法包括以下步骤: 对程序进行动态分析,以确定内存泄漏特征;以及 基于所确定的内存泄漏特征对程序进行静态分析,从而确定内存泄漏位置。
【技术特征摘要】
【专利技术属性】
技术研发人员:王成伟,刘天成,罗景,李影,龙泉,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。