CN106776180A - 一种pcie故障注入方法及其装置及故障管理系统 - Google Patents
一种pcie故障注入方法及其装置及故障管理系统 Download PDFInfo
- Publication number
- CN106776180A CN106776180A CN201611173718.6A CN201611173718A CN106776180A CN 106776180 A CN106776180 A CN 106776180A CN 201611173718 A CN201611173718 A CN 201611173718A CN 106776180 A CN106776180 A CN 106776180A
- Authority
- CN
- China
- Prior art keywords
- pcie
- failure
- fault
- fileinfo
- fault location
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种基于linux的PCIE故障注入方法及其装置,包括用户态PCIE接收模块通过命令行接口获取PCIE故障类型以及对应的故障注入文件;用户态PCIE准备模块解析故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;内核态PCIE故障注入模块选定待注入的PCIE,调用用于进行故障注入的write函数拷贝PCIE联合体内的故障文件信息,并将拷贝的故障文件信息注入待注入的PCIE内。本发明能够模拟注入各种已知类型的故障至PCIE,供后续依据PCIE产生的故障效果进行相应的分析,为PCIE的故障处理提供指导。本发明还公开了一种故障管理系统,包括上述装置,在此不再赘述。
Description
技术领域
本发明涉及故障检测技术领域,特别是涉及一种基于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为本发明提供的一种故障管理系统的结构示意图。
需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种基于linux的PCIE故障注入方法,其特征在于,包括:
用户态PCIE接收模块通过命令行接口获取PCIE故障类型以及对应的故障注入文件;
用户态PCIE准备模块解析所述故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;
内核态PCIE故障注入模块选定待注入的PCIE,调用用于进行故障注入的write函数拷贝所述PCIE联合体内的故障文件信息,并将拷贝的所述故障文件信息注入所述待注入的PCIE内。
2.根据权利要求1所述的方法,其特征在于,所述将故障文件信息放入finj结构体中的PCIE联合体内的过程具体为:
调用finj_parse结构体内存储的PCIE相关函数,将所述故障文件信息放入finj结构体中的PCIE联合体内。
3.一种基于linux的PCIE故障注入装置,其特征在于,包括:
用户态PCIE接收模块,用于通过命令行接口获取PCIE故障类型以及对应的故障注入文件;
用户态PCIE准备模块,用于解析所述故障注入文件,得到故障文件信息放入finj结构体中的PCIE联合体内;触发submit函数调用write函数建立与内核态中的write函数进行通信;
内核态PCIE故障注入模块,用于选定待注入的PCIE,调用用于进行故障注入的write函数拷贝所述PCIE联合体内的故障文件信息,并将拷贝的所述故障文件信息注入所述待注入的PCIE内;
通信模块,用于建立所述用户态PCIE准备模块与所述内核态PCIE故障注入模块之间的通信。
4.根据权利要求1所述的装置,其特征在于,所述用户态PCIE准备模块具体包括:
存放单元,用于调用finj_parse结构体内存储的PCIE相关函数,将所述将所述故障文件信息放入finj结构体中的PCIE联合体内;
注入单元,用于触发所述finj_parse结构体内存储的所述submit函数调用write函数建立与内核态中的write函数进行通信。
5.一种故障管理系统,其特征在于,包括如权利要求3或4所述的PCIE故障注入装置及后续分析模块;
所述后续分析模块,用于对注入故障后的PCIE进行故障数据分析。
6.根据权利要求5所述的故障管理系统,其特征在于,还包括:
诊断模块,用于对注入故障后的PCIE进行故障诊断处理,得到诊断结果。
7.根据权利要求5所述的故障管理系统,其特征在于,还包括:
收集模块,用于收集所述PCIE以及与所述PCIE连接的组件运行过程中以及运行结束后的运行数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611173718.6A CN106776180A (zh) | 2016-12-16 | 2016-12-16 | 一种pcie故障注入方法及其装置及故障管理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611173718.6A CN106776180A (zh) | 2016-12-16 | 2016-12-16 | 一种pcie故障注入方法及其装置及故障管理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106776180A true CN106776180A (zh) | 2017-05-31 |
Family
ID=58891248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611173718.6A Pending CN106776180A (zh) | 2016-12-16 | 2016-12-16 | 一种pcie故障注入方法及其装置及故障管理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106776180A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108021466A (zh) * | 2017-12-28 | 2018-05-11 | 深圳市金泰克半导体有限公司 | 一种固态硬盘的协议错误处理的验证方法及系统 |
CN113094221A (zh) * | 2021-04-09 | 2021-07-09 | 宁畅信息产业(北京)有限公司 | 故障注入方法、装置、计算机设备以及可读存储介质 |
CN115729724A (zh) * | 2022-11-30 | 2023-03-03 | 中电金信软件有限公司 | 故障注入方法、故障测试系统、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102270173A (zh) * | 2011-07-21 | 2011-12-07 | 哈尔滨工业大学 | 基于scsi驱动层的故障注入工具 |
CN102768642A (zh) * | 2012-06-25 | 2012-11-07 | 浪潮电子信息产业股份有限公司 | 一种基于源码分析的linux内核可靠性评测系统及其方法 |
GB201319987D0 (en) * | 2013-11-13 | 2013-12-25 | Ibm | Injecting lost packets and protocol errors in a simulation environment |
CN104331324A (zh) * | 2014-11-04 | 2015-02-04 | 哈尔滨工业大学 | MapReduce故障注入套件 |
CN104461865A (zh) * | 2014-11-04 | 2015-03-25 | 哈尔滨工业大学 | 云环境下分布式文件系统可靠性测试套件 |
-
2016
- 2016-12-16 CN CN201611173718.6A patent/CN106776180A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102270173A (zh) * | 2011-07-21 | 2011-12-07 | 哈尔滨工业大学 | 基于scsi驱动层的故障注入工具 |
CN102768642A (zh) * | 2012-06-25 | 2012-11-07 | 浪潮电子信息产业股份有限公司 | 一种基于源码分析的linux内核可靠性评测系统及其方法 |
GB201319987D0 (en) * | 2013-11-13 | 2013-12-25 | Ibm | Injecting lost packets and protocol errors in a simulation environment |
CN104331324A (zh) * | 2014-11-04 | 2015-02-04 | 哈尔滨工业大学 | MapReduce故障注入套件 |
CN104461865A (zh) * | 2014-11-04 | 2015-03-25 | 哈尔滨工业大学 | 云环境下分布式文件系统可靠性测试套件 |
Non-Patent Citations (1)
Title |
---|
李金锋: "基于AER的PCIE总线故障注入工具研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108021466A (zh) * | 2017-12-28 | 2018-05-11 | 深圳市金泰克半导体有限公司 | 一种固态硬盘的协议错误处理的验证方法及系统 |
CN113094221A (zh) * | 2021-04-09 | 2021-07-09 | 宁畅信息产业(北京)有限公司 | 故障注入方法、装置、计算机设备以及可读存储介质 |
CN113094221B (zh) * | 2021-04-09 | 2024-02-09 | 宁畅信息产业(北京)有限公司 | 故障注入方法、装置、计算机设备以及可读存储介质 |
CN115729724A (zh) * | 2022-11-30 | 2023-03-03 | 中电金信软件有限公司 | 故障注入方法、故障测试系统、电子设备及可读存储介质 |
CN115729724B (zh) * | 2022-11-30 | 2024-05-10 | 中电金信软件有限公司 | 故障注入方法、故障测试系统、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104536776B (zh) | 一种在宿主端插件运行环境中运行插件应用的方法与装置 | |
CN104281520A (zh) | 跟踪和调试的方法、装置及系统 | |
CN106294222A (zh) | 一种确定pcie设备与插槽对应关系的方法及装置 | |
CN106776180A (zh) | 一种pcie故障注入方法及其装置及故障管理系统 | |
CN108762966A (zh) | 系统异常拦截方法、装置、计算机设备及存储介质 | |
CN104615523A (zh) | 一种基于ipmi协议的bmc管理模块疲劳测试方法 | |
CN104123496B (zh) | 一种流氓软件的拦截方法及装置、终端 | |
EP2565790A1 (en) | Method and system for injecting simulated errors | |
CN105487859B (zh) | 一种基于模板的大数据组件web部署方法 | |
CN105550080A (zh) | 一种基于Linux进行服务器程序故障注入方法、装置及系统 | |
CN104426945B (zh) | 一种获取应用性能数据的方法、设备和系统 | |
CN106330599A (zh) | Android应用程序网络流量多线程采集系统及方法 | |
CN104462943A (zh) | 业务系统中非侵入式性能监控装置和方法 | |
CN106341731A (zh) | 一种智能电视的遥控按键响应方法及装置 | |
CN106598799A (zh) | 一种故障注入模拟系统及故障管理系统 | |
CN109710474A (zh) | 一种硬盘故障检测方法、装置、终端及可读存储介质 | |
CN107861821B (zh) | 模块调用关系的挖掘方法、装置及计算机可读介质 | |
CN106776175A (zh) | 一种内存的故障管理方法、系统及故障管理系统 | |
CN106598797A (zh) | 一种多路径io的故障注入方法、系统及故障管理系统 | |
CN103761202B (zh) | 一种数据存储节点硬盘盘位识别方法及系统 | |
CN206224449U (zh) | 一种故障注入系统 | |
CN107577611A (zh) | 应用调试装置与方法 | |
CN103269288A (zh) | 一种对交换机端口的检测方法 | |
CN106681852B (zh) | 一种浏览器兼容性的调整方法及装置 | |
CN103186465B (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: 20170531 |
|
RJ01 | Rejection of invention patent application after publication |