文件系统完整性的优化启动验证技术方案

技术编号:2842722 阅读:238 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种计算机系统,包括处理器、可由处理器访问的随机访问存储、可由处理器访问的永久数据存储装置,还可以包括可由处理器执行的文件系统软件,该文件系统软件用作管理存储在永久数据存储装置上的文件的文件数据和文件系统结构。此外,文件系统软件可以维护包括多个事务记录的事务文件。每个事务记录具有标题部分和数据部分。每个事务记录的标题部分可以包括一个或多个字段,用于存储与由事务记录所表示的文件事务相对应的信息。文件系统软件执行启动处理,在所述的启动处理中在随机访问存储器中生成重建的文件系统,并且,当事务记录满足一个或多个预定的标准时,启动处理可以跳过对事务记录的数据部分的验证。

【技术实现步骤摘要】

本专利技术涉及一种用在计算机、嵌入式控制器等中的文件系统。特别是,本专利技术涉及一种基于事务的文件系统,在该基于事务的文件系统中优化文件系统完整性的启动验证。
技术介绍
计算机、嵌入式控制器以及其它基于微处理器的系统典型地是根据多个不同的硬件部件而构建的。硬件部件可以包括处理器、I/O装置、人机界面装置等。另外,这样的系统利用存储器存储部件来保存用在该系统中的数据。存储器存储部件可以采用不同的形式包括、但不局限于硬盘驱动器、软驱、随机存储器、闪存等。在这样的系统中执行的高级的应用程序必须与这些硬件部件(包括存储器存储部件)经常进行无缝连接。为此,许多系统运行用作应用程序和系统硬件之间的接口的操作系统。文件系统软件可以被包括为操作系统的一部分,或者其可以用作与操作系统相作用的辅助软件部分。在任一种情况下,文件系统软件在存储器存储部件中组织数据,以备处理器和处理器执行的高级应用程序所访问。由于实现文件系统具有多种方法,就存在多种不同的文件系统分类。例如,在基于事务的文件系统中,由于所有对文件系统结构和数据的更新都被记录为对事务文件的事务处理,所以该文件系统始终保持在一致状态。更特别地,对文件系统的所有更新被作为在事务文件内的事务,并且通过连续应用所有已经提交的事务处理,对文件系统的内容进行动态地重建。事务文件中的事务或者被提交或者还没有被完成。如果文件系统的操作被打断,诸如由于停电,例如则可以通过参考事务文件的内容,恢复文件系统的状态。任何提交的事务处理都由文件系统使用,并且任何没有完成的事务处理都被返回,将文件系统恢复到试图更新前所处的状态。将文件系统恢复到一致状态需要文件系统软件执行预定的启动处理。在典型的启动处理中,在其成为文件系统的部分之前,对存储在事务文件中的每个事务的完整性进行验证。在启动处理中,也可以执行另外的文件系统。然而由于该操作是时间、处理以及资源密集的,所以在文件系统中止之后执行事务验证以及其它文件系统操作的传统的方式经常是达不到标准的。
技术实现思路
本专利技术公开了一种计算机系统,该系统可以用于实现基于事务的文件系统。该计算机系统包括处理器、可以由处理器访问的随机访问存储器以及同样可以由处理器访问的永久(persistent)数据存储装置。计算机系统也可以包括文件系统软件。该文件系统软件可以由处理器执行,并且该文件系统软件用于管理存储在永久数据存储装置上的文件的文件数据和文件系统结构。此外,文件系统软件可以维护包括多个事务记录的事务文件。每个事务记录具有标题部分和数据部分。每个事务记录的标题部分可以包括一个或多个字段,所述字段用于存储与由事务记录所表示的文件事务相对应的信息。如果文件系统软件的操作中断,文件系统软件利用启动处理继续其执行过程,在所述的启动处理中在随机访问存储器中生成重建的文件系统。在系统重启期间,当事务记录满足一个或多个预定的标准时,启动处理可以跳过对事务记录的数据部分的验证。例如,该启动处理可以在只影响文件数据的事务记录和影响文件系统的元数据的事务记录之间进行区别。当在启动处理中找到事务时,文件系统软件可以标识事务影响了文件数据还是元数据。由于在启动之后只需要元数据来确保文件系统处于一致状态,可以将与元数据相关的事务记录选择成受到完整验证的事务记录的唯一子集。例如可以将对其它的事务记录的验证限制为对包含在每个剩余的事务记录的标题部分中的信息的检查。事务文件可以存储在例如闪存中。在这种情况下,可以进一步加快启动处理。例如启动处理可以将其标题信息验证限制成闪存装置的相同块中一系列事务记录的第一个事务记录。在启动期间,既不对该系列的尾部事务记录的标题部分也不对其数据部分进行验证,并且即使有的话,启动处理继续移动处理下一个装置块的事务记录。更进一步,启动处理可以检查标题部分信息,以确定装置块中的存储位置是否已被擦除或停用。如果装置块中的存储位置已被擦除或停用,启动处理继续处理下一个装置块。在察看了以下的附图和详细描述后,本专利技术的其它的系统、方法和优点对本领域的熟练人员将会或将会变得显而易见。目的在于这样的另外的系统、方法、特征和优点将包括在该说明书之内、在本专利技术的保护范围之内并且由以下的权利要求保护。附图说明参照下列附图和说明可以更好地理解本专利技术。附图中的组件并不一定是按照比例的,而是将重点放在描述本专利技术的原理上。而且,在附图中,相同的附图标记在不同的附图中始终表示相应的部分图1是可以实现基于事务的文件系统的计算机系统的框图,在该文件系统中优化文件系统完整性的启动验证;图2是表示可以实现在基于事务的文件系统中的文件和目录的排列的一个实例的树状图;图3是描述可以排列元文件的记录以实现附图2中所示的文件系统结构的一种方式框图;图4描述了在基于事务的文件系统的事务文件中逻辑排列事务记录的一种方式;图5表示在一种闪存媒体装置中存储器的物理排列;图6和7表示事务记录可以排列在用于基于事务的文件系统的闪存媒体装置中的不同的方式;图8描述了可用于生成范围池(extent pool)的多个相关的处理步骤,所述的范围池又用在重建的文件系统中,所述的重建的文件系统是在重启期间由计算机系统生成的;图9至11表示用在如图8所示的处理步骤中的不同的记录类型的示例性格式; 附图12表示用在重建的文件系统中的再生的文件体系的目录节点记录的示例性格式;附图13表示用在重建的文件系统中的再生的文件体系的文件节点记录的示例性格式;附图14描述了可用于构建用在重建的文件系统中的再生的文件体系的多个相关的处理步骤;附图15是重建的文件系统的逻辑表示法,所述的文件系统是依照附图8至14所述的、应用到了如图2所示的示例性文件和目录排列的方式而生成的。具体实施例方式附图1描述了可以用在示例性的基于事务的计算机系统10中的部件。如图所示,示例性的系统10包括处理器15、只读存储器20、以及永久性存储单元30。计算机系统10也可以包括随机存储器35、I/O接口40、以及用户接口45。可以使用在计算机系统10中的具体的部件适合由计算机系统10执行的特定的功能。因此,除了处理器15以外,部件的缺失与否,可以特定于计算机系统10的设计标准。例如,当计算机系统10采取嵌入式控制器等的形式时,可以忽略用户接口45。只读存储器20可以包括操作系统代码43,其控制由处理器15和不同的硬件部件执行的高级应用程序之间的相互作用,所述的不同的硬件部件包括存储装置20和35、永久存储单元30以及接口装置40和45。操作系统代码43可以包括用于组织存储在永久存储单元30上的文件的文件系统软件。可选地,文件系统软件可以是只与操作系统代码43相交互的单独的软件组件。在后一种情况下,与文件系统软件相对应的代码可以存储在只读存储器20、永久存储单元30等中。当计算机系统10通过I/O接口40与其它的计算机和/或存储装置网络连接时,文件系统软件可以远距离存储并根据需要下载到计算机系统10。但是,附图1描述了在只读存储器20中的文件系统软件47的存储。永久存储单元30可以采取多种不同的形式。例如,永久存储单元30可以采用硬盘驱动、软盘驱动等。它也可以是非旋转式媒体装置诸如以集成电路格式实现的永久性存储器(例如闪存等)。而且,永久存储单元单元30不必局本文档来自技高网
...

【技术保护点】
一种计算机系统,包括:处理器;可由所述处理器访问的随机访问存储器;可由所述处理器访问的永久数据存储装置;可由所述处理器执行的文件系统软件,所述文件系统软件用于管理存储在所述永久数据存储装置上的文件的文件数据和文件系统结构;以及由所述文件系统软件维护的事务文件,其中,所述事务文件包括多个事务记录,并且每个事务记录包括标题部分和数据部分,其中,每个事务记录的所述标题部分包括一个或多个字段,所述字段包含与所述事务记录所表示的文件事务相对应的信息;并且所述文件系统软件执行启动处理,在所述启动处理中,在所述随机访问存储器中生成重建的文件系统,并且当所述事务记录满足一个或多个预定的标准时,所述启动处理跳过对存储在事务记录的数据部分中的信息的验证。

【技术特征摘要】
US 2005-7-1 11/173,7981.一种计算机系统,包括处理器;可由所述处理器访问的随机访问存储器;可由所述处理器访问的永久数据存储装置;可由所述处理器执行的文件系统软件,所述文件系统软件用于管理存储在所述永久数据存储装置上的文件的文件数据和文件系统结构;以及由所述文件系统软件维护的事务文件,其中,所述事务文件包括多个事务记录,并且每个事务记录包括标题部分和数据部分,其中,每个事务记录的所述标题部分包括一个或多个字段,所述字段包含与所述事务记录所表示的文件事务相对应的信息;并且所述文件系统软件执行启动处理,在所述启动处理中,在所述随机访问存储器中生成重建的文件系统,并且当所述事务记录满足一个或多个预定的标准时,所述启动处理跳过对存储在事务记录的数据部分中的信息的验证。2.一种计算机系统,包括处理器;可由所述处理器访问的随机访问存储器;可由所述处理器访问的永久数据存储装置;可由所述处理器执行的文件系统软件,所述文件系统软件用于管理存储在所述永久数据存储装置上的文件的文件数据和文件系统结构;以及由所述文件系统软件维护的事务文件,其中,所述事务文件包括多个事务记录,并且每个事务记录包括标题部分和数据部分,其中每个事务记录的所述标题部分包括一个或多个字段,所述字段包含与所述事务记录所表示的文件事务相对应的信息;并且其中,所述文件系统软件执行启动处理,在所述启动处理中,在所述随机访问存储器中生成重建的文件系统,并且其中,所述启动处理跳过对存储在事务记录的数据部分中的信息的验证,除非所述事务记录影响了所述文件系统结构的元数据,并且其中执行所述启动处理以验证存储在影响所述文件系统结构的元数据的事务记录的标题部分和数据部分中的信息。3.一种计算机系统,包括处理器;可由所述处理器访问的随机访问存储器;可由所述处理器访问的永久数据存储装置;可由所述处理器执行的文件系统软件,所述文件系统软件用于管理存储在所述永久数据存储装置上的文件的文件数据和文件系统结构;以及在闪存介质中由文件系统软件维护的事务文件,其中,所述闪存介质被组织进存储块中,并且每个存储块包括多个存储页面,其中所述事务文件包括多个事务记录,并且每个事务记录包括标题部分和数据部分,并且其中每个事务记录的标题部分包括一个或多个字段,所述字段包含与所述事务记录所表示的文件事务相对应的信息;并且其中,所述文件系统软件执行启动处理,在所述启动处理中,在所述随机访问存储器中生成重建的文件系统,其中,当一系列事务记录中的第一个出现的事务记录和尾部事务记录被存储在相同存储块中并且影响相同文件时,所述启动处理验证第一次出现的事务记录的标题部分中的信息,同时跳过对尾部事务记录的任何验证。4.根据权利要求1所述的计算机系统,其中所述启动处理验证存储在多个事务记录的标题部分中的信息。5.根据权利要求1所述的计算机系统,其中所述启动处理验证错误校正代码字段,以检查存储在多个事务记录的标题部分中的信息。6.根据权利要求1所述的计算机系...

【专利技术属性】
技术研发人员:D道奇
申请(专利权)人:QNX软件操作系统德国有限公司
类型:发明
国别省市:DE[]

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

1