硬盘检测装置及方法

文档序号:7595318阅读:314来源:国知局
专利名称:硬盘检测装置及方法
技术领域
本发明涉及通信或电子领域的测试技术,尤指一种硬盘检测装置及方法。
背景技术
随着信息化社会的不断发展,硬盘在各行各业中的作用也变得越来越重要。比如在通信设备机柜插框中承载某种具体业务的业务单板,其上大量关键数据和软件的存储载体采用的都是硬盘,在电路交换机、软交换、可移动通信的全球系统(GSM,Global System for Mobile-Communications)、第三代移动通信系统(3G)、媒体网关等系统中用于话单存储、前后台维护系统、主控系统、配置数据存储等等也都采用硬盘。为了保证大量关键数据的不被遗失及以硬盘为存储载体的系统不崩溃就要求硬盘的极高的可靠性。然而硬盘毕竟是机电设备,其机械部件不可避免地会出现失效、耗损的情况,按行业统计数据,硬盘的故障率在1~3%左右,设计寿命为5年,其主要的失效或耗损的部件是马达和电机,如果工作超过限定的连续上电时间或读写占空比,硬盘的耗损会更快,同时硬盘在工作过程中,还不规则地出现磁头刮伤磁面,漂浮磁粉效应(一种因振动导致的飘浮磁粉累集引起的硬盘失效)导致的硬盘失效,因而如果能够及时获取硬盘的健康状况并报告网管,这样在硬盘故障来临前就能预知,从而可避免出现因硬盘损坏而导致系统崩溃或数据丢失的恶性事故,这是业界重要研究的问题和技术。
如图1所示,现有技术硬盘检测装置包括第二写参数单元2、发送检测命令单元3、读参数单元4、判断单元5和显示单元6,其中,第二写参数单元2,用于向硬盘1的高柱面寄存器和低柱面寄存器写入参数;
发送检测命令单元3,用于向硬盘1发送检测命令;读参数单元4,用于从硬盘1的高柱面寄存器和低柱面寄存器读出参数;判断单元5,用于判断根据读参数单元4从高柱面寄存器读出的参数是否是写入到高柱面寄存器的参数的高位与低位的对换,并且从低柱面寄存器读出的参数是否是写入到低柱面寄存器的参数的高位与低位的对换,如果是,表示硬盘1出现预故障,否则表示硬盘1正常;显示单元6,如果所述判断单元5的判断结果是硬盘出现预故障,则在显示界面上显示有预故障,否则不显示。
所述预故障,用于表示硬盘1存在潜在故障,即硬盘1即将发生故障。
现有技术利用了硬盘1的自管理分析报告技术(SMART,Self Monitoringand Analysis and Reporting Technology)的特性来实现硬盘1的预故障检测的。即向硬盘1的高柱面寄存器写入参数0xC2H、向硬盘1的低柱面寄存器写入参数0x4FH、向命令寄存器中写入参数0xB0H,硬盘1即进行自检测分析硬盘1的情况,如果硬盘1出现预故障,则向硬盘1的高柱面寄存器写入参数0x2CH及向硬盘1的低柱面寄存器写入参数0xF4H,故只要对硬盘1的高柱面寄存器和硬盘1的低柱面寄存器的参数进行分析判断,就能得出硬盘1是否出现预故障,即从高柱面寄存器读出的参数是写入到高柱面寄存器的参数的高位与低位的对换,并且从低柱面寄存器读出的参数是写入到低柱面寄存器的参数的高位与低位的对换,则表示硬盘1有预故障。
现有技术硬盘检测装置是在使用硬盘1的系统启动的时候对硬盘1进行检测的,如图1所示,在本例中,第一写参数单元2向硬盘1的高柱面寄存器写入参数0xC2H,向硬盘1的低柱面寄存器写入参数0x4FH,发送检测命令单元3向硬盘1发送检测命令,即向命令寄存器中写入参数0xB0H,对硬盘1进行检测,读参数单元4读出硬盘1的高柱面寄存器和低柱面寄存器的参数,判断单元5判断所述读参数单元4从高柱面寄存器读出的参数是否是到写入到高柱面寄存器的参数的高位与低位的对换0xC2H,并且从低柱面寄存器读出的参数是否是写入到低柱面寄存器的参数的高位与低位的对换0xF4H,如果判断单元5的判断结果是肯定的,表示硬盘1有预故障,在显示单元6上显示有预故障,否则不显示,表示硬盘1没有预故障。
综上所述,首先,通过现有技术只能够得知硬盘1是否有预故障,而不能得知是什么原因造成的,是上电时间超限了,刮伤次数太多了,还是机械部件寿命快到了等等不得而知,导致在处理问题时无的放矢,使得为处理故障而采用的改进措施没有针对性;其次,现有技术只是将硬盘1是否有预故障显示在显示界面上,例如在电信领域,电信机房一般是无人值班的,如果检测出有预故障,显示在显示界面上的有预故障信息无人知晓,也就无人处理,就可能导致硬盘1崩溃,业务中断;再者,现有技术只是在系统启动初始化的时候检测硬盘1的,如果系统没有被重新启动初始化就不会检测硬盘1,硬盘1在系统运行期间出现预故障就无法知晓。

发明内容
本发明要解决的问题是提供一种能够得知硬盘出现预故障的详细原因的硬盘检测装置及方法。
为了解决上述问题,本发明硬盘检测装置的技术方案一种硬盘检测装置,所述硬盘存有硬盘的指标参数的当前值及其标准值,包括用于获取硬盘的预故障信息的故障获取单元,所述故障获取单元进一步包括第一写参数单元、读指标参数单元和比较单元,其中,所述第一写参数单元,用于向硬盘的高柱面寄存器和低柱面寄存器写入参数、向硬盘的特性寄存器写入参数和向硬盘的命令寄存器写入参数;所述读指标参数单元,用于读出硬盘的指标参数的当前值;所述比较单元,用于读出硬盘的指标参数的标准值并将所述读指标参数单元读出的硬盘的指标参数的当前值与其标准值进行比较,以得出是否该指标参数出现预故障的预故障信息。
所述硬盘检测装置还包括发送单元,用于发送所述故障获取单元所获取到的预故障信息。
所述硬盘检测装置还包括定时单元,用于设定检测频率,控制所述故障获取单元以设定的检测频率间隔地检测硬盘。
所述发送单元发送的预故障信息的帧包括以下字段错误类别,用于标识硬盘预故障的类型;错误产生时间,用于表明预故障产生的时间;错误级别,用于表明预故障的严重程度;错误参数,用于表示硬盘的指标参数的值所述硬盘检测装置还包括用于检测硬盘是否有预故障的检测单元,所述检测单元进一步包括第二写参数单元、发送检测命令单元、读参数单元和判断单元,包括其中,所述第二写参数单元,用于向硬盘的高柱面寄存器和低柱面寄存器写入参数;所述发送检测命令单元,用于向硬盘发送检测命令;所述读参数单元,用于从硬盘的高柱面寄存器和低柱面寄存器读出参数;所述判断单元,用于判断所述读参数单元从高柱面寄存器读出的参数是否是写入到低柱面寄存器的参数,并且从低柱面寄存器读出的参数是否是写入到高柱面寄存器的参数,如果是,表示硬盘出现预故障,否则表示硬盘没有预故障;
如果所述判断单元的判断结果是硬盘出现预故障,则启动所述故障获取单元来获取硬盘的预故障信息。
一种硬盘检测方法,所述硬盘存有硬盘的指标参数的当前值及其标准值,包括用于获取硬盘的预故障信息的故障获取步骤,所述故障获取步骤近一步包括以下步骤第一写参数步骤,向硬盘的高柱面寄存器和低柱面寄存器写入参数、向硬盘的特性寄存器写入参数和向硬盘的命令寄存器写入参数;读指标参数步骤,读出硬盘的指标参数的当前值;比较步骤,读出硬盘的指标参数的标准值并将所述读指标参数单元读出的硬盘的指标参数的当前值与其标准值进行比较,以得出是否该指标参数出现预故障的预故障信息。
所述硬盘检测方法还包括发送步骤,发送在所述故障获取步骤中获取到的预故障信息。
所述硬盘检测方法还包括定时步骤,用于设定检测频率,控制所述故障获取步骤以设定的检测频率间隔地检测硬盘。
所述硬盘检测方法还包括用于检测硬盘是否有预故障的检测步骤,所述检测步骤进一步包括以下步骤第二写参数步骤,向硬盘的高柱面寄存器和低柱面寄存器写入参数;发送检测命令步骤,向硬盘发送检测命令;读参数步骤,从硬盘的高柱面寄存器和低柱面寄存器读出参数;判断步骤,判断所述读参数单元从高柱面寄存器读出的参数是否是写入到低柱面寄存器的参数,并且从低柱面寄存器读出的参数是否是写入到高柱面寄存器的参数,如果是,表示硬盘出现预故障,否则表示硬盘没有预故障;如果所述判断步骤的判断结果是硬盘出现预故障,则启动所述故障获取步骤来获取硬盘的预故障信息。
与现有技术相比,本发明硬盘检测装置及方法的有益效果首先,本发明硬盘检测装置及方法能够获取硬盘的预故障信息,这样就能够得知是什么原因导致硬盘出现了预故障,使得在处理问题时有的放矢,而且为处理故障而采用的改进措施有针对性;其次,本发明硬盘检测装置及方法能够将硬盘的预故障信息发送出去(网管等),而不是只显示在显示界面上,这样使网管等故障处理人员能够及时知道预故障的存在,及时处理,从而可避免硬盘崩溃、业务中断等现象的发生;再者,本发明硬盘检测装置及方法能够设定硬盘的检测频率,即规定在多长时间检测一次硬盘,而不仅仅是在使用硬盘的系统启动的时候才检测硬盘,这样当系统在运行期间硬盘出现预故障时,能够及时得知,及时处理。


图1是现有技术硬盘检测装置的结构图;图2是本发明硬盘检测装置的结构图;具体实施方式
如图2所示,本发明硬盘检测装置,所述硬盘1存有指标参数的当前值及其参考值,所述硬盘检测装置包括用于获取硬盘1的预故障信息的故障获取单元7,所述故障获取单元7进一步包括第一写参数单元71、读指标参数单元72和比较单元73,其中,所述第一写参数单元71,用于向硬盘1的高柱面寄存器和低柱面寄存器写入参数、向硬盘1的特性寄存器写入参数和向硬盘1的命令寄存器写入参数;所述读指标参数单元72,用于读出硬盘1的指标参数的当前值;
所述比较单元72,用于读出硬盘1的指标参数的标准值并将所述读指标参数单元读出的硬盘1的指标参数的当前值与其标准值进行比较,以得出是否该指标参数出现预故障的预故障信息。
进一步地,如图2所示,本发明硬盘检测装置还包括发送单元8,用于发送所述故障获取单元7所获取到的预故障信息,可以以帧的形式进行发送。
进一步地,如图2所示,本发明硬盘检测装置还包括定时单元,用于设定检测频率,控制所述故障获取单元7以一定的时间间隔检测硬盘1。
进一步地,如图2所示,本发明硬盘检测装置还包括用于检测硬盘是否有预故障的检测单元101,所述检测单元101进一步包括第二写参数单元2、发送检测命令单元3、读参数单元4和判断单元5,包括其中,所述第二写参数单元2,用于向硬盘1的高柱面寄存器和低柱面寄存器写入参数;所述发送检测命令单元3,用于向硬盘1发送检测命令;所述读参数单元4,用于从硬盘1的高柱面寄存器和低柱面寄存器读出参数;所述判断单元5,用于判断根据读参数单元4从高柱面寄存器读出的参数是否是写入到高柱面寄存器的参数的高位与低位的对换,并且从低柱面寄存器读出的参数是否是写入到低柱面寄存器的参数的高位与低位的对换,如果是,表示硬盘1出现预故障,否则表示硬盘1正常;如果所述判断单元5的判断结果是硬盘1出现预故障,则启动所述故障获取单元来获取硬盘1的预故障信息。
本发明硬盘检测装置利用了硬盘1的SMART特性,如图2所示,在本例中,所述故障获取单元7的第一写参数单元71向硬盘1的高柱面寄存器写入参数0xC2,向硬盘1的低柱面寄存器写入参数0x4F,向硬盘1的特性寄存器写入参数0xD1,向硬盘1的命令寄存器写入参数0xB0,读指标参数单元72把硬盘1的所有指标参数的当前值通过硬盘1的数据端口读出来,比较单元73从硬盘1中通过类似操作读出指标参数的标准值并将从硬盘1读出的指标参数的当前值与其标准值(硬盘1出厂时,厂家设定的值)进行比较,如果指标参数的当前值超过其标准值,说明硬盘1在该项性能上出现预故障,这样就可获得硬盘1的具体的预故障信息。本例中,硬盘1的上电时间总数的当前值是1万2小时,其标准值是1万小时,比较单元73对硬盘1的上电时间总数的当前值与其标准值比较,结果是当前值大于其标准值,表明硬盘1的预故障是由于上电时间过长引起的。
本例中的硬盘1的所述指标参数有数据读错误率(Raw Read Error Rate),如果数据读错误率较高说明硬盘1即将故障;吞吐能力(Throughput Performance),吞吐能力低说明硬盘1潜在故障;盘片启动时间(Spin Up Time),如果盘片启动较慢则说明电机马达或结构件耗损,硬盘1即将损坏;启动停止次数(Start/Stop Count),如果启动停止次数超过其标准值说明硬盘1部件耐磨程度达到了上限;扇区重定位次数(Reallocated Sector Count),用于说明硬盘1定位的准确程度;寻道错误率(Seek Error Rate),如果寻道错误率较高说明硬盘1即将故障;寻道时间性能(Seek Time Performance),寻道时间如果超过最大寻道时间,说明硬盘1潜在故障;上电时间总数(Power-On Hours Count),上电总时间如果超过硬盘1所能承受的上限值,说明硬盘1寿命到了,有潜在故障;旋转重试次数(Spin Retry Count),表示硬盘1进行旋转重试的次数;设备电源上下电次数(Device Power Cycle Count),表示设备开关电源的次数;CRC校验错误次数(CRC Error Count),表示硬盘1读写出错率;碟片移动(Disk Shift),表示碟片松动了,与原来的位置相比有偏移;G传感器错误率(G-Sense Error Rate),表示G传感器的出错率;负载时间(Loaded Hours),表示硬盘1的工作时间;载入重试次数(Load Retry Count),表示硬盘1读写不成功而重复进行的次数;加载摩擦(Load Friction),用来反映结构件健康参数;加载次数(Load Cycle Count),表示硬盘1读写次数;载入时间(Load-in Time),表示硬盘1读写需要的时间;断电缩回次数(Power-off Retract Count),反映磁头臂健康状态。
进一步地,如图2所示,发送单元8将硬盘1的预故障信息以帧格式的形式发送给故障处理人员(如网管等),发送单元8可通过网络、直线等各种方式来发送预故障信息。
所述帧格式的预故障信息包括以下字段告警编号(Alarmld),用于表示此预故障信息的编号;错误类别(AlarmType),用于标识硬盘1预故障的类型;错误产生时间,用于表明预故障产生的时间;错误级别(Level),用于表明预故障的严重程度;错误参数(Paras[PARAM_LEN]),用于表示硬盘1的指标参数的值;功能系统号(Functionld),用于表示是哪一个域出错,如硬件或者软件等;顺序号(NumlnLevel),用于表示同一错误级别的顺序号;是哪一个域出现问题,例如硬件、软件等;网管子系统号(SubSystemld),用于表示网管子系统的编号;
其中所述错误产生时间进一步包括以下字段年(Year),用于表示产生此预故障信息的年份;月(Month),用于表示产生此预故障信息的月份;日(Day),用于表示产生此预故障信息的日;时(Hour),用于表示产生此预故障信息的小时;分(Minute),用于表示产生此预故障信息的分钟;秒(Second),用于表示产生此预故障信息的秒。
通过上述帧格式的预故障信息可以很清楚地了解硬盘1的具体将出现什么故障,可以有的放矢地来排除故障,维持系统的正常运行。
进一步地,如图2所示,本发明硬盘检测装置的定时单元9用于设定检测频率,以一定时间间隔启动所述故障检测单元7的第一写参数单元,即对硬盘1进行检测,检测频率可根据实际应用情况而设置,如10分钟/次、1小时/次、12小时/次等。
进一步地,如图2所示,本发明硬盘检测装置的用于判断硬盘1是否出现预故障的检测单元101,当检测单元101判断发现硬盘1出现预故障时,则启动故障获取单元7来获取硬盘1的具体的预故障信息。
在本例中,首先检测单元101的第二写参数单元2向硬盘1的高柱面寄存器写入参数0xC2,向硬盘1的低柱面寄存器写入参数0x4F,发送检测命令单元3向硬盘1发送检测命令,即向命令寄存器中写入参数0xB0,对硬盘1进行检测,读参数单元4读出硬盘1的高柱面寄存器和硬盘1的低柱面寄存器的参数,判断单元5判断所述读参数单元4从高柱面寄存器读出的参数是否是写入到低柱面寄存器的参数0x4F,并且从低柱面寄存器读出的参数是否是写入到高柱面寄存器的参数0xB0,如果判断结果是肯定的,表示硬盘1有预故障,否则表示硬盘1没有预故障。
相应地,本发明硬盘检测方法,所述硬盘1存有硬盘1的指标参数的当前值及其标准值,所述硬盘检测方法包括用于获取硬盘1的预故障信息的故障获取步骤,所述故障获取步骤近一步包括以下步骤第一写参数步骤,向硬盘1的高柱面寄存器和低柱面寄存器写入参数、向硬盘1的特性寄存器和命令寄存器写入参数;读指标参数步骤,读出硬盘1的指标参数的当前值;比较步骤,读出硬盘1的指标参数的标准值并将所述读指标参数步骤读出的硬盘1的指标参数的当前值与其标准值进行比较,以得出是否该指标参数出现故障的预故障信息。
进一步地,本发明硬盘检测方法,还包括发送步骤,发送所述故障获取步骤中获取到的预故障信息。
进一步地,本发明硬盘检测方法,还包括定时步骤,用于设定检测频率,控制所述故障获取步骤以一定的时间间隔执行来检测硬盘1。
进一步地,本发明硬盘检测方法,还包括用于检测硬盘1是否有预故障的检测步骤,所述检测步骤进一步包括以下步骤第二写参数步骤,向硬盘1的高柱面寄存器和低柱面寄存器写入参数;发送检测命令步骤,向硬盘1发送检测命令;读参数步骤,从硬盘1的高柱面寄存器和低柱面寄存器读出参数;判断步骤,判断所述读参数单元从高柱面寄存器读出的参数是否是写入到低柱面寄存器的参数,并且从低柱面寄存器读出的参数是否是写入到高柱面寄存器的参数,如果是,表示硬盘1出现预故障,否则表示硬盘1没有预故障;如果所述判断步骤的判断结果是硬盘1出现了预故障,则启动所述故障获取步骤来获取硬盘1的预故障信息。
尽管上面对本发明硬盘检测装置及方法的技术方案进行了详细地描述,但本领域的普通技术人员仍然可以在不脱离上述请求保护的本发明范围的情况下,做出各种改变、替换和更改。
权利要求
1.一种硬盘检测装置,所述硬盘存有硬盘的指标参数的当前值及其标准值,其特征在于,包括用于获取硬盘的预故障信息的故障获取单元,所述故障获取单元进一步包括第一写参数单元、读指标参数单元和比较单元,其中,所述第一写参数单元,用于向硬盘的高柱面寄存器和低柱面寄存器写入参数、向硬盘的特性寄存器写入参数和向硬盘的命令寄存器写入参数;所述读指标参数单元,用于读出硬盘的指标参数的当前值;所述比较单元,用于读出硬盘的指标参数的标准值并将所述读指标参数单元读出的硬盘的指标参数的当前值与其标准值进行比较,以得出是否该指标参数出现预故障的预故障信息。
2.如权利要求1所述的硬盘检测装置,其特征在于,所述硬盘检测装置还包括发送单元,用于发送所述故障获取单元所获取到的预故障信息。
3.如权利要求1或2所述的硬盘检测装置,其特征在于,所述硬盘检测装置还包括定时单元,用于设定检测频率,控制所述故障获取单元以设定的检测频率间隔地检测硬盘。
4.权利要求2所述的硬盘检测装置,其特征在于,所述发送单元发送的预故障信息的帧包括以下字段错误类别,用于标识硬盘预故障的类型;错误产生时间,用于表明预故障产生的时间;错误级别,用于表明预故障的严重程度;错误参数,用于表示硬盘的指标参数的值
5.如权利要求1所述的硬盘检测装置,其特征在于,所述硬盘检测装置还包括用于检测硬盘是否有预故障的检测单元,所述检测单元进一步包括第二写参数单元、发送检测命令单元、读参数单元和判断单元,包括其中,所述第二写参数单元,用于向硬盘的高柱面寄存器和低柱面寄存器写入参数;所述发送检测命令单元,用于向硬盘发送检测命令;所述读参数单元,用于从硬盘的高柱面寄存器和低柱面寄存器读出参数;所述判断单元,用于判断所述读参数单元从高柱面寄存器读出的参数是否是写入到低柱面寄存器的参数,并且从低柱面寄存器读出的参数是否是写入到高柱面寄存器的参数,如果是,表示硬盘出现预故障,否则表示硬盘没有预故障;如果所述判断单元的判断结果是硬盘出现预故障,则启动所述故障获取单元来获取硬盘的预故障信息。
6.一种硬盘检测方法,所述硬盘存有硬盘的指标参数的当前值及其标准值,包括用于获取硬盘的预故障信息的故障获取步骤,所述故障获取步骤近一步包括以下步骤第一写参数步骤,向硬盘的高柱面寄存器和低柱面寄存器写入参数、向硬盘的特性寄存器写入参数和向硬盘的命令寄存器写入参数;;读指标参数步骤,读出硬盘的指标参数的当前值;比较步骤,读出硬盘的指标参数的标准值并将所述读指标参数单元读出的硬盘的指标参数的当前值与其标准值进行比较,以得出是否该指标参数出现预故障的预故障信息。
7.如权利要求6所述的硬盘检测方法,其特征在于,所述硬盘检测方法还包括发送步骤,发送在所述故障获取步骤中获取到的预故障信息。
8.如权利要求6或者7所述的硬盘检测方法,其特征在于,所述硬盘检测方法还包括定时步骤,用于设定检测频率,控制所述故障获取步骤以设定的检测频率间隔地检测硬盘。
9.如权利要求6所述的硬盘检测方法,其特征在于,所述硬盘检测方法还包括用于检测硬盘是否有预故障的检测步骤,所述检测步骤进一步包括以下步骤第二写参数步骤,向硬盘的高柱面寄存器和低柱面寄存器写入参数;发送检测命令步骤,向硬盘发送检测命令;读参数步骤,从硬盘的高柱面寄存器和低柱面寄存器读出参数;判断步骤,判断所述读参数单元从高柱面寄存器读出的参数是否是写入到低柱面寄存器的参数,并且从低柱面寄存器读出的参数是否是写入到高柱面寄存器的参数,如果是,表示硬盘出现预故障,否则表示硬盘没有预故障;如果所述判断步骤的判断结果是硬盘出现预故障,则启动所述故障获取步骤来获取硬盘的预故障信息。
全文摘要
本发明公开了一种硬盘检测装置及方法,该硬盘检测装置包括用于获取硬盘的预故障信息的故障获取单元,所述故障获取单元进一步包括第一写参数单元、读指标参数单元和比较单元,其中,所述第一写参数单元,用于向硬盘的高柱面寄存器、低柱面寄存器、特性寄存器和命令寄存器写入参数;所述读指标参数单元,用于读出硬盘的指标参数的当前值;所述比较单元,用于比较所述读指标参数单元读出来的硬盘的指标参数的当前值与其标准值,以得出是否该指标参数出现故障的预故障信息。相应地硬盘检测方法包括故障获取步骤,所述故障获取步骤进一步包括第一写参数步骤,读指标参数步骤和比较步骤。本发明硬盘检测装置及方法能够获取硬盘出现预故障的详细信息。
文档编号H04L12/26GK1716428SQ200410062329
公开日2006年1月4日 申请日期2004年7月1日 优先权日2004年7月1日
发明者周发升, 魏刚, 郭小金 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1