一种PCIE故障注入方法及其装置及故障管理系统与流程

文档序号:12463947阅读:940来源:国知局
一种PCIE故障注入方法及其装置及故障管理系统与流程

本发明涉及故障检测技术领域,特别是涉及一种基于linux的PCIE故障注入方法及其装置。本发明还涉及一种故障管理系统。



背景技术:

计算机中的PCIE总线是作为I/O接口提供各种服务,具有高性能、高带宽的特点,可以提供网络服务、存储服务等,其可靠性是计算机系统可靠性的重要环节,一旦PCIE出现故障,会导致计算机系统不能正常工作。

为了保证当PCIE出现故障时能够及时检测并正确处理,故需要模拟PCIE可能出现的各种故障,从而确定各种故障对应的影响以及对故障对应的解决方案提供指导。

因此,如何提供一种能够解决上述问题的基于linux的PCIE故障注入方法及其装置及故障管理系统是本领域技术人员目前需要解决的问题。



技术实现要素:

本发明的目的是提供一种基于linux的PCIE故障注入方法及其装置及故障管理系统,能够模拟注入各种已知类型的故障至PCIE,供后续依据PCIE产生的故障效果进行相应的分析,为PCIE的故障处理提供指导。

为解决上述技术问题,本发明提供了一种基于linux的PCIE故障注入方法,包括:

用户态PCIE接收模块通过命令行接口获取PCIE故障类型以及对应的故障注入文件;

用户态PCIE准备模块解析所述故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;

内核态PCIE故障注入模块选定待注入的PCIE,调用用于进行故障注入的write函数拷贝所述PCIE联合体内的故障文件信息,并将拷贝的所述故障文件信息注入所述待注入的PCIE内。

优选地,所述将故障文件信息放入finj结构体中的PCIE联合体内的过程具体为:

调用finj_parse结构体内存储的PCIE相关函数,将所述故障文件信息放入finj结构体中的PCIE联合体内。

为解决上述技术问题,本发明还提供了一种基于linux的PCIE故障注入装置,包括:

用户态PCIE接收模块,用于通过命令行接口获取PCIE故障类型以及对应的故障注入文件;

用户态PCIE准备模块,用于解析所述故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;

内核态PCIE故障注入模块,用于选定待注入的PCIE,调用用于进行故障注入的write函数拷贝所述PCIE联合体内的故障文件信息,并将拷贝的所述故障文件信息注入所述待注入的PCIE内;

通信模块,用于建立所述用户态PCIE准备模块与所述内核态PCIE故障注入模块之间的通信。

优选地,所述用户态PCIE准备模块具体包括:

存放单元,用于调用finj_parse结构体内存储的PCIE相关函数,将所述将所述故障文件信息放入finj结构体中的PCIE联合体内;

注入单元,用于触发所述finj_parse结构体内存储的所述submit函数调用write函数建立与内核态中的write函数进行通信。

为解决上述技术问题,本发明还提供了一种故障管理系统,包括如以上所述的PCIE故障注入装置及后续分析模块;

所述后续分析模块,用于对注入故障后的PCIE进行故障数据分析。

优选地,还包括:

诊断模块,用于对注入故障后的PCIE进行故障诊断处理,得到诊断结果。

优选地,还包括:

收集模块,用于收集所述PCIE以及与所述PCIE连接的组件运行过程中以及运行结束后的运行数据。

本发明提供了一种基于linux的PCIE故障注入方法及其装置,预先设置PCIE可能出现的故障类型以及该类型对应的故障注入文件,在用户态获取一种PCIE的故障类型及对应的故障注入文件后,对该故障注入文件进行分析提取后拷贝至内核态内,然后注入选定的PCIE内。可见,本发明能够模拟注入已知类型的故障至PCIE,从而使得能够根据PCIE工作时产生的故障效果确定该种故障类型对PCIE以及其他组件的影响,进而为解决该种PCIE故障提供指导。本发明还提供了一种包括上述装置的故障管理系统,也具有上述优点,在此不再赘述。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种基于linux的PCIE故障注入方法的过程的流程图;

图2为本发明提供的一种基于linux的PCIE故障注入装置的结构示意图;

图3为本发明提供的一种故障管理系统的结构示意图。

具体实施方式

本发明的核心是提供一种基于linux的PCIE故障注入方法及其装置及故障管理系统,能够模拟注入各种已知类型的故障至PCIE,供后续依据PCIE产生的故障效果进行相应的分析,为PCIE的故障处理提供指导。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供了一种基于linux的PCIE故障注入方法,参见图1所示,图1为本发明提供的一种基于linux的PCIE故障注入方法的过程的流程图;该方法包括:

步骤s101:用户态PCIE接收模块通过命令行接口获取PCIE故障类型以及对应的故障注入文件;

其中,每种PCIE故障类型预先一一对应的设置有一个故障文件。

步骤s102:用户态PCIE准备模块解析故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;

步骤s103:内核态PCIE故障注入模块选定待注入的PCIE,调用用于进行故障注入的write函数拷贝PCIE联合体内的故障文件信息,并将拷贝的故障文件信息注入待注入的PCIE内。

其中,将故障文件信息放入finj结构体中的PCIE联合体内的过程具体为:

调用finj_parse结构体内存储的PCIE相关函数,将故障文件信息放入finj结构体中的PCIE联合体内。

其中,这里的PCIE相关预设函数包括PCIE初始化函数、PCIE解析函数、PCIE清除函数等,当然,具体是否包含以上几个函数或是否包含其他函数本发明不作具体限定。

为方便理解,下面结合实现本发明的代码框架作具体介绍介绍:

本发明提供了一种基于linux的PCIE故障注入方法,预先设置PCIE可能出现的故障类型以及该类型对应的故障注入文件,在用户态获取一种PCIE的故障类型及对应的故障注入文件后,对该故障注入文件进行分析提取后拷贝至内核态内,然后注入选定的PCIE内。可见,本发明能够模拟注入已知类型的故障至PCIE,从而使得能够根据PCIE工作时产生的故障效果确定该种故障类型对PCIE以及其他组件的影响,进而为解决该种PCIE故障提供指导。

本发明还提供了一种基于linux的PCIE故障注入装置,参见图2所示,图2为本发明提供的一种基于linux的PCIE故障注入装置的结构示意图;该装置包括:

用户态PCIE接收模块1,用于通过命令行接口获取PCIE故障类型以及对应的故障注入文件;

用户态PCIE准备模块2,用于解析故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;

内核态PCIE故障注入模块4,用于选定待注入的PCIE,调用用于进行故障注入的write函数拷贝PCIE联合体内的故障文件信息,并将拷贝的故障文件信息注入待注入的PCIE内;

通信模块3,用于建立用户态PCIE准备模块2与内核态PCIE故障注入模块4之间的通信。

其中,用户态PCIE准备模块2具体包括:

存放单元21,用于调用finj_parse结构体内存储的PCIE相关函数,将将故障文件信息放入finj结构体中的PCIE联合体内;

注入单元22,用于触发finj_parse结构体内存储的submit函数调用write函数建立与内核态中的write函数进行通信。

本发明提供了一种基于linux的PCIE故障注入装置,预先设置PCIE可能出现的故障类型以及该类型对应的故障注入文件,在用户态获取一种PCIE的故障类型及对应的故障注入文件后,对该故障注入文件进行分析提取后拷贝至内核态内,然后注入选定的PCIE内。可见,本发明能够模拟注入已知类型的故障至PCIE,从而使得能够根据PCIE工作时产生的故障效果确定该种故障类型对PCIE以及其他组件的影响,进而为解决该种PCIE故障提供指导。

本发明还提供了一种故障管理系统,包括如以上的PCIE故障注入装置及后续分析模块;

后续分析模块51,用于对注入故障后的PCIE进行故障数据分析。

作为优选地,该系统还包括:

诊断模块52,用于对注入故障后的PCIE进行故障诊断处理,得到诊断结果。

作为优选地,该系统还包括:

收集模块53,用于收集PCIE以及与PCIE连接的组件运行过程中以及运行结束后的运行数据。

当然,故障管理系统内还可包括其他一些用于进行后续处理的模块,本发明对此不作特别限定。

参见图3所示,图3为本发明提供的一种故障管理系统的结构示意图。

需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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