用于防止硬盘驱动文件系统的损坏的方法和系统技术方案

技术编号:5384384 阅读:257 留言:0更新日期:2012-04-11 18:40
本原理提供了一种用于通过集成日志记录文件系统和高速缓存系统来防止存储设备上的数据损坏的方法和设备。为了确保关于最有可能影响文件系统完整性的数据的日志准确性,依据本原理的一个方面的方法包括:当将这种数据写入(412)到存储设备的主盘时绕过高速缓存。此外,为了确保读写数据的整体效率,依据本原理的一个方面的方法包括:除了向盘片(428)还向高速缓存写(420)数据,该数据对文件系统的完整性具有相对小的破坏影响。因此,本原理的方面最优地将高速缓存系统和日志记录文件系统相集成,以提供一种鲁棒的文件系统完整性和有效的读写机制。

【技术实现步骤摘要】
【国外来华专利技术】
本原理总体上涉及存储设备上的数据写入,更具体地,涉及用于防止存储设备文 件系统的损坏的方法和系统。
技术介绍
与数据存储相关联的一个普遍问题是存储介质上的部分文件系统的损坏。数 据损坏通常是存储设备上数据写操作的中断的结果,这可能由于例如掉电而发生。避免 数据损坏的一个方法包括使用日志记录(journaling)文件系统,其中可以在变化执行 (instituting)之前将例如硬盘驱动器的存储介质的变化记录在日志中。因此,在掉电时, 日志中记录的变化可以被“重放”或执行,来使实际的数据结构与日志记录的变化一致。如 果日志记录的动作由于掉电而不完整而且它们的执行会损坏存储介质上的数据结构,则不 会简单的重放这些动作。因此,日志记录的文件系统可以通过校正在掉电期间发生的不完 整的写操作来防止在存储介质上的数据损坏。另一个与数据存储和读操作相关的关注点包括效率。例如,通常希望当写入数据 到存储设备时以及从存储设备读取数据时利用尽可能少的资源量。为了解决这些关注点, 典型地使用包括存储介质的相对较少部分的高速缓存系统。由于高速缓存的大小,从高速 缓存读取数据通常比从存储介质的主盘(main platter)读取数据快得多。在许多高速缓 存系统中,在向存储介质的主盘写入数据之前向高速缓存写入数据。此外,向盘片写入数据 可能按照与实现写操作的原始命令的顺序不同的顺序来发生。高速缓存系统通常按照在写 操作期间最小化存储介质的扫描的方式来向盘片写入数据。高速缓存系统中在盘片上写入 的顺序倾向于更依赖于存储介质上写入的位置而不是发出写命令的顺序。因此,由于高速缓存系统的本质,日志记录文件系统通常需要禁用高速缓存系统。 为了避免数据结构的损坏并在掉电后正确的恢复数据结构,日志记录文件系统依赖于按照 与原始写操作命令一致的顺序向存储介质的盘片写入数据。因而,需要这样的文件系统,其 合并了日志记录方面以避免数据损坏和高速缓存特征以提供有效的数据读写。
技术实现思路
本原理提供了一种用于集成日志记录文件系统和高速缓存系统的方法和系统。根 据本原理的一个方面,日志记录文件系统同时使用日志记录方面和高速缓存特征。日志记 录文件系统可以依赖于写入的数据的类型来动态地确定是否需要使用高速缓存。例如,文 件系统可以区分“关键”写入和“非关键”写入。和与非关键写入相关的数据损坏相比较, 与关键写入相关的数据损坏倾向于对文件系统损坏更严重。本原理的一个方面包括通过针 对关键写入绕过高速缓存以使确保文件系统的完整性,来优化日志记录文件系统以使其包 括高速缓存特征。按照这种方式,本专利技术的各方面可以同时提供日志特征和高速缓存特征 的益处,同时最小化通常伴随这二者的相互作用出现的任何负面影响。本原理的一个实施方式包括一种使用日志记录文件系统和高速缓存系统向存储设备写数据以防止存储设备上文件系统的损坏的方法,包括在日志记录中记录数据写; 确定数据是否是关键数据;当确定数据是关键数据时,产生向存储设备的盘片写入关键数 据的命令;将关键数据写入到存储设备的盘片中,其中,向盘片写入关键数据绕过向高速缓 存的写操作,以确保日志记录中记录的存储设备关于关键数据的状态是准确的。本原理的另一个实施方式包括一种用于向存储设备写入数据来防止存储设备上 文件系统的损坏的系统,包括存储设备的主盘;高速缓存;日志记录,包括存储设备的变 化日志;被配置成产生向日志记录和主盘写数据 的命令的文件系统,包括在确定该数据是 关键数据时产生的关键数据写命令;以及存储设备控制模块,被配置成根据关键数据写命 令将关键数据写入存储设备的盘片,其中,向盘片写入关键数据绕过向高速缓存的写操作, 以确保日志记录中记录的存储设备关于关键数据的状态是准确的。在附图和以下描述中提出了一个或多个实现方式的细节。即使以一种特定的方式 进行描述,但是应当清楚的是,可以以各种方式来配置或具体体现那些实现方式。例如,实 现方式可以作为方法来执行,或者可以具体体现为,被配置为执行一组操作的设备或存储 用于执行一组操作的指令的设备。根据结合附图和权利要求考虑的以下详细描述,其他方 面和特征将变得显而易见。有利地,本专利技术用于视频记录环境,例如在PVR中,其要求准确和及时地记录压缩 的数字视频内容。附图说明通过结合附图和以下详细描述,本原理的教导能够被容易地理解,图中图1是依据本原理的方面的个人视频记录器的示例性实现的框图。图2是依据本原理的方面的一种用于向存储设备写入数据以防止文件系统损坏 的系统的示例性实现的框图。图3是依据本原理的方面在防止存储设备上数据损坏中使用的文件系统处理的 示例性实现的流程图。图4是依据本原理的方面在数据写入方法使用的示例性存储设备命令处理例程 的流程图。图5是依据本原理的方面一种使用日志记录文件系统来修复损坏的扇区的方法 的示例性实现的流程图。应当理解,附图用于阐述本原理的概念,而不是必要地阐述本原理的唯一可能配 置。为了便于理解,在可能的地方同样的参考数字用于指示对于附图共有的同样的组件。具体实施例方式本原理提供了一种用于向存储介质写入数据的系统和方法。如上所述,与存储介 质上的数据写相关联的一个普遍问题是数据结构的损坏。一种严重的数据损坏形式包括写 拼接(splice),其发生在向存储介质上扇区的数据写操作中断时。该中断可能源于供电故 障、处理器冻结或阻碍写操作完成的其它事件。写拼接的特征在于扇区,其中,新数据被写 在扇区的开始处,旧数据和旧校验和(扇区中所有比特的总和,用于验证扇区内是否有错 误)保留在扇区的末尾。写拼接错误可能会被检测到或没有被检测到,即使被检测到,也需要重新格式化存储介质以校正写拼接,这会导致所有记录数据的丢失。在硬盘驱动系统 中,写拼接错误会引起安装失败或文件系统卷暂停,这在多数时候甚至不会返回错误码。因 而,由于写拼接错误通常会导致所有记录的数据的丢失,已经开发了许多方法来避免这种 情况。解决写拼接的方法包括同步写方法、改变写的顺序、和不同形式的日志记录。如上 所述,日志记录可以包括在出现这些变化之前记录存储介质盘片的变化。变化的日志可以 被包括在与数据被写入的存储介质相同或完全不同的存储介质上。在多种日志记录文件 系统中,日志记录被存储在与最终数据被写入的存储介质的相同的存储介质上的环形缓冲 区。在由供电故障、处理器冻结或类似导致写操作中断时,可以参考变化的日志记录来执行 系统恢复。例如,可以重放日志记录来完成被中断的向盘片的写操作,从而校正写拼接。此 夕卜,如果向日志记录自身的写操作被中断且未完成,则不重放日志记录的变化,且主盘的数 据结构的完整性同样是完整的。 为了在写操作中断之后启用文件系统恢复,变化的日志记录应当准确的反映存储 介质上文件系统的状态。具体地,日志记录应当准确的包括在主盘上写操作执行的顺序和/ 或写操作已经发生的时间。因为恢复涉及到重放在日志记录中记录的变化,日志记录文件 系统依赖于所记录的存储设备的状态是准确的;在重放变化之前,日志记录文件系统假设 还没有基于日志记录执行特定写操作或已经执行。因此,如果如记录在日志记录上已经执 行的写操作的顺序和/或时间不准确,则日志记录的变化的重放可能导致数据损坏,遭遇 与写拼接错误相本文档来自技高网
...

【技术保护点】
一种利用日志记录系统和高速缓存系统向存储设备写数据的方法,包括:接收向存储介质上写数据的命令;响应于该命令在日志记录中记录数据写;确定所述数据是否是关键数据;和在确定所述数据是关键数据的情况下,当向存储介质写数据时绕过向高速缓存的写入操作,从而确保日志记录中记录的存储设备关于关键数据的状态是准确的。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:威廉查尔斯凯斯特约翰斯潘塞戴森
申请(专利权)人:汤姆森许可贸易公司
类型:发明
国别省市:FR[法国]

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

1