一种内核故障注入方法及电子设备的制造方法_4

文档序号:9765886阅读:来源:国知局
还包括:连接到总线500的只读存储器503,当需要运行电子设备时,通过固化在只读存储器503中的基本输入输出系统引导系统进行启动,弓I导电子设备进入正常运行状态。
[0125]而在电子设备进入正常运行状态后,在内存502中运行应用程序和操作系统。
[0126]实施例1中的内核故障注入方法中的各种内核故障注入方式和具体实例同样适用于实施例3的电子设备,通过实施例1中对内核故障注入方法的详细描述,本领域技术人员可以清楚的知道实施例3中电子设备的实施方法,所以为了说明书的简洁,在此不再详述。
[0127]实施例4
[0128]基于与实施例2相同的技术构思,本发明实施例提供一种电子设备,参见图8,电子设备包括:总线600,以及连接到总线600的处理器601和内存602。
[0129]其中,内存602用于存储指令。
[0130]处理器601用于执行内存602中的指令,具体包括内核指令以及替换内核指令的断点指令、断点指令所在的Kprobes结构体中的指令。在加载到内存602中的内核指令集合中有指令被Kprobes结构体中的断点指令替换时,处理器601在执行断点指令时,转向执行Kprobes结构体中与断点指令关联的回调函数,产生设定时长的时延,设定时长为回调函数包含的时间参数;且处理器601在产生设定时长的时延后执行被替换的指令。
[0131]可选的,处理器601用于执行Kprobes结构体中与断点指令关联的回调函数,产生设定时长的时延,具体为:记录执行回调函数时的第一时间;以及确定出第一时间之后的与第一时间相差设定时长的第二时间,以形成设定时长的时延。
[0132]较佳的,请参见图9,电子设备还包括:连接到总线600的只读存储器603,当需要运行电子设备时,通过固化在只读存储器603中的基本输入输出系统引导系统进行启动,弓I导电子设备进入正常运行状态。
[0133]而在电子设备进入正常运行状态后,在内存602中运行应用程序和操作系统。
[0134]实施例2中的内核故障注入方法中的各种内核故障注入方式和具体实例同样适用于实施例4的电子设备,通过实施例2中对内核故障注入方法的详细描述,本领域技术人员可以清楚的知道实施例4中电子设备的实施方法,所以为了说明书的简洁,在此不再详述。
[0135]本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0136]本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0137]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0138]尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
[0139]显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
【主权项】
1.一种内核故障注入方法,其特征在于,包括: 在加载到内存中的内核指令集合中有指令被内核动态探针Kprobes结构体中的断点指令替换时,处理器在执行所述断点指令时,转向执行所述Kprobes结构体中与所述断点指令关联的回调函数; 所述处理器在执行完所述回调函数时,转向执行被替换的指令所在函数返回后的下一条内核指令。2.如权利要求1所述的方法,其特征在于,处理器执行所述Kprobes结构体中与所述断点指令关联的回调函数,包括: 所述处理器将所述回调函数中设定的错误状态码写入数据寄存器。3.如权利要求1所述的方法,其特征在于,处理器执行所述Kprobes结构体中与所述断点指令关联的回调函数,包括: 所述处理器读取所述Kprobes结构体中保存的所述被替换的指令的数据返回位置的位置信息,并确定出所述数据返回位置; 所述处理器生成大小不大于所述数据返回位置的存储容量的混淆数据,并将所述混淆数据写入所述数据返回位置。4.如权利要求3所述的方法,其特征在于,所述处理器生成大小不大于所述数据返回位置的存储容量的混淆数据,包括: 随机生成大小不大于所述数据返回位置的存储容量的所述混淆数据;或者 从设定混淆数据中提取小于所述数据返回位置的存储容量的部分作为所述混淆数据。5.—种内核故障注入方法,其特征在于,所述方法包括: 在加载到内存中的内核指令集合中有指令被Kprobes结构体中的断点指令替换时,处理器在执行所述断点指令时,转向执行所述Kprobes结构体中与所述断点指令关联的回调函数,产生设定时长的时延,所述设定时长为所述回调函数包含的时间参数; 所述处理器在产生所述设定时长的时延后执行被替换的指令。6.如权利要求5所述的方法,其特征在于,处理器执行所述Kprobes结构体中与所述断点指令关联的回调函数,产生设定时长的时延,包括: 所述处理器记录执行所述回调函数时的第一时间; 所述处理器确定出所述第一时间之后的与所述第一时间相差所述设定时长的第二时间,以形成所述设定时长的时延。7.—种电子设备,其特征在于,包括: 内存,用于存储指令; 处理器,用于执行内存中存储的内核指令;其中,在加载到内存中的内核指令集合中有指令被内核动态探针Kprobes结构体中的断点指令替换时,处理器在执行所述断点指令时,转向执行所述Kprobes结构体中与所述断点指令关联的回调函数;且所述处理器在执行完所述回调函数时,转向执行被替换的指令所在函数返回后的下一条内核指令。8.如权利要求7所述的电子设备,其特征在于,所述处理器用于执行所述Kprobes结构体中与所述断点指令关联的回调函数,具体为:将所述回调函数中设定的错误状态码写入数据寄存器。9.如权利要求7所述的电子设备,其特征在于,所述处理器用于执行所述Kprobes结构体中与所述断点指令关联的回调函数,具体为:读取所述Kprobes结构体中保存的所述被替换的指令的数据返回位置的位置信息,并确定出所述数据返回位置;以及生成大小不大于所述数据返回位置的存储容量的混淆数据,并将所述混淆数据写入所述数据返回位置。10.如权利要求9所述的电子设备,其特征在于,所述处理器用于生成大小不大于所述数据返回位置的存储容量的混淆数据,具体为:随机生成大小不大于所述数据返回位置的存储容量的所述混淆数据;或者从设定混淆数据中提取小于所述数据返回位置的存储容量的部分作为所述混淆数据。11.一种电子设备,其特征在于,包括: 内存,用于存储指令; 处理器,用于执行内存中存储的内核指令;其中,在加载到内存中的内核指令集合中有指令被Kprobes结构体中的断点指令替换时,处理器在执行所述断点指令时,转向执行所述Kprobes结构体中与所述断点指令关联的回调函数,产生设定时长的时延,所述设定时长为所述回调函数包含的时间参数;且所述处理器在产生所述设定时长的时延后执行被替换的指令。12.如权利要求11所述的电子设备,其特征在于,所述处理器用于执行所述Kprobes结构体中与所述断点指令关联的回调函数,产生设定时长的时延,具体为:记录执行所述回调函数时的第一时间;以及确定出所述第一时间之后的与所述第一时间相差所述设定时长的第二时间,以形成所述设定时长的时延。
【专利摘要】本发明公开了一种内核故障注入方法及电子设备,用于解决故障注入的等待时间较长的技术问题。内核注入方法包括:在加载到内存中的内核指令集合中有指令被内核动态探针Kprobes结构体中的断点指令替换时,处理器在执行所述断点指令时,转向执行所述Kprobes结构体中与所述断点指令关联的回调函数;所述处理器在执行完所述回调函数时,转向执行被替换的指令所在函数返回后的下一条内核指令。
【IPC分类】G06F11/36
【公开号】CN105528284
【申请号】CN201410507741
【发明人】崔庆明, 王平, 王新宇
【申请人】华为技术有限公司
【公开日】2016年4月27日
【申请日】2014年9月28日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1