CN106648851A - 一种多控存储中io管理的方法和装置 - Google Patents

一种多控存储中io管理的方法和装置 Download PDF

Info

Publication number
CN106648851A
CN106648851A CN201610976562.9A CN201610976562A CN106648851A CN 106648851 A CN106648851 A CN 106648851A CN 201610976562 A CN201610976562 A CN 201610976562A CN 106648851 A CN106648851 A CN 106648851A
Authority
CN
China
Prior art keywords
ioq
virtual volume
unit
plug
ioe
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.)
Pending
Application number
CN201610976562.9A
Other languages
English (en)
Inventor
刘相乐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201610976562.9A priority Critical patent/CN106648851A/zh
Publication of CN106648851A publication Critical patent/CN106648851A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种多控存储中IO管理的方法和装置,其中,该方法包括:接收上层发来的IO的请求;根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理。本申请提供的上述多控存储中IO管理的方法和装置,能够将到达存储的IO转发给其属主控制器,更方便的对读写进行控制,提高工作效率,同时提供了插件注册的功能,使得存储***的扩展性得到提高。

Description

一种多控存储中IO管理的方法和装置
技术领域
本发明属于计算机存储技术领域,尤其涉及一种多控存储中IO管理的方法和装置。
背景技术
存储软件***是由多个不同的模块组成的,所有的模块整体上是以层次的方式组成一个栈的结构。在具有多个控制器的多控存储中,每个控制器中都有这样一个栈式结构,而多控***中的存储资源都有一个属主,即这部分存储资源是由他的属主控制器所独占的,这样的目的是为了避免多个控制器对同一存储资源的竞争。但是多个控制器对外又要提供相同的存储资源,即在一个控制器中看到存储***中有多少空间的存储资源,在另一个控制器中看到的应该是相同的。因为多控存储有多个控制器,从上层传给存储***的IO可能到达不同的控制器,对某一特定的存储资源来说,这些控制器中只有一个可以对他进行读写,也就是他的属主控制器,所以要到达某一存储资源的IO如果是到达了非属主的控制器,非属主的控制器必须将IO转发给属主的控制器,由属主控制器进行读写。
发明内容
为解决上述问题,本发明提供了一种多控存储中IO管理的方法和装置,能够将到达存储的IO转发给其属主控制器,更方便的对读写进行控制,提高工作效率,同时提供了插件注册的功能,使得存储***的扩展性得到提高。
本发明提供的一种多控存储中IO管理的方法,包括:
接收上层发来的IO的请求;
根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;
如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;
判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理。
优选的,在上述多控存储中IO管理的方法中,所述调用所述route_IOQ队列的线程进行处理之后,还包括:
将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发。
优选的,在上述多控存储中IO管理的方法中,所述将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发包括:
从所述submmit_IOQ中取出IOE,将所述IOE转换成下层所能处理的IO单位;
根据所述IOE的读写属性,调用下层的读接口或写接口,向下层下发所述IOE中的IO;
调用IOE的回调函数,释放所述IOE的数据结构。
优选的,在上述多控存储中IO管理的方法中,所述调用所述route_IOQ队列的线程进行处理包括:
从所述route_IOQ中取出IO;
判断当前的所述IO所属的控制器是否有注册的插件,如果有,则从插件链表中按照优先级从高到低依次选取插件,将所述IO依次交给所述插件处理;
当所述IO被所有的插件处理完毕后,休眠所述route_IOQ,将IO添加到所述submmit_IOQ队列中。
优选的,在上述多控存储中IO管理的方法中,所述判断所述虚拟卷是否处于正常状态之后还包括:
如果所述虚拟卷处于挂起状态或者error状态,则返回错误并结束流程。
本发明提供的一种多控存储中IO管理的装置,包括设置于存储***中的多个控制器,以及与多个所述控制器连接的IO管理模块,其中,所述IO管理模块包括:
接收单元,用于接收上层发来的IO;
第一判断单元,用于根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;
第二判断单元,用于如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;
第三判断单元,用于判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理。
优选的,在上述多控存储中IO管理的装置中,还包括:
下发单元,用于将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发。
优选的,在上述多控存储中IO管理的装置中,所述下发单元包括:
转换部件,用于从所述submmit_IOQ中取出IOE,将所述IOE转换成下层所能处理的IO单位;
下发部件,用于根据所述IOE的读写属性,调用下层的读接口或写接口,向下层下发所述IOE中的IO;
释放部件,用于调用IOE的回调函数,释放所述IOE的数据结构。
优选的,在上述多控存储中IO管理的装置中,所述第三判断单元包括:
取出部件,用于从所述route_IOQ中取出IO;
判断部件,用于判断当前的所述IO所属的控制器是否有注册的插件,如果有,则从插件链表中按照优先级从高到低依次选取插件,将所述IO依次交给所述插件处理;
休眠部件,用于当所述IO被所有的插件处理完毕后,休眠所述route_IOQ,将IO添加到所述submmit_IOQ队列中。
优选的,在上述多控存储中IO管理的装置中,还包括:
返回单元,用于如果所述虚拟卷处于挂起状态或者error状态,则返回错误并结束流程。
通过上述描述可知,本发明提供的多控存储中IO管理的方法和装置,由于该方法包括:接收上层发来的IO的请求;根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理,因此能够将到达存储的IO转发给其属主控制器,更方便的对读写进行控制,提高工作效率,同时提供了插件注册的功能,使得存储***的扩展性得到提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的第一种多控存储中IO管理的方法的示意图;
图2为本申请实施例提供的第一种多控存储中IO管理的装置的示意图。
具体实施方式
多控存储是指在一个存储***中包含多个相同的控制器,每个控制器是一个单独的存储管理单位,多个控制器之间又可以相互通信,当一个控制器由于某种原因失效之后,其他控制器可以接管该控制器中的IO和存储资源,保证整个存储不会宕机,达到冗余备份的目的。而每个控制器独自占有其对应的存储资源,即一个存储资源属于某一个控制器,只能由该控制器对其进行读写,只有当该控制器失效,其他控制器接管这一控制器的存储资源以后才能对这一部分存储资源进行读写。本发明的核心思想在于提供一种多控存储中IO管理的方法和装置,能够将到达存储的IO转发给其属主控制器,更方便的对读写进行控制,提高工作效率,同时提供了插件注册的功能,使得存储***的扩展性得到提高。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供的第一种多控存储中IO管理的方法如图1所示,图1为本申请实施例提供的第一种多控存储中IO管理的方法的示意图,该方法包括如下步骤:
S1:接收上层发来的IO的请求;
具体的,各种高级功能可以以插件的形式注册到IO管理模块中,当上层IO到来时,IO管理模块根据IO的特性确定是否需要将IO转发给其他控制器以及是否需要交由插件处理。
S2:根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;
其中,虚拟卷(VLVM)用来表示一个逻辑卷,同存储资源中的逻辑卷是一一对应的。逻辑卷是存储***中的存储资源,所有的IO最后都是要对逻辑卷进行读写,每一个VLVM都有一个ID,在VLVM中包含一个链表,该链表链接了所有注册到该虚拟卷上的插件。当所述IO所属的虚拟卷不存在时,就不能进行相关的处理,结束流程。
S3:如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;
在该步骤中,能够确定出虚拟卷对应的控制器,利用控制器进行相应的操作。
S4:判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理。
其中,IOQ就是IO队列,用来存储IO,在将IO加入到route_IOQ队列中后,会唤醒该队列,调用该队列的处理线程进行操作。这种IO路由功能负责接收上层发来的IO,然后根据IO所属的虚拟卷判断该IO是否属于该控制器确定是否要进行IO转发,然后根据所属的虚拟卷中注册的插件,将IO依次发送到各个插件中执行。
通过上述描述可知,本申请实施例提供的上述第一种多控存储中IO管理的方法,由于包括:接收上层发来的IO的请求;根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理,因此能够将到达存储的IO转发给其属主控制器,更方便的对读写进行控制,提高工作效率,同时提供了插件注册的功能,使得存储***的扩展性得到提高。
本申请实施例提供的第二种多控存储中IO管理的方法,是在上述第一种多控存储中IO管理的方法的基础上,还包括如下技术特征:
所述调用所述route_IOQ队列的线程进行处理之后,还包括:
将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发。
需要说明的是,存储软件***中包含有多个模块,模块之间可能是在同一层次,也可能在不同层次。具体的,先从上层接收IO,控制IO在本层的流向,然后将本层处理完毕的IO向下层下发。submmit_IOQ也就是提交IO队列,用来向IO管理模块的下层提交在IO管理模块中处理完毕的IO。在将IO加入到submmit_IOQ队列中之后,会唤醒该队列,调用该队列的处理线程进行操作。
本申请实施例提供的第三种多控存储中IO管理的方法,是在上述第二种多控存储中IO管理的方法的基础上,还包括如下技术特征:
所述将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发包括:
从所述submmit_IOQ中取出IOE,将所述IOE转换成下层所能处理的IO单位;
根据所述IOE的读写属性,调用下层的读接口或写接口,向下层下发所述IOE中的IO;
调用IOE的回调函数,释放所述IOE的数据结构。
需要说明的是,IOE是一个IO的管理单位,用来表示一个IO,上层到来的IO都封装在这个数据结构中,IOE中有表示这个IO所属的存储资源以及读写标志等属性,包括本IO所属的卷、IO数据、读写标志、所注册的插件链表、插件数量。
本申请实施例提供的第四种多控存储中IO管理的方法,是在上述第三种多控存储中IO管理的方法的基础上,还包括如下技术特征:
所述调用所述route_IOQ队列的线程进行处理包括:
从所述route_IOQ中取出IO;
判断当前的所述IO所属的控制器是否有注册的插件,如果有,则从插件链表中按照优先级从高到低依次选取插件,将所述IO依次交给所述插件处理;
当所述IO被所有的插件处理完毕后,休眠所述route_IOQ,将IO添加到所述submmit_IOQ队列中。
需要说明的是,存储***中的很多高级特性可以做成插件的形式,当需要使用该功能时,将该插件注册到虚拟卷中。加入IO管理模块之后,***对IO的控制和监控就更加方便,不但可以方便的增加IO性能监控的插件,而且可以随时增加或减少高级功能,这些功能根据特定的环境可能需要也可能不需要,需要根据情况实时添加,具体的,这些高级功能可以插件的形式注册到IO管理模块中,操作方便。
本申请实施例提供的第五种多控存储中IO管理的方法,是在上述第一种至第四种多控存储中IO管理的方法中任一种的基础上,还包括如下技术特征:
所述判断所述虚拟卷是否处于正常状态之后还包括:
如果所述虚拟卷处于挂起状态或者error状态,则返回错误并结束流程。
在这种情况下,就不再对虚拟卷进行IO操作。
本申请实施例提供的第一种多控存储中IO管理的装置如图2所示,图2为本申请实施例提供的第一种多控存储中IO管理的装置的示意图,该装置包括设置于存储***中的多个控制器,以及与多个所述控制器连接的IO管理模块,其中,所述IO管理模块包括:
接收单元201,用于接收上层发来的IO,具体的,各种高级功能可以以插件的形式注册到IO管理模块中,当上层IO到来时,IO管理模块根据IO的特性确定是否需要将IO转发给其他控制器以及是否需要交由插件处理;
第一判断单元202,用于根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束,其中,虚拟卷(VLVM)用来表示一个逻辑卷,同存储资源中的逻辑卷是一一对应的。逻辑卷是存储***中的存储资源,所有的IO最后都是要对逻辑卷进行读写,每一个VLVM都有一个ID,在VLVM中包含一个链表,该链表链接了所有注册到该虚拟卷上的插件。当所述IO所属的虚拟卷不存在时,就不能进行相关的处理,结束流程;
第二判断单元203,用于如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器,这就能够确定出虚拟卷对应的控制器,利用控制器进行相应的操作;
第三判断单元204,用于判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理,其中,IOQ就是IO队列,用来存储IO,在将IO加入到route_IOQ队列中后,会唤醒该队列,调用该队列的处理线程进行操作。这种IO路由功能负责接收上层发来的IO,然后根据IO所属的虚拟卷判断该IO是否属于该控制器确定是否要进行IO转发,然后根据所属的虚拟卷中注册的插件,将IO依次发送到各个插件中执行。
本申请实施例提供的第二种多控存储中IO管理的装置,是在上述第一种多控存储中IO管理的装置的基础上,还包括如下技术特征:
下发单元,用于将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发。
需要说明的是,存储软件***中包含有多个模块,模块之间可能是在同一层次,也可能在不同层次。具体的,先从上层接收IO,控制IO在本层的流向,然后将本层处理完毕的IO向下层下发。submmit_IOQ也就是提交IO队列,用来向IO管理模块的下层提交在IO管理模块中处理完毕的IO。在将IO加入到submmit_IOQ队列中之后,会唤醒该队列,调用该队列的处理线程进行操作
本申请实施例提供的第三种多控存储中IO管理的装置,是在上述第二种多控存储中IO管理的装置的基础上,还包括如下技术特征:
所述下发单元包括:
转换部件,用于从所述submmit_IOQ中取出IOE,将所述IOE转换成下层所能处理的IO单位;
下发部件,用于根据所述IOE的读写属性,调用下层的读接口或写接口,向下层下发所述IOE中的IO;
释放部件,用于调用IOE的回调函数,释放所述IOE的数据结构。
需要说明的是,IOE是一个IO的管理单位,用来表示一个IO,上层到来的IO都封装在这个数据结构中,IOE中有表示这个IO所属的存储资源以及读写标志等属性,包括本IO所属的卷、IO数据、读写标志、所注册的插件链表、插件数量。
本申请实施例提供的第四种多控存储中IO管理的装置,是在上述第三种多控存储中IO管理的装置的基础上,还包括如下技术特征:
所述第三判断单元包括:
取出部件,用于从所述route_IOQ中取出IO;
判断部件,用于判断当前的所述IO所属的控制器是否有注册的插件,如果有,则从插件链表中按照优先级从高到低依次选取插件,将所述IO依次交给所述插件处理;
休眠部件,用于当所述IO被所有的插件处理完毕后,休眠所述route_IOQ,将IO添加到所述submmit_IOQ队列中。
需要说明的是,存储***中的很多高级特性可以做成插件的形式,当需要使用该功能时,将该插件注册到虚拟卷中。加入IO管理模块之后,***对IO的控制和监控就更加方便,不但可以方便的增加IO性能监控的插件,而且可以随时增加或减少高级功能,这些功能根据特定的环境可能需要也可能不需要,需要根据情况实时添加,具体的,这些高级功能可以插件的形式注册到IO管理模块中,操作方便。
本申请实施例提供的第五种多控存储中IO管理的装置,是在上述第一种至第四种多控存储中IO管理的装置中任一种的基础上,还包括如下技术特征:
返回单元,用于如果所述虚拟卷处于挂起状态或者error状态,则返回错误并结束流程。
在这种情况下,就不再对虚拟卷进行IO操作。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种多控存储中IO管理的方法,其特征在于,包括:
接收上层发来的IO的请求;
根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;
如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;
判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理。
2.根据权利要求1所述的多控存储中IO管理的方法,其特征在于,所述调用所述route_IOQ队列的线程进行处理之后,还包括:
将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发。
3.根据权利要求2所述的多控存储中IO管理的方法,其特征在于,
所述将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发包括:
从所述submmit_IOQ中取出IOE,将所述IOE转换成下层所能处理的IO单位;
根据所述IOE的读写属性,调用下层的读接口或写接口,向下层下发所述IOE中的IO;
调用IOE的回调函数,释放所述IOE的数据结构。
4.根据权利要求3所述的多控存储中IO管理的方法,其特征在于,所述调用所述route_IOQ队列的线程进行处理包括:
从所述route_IOQ中取出IO;
判断当前的所述IO所属的控制器是否有注册的插件,如果有,则从插件链表中按照优先级从高到低依次选取插件,将所述IO依次交给所述插件处理;
当所述IO被所有的插件处理完毕后,休眠所述route_IOQ,将IO添加到所述submmit_IOQ队列中。
5.根据权利要求1-4任一项所述的多控存储中IO管理的方法,其特征在于,
所述判断所述虚拟卷是否处于正常状态之后还包括:
如果所述虚拟卷处于挂起状态或者error状态,则返回错误并结束流程。
6.一种多控存储中IO管理的装置,其特征在于,包括设置于存储***中的多个控制器,以及与多个所述控制器连接的IO管理模块,其中,所述IO管理模块包括:
接收单元,用于接收上层发来的IO;
第一判断单元,用于根据所述IO的属性,判断所述IO所属的虚拟卷是否存在,如果否,则结束;
第二判断单元,用于如果是,则判断所述虚拟卷是否属于当前的控制器,如果否,则查询所述虚拟卷所属的控制器,并转发至与所述虚拟卷对应的控制器;
第三判断单元,用于判断所述虚拟卷是否处于正常状态,如果是,则将所述IO加入route_IOQ队列中,调用所述route_IOQ队列的线程进行处理。
7.根据权利要求6所述的多控存储中IO管理的装置,其特征在于,还包括:
下发单元,用于将处理完毕的所述IO加入到submmit_IOQ队列中,向下层下发。
8.根据权利要求7所述的多控存储中IO管理的装置,其特征在于,
所述下发单元包括:
转换部件,用于从所述submmit_IOQ中取出IOE,将所述IOE转换成下层所能处理的IO单位;
下发部件,用于根据所述IOE的读写属性,调用下层的读接口或写接口,向下层下发所述IOE中的IO;
释放部件,用于调用IOE的回调函数,释放所述IOE的数据结构。
9.根据权利要求8所述的多控存储中IO管理的装置,其特征在于,
所述第三判断单元包括:
取出部件,用于从所述route_IOQ中取出IO;
判断部件,用于判断当前的所述IO所属的控制器是否有注册的插件,如果有,则从插件链表中按照优先级从高到低依次选取插件,将所述IO依次交给所述插件处理;
休眠部件,用于当所述IO被所有的插件处理完毕后,休眠所述route_IOQ,将IO添加到所述submmit_IOQ队列中。
10.根据权利要求6-9任一项所述的多控存储中IO管理的装置,其特征在于,
还包括:
返回单元,用于如果所述虚拟卷处于挂起状态或者error状态,则返回错误并结束流程。
CN201610976562.9A 2016-11-07 2016-11-07 一种多控存储中io管理的方法和装置 Pending CN106648851A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610976562.9A CN106648851A (zh) 2016-11-07 2016-11-07 一种多控存储中io管理的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610976562.9A CN106648851A (zh) 2016-11-07 2016-11-07 一种多控存储中io管理的方法和装置

Publications (1)

Publication Number Publication Date
CN106648851A true CN106648851A (zh) 2017-05-10

Family

ID=58805195

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610976562.9A Pending CN106648851A (zh) 2016-11-07 2016-11-07 一种多控存储中io管理的方法和装置

Country Status (1)

Country Link
CN (1) CN106648851A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107632788A (zh) * 2017-09-26 2018-01-26 郑州云海信息技术有限公司 一种多控存储***io调度的方法及多控存储***
CN109582467A (zh) * 2018-12-18 2019-04-05 广东浪潮大数据研究有限公司 一种存储***中io请求的处理方法、***及相关装置
CN110674064A (zh) * 2019-09-05 2020-01-10 苏州浪潮智能科技有限公司 一种数据传输方法、装置、设备及计算机可读存储介质
CN111857579A (zh) * 2020-06-30 2020-10-30 广东浪潮大数据研究有限公司 一种ssd盘片控制器复位方法、***、装置及可读存储介质
CN115328564A (zh) * 2022-10-17 2022-11-11 北京卡普拉科技有限公司 一种异步输入输出线程处理器资源分配方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101470586A (zh) * 2007-12-28 2009-07-01 英业达股份有限公司 一种使用虚拟数据路由器对虚拟储存设备进行访问的方法
CN102073605A (zh) * 2010-12-27 2011-05-25 深圳市创新科信息技术有限公司 一种绕过Bio层访问磁盘驱动的存储接口的方法
CN102650932A (zh) * 2012-04-05 2012-08-29 华为技术有限公司 数据的访问方法、设备和***
CN104166634A (zh) * 2014-08-12 2014-11-26 华中科技大学 一种固态盘***中的映射表缓存管理方法
CN105009100A (zh) * 2013-11-28 2015-10-28 株式会社日立制作所 计算机***及计算机***的控制方法
CN105786666A (zh) * 2016-02-05 2016-07-20 浪潮(北京)电子信息产业有限公司 一种用于多控制器存储***的故障处理方法和***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101470586A (zh) * 2007-12-28 2009-07-01 英业达股份有限公司 一种使用虚拟数据路由器对虚拟储存设备进行访问的方法
CN102073605A (zh) * 2010-12-27 2011-05-25 深圳市创新科信息技术有限公司 一种绕过Bio层访问磁盘驱动的存储接口的方法
CN102650932A (zh) * 2012-04-05 2012-08-29 华为技术有限公司 数据的访问方法、设备和***
CN105009100A (zh) * 2013-11-28 2015-10-28 株式会社日立制作所 计算机***及计算机***的控制方法
CN104166634A (zh) * 2014-08-12 2014-11-26 华中科技大学 一种固态盘***中的映射表缓存管理方法
CN105786666A (zh) * 2016-02-05 2016-07-20 浪潮(北京)电子信息产业有限公司 一种用于多控制器存储***的故障处理方法和***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DINKAR SITARAM 等,著;: "《迁移到云端——在云计算的新世界开发应用2015年6月第1版》", 30 June 2015 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107632788A (zh) * 2017-09-26 2018-01-26 郑州云海信息技术有限公司 一种多控存储***io调度的方法及多控存储***
CN109582467A (zh) * 2018-12-18 2019-04-05 广东浪潮大数据研究有限公司 一种存储***中io请求的处理方法、***及相关装置
CN110674064A (zh) * 2019-09-05 2020-01-10 苏州浪潮智能科技有限公司 一种数据传输方法、装置、设备及计算机可读存储介质
CN111857579A (zh) * 2020-06-30 2020-10-30 广东浪潮大数据研究有限公司 一种ssd盘片控制器复位方法、***、装置及可读存储介质
CN111857579B (zh) * 2020-06-30 2024-02-09 广东浪潮大数据研究有限公司 一种ssd盘片控制器复位方法、***、装置及可读存储介质
CN115328564A (zh) * 2022-10-17 2022-11-11 北京卡普拉科技有限公司 一种异步输入输出线程处理器资源分配方法及装置
CN115328564B (zh) * 2022-10-17 2023-04-25 北京卡普拉科技有限公司 一种异步输入输出线程处理器资源分配方法及装置

Similar Documents

Publication Publication Date Title
CN106648851A (zh) 一种多控存储中io管理的方法和装置
CN106598480B (zh) 具有接口控制机制的电子***及其操作方法
JP4961481B2 (ja) シリアルアドバンストテクノロジーアタッチメント(sata)およびシリアルアタッチトスモールコンピュータシステムインターフェース(scsi)(sas)のブリッジング
US9298379B2 (en) Bi-directional data transfer within a single I/O operation
JP4871880B2 (ja) ストレージシェルフ・ルータ集積回路
US8099521B2 (en) Network interface card for use in parallel computing systems
KR102427550B1 (ko) 재구성 가능한 멀티 포트들을 구비한 PCIe 스토리지 시스템을 위한 서비스 품질을 인식하는 입출력 관리
CN101937406B (zh) 一种VxWorks操作***中实现驱动1394设备的方法和***
CN106844108B (zh) 一种数据存储方法、服务器以及存储***
CN101310262B (zh) 能使多个通信信道独立工作的集成电路
CN103562895B (zh) 通过选择性聚合相邻数据单元来便于路由
CN103838516B (zh) 一种用于多核处理器高效访问iSCSI磁盘阵列的方法及***
CN105739930B (zh) 一种存储架构及其初始化方法和数据存储方法及管理装置
CN108089822A (zh) 存储芯片的管理方法、***、设备及存储介质
CN110007877A (zh) 主机与双控存储设备间数据传输方法、装置、设备及介质
CN108667903B (zh) 数据发送方法、装置和存储介质
CN103392165A (zh) 存储***
CN103064749B (zh) 一种进程间通信方法
CN103929475B (zh) 一种以太网架构的硬盘存储***及硬盘数据操作方法
CN104572571B (zh) 用于处理消息的装置和方法
CN108985556B (zh) 流量调度的方法、装置、设备和计算机存储介质
CN112491592B (zh) 一种存储资源分组方法、***、终端及存储介质
US20060005196A1 (en) Resource allocation in a computer-based system
CN105980990A (zh) 在基于非易失性存储器的存贮设备中对信息进行路由的装置和方法
CN106997275B (zh) 缓存管理方法及使用该方法的电子装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170510

RJ01 Rejection of invention patent application after publication