一种修复硬盘扇区前好后坏的方法技术

技术编号:14416594 阅读:211 留言:0更新日期:2017-01-12 09:35
本发明专利技术公开了一种修复希捷硬盘扇区前好后坏的方法,包括以下步骤:S1:硬盘在认盘状态下,清除NG‑LIST;S2:按顺序扫描硬盘坏点,扫到一个坏点就将坏点加入G表,并重建;S3:判断是否完成整个硬盘的查找,若完毕则结束,否则转到S2。本发明专利技术的有益效果如下:能准确快速的扫描硬盘内坏点,可修复512Kb的硬盘也可以修复4K技术的硬盘。还可以解决不识别硬盘的故障问题;修复成功率高,且修复速度快,效率高。

【技术实现步骤摘要】

本专利技术涉及信息安全
,特别涉及一种修复希捷硬盘扇区前好后坏的方法。
技术介绍
所谓希捷硬盘“前好后坏”,是指前面一部分扇区可以读取,但后面一部分扇区就不能访问的情况。当希捷硬盘出现损坏,无法访问数据区较大LBA值数据,目前市面上有一些技术可以修复硬盘前好后坏的故障,但是存在一下几点问题:1.不能修复4K技术的硬盘;2.修复速度过慢,且必须要专业人士操作;3.不能解决因缺陷混乱导致的不识别硬盘的情况。
技术实现思路
本专利技术针对现有技术的缺陷,提供了一种修复希捷硬盘扇区前好后坏的方法,能有效的解决上述现有技术存在的问题。为了实现以上专利技术目的,本专利技术采取的技术方案如下:一种修复希捷硬盘扇区前好后坏的方法,包括以下步骤:S1:硬盘在认盘状态下,清除NG-LIST;S2:按顺序扫描硬盘坏点,扫到一个坏点就将坏点加入G表,并重建;S3:判断是否完成整个硬盘的查找,若完毕则结束,否则转到S2。作为优选,所述S1的详细步骤如下:S101:判断硬盘参数状态是否就绪,若就绪则执行S102,若未就绪则执行S105;所述判断参数状态需调用函数:Boolisbusy=ChekDiskStateBusy();//检测硬盘状态If(isbusy==false)exit;//退出S102:判断是否可以访问硬盘的0号LBA,若可以则执行S105。否则执行103;S103:硬盘开电后,进入T级模式,再进入1级模式,清除SMART表。S104:回到T级模式,清除G表;S105:回到T级模式,初始化译码表;S106:回到T级模式,清除NG-list。所述S106中具体为:查找NG-list表所在位置;查找NG-list表需调用函数:FdNGlist()将NG-list表前2个字节修改为0,保存并覆盖原始NG-list表地址。作为优选,所述S2的详细步骤如下:S201:扫描硬盘,使用二分查找算法,查找硬盘坏点则执行S202;S202:获取缓存信息,找到DefaultDiagRdBuf位置,判断DefaultDiagRdBuf的BytesPerBlk是否为1040,若是则执行S203;否则转到204;所述获取缓存信息需调用函数:S203:将S202获得的值除以8后执行S204;S204:记录获得的LBA数值大小;S205:进入2级模式,将扫描得到的LBA数值换算十六进制,使用2级模式下执行F指令,加入G表。S206:使用m指令对硬盘进行重建译码表。与现有技术相比本专利技术的优点在于:能准确快速的扫描硬盘内坏点,可修复512Kb的硬盘也可以修复4K技术的硬盘。还可以解决不识别硬盘的故障问题;修复成功率高,且修复速度快,效率高。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下举实施例,对本专利技术做进一步详细说明。一种修复希捷硬盘扇区前好后坏的方法,包括以下步骤:S1:硬盘在认盘状态下,清除NG-LIST;S2:按顺序扫描硬盘坏点,扫到一个坏点就将坏点加入G表,并重建;S3:判断是否完成整个硬盘的查找,若完毕则结束,否则转到S2。作为优选,所述S1的详细步骤如下:S101:判断硬盘参数状态是否就绪,若就绪则执行S102,若未就绪则执行S105;所述判断参数状态需调用函数:Boolisbusy=ChekDiskStateBusy();//检测硬盘状态If(isbusy==false)exit;//退出S102:判断是否可以访问硬盘的0号LBA,若可以则执行S105。否则执行103;S103:硬盘开电后,进入T级模式,再进入1级模式,清除SMART表。S104:回到T级模式,清除G表;S105:回到T级模式,初始化译码表;S106:回到T级模式,清除NG-list。所述S106中具体为:查找NG-list表所在位置;查找NG-list表需调用函数:FdNGlist()将NG-list表前2个字节修改为0,保存并覆盖原始NG-list表地址。作为优选,所述S2的详细步骤如下:S201:扫描硬盘,使用二分查找算法,查找硬盘坏点则执行S202;S202:获取缓存信息,找到DefaultDiagRdBuf位置,判断DefaultDiagRdBuf的BytesPerBlk是否为1040,若是则执行S203;否则转到204;所述获取缓存信息需调用函数:S203:将S202获得的值除以8后执行S204;S204:记录获得的LBA数值大小;S205:进入2级模式,将扫描得到的LBA数值换算十六进制,使用2级模式下执行F指令,加入G表。S206:使用m指令对硬盘进行重建译码表。上述所调用的函数方法具体如下:本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本专利技术的实施方法,应被理解为本专利技术的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本专利技术公开的这些技术启示做出各种不脱离本专利技术实质的其它各种具体变形和组合,这些变形和组合仍然在本专利技术的保护范围内。本文档来自技高网...

【技术保护点】
一种修复希捷硬盘扇区前好后坏的方法,包括以下步骤:S1:硬盘在认盘状态下,清除NG‑LIST;S2:按顺序扫描硬盘坏点,扫到一个坏点就将坏点加入G表,并重建;S3:判断是否完成整个硬盘的查找,若完毕则结束,否则转到S2。

【技术特征摘要】
1.一种修复希捷硬盘扇区前好后坏的方法,包括以下步骤:S1:硬盘在认盘状态下,清除NG-LIST;S2:按顺序扫描硬盘坏点,扫到一个坏点就将坏点加入G表,并重建;S3:判断是否完成整个硬盘的查找,若完毕则结束,否则转到S2。2.根据权利要求1的一种修复希捷硬盘扇区前好后坏的方法,其特征在于所述S1的详细步骤如下:S101:判断硬盘参数状态是否就绪,若就绪则执行S102,若未就绪则执行S105;S102:判断是否可以访问硬盘的0号LBA,若可以则执行S105。否则执行103;S103:硬盘开电后,进入T级模式,再进入1级模式,清除SMART表;S104:回到T级模式,清除G表;S105:回到T级模式,初始化译码表;S106:回到T级模式,清除NG-list。3.根据权利要求2的一种修...

【专利技术属性】
技术研发人员:梁效宁杨先珉董超
申请(专利权)人:四川效率源信息安全技术有限责任公司
类型:发明
国别省市:四川;51

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

1