用于管理文件内容的设备和方法

文档序号:6553461阅读:137来源:国知局
专利名称:用于管理文件内容的设备和方法
技术领域
本发明涉及一种用于管理文件内容的方法和设备,所述文件属于向文件分配记录介质的资源单元的文件系统。单元的分配由所谓的结构信息来确定结构。
本发明具体涉及包含音频/视频数据的文件的管理。这些内容表现出大量的数据,然而需要实时地处理。因此,已经开发出基于使用单元的文件系统。这些单元是大的逻辑块。这样,用于存储数据的基本的不可分割单元可以比常规文件系统中使用的常规大小大100倍。主要的优点是,在实时处理期间,硬盘的读取头不会过于频繁地移动。此外,应当注意,由于文件的大小较大,所以这种大小的使用不会明显地影响数据存储的粒度。
背景技术
在已知设备中,对以数字数据的形式而编码的音频/视频数据执行处理具有很大的差异。然而,可以观察到,例如序列切片(slicing)的当今处理需要高特异性的装备,所述装备具体采用了较大的动态存储能力以存储所要处理的数据。这些装备通常是昂贵的,一般用于专业用途。
假设音频/视频数据读写设备的市场得以很大发展,当今存在对能够以简单、快速和便宜的方式来处理数字音频/视频数据的解决方案的需求。

发明内容
本发明打算解决该需求。
实际上,本发明涉及一种用于管理文件内容的方法,包括修改步骤,通过在文件内容的选定位置处分配和/或解除分配整数个单元而修改文件内容,通过对文件系统的结构信息进行更新来执行这个用于修改文件的步骤。
因此,根据本发明,由于通过在文件的给定位置处分配单元而对文件进行修改,所以当希望对文件的大小进行修改时,不再需要从这个文件中把已存储的数据提取到动态存储器,以执行期望的内容修改,例如增加数据,然后把已修改的文件存储到被分配给原始文件末端的多个单元中。通过直接修改结构信息,可以把资源单元插入文件内容中给定和选定的位置。之后,这些单元用于例如复制其他数据,例如电影序列或广告页。
根据本发明的实施例,在修改步骤中被分配给文件的单元在其分配之前是从任意文件中解除分配的。
在这种情况下,本发明能够把单元插入文件内容的某个位置,以便在把数据复制到这些单元之前对文件大小进行修改。
根据另一个实施例,在修改步骤中被分配给文件的单元在其分配之前是被分配给另一个文件的。
在这种情况下,本发明能够直接插入另一个文件的内容或一部分内容。因此,单元仅改变了其被分配的文件。他们不会被移动或复制。另一方面,它们从一个文件消失,以便成为另一个文件的组成部分。
在一种实施方式中,文件内容的选定位置由从文件内容的开端开始的移位字节的数目来指示。
在另一种实施方式中,文件内容的选定位置从start-of-file、current positioin和end-of-file参数中选择,由文件内容中的指针来指示current positioin。
本发明还涉及一种用于管理文件内容的设备,所述设备执行根据本发明的方法。
本发明还涉及一种包括程序代码指令的计算机程序产品,当所述程序在计算机上执行时,所述程序代码指令用于执行根据本发明的文件管理方法的步骤。


通过下文提供的非限制性示例方式的描述,并参考附图,本发明的其他特性和优点将会变得明显,其中-图1是表示存储资源单元分配的数组。
-图2a、2b和2c示出了根据现有技术来修改的文件和根据本发明来修改的文件的结构信息。
具体实施例方式
图1示出了表示文件内容管理设备中存储资源单元分配的数组。在这个图中,示出了468个资源单元。这些单元通常是大的逻辑块。例如,逻辑块的大小可以是常规大小,即512和2048字节之间,或可以是大得多的大小,例如128K字节的量级。使用这种大小的单元特别适用于音频/视频数据的处理,其中所要处理的数据量很大且存储粒度是容许的。根据图2a所示的结构信息,文件A使用资源单元100至110和257至301,由图1中的垂直阴影线表示。
根据现有技术的文件系统及图2b所示,可以通过在文件末端增加特定数目的单元,即从130至145的16个单元,来修改文件的大小。在这个情况下,为了在文件内容的特定位置上增加数据,需要从资源单元中提取数据,把它们发送至动态存储器,以便在把修改后的文件保存到新分配给文件的全部单元之前把数据增加到适当的位置。
这种做法包括动态存储器的广泛使用,而且可能会增加存储资源发生损失的风险,例如当简单地把内容从一个文件复制到另一个文件、然而该内容在复制后仍保留在存储资源中时。
根据本发明,如图2c所示,通过向文件中单元105后的确定位置分配单元130至145而修改文件内容。因此,本发明能够通过操作结构信息而向文件中任意位置处的文件内容分配单元。本发明还能够通过解除分配资源单元、由此减小文件大小而修改内容。根据本发明用于修改文件内容的函数具有三个参数待修改的文件、新文件的大小、待插入或擦除的单元的位置。这些参数由用户选择。
注意的是,新文件和旧文件大小之间的差必须是整数个资源单元。然而,参数中所示的长度可能以字节来表示,所以旧文件和新文件大小之间的差也由字节来表示。然后,由函数把这个值转换为整数个资源单元。
例如,该转换可以通过旧文件和新文件之间的差与单元大小或单元大小的倍数的除法而实现,所述单元大小的倍数与旧文件和新文件之间的差最接近。
在这个转换后,由所述函数有利地以整数的形式所返回的文件实际大小可能与给定作为参数的大小稍有不同。
根据本发明的实施方式,所表示的待插入或擦除的单元的位置可能不同。根据第一实施方式,该位置由多个字节表示,且给定的参数是以字节为单位的移位(关于文件开头的字节数)。根据第二实施方式,位置参数从三个值中选择Beginning_Of_File、Current_Position、End_Of_Fi1e。在这种情况下,位于文件中的读指针指示位置Current_Position。
因此,有利地,由Modification_Size所表示的函数的格式为(Size_Actual_Of_Fi1e_After_Modification)Modification_Size(File_Tobe_Modified;Size_Required;Position)例如,这个函数可以在脱机读取应用(公知是时移应用)中使用。该术语指示对同一个文件同时进行记录和读取。在这种情况下,例如硬盘的存储装置被考虑为缓冲存储器。在这种情况下,用于修改文件大小的函数由脱机读取设备自动地调用。例如由用户定义了两个文件大小MAX_SIZE和MIN_SIZE。这些值与为读取和写入之间的持续时间而构想的最大值和最小值相对应。因此,每当达到MAX_SIZE时,就会调用大小修改函数,把MIN_SIZE作为Size_Required参数,而且根据第二实施方式,把Beginning_Of_Fi1e作为Position。因此,该函数能够对文件开端单元进行解除分配。
当把各种文件的内容集合在一起、或把文件数据插入另一个文件时,这个函数还可以用于编辑应用。在这种情况下,用户可以控制参数,以实现文件中的修改。例如,用户可能希望把文件B中存储的假日影片序列插入到在文件A中紧邻地存储的一组家庭影片的特定位置处。在后者的应用中,用户把读指针放置在希望插入该序列的位置。然后调用函数,把文件A作为Fi1e_Tobe_Modified参数、文件A和B的大小的和作为Size_Required参数、把Current_Position作为Position参数。然后,该函数根据Size_Required参数而计算最终实际大小Size_Actual_Of_File_After_Modification,并通过修改结构信息而插入该数量的单元。之后,必须把文件B的内容转移到新分配给文件A的单元中。注意的是,新分配给文件的单元在被分配给任意文件之前,必须从文件中解除分配。因此,该函数从未分配的单元中选择在文件大小修改步骤中分配的单元。在这种情况下,图1中,在被分配到文件1之前,单元130至145形成了未分配单元的一部分。
这个做法包括使用缓冲存储器,在缓冲存储器中,文件B的内容在文件A的读取之后、写入之前被存储。还要注意的是,文件B仍旧存在且没有被修改文件B的内容仅被复制到文件A中。
在实施例中,本发明打算通过直接使用结构信息把文件B的单元直接插入文件A而修改文件大小。因此,一旦文件B的内容或一部分内容已经被插入文件A,那么这个内容或这部分内容不再被考虑为形成文件B的一部分。所提出的Insertion_Content函数能够使被占据的存储器和被占据的单元的数量不会增加,因为这些单元仅仅是从一个文件转移到另一个文件。这个函数是先前函数的补充,它具有5个参数转移的内容所来自的文件、转移内容的转入文件、被转移文件中所转移内容的起始位置、被转入文件中所转移内容的起始位置、所转移内容的长度。
同样,所转移的大小可以由字节来表示,在这种情况下,函数重新计算与所转移的内容长度最接近的整数个单元。函数返回待插入的内容的实际大小。
因此,这个函数具有如下形式(Size_Actual_Of_Content_To be_Inserted)Insertion_Content(File_Source;File_Destination;Position_Source;Position_Destination;Length)
该函数可以用于多种应用中,特别是编辑。因此,在上文提出的示例中,可以通过使用这个函数且不需要任何物理上的数据转移而直接完成把文件B插入文件A。避免了使用缓冲存储器,因而避免了所处理的数据量过大而出现的拥塞或甚至是饱和。在这个应用中,用户把读指针放置在希望插入文件B内容的位置。之后,调用Insertion_Content函数,把A作为Fi1e_Destination参数,把B作为File_Source参数,把Current_Position作为Position_Destination参数,把Beginning_Of_File作为Position_Source参数,而把B的内容的大小作为长度参数。在转移后,文件B仍存在,但是其大小为零。在仅插入文件B的一部分的情况下,位于文件B中的读指针指示针对第二实施方式的位置Current_Position。根据第一实施方式,所述位置由多个字节表示,在读取时不使用指针,仅有以字节为单位的移位(关于文件开端的字节数)被表示为Position_Source参数。
因此,事实上,当文件B的内容被插入文件A时,不会执行内容转移。仅对结构信息进行更新。在图1中,这相当于单元130至145是文件B的内容。
依据本发明,可以逐段地修改包含存储在存储单元中的数据的文件。这种逐段的修改通过操作结构信息而完成,直接通过修改命令而不通过这个命令而完成。这个修改命令可以提供给用户,或例如在脱机读出应用中自动地执行。
本发明不限于所述实施例和所述应用,本领域的技术人员可以理解,存在不同的变体实施例,例如在不使用动态存储器前提下的文件内部的数据移动。
权利要求
1.一种管理文件内容的方法,所述文件属于向文件分配记录介质的资源单元的文件系统,单元的分配由所谓的结构信息来确定结构,其特征在于,所述用于管理文件内容的方法包括修改步骤,通过在文件内容的选定位置(105)处分配和/或解除分配整数个单元(130-145)来修改文件内容,通过对文件系统的结构信息进行更新来执行这个用于修改文件的步骤。
2.根据权利要求1所述的方法,其中被分配的单元在其被分配前是从任意文件中解除分配的。
3.根据权利要求1所述的方法,其中被分配的单元在其被分配前是被分配给另一个文件的。
4.根据上述权利要求中任意一项所述的方法,其中文件内容的选定位置由从文件内容的开端开始的移位字节的数目来表示。
5.根据上述权利要求中任意一项所述的方法,其中从start-of-file、current positioin和end-of-file参数中选择文件内容的选定位置,由文件内容中的指针来指示current positioin。
6.一种用于管理具有数字视听数据的文件内容的设备,所述设备使包括分配给文件系统中文件的资源单元的记录介质可用,所述分配由所谓的结构信息来确定结构,所述设备包括修改模块,用于通过对文件系统的结构信息进行更新而在文件内容的选定位置处分配和/或解除分配整数个单元,从而修改文件的内容。
7.一种包括程序代码指令的计算机程序产品,当所述程序在计算机上执行时,所述程序代码指令用于执行根据权利要求1至4中的一项所述的文件管理方法的步骤。
全文摘要
本发明涉及一种用于管理文件内容的方法,所述文件属于向文件分配记录介质的资源单元的文件系统,单元的分配由所谓的结构信息来确定结构。根据本发明,根据本发明的方法包括修改步骤,通过在文件内容的选定位置(105)处分配和/或解除分配整数个单元(130-145)来修改文件内容,这个用于修改文件的步骤通过对文件系统的结构信息进行更新而执行。应用于音频/视频数字数据处理。
文档编号G06F17/30GK101091182SQ200580044977
公开日2007年12月19日 申请日期2005年12月16日 优先权日2005年1月5日
发明者塞尔日·德弗朗斯, 英格丽德·奥捷, 加尔·马赛 申请人:汤姆森许可贸易公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1