闪速类介质中存储事务记录的文件系统技术方案

技术编号:2841398 阅读:223 留言:0更新日期:2012-04-11 18:40
阐述了具有基于事务的文件系统的计算机系统。其包含处理器,处理器可以访问的保持性数据存储设备,和可被处理器执行的文件系统软件。保持性数据存储设备包含闪速类存储设备,其被组织成多个毗邻的存储块,每个存储块包含多个毗邻的存储页面。每个存储页面包含数据存储区和备用存储区。文件系统软件管理存储在保持性数据存储设备上的文件的文件数据和文件系统结构,并保存存储在闪速类介质中的事务文件。事务文件包含多个事务记录,其每个包含逻辑标题段和逻辑数据段。每个事务记录的逻辑标题段对应闪速类存储介质的同一块内的两个或多个毗邻存储页面的备用存储区,每个事务记录的逻辑数据段对应两个或多个毗邻存储页面的数据存储区。

【技术实现步骤摘要】

本专利技术主要涉及在计算机,嵌入式控制器等设备中使用的文件系统。更特别地,本专利技术涉及基于事务的文件系统,其中文件系统在闪速类介质中存储用于文件系统的事务记录。
技术介绍
计算机,嵌入式控制器和其它基于微处理器的系统通常由多种不同的硬件元件构成。硬件元件可以包括处理器,I/O设备,人界面设备,等等。另外,这样的系统用存储器单元保存系统中使用的数据。存储器单元可以采用多种不同的形式,包括但不限于硬盘驱动器,软盘驱动器,随机存取存储器,闪速存储器,等等。这样的系统的执行的高级应用程序必须经常与这些硬件元件进行无缝交互,包括存储器单元。为此,许多系统将操作作为应用程序与系统硬件之间的接口运行。文件系统软件可以作为部分操作系统被包含,或者可以将其提供为与操作系统交互的辅助软件元件。无论在哪种情况下,文件系统软件在存储器单元中组织数据,以备处理器和处理器执行的高级应用程序访问。有许多不同的文件系统类别,因为有很多种实现文件系统的方法。例如,基于事务的文件系统是一个其中的文件系统总保持一致状态的系统,因为对文件系统结构和数据做的所有更新都作为事务文件的事务记录下来。更特别地,所有对文件系统的更新都在事务文件内作为事务进行,文件系统的内容通过连续应用所有已提交的事务动态重组。事务文件中的事务或者被提交或者没有完成。例如,如果文件系统的操作由于电源故障这样的原因被中断,可以通过参考事务文件的内容恢复文件系统的状态。所有已提交的事务都被文件系统使用,所有没有完成的事务都被退回,将文件系统的状态恢复到试图更新之前的状态。由于事务文件被用来恢复文件系统,它必须存储在某种形式的保持性数据存储设备上。为此必须使用非易失性集成电路存储设备。但是,很多这种非易失性集成电路存储设备的物理存储器组织属性使得难于将其用来执行事务文件。
技术实现思路
在此阐述了带有基于事务的文件系统的计算机系统。计算机系统包括处理器,处理器可以访问的保持性存储设备,和处理器可以执行的文件系统软件。保持性数据存储设备包含组织在多个毗邻的存储块中的闪速类存储介质,每个存储块中包含多个毗邻的存储页面。每个存储页面包含数据存储区和备用存储区。文件系统软件管理存储在保持性存储设备中的文件的文件数据和文件系统结构,并进一步保存存储在闪速类介质中的事务文件。事务文件包含多个事务记录,每个事务记录包含逻辑标题段和逻辑数据段。每个事务记录的逻辑标题段与闪速类存储介质相同块内的两个或多个毗邻的存储页面的备用存储区相对应,而每个事务记录的逻辑数据段与两个或多个毗邻的存储页面的数据存储区相对应。在一个实施例中,每个事务记录的逻辑标题段对应于相同存储块内毗邻的第一和第二存储页面的备用存储区,而每个事务记录的逻辑数据段与第一和第二存储页面的数据存储区相对应。布置逻辑标题字段使得在文件系统启动过程中用来校验事务记录和/或重建文件系统的主要信息位于第一存储页面的备用区。执行事务记录的完全校验需要的次要信息可以置于第二存储页面的备用区内。基于对下列附图和具体实施例的研究,本专利技术的其它系统,方法,特征和优点对本领域的技术人员将会或将变得显而易见。意图是将所有这样的附加系统,方法,特征和优点包含在本说明中,包含在本专利技术的范畴内,并由下列权利要求保护。附图说明参照下列附图和说明可以更好地理解本专利技术。图中的元件不需要按比例,而是将强调重点放在说明本专利技术的原理。此外,在图中,相同的附图标记指示所有不同图中的相应部件。图1是用闪速类介质实现基于事务的文件系统的计算机系统的方框图。图2是示出可以在基于事务的文件系统中实现的文件和目录结构的一个示例的树型图。图3是图解一种模式的方框图,在该模式中,元文件的记录可以经布置实现图2中所示的文件系统结构。图4图解了逻辑布置基于事务的文件系统的事务文件中的事务记录的一种模式。图5示出一种闪速类介质设备中存储器的物理结构。图6和7图解了各种模式,在这些模式中,事务记录可以布置在闪速类介质设备中,以便在基于事务的文件系统中使用。图8图解了多个可以用来生成扩展池(extents pool)的相关步骤,而扩展池又用在计算机在启动过程中创建的重建文件系统中。图9到图11主要涉及用在图8所示的处理步骤中的各种记录类型的示范性格式。图12主要涉及重生成文件层次结构的目录节点记录的示范性格式,其中重生成文件层次结构在重建文件系统中使用。图13主要涉及重生成文件层次结构的文件节点记录的示范性格式,其中重生成文件层次结构在重建文件系统中使用。图14图解了可以用来创建用在重建文件系统中的重生成文件层次结构的多个相关处理步骤。图15是重建文件系统应用于图2所示的示范性文件和目录结构时的逻辑表示,该系统已经用图8到图14中所述的方式生成。具体实施例方式图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图解了文件系统软件47在只读存储器20中的存储。保持性存储单元30可以采用多种不同的形式。例如,保持性存储单元30可以采用硬盘驱动器,软盘驱动器等形式。它也可以是非旋转介质设备的形式,例如以集成电路形式实现的非易失性存储器(例如,闪速存储器,等等)。另外,保持性存储单元30不需要限于单个的存储器结构。相反,保持性存储单元30可以包含相同类型的多个独立存储设备(例如,全部为闪速存储器)和/或不同类型的独立存储设备(例如,一个或多个闪速存储器和一个或多个硬盘驱动设备)。存储在保持性存储单元30中的文件包括依照应用程序或操作系统节点43使用的预定格式解释的数据。例如,存储在文件中的数据可以组成可执行程序的软件代码,数据库记录的ASCII文本,与计算机系统10执行(或没有执行)的事务相对应的数据等。在这个示范性系统10中,文件系统软件47用倒置层次结构组织存储在保持性存储单元30上的文件。图2是示出一种模式的图,在该模式中可以实现以50概略地示出的倒置层次结构。在许多文件系统使用的传统层次结构中,文件结构的顶级以根目录开始,每个目录向下指向包含在目录中的文件和子目录。但是,在示范性倒置层次结构50中,包含在父目录中的子文件和子目录向上指向父目录。根据文件开本文档来自技高网
...

【技术保护点】
一种计算机系统,包括:处理器;可由所述处理器访问的保持性数据存储设备,所述保持性数据存储设备包括闪速类存储介质,其中所述闪速类存储介质包括多个毗邻的存储块,并且所述多个毗邻的存储块中的每一个都包括多个毗邻的存储页面,且其中所述多个毗邻的存储页面中的每一个都包括数据存储区和备用存储区;可由所述处理器执行的文件系统软件,以管理存储在所述保持性数据存储设备上的文件的文件数据和文件系统结构;被所述文件系统软件保存在所述闪速类介质中的事务文件,其中所述事务文件包括多个事务记录,且每个事务记录包括逻辑标题段和逻辑数据段,其中每个事务记录的所述逻辑标题段与相同块内的两个或多个毗邻的存储页面的备用存储区相对应,而每个事务记录的所述逻辑数据段与所述两个或多个毗邻的存储页面的数据存储区相对应。

【技术特征摘要】
US 2005-7-1 11/173,9941.一种计算机系统,包括处理器;可由所述处理器访问的保持性数据存储设备,所述保持性数据存储设备包括闪速类存储介质,其中所述闪速类存储介质包括多个毗邻的存储块,并且所述多个毗邻的存储块中的每一个都包括多个毗邻的存储页面,且其中所述多个毗邻的存储页面中的每一个都包括数据存储区和备用存储区;可由所述处理器执行的文件系统软件,以管理存储在所述保持性数据存储设备上的文件的文件数据和文件系统结构;被所述文件系统软件保存在所述闪速类介质中的事务文件,其中所述事务文件包括多个事务记录,且每个事务记录包括逻辑标题段和逻辑数据段,其中每个事务记录的所述逻辑标题段与相同块内的两个或多个毗邻的存储页面的备用存储区相对应,而每个事务记录的所述逻辑数据段与所述两个或多个毗邻的存储页面的数据存储区相对应。2.一种计算机系统,包括处理器;可由所述处理器访问的保持性数据存储设备,所述保持性数据存储设备包括闪速类存储介质,其中所述闪速类存储介质包括多个毗邻的存储块,并且所述多个毗邻的存储块中的每一个都包括多个毗邻的存储页面,且其中所述多个毗邻的存储页面中的每一个都包括数据存储区和备用存储区;可由所述处理器执行的文件系统软件,以管理存储在所述保持性数据存储设备上的文件的文件数据和文件系统结构;被所述文件系统软件保存在所述闪速类介质中的事务文件,其中所述事务文件包括多个事务记录,且每个事务记录包括逻辑标题段和逻辑数据段,其中每个事务记录的所述逻辑标题段与第一存储页面的备用存储区和第二存储页面的备用存储区相对应,且所述第一和第二存储页面在同一存储块内毗邻,并且其中每个事务记录的所述逻辑数据段与所述第一和第二存储页面的数据存储区相对应。3.如权利要求1所述的计算机系统,其中每个事务记录的所述逻辑标题段包括事务标识字段,所述事务标识字段帮助对文件的一个或多个相关事务记录按照流水顺序排序。4.如权利要求3所述的计算机系统,其中所述事务标识字段包括由所述文件系统软件分配的单调增加的事务标志符。5.如权利要求1所述的计算机系统,其中所述文件系统软件基于所述相同块内的事务记录的偏移值,导出存储在保持性数据存储设备的所述块中的事务记录的流水信息。6.如权利要求1所述的计算机系统,其中每个事务记录的所述逻辑标题段包括事务状态字段,该字段可以被所述文件系统软件访问,以确定与各个事务记录相对应的事务是否已被提交。7.如权利要求1所述的计算机系统,其中每个事务记录的所述逻辑标题段包括存储器状态字段,用来指示存储各个事务记录的存储块的状态。8.如权利要求1所述的计算机系统,其中每个事务记录的所述逻辑标题段包括存储器状态字段,用来指示存储各个事务记录的存储块是否处于被擦除状态。9.如权利...

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

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

1