CN105653464A - 一种java智能卡的结构及其对象管理方法 - Google Patents
一种java智能卡的结构及其对象管理方法 Download PDFInfo
- Publication number
- CN105653464A CN105653464A CN201410635965.8A CN201410635965A CN105653464A CN 105653464 A CN105653464 A CN 105653464A CN 201410635965 A CN201410635965 A CN 201410635965A CN 105653464 A CN105653464 A CN 105653464A
- Authority
- CN
- China
- Prior art keywords
- district
- read
- handle
- dynamic
- manages
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000007726 management method Methods 0.000 title abstract description 30
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 201000002266 mite infestation Diseases 0.000 abstract 1
- 238000005299 abrasion Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011067 equilibration Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种JAVA智能卡的结构及其对象管理方法,涉及智能卡技术领域。本发明结构包括对象管理区和对象数据区。所述对象管理区由只读对象管理区和动态对象管理区组成,只读对象管理区用于管理初始化完成以后不会发生改变的只读对象,动态对象管理区用于管理初始化完成以后会有修改操作的动态对象。对象的数据通过对象句柄进行访问,所述对象句柄由对象ID和对象属性组成。同现有技术相比,本发明不需要对非易失性存储器进行多次访问,能有效提高JAVA智能卡执行效率。
Description
技术领域
本发明涉及智能卡技术领域,特别是JAVA智能卡的结构及其对象管理方法。
背景技术
随着智能卡的普及,它已经被广泛应用于移动通信、电子商务、交通运输、社保和金融等生活中的各个领域。
JAVA智能卡以其安全的多应用支持、主流的面向对象编程环境、应用程序动态下载等众多优点在产业界得到了广泛应用。随着智能卡应用领域的扩展,智能卡的执行速度越来越重要,其中对象管理是JAVA智能卡执行效率的瓶颈。
现有技术中,JAVA智能卡在对象管理上普遍采用两级表的形式。其表结构包括:1)对象主表,存储每个对象子表的地址、对象子表中已有对象个数OBJNUM、最大对象个数OBJMAXNUM;2)对象子表,存储每个对象的地址及该对象所属的包。但是,基于上述表结构的对象管理很复杂:1)对象创建:在对象主表中查找空闲对象子表,若不存在空闲对象子表,则创建对象子表,得到对象子表ID表示为SUBTABID;在对象子表中查找空闲对象位置,得到对象ID表示为OBJID,得到对象的句柄为SUBTABID*OBJMAXNUM+OBJID;2)对象访问:通过对象句柄计算出对象子表信息在主表中的地址,查询对象子表,获得到对象的地址,通过对象地址进行对象的访问;3)对象删除:通过对象句柄计算出对象子表信息在主表中的地址,查询对象子表,获得到对象的地址和大小,将对象信息从对象表中清除,释放空间。从上述可知在对象创建、删除及访问的过程中都要多次对非易失性存储器进行访问,严重影响了平台卡的执行效率。
发明内容
针对上述现有技术中存在的问题,本发明的目的是提供一种JAVA智能卡的结构及其对象管理方法。它不需要对非易失性存储器进行多次访问,能有效提高JAVA智能卡执行效率。
为了达到上述发明目的,本发明的技术方案以如下方式实现:
一种JAVA智能卡的结构,它包括对象管理区和对象数据区。所述对象管理区由只读对象管理区和动态对象管理区组成,只读对象管理区用于管理初始化完成以后不会发生改变的只读对象,动态对象管理区用于管理初始化完成以后会有修改操作的动态对象。对象的数据通过对象句柄进行访问,所述对象句柄由对象ID和对象属性组成。
如上所述JAVA智能卡结构的对象管理方法,它包括对象创建方法、对象访问方法和对象删除方法,
其中的对象创建方法步骤为:
1)首先调用对象创建接口,根据创建对象接口传送的参数判断创建对象的属性;
2)如果创建的是只读对象就从只读对象管理区中查找一块空闲区域分配给该对象;如果创建的是动态对象就从动态对象管理区中查找一块空闲区域分配给该对象;
3)根据对象属性和分配空间的起始块号计算对象的句柄;
4)返回对象句柄,对象创建操作结束。
其中的对象访问方法步骤为:
1)首先调用对象访问接口,根据对象的句柄判断其属性;
2)如果是只读对象就根据对象句柄中起始块号在只读对象管理区中查找对象的位置;如果是动态对象就根据对象句柄中起始块号从动态对象管理区中查找对象的位置;
3)根据要读数据的偏移及长度从对象管理区中返回要读的数据,对象的访问操作结束。
其中的对象删除方法步骤为:
1)首先调用对象删除接口,根据对象句柄判断其属性;
2)如果是只读对象就根据对象句柄中起始块号在只读对象管理区中查找对象的位置;如果是动态对象就根据对象句柄中起始块号从动态对象管理区中查找对象的位置;
3)找到对象后根据对象的结构读出该对象的大小。
4)根据起始块号及对象的大小从对象管理区中释放对象空间并清除该对象区域中的数据,对象删除操作结束。
本发明由于采用了上述结构及管理方法,以使智能卡的管理步骤简单明确,不需要对非易失性存储器进行多次访问,从而大大提高了JAVA智能卡的执行效率。
下面结合附图和具体实施方式对本发明作进一步说明。
附图说明
图1为本发明实施例中对象管理区的结构示意程图;
图2为本发明实施例中对象句柄的结构示意图;
图3为本发明对象管理方法中对象创建的流程示意图;
图4为本发明对象管理方法中对象访问的流程示意图;
图5为本发明对象管理方法中对象删除的流程示意图。
具体实施方式
参见图1和图2,本发明包括对象管理区1和对象数据区。对象管理区1由只读对象管理区1.1和动态对象管理区1.2组成。只读对象管理区1.1用于管理初始化完成以后不会发生改变的多个只读对象,动态对象管理区1.2用于管理初始化完成以后会有修改操作的多个动态对象。对象的数据通过对象句柄进行访问,所述对象句柄由对象ID和对象属性组成。对象包括只读对象和动态对象,对象句柄为两个字节,最高位B15表示该对象在只读对象管理区1.1还是在动态对象管理区1.2,B14~B0表示块号,块的大小根据对象管理区大小及平台的要求可以任意配置。
本发明结构中的只读对象数据按照连续空间进行管理,只读对象管理区1.1仅存储对象的起始物理地址和占据空间信息。动态对象管理区1.2存储动态数据空间的空闲信息和映射信息。其中的空闲信息包括对象ID占用和物理页占用,其中的映射信息按照对象ID存储对象数据的物理地址。对象数据区包括实际数据区和冗余数据区。动态对象更新操作时,通过在实际数据区和冗余数据区中查找空闲页写入新数据,更新动态对象管理区1的映射信息,实现掉电保护和磨损平衡。
本发明实施时,对象管理区1按照对象ID存储对象的物理信息。对象物理信息包括对象数据的物理地址和对象的大小。通过对象句柄存储的对象属性和对象ID,从对象管理区1指定偏移处直接获取到对象数据的物理地址进行对象数据的读访问。通过查询对象管理区1,得到空闲对象ID、对象的数据存储物理地址,将对象物理信息存储到对象管理区1实现对象的创建。通过对象句柄中存储的对象属性和对象ID,在对应的对象管理区1对应ID偏移存储的对象物理信息清除为无效实现对象删除和空间回收。通过查询对象管理区1,得到空闲物理页,将对象数据写入,再更新所述对象物理信息中的物理地址,实现对象数据的更新。
参见图3,本发明在对象创建过程中的方法步骤为:
1)首先调用对象创建接口,根据创建对象接口传送的参数判断创建对象的属性;
2)如果创建的是只读对象就从只读对象管理区1.1中查找一块空闲区域分配给该对象;如果创建的是动态对象就从动态对象管理区1.2中查找一块空闲区域分配给该对象;
3)根据对象属性和分配空间的起始块号计算对象的句柄;
4)返回对象句柄,对象创建操作结束。
参见图4,本发明在对象访问过程中的方法步骤为:
1)首先调用对象访问接口,根据对象的句柄判断其属性;
2)如果是只读对象就根据对象句柄中起始块号在只读对象管理区1.1中查找对象的位置;如果是动态对象就根据对象句柄中起始块号从动态对象管理区1.2中查找对象的位置;
3)根据要读数据的偏移及长度从对象管理区1中返回要读的数据,对象的访问操作结束。
参见图4,本发明在对象删除过程中的方法步骤为:
1)首先调用对象删除接口,根据对象句柄判断其属性;
2)如果是只读对象就根据对象句柄中起始块号在只读对象管理区1.1中查找对象的位置;如果是动态对象就根据对象句柄中起始块号从动态对象管理区1.2中查找对象的位置;
3)找到对象后根据对象的结构读出该对象的大小;
4)根据起始块号及对象的大小从对象管理区1中释放对象空间并清除该对象区域中的数据,对象删除操作结束。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉此技术领域的技术人员在本发明公开的技术范围内,显而易见得到的变换或者替换,都应该属于本发明的保护范围。
Claims (2)
1.一种JAVA智能卡的结构,其特征在于,它包括对象管理区(1)和对象数据区,所述对象管理区(1)由只读对象管理区(1.1)和动态对象管理区(1.2)组成,只读对象管理区(1.1)用于管理初始化完成以后不会发生改变的只读对象,动态对象管理区(1.2)用于管理初始化完成以后会有修改操作的动态对象,对象的数据通过对象句柄进行访问,所述对象句柄由对象ID和对象属性组成。
2.如权利要求1所述JAVA智能卡结构的对象管理方法,它包括对象创建方法、对象访问方法和对象删除方法,
其中的对象创建方法步骤为:
1)首先调用对象创建接口,根据创建对象接口传送的参数判断创建对象的属性;
2)如果创建的是只读对象就从只读对象管理区(1.1)中查找一块空闲区域分配给该对象;如果创建的是动态对象就从动态对象管理区(1.2)中查找一块空闲区域分配给该对象;
3)根据对象属性和分配空间的起始块号计算对象的句柄;
4)返回对象句柄,对象创建操作结束;
其中的对象访问方法步骤为:
1)首先调用对象访问接口,根据对象的句柄判断其属性;
2)如果是只读对象就根据对象句柄中起始块号在只读对象管理区(1.1)中查找对象的位置;如果是动态对象就根据对象句柄中起始块号从动态对象管理区(1.2)中查找对象的位置;
3)根据要读数据的偏移及长度从对象管理区(1)中返回要读的数据,对象的访问操作结束;
其中的对象删除方法步骤为:
1)首先调用对象删除接口,根据对象句柄判断其属性;
2)如果是只读对象就根据对象句柄中起始块号在只读对象管理区(1.1)中查找对象的位置;如果是动态对象就根据对象句柄中起始块号从动态对象管理区(1.2)中查找对象的位置;
3)找到对象后根据对象的结构读出该对象的大小;
4)根据起始块号及对象的大小从对象管理区(1)中释放对象空间并清除该对象区域中的数据,对象删除操作结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410635965.8A CN105653464B (zh) | 2014-11-13 | 2014-11-13 | 一种java智能卡的结构及其对象管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410635965.8A CN105653464B (zh) | 2014-11-13 | 2014-11-13 | 一种java智能卡的结构及其对象管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105653464A true CN105653464A (zh) | 2016-06-08 |
CN105653464B CN105653464B (zh) | 2024-05-07 |
Family
ID=56483129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410635965.8A Active CN105653464B (zh) | 2014-11-13 | 2014-11-13 | 一种java智能卡的结构及其对象管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105653464B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115562572A (zh) * | 2022-08-30 | 2023-01-03 | 北京握奇数据股份有限公司 | 一种提高安全芯片运行效率的方法、存储介质及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08202611A (ja) * | 1995-01-24 | 1996-08-09 | Brother Ind Ltd | メモリ管理方法及び装置 |
US20020065811A1 (en) * | 2000-08-18 | 2002-05-30 | International Business Machines Corporation | Ensured access to static objects inside a dynamic token memory |
JP2004062504A (ja) * | 2002-07-29 | 2004-02-26 | Matsushita Electric Ind Co Ltd | Icカード及びその情報処理方法 |
CN101271428A (zh) * | 2008-02-25 | 2008-09-24 | 北京理工大学 | 一种对象数据存储管理的装置和方法 |
CN101777061A (zh) * | 2009-12-31 | 2010-07-14 | 北京握奇数据系统有限公司 | 一种java卡对象管理方法及java卡 |
CN102713941A (zh) * | 2010-02-10 | 2012-10-03 | 华为终端有限公司 | Sd卡的分区处理方法及装置、sd卡、终端设备 |
CN103778067A (zh) * | 2014-02-11 | 2014-05-07 | 珠海市金邦达保密卡有限公司 | Java卡的对象处理方法、装置和Java卡 |
-
2014
- 2014-11-13 CN CN201410635965.8A patent/CN105653464B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08202611A (ja) * | 1995-01-24 | 1996-08-09 | Brother Ind Ltd | メモリ管理方法及び装置 |
US20020065811A1 (en) * | 2000-08-18 | 2002-05-30 | International Business Machines Corporation | Ensured access to static objects inside a dynamic token memory |
JP2004062504A (ja) * | 2002-07-29 | 2004-02-26 | Matsushita Electric Ind Co Ltd | Icカード及びその情報処理方法 |
CN101271428A (zh) * | 2008-02-25 | 2008-09-24 | 北京理工大学 | 一种对象数据存储管理的装置和方法 |
CN101777061A (zh) * | 2009-12-31 | 2010-07-14 | 北京握奇数据系统有限公司 | 一种java卡对象管理方法及java卡 |
CN102713941A (zh) * | 2010-02-10 | 2012-10-03 | 华为终端有限公司 | Sd卡的分区处理方法及装置、sd卡、终端设备 |
CN103778067A (zh) * | 2014-02-11 | 2014-05-07 | 珠海市金邦达保密卡有限公司 | Java卡的对象处理方法、装置和Java卡 |
Non-Patent Citations (2)
Title |
---|
刘景宁;吕满;童薇;冯丹;: "对象存储系统中对象查找及标识符分配管理策略", no. 09 * |
张鲁国\N\N\N,马自堂: "智能卡操作系统中存储管理设计", no. 14 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115562572A (zh) * | 2022-08-30 | 2023-01-03 | 北京握奇数据股份有限公司 | 一种提高安全芯片运行效率的方法、存储介质及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105653464B (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10831734B2 (en) | Update-insert for key-value storage interface | |
CN102541968B (zh) | 一种索引方法 | |
CN102902628B (zh) | 一种基于闪存实现的冷热数据自动分离方法、系统及闪存 | |
US20180089074A1 (en) | Techniques to Manage Key-Value Storage at a Memory or Storage Device | |
KR101994021B1 (ko) | 파일 조작 방법 및 장치 | |
CN103064797B (zh) | 数据处理方法和虚拟机管理平台 | |
CN102567415B (zh) | 一种数据库的控制方法和装置 | |
CN102915278A (zh) | 重复数据删除方法 | |
CN109086141B (zh) | 内存管理方法和装置以及计算机可读存储介质 | |
CN102567434A (zh) | 一种数据块处理方法 | |
CN103996412A (zh) | 一种用于智能卡非易失性存储器的掉电保护方法 | |
CN106776375A (zh) | 一种磁盘内部的数据缓存方法及装置 | |
CN103605728A (zh) | 一种数据分级存储方法及系统 | |
CN103049224A (zh) | 将数据导入物理磁带的方法、装置和系统 | |
CN104423982A (zh) | 请求的处理方法和处理设备 | |
CN103778067A (zh) | Java卡的对象处理方法、装置和Java卡 | |
CN103942301A (zh) | 一种面向多数据类型访问应用的分布式文件系统 | |
CN103399915A (zh) | 一种搜索引擎索引文件的优化读取方法 | |
CN110020272A (zh) | 缓存方法、装置以及计算机存储介质 | |
CN104391947B (zh) | 海量gis数据实时处理方法及系统 | |
CN105279166B (zh) | 文件管理方法和系统 | |
CN105653464A (zh) | 一种java智能卡的结构及其对象管理方法 | |
CN104375949A (zh) | 一种智能卡存储空间整理方法及系统 | |
CN105303208B (zh) | 一种ic卡管理方法及系统 | |
CN104408097A (zh) | 一种基于字符段热更新的混合索引方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100000 Beijing Haidian District Wudaokou Wangzhuang Road 1 Tongfang Science and Technology Plaza D West Building 18 Floors Applicant after: ZIGUANG TONGXIN MICROELECTRONICS CO.,LTD. Address before: 100000 Beijing Haidian District Wudaokou Wangzhuang Road 1 Tongfang Science and Technology Plaza D West Building 18 Floors Applicant before: BEIJING TONGFANG MICROELECTRONICS Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |