CN103605481B - 磁盘控制方法、装置及设备 - Google Patents
磁盘控制方法、装置及设备 Download PDFInfo
- Publication number
- CN103605481B CN103605481B CN201310533870.0A CN201310533870A CN103605481B CN 103605481 B CN103605481 B CN 103605481B CN 201310533870 A CN201310533870 A CN 201310533870A CN 103605481 B CN103605481 B CN 103605481B
- Authority
- CN
- China
- Prior art keywords
- control information
- control
- disk
- priority
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明公开了一种磁盘控制方法、装置及设备,属于存储技术领域。所述方法包括:当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断该第一控制信息和该第二控制信息之间是否互相矛盾;当该第一控制信息和该第二控制信息之间互相矛盾时,根据该第一控制信息和该第二控制信息,查找预设数据库,得到该第一控制信息对应的优先级和该第二控制信息对应的优先级;获取该第一控制信息和该第二控制信中优先级高的控制信息作为磁盘控制信息;根据该磁盘控制信息,控制磁盘进行操作。本发明通过判断两个控制器发送控制信息之间是否互相矛盾,来对磁盘的控制信息进行选择性发送,以控制磁盘的操作。
Description
技术领域
本发明涉及存储技术领域,特别涉及一种磁盘控制方法、装置及设备。
背景技术
随着计算机的不断发展和计算机中存储数据量的与日俱增,双控制器磁盘架构的应用越来越广泛。
双控制器磁盘架构由两个控制器和多个双端口磁盘组成,两个控制器分别对应有一个控制单元,如CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件),两个控制器可以通过对应的CPLD对磁盘中的数据进行读写操作。因此,不可避免的会出现两个控制器同时发送命令的情况,一旦两个控制器发送给磁盘的命令互相矛盾时,磁盘将无法根据命令进行进一步地操作。针对该双控制器磁盘架构存在的问题,通常在两个CPLD之间采用主备状态维护和命令同步机制进行解决,即将两个CPLD分成主CPLD和从属CPLD。两个CPLD在均接收到控制信息时,而从属CPLD需要将其发出的控制信息发送给主CPLD,由主CPLD从两个控制信息中选择控制信息以控制磁盘的操作。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
主备状态维护和命令同步机制在进行主备状态维护和命令同步时,主备状态需要专用的逻辑电路进行支持,而且该主备状态的实现过程较复杂,稳定性差。而且,当主CPLD出现故障时,两个CPLD的主备状态需要进行调整,在此调整过程中容易出现两个CPLD同时处于主状态或从属状态、两个CPLD间的主备状态反复倒换等问题,从而使得数据的安全性降低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种磁盘控制方法、装置及设备。所述技术方案如下:
第一方面,提供了一种磁盘控制方法,所述方法应用于终端设备,所述终端设备具有一个控制单元、第一控制器和第二控制器,所述第一控制器和第二控制器分别与所述控制单元连接,所述方法包括:
当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断所述第一控制信息和第二控制信息之间是否互相矛盾;
当所述第一控制信息和第二控制信息之间互相矛盾时,根据所述第一控制信息和所述第二控制信息,查找预设数据库,得到所述第一控制信息对应的优先级和所述第二控制信息对应的优先级,所述预设数据库存储有控制信息与优先级之间的对应关系;
获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息;
根据所述磁盘控制信息,控制磁盘进行操作。
在第一方面的第一种可能的实施方式中,判断所述第一控制信息和第二控制信息之间是否互相矛盾包括:
判断所述第一控制信息和第二控制信息的控制对象是否相同;
当所述第一控制信息和第二控制信息的控制对象相同时,判断对所述相同控制对象的操作是否不同,如果对所述相同控制对象的操作不同,则所述第一控制信息和第二控制信息之间互相矛盾。
结合第一方面,在第一方面的第二种可能的实施方式中,判断所述第一控制信息和第二控制信息之间是否互相矛盾包括:
根据所述第一控制信息和所述第二控制信息,查找预设控制信息数据库,得到所述预设控制信息数据库中保存的所述第一控制信息和所述第二控制信息之间的关系,所述预设控制信息数据库保存有多个控制信息,以及所述多个控制信息中任意两个控制信息之间的关系。
结合第一方面,在第一方面的第三种可能的实施方式中,获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息包括:
判断所述第一控制信息对应的优先级是否高于所述第二控制信息对应的优先级;
当所述第一控制信息对应的优先级高于所述第二控制信息对应的优先级时,将所述第一控制信息作为所述磁盘控制信息;
当所述第二控制信息对应的优先级高于所述第一控制信息对应的优先级时,将所述第二控制信息作为所述磁盘控制信息。
结合第一方面,在第一方面的第四种可能的实施方式中,所述第一控制信息和所述第二控制信息的接收时间间隔小于预设阈值,或,所述第一控制信息为当接收到所述第二控制信息时正在执行的磁盘控制信息。
第二方面,提供了一种磁盘控制装置,所述装置包括:
判断模块,用于当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断所述第一控制信息和所述第二控制信息之间是否互相矛盾;
优先级获取模块,用于当所述第一控制信息和所述第二控制信息之间互相矛盾时,根据所述第一控制信息和所述第二控制信息,查找预设数据库,得到所述第一控制信息对应的优先级和所述第二控制信息对应的优先级,所述预设数据库存储有控制信息与优先级之间的对应关系;
磁盘控制信息获取模块,用于获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息;
控制模块,用于根据所述磁盘控制信息,控制磁盘进行操作。
在第二方面的第一种可能的实施方式中,所述判断模块还用于判断所述第一控制信息和所述第二控制信息的控制对象是否相同;当所述第一控制信息和所述第二控制信息的控制对象相同时,判断对所述相同控制对象的操作是否不同,如果对所述相同控制对象的操作不同,则所述第一控制信息和所述第二控制信息之间互相矛盾。
结合第二方面,在第二方面的第二种可能的实施方式中,所述判断模块还用于根据所述第一控制信息和所述第二控制信息,查找预设控制信息数据库,得到所述预设控制信息数据库中保存的所述第一控制信息和所述第二控制信息之间的关系,所述预设控制信息数据库保存有多个控制信息,以及所述多个控制信息中任意两个控制信息之间的关系。
结合第二方面,在第二方面的第三种可能的实施方式中,所述磁盘控制信息获取模块还用于判断所述第一控制信息对应的优先级是否高于所述第二控制信息对应的优先级;当所述第一控制信息对应的优先级高于所述第二控制信息对应的优先级时,将所述第一控制信息作为所述磁盘控制信息;当所述第二控制信息对应的优先级高于所述第一控制信息对应的优先级时,将所述第二控制信息作为所述磁盘控制信息。
结合第二方面,在第二方面的第四种可能的实施方式中,所述第一控制信息和所述第二控制信息的接收时间间隔小于预设阈值,或,所述第一控制信息为当接收到所述第二控制信息时正在执行的磁盘控制信息。
第三方面,提供了一种磁盘控制设备,所述磁盘控制设备包括:处理器、发送器、接收器和存储器,所述处理器、所述发送器和所述接收器分别于所述存储器相连接,
所述处理器,用于当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断所述第一控制信息和所述第二控制信息之间是否互相矛盾;
所述处理器还用于当所述第一控制信息和所述第二控制信息之间互相矛盾时,根据所述第一控制信息和所述第二控制信息,查找预设数据库,得到所述第一控制信息对应的优先级和所述第二控制信息对应的优先级,所述预设数据库存储有控制信息与优先级之间的对应关系;
所述处理器还用于获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息;
所述处理器还用于向磁盘发送所述磁盘控制信息,使得所述磁盘根据所述磁盘控制信息进行操作。
本发明实施例提供的技术方案带来的有益效果是:
通过判断第一控制信息和第二控制信息之间是否互相矛盾来对磁盘的控制信息进行选择性发送,以此达到对磁盘进行控制的目的。当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元根据该第一控制信息对应的优先级和该第二控制信息对应的优先级,选择优先级高的控制信息作为磁盘控制信息来控制磁盘进行操作,使得该方式的实现过程较简单,稳定性好,而且通过对控制信息赋予优先级的方式来选择控制信息,将原有的两个控制单元配合工作整合为一个控制单元内部实现,避免了两个控制单元间的主备状态反复倒换等问题,省略了原有的主备机制和MUX(Multiplexer,数据选择器)功能,简化设计降低成本、大大提高了数据的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种磁盘控制方法流程图;
图2是本发明实施例提供的一种磁盘控制方法流程图;
图3是本发明实施例提供的一种磁盘控制装置结构示意图;
图4是本发明实施例提供的一种磁盘控制设备结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种磁盘控制方法流程图。该方法应用于终端设备,该终端设备具有一个控制单元、第一控制器和第二控制器,该第一控制器和第二控制器分别与该控制单元连接,参见图1,该实施例的执行主体为终端设备的控制单元,该方法包括:
101、当控制单元接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断该第一控制信息和该第二控制信息之间是否互相矛盾;
102、当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元根据该第一控制信息和该第二控制信息,查找预设数据库,得到该第一控制信息对应的优先级和该第二控制信息对应的优先级,该预设数据库存储有控制信息与优先级之间的对应关系;
103、控制单元获取该第一控制信息和该第二控制信中优先级高的控制信息作为磁盘控制信息;
104、控制单元根据该磁盘控制信息,控制磁盘进行操作。
需要说明的是,该控制单元可以为一个CPLD,还可以为控制器或CPU等,本发明实施例对此不作限定。
本发明实施例提供的方法,通过判断第一控制信息和第二控制信息之间是否互相矛盾来对磁盘的控制信息进行选择性发送,以此达到对磁盘进行控制的目的。当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元根据该第一控制信息对应的优先级和该第二控制信息对应的优先级,选择优先级高的控制信息作为磁盘控制信息来控制磁盘进行操作,使得该方式的实现过程较简单,稳定性好,而且通过对控制信息赋予优先级的方式来选择控制信息,将原有的两个控制单元配合工作整合为一个控制单元内部实现,避免了两个控制单元间的主备状态反复倒换等问题,省略了原有的主备机制和MUX功能,简化设计降低成本、大大提高了数据的安全性。
图2是本发明实施例提供的一种磁盘控制方法流程图。参见图2,该实施例的执行主体为终端设备的控制单元,该方法流程包括:
201、当控制单元接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断该第一控制信息和该第二控制信息的控制对象是否相同;
当该第一控制信息和该第二控制信息的控制对象相同时,执行步骤202;
当该第一控制信息和该第二控制信息的控制对象不同时,执行步骤209。
磁盘控制器在发送控制信息之前,需要终端设备的系统软件对磁盘操作或磁盘状态进行检测,磁盘控制器会根据磁盘操作或磁盘状态生成控制信息,并向磁盘发送控制信息,以控制磁盘进行对应操作。
在本发明实施例中,磁盘控制器包括第一控制器和第二控制器,因此,该步骤201具体为:当第一控制器根据磁盘操作或磁盘状态生成第一控制信息时,第一控制器向控制单元发送该第一控制信息,当第二控制器根据磁盘操作或磁盘状态生成第二控制信息时,第二控制器向控制单元发送该第二控制信息。
控制单元通过CPU总线或串行总线接收第一控制器发送的第一控制信息和第二控制器发送的第二控制信息,并根据该第一控制信息和该第二控制信息判断两者的控制信息的控制对象是否相同。
其中,终端设备可以为PC(Personal Computer,个人计算机)等,本发明实施例对此不做限定。
需要说明的是,该第一控制信息和该第二控制信息的接收时间间隔可以小于预设阈值,或,该第一控制信息可以为当接收到该第二控制信息时正在执行的磁盘控制信息。当接收时间间隔小于预设阈值时,说明该第一控制信息和该第二控制信息的执行时间有可能相同,或执行时间段重叠,因此,在判断是否互相矛盾时,不仅仅要判断相同时间接收到的控制信息,还可以按照接收时间间隔,判断接收时间间隔可以小于预设阈值的第一控制信息和该第二控制信息之间是否互相矛盾。另外,如果在磁盘执行第一控制信息时,控制单元接收到第二控制信息,则此时,如果控制信息之间互相矛盾,也可能会造成磁盘故障或数据损失,则也需要判断是否互相矛盾。
其中,预设阈值可以由技术人员在开发时设置,也可以是用户在使用的过程中进行调整,本发明实施例对此不做限定。
该第一控制信息可以包括控制对象、控制对象需要进行的操作等,该第二控制信息所包括的内容与第一控制信息同理,本发明实施例对该第一控制信息或该第二控制信息中包含的内容不做限定。其中,控制对象具体可以为磁盘指示灯、电源等。相应地,当控制对象为磁盘指示灯时,其需要进行的操作可以为绿灯闪烁、红灯亮等;当控制对象为电源时,其需要进行的操作可以为上电、下电等。
202、当该第一控制信息和该第二控制信息的控制对象相同时,控制单元判断对该相同控制对象的操作是否不同;
如果对该相同控制对象的操作不同,控制单元确定该第一控制信息和该第二控制信息之间互相矛盾,则执行步骤203;
如果对该相同控制对象的操作相同,控制单元确定该第一控制信息和该第二控制信息之间不矛盾,则执行步骤204;
例如,当该第一控制信息和该第二控制信息中包含的控制对象都为磁盘指示灯时,控制单元确定该第一控制信息和该第二控制信息的控制对象相同,此时,控制单元会对该第一控制信息和该第二控制信息中控制对象需要进行的操作行为进行分析,判断对该相同控制对象的操作是否不同。如果第一控制信息中的控制对象需要进行的操作为绿灯闪烁,且第二控制信息中的控制对象需要进行的操作也为绿灯闪烁,则控制单元确定该第一控制信息和该第二控制信息之间不矛盾;如果第一控制信息中的控制对象需要进行的操作为绿灯闪烁,而第二控制信息中的控制对象需要进行的操作为红灯亮,则控制单元确定该第一控制信息和该第二控制信息之间互相矛盾。
需要说明的是,上述步骤201~202是控制单元判断第一控制信息和第二控制信息之间是否互相矛盾的过程,当然,上述判断第一控制信息和第二控制信息之间是否互相矛盾的过程也可以由其它方式代替,如,根据该第一控制信息和该第二控制信息,查找预设控制信息数据库,得到该预设控制信息数据库中保存的该第一控制信息和该第二控制信息之间的关系,该预设控制信息数据库保存有多个控制信息,以及该多个控制信息中任意两个控制信息之间的关系。为了能够更加直接有效的判断第一控制信息和第二控制信息之间是否互相矛盾,可以在终端设备中预先设置控制信息数据库,即预设控制信息数据库,控制单元可以通过查询该预设控制信息数据库,直接确定第一控制信息和第二控制信息之间是否互相矛盾,从而使得判断第一控制信息和第二控制信息之间是否互相矛盾的过程更加方便、快捷。当然,该判断过程可以不仅包括上述两种判断方式,还可以采用其他判断方式进行,本发明实施例对此不做限定。其中,预设控制信息数据库可以由技术人员在开发时设置,也可以由用户在使用的过程中调整,本发明实施例对此不做限定。
203、当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元根据该第一控制信息和该第二控制信息,查找预设数据库,得到该第一控制信息对应的优先级和该第二控制信息对应的优先级,该预设数据库存储有控制信息与优先级之间的对应关系,执行步骤205;
本发明实施例中,当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元对两个互相矛盾的控制信息进行逻辑仲裁,以确定磁盘需要执行哪一个控制信息,选取一个需要优先发送的控制信息向磁盘进行发送,即需要根据预设数据库确定该第一控制信息对应的优先级和该第二控制信息对应的优先级。
其中,优先级的表示方法可以是以下任一种:(1)使用具体的数值来表示优先级。如,以100作为第一控制信息对应的优先级。(2)将优先级分成很多等级,如,低于标准、标准、高于标准等,通过这些优先级等级来表示优先级,如,第一控制信息对应的优先级为标准。当然,优先级的表示方法并不限于以上两种,本发明实施对如何表示控制信息对应的优先级不做限定。
204、当该第一控制信息和该第二控制信息之间不矛盾时,控制单元将该第一控制信息或该第二控制信息作为磁盘控制信息,执行步骤208;
基于步骤202的示例,当第一控制信息中的控制对象需要进行的操作为绿灯闪烁,且第二控制信息中的控制对象需要进行的操作也为绿灯闪烁时,该第一控制信息和该第二控制信息之间不矛盾。由于两个控制信息中的控制对象需要进行的操作行为相同,因此,控制单元可以将该第一控制信息或该第二控制信息作为磁盘控制信息。
205、控制单元判断该第一控制信息对应的优先级是否高于该第二控制信息对应的优先级,执行步骤206或207;
当该第一控制信息对应的优先级高于该第二控制信息对应的优先级时,执行步骤206;
当该第二控制信息对应的优先级高于该第一控制信息对应的优先级时,执行步骤207。
206、当该第一控制信息对应的优先级高于该第二控制信息对应的优先级时,控制单元将该第一控制信息作为磁盘控制信息,执行步骤208;
终端设备中保存的预设数据库可以由控制信息与优先级构成。表1是一种预设数据库。在表1中,优先级以具体的数值表示。
表1
参见表1,当第一控制信息为控制对象为磁盘指示灯,操作为点亮红灯,第二控制信息为控制对象为磁盘指示灯,操作为使绿灯闪烁时,通过表1的预设数据库,得到控制对象为磁盘指示灯,操作为点亮红灯对应的优先级为100,控制对象为磁盘指示灯,操作为使绿灯闪烁对应的优先级为60,则控制单元确定该第一控制信息对应的优先级高于该第二控制信息对应的优先级,此时,控制单元将控制对象为磁盘指示灯,操作为点亮红灯作为磁盘控制信息。
207、当该第二控制信息对应的优先级高于该第一控制信息对应的优先级时,控制单元将该第二控制信息作为磁盘控制信息,执行步骤208;
该步骤207与步骤206的过程类似,该步骤207的具体过程可以参见步骤206所述的过程执行,在此不再赘述。
208、控制单元根据该磁盘控制信息,控制磁盘进行操作,结束;
具体地,控制单元需要将磁盘控制信息做进一步处理,得到该磁盘控制信息对应的操作指令,以便于能够控制磁盘进行相应地操作。控制单元通过该控制单元上的输出端口利用该磁盘控制信息对应的操作指令控制该磁盘控制信息的控制对象进行相应操作。
其中,控制单元将得到的磁盘控制信息做进一步处理可以为:将该磁盘控制信息转变为对控制对象进行操作的指令等。以磁盘指示灯为例,当磁盘控制信息为绿灯闪烁时,控制单元根据该磁盘控制信息,确定控制对象为磁盘指示灯的绿灯,而且要求该绿灯进行闪烁,并确定绿灯的闪烁频率,并向磁盘发送按照确定的闪烁频率点亮绿灯的指令,以使得当磁盘接收到该指令时,磁盘指示灯的绿灯按照对应频率进行闪烁。其中,绿灯闪烁频率可以为1秒闪烁1次、1秒闪烁2次等。
209、当该第一控制信息和该第二控制信息的控制对象不同时,控制单元根据该第一控制信息和该第二控制信息,控制磁盘分别进行对应操作。
需要说明的是,在控制单元执行该第一控制信息和该第二控制信息对应的操作指令的过程中,控制单元根据该第一控制信息和该第二控制信息同时控制磁盘进行对应操作,当然,控制单元也可以根据该第一控制信息和该第二控制信息,查询如表1的预设数据库,分别得到该第一控制信息和该第二控制信息对应的优先级,根据优先级从大到小的顺序,分别控制磁盘进行对应操作。当然,除上述两种发送方式外,还可以有其它的发送方式,本发明实施例对此不做限定。
为了能够更好地说明上述步骤201~209的过程,以下以磁盘指示灯的控制信息为例,对本发明实施例进行详细说明,具体过程如下:
以磁盘指示灯的绿灯闪烁代表磁盘正常工作,磁盘指示灯的红灯亮代表磁盘故障。当第一控制器向控制单元发送了绿灯闪烁的第一控制信息,第二控制器向控制单元发送了红灯亮的第二控制信息时,控制单元根据两个控制信息,确定该两个控制信息的控制对象相同,即控制对象都为磁盘指示灯,而且对磁盘指示灯的操作不同,即一个需要磁盘指示灯的绿灯闪烁,而另一个需要磁盘指示灯的红灯亮,此时,控制单元确定该第一控制信息和该第二控制信息之间互相矛盾,控制单元根据互相矛盾的两个控制信息,查询如表1的预设数据库,得到控制对象为磁盘指示灯,操作为点亮红灯对应的优先级为100,控制对象为磁盘指示灯,操作为使绿灯闪烁对应的优先级为60,显然,控制对象为磁盘指示灯,操作为点亮红灯对应的优先级高于控制对象为磁盘指示灯,操作为使绿灯闪烁对应的优先级,控制单元将控制对象为磁盘指示灯,操作为点亮红灯的第二控制信息发送给磁盘,该磁盘在接收到该第二控制信息时,根据该第二控制信息使得该磁盘指示灯的红灯点亮,以表示磁盘发生故障。
当然,本发明在具体实施的过程中,上述步骤201~209过程的示例中提到的控制对象为电源,操作为上电或控制对象为磁盘指示灯,操作为使绿灯闪烁还可以以其他形式代替,如磁盘正处于读取数据或写入数据状态时,表示控制对象为电源,操作为上电或控制对象为磁盘指示灯,操作为使绿灯闪烁。针对这种情况下,通过以下示例对上述步骤201~209进行详细说明:
当第一控制器向控制单元发送了读取磁盘数据的第一控制信息,且控制单元此时正在根据该第一控制信息执行数据读取操作时,第二控制器向控制单元发送了控制对象为电源,操作为下电的第二控制信息,此时,控制单元根据两个控制信息,确定该两个控制信息的控制对象都为电源,而且需要对电源进行不同的操作,控制单元根据两个控制信息,查询如表1的预设数据库,得到控制对象为电源,操作为上电对应的优先级为50,控制对象为电源,操作为下电对应的优先级为80,同时,再根据数据读取操作与电源状态的对应关系,得到数据读取操作对应的电源的操作为上电,从而得到数据读取操作对应的优先级为50。由于控制对象为电源,操作为下电对应的优先级高于数据读取操作对应的优先级,控制单元将控制对象为电源,操作为下电的第二控制信息发送给磁盘。
本发明实施例提供的方法,通过判断第一控制信息和第二控制信息之间是否互相矛盾来对磁盘的控制信息进行选择性发送,以此达到对磁盘进行控制的目的。当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元根据该第一控制信息对应的优先级和该第二控制信息对应的优先级,选择优先级高的控制信息作为磁盘控制信息来控制磁盘进行操作,使得该方式的实现过程较简单,稳定性好,而且通过对控制信息赋予优先级的方式来选择控制信息,将原有的两个控制单元配合工作整合为一个控制单元内部实现,避免了两个控制单元间的主备状态反复倒换等问题,省略了原有的主备机制和MUX功能,简化设计降低成本、大大提高了数据的安全性。进一步地,针对磁盘指示灯和电源,本发明通过对控制信息赋予优先级的方式来选择控制信息,解决了现有技术中由于两个控制器都需要向磁盘指示灯和电源发送控制信息,而当控制器连接的磁盘数量较多时,会造成控制信息的数量巨大的问题,提高了磁盘对控制信息的响应速度,降低了双控架构磁盘的造价。
图3是本发明实施例提供的一种磁盘控制装置结构示意图。参见图3,该装置包括:判断模块301、优先级获取模块302、磁盘控制信息获取模块303和控制模块304。其中,该判断模块301,用于当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断该第一控制信息和该第二控制信息之间是否互相矛盾;该判断模块301与该优先级获取模块302相连接,该优先级获取模块302,用于当该第一控制信息和该第二控制信息之间互相矛盾时,根据该第一控制信息和该第二控制信息,查找预设数据库,得到该第一控制信息对应的优先级和该第二控制信息对应的优先级,该预设数据库存储有控制信息与优先级之间的对应关系;该优先级获取模块302与该磁盘控制信息获取模块303相连接,该磁盘控制信息获取模块303,用于获取该第一控制信息和该第二控制信中优先级高的控制信息作为磁盘控制信息;该磁盘控制信息获取模块303与该控制模块304相连接,该控制模块304,用于根据该磁盘控制信息,控制磁盘进行操作。
可选地,该判断模块301还用于判断该第一控制信息和该第二控制信息的控制对象是否相同;当该第一控制信息和该第二控制信息的控制对象相同时,判断对该相同控制对象的操作是否不同,如果对该相同控制对象的操作不同,则该第一控制信息和该第二控制信息之间互相矛盾。
可选地,该判断模块301还用于根据该第一控制信息和该第二控制信息,查找预设控制信息数据库,得到该预设控制信息数据库中保存的该第一控制信息和该第二控制信息之间的关系,该预设控制信息数据库保存有多个控制信息,以及该多个控制信息中任意两个控制信息之间的关系。
可选地,该磁盘控制信息获取模块303还用于判断该第一控制信息对应的优先级是否高于该第二控制信息对应的优先级;当该第一控制信息对应的优先级高于该第二控制信息对应的优先级时,将该第一控制信息作为该磁盘控制信息;当该第二控制信息对应的优先级高于该第一控制信息对应的优先级时,将该第二控制信息作为该磁盘控制信息。
可选地,该第一控制信息和该第二控制信息的接收时间间隔小于预设阈值,或,该第一控制信息为当接收到该第二控制信息时正在执行的磁盘控制信息。
综上所述,本发明实施例提供的装置,通过判断第一控制信息和第二控制信息之间是否互相矛盾来对磁盘的控制信息进行选择性发送,以此达到对磁盘进行控制的目的。当该第一控制信息和该第二控制信息之间互相矛盾时,控制单元根据该第一控制信息对应的优先级和该第二控制信息对应的优先级,选择优先级高的控制信息作为磁盘控制信息来控制磁盘进行操作,使得该方式的实现过程较简单,稳定性好,而且通过对控制信息赋予优先级的方式来选择控制信息,将原有的两个控制单元配合工作整合为一个控制单元内部实现,避免了两个控制单元间的主备状态反复倒换等问题,省略了原有的主备机制和MUX功能,简化设计降低成本、大大提高了数据的安全性。
需要说明的是:上述实施例提供的磁盘控制装置在对磁盘进行控制时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将磁盘控制设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的磁盘控制装置与磁盘控制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图4是本发明实施例提供的一种磁盘控制设备结构示意图。参见图4,该磁盘控制设备包括:处理器401、发送器402、接收器403和存储器404,该处理器401、该发送器402和该接收器403分别于该存储器404相连接,
该处理器401,用于当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断该第一控制信息和该第二控制信息之间是否互相矛盾;
该处理器401还用于当该第一控制信息和该第二控制信息之间互相矛盾时,根据该第一控制信息和该第二控制信息,查找预设数据库,得到该第一控制信息对应的优先级和该第二控制信息对应的优先级,该预设数据库存储有控制信息与优先级之间的对应关系;
该处理器401还用于获取该第一控制信息和该第二控制信中优先级高的控制信息作为磁盘控制信息;
该处理器401还用于根据所述磁盘控制信息,控制磁盘进行操作。
可选地,该处理器401还用于判断该第一控制信息和该第二控制信息的控制对象是否相同;当该第一控制信息和该第二控制信息的控制对象相同时,判断对该相同控制对象的操作是否不同,如果对该相同控制对象的操作不同,则该第一控制信息和该第二控制信息之间互相矛盾。
可选地,该处理器401还用于根据该第一控制信息和该第二控制信息,查找预设控制信息数据库,得到该预设控制信息数据库中保存的该第一控制信息和该第二控制信息之间的关系,该预设控制信息数据库保存有多个控制信息,以及该多个控制信息中任意两个控制信息之间的关系。
可选地,该处理器401还用于判断该第一控制信息对应的优先级是否高于该第二控制信息对应的优先级;当该第一控制信息对应的优先级高于该第二控制信息对应的优先级时,将该第一控制信息作为该磁盘控制信息;当该第二控制信息对应的优先级高于该第一控制信息对应的优先级时,将该第二控制信息作为该磁盘控制信息。
可选地,该第一控制信息和该第二控制信息的接收时间间隔小于预设阈值,或,该第一控制信息为当接收到该第二控制信息时正在执行的磁盘控制信息。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种磁盘控制方法,其特征在于,所述方法应用于终端设备,所述终端设备具有一个控制单元、第一控制器和第二控制器,所述第一控制器和第二控制器分别与所述控制单元连接,所述方法包括:
当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断所述第一控制信息和第二控制信息之间是否互相矛盾;
当所述第一控制信息和第二控制信息之间互相矛盾时,根据所述第一控制信息和所述第二控制信息,查找预设数据库,得到所述第一控制信息对应的优先级和所述第二控制信息对应的优先级,所述预设数据库存储有控制信息与优先级之间的对应关系;
获取所述第一控制信息和所述第二控制信息中优先级高的控制信息作为磁盘控制信息;
根据所述磁盘控制信息,控制磁盘进行操作;
其中,所述判断所述第一控制信息和第二控制信息之间是否互相矛盾包括:
判断所述第一控制信息和第二控制信息的控制对象是否相同,当所述第一控制信息和第二控制信息的控制对象相同时,判断对相同控制对象的操作是否不同,如果对所述相同控制对象的操作不同,则所述第一控制信息和第二控制信息之间互相矛盾;或者,
所述判断所述第一控制信息和第二控制信息之间是否互相矛盾包括:
根据所述第一控制信息和所述第二控制信息,查找预设控制信息数据库,得到所述预设控制信息数据库中保存的所述第一控制信息和所述第二控制信息之间的关系,所述预设控制信息数据库保存有多个控制信息,以及所述多个控制信息中任意两个控制信息之间的关系;
所述获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息包括:判断所述第一控制信息对应的优先级是否高于所述第二控制信息对应的优先级;当所述第一控制信息对应的优先级高于所述第二控制信息对应的优先级时,将所述第一控制信息作为所述磁盘控制信息;当所述第二控制信息对应的优先级高于所述第一控制信息对应的优先级时,将所述第二控制信息作为所述磁盘控制信息。
2.根据权利要求1所述的方法,其特征在于,所述第一控制信息和所述第二控制信息的接收时间间隔小于预设阈值,或,所述第一控制信息为当接收到所述第二控制信息时正在执行的磁盘控制信息。
3.一种磁盘控制装置,其特征在于,所述装置包括:
判断模块,用于当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断所述第一控制信息和所述第二控制信息之间是否互相矛盾;
优先级获取模块,用于当所述第一控制信息和所述第二控制信息之间互相矛盾时,根据所述第一控制信息和所述第二控制信息,查找预设数据库,得到所述第一控制信息对应的优先级和所述第二控制信息对应的优先级,所述预设数据库存储有控制信息与优先级之间的对应关系;
磁盘控制信息获取模块,用于获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息;
控制模块,用于根据所述磁盘控制信息,控制磁盘进行操作;
其中,所述判断模块还用于判断所述第一控制信息和所述第二控制信息的控制对象是否相同;当所述第一控制信息和所述第二控制信息的控制对象相同时,判断对相同控制对象的操作是否不同,如果对所述相同控制对象的操作不同,则所述第一控制信息和所述第二控制信息之间互相矛盾;或者,
所述判断模块还用于根据所述第一控制信息和所述第二控制信息,查找预设控制信息数据库,得到所述预设控制信息数据库中保存的所述第一控制信息和所述第二控制信息之间的关系,所述预设控制信息数据库保存有多个控制信息,以及所述多个控制信息中任意两个控制信息之间的关系;
所述磁盘控制信息获取模块还用于判断所述第一控制信息对应的优先级是否高于所述第二控制信息对应的优先级;当所述第一控制信息对应的优先级高于所述第二控制信息对应的优先级时,将所述第一控制信息作为所述磁盘控制信息;当所述第二控制信息对应的优先级高于所述第一控制信息对应的优先级时,将所述第二控制信息作为所述磁盘控制信息。
4.根据权利要求3所述的装置,其特征在于,所述第一控制信息和所述第二控制信息的接收时间间隔小于预设阈值,或,所述第一控制信息为当接收到所述第二控制信息时正在执行的磁盘控制信息。
5.一种磁盘控制设备,其特征在于,所述磁盘控制设备包括:处理器、发送器、接收器和存储器,所述处理器、所述发送器和所述接收器分别于所述存储器相连接,
所述处理器,用于当接收到第一控制器发送的第一控制信息和第二控制器发送的第二控制信息时,判断所述第一控制信息和所述第二控制信息之间是否互相矛盾;
所述处理器还用于当所述第一控制信息和所述第二控制信息之间互相矛盾时,根据所述第一控制信息和所述第二控制信息,查找预设数据库,得到所述第一控制信息对应的优先级和所述第二控制信息对应的优先级,所述预设数据库存储有控制信息与优先级之间的对应关系;
所述处理器还用于获取所述第一控制信息和所述第二控制信中优先级高的控制信息作为磁盘控制信息;
所述处理器还用于根据所述磁盘控制信息,控制磁盘进行操作;
其中,所述处理器还用于判断所述第一控制信息和所述第二控制信息的控制对象是否相同;当所述第一控制信息和所述第二控制信息的控制对象相同时,判断对相同控制对象的操作是否不同,如果对所述相同控制对象的操作不同,则所述第一控制信息和所述第二控制信息之间互相矛盾;或者,
所述处理器还用于根据所述第一控制信息和所述第二控制信息,查找预设控制信息数据库,得到所述预设控制信息数据库中保存的所述第一控制信息和所述第二控制信息之间的关系,所述预设控制信息数据库保存有多个控制信息,以及所述多个控制信息中任意两个控制信息之间的关系;
所述处理器还用于判断所述第一控制信息对应的优先级是否高于所述第二控制信息对应的优先级;当所述第一控制信息对应的优先级高于所述第二控制信息对应的优先级时,将所述第一控制信息作为所述磁盘控制信息;当所述第二控制信息对应的优先级高于所述第一控制信息对应的优先级时,将所述第二控制信息作为所述磁盘控制信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310533870.0A CN103605481B (zh) | 2013-10-31 | 2013-10-31 | 磁盘控制方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310533870.0A CN103605481B (zh) | 2013-10-31 | 2013-10-31 | 磁盘控制方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103605481A CN103605481A (zh) | 2014-02-26 |
CN103605481B true CN103605481B (zh) | 2017-07-14 |
Family
ID=50123713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310533870.0A Expired - Fee Related CN103605481B (zh) | 2013-10-31 | 2013-10-31 | 磁盘控制方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605481B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947540B (zh) * | 2017-12-21 | 2021-05-25 | 北京金风科创风电设备有限公司 | 风力发电机组命令的处理方法和装置、风力发电机组 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0183748B1 (ko) * | 1995-10-30 | 1999-05-15 | 김광호 | 씨디-롬 구동 시스템의 고속 메모리 제어회로 및 그 방법 |
US6301639B1 (en) * | 1999-07-26 | 2001-10-09 | International Business Machines Corporation | Method and system for ordering priority commands on a commodity disk drive |
JP4699672B2 (ja) * | 2000-05-12 | 2011-06-15 | ティヴォ インク | バンド幅効率の改善方法 |
KR20030095828A (ko) * | 2002-06-14 | 2003-12-24 | 삼성전자주식회사 | 주변기기 인터페이스 장치 및 그에 적합한 우선 순위 제어방법 |
CN102541460B (zh) * | 2010-12-20 | 2014-10-08 | 中国移动通信集团公司 | 一种多磁盘场景下的磁盘管理方法和设备 |
CN102981973B (zh) * | 2012-11-05 | 2016-02-10 | 曙光信息产业(北京)有限公司 | 在存储系统中执行请求的方法 |
-
2013
- 2013-10-31 CN CN201310533870.0A patent/CN103605481B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN103605481A (zh) | 2014-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN202870808U (zh) | 一种spi串口模块的fpga实现装置 | |
CN102638398B (zh) | 一种指示端口状态的方法及交换机 | |
CN107255918A (zh) | 一种远程控制计算机热备冗余自动切换控制方法 | |
CN104698950B (zh) | 一种外围设备控制方法、微控制器、上位机及系统 | |
CN104794078B (zh) | 机柜服务器系统及其自动寻址方法 | |
CN104348673A (zh) | 一种调测的方法、主控板和业务板 | |
CN105318502A (zh) | 空调机组控制器的程序更新系统、方法及装置 | |
CN107547234A (zh) | 一种主用板卡和备用板卡管理的方法和装置 | |
CN109613909A (zh) | 稳控主机测试方法及其系统 | |
CN110262360A (zh) | 变频器模拟装置和模拟方法 | |
CN202998098U (zh) | 光模块端口测试装置 | |
CN204790554U (zh) | 基于汽车can网络总线的总线控制器质量测试装置 | |
CN104881015B (zh) | 一种信息处理方法及智能家居控制设备 | |
CN110568946B (zh) | 一种端口控制方法、设备及介质 | |
CN104181836B (zh) | 信号切换装置 | |
CN103605481B (zh) | 磁盘控制方法、装置及设备 | |
CN203378090U (zh) | 智能舞台灯光云终端控制系统 | |
CN203434992U (zh) | 组网协议串口测试装置 | |
CN113419982A (zh) | 一种Retimer自动匹配下行设备的系统及方法 | |
CN105791396B (zh) | 一种远程监控方法、监控终端及远程监控系统 | |
CN202424768U (zh) | 一种网络安全隔离器 | |
CN106059876B (zh) | 一种单向串行总线网络的模式切换控制方法、设备及系统 | |
CN105553859A (zh) | 一种sfp模块自适应接口的系统及方法 | |
CN205644225U (zh) | 通用远程模拟量开关量输入输出系统 | |
CN113675858A (zh) | 无功补偿控制方法、装置、存储介质以及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170714 Termination date: 20181031 |
|
CF01 | Termination of patent right due to non-payment of annual fee |