档案格式转换方法

文档序号:6578526阅读:344来源:国知局
专利名称:档案格式转换方法
技术领域
本发明涉及档案格式转换方法,特别涉及将档案转变成FAT系统可读取的档案的 档案格式转换方法。
背景技术
在现有技术中,通常在储存装置使用FAT (File Allocation Table,档案配置表) 系统来作为管理储存装置的储存空间及记忆数据的工具。然而,在FAT系统下欲存取数据 时须在FAT表中寻找下一个可用的磁簇(Cluster)并更新FAT表。此类寻找的时间会随着 储存装置的使用空间以及储存空间分散的程度(或称磁盘破碎程度)而有所不同。一般而 言,储存空间越分散,所需时间越长。而且,每次更新FAT表时,必须从FAT表的表头从头开 始寻找。因此会耗费相当多的时间,无法满足需要数据快速读写的装置(如个人数字录像 机-PVR)的读写需求。此外,有些支持FAT档案系统的环境具有对于同一档案一次仅能开放一个读或写 的权限,因此在读完一档案后,若欲对同一档案执行写的动作,则必须将此档案关闭后再打 开才能执行,反之亦然。如此做法将会让使用FAT系统的储存装置的读写效能产生严重不 足的问题。而且,即使有些技术针对此点架设了新的储存系统做改善,也通常会存在着在新 的储存系统中产生的档案无法被FAT系统读取的兼容性问题,而大幅度的减低了使用者使 用新的储存系统来储存数据的意愿。

发明内容
本发明所要解决的技术问题是提供一种档案格式转换方法,该方法可以使得储存 的档案可以在其它系统上被读取,有效提高档案读写速度和效能,并且可以解决现有技术 中档案系统无法被FAT系统读取的兼容性问题。为了解决以上技术问题,本发明提供了如下技术方案本发明提供了一种档案格式转换方法,用以将一储存装置中的一第一档案系统的 一第一格式档案转换成一第二档案系统的一第二格式档案,该档案格式转换方法包含建 立一暂时档案,并将该暂时档案的一数据量设定为一第一特定值;将该暂时档案的一起始 位置设定成相同于该第一格式档案的一起始位置;以及根据该第一格式档案的一数据量更 新该暂时档案的该数据量,以得到该第二格式档案。本发明还提供了一种档案格式转换方法,用以将一储存装置中的一第二档案系统 的一第二格式档案转换成一第一档案系统的一第一格式档案,其中该第二档案系统系为一 FAT档案系统,其具有一档案配置表,而该第一档案系统系建构在该第二档案系统之上,该 档案格式转换方法包含于该档案配置表中将该第二格式档案的一数据量改为一预定值; 以及于该档案配置表中建立该第一格式档案,使该第一格式档案于该储存装置中的一起始 位置相同于该第二格式档案的一起始位置。
本发明所采用的档案格式转换方法可以通过将原先封闭式的档案系统转换成FAT 档案系统来增加数据存取的方便性,使得储存的档案可以在其它系统上被读取,有效提高 档案读写速度和效能。


下面结合附图和具体实施方式
对本发明作进一步详细说明。图1为将FAT系统转换成资料团块系统的概念图。图2为资料团块系统中的数据文件以及资料团块的示意图。图3为资料团块系统中的资料团块索引表的示意图。图4至图7为本发明的实施例的档案格式转换方法的示意图。图8为本发明的实施例的档案格式转换方法的流程图。主要组件符号说明本发明附图中所包含的各组件列示如下200储存系统中的储存空间201 217资料团块218储存空间219、221、223、225、227 数据文件300资料团块索引表301资料团块首部信息303区段起始信息305配置表307 317资料团块条目信息401数据文件403,405,407 资料团块409资料团块索引表411资料团块首部信息413区段起始信息415配置表417 425资料团块条目信息427FAT 索引表601第一资料团块603第二资料团块605第三资料团块801 803 步骤
具体实施例方式FAT系统系利用一 FAT索引表(档案配置表)来管理一储存装置,此种做法下,数 据在储存至FAT系统时是分散的,而其储存的地址会储存至FAT索引表中,在读取时会查询 FAT索引表以将所需数据读取出来。图1为将FAT系统转换成资料团块系统的概念图。为改善FAT系统的效能,系在FAT系统的架构下,预先格式化FAT索引表,将储存装置中的储 存空间规划成包含复数个资料团块(bulk),每一资料团块可视为是一储存单元,并产生一 资料团块索引(bulk index)表。此资料团块的分布在FAT索引表内系连续的,而资料团块 索引表则纪录了各种数据储存的相关信息,将在于底下对资料团块、资料团块档案以及资 料团块索引表做详细的说明。图2为资料团块系统中的数据文件以及资料团块的示意图。如图2所示,储存装 置中的储存空间200的至少一部份被划分成复数资料团块201 217,储存空间218则是 未被使用的储存空间。资料团块201 217的大小可根据不同的需求而有不同的设定。数 据文件(data file)219、221、223、225以及227分别储存在资料团块201 217中。数据 文件219系储存在连续的两资料团块201和203中,数据文件221、223以及225则分别的 储存在资料团块207 211上,而数据文件227系储存在连续的两资料团块215和217中。 由上述可知,当数据文件须用两个以上的资料团块来储存时,会储存在连续的资料团块中, 而不会像现有的FAT系统一样系储存在分散的扇区中。而其储存的地址相关信息会储存在 资料团块索引表当中,在存取的时候不须像现有的FAT系统一样去重新寻找,因此可增加 读写时的速度。在一较佳实施例中,每一资料团块仅用来储存单一数据文件,意即,当一资 料团块储存完一数据文件后,尽管还有剩余的储存空间,亦不会用来储存其它数据文件。而 当一数据文件的大小超过一资料团块的容量时,该数据文件系可被储存于多个连续的资料 团块中。图3为资料团块系统中的资料团块索引表的示意图。如图3所示,资料团块索引 表300包含一资料团块首部(Bulk Header)信息301、一区段起始信息(Sector Starting Information) 303、一 配置表(Allocation Table) 305、以及复数资料团块条目(Bulk Entry)信息307 317。在一实施例中,资料团块索引表300的每个部分都占据了 4K大小 的空间,因此整个资料团块索引表300会占据(4+N)*4K的大小,其中N为资料团块条目的 数目,而每一资料团块条目都记录了一资料团块中所储存的数据文件的信息。资料团块首 部信息301可视为系统信息,其纪录了资料团块系统的各种信息,例如整个系统的资料团 块总数、资料团块系统使用储存装置的大小、已储存有数据文件的资料团块数目等。区段起 始信息303系记载储存单元实体信息,其纪录了根据本发明的实施例划分出的储存单元与 储存装置的实体单元的对应关系。举例来说,区段起始信息303纪录了每一个资料团块在 储存装置中的起始位置。配置表305系为储存单元与数据文件的关联信息,其纪录了储存单元(例如资料 团块)和数据文件间的关连性。举例来说,配置表305纪录了每一数据文件系储存于哪个 或哪些资料团块之中。资料团块条目信息307 317系为个别储存单元的信息,每一资料 团块条目信息中纪录了所储存的数据文件的各种详细信息。举例来说,资料团块条目信息 307 317分别纪录了其所储存的数据文件的识别码、文件名称,档案长度、操作模式等。在数据文件储存之后,会以至少二个存取参数(例如读取指针及写入指针)来 纪录数据文件的存取位置,并根据已读写的数据单元的数据量更新存取参数的值。详细来 说,在开始写入数据文件之前,会以档案搜寻功能以及档案读写位置来定出数据文件的地 址(即找出对应的区段值),此步骤可简述如公式(一)公式(一)
区段=数据位开始区段+(搜寻位长度/每一区段的位)经由上述的步骤,读取的区段和写入的区段可由公式(二)和(三)计算而得。公式(二)读取区段=数据位开始区段+(档案读取位长度/每一区段的位)公式(三)写入区段=数据位开始区段+(档案写入位长度/每一区段的位)根据上述的存取动作,可让数据文件在存取时不须和现有的FAT系统一样,得先 搜寻FAT索引表以找出下一个连续的磁簇,因此可加快其存取速度。而且不像现有的FAT 系统一样,对于同一档案一次仅能开放一个读或写的权限,因此不须要不断的开启或关闭 档案,因此可节省档案存取的时间。前述的资料团块系统虽然可加快数据存取的速度,但当使用者利用资料团块系统 将档案储存以后,若要将其移至其它未装设资料团块系统而仅有FAT系统的储存装置时, 便无法读取已储存的数据,如此将会降低使用者使用资料团块系统的意愿。为此,本发明 提出一种档案格式转换方式,用以将资料团块系统中档案转换成兼容于FAT系统的档案格 式,底下将藉由实施例来详细说明本发明的档案格式转换方式。图4至图7为本发明的实施例的档案格式转换方法的示意图,请交互参着这些图 示以更为了解本发明的精神。在图4所示的实施例中,数据文件401系连续的储存在资料 团块403、405以及407中。而资料团块索引表409包含了先前所述的资料团块首部信息 411、区段起始信息413、配置表415、以及复数资料团块条目信息417 425。在一实施例 中,资料团块索引表409储存于其中一资料团块中。在此实施例中,数据文件401的起始区 段为0x7930,如区段起始信息413所示,而数据文件401涵盖的资料团块包含了第一至第三 资料团块Bulk 1-3 (即资料团块403、405以及407),如配置表415所示。而数据文件401 的文件名称为Filel. TS、档案长度为130MB (0x8200000),其起始的资料团块为第一个资料 团块,如资料团块条目信息417所示。为了让FAT系统得以读取在资料团块系统下所储存 的数据文件401,在此实施例中会先在FAT索引表中创造一暂时档案(亦即一虚拟数据单 元)。暂时档案的各种参数会被显示在相关的FAT索引表427当中(图4中的FAT索引表 427仅绘示出FAT系统中的FAT索引表的局部),例如文件名称、起始磁簇以及档案大小等。 在此实施例中,文件名称为fatFilel. TS、起始磁簇的初始值为0x00000 (亦即为0)、而档案 大小的初始值亦被设定为0。须注意的是,起始磁簇和档案大小的初始值皆可被设定成0以 外的其它值。接下来,暂时档案fatFilel. TS的起始磁簇会被设定成数据文件401的第一个资 料团块Bulkl (即图4的资料团块403)的地址相同,亦即与第一个资料团块Bulkl指向相 同位置,且其档案大小会被设定成跟第一个资料团块Bulkl的档案大小相同,因此FAT索引 亦会有相对应的变化。请参阅图5,资料团块Bulkl的起始磁簇为0x0004,而档案大小为 64MB,因此暂时档案fatFilel. TS的起始磁簇被更改成0x0004,而档案大小更改成64MB。然 后,资料团块Bulkl的档案大小会被更改为0。在此步骤执行完后,若数据文件涵盖了一个 以上的资料团块,数据仍无法被顺利读取,因此需有将复数数据区块连结起来的动作。请参阅图6,其说明了更改资料团块的信息以将复数数据区块连结起来的动作, 此信息系纪录在FAT索引表当中。图6的左半部系显示原先第一资料团块601、第二资料团块603以及第三资料团块605在FAT索引表中的信息,其中第一资料团块601、第二资 料团块603以及第三资料团块605分别具有复数个磁簇,而里面的数据会包含指向下一磁 簇的参数,举例来说,0x00000005即表示下一磁簇为第六个磁簇(因为第一个磁簇为00), 0x00000006即表示下一磁簇为第七个磁簇…以此类推。而最后作为结尾的磁簇则标示为 OxOFFFFFFF。由图6中可看出原本的第一资料团块601、第二资料团块603以及第三资料团 块605为各自独立的,因此都有作为结尾的磁簇OxOFFFFFFF。然而,在此情况下即使将虚拟数据单元的起始磁簇设为跟第一资料团块601相 同,并更改两者的档案大小,亦只能通过暂时档案fatFilel. TS读到第一个资料团块的数 据,因此须有连结的动作。请参阅图6的右半部,第一资料团块601、以及第二资料团块603 的最后一磁簇都会被更改以指向另一个资料团块的特定磁簇。如图6右半部所示,第一资 料团块601的最后一磁簇被更改成0x00004004,因此其会指向第二资料团块603的磁簇。同 样的,第二资料团块603的最后一磁簇被更改成0x00008004,因此其会指向第三资料团块 605的磁簇。而第三资料团块605的最后一个磁簇则包含了标示为结尾的参数OxOFFFFFFF。 藉由这样的作法,可以将第一资料团块601、第二资料团块603以及第三资料团块605完整 的连结起来以,因此只要读取暂时档案fatFilel. TS,便可以读到三个资料团块的数据。须 注意的是,上述的参数值以及配置方式仅用以举例,但并非用以限定本发明。举例来说,在 FAT系统中的第一到第四磁簇皆用以储存如首部(header)等指引信息,因此其有纪录数据 的第一个磁簇通常都以第五个磁簇开始。但若本发明的概念系运用FAT系统之外的系统, 则磁簇配置方式以及其内的参数都会有所不同。在将资料团块连结完后,则如图7所示般,将暂时档案fatFilel. TS的大小更改 成三个资料团块的总数据量(此例中为130MB),而第二资料团块Bulk2和第三资料团块 Bulk3的大小则如第一资料团块Bulkl —样更改为0。之所以最后要将三个资料团块的大 小皆更改为0的原因在于,如此便不需要复制资料团块的数据给暂时档案fatFilel. TS,而 且也不占据多余的储存空间。若将第一资料团块Bulkl、第二资料团块Bulk2和第三资料 团块Bulk3的值更改为零以外的其它值,亦可以有相同的效果。藉由上述的步骤,暂时档案 fatFilel. TS可被转换成FAT系统可读取的FAT档案(即最后的转换后档案)。图8为本发明的实施例的档案格式转换方法的流程图。请交互比对图8以及上述 的实施例,以更为了解本发明。图8包含了下列步骤步骤801 建立一暂时档案(例如fatFilel. TS),且暂时档案的一数据量在初始 时被设定为一第一特定值。步骤802 将暂时档案的一起始位置标示成和一第一格式档案(例如一数据文 件)的一起始位置相同。步骤803 将暂时档案的数据量标示成和第一格式档案的一数据量大小相同,此 时暂时档案已转换成一第二格式档案(FAT档案)。其它详细特征已揭露于上述实施例当中,故在此不再赘述。在一实施例,上述的动 作可藉由一控制电路(例如一处理器)执行一特定韧体或软件来实现,然,亦可藉由个别 的电路来实现。若欲将转换好的第二格式档案(即FAT档案)恢复成第一格式档案(即数据文 件),则可将上述的的步骤逆向操作。首先将FAT索引表内第二格式档案的数据量设为0,然后删除第二格式档案,如此才不会删除掉已建立好的FAT索引表。接着,于FAT索引表建立 对应于资料团块档案系统的第一格式档案,使第一格式档案的档案起始位置相同于第二格 式档案的档案起始位置。然后,根据资料团块档案系统的格式,计算出每个资料团块在FAT 索引表内的结尾并填上结尾符号(例如0x0FFFFFFF),并将FAT索引表内的每个资料团块 的档案大小设为资料团块档案系统预设的大小,因此,当第二格式档案的档案大小超过一 个资料团块的储存容量时,其转换后的第一格式档案将对应到复数个连续的资料团块。最 后,在资料团块索引表409中,更新关于第一格式档案的信息。藉由上述的实施例,可以通过原来的FAT系统来读取资料团块系统所储存的档 案,增加了数据存取的方便性。以上所述仅为本发明的较佳实施例,凡依本发明权利要求所做的均等变化与修 饰,皆应属本发明的涵盖范围。
权利要求
一种档案格式转换方法,用以将一储存装置中的一第一档案系统的一第一格式档案转换成一第二档案系统的一第二格式档案,其特征在于,所述档案格式转换方法包含建立一暂时档案,并将所述暂时档案的一数据量设定为一第一特定值;将所述暂时档案的一起始位置设定成相同于所述第一格式档案的一起始位置;以及根据所述第一格式档案的一资料量更新所述暂时档案的所述数据量,以得到所述第二格式档案。
2.如权利要求1所述的档案格式转换方法,其特征在于,所述第一特定值为零。
3.如权利要求1所述的档案格式转换方法,其特征在于,所述第一档案系统系预先自 所述储存装置中规划出复数储存单元。
4.如权利要求4所述的档案格式转换方法,其特征在于,其还包含提供一储存单元索引表,用以记录所述些储存单元的信息。
5.如权利要求4所述的档案格式转换方法,其特征在于,所述储存单元索引表包含储 存单元首部信息、储存单元起始信息、储存单元关联信息、以及储存单元个别信息至少其中其一。
6.如权利要求3所述的档案格式转换方法,其特征在于,所述第二档案系统系为一档 案配置表档案系统,其具有一档案配置表。
7.如权利要求6所述的档案格式转换方法,其特征在于,所述第一档案系统系建构在 所述第二档案系统之上。
8.如权利要求7所述的档案格式转换方法,其特征在于,若所述第一格式档案储存于 一个以上的所述储存单元时,所述档案格式转换方法还包含更改所述档案配置表中对应所述第一格式档案的所述储存单元的数据以连结对应所 述第一格式档案的所述储存单元。
9.如权利要求1所述的档案格式转换方法,其特征在于,其还包含将所述第一格式档案的所述数据量改设成一第二特定值。
10.如权利要求1所述的档案格式转换方法,其特征在于,所述第二特定值为零。
11.一种档案格式转换方法,用以将一储存装置中的一第二档案系统的一第二格式档 案转换成一第一档案系统的一第一格式档案,其中所述第二档案系统系为一档案配置表档 案系统,其具有一档案配置表,而所述第一档案系统系建构在所述第二档案系统之上,其特 征在于,所述档案格式转换方法包含于所述档案配置表中将所述第二格式档案的一数据量改为一预定值;以及于所述档案配置表中建立所述第一格式档案,使得所述第一格式档案于所述储存装置 中的一起始位置相同于所述第二格式档案的一起始位置。
12.如权利要求11所述的档案删除方法,其特征在于,所述预定值为零。
13.如权利要求11所述的档案格式转换方法,其特征在于,所述第一档案系统系预先 自所述储存装置中规划出复数储存单元,所述复数储存单元的每一皆具有一预定储存容 量。
14.如权利要求13所述的档案格式转换方法,其特征在于,若所述第二格式档案原始 的数据量大于所述预定储存容量的大小时,所述档案格式转换方法还包括根据所述第一档案系统,于所述档案配置表中恢复所述储存单元,并使所述第一格式档案对应于所述储存单元中一个以上的连续储存单元。
15.如权利要求13所述的档案格式转换方法,其特征在于,所述第一档案系统具有一 储存单元索引表,用以记录所述储存单元的信息,所述档案格式转换方法更包含于所述储存单元索引表中,更新关于所述第一格式档案的信息。
16.如权利要求11所述的档案格式转换方法,其特征在于,其还包含 删除所述第二格式档案。
全文摘要
本发明公开了一种档案格式转换方法,用以将一储存装置中的一第一档案系统的一第一格式档案转换成一第二档案系统的一第二格式档案,该方法可以使得储存的档案可以在其它系统上被读取,有效提高档案读写速度和效能,并且可以解决现有技术中档案系统无法被FAT系统读取的兼容性问题。该档案格式转换方法包含建立一暂时档案,并将该暂时档案的一数据量设定为一第一特定值;将该暂时档案的一起始位置设定成相同于该第一格式档案的一起始位置;以及将该暂时档案的该数据量改设成相同于该第一格式档案的一数据量,以产生该第二格式档案。
文档编号G06F17/30GK101908050SQ200910143548
公开日2010年12月8日 申请日期2009年6月3日 优先权日2009年6月3日
发明者李宗岳 申请人:晨星软件研发(深圳)有限公司;晨星半导体股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1