CN104077198B - 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备 - Google Patents

门铃db恢复方法及装置、具有该装置的输入/输出i/o设备 Download PDF

Info

Publication number
CN104077198B
CN104077198B CN201410277494.8A CN201410277494A CN104077198B CN 104077198 B CN104077198 B CN 104077198B CN 201410277494 A CN201410277494 A CN 201410277494A CN 104077198 B CN104077198 B CN 104077198B
Authority
CN
China
Prior art keywords
doorbell
liveness
link
sequence
input
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.)
Active
Application number
CN201410277494.8A
Other languages
English (en)
Other versions
CN104077198A (zh
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.)
XFusion Digital Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410277494.8A priority Critical patent/CN104077198B/zh
Publication of CN104077198A publication Critical patent/CN104077198A/zh
Application granted granted Critical
Publication of CN104077198B publication Critical patent/CN104077198B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种门铃DB恢复方法及装置、具有该装置的输入/输出I/O设备,涉及通信领域,为确保在门铃恢复时优先恢复最需要恢复的链接,以此降低时延,提高用户使用体验而发明。所述门铃DB恢复方法,其特征在于,应用于输入/输出I/O设备,包括:当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接。本发明可用于输入/输出设备中的门铃恢复技术中。

Description

门铃DB恢复方法及装置、具有该装置的输入/输出I/O设备
技术领域
本发明涉及通信领域,尤其涉及一种门铃DB恢复方法及装置、具有该装置的输入/输出I/O设备。
背景技术
以往,在高速低时延的输入/输出(Input/Output,以下称为输入/输出I/O)设备中,允许应用程序直接与输入/输出I/O设备交互而不需要陷入内核。在这种情况下,输入/输出I/O设备需要为应用程序提供交互实例,以便该应用程序通过该交互实例来与输入/输出I/O设备交互。其中,门铃(Doorbell,下称门铃DB)是用于供应用程序与输入/输出I/O设备交互所普遍采用的一个实例。在门铃DB作为交互实例的情况下,输入/输出I/O设备响应门铃DB后,需要读取应用程序下发的工作队列元素(Work Queue Element,下称工作队列元素WQE)并组装报文发送。由于硬件处理能力有限,而应用程序有时会下发大量的工作队列元素WQE,因此,一般使用一个存储装置(例如先进先出(First In First Out,下称先进先出FIFO)存储器)将不能及时处理的门铃DB暂存起来。但是,随着处理器的处理能力越来越强,应用程序提交给硬件的任务变得更多且更快,硬件的处理能力有时不足以匹配应用程序下发任务的速度,从而导致用于存储门铃DB的存储装置溢出而导致门铃DB丢失,进而导致工作队列元素WQE得不到及时处理甚至得不到处理。
对此,现有技术提出了如下门铃DB恢复技术,以便在门铃DB的存储装置溢出而导致门铃DB丢失的情况下,对丢失的门铃DB予以恢复,以此恢复门铃DB所链接的工作队列元素WQE。
在现有技术中,如图1所示,针对门铃DB的存储装置、即门铃先进先出寄存器DBFIFO101设置L1、L2、L3这样的多个水线,并以L1表示“门铃DB快空”,L2表示“门铃DB快满”,L3表示“门铃DB溢出”。其中,当达到表示“门铃DB溢出”的水线L3时,上报一个中断。由于软件可通过一个数据结构(例如树结构)来记录所有激活的链接,因此,在检测到该中断后,软件对应于水线L3的情况,关闭所有链接的门铃DB开关,并在随机延迟一段时间后,遍历上述记录激活链接的数据结构,从而为每一个链接重新设置一次门铃DB。
在该技术中,由软件处理DB溢出的恢复流程,以便在发生门铃DB溢出时,通过软件重新设置门铃DB来再次触发硬件的处理流程,以此实现门铃DB的恢复。
但是,如上所述,现有技术虽然能够通过检测门铃DB溢出以重新设置门铃DB,使得这部分门铃DB得以恢复,但是,由于每个门铃DB对应的链接对时延影响是不同的,如果首先恢复的门铃DB是对时延影响较小的链接,则不利于减少时延,甚至会导致时延陡涨,从而用户使用体验不佳。
发明内容
本发明的实施例提供一种门铃恢复方法及装置、具有该装置的输入输出设备,用于确保在门铃恢复时优先恢复最需要恢复的链接,以此降低时延,提高用户使用体验。
本发明的第一方面,提供一种门铃DB恢复方法,其应用于输入/输出I/O设备,包括:当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接;其中,所述链接的活跃度反映该链接的任务繁忙程度。
在本发明的第一方面的第一种可能的实现方式中,所述当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序,包括:当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频率越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频率反映所述门铃DB在单位时间内的设置次数。
结合本发明的第一方面的第一种可能的实现方式,在本发明的第一方面的第二种可能的实现方式中,所述当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB设置的频率越多则所述门铃DB所对应的链接的活跃度的排序越高,包括:当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计单位时间内的所述门铃DB的设置次数,并将所述统计的门铃DB的设置次数记录在存储器中;以及从所述存储器中读取所述单位时间内的所述门铃DB的设置次数,将所述读取的所述单位时间内的门铃DB的设置次数作为所述设置频率,以设置频率越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
在本发明的第一方面的第三种可能的实现方式中,所述当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序,包括:当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频次反映所述门铃DB在两个相邻采样周期的设置次数之差,其中,所述采样周期是指针对所述门铃DB的设置次数进行采样的期间。
结合本发明的第一方面的第三种可能的实现方式,在本发明的第一方面的第四种可能的实现方式中,所述当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,包括:当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计两个相邻所述采样周期的所述门铃DB的设置次数,将所述两个相邻所述采样周期的门铃DB的设置次数记录在存储器中;以及从所述存储器中读取所述两个相邻所述采样周期的门铃DB的设置次数,将所述读取的两个相邻所述采样周期的门铃DB的设置次数之差作为该期间的门铃DB的设置频次,以设置频次越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
在本发明的第一方面的第五种可能的实现方式中,所述当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接,包括:轮询门铃DB的溢出标志,根据所述门铃DB溢出标志,从所述链接的活跃度的排序中取得排序高的链接,确认所述排序高的链接的门铃DB是否丢弃,当确认所述排序高的链接的门铃DB被丢弃时,优先恢复所述排序高的链接的门铃DB。
本发明的第二方面,提供一种门铃DB恢复装置,其应用于输入/输出I/O设备,包括:活跃度排序单元,当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及链接恢复单元,与所述活跃度排序单元连接,当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述活跃度排序单元获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接,其中,所述链接的活跃度反映该链接的任务繁忙程度。
在本发明的第二方面的第一种可能的实现方式中,所述活跃度排序单元当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频率越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频率反映所述门铃DB在单位时间内的设置次数。
结合本发明的第二方面的第一种可能的实现方式,在本发明的第二方面的第二种可能的实现方式中,所述活跃度排序单元包括:第一门铃DB设置次数记录模块,当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计单位时间内的所述门铃DB的设置频率,将所述统计的门铃DB的设置频率记录在存储器中;以及第一记录表生成模块,与所述存储器连接,从所述存储器中读取所述单位时间内的所述门铃DB的设置次数,将所述读取的所述单位时间内的门铃DB的设置次数作为所述设置频率,以设置频率越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
在本发明的第二方面的第三种可能的实现方式中,所述活跃度排序单元当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频次反映所述门铃DB在两个相邻采样周期的设置次数之差,其中,所述采样周期是指针对所述门铃DB的设置次数进行采样的期间。
结合本发明的第二方面的第三种可能的实现方式,在本发明的第二方面的第四种可能的实现方式中,所述活跃度排序单元包括:第二门铃DB设置次数记录模块,当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计两个相邻所述采样周期的所述门铃DB的设置次数,将所述两个相邻所述采样周期的门铃DB的设置次数记录在存储器中;以及第二记录表生成模块,从所述存储器中读取所述两个相邻所述采样周期的门铃DB的设置次数,将所述读取的两个相邻所述采样周期的门铃DB的设置次数之差作为该期间的门铃DB的设置频次,以设置频次越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
在本发明的第二方面的第五种可能的实现方式中,所述链接恢复单元轮询门铃DB的溢出标志,根据所述门铃DB溢出标志,从所述链接的活跃度的排序中取得排序高的链接,确认所述排序高的链接的门铃DB是否丢弃,当确认所述排序高的链接的门铃DB被丢弃时,优先恢复所述排序高的链接的门铃DB。
本发明的第三方面,提供一种输入/输出I/O设备,其具有本发明第二方面至本发明第二方面的第五种可能的实现方式中任一实现方式所述的门铃DB恢复装置。
本发明实施例提供的门铃DB恢复方法及装置、具有该装置的输入输出设备,通过获得门铃DB所对应的链接的活跃度的排序,利用活跃度的排序高表示在该期间内该链接任务较为繁忙的这一特性,减少了由于对这部分门铃DB响应不及所导致的时延陡涨的问题,对此,本发明通过利用该排序来优先恢复所述活跃度的排序高的链接,由此能够有效确保在门铃恢复时优先恢复对时延影响较大的链接,以此降低时延,提高用户使用体验。
附图说明
图1为现有技术提供的门铃DB恢复技术中门铃先进先出寄存器DBFIFO的水线的示意图;
图2为作为本发明一种具体实施例的输入/输出I/O设备在系统中的示意图;
图3为图2所示的输入/输出I/O设备的一种具体框图;
图4为用于说明本发明实施例的门铃DB溢出时的恢复处理的示意图;
图5为本发明实施方式提供的门铃DB恢复方法的流程图;
图6为图5所示的门铃DB恢复方法的一种具体流程图;
图7为图5所示的门铃DB恢复方法的另一种具体流程图;
图8为本发明实施方式提供的门铃DB恢复方法的一个具体实施例的流程图;
图9为本发明实施方式提供的门铃DB恢复方法的一个更具体的实施例的流程图;
图10为本发明实施例提供的一种门铃DB恢复装置的结构框图;
图11为图10所示的门铃DB恢复装置中的活跃度排序单元的结构框图;
图12为本发明实施例提供的另一种门铃DB恢复装置的结构框图;
图13为图12所示的门铃DB恢复装置中的活跃度排序单元的结构框图;
图14为本发明实施例的输入/输出I/O设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先,本发明实施例提供一种门铃恢复方法。以下通过具体的实施例对本发明实施例提供的门铃恢复方法进行详细说明。
在如背景技术所提出的作为现有技术的输入/输出I/O设备中,由于其在对丢失的门铃DB进行恢复时,是通过一个恢复引擎无区别的恢复所有链接。由于每个门铃DB对应的链接对时延影响是不同的,如果首先恢复的门铃DB是对时延影响较小的链接,则不利于减少时延,甚至会导致时延陡涨,从而用户使用体验不佳。
针对上述背景技术所存在的问题,本申请提供一种门铃DB恢复方法,其应用于输入/输出I/O设备,包括:当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接;其中,所述链接的活跃度反映该链接在单位时间内的繁忙程度。
本发明实施例的主要原理在于,在本发明实施例提供的门铃DB恢复方法及装置、具有该装置的输入/输出I/O设备中,通过获得门铃DB所对应的链接的活跃度的排序,利用活跃度的排序高表示在该期间内该链接任务较为繁忙的这一特性,减少了由于对这部分门铃DB响应不及所导致的时延陡涨的问题,对此,本发明通过利用该排序来优先恢复所述活跃度的排序高的链接,由此能够有效确保在门铃恢复时优先恢复对时延影响较大的链接,以此降低时延,提高用户使用体验。
需要解释说明的是,就目前的高速低时延的输入/输出I/O设备而言,传统技术为应用程序提供交互实例的主要工作流程如下:应用程序向主机内存中相应的工作队列WQ写入工作请求WR,之后应用程序设置一个门铃DB寄存器来通知硬件,以便从工作队列WQ中读取工作队列元素WQE,这里的硬件一般利用一个直接内存访问、即DMA引擎。在支持远程直接内存访问RDMA的网卡里,一般一个收发队列对QP对应一个链接。因此,对于与传统技术相同的内容,以下不再赘述。
作为本发明实施例的一个具体应用场景的示例,如图2所示,在该实施例中,采用主机通道适配器HCA3作为输入/输出I/O设备,其被作为主机与外部网络W之间的通信接口卡使用,并与用于I/O总线之间的通信的芯片组2连接,以此实现主机与外部网络W之间的通信。主机的中央处理器CPU1可与该芯片组2连接并对其予以控制。此外,主机可通过芯片组2对主机内存4进行访问,以从该主机内存4中读取或向该主机内存4中写入数据。
更具体地,如图3及图4所示,在主机通道适配器HCA3中设置门铃先进先出寄存器DB FIFO31,用于对门铃DB进行存储。具体而言,当应用程序从主机内存侧NC向主机通道适配器侧ZC下发大量的工作队列元素WQE时,主机通道适配器HCA3即可将无法及时处理的工作队列元素WQE所对应的门铃DB暂存在门铃先进先出寄存器DB FIFO31中。为了及时处理这些暂存的门铃DB,在主机通道适配器侧ZC内置一个位图记录表E,在该位图记录表E中,能够采用归并记录的方式用1位记录多个链接的门铃DB丢失状况。在门铃先进先出寄存器DBFIFO已满的情况下:首先,根据该门铃先进先出寄存器DB FIFO中的门铃DB所携带的链接信息来设置位图记录表中的位;接着,在对应位的记录完成后,把在位图记录表中记录了的这部分门铃DB从门铃先进先出寄存器DB FIFO中移除,并同时为门铃先进先出寄存器DB FIFO设置一个门铃DB溢出的标志,以反映门铃DB即将溢出;之后,通过内置于主机通道适配器侧ZC的查找模块CM,检测是否存在上述门铃DB溢出的标志,在检测到门铃DB溢出的标志的情况下即判断为门铃DB发生溢出;接下来,在判断为门铃DB发生溢出后,轮询上述位图记录表中的每一位。当轮询到置位的位时,读取这一位所对应的多个链接的上下文,该情况下,进一步通过内置于主机通道适配器侧ZC的恢复模块,来根据队列对QP中对应于链接的队列对的上下文QPC来确定该链接是否确有门铃DB丢失,如果该恢复模块确定为确实存在门铃DB的丢失,则把该链接重新加入到门铃先进先出寄存器DB FIFO中;最后,门铃先进先出寄存器DB FIFO中暂存的门铃DB通过DB处理引擎DBE予以处理。
下面,结合图5,对本实施例提供的门铃DB恢复方法进行说明。本实施例的门铃DB恢复方法包括以下步骤11及步骤12。
步骤11,当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序。
其中,举例而言,本发明实施例的输入/输出I/O设备例如可以是主机通道适配器HCA。当然,上述关于输入/输出I/O设备的举例仅为了便于理解,本发明实施例不限于此,例如,还可以是RDMA网络接口卡RNIC等其他高速低时延的通信设备。在这些通信设备中,存储在主机内存中的应用程序在运行过程中,需要频繁地与硬件(输入/输出I/O设备)交互,而在本发明实施例中,需要取得应用程序与输入/输出I/O设备的交互时所使用门铃DB对应的链接的活跃度的排序。需要说明的是,这里活跃度反映了该链接在单位时间内的繁忙程度,活跃度越高则意味着链接在该该段时间越为繁忙。另外,这里的门铃DB是用于应用程序与硬件之间进行交互的一个实例,其可以是控制寄存器。另外,门铃DB产生的时机如下:应用程序首先向主机内存中相应的工作队列WQ写入工作请求WR,并同时产生门铃DB,用来通知硬件从工作队列WQ中读取工作队列元素WQE。其中,一个收发队列对QP可以对应一个链接,也可以对应多个链接,本发明实施例对此不做限定。
上述获得用于应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序包括多种方式,例如,将单位时间内出现频率高的链接视为活跃度高,从而依照该活跃度的高低,取得与其对应的排序。上述定义活跃度高低的理由是,链接在某一单位时间内出现频率较高,代表在这一时段其使用更为频繁,如果得不到及时处理,则会导致时延陡涨;反之,这部分活跃度高的链接如果被优先处理,则可大大减少因链接处理不及时所导致的时延。
举例而言,在本发明的一个具体实施例中,所述当应用程序与输入/输出I/O设备交互时,获得用于应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序,包括:当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频率越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频率反映所述门铃DB在单位时间内的设置次数。
如上所述,在该实施例中,用门铃DB的设置频率来表示门铃DB所对应的链接的活跃度,从而依据链接的活跃度的不同,优先恢复活跃度较高的链接,因此,进一步减少了传统技术中由于对所有链接一视同仁地进行恢复,所造成的对时延影响较大的链接未及时恢复而恢复了影响不大的链接的情况,由此,能够减少时延,提高用户使用时的实际应用体验。
进一步的,如图6所示,在本发明的上述具体实施例中,可以包括如下步骤1111及步骤1112。
步骤1111,当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计单位时间内的所述门铃DB的设置次数,并将所述统计的门铃DB的设置次数记录在存储器中。
在该进一步的具体实施方式中,统计单位时间内的门铃DB的设置次数并将统计的门铃DB的设置次数记录在存储器中,以备后续步骤从存储器中读取使用。但是,本发明对门铃DB的设置次数的记录方式不限于此,例如可以在输入/输出I/O设备中独立设置用于存储门铃DB的设置次数的寄存器等,只要能够实现对门铃DB的设置次数的记录即可,本发明实施例对此并不限制。
步骤1112,从所述存储器中读取所述单位时间内的所述门铃DB的设置次数,将所述读取的所述单位时间内的门铃DB的设置次数作为所述设置频率,以设置频率越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
其中,与步骤1111相应地,读取预先存储在存储器中的单位时间内的门铃DB的设置次数,在得到该设置次数后,即可将该设置次数视为单位时间内门铃DB的设置频率,从而能够根据该设置频率的高低对链接的活跃度进行排序,将设置频率较高的门铃DB所对应的链接排在前面,以使其得到优先处理。
由此,该进一步的具体实施例通过利用现有的存储器来存储门铃DB的设置次数,并根据门铃DB的设置次数对其对应的链接的活跃度进行排序,由此实现对活跃度排序高的链接的优先恢复,减少了时延陡涨的情况,提高用户使用时的实际应用体验。
但是,获得用于应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序的方式不限于上述基于门铃DB的设置频率的方式,具体而言,在本发明的一个具体实施例中,所述当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序,包括:当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频次反映所述门铃DB在两个相邻采样周期的设置次数之差,其中,所述采样周期是指针对所述门铃DB的设置次数进行采样的期间。
对于该设置方式中与上述相同的部分,由于上述实施例已经说明,因此这里不再赘述。下面仅对与上述实施例不同之处予以具体说明。
其中,在该具体的实施例中,基于门铃DB的设置频次来判断该门铃DB所对应的链接的活跃度,由于设置频次反映了述门铃DB在两个相邻采样周期的设置次数之差,因此,当这两个采样周期的设置次数的差值较大时,即意味着该链接在这期间任务变得更为繁忙,任务频率更高,相应地,其对于时延的影响更大。由此,门铃DB的设置频次越高则其对应的链接的活跃度的排序越高,意味着该链接较为活跃;反之,门铃DB的设置频次越低则其对应的链接的活跃度的排序越低,意味着该链接较不活跃。
如上所述,门铃DB的设置频次反应了其对应链接的在该期间的频率的上升或下降趋势,频次越高则意味着链接越活跃,由此,能够减少时延,提高用户使用时的实际应用体验。
进一步的,如图7所示,在本发明的上述具体实施例中,可以包括如下步骤1111’及步骤1112’。
步骤1111’,当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计两个相邻所述采样周期的所述门铃DB的设置次数,将所述两个相邻所述采样周期的门铃DB的设置次数记录在存储器中。
在该进一步的具体实施方式中,统计门铃DB的设置次数并记录在存储器中,以备后续使用。但是,本发明对门铃DB的设置次数的记录方式不限于此,例如,同样可以在输入/输出I/O设备中独立设置用于存储门铃DB的设置次数的寄存器等,只要能够实现对门铃DB的设置次数的记录即可,本发明实施例对此并不限制。
这里,通过对相邻的两个采样周期的门铃DB的设置次数进行采样的方式,实现了定时对门铃DB统计进行采样,以此获得单位时间内所有链接的门铃DB的设置次数。尤其是,在该具体实施方式中,对两个相邻采样周期的门铃DB的设置次数进行采样,能够通过采样对门铃DB的设置情况进行更及时、准确地统计。
步骤1112’,从所述存储器中读取所述两个相邻所述采样周期的门铃DB的设置次数,将所述读取的两个相邻所述采样周期的门铃DB的设置次数之差作为该期间的门铃DB的设置频次,以设置频次越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
其中,与步骤1111’相应地,通过读取预先存储在存储器中的门铃DB的设置次数,并由此获得作为门铃DB的设置次数之差的设置频次,从而可根据该设置频次的多少对链接的活跃度进行排序,将设置次数较多的门铃DB所对应的链接排在前面,以使其得到优先处理。
由此,该进一步的具体实施例通过利用现有的存储器来存储门铃DB的设置次数,并根据基于该门铃DB的设置次数的设置频率对其对应的链接的活跃度进行排序,由此实现对活跃度排序高的链接的优先恢复,减少了时延陡涨的情况,提高用户使用时的实际应用体验。
步骤12,当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接。
其中,由于门铃DB存储器本身的存储能力有限,当需要存储的门铃DB过多而超出其存储能力时,超出部分的门铃DB就会发生溢出。在该情况下,为了使溢出部分的门铃DB对应的链接得到执行,需要对这部分门铃DB予以恢复,但是,如果恢复顺序不当,则容易形成时延增加的情况。因此,在本发明该实施例中,通过优先恢复活跃度的排序高的链接,来以此减少时延。
因此,本发明实施例提供的门铃DB恢复方法,通过获得门铃DB所对应的链接的活跃度的排序,利用活跃度的排序高表示在该期间内该链接任务较为繁忙的这一特性,减少了由于对这部分门铃DB响应不及所导致的时延陡涨的问题,对此,本发明通过利用该排序来优先恢复所述活跃度的排序高的链接,由此能够有效确保在门铃恢复时优先恢复对时延影响较大的链接,以此降低时延,提高用户使用体验。
在本发明的一个具体实施例中,所述当输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据获得的所述链接的活跃度的排序,优先恢复活跃度的排序高的链接,包括:轮询门铃DB的溢出标志,根据所述门铃DB溢出标志,从所述链接的活跃度的排序中取得排序高的链接,确认所述排序高的链接的门铃DB是否丢弃,当确认所述排序高的链接的门铃DB被丢弃时,优先恢复所述排序高的链接的门铃DB。
其中,在该实施例中,通过在门铃DB存储器发生溢出时,对门铃DB的溢出标志进行轮询检测,并在轮询检测到该溢出标志时,首先取得排序高的链接,并进一步确认该排序高的链接的门铃DB是否丢弃,当确认该门铃DB丢弃时对其予以恢复。
通过该实施例,其分别利用溢出标志来表示溢出、以及利用活跃度排序得到活跃度高的链接,在此基础上,首先确定活跃度高的链接的门铃DB是否丢弃,由此确保了在门铃DB的恢复过程中,减少了活跃度不高的链接的门铃DB被首先恢复、或者活跃度高的链接未被丢弃而反复执行的情况,由此可大大减少由此产生的时延,提高用户体验。
当然,可以理解的是,检测门铃DB存储器的溢出及恢复活跃度的排序高的链接的方式不限于上述实施例,还可以采用如下方式,例如:当门铃DB存储器溢出时,不形成溢出标志而是直接对溢出部分的门铃DB所对应的链接的活跃度予以确定,在确定了这些链接的活跃度后,直接按照这些链接的活跃度的排序予以恢复,即优先恢复活跃度的排序高的链接。
下面,通过一个更具体的实施例对本发明的门铃DB恢复方法进行说明。
如图8所示,该实施例的主流程与上述实施例相同。
首先,在步骤101中获得门铃DB所对应的链接的活跃度的排序:当应用程序与所述输入/输出I/O设备交互时,根据门铃DB所对应的链接统计两个相邻采样周期的所门铃DB的设置次数,记录两个相邻所述采样周期的门铃DB的设置次数。
其中,为了存储该步骤101中所述门铃DB的设置次数,首先,可通过软件、例如适配卡驱动软件为用于存储与活跃度相关的数据的活跃度数据库分配用于存储的内存,并把对应的地址告知硬件,以便硬件按照该地址记录与活跃度相关的数据。在本实施例中,与活跃度相关的数据即按照预先分配的内存地址来记录门铃DB的设置次数。
这里,在软件运行而构造了工作队列元素WQE后,设置门铃DB寄存器,硬件把门铃DB寄存器暂存于门铃先进先出寄存器DB FIFO。由此,可根据门铃先进先出寄存器DB FIFO中的门铃DB记录进行处理,以便在活跃度数据库中存储门铃DB的设置次数。
更具体而言,该步骤的子流程如图9所示,该子流程用于以预定的采样周期定时采样门铃DB的设置次数,从而根据门铃DB设置次数生成活跃度记录。首先,如步骤1011所示,判断采样周期是否到来,并在每到一个采样周期到来时开始采样。在本实施例中,在采样时,将前一个采样周期的门铃DB统计数据记录为t0时刻的门铃DB统计数据,把最新的采样数据记录为t1时刻的采样数据。在该前提下,如步骤1012所示,在第一次采样时,t0时刻的数据为空,此时,将作为当前t1时刻的采样数据的门铃DB统计表更新为t0时刻门铃DB统计表。接下来,如步骤1013所示,在下一个采样周期,把最新的门铃DB统计更新为t1时刻门铃DB统计表。在步骤1014中,判断t0时刻的数据是否为空,即是否存在预存的门铃DB统计表。如果t0时刻的数据为空,则返回步骤1011,继续检测采样周期的到来,以便在下一个周期开始计算活跃度。反之,如果t0时刻的数据非空,即判断为并非是第一次采样,则开始计算活跃度。如步骤1015所示,当计算活跃度时,以t1时刻和t0时刻的采样数据的差值,在本实施例中即采用t1时刻门铃DB的设置次数与t0时刻门铃DB的设置次数的差值作为链接的活跃度。之后,在步骤1016中,对链接的活跃度进行排序。在排序完成后,通过在步骤1017中判断活跃度表是否为空闲状态,当活跃度表为空闲状态时,则如步骤1018所示那样,将最活跃的前n个链接更新到活跃度表,使活跃度表成为更新状态;反之,返回步骤1017,继续判断活跃度表是否为空闲状态,最后,如步骤1019所示,设置活跃度表为空闲状态,以等待下一个采样周期的到来,并依此更新活跃度表。
接下来,如步骤102所示,输入/输出I/O设备通过对存储所述门铃DB的门铃DB存储器的溢出进行检测,例如检测门铃DB存储器的溢出标志,作为门铃DB存储器的溢出标志的一种,在本发明实施例中采用如下方式:当门铃先进先出寄存器DB FIFO已满时,丢弃门铃先进先出寄存器DB FIFO中的部分门铃DB记录,把这些丢弃的记录记录于门铃DB丢弃记录表,然后设置门铃DB丢弃标志位。之后,通过轮询该门铃DB丢弃标志,来判断是否门铃DB存储器发生了溢出。
最后,如步骤103所示,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接。作为一个示例,在本发明实施例中,在轮询到该门铃DB丢弃标志后,查询上述活跃度表的状态,如果该活跃度表为空,表示当前无最新的活跃度数据,则使用门铃DB丢弃记录表中的记录恢复门铃DB。反之,如果活跃度表非空,则设置活跃度表为使用状态,开始根据活跃度表中的记录恢复门铃DB。此时,在处理完活跃度表中的一条记录后,继续从活跃度表中取第二条记录执行,直至活跃度表为空。当活跃度表为空时,释放活跃度表的使用状态,设置活跃度表的状态为空闲。在上述动作完成后,轮询门铃DB丢弃记录表,进而根据门铃DB丢弃记录表恢复丢弃的门铃DB。
与上述门铃DB恢复方法对应地,本发明还提供一种门铃DB恢复装置11,其应用于输入/输出I/O设备,如图10所示,包括:
活跃度排序单元101,当应用程序与输入/输出I/O设备交互时,获得用于该应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及链接恢复单元102,与活跃度排序单元101连接,当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述活跃度排序单元获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接,这里,所述链接的活跃度反映该链接的任务繁忙程度。
其中,在本发明的一个具体实施方式中,活跃度排序单元101当应用程序与该输入/输出I/O设备交互时,可以根据门铃DB的设置频率获得该门铃DB所对应的链接的活跃度的排序,门铃DB的设置频率越高则门铃DB所对应的链接的活跃度的排序越高,这里的设置频率反映门铃DB在单位时间内的设置次数。
如图11所示,在这种基于门铃DB的设置频率获得活跃度排序的活跃度排序单元101中,包括:第一门铃DB设置次数记录模块1011,当应用程序与该输入/输出I/O设备交互时,根据门铃DB所对应的链接统计单位时间内的门铃DB的设置频率,将统计的门铃DB的设置频率记录在门铃DB设置频率存储模块1013(相当于存储器)中;以及第一记录表生成模块1012,与门铃DB设置频率存储模块1013连接,从存储器中读取单位时间内的门铃DB的设置次数,将读取的所述单位时间内的门铃DB的设置次数作为设置频率,以设置频率越高排序越高的方式对门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
如图12所示,在作为本发明的另一种具体实施方式的门铃DB恢复装置11’中,活跃度排序单元101’当应用程序与该输入/输出I/O设备交互时,根据门铃DB的设置频次获得门铃DB所对应的链接的活跃度的排序,门铃DB的设置频次越高则门铃DB所对应的链接的活跃度的排序越高,设置频次反映门铃DB在两个相邻采样周期的设置次数之差,其中,采样周期是指针对门铃DB的设置次数进行采样的期间。
如图13所示,在这种基于门铃DB的设置频次获得活跃度排序的活跃度排序单元101’中,包括:第二门铃DB设置次数记录模块1011’,当应用程序与该输入/输出I/O设备交互时,根据门铃DB所对应的链接统计两个相邻采样周期的门铃DB的设置次数,将两个相邻所述采样周期的门铃DB的设置次数记录在门铃DB设置次数存储模块1013’(相当于存储器)中;以及第二记录表生成模块1012’,与存储器连接,从该门铃DB设置次数存储模块1013’中读取两个相邻采样周期的门铃DB的设置次数,将读取的两个相邻采样周期的门铃DB的设置次数之差作为该期间的门铃DB的设置频次,以设置频次越高排序越高的方式对门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
具体而言,在上述门铃DB恢复装置中,当链接恢复单元102需要优先恢复所述活跃度的排序高的链接时,可以采用如下方式:轮询门铃DB的溢出标志,根据门铃DB溢出标志,从链接的活跃度的排序中取得排序高的链接,确认排序高的链接的门铃DB是否丢弃,当确认该排序高的链接的门铃DB被丢弃时,优先恢复该排序高的链接的门铃DB。
可以理解的是,上述门铃DB恢复装置可以安装于输入/输出I/O设备中使用,输入/输出I/O设备例如上面描述的主机通道适配器HCA,但不限于此,还包括RDMA网络接口卡RNIC等其他具有供数据输入输出作用的通信设备,本发明实施例对此不作限定。
如图14所示,该图示例了作为输入/输出I/O设备的RDMA网络接口卡RNIC的一种,其中,中央处理器CPU1作为该网络接口卡的处理核心,与外围功能模块的动态随机存储器SDRAM2及闪存FLASH3分别连接,用于处理在数据交互时的数据的存取,其供电由电源4供给。其中,动态随机存储器SDRAM2是操作系统、应用程序运行和一些数据缓存的空间;闪存FLASH存储器3用于存放启动程序的文件、操作系统以及应用程序。复位RESERT电路5可通过手动按钮形成低电平复位信号,以对整个设备进行复位。接口6与主机的总线连接,用于与主机进行交互;天线7用于与外部网络W进行数据交互。此外,为了稳定工作,该网络接口卡中还包括滤波和稳压电容等其他器件,这里不再赘述。
在该图所示的设备中,当应用程序通过总线与接口6联系,请求与网络接口卡进行交互时,中央处理器CPU1命令包括动态随机存储器SDRAM2及闪存FLASH存储器3在内的存储器,在存储这些门铃BD的同时,还存储该应用程序所形成的各个门铃DB对应链接的次数,从而中央处理器CPU1通过在每个周期对这些门铃DB对应链接的次数进行统计计算,以此获得用于应用程序与网络接口卡的交互的门铃DB所对应的链接的活跃度的排序,并将其存储在存储器中,当网络接口卡中的存储器由于存储了大量的门铃DB而发生溢出时,中央处理器CPU1确定该溢出的发生,并从存储器中读取已经上个周期的存储在存储器内的溢出部分的门铃DB所对应的链接的活跃度的排序,从而能够基于该排序,优先将活跃度的排序高的链接恢复到存储器当中。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (13)

1.一种门铃DB恢复方法,其特征在于,应用于输入/输出I/O设备,包括:
当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与所述输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及
当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接对应的门铃DB;
其中,所述链接的活跃度反映该链接的任务繁忙程度。
2.根据权利要求1所述的门铃DB恢复方法,其特征在于,
所述当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序,包括:
当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频率越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频率反映所述门铃DB在单位时间内的设置次数。
3.根据权利要求2所述的门铃DB恢复方法,其特征在于,
所述当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB设置的频率越高则所述门铃DB所对应的链接的活跃度的排序越高,包括:
当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计单位时间内的所述门铃DB的设置次数,并将所述统计的门铃DB的设置次数记录在存储器中;以及
从所述存储器中读取所述单位时间内的所述门铃DB的设置次数,将所述读取的所述单位时间内的门铃DB的设置次数作为所述设置频率,以设置频率越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
4.根据权利要求1所述的门铃DB恢复方法,其特征在于,
所述当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序,包括:
当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频次反映所述门铃DB在两个相邻采样周期的设置次数之差,
其中,所述采样周期是指针对所述门铃DB的设置次数进行采样的期间。
5.根据权利要求4所述的门铃DB恢复方法,其特征在于,
所述当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,包括:
当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计两个相邻所述采样周期的所述门铃DB的设置次数,将所述两个相邻所述采样周期的门铃DB的设置次数记录在存储器中;以及
从所述存储器中读取所述两个相邻所述采样周期的门铃DB的设置次数,将所述读取的两个相邻所述采样周期的门铃DB的设置次数之差作为两个相邻采样周期的门铃DB的设置频次,以设置频次越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
6.根据权利要求1所述的门铃DB恢复方法,其特征在于,
所述当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接对应的门铃DB,包括:
轮询门铃DB的溢出标志,根据所述门铃DB溢出标志,从所述链接的活跃度的排序中取得排序高的链接,确认所述排序高的链接的门铃DB是否丢弃,当确认所述排序高的链接的门铃DB被丢弃时,优先恢复所述排序高的链接的门铃DB。
7.一种门铃DB恢复装置,其特征在于,应用于输入/输出I/O设备,包括:
活跃度排序单元,当应用程序与所述输入/输出I/O设备交互时,获得用于所述应用程序与输入/输出I/O设备的交互的门铃DB所对应的链接的活跃度的排序;以及
链接恢复单元,与所述活跃度排序单元连接,当所述输入/输出I/O设备中用于存储所述门铃DB的门铃DB存储器发生溢出时,根据所述活跃度排序单元获得的所述链接的活跃度的排序,优先恢复所述活跃度的排序高的链接对应的门铃DB,
其中,所述链接的活跃度反映该链接的任务繁忙程度。
8.根据权利要求7所述的门铃DB恢复装置,其特征在于,
所述活跃度排序单元当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频率获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频率越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频率反映所述门铃DB在单位时间内的设置次数。
9.根据权利要求8所述的门铃DB恢复装置,其特征在于,
所述活跃度排序单元包括:
第一门铃DB设置次数记录模块,当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计单位时间内的所述门铃DB的设置次数,将所述统计的门铃DB的设置次数记录在存储器中;以及
第一记录表生成模块,与所述存储器连接,从所述存储器中读取所述单位时间内的所述门铃DB的设置次数,将所述读取的所述单位时间内的门铃DB的设置次数作为所述设置频率,以设置频率越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
10.根据权利要求7所述的门铃DB恢复装置,其特征在于,
所述活跃度排序单元当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB的设置频次获得所述门铃DB所对应的链接的活跃度的排序,所述门铃DB的设置频次越高则所述门铃DB所对应的链接的活跃度的排序越高,所述设置频次反映所述门铃DB在两个相邻采样周期的设置次数之差,
其中,所述采样周期是指针对所述门铃DB的设置次数进行采样的期间。
11.根据权利要求10所述的门铃DB恢复装置,其特征在于,
所述活跃度排序单元包括:
第二门铃DB设置次数记录模块,当应用程序与所述输入/输出I/O设备交互时,根据所述门铃DB所对应的链接统计两个相邻所述采样周期的所述门铃DB的设置次数,将所述两个相邻所述采样周期的门铃DB的设置次数记录在存储器中;以及
第二记录表生成模块,从所述存储器中读取所述两个相邻所述采样周期的门铃DB的设置次数,将所述读取的两个相邻所述采样周期的门铃DB的设置次数之差作为两个相邻采样周期的门铃DB的设置频次,以设置频次越高排序越高的方式对所述门铃DB所对应的链接的活跃度进行排序,将该排序记录为活跃度排序记录表。
12.根据权利要求7所述的门铃DB恢复装置,其特征在于,
所述链接恢复单元轮询门铃DB的溢出标志,根据所述门铃DB溢出标志,从所述链接的活跃度的排序中取得排序高的链接,确认所述排序高的链接的门铃DB是否丢弃,当确认所述排序高的链接的门铃DB被丢弃时,优先恢复所述排序高的链接的门铃DB。
13.一种输入/输出I/O设备,其特征在于,所述输入/输出I/O设备具有权利要求7至12中任一项所述的门铃DB恢复装置。
CN201410277494.8A 2014-06-19 2014-06-19 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备 Active CN104077198B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410277494.8A CN104077198B (zh) 2014-06-19 2014-06-19 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410277494.8A CN104077198B (zh) 2014-06-19 2014-06-19 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备

Publications (2)

Publication Number Publication Date
CN104077198A CN104077198A (zh) 2014-10-01
CN104077198B true CN104077198B (zh) 2017-06-06

Family

ID=51598467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410277494.8A Active CN104077198B (zh) 2014-06-19 2014-06-19 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备

Country Status (1)

Country Link
CN (1) CN104077198B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180045103A (ko) * 2016-10-24 2018-05-04 삼성전자주식회사 적응형 인터럽트를 생성하는 데이터 저장 장치 및 그것의 동작 방법
CN117729189A (zh) * 2024-02-08 2024-03-19 睿云联(厦门)网络通讯技术有限公司 基于云端分布式活跃度的sip注册限流方法及设备介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6360282B1 (en) * 1998-03-25 2002-03-19 Network Appliance, Inc. Protected control of devices by user applications in multiprogramming environments
CN101253500A (zh) * 2005-08-31 2008-08-27 国际商业机器公司 用于管理i/o的方法
CN103647807A (zh) * 2013-11-27 2014-03-19 华为技术有限公司 一种信息缓存方法、装置和通信设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7234004B2 (en) * 2003-12-19 2007-06-19 International Business Machines Corporation Method, apparatus and program product for low latency I/O adapter queuing in a computer system
WO2014209251A2 (en) * 2012-06-06 2014-12-31 Intel Corporation Recovery after input/ouput error-containment events

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6360282B1 (en) * 1998-03-25 2002-03-19 Network Appliance, Inc. Protected control of devices by user applications in multiprogramming environments
CN101253500A (zh) * 2005-08-31 2008-08-27 国际商业机器公司 用于管理i/o的方法
CN103647807A (zh) * 2013-11-27 2014-03-19 华为技术有限公司 一种信息缓存方法、装置和通信设备

Also Published As

Publication number Publication date
CN104077198A (zh) 2014-10-01

Similar Documents

Publication Publication Date Title
CA1277382C (en) Inter-processor communication protocol
CN101267361B (zh) 一种基于零拷贝技术的高速网络数据包捕获方法
KR950013120A (ko) 계산기간 통신을 위한 통신제어장치 및 그것에 사용하는 집적회로
CN102750257B (zh) 基于访问信息调度的片上多核共享存储控制器
CN105446934B (zh) 一种基于多核dsp的动目标及恒虚警检测系统
CN101344871A (zh) 一种保证访问先后顺序的总线仲裁单元及其实现方法
US20060047754A1 (en) Mailbox interface between processors
CN104077198B (zh) 门铃db恢复方法及装置、具有该装置的输入/输出i/o设备
CN107066413A (zh) 一种用于处理多个总线设备数据的方法、及其总线系统
CN104866528A (zh) 多平台数据采集方法及系统
CN100419723C (zh) 多中断的缓存装置和方法
CN105630712A (zh) 计数器及计数方法
CN109361607B (zh) 表项数据获取方法、装置及通信设备
CN103049323A (zh) 一种在fpga中实现的多中断均衡管理方法
CN103107862A (zh) 逻辑器件及其mdio数据发送方法
CN101071404A (zh) 一种小容量fifo存储器的数据搬移触发装置和方法
CN108897696B (zh) 一种基于DDRx存储器的大容量FIFO控制器
CN109151316B (zh) 一种基于fpga的多工业相机数据调度装置
CN115687012A (zh) 一种总线监测模块、监测方法和相关设备
CN109285580A (zh) 数据预处理装置、方法及异步双端随机存取存储器系统
CN103268278B (zh) 支持多核处理器的sram控制器及其跟踪信息处理方法
CN105049377B (zh) 基于Crossbar架构的AFDX交换机数据总线结构及数据交换方法
CN103217681A (zh) 一种树形拓扑机构多处理器声纳信号处理装置及方法
CN105446863A (zh) 具有记录能力的电子装置与电路状态记录方法
JPS593614A (ja) 優先順位制御方式

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20211222

Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province

Patentee after: xFusion Digital Technologies Co., Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right