ART信息的方法及双控系统进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0051]参见图1,本发明一实施例提供的定时更新磁盘SMART信息的方法,适用于双控系统,双控系统包括两个控制器、与控制器电性连接的显示界面以及若干个与控制器电性连接的磁盘,具体的,显示界面可以与两个控制器中的任一个电性连接,也可以与两个控制器均电性连接,具体方法包括以下步骤:
[0052]S200,两个控制器中的任一个定时获取并更新磁盘的磁盘SMART信息。
[0053]S400,将更新后的磁盘SMART信息发送到显示界面。
[0054]S600,显示界面显示更新后的磁盘SMART信息。
[0055]本发明实施例提供的定时更新磁盘SMART信息的方法,由双控系统中的一个控制器获取并更新磁盘的磁盘SMART信息,克服了传统的双控系统中的两个控制器重复获取并更新磁盘SMART信息带来的资源浪费,同时,显示界面将更新后的磁盘SMART信息显示给用户,用户能够及时的获得磁盘最新的磁盘SMART信息。其中,显示界面由保存在控制器中的FSD (File System Driver,文件系统驱动程序)驱动显示。
[0056]较优的,在其中一个实施例中,参见图2,两个控制器分别为主控制器和从控制器,主控制器与显示界面电性连接。
[0057]S200a,两个控制器中的从控制器定时获取并更新磁盘SMART信息,并通过远程过程调用将磁盘SMART信息同步至主控制器。
[0058]S400a,主控制器将更新后的磁盘SMART信息发送到显示界面。
[0059]在双控系统中,主控制器承载着更多的执行任务,将获取并更新磁盘SMART信息的任务交由双控系统中的从控制器执行,不仅克服了双控系统重复获取并更新磁盘SMART信息带来的系统资源浪费,而且有效的均衡了主控制器和从控制器之间的负载。显示界面与主控制器电性连接,从控制器先将获取并更新的磁盘SMART信息通过RPC(RemoteProcedure Call,远程过程调用)同步至主控制器,主控制器再将最新的磁盘SMART信息发送到显示界面。当然,显示界面也可与从控制器电性连接,从控制器获取最新的磁盘SMART信息之后,直接将磁盘SMART信息传送给显示界面,同时,也将磁盘SMART信息同步至主控制器,以使两个控制器中的信息一致。
[0060]作为一种可实施方式,参见图3,步骤S200包括如下步骤:
[0061]S210,两个控制器中的任一个获取并更新磁盘队列中第一磁盘的第一磁盘SMART
?目息O
[0062]S220,获取并更新第一磁盘SMART信息后,将第一磁盘移动到磁盘队列的队尾。
[0063]S410,将更新后的第一磁盘SMART信息发送到显示界面。
[0064]S610,显示界面显示更新后的第一磁盘SMART信息。
[0065]其中,磁盘队列由双控系统中所有的磁盘构成,第一磁盘位于磁盘队列的队首。
[0066]传统的双控系统一次更新所有磁盘的磁盘SMART信息,会导致任务超时,并影响磁盘阵列的性能,控制器每次只获取并更新一个磁盘的磁盘SMART信息,缩短了任务的执行时间,减轻了系统的负担,不仅不会影响磁盘阵列的性能,且提高了磁盘阵列的性能。具体的,为了让控制器在一定时间内能获取并更新磁盘阵列中每个磁盘的磁盘SMART信息,将所有的磁盘构成一个磁盘队列,控制器每次只获取位于队首的第一磁盘的第一磁盘SMART信息,并在获取更新第一磁盘SMART信息之后,将位于队首的第一磁盘移动至磁盘队列的队尾,磁盘队列中的下一个磁盘作为新的第一磁盘被控制器读取磁盘SMART信息,同时将第一磁盘的第一磁盘SMART信息发送给显示界面显示给用户,以此完成本次第一磁盘SMART信息的获取更新,等待下一次任务的到来。如此循环往复,不断的获取更新磁盘队列中第一磁盘的第一磁盘SMART信息。
[0067]较优的,在其中一个实施例中,两个控制器中的从控制器获取并更新第一磁盘的第一磁盘SMART信息,在缩短任务执行时间,减轻系统负担的基础上,还均衡了主控制器和从控制器的负载。
[0068]作为一种可实施方式,在每次获取并更新磁盘SMART信息之前,还包括步骤S100,判断双控系统中所有磁盘的繁忙状态,根据所有磁盘的繁忙状态决定控制器是否获取并更新磁盘的磁盘SMART信息。
[0069]具体的,作为一种可实施方式,步骤SlOO包括如下步骤:
[0070]S110,获取双控系统中所有磁盘的读写命令数量。
[0071]S120,判断读写命令数量是否大于预设固定阈值。
[0072]S121,若是,则双控系统处于繁忙状态,控制器不执行获取并更新磁盘SMART信息的步骤,且控制器等待下一个获取并更新磁盘SMART信息的指令。
[0073]S122,若否,则双控系统处于空闲状态,控制器执行获取并更新磁盘SMART信息的步骤。
[0074]在每次获取并更新磁盘SMART信息之前,先判断双控系统中所有磁盘的繁忙状态,若双控系统处于繁忙状态,此时获取并更新磁盘SMART信息,有可能影响磁盘性能,因此,跳过本次获取并更新磁盘SMART信息的任务,等待下次获取更新任务到来时再获取并更新磁盘的磁盘SMART信息,消除了对磁盘性能的影响。若双控系统处于空闲状态,获取并更新磁盘SMART信息不会对磁盘性能带来影响,直接执行本次任务。具体的,判断双控系统是否繁忙的标准由所有磁盘的读写命令数量和预设固定阈值决定,若所有磁盘的读写命令数量大于预设固定阈值,则确定双控系统处于繁忙状态,若所有磁盘的读写命令数量小于等于预设固定阈值,则确定双控系统处于空闲状态,其中,预设固定阈值根据相关的经验值设定。当然,上述只是判断双控系统是否繁忙的一个【具体实施方式】,本领域技术人员也可根据其他参数判定双控系统是否繁忙,其均属于本发明保护的范围。需要说明的是,定时获取并更新磁盘SMART信息的任务的执行由Linux crond提供的服务驱动,设置定时范围的应用接口提供给显示界面和命令行接口(CLI)使用。
[0075]需要说明的是,判断双控系统是否繁忙的标准是所有磁盘的读写命令数量与预设固定阈值的大小,而不是单个或部分磁盘的读写命令数量,是因为只有在所有磁盘都空闲时,磁盘的性能才不会受到影响,若是一个或部分磁盘处于空闲状态,而其他磁盘处于繁忙状态,则在获取并更新磁盘SMART信息时有可能影响正在读写的磁盘的性能。
[0076]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。
[0077]基于同一发明构思,本发明还提供了一种定时更新磁盘SMART信息的双控系统,由于此系统解决问题的原理与前述一种定时更新磁盘SMART信息的方法相似,因此该系统的实施可以参见前述方法的实施,重复之处不再赘述。
[0078]本发明一实施例提供的定时更新磁盘SMART信息的双控系统,参见图4,包括两个控制器,显示界面300和若干个与控制器电性连接的磁盘400,两个控制器中的任一个包括获取更新模块,且两个控制器中的任一个包括发送模块,显示模块300与设置有发送模块的控制器电性连接。获取更新模块,被配置以定时获取并更新磁盘的磁盘SMART信息。发送模块,被配置以将更新后的磁盘SMART信息发送到显示界面。显示界面,被配置以显示更新后的磁盘SMART信息。
[0079]本发明实施例提供的定时更新磁盘SMART信息的双控系统,由双控系统中的一个控制器获取并更新磁盘的磁盘SMART信息,有效克服了传统的双控系统中的两个控制器重复获取并更新磁盘SMART信息带来的资源浪费。
[0080]作为一种可实施方式,两个控制器分别为主控制器100和从控制器200,从控制器200包括获取更新模块220和同步模块240,主控制器100包