NTFS文件系统可恢复性分析.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NTFS文件系统可恢复性分析

NTFS文件系统的可恢复性分析   [摘要] 在信息化时代的今天,无论是我们个人还是企业都会将许多重要的数据存储在电脑系统中,而一旦我们的电脑和软件系统不可避免地出现差错从而导致数据的丢失,如何能够迅速而正确地进行数据的恢复也就成了至关重要的问题。这就使得数据恢复技术不论是对个人、企业还是国家都显得日益重要起来。NTFS文件系统是Windows使用的主要格式,本文主要阐述NTFS文件系统的可恢复性和数据恢复思路。   [关键词] 数据存储文件系统日志技术数据恢复NTFS      一、引言   NTFS是随着Windows NT操作系统而产生的,全称为“NT File System”,中文意为NT文件系统,如今已是windows类操作系统中的主力分区格式了。它的优点是安全性和稳定性极其出色,在使用中不易产生文件碎片,NTFS分区对用户权限做出了非常严格的限制,每个用户都只能按着系统赋予的权限进行操作,任何试图越权的操作都将被系统禁止,同时它还提供了容错结构日志,可以将用户的操作全部记录下来,从而保护了系统的安全。本文主要论述的就是NTFS在系统崩溃或磁盘出现故障后如何安全的恢复文件系统。   NTFS是一个具备错误预警的文件系统。由于NTFS对关键文件系统的系统信息采用了冗余存储,故而当磁盘上的某个扇区损坏时,NTFS仍可以访问卷上的关键数据。NTFS分区的最开始的16个扇区是分区引导扇区,用以保存分区引导代码,接下来是主文件表(MFT),如果MFT所在的磁盘扇区出现损坏,NTFS文件系统会将MFT转移到硬盘的其他扇区,这样就保证了NTFS文件系统和Windows操作系统的正常运行。   二、NTFS的日志记录技术   NTFS文件系统通过基于事务处理模式的日志记录技术(transaction logging and recovery techniques),成功保证了NTFS卷的一致性,实现了文件系统的可恢复性。在 FAT 或HPFS上执行CHKDSK时,系统会检查目录、分配和文件表中指针的一致性;但是在 NTFS 下,系统会维护针对这些组件的事务日志,因此,CHKDSK只需将事务回滚到上一个提交点就可以恢复文件系统中的一致性。事务日志方法需要的系统开销是很小的。NTFS并不是直接在日志文件中存取记录,而是通过LFS来读写。LFS提供了包括打开,???入,向前,向后,更新等操作来帮助NTFS处理日志文件。   把每一个具体的对NTFS卷文件的I/O操作看作一个事务,每个事务都是一个原子操作。这样,任何复杂的操作都可以分解成很多个事务。系统面对的就是许许多多的不同的事务。当一个事务开始后,它要么被顺利的完成,要么当遇到某些意外而出错时能回滚到上一个提交点,这时候NTFS卷处于该事务开始前的状态。很多原因都可以导致事务操作失败,如磁盘坏道、内存不足、设备连接错误等等。   为了确保每个事务都能顺利的完成或出错回滚到上一状态,对于每个事务NTFS文件系统都会执行以下步骤:   (1)把此次事务中的子操作记录到已缓存在内存的日志文件里;   (2)把实际的子操作数据记录到内存中;   (3)在缓存于内存的日志文件里把此次事务标记为已提交;   (4)把日志写入磁盘;   (5)把数据写入磁盘。   事实上,对于步骤(4)和步骤(5),NTFS并不是即时写入磁盘的,而是采用了延迟写(lazy-write)技术,选择在之后一个适当的时机用最佳方式把很多数据批处理到磁盘上。使用延迟写技术大大减少了磁盘操作的频率,从而极大地改善了系统的性能,但是在系统崩溃时有可能导致磁盘的不一致性,有一定风险。在我们自己编写的应用程序中可以通过设定FILE_FLAG_WRITE_THROUGH让系统不通过缓存而讲数据直接写入磁盘中――这时候系统其实仍然会缓存写操作只是没有延迟写入磁盘而已。   NTFS文件系统保证了缓存的日志先于事务中更改的数据存入磁盘。当文件系统更新缓存后,NTFS通过记录在缓存的日志里被标记为已完成的事务来提交这些事务。当缓存的日志刷新到磁盘上时,所有标记为提交的事务都要保证已经被完成了,即使系统可能会在把这些事务对数据的实际变动都存入磁盘之前崩溃掉。   当系统发生错误时,NTFS文件系统的日志中有足够的信息去完成或中断任何出问题的事务。执行恢复操作的时候,NTFS文件系统重做日志里每一个标记为提交的事务;然后文件系统在日志中查找那些在上一次系统崩溃时没有提交的事务,把日志中这些没有提交的事务的子操作统统撤销掉。因为NTFS文件系统在任何数据变动写入硬盘之前已经把这些变动的日志先写入了硬盘,所以NTFS拥有那些在恢复过程中需要回滚的子操作的所有的有效信息。   但是实际上,NTFS用这种事务日

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档