CN111177021A - Java卡碎片管理方法及其存储装置 - Google Patents
Java卡碎片管理方法及其存储装置 Download PDFInfo
- Publication number
- CN111177021A CN111177021A CN201911224901.8A CN201911224901A CN111177021A CN 111177021 A CN111177021 A CN 111177021A CN 201911224901 A CN201911224901 A CN 201911224901A CN 111177021 A CN111177021 A CN 111177021A
- Authority
- CN
- China
- Prior art keywords
- address
- data
- index
- data block
- data blocks
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1072—Decentralised address translation, e.g. in distributed shared memory systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种Java卡碎片管理方法及存储装置,该方法包括:S100,以一定格式的数据块存储Java对象,并创建包括若干项索引区的地址索引表管理存储空间,其中,所述索引区存储内容包括所述数据块的地址及所述数据块使用状态,所述数据块存储内容包括有效性标记、数据块大小及相应所述索引区的索引值;S200,Java卡系统调用垃圾回收函数,清理待回收Java对象相应的所述索引区内容,并标记所述待回收Java对象相应的所述数据块为无效;S300,遍历所述数据块,将有效的所述数据块依次搬移至高地址空间连续存放,并同步所述地址索引表中的相应地址。根据本发明实施例至少具有如下有益效果:与对象无耦合,实现简单,提高了碎片整理的速度。
Description
技术领域
本发明涉及智能卡领域,特别涉及一种Java卡碎片管理方法及其存储装置。
背景技术
目前的Java Card碎片整理通常基于空闲空间管理表来实现,会使用到排序算法,排序算法的性能对于碎片整理的性能有直接影响,且通过空闲空间管理表的方式来实现碎片整理时,还需要同步修改对象管理表、对象相关信息等。因此,目前的Java Card碎片整理实现困难,受限于事务能力,与对象耦合性高。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种Java卡碎片管理方法,与对象无耦合,实现简单。。
本发明还提出一种采用上述Java卡碎片管理方法的存储装置。
根据本发明的第一方面实施例的Java卡碎片管理方法,包括以下步骤:S100,以一定格式的数据块存储Java对象,并创建包括若干项索引区的地址索引表管理存储空间,其中,所述索引区存储内容包括所述数据块的地址及所述数据块使用状态,所述数据块存储内容包括有效性标记、数据块大小及相应所述索引区的索引值;S200,Java卡系统调用垃圾回收函数,清理待回收Java对象相应的所述索引区内容,并标记所述待回收Java对象相应的所述数据块为无效;S300,遍历所述数据块,将有效的所述数据块依次搬移至高地址空间连续存放,并同步所述地址索引表中的相应地址。
根据本发明实施例的Java卡碎片管理方法,至少具有如下有益效果:通过地址索引表和按固定格式存储Java对象,碎片整理过程中不用关注对象管理表和对象相关信息,与对象无耦合,实现简单,提高了碎片整理的速度。
根据本发明的一些实施例,所述步骤S100包括:S110,按从高地址至低地址的顺序分配所述数据块存储Java对象,记录当前分配末地址;S120,在所述地址索引表中查找到空闲的所述索引区,所述空闲的所述索引区指向存储所述Java对象的所述数据块的低地址;S130,设置所述Java对象的引用值为所述空闲的所述索引区的索引值。记录当前分配末地址,下次再分配数据块时可以直接获取分配地址,提高分配速度;Java对象的引用值为索引区的索引值,便于通过引用值访问Java对象的存储数据。
根据本发明的一些实施例,所述步骤S200包括:S210,Java卡系统调用垃圾回收函数,确定所述待回收Java对象;S220,根据所述待回收Java对象的引用值,清理所述待回收Java对象相应的所述索引区的内容;S230,根据所述待回收Java对象相应的所述索引区,将相应的所述数据块有效性标记置为无效。索引区清理,使相应索引区空闲,便于索引区循环利用;数据块的有效性标记置为无效,有利于数据块的回收再分配。
根据本发明的一些实施例,所述步骤S300包括:S310,从高地址至所述当前分配末地址遍历所述数据块,将有效的所述数据块依次搬移至高地址空间连续存放;S320,更新所述当前分配末地址,为搬移数据后位于末尾的有效的所述数据块的低地址减1;S330,从高地址往当前分配末地址遍历所述数据块,更新所述数据块相应的所述索引区中的所述数据地址。有效数据块于高地址空间连续存放清理了碎片,合并了空闲区,利于再分配。当前分配末地址适应性更新,也利于提高分配速度节约存储空间。索引区地址的更新,防止出现下述问题:碎片整理之后,Java对象根据其引用值对应的索引地址指向错误的数据造成程序混乱。
根据本发明的一些实施例,所述步骤S310包括:S311,从高地址至所述当前分配末地址遍历所述数据块,查找最高的无效的所述数据块Invaild1,得到搬移数据的目标起始地址;S312,继续向后查找第一项有效的所述数据块Valid1及所述Valid1之后的第一块无效的所述数据块Invaild2,得到所述搬移数据的源起始地址及所述搬移数据的数据长度,并根据所述次高的无效的所述数据块得到下一次查找数据的起始地址;S313,将所述搬移数据从所述源起始地址搬移至所述目标起始地址;S314,所述搬移数据的所述目标起始地址减去所述数据长度得到下一次的所述搬移数据的所述目标起始地址,返回到所述步骤S312直至遍历完成。最高的无效数据块起始地址即为目标起始地址;搬移数据后产生的空闲区域的高地址即为下一次搬移的目标起始地址;遍历完成,所有空闲区域被合并成一块,当前分配末地址指向该空闲区域的起始地址供重新分配使用,因此,无需对空闲区域的所有数据块进行合并处理,提高了整理速度。
根据本发明的一些实施例,所述步骤S330包括:S331,从高地址至所述当前分配末地址遍历所述数据块,根据所述数据块的起始地址和所述数据块的大小,得到所述数据块的低地址Addr1;S332,将所述数据块相应的所述索引区中存储的数据块地址更新为Addr1。索引区记录数据块的低地址,便于提取处于低地址空间段的对象数据。
根据本发明的一些实施例,创建数据搬移状态表存储碎片整理相关状态,包括执行状态、数据移动状态、所述搬移数据的相关信息,其中,所述数据移动状态表示碎片整理处于数据搬移阶段或者地址索引表同步阶段。数据搬移状态表的数据,能针对智能卡整理碎片过程中出现的掉电提供数据有效性保护;上电后检查数据搬移表,若发现正在执行碎片整理,则可以根据数据移动状态重新执行相关操作。
根据本发明的一些实施例,所述数据块包括一个字节的所述有效性标记、三个字节的数据段大小及两个字节的相应的所述索引区的索引值,其中,所述数据段大小表示存储对象占用的字节数。2个字节可以支持65536项索引值的地址索引表,3个字节的数据段大小表示最大可存储为16M的单个java对象数据。在尽量节省存储空间的条件下也提供足够的数据支持。
根据本发明的第二方面实施例的Java卡存储装置,包括:数据存储模块,用于按一定格式的数据块存储Java对象,并在管理存储空间的地址索引表中存储相应的所述数据块的地址,其中,所述地址索引表的索引区存储内容包括所述数据块的地址及所述数据块使用状态,所述数据块存储内容包括有效性标记及相应的所述索引区的索引值;数据分配模块,用于分配所述数据块存储Java对象,并在所述地址索引表中的查找空闲的所述索引区,将所述空闲的所述索引区指向分配的所述数据块;垃圾回收模块,用于清理待回收Java对象相应的索引区内容,将所述待回收Java对象相应的所述数据块的有效标记配置为无效。碎片管理模块,用于遍历所述数据块,搬移有效的所述数据块至高位地址空间连续存放,同步所述地址索引表中的相应地址。
根据本发明实施例的Java卡碎片管理方法,至少具有如下有益效果:通过地址索引表和按固定格式存储Java对象,碎片整理过程中不用关注对象管理表和对象相关信息,与对象无耦合,实现简单,提高了碎片整理的速度。
根据本发明的一些实施例,所述碎片管理模块包括:数据搬移模块,用于从高地址开始遍历所述数据块,搬移有效的所述数据块到高位地址空间连续存储,并更新所述当前分配末地址;索引同步模块,遍历搬移后的所述数据块,根据所述数据块搬移后的新地址同步所述地址索引表的相应地址。数据块搬移与索引同步独立,无干扰。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例的主要步骤流程示意图;
图2为本发明实施例中的地址索引表结构示意图;
图3为本发明实施例中的EEPROM中数据块存储格式示意图;
图4为本发明实施例中的数据块分配流程示意图;
图5为本发明实施例中的垃圾回收阶段流程示意图;
图6为本发明实施例中的碎片整理过程流程示意图;
图7为本发明实施例的地址搬移表结构示意图;
图8为本发明实施例中的地址索引表同步流程示意图;
图9为本发明实施例的存储装置示意图。
附图标记:
数据存储模块100、数据分配模块200、垃圾回收模块300、碎片管理模块400、数据块搬移模块410、索引同步模块420。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
本发明的实施例的方法步骤包括:数据存储阶段,垃圾回收阶段和碎片整理阶段。参见图1,S100为数据存储阶段,以一定格式的数据块存储Java对象,并创建包括若干项索引区的地址索引表管理存储空间,其中,索引区存储内容包括数据块的地址及数据块的使用状态,数据块存储内容包括有效性标记、数据块大小及相应索引区的索引值。S200为垃圾回收阶段,Java卡系统调用垃圾回收函数,清理待回收Java对象相应的索引区内容,并标记待回收Java对象相应的数据块为无效。S300为碎片整理阶段,遍历数据块,将有效的数据块依次搬移至高地址空间连续存放,并同步地址索引表中的相应地址。
本发明的实施例中的地址索引表(ADDR_INDEX_TABLE)结构参见图2,管理EEPROM中的数据块的地址,包含若干个索引区,即图2中的地址信息块。应用代码保管索引值即可。地址信息块又被称为索引区,每个索引区有5字节长度,其中第1至第4字节表示该地址信息块所管理的数据在EEPROM中的地址Address;第5字节是一个标识Tag,用于表示该地址索引块所管理的数据是否为对象信息。当分配一个Java对象时,先在地址索引表(ADDR_INDEX_TABLE)中找到一个空闲的索引区,然后将该索引区对应的索引作为对象的引用值,索引区的前4个字节存储该对象在EEPROM中的地址,索引区的第5个字节存储对象标识。
数据块的格式及在EEPROM中的存储示例参见图3。EEPROM中从高地址开始被划分为多个一定格式的数据块,且数据块中的高位字节存放在EPROM的高位字节中。数据块包含四个字段,分别用T、L、index及V来表示。其中,T,占一个字节,用于表示当前数据块是否有效,本实施例中使用0xD0表示当前数据块有效,0xFF表示当前数据块无效。L,占三个字节,则表示实际存放对象数据的空间V的长度。Index占用2个字节,用于记录该数据块在地址索引表中的索引。V占用占用L值所表示的字节数。数据块结构中的T、L及Index被统称为HEAP管理字节。图3的EEPROM的数据块示例中,粗斜体表示有效数据块,普通字体表示无效数据块。为方便理解,同一行若有多个数据块则用双竖线隔开,并不表示相邻2个数据块间有空隙。
Java对象数据的存储分配详细流程参见图4,包括:S110,在EEPROM中,按从高地址到低地址的顺序来分配数据块,并记录当前分配末地址供下次分配使用;S120,在地址索引表中找到一个空闲的索引区,将索引区中管理的数据块的地址Address改为S110中分配的数据块的地址,修改索引区的Tag为对象标识;S130,将Java对象的引用值设定成该索引区的索引值。若还有新的Java数据,则从当前分配末地址开始向低地址空间分配数据,不管之前的高地址空间是否有空闲。
参见图5,Java卡系统调用垃圾回收函数后,处理如下:S210,根据Java对象获取其引用值;S220,找到索引值为该引用值的索引区,将其数据全部清理是成0xFF;S230,根据清理前的该索引区所管理的数据块地址,将数据块中的T值置为无效。索引区被清理成0xFF,表示该索引区为空闲,可供其它对象使用;数据块T值被置为无效,标识该数据块为空闲块,可以通过碎片整理进行回收。
参见图6,本发明的实施例中,创建了数据搬移状态表来保证碎片整理的完整性,以及碎片整理完成后智能卡内数据的正确性。该数据搬移状态表被存放于固定位置,包括:碎片整理的执行状态、数据移动状态和搬移数据的相关信息。本实施例中,搬移数据的相关信息包括:搬移数据的源地址,目标地址,搬移长度,下一个数据块的起始地址。数据移动状态有两种:第一种为数据搬移阶段,表示正在移动数据;第二种为地址索引表同步阶段,表示所有数据已经移动完毕,但地址索引表还未同步。碎片整理的执行状态有二种:第一种为进行中,表示碎片整理已经开始,但未完成,第二种表示碎片整理未开始或者表示已结束。执行状态用于保护断电前后智能卡内数据的有效性。若断电后重新上电发现执行状态为进行中,刚可以进一步根据数据搬移状态做相应的处理,如未同步地址索引表则重新执行同步地址索引表,又如正在搬移数据中,则根据搬移数据相关信息继续执行相关操作。
本实施例中,Java卡的碎片整理过程参见图7。标记开始整理碎片后,从EEPROM的高地址到当前分配地址遍历数据块,根据数据块的T值判断该数据是否空闲。找到最高的空闲数据块Invalid1,在最高的空闲块之后找到第一块有效数据块Valid1和该有效数据块Valid1之后的第一块空闲数据块Invalid2。则搬移数据块的源起始地址为Valid1的起始地址,目标起始地址为Invalid1的起始起址,搬移数据块大小为(Invalid2的起始地址-Vaild1的起始地址)。可以理解的是,多个有效数据连续存放时,搬移数据时也一起搬移。参见图2,从高地址开始,第1个数据块为有效数据块,第2个数据块为空闲数据块,第3至第5个数据块为有效数据块,若第6个数据块为空闲数据块,则第3至第5个数据块整体搬移至第2个数据块的起始地址处连续存放。本次搬移完成后,新的最高空闲块的起始地址为搬移数据目标地址减去搬移数据长度,结束地址为Invalid2的低地址。下一次查找时,则从Invalid2的后一位低地址开始查找有效数据块。按上述步骤遍历,直至在当前分配地址之前无有效数据块,则数据搬移阶段完成。
本实施例中还判断了数据搬移阶段是否有数据进行搬移,若没有刚表示无碎片需要处理,相应地索引表也无需同步,直接标置碎片整理完成退出。否则,更新当前分配地址的值为搬移数据后的末尾有效数据块的低地址减1,即当前最高空闲块的起始地址。然后进行地址索引表的同步更新,参见图8,从EEPROM的高地址至当前分配地址,遍历数据块,根据数据块的index值找到相应索引区。并根据数据块当前的起始地址与数据块的大小,获取数据块当前的低地址Addr1。在本实施例中,数据块的大小为(T的长度+L的长度+index的长度+L的值),即L的值+6。将索引区中管理的Address值替换成数据块当前的低地址Addr1。本实施例判断了索引区管理的Address值是否与数据块当前的低地址Addr1相同,若不同,则替换Address值为数据块当前的低地址Addr1。
根据本发明的实施例的存储装置,参见图9,包括:数据存储模块100,用于按一定格式的数据块存储Java对象,并在管理存储空间的地址索引表中存储相应的数据块的地址,其中,地址索引表的索引区存储内容包括数据块的地址及数据块使用状态,数据块存储内容包括有效性标记及相应的索引区的索引值;数据分配模块200,用于分配数据块存储Java对象,并在地址索引表中的查找空闲的索引区,将空闲的索引区指向分配的数据块;垃圾回收模块300,用于清理待回收Java对象相应的索引区内容,将待回收Java对象相应的数据块的有效标记配置为无效。碎片管理模块400,用于遍历数据块,搬移有效的数据块至高位地址空间连续存放,同步地址索引表中的相应地址。
碎片管理模块400又分为数据搬移模块410和索引同步模块420。数据搬移模块410,用于从高地址开始遍历数据块,搬移有效的数据块到高位地址空间连续存储,并更新当前分配末地址;索引同步模块420,用于遍历搬移后的数据块,根据数据块搬移后的新地址同步地址索引表的相应地址。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (10)
1.一种Java卡碎片管理方法,其特征在于,包括以下步骤:
S100,以一定格式的数据块存储Java对象,并创建包括若干项索引区的地址索引表管理存储空间,其中,所述索引区存储内容包括所述数据块的地址及所述数据块使用状态,所述数据块存储内容包括有效性标记、数据块大小及相应所述索引区的索引值;
S200,Java卡系统调用垃圾回收函数,清理待回收Java对象相应的所述索引区内容,并标记所述待回收Java对象相应的所述数据块为无效;
S300,遍历所述数据块,将有效的所述数据块依次搬移至高地址空间连续存放,并同步所述地址索引表中的相应地址。
2.根据权利要求1所述的Java卡碎片管理方法,其特征在于,所述步骤S100包括:
S110,按从高地址至低地址的顺序分配所述数据块存储Java对象,并记录当前分配末地址;
S120,在所述地址索引表中查找到空闲的所述索引区,所述空闲的所述索引区指向存储所述Java对象的所述数据块的低地址;
S130,设置所述Java对象的引用值为所述空闲的所述索引区的索引值。
3.根据根据权利要求2所述的Java卡碎片管理方法,其特征在于,所述步骤S200包括:
S210,Java卡系统调用垃圾回收函数,确定所述待回收Java对象;
S220,根据所述待回收Java对象的引用值,清理所述待回收Java对象相应的所述索引区的内容;
S230,根据所述待回收Java对象相应的所述索引区,将相应的所述数据块的有效性标记置为无效。
4.根据权利要求2所述的Java卡碎片管理方法,其特征在于,所述步骤S300包括:
S310,从高地址至所述当前分配末地址遍历所述数据块,将有效的所述数据块依次搬移至高地址空间连续存放;
S320,更新所述当前分配末地址,为搬移数据后位于末尾的有效的所述数据块的低地址减1;
S330,从高地址往当前分配末地址遍历所述数据块,更新所述数据块相应的所述索引区中的所述数据地址。
5.根据权利要求4所述的Java卡碎片管理方法,其特征在于,所述步骤S310包括:
S311,从高地址至所述当前分配末地址遍历所述数据块,查找最高的无效的所述数据块Invalid1,得到搬移数据的目标起始地址;
S312,继续向后查找第一项有效的所述数据块Valid1及所述Valid1之后的第一块无效的所述数据块Invalid2,得到所述搬移数据的源起始地址及所述搬移数据的数据长度,并根据Invalid2得到下一次查找数据的起始地址;
S313,将所述搬移数据从所述源起始地址搬移至所述目标起始地址;
S314,所述搬移数据的所述目标起始地址减去所述数据长度得到下一次的所述搬移数据的所述目标起始地址,返回到所述步骤S312直至遍历完成。
6.根据权利要求4所述的Java卡碎片管理方法,其特征在于,所述步骤S330包括:
S331,从高地址至所述当前分配末地址遍历所述数据块,根据所述数据块的起始地址和所述数据块的大小,得到所述数据块的低地址Addr1;
S332,将所述数据块相应的所述索引区中存储的数据块地址更新为所述数据块的低地址Addr1。
7.根据权利要求1所述的Java卡碎片管理方法,其特征在于,还包括:创建数据搬移状态表存储碎片整理相关状态,包括执行状态、数据移动状态、所述搬移数据的相关信息,其中,所述数据移动状态表示碎片整理处于数据搬移阶段或者地址索引表同步阶段。
8.根据权利要求1所述的Java卡碎片管理方法,其特征在于,所述数据块包括一个字节的所述有效性标记、三个字节的数据段大小及两个字节的相应的所述索引区的索引值,其中,所述数据段大小表示存储对象占用的字节数。
9.一种Java卡存储装置,使用1至8中任一项所述的方法,其特征在于,包括:
数据存储模块,用于按一定格式的数据块存储Java对象,并在管理存储空间的地址索引表中存储相应的所述数据块的地址,其中,所述地址索引表的索引区存储内容包括所述数据块的地址及所述数据块使用状态,所述数据块存储内容包括有效性标记及相应的所述索引区的索引值;
数据分配模块,用于分配所述数据块存储Java对象,并在所述地址索引表中的查找空闲的所述索引区,将所述空闲的所述索引区指向分配的所述数据块;
垃圾回收模块,用于清理待回收Java对象相应的索引区内容,将所述待回收Java对象相应的所述数据块的有效标记配置为无效。
碎片管理模块,用于遍历所述数据块,搬移有效的所述数据块至高位地址空间连续存放,同步所述地址索引表中的相应地址。
10.根据权利要求9所述的Java卡存储装置,其特征在于,所述碎片管理模块包括:
数据搬移模块,用于从高地址开始遍历所述数据块,搬移有效的所述数据块到高位地址空间连续存储,并更新所述当前分配末地址;
索引同步模块,用于遍历搬移后的所述数据块,根据所述数据块搬移后的新地址同步所述地址索引表的相应地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911224901.8A CN111177021A (zh) | 2019-12-04 | 2019-12-04 | Java卡碎片管理方法及其存储装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911224901.8A CN111177021A (zh) | 2019-12-04 | 2019-12-04 | Java卡碎片管理方法及其存储装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111177021A true CN111177021A (zh) | 2020-05-19 |
Family
ID=70657215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911224901.8A Pending CN111177021A (zh) | 2019-12-04 | 2019-12-04 | Java卡碎片管理方法及其存储装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111177021A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112206536A (zh) * | 2020-10-19 | 2021-01-12 | 珠海金山网络游戏科技有限公司 | 一种动态障碍的生成方法及装置 |
CN114780489A (zh) * | 2022-06-17 | 2022-07-22 | 苏州思萃工业互联网技术研究所有限公司 | 一种实现分布式块存储底层gc的方法及装置 |
CN115328922A (zh) * | 2022-10-10 | 2022-11-11 | 北京紫光芯能科技有限公司 | 用于单向链表的数据管理方法、装置及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101246440A (zh) * | 2007-02-12 | 2008-08-20 | 东信和平智能卡股份有限公司 | Java卡系统垃圾回收方法 |
CN102521145A (zh) * | 2011-12-23 | 2012-06-27 | 东信和平智能卡股份有限公司 | Java卡系统及其空间分配处理方法 |
US20190272098A1 (en) * | 2017-04-04 | 2019-09-05 | Micron Technology, Inc. | Garbage collection |
CN110287695A (zh) * | 2019-06-25 | 2019-09-27 | 恒宝股份有限公司 | 一种Java卡及其临时对象的管理方法 |
-
2019
- 2019-12-04 CN CN201911224901.8A patent/CN111177021A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101246440A (zh) * | 2007-02-12 | 2008-08-20 | 东信和平智能卡股份有限公司 | Java卡系统垃圾回收方法 |
CN102521145A (zh) * | 2011-12-23 | 2012-06-27 | 东信和平智能卡股份有限公司 | Java卡系统及其空间分配处理方法 |
US20190272098A1 (en) * | 2017-04-04 | 2019-09-05 | Micron Technology, Inc. | Garbage collection |
CN110287695A (zh) * | 2019-06-25 | 2019-09-27 | 恒宝股份有限公司 | 一种Java卡及其临时对象的管理方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112206536A (zh) * | 2020-10-19 | 2021-01-12 | 珠海金山网络游戏科技有限公司 | 一种动态障碍的生成方法及装置 |
CN112206536B (zh) * | 2020-10-19 | 2022-08-05 | 珠海金山网络游戏科技有限公司 | 一种动态障碍的生成方法及装置 |
CN114780489A (zh) * | 2022-06-17 | 2022-07-22 | 苏州思萃工业互联网技术研究所有限公司 | 一种实现分布式块存储底层gc的方法及装置 |
CN115328922A (zh) * | 2022-10-10 | 2022-11-11 | 北京紫光芯能科技有限公司 | 用于单向链表的数据管理方法、装置及系统 |
CN115328922B (zh) * | 2022-10-10 | 2022-12-30 | 北京紫光芯能科技有限公司 | 用于单向链表的数据管理方法、装置及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177021A (zh) | Java卡碎片管理方法及其存储装置 | |
CN108038002B (zh) | 一种嵌入式软件内存管理方法 | |
CN108132842B (zh) | 一种嵌入式软件内存管理系统 | |
EP1435576B1 (en) | Method and apparatus for block-oriented memory management provided in smart card controllers | |
US6865585B1 (en) | Method and system for multiprocessor garbage collection | |
CN102521145B (zh) | Java卡系统及其空间分配处理方法 | |
US6928460B2 (en) | Method and apparatus for performing generational garbage collection in a segmented heap | |
US8041918B2 (en) | Method and apparatus for improving parallel marking garbage collectors that use external bitmaps | |
CN108932271B (zh) | 一种文件管理方法及装置 | |
CN103077166B (zh) | 小文件存储的空间复用方法和装置 | |
CN106383666B (zh) | 一种数据存储方法及装置 | |
CN102117278A (zh) | 链表的创建方法及系统、数据的查找方法及系统 | |
CN104268159B (zh) | 一种基于动态镜像的实时数据仓库数据预存取方法 | |
CN111061752B (zh) | 数据处理方法、装置及电子设备 | |
EP2843562B1 (en) | Non-volatile memory device for sequential writing | |
CN104933051B (zh) | 文件存储空间回收方法和装置 | |
CN110674052B (zh) | 内存管理方法、服务器及可读存储介质 | |
CN108984295B (zh) | 内存回收方法、计算机装置及计算机可读存储介质 | |
CN108089916A (zh) | 一种生成id的方法及装置 | |
CN111177144A (zh) | 表同步方法、装置、设备、存储介质及系统 | |
CN101246440B (zh) | Java卡系统垃圾回收方法 | |
GB2502076A (en) | Managing memory in a computer system | |
CN115878027A (zh) | 一种存储对象的处理方法、装置、终端及存储介质 | |
US6721865B2 (en) | Elimination of coloring during object creation for concurrent garbage collection | |
CN102231136A (zh) | 一种闪存存储设备的数据存储方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200519 |
|
RJ01 | Rejection of invention patent application after publication |