[发明专利]Java虚拟机的垃圾回收移动通信终端及回收方法有效
| 申请号: | 200810056889.X | 申请日: | 2008-01-25 |
| 公开(公告)号: | CN101221535A | 公开(公告)日: | 2008-07-16 |
| 发明(设计)人: | 方震 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F9/46;H04Q7/32 |
| 代理公司: | 北京律诚同业知识产权代理有限公司 | 代理人: | 梁挥;祁建国 |
| 地址: | 518057广东省深圳市南*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | java 虚拟机 垃圾 回收 移动 通信 终端 方法 | ||
1.一种移动通信终端中Java虚拟机的垃圾回收方法,其特征在于,包括如下步骤:
保存当前线程的上下文环境;
遍历Java虚拟机内存中的所有运行时对象,对可达对象的标志位进行标记,并对可达对象的类型进行记录;
对未标记的对象占用的Java虚拟机内存空间进行合并以及释放;
对可达对象的内存空间进行紧缩处理;
恢复当前线程的上下文环境。
2.如权利要求1所述的方法,其特征在于,所述对可达对象的类型进行记录的步骤进一步包括:
定义一位图,所述位图中的位对应记录所述Java虚拟机的内存空间;
对引用类型或者值类型的对象所占据的Java虚拟机的内存空间在位图中的对应位置位。
3.如权利要求1或2所述的方法,其特征在于,所述对可达对象进行标记的步骤进一步包括:对Java虚拟机内存中已标记的对象的子对象进行递归标记。
4.如权利要求1所述的方法,其特征在于,在执行保存当前线程的上下文环境的步骤之前,将Java虚拟机内存分成固定大小的块。
5.如权利要求2所述的方法,其特征在于,所述紧缩处理步骤包括:
当Java虚拟机内存不足时,遍历所述位图,确定引用类型的对象的位置,根据该引用类型的对象的标志位回收其空间;和/或
遍历所述位图,确定值类型的对象的位置,将所述值类型的对象收集到一连续的区块中。
6.如权利要求1、2、4或5所述的方法,其特征在于,保存当前线程的上下文环境的步骤之前进一步包括:
Java虚拟机调度模块根据垃圾回收线程的优先级参数,调用该垃圾回收线程,执行保存当前线程的上下文环境的步骤。
7.一种对Java虚拟机中的垃圾进行回收的移动通信终端,所述移动通信终端中设置有Java虚拟机,其特征在于,所述Java虚拟机包括一垃圾回收模块,该垃圾回收模块进一步包括:
上下文环境保存模块,用于保存当前线程的上下文环境;
标记模块,用于遍历Java虚拟机内存中的所有运行时对象,对可达对象的标志位进行标记,并对可达对象的类型进行记录;
内存合并模块,用于对未标记的对象占用的Java虚拟机内存空间进行合并以及释放;
紧缩模块,用于对可达对象的内存空间进行紧缩处理;
上下文环境恢复模块,用于恢复当前线程的上下文环境。
8.如权利要求7所述的移动通信终端,其特征在于,所述标记模块进一步包括一位图记录模块,该位图记录模块用于定义一位图,所述位图中的位对应记录所述Java虚拟机的内存空间;
利用所述位图对所述可达对象的类型进行记录,对引用类型或者值类型的对象所占据的Java虚拟机的内存空间在位图中的对应位置位。
9.如权利要求8所述的移动通信终端,其特征在于,所述紧缩模块,用于当Java虚拟机内存不足时,遍历所述位图,确定引用类型的对象的位置,根据该引用类型的对象的标志位回收其空间;和/或
遍历所述位图,确定值类型的对象的位置,将所述值类型的对象收集到一个连续的区块中。
10.如权利要求7、8或9所述的移动通信终端,其特征在于,Java虚拟机的调度模块根据所述垃圾回收模块的优先级参数,执行该垃圾回收模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810056889.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:靶向NCCa-ATP通道的治疗剂及其使用方法
- 下一篇:令牌共享系统和方法





