短文件名文件系统中实现支持长文件名的系统结构及方法技术方案

技术编号:4182922 阅读:438 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种短文件名文件系统中实现对长文件名支持的系统结构及方法,系统结构包括存储功能模块、应用功能模块、长文件名与短文件名对照表,应用功能模块分别与存储功能模块、长文件名与短文件名对照表读写信息交互。方法包括长文件名文件写入处理操作和长文件名文件读取处理操作。采用了该短文件名文件系统中实现支持长文件名的系统结构及方法,软件层将驱动层得到的短文件名信息与对应表中的信息进行对比,就能够得到短文件名对应的长文件名,从而实现了短文件名文件系统中对长文件名文件存取操作的支持,而且方便快捷,系统结构简单,兼容性较,工作性能稳定可靠,适用范围较为广泛,尤其适合手机、PDA、MP3等嵌入式操作系统的应用场合。

【技术实现步骤摘要】

本专利技术涉及计算机文件系统领域,特别涉及计算机文件系统文件管理
,具体是 指一种。
技术介绍
FAT16文件系统中,当磁盘被格式化后,根目录的大小和位置就已经确定下来了位置 紧跟FAT2 (即第二个FAT表)之后,大小通常为32个扇区。FAT16文件系统把目录(文件夹)当作一个特殊的文件来处理,FAT16分区中所有的文 件夹(目录)文件,可以看作是一个存放其他文件(文件夹)入口参数的数据表,因此目录 文件也就是一个简单的二维表文件。其具体存储方式是系统以32个字节为单位分配给一个 FAT16目录项,这32个字节以确定的偏移来定义本目录下的一个文件(或文件夹)的属性。 这32个字节的具体定义见下表1所示。表l<table>table see original document page 4</column></row><table>其中表1的前三项详细解释如下:(1 )对于短文件名,系统将文件名分成两部分进行存储,即主文件名+扩展名。0x0 ~0x7字节记录文件的主文件名,0x8-0xA记录文件的扩展名,取文件名中的ASCII码值。不 记录主文件名与扩展名之间的".",主文件名不足8个字符以空白符(20H)填充,扩展名不 足3个字符同样以空白符(20H)填充。(2)0xB的属性字段可以看作系统将0xB的一个字节分成8位,用其中的一位代表某 种属性的有或无。这样, 一个字节中的8位每位取不同的值就能反映各个属性的不同取值了。 如00000101就表示这是个文件,属性是只读、系统。 以上是FAT 16对短文件名的支持实现方式。目前很多操作系统中FAT16分区也可以支持不超过255个字符的长文件名,其实现方式 如下长文件名依然是记录在目录项中的。为了低版本的操作系统或程序能正确读取长文件 名文件,系统自动为所有长文件名文件创建了一个对应的短文件名,使对应数据既可以用长 文件名寻址,也可以用短文件名寻址。不支持长文件名的OS或程序会忽略它认为不合法的 长文件名字段,而支持长文件名的OS或程序则会以长文件名为显式项来记录和编辑,并隐 藏起短文件名。长文件名的实现有赖于目录项偏移为OxB的属性字节,当此字节的属性为只读、隐藏、 系统、巻标,即其值为OFH时,不支持长文件名的操作系统会认为其不合法而忽略其存在。 这正是长文件名存在的依据。将目录项的OxB置为OF,其他就任由系统定义了。操作系统一 般支持不超过255个字符的长文件名。操作系统将长文件名以13个字符为单位进行切割,每 一组占据一个目录项,所以一个长文件名目录需要多个目录项。长文件名中的字符采用 Unicode形式编码,每个字符占据2字节的空间。其目录项定义如下表2所示。表2FAT16支持长文件名时目录项32个字节的表示定义<table>table see original document page 5</column></row><table><table>table see original document page 6</column></row><table>前面已经提到,根目录区大小为32个扇区,每个扇区一般为512个字节。而每一个目录 项大小为32个字节,因此如果全部存放短文件名文件或者文件夹,根目录区一共可以存放(32 扇区x512字节每扇区)+ (32字节每目录项)=512个文件或者文件夹。如果要实现对长文 件名的支持,每个255字符的长文件名(长文件夹名)会占用最多(255字符)+ (13个字符 每个表项)=20个表项,再加上与长文件名对应的一个短文件名项, 一共要占用21个表项。 因此极端情况下, 一个FAT16文件系统的根目录下只能存放512+21 = 24个长文件名表项。因此按上述方法实现支持长文件名的FAT16文件系统开发中存在两个严重不足 (1 )根目录下保存的目录项数有限。(2)操作系统进行长文件存储和读取时的算法复杂,驱动程序开发难度大,周期长。 而目前SD卡、MMC卡、mp3等设备的存储容量越来越大,4艮目录下需要存放的文件项 数越来越多,长文件名的使用场合也越来越广。而FAT16作为较早出现且较容易使用的文件 系统管理方式目前仍然广泛应用与手机、PDA、 mp3等设备的才喿作系统中,因此如何更好更 筒单的在FAT16文件系统中实现对长文件名的支持也变得尤为重要。
技术实现思路
本专利技术的目的是克服了上述现有技术中的缺点,提供一种能够在短文件名文件系统中支 持长文件名文件存取、方便快捷、系统结构简单、兼容性较好、工作性能稳定可靠、适用范 围较为广泛的。为了实现上述的目的,本专利技术的短文件名文件系统中实现支持长文件名的系统结构及方 法如下该短文件名文件系统中实现对长文件名支持的系统结构,包括存储功能模块和应用功能 模块,其主要特点是,所述的系统结构中还包括有长文件名与短文件名对照表,所述的应用 功能模块分别与所述的存储功能模块、长文件名与短文件名对照表进行读写信息交互。该短文件名文件系统中实现对长文件名支持的系统结构中的应用功能模块包括用户界面 层、软件层和驱动层,所述的存储功能模块依次通过驱动层、软件层与用户界面层进行读写信息交互,所述的软件层与所述的长文件名与短文件名对照表进4亍读写信息交互。该短文件名文件系统中实现对长文件名支持的系统结构中的长文件名与短文件名对照表 为长文件名与短文件名对照文件,且该长文件名与短文件名对照文件存储于所述的存储功能 模块中。该短文件名文件系统中实现对长文件名支持的系统结构中的应用功能模块中还包括长文 件名索引区和短文件名索引区,所述的长文件名索引区通过短文件名索引区与所述的长文件 名与短文件名对照表进行读写信息交互。该短文件名文件系统中实现对长文件名支持的系统结构中的^i文件名文件系统为FAT16 文件系统。该利用上述的系统结构在短文件名文件系统中实现对长文件名支持的方法,其主要特点 是,所述的方法包括长文件名文件写入处理操作和长文件名文件读取处理操作,所述的长文 件名文件写入处理操作包括以下步骤(Al )应用功能模块根据用户的长文件名文件写入请求,进行长短文件名记录与转换和 短文件名文件写入操作;(A2 )应用功能模块进行长文件名与短文件名对照表写入更新操作; 所述的长文件名文件读取处理操作包括以下步骤(Bl )应用功能模块根据用户的长文件名文件读取请求,进行长短文件名查询与转换和 短文件名文件读取4喿作;(B2 )应用功能模块进行长文件名显示操作。该在短文件名文件系统中实现对长文件名支持的方法中的长短文件名记录与转换和短文 件名文件写入操作,包括以下步骤(Al 1 )应用功能模块中的软件层根据所述的长文件名文件信息,根据系统预设的转换 规则将长文件名转换为对应的短文件名;(A12)软件层记录相应的长短文件名对应关系并向所述的驱动层发送相应的短文件名 文件写入指令;(A13 )所述的驱动层根据短文件名文件写入指令向所述的存储功能模块中写入该短文 件名文件。该在短文件名文件系统中实现对长文件名支持的方法中的长文件名与短文件名对照表本文档来自技高网
...

【技术保护点】
一种短文件名文件系统中实现对长文件名支持的系统结构,包括存储功能模块和应用功能模块,其特征在于,所述的系统结构中还包括有长文件名与短文件名对照表,所述的应用功能模块分别与所述的存储功能模块、长文件名与短文件名对照表进行读写信息交互。

【技术特征摘要】

【专利技术属性】
技术研发人员:李振乾
申请(专利权)人:上海摩波彼克半导体有限公司
类型:发明
国别省市:31[中国|上海]

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

1