一种智能卡数据更新方法_2

文档序号:9910750阅读:来源:国知局
1字节,所述数据存储内容占 N字节, 所述校验和占2字节。这两个大小一样的空间用来存储文件的内容,以及表明是否有效标志 序号和校验和。
[0057] 本发明实施例中,获得所述两个数据存储空间中需要更新的数据存储空间具体还 可以包括:
[0058] 判断所述两个数据存储空间的校验和是否正确;
[0059] 若其中一个数据存储空间的校验和不正确,则确定该数据存储空间为需要更新的 数据存储空间。
[0060] 优选的,若所述两个数据存储空间的校验和均正确,则判断所述两个数据存储空 间的有效标志序号值的大小,所述有效标志序号值小的为需要更新的数据存储空间。
[0061] 需要说明的是,所述待更新文件数据的更新是由智能卡的文件系统来完成,具体 更新过程为,对于所述待更新文件的A数据存储空间和B数据存储空间,同时只可能有一个 是当前有效数据存储空间,更新指令更新的是无效的那个数据存储空间,如果更新成功,则 设置刚刚更新的这个数据存储空间为当前有效块。
[0062] 具体的,获得要需要更新的数据存储空间,写入实际的新数据过程,优选的可以包 括:首先计算A和B这两个数据存储空间的校验和是否正确,如果有其中一个的校验和不正 确,则认为这个校验和不正确的数据存储空间是要被更新的。
[0063] 而如果两个校验和都正确,则执行下一步即对比A和B的有效标志序号字节的值的 大小,值小的就是当前要被更新的;由于标志序号用1个字节来表示,所以在这里认为255加 1等于0,即0大于255,且仅大于255。
[0064] 可以理解的是,更新过程中,将要更新的数据先放在缓存中,包括有效标志序号、 待更新文件新数据内容、新的校验和,具体如下表所示:
[0065]待更新的数据: 「00661
[0067] 这些缓存的新数据可以一次性的写入到需要更新的数据存储空间中,最终完成待 更新文件的更新指令。
[0068] 优选的,所述方法完成所述文件更新后还包括:
[0069] 获得当前有效的数据存储空间的地址;
[0070] 找到所述文件的数据存储内容的存储地址;
[0071 ]读取所述存储地址中的数据存储内容完成所述文件读取。
[0072] 优选的,所述获得当前有效的数据存储空间的地址包括:
[0073] 判断所述两个数据存储空间的校验和是否正确;
[0074]若其中一个数据存储空间的校验和不正确,则判断另一个数据存储空间是有效 的。
[0075] 优选的,若所述两个数据存储空间的校验和都正确,则判断所述两个存储空间的 有效标志序号值的大小,所述有效标志序号值大的为当前有效的数据存储空间。
[0076] 具体的,文件数据的读取是由智能卡的文件系统来完成,其读取方法具体可以包 括如下内容。
[0077] 首先要获得当前的有效数据块:计算待更新文件的两个数据存储空间的校验和是 否正确,如果有其中一个的校验和不正确,则认为校验和正确的那个存储块是有效的。 [0078]如果两个校验和都正确,则执行下一步骤:对比A和B数据存储空间的有效标志序 号字节的值的大小,值大的就是当前有效的;在这里仍然认为〇大于255,且仅大于255;
[0079] 找到待更新文件的当前有效存储块的地址后,则获得了该文件的数据内容的地 址,该块数据区当中的N字节数据就是要读取的内容。
[0080] 本发明还提供了一种实施例3,在前面实施例1和实施例2的基础上,以具体电信业 使用的的SIM卡为例详细描述智能卡数据更新方法的实现过程。
[0081] 电信业使用的SIM卡是一种典型的具备文件系统的智能卡,其中的本地信息文件 EFloci在使用过程中被更新的频率非常高,下面就以该文件为例,通过几次更新过程说明 本方法的实施过程。
[0082]本地信息文件EFloci的大小是11个字节,则为该文件分配2块数据存储空间,BPA 和B,文件创建后的状态如下表所示:
[0083]
[0084] 此时2个数据存储空间的校验和都正确,B标志序号01大于A的00,则B是当前有效 数据块,于是当前文件的内容是FFFFFFFFFFFFFFFFFFFFFF。
[0085]接下来进行第一次更新,把文件更新为111 111 111 111 111 111 111 1,此时2个数据存 储空间的校验和都正确,B有效标志序号01大于A的有效标志序号00,则更新A,更新后的状 态如下表所示:
[0086]
[0087]此时2个数据存储空间的校验和都正确,A的有效标志序号02大于B的有效标志序 号01,则A是当前有效数据块,于是当前文件的内容是1111111111111111111111。
[0088] 接下来进行一次异常的更新,即在更新过程中断电的情况。此时两个数据存储空 间的校验和都正确,A的有效标志序号02大于B的有效标志序号01,则更新B,假设我们要把 文件更新为2222222222222222222222在更新途中由于某种原因导致卡片断电,按照FLASH 存储材料的特性,这时B的内容由于断电只更新了一半,状态如下表所示:
[0089]
[0090] B数据存储空间由于在更新途中断电,所以有一半的数据都是00,这时B的校验和 是错误的,所以当前有效数据块仍然是A块。
[0091] 本发明实施例提供的一种智能卡数据更新方法,通过对待更新文件配置两块同样 大小的数据存储空间进行文件更新,使得文件更新可以把擦写FLASH的次数大大降低,提高 了FLASH存储器的使用寿命。同时,FLASH的擦写操作是智能卡里最耗时的处理,本发明提供 的方法由于减少了 FLASH擦写的次数,极大地提高了文件更新的处理速度,提高了工作效 率。
[0092] 本发明的说明书和权利要求书及上述附图中的术语"第一"、"第二"、"第三""第 四"等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理 解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示 或描述的内容以外的顺序实施。此外,术语"包括"和"具有"以及他们的任何变形,意图在于 覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限 于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产 品或设备固有的其它步骤或单元。
[0093] 以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前 述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前 述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些 修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1. 一种智能卡数据更新方法,其特征在于,所述方法包括: 创建待更新文件; 为所述待更新文件配置两个同样大小的数据存储空间; 初始化所述两个数据存储空间; 获得所述两个数据存储空间中需要更新的数据存储空间; 写入新数据到所述需要更新的数据存储空间完成文件更新。2. 根据权利要求1所述的方法,其特征在于,所述两个同样大小的数据存储空间的状态 在同一时刻只有其中一个是有效的。3. 根据权利要求1所述的方法,其特征在于,所述两个同样大小的数据存储空间的大小 均为N+3字节。4. 根据权利要求3所述的方法,其特征在于,所述两个同样大小的数据空间分别包括有 效标志序号、数据存储内容和校验和,其中所述有效标志序号占1字节,所述数据存储内容 占 N字节,所述校验和占2字节。5. 根据权利要求3所述的方法,其特征在于,所述两个同样大小的数据存储空间分别定 位在独立的FLASH存储块中。6. 根据权利要求1所述的方法,其特征在于,获得所述两个数据存储空间中需要更新的 数据存储空间包括: 判断所述两个数据存储空间的校验和是否正确; 若其中一个数据存储空间的校验和不正确,则确定该数据存储空间为需要更新的数据 存储空间。7. 根据权利要求6所述的方法,其特征在于,若所述两个数据存储空间的校验和均正 确,则判断所述两个数据存储空间的有效标志序号值的大小,所述有效标志序号值小的为 需要更新的数据存储空间。8. 根据权利要求1所述的方法,其特征在于,所述方法完成所述文件更新后还包括: 获得当前有效的数据存储空间的地址; 找到所述文件的数据存储内容的存储地址; 读取所述存储地址中的数据存储内容完成所述文件读取。9. 根据权利要求8所述的方法,其特征在于,所述获得当前有效的数据存储空间的地址 包括: 判断所述两个数据存储空间的校验和是否正确; 若其中一个数据存储空间的校验和不正确,则判断另一个数据存储空间是有效的。10. 根据权利要求9所述的方法,其特征在于,若所述两个数据存储空间的校验和都正 确,则判断所述两个存储空间的有效标志序号值的大小,所述有效标志序号值大的为当前 有效的数据存储空间。11. 根据权利要求7或10所述的方法,其特征在于,所述有效标志序号值判断大小时规 定0大于255。
【专利摘要】本发明实施例公开了一种智能卡数据更新方法,应用于通信技术领域。该方法具体可以包括创建待更新文件,为所述待更新文件配置两个同样大小的数据存储空间,初始化所述两个数据存储空间,获得所述两个数据存储空间中需要更新的数据存储空间,写入新数据到所述需要更新的数据存储空间完成文件更新。本发明实施例提供的一种智能卡数据更新方法大大减少了FLASH存储区的擦写次数,提高了FLASH存储器的使用寿命,同时极大地提高了文件更新的处理速度,提高了效率。
【IPC分类】G06F9/445
【公开号】CN105677383
【申请号】CN201511000740
【发明人】李伟
【申请人】北京华大智宝电子系统有限公司
【公开日】2016年6月15日
【申请日】2015年12月28日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1