一种CPU故障注入方法及其装置及故障管理系统制造方法及图纸

技术编号:15541437 阅读:79 留言:0更新日期:2017-06-05 10:50
本发明专利技术公开了一种基于linux的CPU故障注入方法及其装置,包括用户态CPU故障准备模块根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对故障文件进行分析,提取出故障文件信息;用户态CPU故障注入模块将故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用write函数建立与内核态中的write函数进行通信;内核态CPU故障注入模块调用自身包含的重写的write函数拷贝cpu联合体内的故障文件信息,将拷贝的故障文件信息注入CPU内。本发明专利技术能够模拟各种类型的CPU故障并注入CPU内,供后续对CPU的运行状态进行分析,从而为后续处理该类型的CPU故障提供指导;本发明专利技术的还公开了一种包括上述装置的故障管理系统,在此不再赘述。

CPU fault injection method, device and fault management system thereof

The invention discloses a method and device for CPU fault injection based on Linux, including the user mode CPU fault preparation module according to the command line interface, the choice to be injected into the CPU fault types and corresponding fault file; the fault file analysis, extract the fault information files; user mode CPU fault injection module fault information into the file CPU combined with finj structure in vivo, triggering submit function calls the write function to establish communication with the write kernel function; write function module calls itself contains rewriting into kernel CPU copies of CPU in joint fault fault file information, copy the file information into the CPU fault. The invention can simulate various types of fault CPU and injected into the CPU, for the follow-up of the operation of CPU were analyzed, and for the subsequent processing of the type CPU failure to provide guidance; the invention also discloses a device including the fault management system, and will not go.

【技术实现步骤摘要】
一种CPU故障注入方法及其装置及故障管理系统
本专利技术涉及故障模拟
,特别是涉及一种基于linux的CPU故障注入方法及其装置。本专利技术还涉及一种故障管理系统。
技术介绍
计算机中的运算器和控制器统称为中央处理器CPU,CPU计算机系统的核心部件,可以实现运算以及控制指挥的功能,一旦CPU出现故障,会导致计算机系统不能正常工作或宕机。为了保证当CPU出现故障时能够及时检测并正确处理,故需要模拟CPU可能出现的各种故障进行分析,从而确定各种故障对应的影响以及对故障对应的解决方案提供指导。因此,如何提供一种能够解决上述问题的基于linux的CPU故障注入方法及其装置及故障管理系统是本领域技术人员目前需要解决的问题。
技术实现思路
本专利技术的目的是提供一种基于linux的CPU故障注入方法及其装置,能够模拟各种类型的CPU故障并注入CPU内,供后续对CPU的运行状态进行分析,从而为后续处理该类型的CPU故障提供指导;本专利技术的另一目的是提供一种包括上述装置的故障管理系统。为解决上述技术问题,本专利技术提供了一种基于linux的CPU故障注入方法,包括:用户态CPU故障准备模块根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对所述故障文件进行分析,提取出故障文件信息;用户态CPU故障注入模块将所述故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用write函数建立与内核态中的write函数进行通信;内核态CPU故障注入模块调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述CPU内。优选地,所述将所述故障文件信息放入finj结构体中的cpu联合体内的过程具体为:调用finj_parse结构体内存储的CPU相关预设函数,将所述故障文件信息放入finj结构体中的cpu联合体内。优选地,所述调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述CPU内的过程具体为:选定待注入的CPU;调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述待注入的CPU内;采用预设的检查函数对所述待注入的CPU进行中断处理流程。为解决上述技术问题,本专利技术还提供了一种基于linux的CPU故障注入装置,包括:用户态CPU故障准备模块,用于根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对所述故障文件进行分析,提取出故障文件信息;用户态CPU故障注入模块,用于将所述故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用write函数建立与内核态中的write函数进行通信;内核态CPU故障注入模块,用于调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述CPU内;通信模块,用于建立所述用户态CPU故障注入模块与所述内核态CPU故障注入模块之间的通信。优选地,所述用户态CPU故障注入模块具体包括:存放单元,用于调用finj_parse结构体内存储的CPU相关预设函数,将所述故障文件信息放入finj结构体中的cpu联合体内;用户态注入单元,用于触发所述finj_parse结构体内存储的所述submit函数来调用write函数建立与内核态中的write函数进行通信,将所述故障文件信息拷贝至所述内核态内。优选地,所述内核态CPU故障注入模块具体包括:选定单元,用于选定待注入的CPU;内核态注入单元,用于调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述待注入的CPU内;中断单元,用于采用预设的检查函数对所述待注入的CPU进行中断处理流程。为解决上述技术问题,本专利技术还提供了一种故障管理系统,包括如以上所述的CPU故障注入装置及后续分析模块;所述后续分析模块,用于对注入故障后的CPU进行故障数据分析。优选地,还包括:诊断模块,用于对注入故障注入信息后的CPU进行故障诊断处理,得到诊断结果。优选地,还包括:收集模块,用于收集所述CPU运行过程中以及运行结束后的运行数据。本专利技术提供了一种基于linux的CPU故障注入方法及其装置,在用户态一侧预先设置CPU可能出现的故障类型以及该类型对应的故障注入文件,在用户态通过命令行接口获取一种CPU的故障类型及对应的故障注入文件后,对该故障注入文件进行分析提取后拷贝至内核态内,然后注入CPU内。可见,本专利技术能够在CPU内模拟注入已知类型的故障,从而能够根据故障状态下CPU工作时产生的故障效果确定该种故障类型对CPU的影响,进而为解决该种CPU故障提供指导。本专利技术还提供了一种包括上述装置的故障管理系统,也具有上述优点,在此不再赘述。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的一种基于linux的CPU故障注入方法的过程的流程图;图2为本专利技术提供的一种基于linux的CPU故障注入装置的结构示意图;图3为本专利技术提供的一种故障管理系统的结构示意图。具体实施方式本专利技术的核心是提供一种基于linux的CPU故障注入方法及其装置,能够模拟各种类型的CPU故障并注入CPU内,供后续对CPU的运行状态进行分析,从而为后续处理该类型的CPU故障提供指导;本专利技术的另一核心是提供一种包括上述装置的故障管理系统。为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供了一种基于linux的CPU故障注入方法,参见图1所示,图1为本专利技术提供的一种基于linux的CPU故障注入方法的过程的流程图;该方法包括:步骤s101:用户态CPU故障准备模块根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对故障文件进行分析,提取出故障文件信息;其中,每种CPU故障类型预先一一对应的设置有一个故障文件。步骤s102:用户态CPU故障注入模块将故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用write函数建立与内核态中的write函数进行通信;步骤s103:内核态CPU故障注入模块调用自身包含的重写的write函数拷贝cpu联合体内的故障文件信息,将拷贝的故障文件信息注入CPU内。其中,将故障文件信息放入finj结构体中的cpu联合体内的过程具体为:调用finj_parse结构体内存储的CPU相关预设函数,将故障文件信息放入finj结构体中的cpu联合体内。其中,这里的CPU相关预设函数包括CPU初始化函数、CPU解析函数、CPU清除函数等,当然,具体是否包含以上几个函数或是否包含其他函数本专利技术不作本文档来自技高网...
一种CPU故障注入方法及其装置及故障管理系统

【技术保护点】
一种基于linux的CPU故障注入方法,其特征在于,包括:用户态CPU故障准备模块根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对所述故障文件进行分析,提取出故障文件信息;用户态CPU故障注入模块将所述故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用write函数建立与内核态中的write函数进行通信;内核态CPU故障注入模块调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述CPU内。

【技术特征摘要】
1.一种基于linux的CPU故障注入方法,其特征在于,包括:用户态CPU故障准备模块根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对所述故障文件进行分析,提取出故障文件信息;用户态CPU故障注入模块将所述故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用write函数建立与内核态中的write函数进行通信;内核态CPU故障注入模块调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述CPU内。2.根据权利要求1所述的方法,其特征在于,所述将所述故障文件信息放入finj结构体中的cpu联合体内的过程具体为:调用finj_parse结构体内存储的CPU相关预设函数,将所述故障文件信息放入finj结构体中的cpu联合体内。3.根据权利要求1所述的方法,其特征在于,所述调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述CPU内的过程具体为:选定待注入的CPU;调用自身包含的重写的write函数拷贝所述cpu联合体内的所述故障文件信息,将拷贝的所述故障文件信息注入所述待注入的CPU内;采用预设的检查函数对所述待注入的CPU进行中断处理流程。4.一种基于linux的CPU故障注入装置,其特征在于,包括:用户态CPU故障准备模块,用于根据命令行接口,选择待注入的CPU故障类型以及对应的故障文件;对所述故障文件进行分析,提取出故障文件信息;用户态CPU故障注入模块,用于将所述故障文件信息放入finj结构体中的cpu联合体内,触发submit函数调用wr...

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

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

1