[发明专利]一种自适应动态代码卸载方法无效
申请号: | 201110227094.2 | 申请日: | 2011-08-09 |
公开(公告)号: | CN102243596A | 公开(公告)日: | 2011-11-16 |
发明(设计)人: | 杨珉;周波;张源 | 申请(专利权)人: | 复旦大学 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F9/455 |
代理公司: | 上海正旦专利代理有限公司 31200 | 代理人: | 陆飞;盛志范 |
地址: | 200433 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于Java虚拟机设计技术领域,具体为一种自适应动态代码卸载方法。该方法包括:方法栈遍历,从虚拟机栈上获得每个方法的栈帧数据;方法状态迁移,依据所设计的状态机和得到的方法栈信息,做出正确的方法卸载状态迁移;代码卸载,虚拟机遍历整个方法列表,获取每个方法的卸载状态,如果其状态满足状态机所设定的终止态,则对方法的代码进行卸载,将其所占内存释放。本发明借助已有的垃圾回收机制,在垃圾回收过程中动态获取方法的状态,根据用户设置自适应地实现方法的卸载,消除了为获得较为准确的热、冷方法而进行程序剖析的额外开销,提高了程序执行速度,并且获得了比较好的代码卸载效果。 | ||
搜索关键词: | 一种 自适应 动态 代码 卸载 方法 | ||
【主权项】:
一种自适应动态代码卸载方法,其特征在于分为三个阶段:方法栈遍历、方法状态迁移和代码卸载;在方法栈遍历阶段,从虚拟机栈上获得每个方法的栈帧数据;在方法状态迁移阶段,依据所设计的状态机、通过第一阶段得到的方法栈信息进一步获得的方法当前卸载状态以及方法在垃圾回收过程中是否被扫描信息,做出正确的方法卸载状态迁移;在代码卸载阶段,虚拟机遍历整个方法列表,获取每个方法的卸载状态,如果其状态满足状态机所设定的终止态,则对方法的代码进行卸载,将其所占内存释放。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于复旦大学,未经复旦大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110227094.2/,转载请声明来源钻瓜专利网。