检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]中国科学技术大学计算机科学与技术学院,合肥230027 [2]中国科学技术大学苏州研究院软件安全实验室,江苏苏州215123
出 处:《小型微型计算机系统》2012年第11期2341-2345,共5页Journal of Chinese Computer Systems
基 金:国家自然科学基金项目(60928004)资助;中央高校基本科研业务费专项资金资助
摘 要:在编译辅助的垃圾收集系统中,由于方法的动态绑定等特性,编译时的分析算法保守处理虚方法调用,从而难以识别并显式回收在虚方法调用期间变为不活跃的对象.提出一种改进Java库方法调用的生命期分析策略:它以指向逃逸图为基础来抽象描述库方法对堆中对象活跃状态的改变模式,并将堆变化模式应用到Java程序的对象生命期分析中,从而增强现有对象回收技术对库调用分析的精确性.通过将本文方法应用到Jolden测试程序集中对String相关类的库调用的分析,结果表明新方法以平均增加12%的编译时间开销将显式回收对象的大小提升了33%-37%.In compiler-assisted garbage collecting systems, compile-time analysis algorithms often conservatively analyze virtual method calls, accordingly losing opportunity to explicitly free inactive ( dead ) objects during the execution of those method calls. A novel scheme is proposed to improve object lifetime analysis on Java library method calls, which is based on describing transition patterns of heap caused by library method calls using point-to escape graph abstraction. The transition patterns can be combined with previous object lifetime analysis algorithms to improve the precision of analysis. By applying the scheme to method calls of String and its related classes, experimental results suggest that the scheme may be realistic and useful i increasing the size of explicitly reclaimed objects by 33% -37% in the 12% additional cost of compile time on Jolden benchmarks.
关 键 词:编译时对象回收 Java库 指向逃逸图 堆变化模式
分 类 号:TP314[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:18.119.0.207