[发明专利]分配JavaCard瞬态对象存储空间的方法和装置在审
申请号: | 201710985063.0 | 申请日: | 2017-10-20 |
公开(公告)号: | CN107807846A | 公开(公告)日: | 2018-03-16 |
发明(设计)人: | 朱良销;肖洪琨;熊艳萍 | 申请(专利权)人: | 大唐微电子技术有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 王康,龙洪 |
地址: | 100094*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分配 javacard 瞬态 对象 存储空间 方法 装置 | ||
技术领域
本发明涉及Java Card技术,尤指一种分配Java Card瞬态对象存储空间的方法和装置。
背景技术
Java Card技术是把Java编程语言的一个子集同一个优化的运行环境结合在一起的技术。Java Card技术针对小存储量的嵌入式设备,例如智能卡,目标是让资源受限的小存储量的嵌入式设备收益于用Java语言开发的软件。小存储量设备主要包括存储空间小的只读存储器ROM、电可擦可编程只读存储器EEPROM、FLASH和随机存取存储器RAM。其中RAM的成本昂贵,但访问效率高,因此如何有效的使用RAM,是Java Card需要考虑的问题。
Java Card规范中指定了两种类型的瞬态对象:复位清除RTR(CLEAR_ON_RESET)和退选清除DTR(CLEAR_ON_DESELECT)。这两种瞬态对象用于存放临时数据。
现有技术中,Java Card分配瞬态对象存储空间的方法包括:为RTR和DTR分配固定大小的RAM空间,如固定分配1K的RAM空间用于RTR对象的申请;若支持4个逻辑通道,每个逻辑通道分配1K的RAM空间用于DTR对象的申请,这样的话总共需要5K的RAM空间,如图1所示。由于对Java Card应用开发的未知性,在为RTR和DTR分配固定大小的RAM空间时,只能预置固定RTR和DTR的最大申请空间,在RAM资源受限的情况下,这种实现方式未能有效的使用RAM空间,而且不具灵活性。
发明内容
为了解决上述技术问题,本发明提供了一种分配Java Card瞬态对象存储空间的方法和装置。
为了达到本发明目的,本发明提供了一种分配Java Card瞬态对象存储空间的方法,所述方法包括:
需要占用随机存取存储器RAM空间时,临时为Java Card瞬态对象申请空间;
当为Java Card瞬态对象分配空间时,将复位清除RTR空间和退选清除DTR空间分别置于RAM空间的首尾两端,将每个后申请的RTR空间和DTR空间分别与已存在的RTR空间和DTR空间在地址上保持连续。
可选的,所述将RTR空间和DTR空间分别置于RAM空间的首尾两端,将每个后申请的RTR空间和DTR空间分别与已存在的RTR空间和DTR空间在地址上保持连续,包括:
将首次申请的RTR空间和DTR空间分别置于RAM空间的首尾两端,分别将已申请的RTR空间和DTR空间的末尾地址作为后申请的RTR空间和DTR空间的起始地址。
可选的,所述分配RTR空间包括:
当RAM可用的空间大于RTR申请的空间时,将已用的RTR空间的末尾地址作为申请的RTR空间的起始地址,并将申请的RTR空间增加至已使用的RTR空间中;
其中,RAM可用的空间为RAM总空间扣除已使用的RTR空间和DTR空间。
可选的,所述分配DTR空间包括:
为申请DTR的应用当前使用的每个数据包分配一片RAM空间,每个数据包占用的RAM空间在地址上连续。
可选的,为申请DTR的应用当前使用的每个数据包分配一片RAM空间,每个数据包占用的RAM空间在地址上连续,包括:
若申请DTR空间的应用使用的数据包已被分配了RAM空间,且RAM可用的空间大于DTR申请的空间时,将所述应用使用的数据包被分配空间的末尾地址作为所述申请的DTR空间的起始地址,将申请的DTR空间添加到为所述应用数据使用的数据包被分配的空间,并将在所述应用使用的数据包被分配的空间之后分配的数据包空间向RTR空间的方向移动所述申请的DTR空间;
若申请DTR空间的应用使用的数据包没有被分配RAM空间,且RAM可用的空间大于DTR申请的空间时,将已用的DTR空间的末尾地址作为申请的DTR空间的起始地址,并将申请的DTR空间增加至已使用的DTR空间中。
本发明实施例还提供了一种分配Java Card瞬态对象存储空间的装置,所述装置包括:
空间申请模块,用于在需要占用随机存取存储器RAM空间时,临时为Java Card瞬态对象申请空间;
空间分配模块,用于将复位清除RTR空间和退选清除DTR空间分别置于RAM空间的首尾两端,将每个后申请的RTR空间和DTR空间分别与已存在的RTR空间和DTR空间在地址上保持连续。
可选的,所述空间分配模块,用于将首次申请的RTR空间和DTR空间分别置于RAM空间的首尾两端,分别将已申请的RTR空间和DTR空间的末尾地址作为后申请的RTR空间和DTR空间的起始地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大唐微电子技术有限公司,未经大唐微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710985063.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种增量式数据并行处理装置与方法
- 下一篇:一种云桌面系统