智能卡文件系统和搜索文件的方法技术方案

技术编号:9765868 阅读:196 留言:0更新日期:2014-03-15 11:23
本发明专利技术涉及一种智能卡文件系统和搜索文件的方法。所述智能卡文件系统包括主文件MF、专用文件DF和基本文件EF,所述DF下的直接子DF通过单向DF链表连接起来,所述DF下的直接子EF通过单向EF链表连接起来。所述方法包括:根据目标路径,找到当前DF;根据目标文件的文件类型,顺序搜索所述当前DF下的单向链表中的文件,找到所述目标文件,其中,所述单向链表中的文件的文件类型与所述目标文件的文件类型相同,所述文件类型为EF或DF。本发明专利技术可以提高文件系统的运行速度。

【技术实现步骤摘要】

本专利技术涉及领域,尤其涉及一种。
技术介绍
随着智能卡的诞生,智能卡操作系统也应运而生。智能卡操作系统是智能卡资源的管理者和安全保密的基础,其基本功能是控制智能卡与外界进行通信,管理卡片上的存储器资源,并在卡内完成各种指令的处理。智能卡文件系统是智能卡操作系统的核心部分。文件系统的认识是对卡片内的所有文件进行动态管理,完成文件创建、删除、查找、读写等功能,因此,需要建立一个简单有效的文件系统,以适应在智能卡这种资源极度有限的硬件平台上开发应用的需要。在现有技术中,智能卡采用树状链表文件系统来管理文件。如图1所示,为现有技术中树状链表文件系统示意图,该文件系统包括主文件(Maser File,简称:MF)、专用文件(Dedicated File,简称:DF)、和基本文件(Elementary File,简称:EF)。其中,MF是根目录,有且仅有一个,是整个文件系统的入口 ;DF的文件体是其内部所有子文件(包括子DF和子EF) ;EF的文件体是各种卡片应用所需的数据元;换句话说,DF的作用类似于计算机系统中的目录或者文件夹,EF才是用来存储数据的。其中每一个DF文件的所有直接子文件(包括子DF和子EF)用一个单向链表连接起来。每个文件中保存一个指向上层文件的指针Parent_Pointer、一个指向下层文件的指针Child_Pointer、和一个指向其同层文件的指针Brother_Pointer,依靠这些指针将该DF下的所有子文件连接起来。对于图1所示文件系统,如果搜索一个DF下的子DF,会从其子链表开始逐个搜索其下的所有文件,包括EF和DF,并且每搜索到一个文件还要判断该文件是否是DF,这样就导致部分冗余操作。搜索EF也是同样的问题,需要遍历子链表中的所有EF和DF并且进行判断。这样的冗余操作会一定程度上的降低搜索速度,而涉及到文件的所有操作的第一步都是先搜索文件,因此降低了文件系统的整体运行速度。
技术实现思路
本专利技术提供一种,用以实现提高文件系统的运行速度。本专利技术提供一种智能卡文件系统,包括主文件MF、专用文件DF和基本文件EF,所述DF下的直接子DF通过单向DF链表连接起来,所述DF下的直接子EF通过单向EF链表连接起来。本专利技术还提供一种在前述智能卡文件系统中搜索文件的方法,包括:根据目标路径,找到当前DF ;根据目标文件的文件类型,顺序搜索所述当前DF下的单向链表中的文件,找到所述目标文件,其中,所述单向链表中的文件的文件类型与所述目标文件的文件类型相同,所述文件类型为EF或DF。本专利技术还提供一种包括前述智能卡文件系统的智能卡芯片。[0011 ] 本专利技术还提供一种包括前述智能卡芯片的智能卡。在本专利技术中,DF下的直接子DF和直接子EF分别通过两个单向链表连接起来,这样,在搜索DF时,只需要到当前DF下的单向DF链表中搜索即可,搜索EF时,只需要到当前DF下的单向EF链表中搜索即可,减少了搜索文件的数量,而且不再判断文件类型,从而减少了冗余操作,提高了文件系统的运行速度。【附图说明】图1为现有技术中树状链表文件系统示意图;图2为本专利技术智能卡文件系统实施例中一个智能卡文件系统实例的示意图;图3为本专利技术智能卡文件系统实施例中搜索文件的方法实施例的流程示意图;图4为本专利技术智能卡文件系统实施例中图3所示示意图中步骤32的进一步分解示意图;图5为本专利技术智能卡文件系统实施例中另一个智能卡文件系统实例的示意图。【具体实施方式】下面结合说明书附图和【具体实施方式】对本专利技术作进一步的描述。在本专利技术智能卡文件系统实施例中,与现有技术相同的是,该文件系统包括主文件MF、专用文件DF和基本文件EF,与现有技术不同的是,该文件系统将DF下的直接子DF和直接子EF分别通过两个单向链表连接起来,其中,DF下的直接子DF通过单向DF链表连接起来,DF下的直接子EF通过单向EF链表连接起来。该智能卡文件系统可以应用于智能卡芯片中和包括智能卡芯片的智能卡中。如图2所示,为本专利技术智能卡文件系统实施例中一个智能卡文件系统实例的示意图,每个DF中包括指向上层文件的指针Parent_Pointer、指向同层DF的指针Brother_Po inter、指向子DF的指针ChildDF_Pointer和指向子EF的指针ChildEF_Pointer,每个EF中包括指向上层文件的指针Parent_Pointer和指向同层EF的指针Brother_Pointer。这样,DF中的ChildDF_Pointer指向一个单向DF链表,该单向DF链表将该DF下的所有子DF连接起来,DF中ChildEF_Pointer指向一个单向EF链表,该单向EF链表将该DF下的所有子EF连接起来。如图3所示,为本专利技术智能卡文件系统实施例中搜索文件的方法实施例的流程示意图,可以包括如下步骤:步骤31、根据目标路径,找到当前DF ;步骤32、根据目标文件的文件类型,顺序搜索当前DF下的单向链表中的文件,找到目标文件;其中,该单向链表中的文件的文件类型与目标文件的文件类型相同,文件类型包括EF或DF。在该方法中,当前DF类似于计算机中的当前文件夹,在当前DF中查找一个子DF类似于在当前文件夹中查找一个子文件夹,在当前工作DF中查找一个子EF类似于在当前文件夹中查找一个子文件。如图4所示,为本专利技术智能卡文件系统实施例中图3所示示意图中步骤32的进一步分解示意图,步骤32可以包括如下步骤:步骤321、获取当前DF下单向EF链表中的第一个EF ;步骤322、判断该EF是否为目标EF,如果不是,执行步骤323,否则结束。步骤323、获取单向EF链表中的下一个EF,执行步骤322。如图5所示,为本专利技术智能卡文件系统实施例中另一个智能卡文件系统实例的示意图,要在该智能卡文件系统中找到EFl 12这个文件,目标路径为MF\DF1\DF11\EF112,从MF出发,需要搜索一个DF文件DFl,所以通过MF中的ChildDF_Pointer进入MF下的单向DF链表:DF1-DF2,顺序搜索该单向DF链表找到DFl ;然后,需要搜索一个DF文件DFllJjf以通过DFl中的ChildDF_Pointer进入DFl下的单向DF链表:DF11_DF12,顺序搜索该单向DF链表找到DFll ;再然后,需要搜索一个EF文件EF112,所以通过DFll中的ChildEF_Pointer进入DFl I下的单向EF链表:EF111-EF112,顺序搜索该单向EF链表,找到EFl 12。在本实施例中,DF下的直接子DF和直接子EF分别通过两个单向链表连接起来,这样,在搜索DF时,只需要到当前DF下的单向DF链表中搜索即可,搜索EF时,只需要到当前DF下的单向EF链表中搜索即可,减少了搜索文件的数量,而且不再判断文件类型,从而减少了冗余操作,提高了文件系统的运行速度。最后应说明的是:以上实施例仅用以说明本专利技术的技术方案而非限制,尽管参照较佳实施例对本专利技术进行了详细说明,本领域的普通技术人员应当理解,可以对本专利技术的技术方案进行修改或者等同替换,而不脱离本专利技术技术方案的精神和范围。本文档来自技高网
...

【技术保护点】
一种智能卡文件系统,包括主文件MF、专用文件DF和基本文件EF,其特征在于,所述DF下的直接子DF通过单向DF链表连接起来,所述DF下的直接子EF通过单向EF链表连接起来。

【技术特征摘要】
1.一种智能卡文件系统,包括主文件MF、专用文件DF和基本文件EF,其特征在于,所述DF下的直接子DF通过单向DF链表连接起来,所述DF下的直接子EF通过单向EF链表连接起来。2.根据权利要求1所述的智能卡文件系统,其特征在于,所述DF中包括指向上层文件的指针、指向同层DF的指针、指向直接子DF的指针和指向直接子EF的指针,所述EF中包括指向上层文件的指针和指向同层EF的指针。3.一种...

【专利技术属性】
技术研发人员:冯强孙马秋姚成正王俊杰娄娟
申请(专利权)人:北京昆腾微电子有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1