[发明专利]Java卡系统及其空间分配处理方法有效
| 申请号: | 201110437313.X | 申请日: | 2011-12-23 |
| 公开(公告)号: | CN102521145A | 公开(公告)日: | 2012-06-27 |
| 发明(设计)人: | 莫文盼;林国明 | 申请(专利权)人: | 东信和平智能卡股份有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02 |
| 代理公司: | 广州三环专利代理有限公司 44202 | 代理人: | 温旭 |
| 地址: | 519060 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | java 系统 及其 空间 分配 处理 方法 | ||
1.一种Java卡系统,包括一存储器空间,其特征在于:该存储器空间为电可擦可编程只读存储器空间,该存储器空间包括配置区、MAP表及堆,所述配置区用于存储关于系统配置的信息,所述信息包括USED_ADDR_NO(指向堆已用空间的开始地址)和MAX_ENTRY_COUNT_IN_MAP(存储MAP表最大的项数);所述堆用于存储实体,所述实体包括应用数据、用户信息;所述每一个实体都在MAP表有相应数据项。
2.根据权利要求1所述的Java卡系统,其特征在于:所述配置区的大小固定不变,其从所述电可擦可编程只读存储器空间底部开始分配;所述堆的大小是动态变化的,其从所述电可擦可编程只读存储器空间顶部开始;所述MAP表的空间可动态改变,由配置区的MAX_ENTRY_COUNT_IN_MAP变量存储MAP表的大小,所述MAP表的分配紧接所述配置区,一直延伸到所述堆;所述堆的空间与所述MAP表的空间不可重叠,通过USED_ADDR_NO记录所述堆已使用空间的大小。
3.一种Java卡系统存储器空间分配处理方法,包括空间分配方法、垃圾回收方法及堆碎片整理方法,其特征在于:所述存储器空间为电可擦可编程只读存储器空间,该存储器空间包括配置区、MAP表及堆,所述配置区用于存储关于系统配置的信息,所述信息包括USED_ADDR_NO(指向堆已用空间的开始地址)和MAX_ENTRY_COUNT_IN_MAP(存储MAP表最大的项数);所述堆用于存储实体,所述实体包括应用数据、用户信息;所述每一个实体都在MAP表有相应数据项;所述配置区的大小固定不变,其从所述电可擦可编程只读存储器空间底部开始分配;所述堆的大小是动态变化的,其从所述电可擦可编程只读存储器空间顶部开始;所述MAP表的空间可动态改变,由配置区的MAX_ENTRY_COUNT_IN_MAP变量存储MAP表的大小,所述MAP表的分配紧接所述配置区,一直延伸到所述堆;所述堆的空间与所述MAP表的空间不可重叠,通过USED_ADDR_NO记录所述堆已使用空间的大小;
所述空间分配方法包括以下步骤:
S11、由Java卡系统调用空间分配实现函数;
S12、在MAP表查找是否有可重用的表项标记堆实体,如没有,在MAP表尾端动态创建MAP表项标记堆实体;
S13、在堆分配空间给实体;
S14、堆实体与MAP表项建立关系;
所述堆碎片整理方法包括以下步骤:
S31、Java卡系统完成垃圾回收后,立即启动堆碎片整理;
S32、对空闲表中的空闲块由高到低排序,结果保存到所述Java卡系统的随机存储器中;
S33、合并空闲块,将两块空闲块之间的有效数据向堆顶部搬移,碎片数据向堆底部靠拢,从而使有效数据与碎片分离;
S34、更新MAP表,与堆实体重新建立正确的关联关系;
S35、清除所有空闲表。
4.根据权利要求3所述的方法,其特征在于:
所述S12包括:
S121、遍历所述MAP表,查找标记为is_free的MAP表项,其为可重用MAP表项;
S122、如果查找不到可重用MAP表项,在MAP表尾端创建一个新的MAP表项,所述MAX_ENTRY_COUNT_IN_MAP累加1,实现MAP表的动态变化。
5.根据权利要求3所述的方法,其特征在于:
所述S13包括:在堆中给所述实体分配内存空间,具体的,是在堆可用空间区的顶部给实体分配空间,并修改USED_ADDR_NO变量的指向;从而使堆空间动态分配,并且应用程序数据连续分配。
6.根据权利要求3所述的方法,其特征在于:
所述S14包括:修改MAP表项的堆地址,并将该MAP表项标记为非is_free状态,从而使堆实体与MAP表项建立关联。
7.根据权利要求3所述的方法,其特征在于:
所述S32包括:使用冒泡算法对空闲表中的数据由高到低排序;排序完成后,把空闲块数据存放到RAM中,并返回空闲块的数量。
8.根据权利要求3所述的方法,其特征在于:
所述S33包括:空闲块与后继的空闲块合并,两块空闲块之间的实体即有效数据向堆顶部搬移,达到有效数据与碎片分离。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东信和平智能卡股份有限公司,未经东信和平智能卡股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110437313.X/1.html,转载请声明来源钻瓜专利网。





