一种多控制器中处理有序命令的方法技术

技术编号:14687851 阅读:70 留言:0更新日期:2017-02-23 10:07
本发明专利技术公开了一种多控制器中处理有序命令的方法,该方法包括:在存储系统中,当一个控制器接收到有序命令Ordered Command时,所述控制器中的事件处理器EM向存储系统中所有的控制器发送请求消息Qr;所述所有的控制器接收请求消息Qr,均继续执行当前的无序命令Unordered Command,执行完毕后向所述事件处理器EM发送反馈消息Qc;当所述事件处理器EM接收到的反馈消息Qc的数量与存储系统中所有控制器的数量一致时,接收到所述有序命令Ordered Command的控制器开始执行所述有序命令Ordered Command。该方法实现在多控制器中完成有序命令Ordered Command的正常执行。

【技术实现步骤摘要】

本专利技术涉及存储系统
,特别是涉及一种多控制器中处理有序命令的方法
技术介绍
目前,SCSI(SmallComputerSystemsInterface,小型计算机系统接口)协议规定执行OrderedCommand的顺序必须与接收到OrderedCommand的顺序一致,因此对于有序命令OrderedCommand,只有在保证所有的SCSICommand即SCSI命令执行完毕之后OrderedCommand才能开始执行。现有技术中,在多个控制器中,每个控制器都是各自执行各自的SCSI命令中的无序命令UnorderedCommand,当一个控制器接收到有序命令OrderedCommand后,仅仅只能考虑自身无序命令UnorderedCommand是否已完成,不能考虑到其他所有控制器是否都已经执行完UnorderedCommand命令,因此无法保证所有UnorderedCommand命令执行完毕之后OrderedCommand才能开始执行,无法实现在多控制器中完成有序命令OrderedCommand的正常执行。
技术实现思路
本专利技术的目的是提供一种多控制器中处理有序命令的方法,以实现在多控制器中完成有序命令OrderedCommand的正常执行。为解决上述技术问题,本专利技术提供一种多控制器中处理有序命令的方法,该方法包括:在存储系统中,当一个控制器接收到有序命令OrderedCommand时,所述控制器中的事件处理器EM向存储系统中所有的控制器发送请求消息Qr;所述所有的控制器接收请求消息Qr,均继续执行当前的无序命令UnorderedCommand,执行完毕后向所述事件处理器EM发送反馈消息Qc;当所述事件处理器EM接收到的反馈消息Qc的数量与存储系统中所有控制器的数量一致时,接收到所述有序命令OrderedCommand的控制器开始执行所述有序命令OrderedCommand。优选的,所述所有的控制器接收请求消息Qr之后,还包括:所述所有的控制器均停止执行新接收到的SCSI命令,并将新接收到的SCSI命令插入到静止队列QuiesceQueue中。优选的,所述接收到所述有序命令OrderedCommand的控制器开始执行所述有序命令OrderedCommand之后,还包括:执行所述有序命令OrderedCommand完毕后,所述接收到所述有序命令OrderedCommand的控制器向所述事件处理器EM发送命令完成消息Qd。优选的,所述接收到所述有序命令OrderedCommand的控制器向所述事件处理器EM发送命令完成消息Qd之后,还包括:所述事件处理器EM将所述命令完成消息Qd发送至所述所有的控制器;所述所有的控制器开始执行静止队列QuiesceQueue中的命令。优选的,所述方法还包括:对于存储系统中每一个控制器,当控制器接收到队列命令头信息时,将所述队列命令头信息插入到静止队列QuiesceQueue的队头。优选的,所述执行完毕后向所述事件处理器EM发送命令完成消息Qc之后,还包括:所述所有的控制器均停止执行任何命令。优选的,所述存储系统中所有的控制器中包括接收到所述有序命令OrderedCommand的控制器。优选的,所述,存储系统中所有的控制器的个数为至少两个。本专利技术所提供的一种多控制器中处理有序命令的方法,在存储系统中,当一个控制器接收到有序命令OrderedCommand时,所述控制器中的事件处理器EM向存储系统中所有的控制器发送请求消息Qr;所述所有的控制器接收请求消息Qr,均继续执行当前的无序命令UnorderedCommand,执行完毕后向所述事件处理器EM发送反馈消息Qc;当所述事件处理器EM接收到的反馈消息Qc的数量与存储系统中所有控制器的数量一致时,接收到所述有序命令OrderedCommand的控制器开始执行所述有序命令OrderedCommand。可见,在存储系统中,当Qc的数量与存储系统中所有控制器的数量一致时,表示所有控制器执行UnorderedCommand命令结束,即所有的控制器中的UnorderedCommand命令执行完毕之后,接收到有序命令OrderedCommand的控制器才开始执行有序命令OrderedCommand,保证所有UnorderedCommand命令执行完毕之后OrderedCommand才能开始执行,实现在多控制器中完成有序命令OrderedCommand的正常执行。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术所提供的一种多控制器中处理有序命令的方法的流程图;图2为OrderedCommand命令执行流程图。具体实施方式本专利技术的核心是提供一种多控制器中处理有序命令的方法,以实现在多控制器中完成有序命令OrderedCommand的正常执行。为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参考图1,图1为本专利技术所提供的一种多控制器中处理有序命令的方法的流程图,该方法包括:S11:在存储系统中,当一个控制器接收到有序命令OrderedCommand时,控制器中的事件处理器EM向存储系统中所有的控制器发送请求消息Qr;S12:所有的控制器接收请求消息Qr,均继续执行当前的无序命令UnorderedCommand,执行完毕后向事件处理器EM发送反馈消息Qc;S13:当事件处理器EM接收到的反馈消息Qc的数量与存储系统中所有控制器的数量一致时,接收到有序命令OrderedCommand的控制器开始执行有序命令OrderedCommand。可见,在存储系统中,当Qc的数量与存储系统中所有控制器的数量一致时,表示所有控制器执行UnorderedCommand命令结束,即所有的控制器中的UnorderedCommand命令执行完毕之后,接收到有序命令OrderedCommand的控制器才开始执行有序命令OrderedCommand,保证所有UnorderedCommand命令执行完毕之后OrderedCommand才能开始执行,实现在多控制器中完成有序命令OrderedCommand的正常执行。基于所述方法,具体的,所有的控制器接收请求消息Qr之后,所有的控制器均停止执行新接收到的SCSI命令,并将新接收到的SCSI命令插入到静止队列QuiesceQueue中。然后所有控制器均继续执行当前的无序命令UnorderedCommand,执行完毕后向事件处理器EM发送反馈消息Qc。其中,无序命令UnorderedCommand为没有顺序的指令,执行过程没有先后顺序。有序命令OrderedCommand为有顺序的指令,执行过程有先后顺序。有序命令OrderedComman本文档来自技高网
...
一种多控制器中处理有序命令的方法

【技术保护点】
一种多控制器中处理有序命令的方法,其特征在于,包括:在存储系统中,当一个控制器接收到有序命令Ordered Command时,所述控制器中的事件处理器EM向存储系统中所有的控制器发送请求消息Qr;所述所有的控制器接收请求消息Qr,均继续执行当前的无序命令Unordered Command,执行完毕后向所述事件处理器EM发送反馈消息Qc;当所述事件处理器EM接收到的反馈消息Qc的数量与存储系统中所有控制器的数量一致时,接收到所述有序命令Ordered Command的控制器开始执行所述有序命令Ordered Command。

【技术特征摘要】
1.一种多控制器中处理有序命令的方法,其特征在于,包括:在存储系统中,当一个控制器接收到有序命令OrderedCommand时,所述控制器中的事件处理器EM向存储系统中所有的控制器发送请求消息Qr;所述所有的控制器接收请求消息Qr,均继续执行当前的无序命令UnorderedCommand,执行完毕后向所述事件处理器EM发送反馈消息Qc;当所述事件处理器EM接收到的反馈消息Qc的数量与存储系统中所有控制器的数量一致时,接收到所述有序命令OrderedCommand的控制器开始执行所述有序命令OrderedCommand。2.如权利要求1所述的方法,其特征在于,所述所有的控制器接收请求消息Qr之后,还包括:所述所有的控制器均停止执行新接收到的SCSI命令,并将新接收到的SCSI命令插入到静止队列QuiesceQueue中。3.如权利要求2所述的方法,其特征在于,所述接收到所述有序命令OrderedCommand的控制器开始执行所述有序命令OrderedCommand之后,还包括:执行所述有序命令OrderedCommand完...

【专利技术属性】
技术研发人员:刘树亮
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南;41

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

1