一种存储设备的控制方法和装置与流程

文档序号:20874438发布日期:2020-05-26 16:17阅读:124来源:国知局
一种存储设备的控制方法和装置与流程

本发明涉及存储设备技术领域,特别是涉及一种存储设备的控制方法和一种存储设备的控制装置。



背景技术:

存储设备(storagedevice)是用于储存信息的设备。存储设备一般包括三个组成部分:接口、控制器(controller)和存储媒体。

有些具有高可靠性要求的存储设备,为了防止由于接口和控制器的故障而造成存储设备失效,会采用多控制器结构。

参照图1为现有的一种多控制器结构的存储设备的结构框图。这种设备中,至少有两个接口、两个控制器。每一个接口和控制器都是独立工作的,都能够和主机进行数据传输。通常情况下,只有一组接口和控制器处于工作状态(working),而其他组处于等待状态(standby)。如果工作状态的接口和控制器发生故障,存储设备会通过一定的机制发现这种故障,自动切换到等待状态的接口和控制器上,保证存储设备不间断的正常工作。

但是,这种方案并没有考虑到负载和功耗的要求,无论是哪一组接口和控制器处于运行状态,存储设备的功耗是不变的。



技术实现要素:

鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种存储设备的控制方法和一种存储设备的控制装置。

为了解决上述问题,本发明实施例公开了一种存储设备的控制方法,其中,所述存储设备包括:至少两个接口,至少两个不同体系结构的控制器,以及存储媒体,其中,所述至少两个接口与所述控制器之间存在一对一连接关系,所述至少两个不同体系结构的控制器均连接所述存储媒体,所述方法包括:

获取处于工作状态的控制器的计算能力负载信息;

采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否过剩;

若所述处于工作状态的控制器的计算能力过剩,则从处于等待状态的控制器中确定第一目标控制器,所述第一目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态。

优选的,还包括:

采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否不足;

若所述处于工作状态的控制器的计算能力不足,则从所述处于等待状态的控制器中确定第二目标控制器,所述第二目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第二目标控制器从等待状态切换到工作状态。

优选的,所述判断所述处于工作状态的控制器的计算能力是否过剩的步骤包括:

采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力过剩。

优选的,所述存储设备还包括:与所述至少两个不同体系结构的控制器通信的监测模块;所述将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态的步骤包括:

通过所述监测模块判断所述第一目标控制器是否能正常运作;

若所述第一目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第一目标控制器从等待状态切换到工作状态。

优选的,所述将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态的步骤包括

通过所述至少两个控制器相互之间进行通信;

根据通信结果,判断所述第一目标控制器是否能正常运作;

若所述第一目标控制器能正常运作,则通过所述第一目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第一目标控制器将自身从等待状态切换到工作状态。

优选的,所述判断所述处于工作状态控制器的计算能力是否不足的步骤包括:

采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力不足。

优选的,所述将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第二目标控制器从等待状态切换到工作状态的步骤包括:

通过所述监测模块判断所述第二目标控制器是否能正常运作;

若所述第二目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第二目标控制器从等待状态切换到工作状态。

优选的,将所述处于工作状态的控制器从工作状态切换到等待状态,并所述将所述第二目标控制器从等待状态切换到工作状态的步骤包括:

通过所述至少两个控制器相互之间进行通信;

根据通信结果,判断所述第二目标控制器是否能正常运作;

若所述第二目标控制器能正常运作,则通过所述第二目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第二目标控制器将自身从等待状态切换到工作状态。

本发明实施例还公开了一种存储设备的控制装置,其中,所述存储设备包括:至少两个接口,至少两个不同体系结构的控制器,以及存储媒体,其中,所述至少两个接口与所述控制器之间存在一对一连接关系,所述至少两个不同体系结构的控制器均连接所述存储媒体,所述装置包括:

负载信息获取模块,用于获取处于工作状态的控制器的计算能力负载信息;

第一计算能力判断模块,用于采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否过剩;

第一目标控制器确定模块,用于若所述处于工作状态的控制器的计算能力过剩,则从处于等待状态的控制器中确定第一目标控制器,所述第一目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

第一切换模块,用于将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态。

优选的,所述的装置还可以包括:

第二计算能力判断模块,用于采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否不足;

第二目标控制器确定模块,用于若所述处于工作状态的控制器的计算能力不足,则从所述处于等待状态的控制器中确定第二目标控制器,所述第二目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

第二切换模块,用于将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第二目标控制器从等待状态切换到工作状态。

优选的,所述第一计算能力判断模块可以包括:

第一计算能力判断子模块,用于采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力过剩。

优选的,所述存储设备还可以包括:与所述至少两个不同体系结构的控制器通信的监测模块;所述第一切换模块可以包括:

第一运作判断子模块,用于通过所述监测模块判断所述第一目标控制器是否能正常运作;

第一切换子模块,用于若所述第一目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第一目标控制器从等待状态切换到工作状态。

优选的,所述第一切换模块可以包括:

第一通信子模块,用于通过所述至少两个控制器相互之间进行通信;

第二运作判断子模块,用于根据通信结果,判断所述第一目标控制器是否能正常运作;

第二切换子模块,用于若所述第一目标控制器能正常运作,则通过所述第一目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第一目标控制器将自身从等待状态切换到工作状态。

优选的,所述第二计算能力判断模块可以包括:

第二计算能力判断子模块,用于采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力不足。

优选的,所述第二切换模块可以包括:

第三运作判断子模块,用于通过所述监测模块判断所述第二目标控制器是否能正常运作;

第三切换子模块,用于若所述第二目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第二目标控制器从等待状态切换到工作状态。

优选的,所述第二切换模块可以包括:

第二通信子模块,用于通过所述至少两个控制器相互之间进行通信;

第四运作判断子模块,用于根据通信结果,判断所述第二目标控制器是否能正常运作;

第四切换子模块,用于若所述第二目标控制器能正常运作,则通过所述第二目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第二目标控制器将自身从等待状态切换到工作状态。

本发明实施例还公开了一种装置,其特征在于,包括:

一个或多个处理器;和

其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上所述的一个或多个的方法。

本发明实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。

本发明实施例包括以下优点:

在本发明实施例中,可以根据工作控制器当前的计算能力负载信息,确定工作控制器是否计算能力过剩。在计算能力过剩时,将处于工作状态的控制器切换为等待状态,且将最大计算能力信息满足计算能力负载信息并且功耗最低的处于等待状态的控制器切换为工作状态,可以使得存储设备的平均功耗是在满足资源使用情况下的最低功耗值。

附图说明

图1是现有的一种多控制器结构的存储设备的结构框图;

图2是本发明的一种存储设备的控制方法实施例一的步骤流程图;

图3是本发明的一种存储设备的控制方法实施例二的步骤流程图;

图4是本发明的一种存储设备的控制装置实施例的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

存储设备包括接口、控制器和存储媒体。

接口是存储设备和主机之间进行连接的物理链路,标准的格式有usb(通用串行总线,universalserialbus)、sata(串行高级技术附件,serialadvancedtechnologyattachment)、scsi(小型计算机系统接口,smallcomputersysteminterface)、fc(光纤通道,fiberchannel)、iscsi(互联网小型计算机系统接口,internetsmallcomputersysteminterface)等。

控制器用于实现对存储媒体的管理,并负责存储媒体和主机之间的数据通讯。控制器在形式上一般是一个电路板,有些复杂的控制器在电路板上还会运行一个软件。更高端的控制器本身实际上是一个小型的计算机系统,包括单独的cpu和内存,运行某种特定的操作系统。

存储媒体用于存储数据内容。常用的存储媒体类型有磁盘、磁带、光盘、半导体盘(flash)等。

本发明实施例所描述的存储设备可以与服务器配合使用,用于存储服务器中的数据;示例性的,本发明实施例所描述的存储设备可以为nas(网络附属存储,networkattachedstorage)存储设备,也可以为通过光纤接口连接主机的存储设备。

参照图2,示出了本发明的一种存储设备的控制方法实施例一的步骤流程图,其中,所述存储设备包括:至少两个接口,至少两个不同体系结构的控制器,以及存储媒体,其中,所述至少两个接口与所述控制器之间存在一对一连接关系,即每一个接口均连接自身对应的一个控制器,如存储设备包含接口1和接口2、控制器1和控制器2,其中,接口1连接控制器1,接口2连接控制器2;所述至少两个不同体系结构的控制器均连接所述存储媒体,所述方法具体可以包括如下步骤:

步骤101,获取处于工作状态的控制器的计算能力负载信息;

在本发明实施例中,存储设备至少包括两个可以与主机连接的接口,至少两个不同体系结构的控制器,每个控制器都通过一对应的接口与主机连接。

本发明实施例的控制器可以是一个独立的计算机系统,有cpu、内存、操作系统。

控制器的体系结构(systemarchitecture)是指控制器所采用的cpu、内存和操作系统的类型的组合。选用不同的体系结构可以实现相同的功能,但是具有不同的计算能力和功耗。

参照表1所示为一种不同体系结构的控制器的信息列表。

使用上表中的任何一种体系结构的控制器,都能够实现相同的功能。存储设备可以在多个控制器中,将任何一种体系结构的控制器设为工作状态,并将设为工作状态的控制器作为工作控制器,将其他控制器设为等待状态,即将其他控制器作为等待控制器。

控制器的计算能力可以包括四个方面的数据:进程数量(processnumber)、内存占用量(memory)、文件访问速率(filerate)、网络速率(networkrate)。这四种数据之间是互相独立的。一般来说,最大计算能力越强,这四个数据的值越大,相应的功耗也越大。

参照表2为一种计算能力的信息列表。

在工作控制器运行时,主机通过工作控制器访问存储媒体。计算能力负载信息表示了工作控制器,在运行时刻所使用的计算能力。

具体的,可以通过实时监测的方式得到工作控制器的计算能力负载信息。

步骤102,采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否过剩;

具体的,可以采用预置的工作控制器的最大计算能力信息和工作控制器的当前的计算能力负载信息,判断工作控制器的计算能力是否过剩。

若计算能力负载信息中的各项数据都小于最大计算能力信息的各项数据,则表示计算能力过剩。

例如,可以依次将计算能力负载信息中的进程数量、内存占用量、文件访问速率、网络速率,与最大计算能力信息中的进程数量、内存占用量、文件访问速率、网络速率进行比较;若计算能力负载信息中的四项数据都小于最大计算能力信息中的四项数据,则表示计算能力过剩。

当然,上述判断控制器的计算能力是否过剩的方式仅为示例,本领域技术人员还可以采用其他方式判断控制器的计算能力是否过剩,本发明实施例在此不做限定。

步骤103,若所述处于工作状态的控制器的计算能力过剩,则从处于等待状态的控制器中确定第一目标控制器,所述第一目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

在当前工作控制器的计算能力过剩时,可以选用最大计算能力信息满足计算能力负载信息,并且功耗最低的等待控制器作为第一目标控制器。其中,第一目标控制器的功耗小于上述处于工作状态的控制器的功耗。

步骤104,将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态。

将原来的工作控制器从工作状态切换到等待状态,同时将第一目标控制器从等待状态切换到工作状态。

在本发明实施例中,可以根据工作控制器当前的计算能力负载信息,确定工作控制器是否计算能力过剩。在计算能力过剩时,将最大计算能力信息满足计算能力负载信息并且功耗最低的等待控制器切换为工作状态,可以使得存储设备的平均功耗是在满足资源使用情况下的最低功耗值。

参照图3,示出了本发明的一种存储设备的控制方法实施例二的步骤流程图,其中,所述存储设备包括:至少两个接口,至少两个不同体系结构的控制器,以及存储媒体,其中,所述至少两个接口与所述控制器之间存在一对一连接关系,所述至少两个不同体系结构的控制器均连接所述存储媒体,所述方法具体可以包括如下步骤:

步骤201,获取处于工作状态的控制器的计算能力负载信息;

步骤202,采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否过剩;

在本发明实施例中,所述步骤202可以包括:

采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力过剩。

为了防止控制器切换过于频繁,会设定一定的保护时间段。如果工作控制器在保护时间段内,持续的计算能力过剩,则执行切换。如果只是偶尔计算能力过剩,则不切换。

在实际中,一般切换频率不会高于一分钟。也就是说,如果一个控制器连续工作超过一分钟,而且持续性能过剩,则执行切换。

步骤203,若所述处于工作状态的控制器的计算能力过剩,则从处于等待状态的控制器中确定第一目标控制器,所述第一目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

在本发明实施例中,所述步骤203可以包括如下子步骤:

子步骤s11,获取预置的各个所述处于等待状态的控制器的最大计算能力信息和功耗;

具体的,在存储设备中,可以有一块独立的存储区域(一般是硬盘),统一保存各个控制器的最大计算能力信息和功耗。

子步骤s12,将最大计算能力信息满足所述计算能力负载信息,且功耗最小的处于等待状态的控制器确定为第一目标控制器。

可以先选出最大计算能力信息满足计算能力负载信息的等待控制器,然后在选出来的等待控制器中确定功耗最小的等待控制器为第一目标控制器。

步骤204,将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态;

在实际中,存储设备可以包括集中式存储设备和分布式存储设备两种类型。不同类型的存储设备,其针对控制器的切换方式是不一样的。

在本发明实施例的一种示例中,存储设备为集中式存储设备,存储设备还可以包括:与所述至少两个不同体系结构的控制器通信的监测模块;

所述步骤204可以包括如下子步骤:

子步骤s21,通过所述监测模块判断所述第一目标控制器是否能正常运作;

在集中式存储设备中,设置有一个专门的监测模块,监测模块独立于所有控制器。监测模块可以和控制器通信,由监测模块向控制器定时发送状态查询命令,如果控制器工作正常(控制器能正常运作)则返回应答消息。如果返回消息不正常或者在规定时间内不返回任何消息,则可视为控制器发生故障。

子步骤s22,若所述第一目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第一目标控制器从等待状态切换到工作状态。

若第一目标控制器能正常运作,则由监测模块负责进行控制器之间的切换,即监测模块控制原来的工作控制器从工作状态切换到等待状态,并且监测模块控制第一目标控制器从等待状态切换到工作状态。

在本发明实施例的另一种示例中,存储设备为分布式存储设备,所述步骤204可以包括如下子步骤:

子步骤s31,通过所述至少两个控制器相互之间进行通信;

子步骤s32,根据通信结果,判断所述第一目标控制器是否能正常运作;

子步骤s33,若所述第一目标控制器能正常运作,则通过所述第一目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第一目标控制器将自身从等待状态切换到工作状态。

分布式存储设备上没有专门的监测模块,而是由所有控制器之间进行消息通信,根据控制器两两之间的状态查询命令来发送消息和应答消息。之后再通过各个控制器之间的群体仲裁算法,确定出每一个控制器的状态是正常还是发生故障。

如果第一目标控制器能正常运作,则由第一目标控制器自身负责切换。第一目标控制器控制原来的工作控制器从工作状态切换到等待状态,并且第一目标控制器控制自身从等待状态切换到工作状态。

本发明实施例中,将处于工作状态的控制器作为工作控制器,将处于等待状态的控制器作为等待控制器。

步骤205,采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否不足;

具体的,可以采用预置的工作控制器的最大计算能力信息和工作控制器的当前的计算能力负载信息进行比较,判断工作控制器的计算能力是否不足。

若计算能力负载信息中的至少一项数据等于最大计算能力信息中的对应项的数据,则表示计算能力不足。

例如,可以依次将计算能力负载信息中的进程数量、内存占用量、文件访问速率、网络速率,与最大计算能力信息中的进程数量、内存占用量、文件访问速率、网络速率进行比较;若计算能力负载信息中的某一项数据等于最大计算能力信息中对应项的数据,则表示计算能力不足。

当然,上述判断控制器的计算能力是否不足的方式仅为示例,本领域技术人员还可以采用其他方式判断控制器的计算能力是否不足,本发明实施例在此不做限定。

如果工作控制器的计算能力不足,则需要切换到最大计算能力满足计算能力负载信息,且功耗最低的控制器。

在本发明实施例中,所述步骤205可以包括:

采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力不足。

为了防止控制器切换过于频繁,会设定一定的保护时间段。如果工作控制器在保护时间段内,持续的计算能力不足,则执行切换。如果只是偶尔计算能力不足,则不切换。

步骤206,若所述处于工作状态的控制器的计算能力不足,则从所述处于等待状态的控制器中确定第二目标控制器,所述第二目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

在本发明实施例中,所述步骤206可以包括如下子步骤:

子步骤s41,获取预置的各个所述处于等待状态的控制器的最大计算能力信息和功耗;

子步骤s42,将最大计算能力信息满足所述计算能力负载信息,且功耗最小的处于等待状态的控制器确定为第二目标控制器。

可以先选出最大计算能力信息满足计算能力负载信息的等待控制器,然后在选出来的等待控制器中确定功耗最小的等待控制器为第二目标控制器。

步骤207,将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第二目标控制器从等待状态切换到工作状态。

在本发明实施例的一种示例中,存储设备为集中式存储设备,所述步骤207可以包括如下子步骤:

子步骤s51,通过所述监测模块判断所述第二目标控制器是否能正常运作;

子步骤s52,若所述第二目标控制器能正常运作,则通过所述监测模块控制所述第二目标控制器从等待状态切换到工作状态,并且控制所述处于工作状态的控制器从工作状态切换到等待状态。

若第二目标控制器能正常运作,则由监测模块负责进行切换,监测模块控制第二目标控制器从等待状态切换到工作状态,并且监测模块控制原来的工作控制器从工作状态切换到等待状态。

在本发明实施例的另一种示例中,存储设备为分布式存储设备,所述步骤207可以包括如下子步骤:

子步骤61,通过所述至少两个控制器相互之间进行通信;

子步骤62,根据通信结果,判断所述第二目标控制器是否能正常运作;

子步骤63,若所述第二目标控制器能正常运作,则通过所述第二目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第二目标控制器将自身从等待状态切换到工作状态。

如果第二目标控制器能正常运作,则由第二目标控制器自身负责切换。第二目标控制器控制原来的工作控制器从工作状态切换到等待状态,并且第二目标控制器控制自身从等待状态切换到工作状态。

在本发明实施例中,可以根据工作控制器当前的计算能力负载信息,确定工作控制器是否计算能力过剩。在计算能力过剩时,将最大计算能力信息满足计算能力负载信息并且功耗最低的等待控制器切换为工作状态,可以使得存储设备的平均功耗是在满足资源使用情况下的最低功耗值。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

参照图4,示出了本发明的一种存储设备的控制装置实施例的结构框图,其中,所述存储设备包括:至少两个接口、存储媒体和至少两个不同体系结构的控制器,其中,所述至少两个接口与所述控制器之间存在一对一连接关系,所述至少两个不同体系结构的控制器均连接所述存储媒体,所述装置具体可以包括如下模块:

负载信息获取模块301,用于获取处于工作状态的控制器的计算能力负载信息;

第一计算能力判断模块302,用于采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否过剩;

第一目标控制器确定模块303,用于若所述处于工作状态的控制器的计算能力过剩,则从处于等待状态的控制器中确定第一目标控制器,所述第一目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

第一切换模块304,用于将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第一目标控制器从等待状态切换到工作状态。

在本发明实施例中,所述的装置还可以包括:

第二计算能力判断模块,用于采用所述计算能力负载信息,判断所述处于工作状态的控制器的计算能力是否不足;

第二目标控制器确定模块,用于若所述处于工作状态的控制器的计算能力不足,则从所述处于等待状态的控制器中确定第二目标控制器,所述第二目标控制器为最大计算能力信息满足所述计算能力负载信息,且功耗最低的处于等待状态的控制器;

第二切换模块,用于将所述处于工作状态的控制器从工作状态切换到等待状态,并将所述第二目标控制器从等待状态切换到工作状态。

在本发明实施例中,所述第一计算能力判断模块302可以包括:

第一计算能力判断子模块,用于采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力过剩。

在本发明实施例中,所述第一目标控制器确定模块303可以包括:

第一控制器信息获取子模块,用于获取预置的各个所述处于等待状态的控制器的最大计算能力信息和功耗;

第一目标控制器确定子模块,用于将最大计算能力信息满足所述计算能力负载信息,且功耗最小的处于等待状态的控制器确定为第一目标控制器。

在本发明实施例的一种示例中,所述存储设备还可以包括:与所述至少两个不同体系结构的控制器通信的监测模块;所述第一切换模块304可以包括:

第一运作判断子模块,用于通过所述监测模块判断所述第一目标控制器是否能正常运作;

第一切换子模块,用于若所述第一目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第一目标控制器从等待状态切换到工作状态。

在本发明实施例的另一种示例中,所述第一切换模块304可以包括:

第一通信子模块,用于通过所述至少两个控制器相互之间进行通信;

第二运作判断子模块,用于根据通信结果,判断所述第一目标控制器是否能正常运作;

第二切换子模块,用于若所述第一目标控制器能正常运作,则通过所述第一目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第一目标控制器将自身从等待状态切换到工作状态。

在本发明实施例中,所述第二计算能力判断模块可以包括:

第二计算能力判断子模块,用于采用预置的所述处于工作状态的控制器的最大计算能力信息和所述处于工作状态的控制器的计算能力负载信息,判断所述处于工作状态的控制器在连续的预设时间段内是否计算能力不足。

在本发明实施例中,所述第二目标控制器确定模块包括:

第二控制器信息获取子模块,用于获取预置的各个所述处于等待状态的控制器的最大计算能力信息和功耗;

第二目标控制器确定子模块,用于将最大计算能力信息满足所述计算能力负载信息,且功耗最小的处于等待状态的控制器确定为第二目标控制器。

在本发明实施例的一种示例中,所述第二切换模块可以包括:

第三运作判断子模块,用于通过所述监测模块判断所述第二目标控制器是否能正常运作;

第三切换子模块,用于若所述第二目标控制器能正常运作,则通过所述监测模块控制所述处于工作状态的控制器从工作状态切换到等待状态,并且控制所述第二目标控制器从等待状态切换到工作状态。

在本发明实施例的另一种示例中,所述第二切换模块可以包括:

第二通信子模块,用于通过所述至少两个控制器相互之间进行通信;

第四运作判断子模块,用于根据通信结果,判断所述第二目标控制器是否能正常运作;

第四切换子模块,用于若所述第二目标控制器能正常运作,则通过所述第二目标控制器控制所述处于工作状态的控制器从工作状态切换到等待状态,并且由所述第二目标控制器将自身从等待状态切换到工作状态。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本发明实施例还提供了一种装置,包括:

一个或多个处理器;和

其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本发明实施例所述的方法。

本发明实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本发明实施例所述的方法。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种存储设备的控制方法和一种存储设备的控制装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1