转自:http://bbs.ednchina.com/BLOG_ARTICLE_172028.HTM
文件系统是COS的重要模块之一,它负责组织、管理、维护IC卡内存储的所有数据。文件系统的设计和实现既是COS系统中最灵活、最有个性的部分,也是对系统整体结构影响最大的模块之一。
在IC卡内,数据的管理和维护一般通过文件系统来进行。和PC系统类似,COS的文件系统要实现的主要功能包括:
* 空间的管理维护。
* 数据的有效存储。
* 数据的查找和定位。
* 数据的修改和维护。
在COS系统中,文件系统是一个承上启下的模块,对底层来说实现了存储空间的管理维护,对上层完全透明地实现了数据的管理功能,隐藏其实现的细节。
和PC上的文件操作相比较,IC卡的文件系统具有很多独特的地方。
* IC卡的文件操作很简单,不存在拷贝、剪切等。
* 对于应用来说,其卡内的文件结构以及大小都很固定,其存储空间大小和文件的属性在建立文件时就能确定,在使用中不需要修改。
* IC卡内对文件存储要求空间最优化,系统数据的比重尽可能少。
* 卡内的文件可以通过文件类型来标识,不同类型的文件对应着不同的操作模式,类型和操作的关联通过文件系统来实现(在PC上一般通过应用程序来实现)。
* 一般情况下,卡片内文件建立以后通常不需要删除操作,也没有临时文件的概念。
所以,通常在IC卡内,文件系统在设计中采用如下的逻辑结构。
* 文件系统分层管理,树状结构。从逻辑上能够保证不同应用的数据文件具有各自的入口,实现应用之间的独立性。
* 文件存储空间连续。由于每一个文件在建立时都能够确定其可能的最大长度,所以,每一个文件的存储在物理上保证其空间的连续性。
* 文件链式存储。由于文件数目比较少,而且文件系统具有较强的稳定性,所以,一般同一层次前后建立的文件之间通过文件链串连起来,可以通过文件链进行检索操作。
* 每一个文件必须在建立时指定文件类型,不同的文件类型可能存在不同的操作模式,在每一次文件操作前都必须进行严格的检查。
* 严格的安全保护。文件中存储的数据是IC卡中最重要的内容,对文件的操作其本质就是数据的操作,必须在严格在安全机制控制之下进行,文件系统和安全模块之间必须有相应的调用接口,安全设置也是文件属性中最重要的一项内容。