一种存储COS文件的方法及装置制造方法及图纸

技术编号:16529083 阅读:109 留言:0更新日期:2017-11-09 20:52
本发明专利技术公开了一种存储COS文件的方法及装置,其中,该方法包括:获取用于存储目标COS文件的指令,目标COS文件包括文件头和文件体;将目标COS文件的文件头存储至相对应的文件头链表的节点处,文件头链表存储于第一存储区,且文件头链表的节点包含一个或多个子节点,且每个子节点对应一个COS文件的文件头;将文件体存储于第二存储区的相应位置。该方法实现文件头和文件体在存储区的不同位置保存,从而可以实现对文件头的集中管理,方便利用包含文件概要信息的文件头进行文件检索、查询等常见操作,提升系统效率。

【技术实现步骤摘要】
一种存储COS文件的方法及装置
本专利技术涉及文件存储
,特别涉及一种存储COS文件的方法及装置。
技术介绍
随着微电子技术的发展,各种各样的智能卡开始进入人们的生活。不论是手机卡、银行卡、水卡、电卡还是社保卡、门禁卡甚至是身份证,它们都是不同行业的智能卡。由于智能卡的应用非常广泛其应用环境千差万别,其用户数据各有不同,而智能卡需要分配合适的用户空间来保存这些业务数据。早期的智能卡由于处理速度慢,存储空间小,一般业务数据都直接写入存储区。但是卡片应用直接操作存储区,容易造成存储区数据的混乱而且不符合卡片操作系统(cos,ChipOperatingSystem)分层设计的趋势。为此新一代的智能卡普遍采用文件来保存数据,通过文件系统来隔离应用和底层读写存储区的操作。对于智能卡cos系统根据其功能可以划分为四个层次:底层固件、存储管理系统、文件系统、应用系统。通常文件系统和存储管理系统密切相关,文件系统负责实现文件的创建、选择、读写、删除等操作。而在文件创建和删除的过程中,需要调用存储管理模块的空间分配和空间回收指令。在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:由于智能卡硬件的特点,现有的卡片文件系统多集中于具体功能的实现,较少综合考虑文件系统的通用性及高效性。对于具体的卡片,由于应用场景不同,通常生产发行之后会建立不同的文件系统。然而由于智能卡系统简单,资源有限,无法建立类似FAT(FileAllocationTable,文件配置表)的通用文件系统,因此各个厂家因地制宜设计了不同的文件系统。常见的有基于硬件地址的用户数据直接映射或者以双向链表来管理所有的文件。例如将文件直接映射到存储区,实现高效的文件读写。但是这样的系统使得文件严重依赖于存储器的分配,通用性较差,更换芯片时整个软件系统难以移植。有些设计者通过建立双向链表将所有文件按链表组织起来进行访问及控制,这样虽然实现了较好的通用性,然而文件访问时需要遍历整个链表,导致系统执行效率低下,不能更好的满足客户需求。公开于该
技术介绍
部分的信息仅仅旨在增加对本专利技术的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
技术实现思路
本专利技术的目的在于提供一种存储COS文件的方法及装置,从而克服现有COS文件系统执行效率低下的缺陷。本专利技术实施例提供的一种存储COS文件的方法,包括:获取用于存储目标COS文件的指令,所述目标COS文件包括文件头和文件体;将所述目标COS文件的文件头存储至相对应的文件头链表的节点处,所述文件头链表存储于第一存储区,且所述文件头链表的节点包含一个或多个子节点,且每个子节点对应一个COS文件的文件头;将所述文件体存储于第二存储区的相应位置。在一种可能的实现方式中,在所述将所述目标COS文件的文件头存储至相对应的文件头链表的节点处之后,还包括:确定所述目标COS文件的上一级COS文件,并将与所述上一级COS文件对应的子节点的后继指针设置为指向所述目标COS文件的文件头。在一种可能的实现方式中,所述文件头链表的节点设有前驱指针和后继指针,且所述文件头链表的节点、所述节点的前驱指针指向的上一个节点和所述节点的后继指针指向的下一个节点中的文件头为同级别的文件头。在一种可能的实现方式中,在所述将所述目标COS文件的文件头存储至相对应的文件头链表的节点处之后,该方法还包括:确定预设的包含一个或多个数据项的空间管理表,所述数据项包括用于表示空闲空间的起始地址和长度;根据所述目标COS文件的文件头的起始地址和长度更新相对应的数据项的起始地址和长度。在一种可能的实现方式中,该方法还包括:在接收到删除目标COS文件的指令之后,删除所述目标COS文件的文件头和文件体,并确定存储文件头的释放空间;根据所述空间管理表的数据项确定空闲空间,当存在空闲空间使得所述释放空间的起始地址与所述空闲空间的结束地址相同、或者所述释放空间的结束地址与所述空闲空间的起始地址相同时,将所述释放空间与所述空闲空间合并;当所述释放空间的起始地址或结束地址与所有空闲空间的起始地址和结束地址均不相同时,根据所述释放空间为所述空间管理表添加新的数据项,所述新的数据项的起始地址与所述释放空间的起始地址相同,所述新的数据项的长度为所述释放空间的结束地址与起始地址之间的空间长度。基于同样的专利技术构思,本专利技术实施例提供的一种存储COS文件的装置,包括:获取模块,用于获取用于存储目标COS文件的指令,所述目标COS文件包括文件头和文件体;第一存储模块,用于将所述目标COS文件的文件头存储至相对应的文件头链表的节点处,所述文件头链表存储于第一存储区,且所述文件头链表的节点包含一个或多个子节点,且每个子节点对应一个COS文件的文件头;第二存储模块,用于将所述文件体存储于第二存储区的相应位置。在一种可能的实现方式中,该装置还包括:设置模块;在所述第一存储模块将所述目标COS文件的文件头存储至相对应的文件头链表的节点处之后,所述设置模块用于确定所述目标COS文件的上一级COS文件,并将与所述上一级COS文件对应的子节点的后继指针设置为指向所述目标COS文件的文件头。在一种可能的实现方式中,所述文件头链表的节点设有前驱指针和后继指针,且所述文件头链表的节点、所述节点的前驱指针指向的上一个节点和所述节点的后继指针指向的下一个节点中的文件头为同级别的文件头。在一种可能的实现方式中,该装置还包括:更新模块;在所述第一存储模块将所述目标COS文件的文件头存储至相对应的文件头链表的节点处之后,所述更新模块用于确定预设的包含一个或多个数据项的空间管理表,所述数据项包括用于表示空闲空间的起始地址和长度;根据所述目标COS文件的文件头的起始地址和长度更新相对应的数据项的起始地址和长度。在一种可能的实现方式中,该装置还包括:接收模块和处理模块;所述接收模块用于在接收到删除目标COS文件的指令之后,删除所述目标COS文件的文件头和文件体,并确定存储文件头的释放空间;所述处理模块用于根据所述空间管理表的数据项确定空闲空间,当存在空闲空间使得所述释放空间的起始地址与所述空闲空间的结束地址相同、或者所述释放空间的结束地址与所述空闲空间的起始地址相同时,将所述释放空间与所述空闲空间合并;当所述释放空间的起始地址或结束地址与所有空闲空间的起始地址和结束地址均不相同时,根据所述释放空间为所述空间管理表添加新的数据项,所述新的数据项的起始地址与所述释放空间的起始地址相同,所述新的数据项的长度为所述释放空间的结束地址与起始地址之间的空间长度。本专利技术实施例提供的一种存储COS文件的方法及装置,文件头和文件体在存储区的不同位置保存,从而实现对文件头的集中管理,方便利用包含文件概要信息的文件头进行文件检索、查询等常见操作,提升系统效率;文件头以链表形式进行管理,且每个目录设有相应的文件头链表,方便对同一目录下的文件执行统一操作,删除用户数据时无需遍历所有的卡片文件。利用空间管理表实现对文件目录存储空间的动态管理,可以快速新增或者删除COS文件,进一步提高处理效率。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和本文档来自技高网
...
一种存储COS文件的方法及装置

【技术保护点】
一种存储COS文件的方法,其特征在于,包括:获取用于存储目标COS文件的指令,所述目标COS文件包括文件头和文件体;将所述目标COS文件的文件头存储至相对应的文件头链表的节点处,所述文件头链表存储于第一存储区,且所述文件头链表的节点包含一个或多个子节点,且每个子节点对应一个COS文件的文件头;将所述文件体存储于第二存储区的相应位置。

【技术特征摘要】
1.一种存储COS文件的方法,其特征在于,包括:获取用于存储目标COS文件的指令,所述目标COS文件包括文件头和文件体;将所述目标COS文件的文件头存储至相对应的文件头链表的节点处,所述文件头链表存储于第一存储区,且所述文件头链表的节点包含一个或多个子节点,且每个子节点对应一个COS文件的文件头;将所述文件体存储于第二存储区的相应位置。2.根据权利要求1所述的方法,其特征在于,在所述将所述目标COS文件的文件头存储至相对应的文件头链表的节点处之后,还包括:确定所述目标COS文件的上一级COS文件,并将与所述上一级COS文件对应的子节点的后继指针设置为指向所述目标COS文件的文件头。3.根据权利要求2所述的方法,其特征在于,所述文件头链表的节点设有前驱指针和后继指针,且所述文件头链表的节点、所述节点的前驱指针指向的上一个节点和所述节点的后继指针指向的下一个节点中的文件头为同级别的文件头。4.根据权利要求1所述的方法,其特征在于,在所述将所述目标COS文件的文件头存储至相对应的文件头链表的节点处之后,还包括:确定预设的包含一个或多个数据项的空间管理表,所述数据项包括用于表示空闲空间的起始地址和长度;根据所述目标COS文件的文件头的起始地址和长度更新相对应的数据项的起始地址和长度。5.根据权利要求4所述的方法,其特征在于,还包括:在接收到删除目标COS文件的指令之后,删除所述目标COS文件的文件头和文件体,并确定存储文件头的释放空间;根据所述空间管理表的数据项确定空闲空间,当存在空闲空间使得所述释放空间的起始地址与所述空闲空间的结束地址相同、或者所述释放空间的结束地址与所述空闲空间的起始地址相同时,将所述释放空间与所述空闲空间合并;当所述释放空间的起始地址或结束地址与所有空闲空间的起始地址和结束地址均不相同时,根据所述释放空间为所述空间管理表添加新的数据项,所述新的数据项的起始地址与所述释放空间的起始地址相同,所述新的数据项的长度为所述释放空间的结束地址与起始地址之间的空间长度。6.一种存储COS文件的装置,其特征在于,包括:获取模块,用于获取用于存储目标COS文件的...

【专利技术属性】
技术研发人员:徐平江付青琴袁艳芳赵东艳王于波庞振江聂睿李琨
申请(专利权)人:北京智芯微电子科技有限公司国网信息通信产业集团有限公司国家电网公司
类型:发明
国别省市:北京,11

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

1