于档案系统中存取档案的方法及其系统技术方案

技术编号:2856003 阅读:199 留言:0更新日期:2012-04-11 18:40
一种用于一档案系统中的档案存取方法。该档案系统是使用多个储存区块来储存一档案,分别对应该多个储存区块的多个索引值是构成一单向链接。该方法包含有以下步骤:(a)依据该多个索引值所构成的该单向链接来设定出至少一断点;以及(b)依据该至少一断点以及该多个索引值所构成的该单向链接,来存取该档案。

【技术实现步骤摘要】

本专利技术是相关于一种档案存取方法,尤指一种可对一档案系统中的一档案设定断点,以加快对该档案的存取速度的方法。
技术介绍
档案配置表档案系统(file allocation table file system,或称为FAT档案系统)是一种常被使用于各种电子装置之中的档案系统。从1976年由微软的比尔盖兹所提出至今,经过数十年的发展,FAT档案系统已发展出数个不同的版本,例如FAT12、FAT16、以及FAT32。「簇」(cluster)是FAT档案系统中用来储存档案的最小单位,每一个档案需要使用一个或一个以上(正整数个)的簇来储存,至于每一个簇则可以包含有一个或数个扇区(sector),其中每一个扇区皆包含有512个字节。而FAT档案系统所使用的磁盘储存图(disk map)是称为「档案配置表」(file allocation table,FAT),档案配置表之中所包含的档案配置表字段(FAT entry)的字段数会等于储存装置中所包含的簇的数目,因此每一个FAT字段皆会对应到一个簇。某些特定的值对于FAT字段会有一些特殊的意义,举例来说,当一FAT字段的值为0时,表示该FAT字段所对应到的簇为一空簇(free cluster),亦即可以拿来储存新档案使用;当FAT字段的值为-8、...、-1时,表示其所对应到的簇为一档案的结尾(end of chain,EOC);当FAT字段的值为-9时,表示其所对应到的簇为一坏掉的簇(bad cluster);当FAT字段的值为-10h、...、-0ah时,表示其所对应到的簇为一保留的簇(reservedcluster);至于当FAT字段具有上述各特定值以外的值时,该值即表示于该簇之后,下一个用来储存同一档案的簇的簇编号。因此,当一档案在FAT档案系统中占据了一个以上的簇时,该些用以储存该档案的簇所相关的FAT字段就会形成一个单向的链接(亦即FAT chain)。举例来说,若一档案依序占据了FAT档案系统中的第三、第五、第七、第九、第十一、第十三簇时,第三簇所对应的FAT字段的值就会是5,表示在第三簇之后,下一个用来储存同一档案的簇是第五簇;第五簇所对应的FAT字段的值会是7,表示在第五簇之后,下一个用来储存同一档案的簇是第七簇。相似地,第七、第九、第十一簇所对应的FAT字段的值分别会是9、11、13,至于第十三簇所对应的FAT字段的值则会是-8、...、-1(亦即EOC),表示第十三簇是用来储存该档案的最后一个簇。换句话说,该档案所对应的FAT链接为从第三簇所对应的FAT字段开始,依序链接到第五、第七、第九、第十一、第十三簇所对应的FAT字段的单向链接。因为在FAT档案系统中,档案的FAT链接具有单向的特性(由前向后的链接),因此在存取(access)一档案时,系统并没有办法让指针(pointer)从后方的簇所储存的位直接跳跃(jump)至前方的簇所储存的位(除非前方的簇是储存该档案的第一个簇)。以上述依序占据第三、第五、第七、第九、第十一、第十三簇的档案为例,假设每一个簇的大小皆为512个字节,当系统在存取该档案的第2500个字节时,指针会指在第十一簇中的地址。然而,此时若要将指针移动到该档案的第1500个字节时(存放于第三个用以存放该档案的簇之中),由于透过第十一簇的FAT字段(其值为13),系统仅能得知下一个用来存放该档案的簇是第十三簇,并无法得知之前用来存放该档案的是哪些簇。因此,此时系统必须先找到存放该档案的第一个簇(亦即第三簇)的FAT字段(其值为5),再沿着该档案的FAT链接,依序找到第五、第七簇,才有办法将该指针移动到该档案第1500个字节(存放于第七簇之中)。上述关于FAT档案系统的单向链接的特性会造成档案的存取速度受限,尤其是在存取的过程中常需要跳跃式地移动指针进行搜寻时,读取档案的FAT链接的动作将会耗费不少的时间。因此,需要提供一种可以加速FAT档案系统中档案存取速度的解决方案。
技术实现思路
本专利技术的目的之一,在于提供一种用于一档案系统中的档案存取方法,用来加快对档案的存取速度。依据以下的实施例,本专利技术是揭露一种方法,用来于一档案系统中存取一档案。该档案系统是使用多个储存区块来储存该档案,分别对应该多个储存区块的多个索引值是构成一单向链接,该方法包含有(a)依据该多个索引值所构成的该单向链接设定出至少一断点;以及(b)依据该至少一断点以及该多个索引值所构成的该单向链接,来存取该档案。此外,本专利技术所提出的方法可以透过程序代码的方式收录于实体媒体中。当程序代码被机器加载且执行时,机器即可变成用以实行本专利技术的装置。由于本专利技术的作法会对欲存取的档案设定出至少一断点,因此藉由所设定的断点的辅助,本专利技术将可以增加对档案的存取速度。附图说明图1为本专利技术所提出的方法的一实施例流程图。图2为本专利技术对一FAT档案系统中的一档案所设定的断点的示意图。图3为本专利技术所提出的档案系统的一实施例功能方块图。符号说明300档案系统 310处理模块320储存模块 325储存单元具体实施方式为了要解决前述关于FAT档案系统中档案存取速度受限的问题,本专利技术所提出的方法将会对欲存取的档案设定至少一断点(break point),并在存取该档案时,利用该至少一断点所提供的信息来加速搜寻(seeking)的速度。请参阅图1,图1所示为本专利技术所提出的方法的一实施例流程图,可使用于一档案系统之中,加速对该档案系统中一档案的存取速度。其中,该档案系统是使用多个储存区块来储存该档案,且分别对应该多个储存区块的多个索引值是构成一单向链接。以下将简述图1中所示的各个步骤步骤110依据该多个索引值所构成的该单向链接设定出至少一断点。步骤120依据该至少一断点以及该多个索引值所构成的该单向链接,来存取该档案。以FAT档案系统为例,前述的每一储存区块为FAT档案系统中的一簇,每一储存区块所对应的一索引值则为该簇所对应的FAT字段的值。以下将以FAT档案系统(假设该FAT档案系统中每一簇的大小皆为512个字节)中的一档案作为例子(该档案依序占据了该FAT档案系统中的第三、第五、第七、第九、第十一、第十三簇),来更详细说明本专利技术所提出的方法。首先,在欲存取该档案之前,本专利技术可以先透过步骤110,先读取该档案所对应的FAT链接(从第三簇所对应的FAT字段开始,依序链接到第五、第七、第九、第十一、第十三簇所对应的FAT字段的单向链接)一次,并依据该档案所对应的FAT链接,设定出至少一断点。其中,每一断点是相关于用以存放该档案的一特定位的簇所对应的簇编号(各断点所相关的信息则可储存于一内存中)。举例来说,于步骤110中,本专利技术可对该档案设定出二断点,其中一第一断点是表示该档案的第513个字节是储存于该FAT档案系统的第五簇之中,一第二断点则表示该档案的第1537个字节是储存于该FAT档案系统的第九簇之中。此时,该档案的FAT链接以及相关的断点将会如图2所示。接下来,于步骤120之中,即可依据于步骤110中所设定的断点以及该档案的FAT链接,来存取该档案。举例来说,假设在存取该档案的过程中,要将一存取指针(pointer)从该档案的第一字节移动到该档案的第1537字节,由于透过该第二断点的信息,该F本文档来自技高网
...

【技术保护点】
一种于档案系统中存取档案的方法,该档案系统是使用多个储存区块来储存该档案,分别对应该多个储存区块的多个索引值是构成一链接,该方法包含有:(a)依据该多个索引值所构成的该链接设定出至少一断点;以及(b)依据该至少一断点及该多个 索引值所构成的该链接,来存取该档案。

【技术特征摘要】
US 2004-7-30 60/521,9831.一种于档案系统中存取档案的方法,该档案系统是使用多个储存区块来储存该档案,分别对应该多个储存区块的多个索引值是构成一链接,该方法包含有(a)依据该多个索引值所构成的该链接设定出至少一断点;以及(b)依据该至少一断点及该多个索引值所构成的该链接,来存取该档案。2.根据权利要求1所述的于档案系统中存取档案的方法,其中该链接为一单向链接。3.根据权利要求2所述的于档案系统中存取档案的方法,其中步骤(a)另包含有依据该多个索引值所构成的该单向链接,决定出该档案系统中,用以存放该档案的一特定位的储存区块所对应的区块编号,以作为一断点。4.根据权利要求2所述的于档案系统中存取档案的方法,其中步骤(b)另包含有欲自该档案的一第一位跳跃至一第二位时,从设定于该第二位前方的一断点所对应的储存区块开始,依序读取该单向链接上各储存区块所对应的索引值,直到找到存放该档案的该第二位的储存区块为止。5.根据权利要求2所述的于档案系统中存取档案的方法,其中步骤(b)另包含有欲自该档案的一第一位跳跃至一第二位时,若该第二位是储存于一第一断点所对应的第一储存区块中,则以不读取任一储存区块所对应的索引值的方式,直接依据该第一断点跳跃至储存于第一储存区块中的该第二位。6.根据权利要求2所述的于档案系统中存取档案的方法,其中步骤(b)另包含有欲自该档案的一第一位向后跳跃至一第二位时,若该第一位与该第二位之间没有任何断点,则从存放该档案的该第一位的储存区块开始,依序读取该单向链接上各储存区块所对应的索引值,直到找到存放该档案的该第二位的储存区块为止。7.根据权利要求2所述的于档案系统中存取档案的方法,其中步骤(b)另包含有欲自该档案的一第一位向前跳跃至一第二位时,若没有任何断点被设定于该第二位的前方时,则从对应于该单向链接的起点的储存区块开始,依序读取该单向链接上各储存区块所对应的索引值,直到找到存放该档案的该第二位的储存区块为止。8.根据权利要求2所述的于档案系统中存取档案的方法,其中该档案系统为一档案配置表档案系统。9.根据权利要求8所述的于档案系统中存取档案的方法,其中该多个储存区块中的每一储存区块为该档案配置表档案系统中的一簇。10.根据权利要求9所述的于档案系统中存取档案的方法,其中该多个索引值中的每一索引值为一簇所对应的档案配置表字段值。11.一种可存取档案的档案系统,其包含有一储存模块,包含有用以储存该档案的多个储存区块,其中,分别对应该多个储存区块的多个索引值是构成一链接;以及一处理模块,耦接于该储存模块,用来依据该多个索引值所构成的该链接设定出至少一断点,并依据该至少一断点及该多个索引值所构成的该链接,来存取该档案。12.根据权利要求11所述的可存取档案的档案系统...

【专利技术属性】
技术研发人员:许嘉容
申请(专利权)人:联发科技股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1