效率源数据恢复论坛

标题: 通过清除非常驻缺陷表解决希捷硬盘前好后坏故障的研究 [打印本页]

作者: xlysoft    时间: 2016-8-25 15:10
标题: 通过清除非常驻缺陷表解决希捷硬盘前好后坏故障的研究
【文章来源:效率源科技(微信号)】微信号:xiaolvyuantec

编者按:希捷(ST)硬盘的前好后坏故障一直都是数据恢复行业的一个难题,这种故障出现的几率很高,而且难以修复。本期,数据恢复四川省重点实验室科研人员将带来一种快速清除ST硬盘非常驻缺陷表的方法,能有效解决硬盘因缺陷表故障而导致的硬盘不能正常访问扇区(即前好后坏的故障),甚至不认盘或硬盘忙等问题。


一、硬盘缺陷列表及工作原理
       硬盘数据存储密度很大,在生产过程中不可避免的会产生缺陷扇区,并且在使用过程中,那些不稳定的扇区也会逐渐老化而产生数据读写错误,成为缺陷扇区。这些缺陷和不稳定扇区会严重威胁硬盘的数据安全,为了保障数据安全,厂商为硬盘设计了两个缺陷列表P表(P-List)和G表(G-List)来处理这些有缺陷的扇区。

       缺陷列表P表和G表是是硬盘固件中非常重要的部分,在硬盘通电进行工作时,硬盘会将出现的缺陷扇区不断加在G表中,从而使得硬盘不会读取到缺陷扇区,而当硬盘需要读取该位置的扇区时,会被重新定位到保留扇区中的一个扇区,从而保证了硬盘的正常数据存取。如果P表或者G表出现了故障,那么就会造成硬盘出现大量坏道,以及扇区的逻辑性出现紊乱,造成硬盘无法正常工作。


二、缺陷列表故障导致ST硬盘出现前好后坏故障
       ST硬盘全部扇区分为固件区、工作区和保留扇区,硬盘容量小于其实际扇区总数,在固件里定义了硬盘容量后,超过的那部分扇区就被称为保留扇区。

        当有缺陷扇区被加入P表后,硬盘不会再读取该扇区,而是将原读写该扇区的操作顺延到下一个扇区,而该扇区以后的所有扇区LBA值都会发生变化,原来保留扇区的第一个扇区成为了硬盘的LBAmax(如图1)。
【图1:缺陷扇区加入P表后】

        而当缺陷扇区被加入G表后,硬盘再读取该扇区时,会被重新定位到保留扇区中的某一个扇区,工作区其他扇区不会被影响(如图2)。
【图2:缺陷扇区加入G表后】

       当ST硬盘缺陷列表出现故障时 ,会导致重建编译器与原始区段不匹配,造成数据区前面扇区扫描读取正常,后面扇区无法扫描读取,也就是所谓的前好后坏故障。


三、一种快速清除ST硬盘非常驻缺陷表方法
      解决ST硬盘前好后坏故障的核心是保证编译器和原始区段相吻合,也就是必须把缺陷表全部清除,再重建编译器。目前,现有技术清除缺陷表非常缓慢,需要每一条缺陷都要逐个读取,耗时非常长。

      针对这一问题,数据恢复四川省重点实验室科研人员,提供了一种快速清除缺陷表的方法(如图3):

       1.首先判断ST硬盘是否为同一系列,不同系列的硬盘获取非常驻G表信息的方式不一样。

       2.可以进入指令模式下通过输入特定的指令来查看获取非常驻G表信息。

       3.查看到非常驻G表的信息以后,再次通过输入特定的指令来获取非常驻G表条目。

       4.通过指令对获取到的非常驻G表条目进行清除。

       5.输入指令进行查看清除结果。

       6.在确定清除完非常驻G表后,进行硬盘重建。若可以正常访问扇区,则修复成功。

       7.若不能正常访问扇区,则进行扫描并加入非常驻G表,加表成功后再进行扇区访问,能够正常访问则修复成功。

【图3: 快速清除ST硬盘非常驻缺陷表流程图】

       通过以上步骤,可以快速清除ST硬盘中的非常驻缺陷表,并通过硬盘重建和对硬盘进行扫描加入非常驻G表,可以有效解决硬盘前好后坏的问题。


小结:针对ST硬盘因缺陷表损坏而产生的前好后坏的问题,本技术方法的优点在于能够对不同系列的ST硬盘使用不同方式获取非常驻性G表信息,准确发现非常驻性G表的地址和大小,直接通过指令清除非常驻缺陷表的缺陷条目数,达到清除非常驻缺陷列表的目的,具有时间快、效率高等特点。目前,该技术已成功运用到效率源DRS数据恢复系统中,取得了很好效果。





作者: jyhcwyh    时间: 2016-10-7 11:58
非常好的办法




欢迎光临 效率源数据恢复论坛 (http://bbs.xlysoft.net/) Powered by Discuz! X3.2