一种Native存储卡及其管理方法

文档序号:9708011阅读:492来源:国知局
一种Native存储卡及其管理方法
【技术领域】
[0001]本发明涉及存储器管理技术,尤其涉及一种Native卡及其管理方法。
【背景技术】
[0002]智能卡产品已在电子商务,电子政务等领域得到了广泛的应用,其中针对加载在智能卡上的应用的开发环境而言,将智能卡分为Java卡和Native卡,S卩Java卡上所负载的应用是使用Java语言开发的,而Native卡上所负载的应用是使用C或汇编语言开发的。
[0003]为移动通信行业所普遍使用的是Native卡,Native卡的片上操作系统(ChipOperating System,⑶S)对Native卡内的文件系统进行动态管理,包括对文件的生成、删除、重新定义大小等操作,即实现对Native卡的存储空间管理。现有的管理方式多采用按物理空间顺序存储的方式,当打开文件时,文件的存取指针指向第一个信息单位,如第一个字节或第一个记录,每存取一个信息单位存取指针加1,指向下一个信息单位,如此类推。顺序存取的缺点是文件不易动态增长,浪费预留空间,不利于文件的插入、删除、空间的重新分配和移动,存在外部碎片等问题,很难达到完整意义的文件系统的要求,即对文件和数据反复的添加、删除和变更等。随着应用功能需求的日益增多,对文件和数据反复的添加、删除和变更等操作的需求越来越多,因此要求提供一种方法和装置,实现对卡内文件系统的动态管理。
[0004]现有的动态的存储器管理方法包括借用垃圾回收机制的方法,即定期扫描存储器,对其中产生的垃圾碎片进行整理、合并,将合并之后的碎片存储空间与原有的空闲空间进行进一步合并,以便获得对存储器的动态管理。另一种常用的动态存储器管理方法还包括使用管理文件对整个存储器进行管理,在进行例如生成文件、删除文件等对存储器的存储空间产生变动的操作时,实时更新管理文件。
[0005]上述两种动态管理方法,虽然实现了对存储器的动态管理,但是第一种方式存在每次改变存储器的状态时需要对存储器的整个空间进行重新整理的问题,第二种方式需要设定专门的管理文件,对整个存储器空间进行实时管理。这两种管理方式对于使用片上操作系统(COS)进行管理的小存储空间的Nat ive卡来说存在以下问题:
[0006]一、片上操作系统的处理能力相对于计算机上的各种操作系统来说处理能力相对较弱,使用管理文件对存储器的每次更新进行动态管理存在片上操作系统处理能力不足的问题。
[0007]二、由于Native卡存储空间较小,产生的垃圾文件有限,使用专用管理文件进行管理以及定期的整理合并对其空间使用效率的提升意义不大,但是该管理文件所占用的存储空间,以及整理合并时的时间成本消耗较大。
[0008]三、由于是针对通用存储器的动态管理方法,因此没有考虑智能卡的个人化阶段。

【发明内容】

[0009]有鉴于此,本申请提供一种Native卡及其管理方法,实现Native卡上存储器空间的动态管理,并可对形成的小碎片进行进一步整理,从而利于后期的存储器空间的再分配和空间再利用。
[0010]本申请提供一种Native存储卡的管理方法,包括如下步骤:
[0011 ]步骤T1、接收到改变存储器空间的指令;
[0012]步骤T2、判断指令类型,如果是分配存储空间的指令,则执行步骤T3;如果是释放存储空间的指令,则执行步骤T4;
[0013]步骤T3、读Native存储卡地址区的空闲页起始地址文件,将Native存储卡数据区中合适的空闲页分配给文件,并跳转到步骤T5;
[00M]步骤T4、释放文件,根据新产生的空闲文件的位置更新Native存储卡;
[0015]步骤T5、判断是否已成功执行改变存储器空间的指令;如果是则结束该方法;如果否则给出提示信息。
[0016]其中该Native存储卡由三个区域组成,分别是管理区,地址区,以及数据区,其中地址区存储空闲页起始地址文件,该空闲页起始地址文件中用于存储数据区中的空闲页的起始地址。
[0017]其中该步骤T3还包括如下子步骤:
[0018]步骤T31、读地址区的空闲页起始地址文件,获得数据区的空闲页的起始地址;
[0019]步骤T32、从该空闲页起始地址出发,将请求分配的长度和所有空闲页的长度相比较,选择长度最相近的一个空闲页,或相邻的总长度与该请求分配的长度最相近的多个空闲页分配给文件;
[0020]步骤T33、根据分配情况,改变存储器中的空闲页起始地址和/或相应空闲页信息;
[0021]步骤T34、向空闲页中写入数据,并修改文件页信息。
[0022]其中步骤T4包括如下子步骤:
[0023]步骤T41、填写新产生的空闲文件的空闲页信息,在链接信息中记录下一个空闲文件的起始地址,在长度信息中记录本块空闲文件的长度;
[0024]步骤T42、如果新产生的空闲文件在所有空闲文件的前面,则更新空闲页起始地址文件,将空闲页起始地址文件中存储的空闲页的起始地址变更为新产生的空闲页的地址;否则更新前一个空闲文件的链接信息,在其中记录新空闲文件的起始地址;
[0025]步骤T43、判断新产生的空闲文件是否有相邻的空闲文件,如果有则将这些空闲文件合并在一起。
[0026]本申请还提供一种Native存储卡的个人化方法,包括如下步骤:
[0027]步骤S1、向Nat ive卡写入各种个人化参数;
[0028]步骤S2、向Native存储卡地址区写入空闲页起始地址文件;
[0029]步骤S3、向Native存储卡数据区的空闲页中写入空闲页信息。
[°03°]本申请还提供一种Native存储卡,该存储卡包括如下三个区域:
[0031]管理区,位于存储卡头部,存储用于管理数据区所需的文件;
[0032]地址区,存储空闲页起始地址文件,该空闲页起始地址文件中用于存储数据区中的空闲页的起始地址;
[0033]数据区,由多个空闲页和文件页组成,其中空闲页是未被使用的空闲存储页面,文件页是被使用的存储页面,里边存放了各种数据。
[0034]其中空闲页由空闲页信息和空闲页内容组成;空闲页信息中存储与该空闲页相关的链接信息和长度信息,空闲页内容为该空闲页的空闲存储空间。
[0035]其中文件页由文件页信息和文件页内容组成,其中文件页信息中存储与该文件页相关的链接信息和长度信息,文件页内容为该文件页存储的数据信息。
[0036]其中文件页信息和空闲页信息长度相等。
[0037]其中如果空闲区域的长度小于空闲页信息长度,则将该空闲区域称为小空闲文件。
[0038]由以上技术方案可见,本申请可达到以下技术效果:
[0039](1)本申请对Native卡个人化方法进行改进,从而优化Native存储卡的管理方法,将存储卡的动态管理和对其个人化的方法相关联,对其统一管理。
[0040](2)对Native存储卡进行合理划分,达到对小存储空间的有效管理;
[0041](3)根据对存储卡的划分方式,使用有效管理方法,对Native存储卡进行管理;
[0042](4)考虑小空闲文件问题,使得该管理方法更有有效。
【附图说明】
[0043]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0044]图1是Native卡的结构图;
[0045]图2是Native卡中数据区的结构;
[0046]图3是Native卡中空闲页的结构;
[0047]图4是Native卡中文件页的结构;
[0048]图5是Native卡个人化阶段的存储器个人化方法流程图;
[0049]图6是Native存储卡的管理方法流程图。
【具体实施方式】
[0050]本申请提供一种Native存储卡及其管理方法,实现对存储卡空间的合理划分和动态管理。
[0051]为了使本领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请保护的范围。
[005
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1