System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于计算机信息处理,更具体地,涉及一种基于物联网的固件崩溃分析方法及装置。
技术介绍
1、相关技术中,崩溃分析技术可分为三类:基于硬件辅助的崩溃分析技术;基于核心转储的崩溃分析技术;基于实时监控的崩溃分析技术。
2、基于硬件辅助的分析技术中,利用硬件特性,例如因特尔处理器追踪(intelprocessor trace, intel pt)和基于进阶精简指令集(reduced instruction setcomputer, risc)机器(advanced risc machine, arm)架构的嵌入式跟踪宏单元(eembededtrace macrocell, etm),在崩溃点之前透明地记录指令执行信息,并基于此进行崩溃后的程序分析。该技术尽管十分有效,但许多嵌入式设备缺乏必要的硬件功能,无法应用于物联网领域。虽然arm的芯片架构支持etm,但为了减少硅片面积,物联网芯片制造商很少将其实装在生产用的芯片上。即使在带有etm的芯片上,也缺乏可以支持设备内处理的保存跟踪信息的专用缓冲区(例如嵌入式跟踪缓冲区(embedded trace buffer, etb)、微跟踪缓冲区(micro trace buffer, mtb)或嵌入式跟踪路由器(embedded trace router,etr))。物联网设备必须通过外部调试器才能获取etm收集的跟踪信息,因此该技术无法实装在生产环境中的物联网设备。
3、对于核心转储的崩溃分析技术,cn115756934a中记载了一种应用崩溃分析方法及系统,首先获
4、针对基于实时监控的崩溃分析技术,cn103034575a记载了另一种通过监控程序运行的崩溃分析方法和装置,首先在终端的目标中设置监控点,在程序运行中实时记录监控点的数据;当崩溃发生的时候,获取监控点的数据和参数并存储在镜像文件中,监控点的参数包括待测目标和终端中监控点的参数;分析人员在崩溃后获取镜像文件并定位崩溃的原因。但是,该技术无法适用于物联网环境,物联网设备缺乏足够的硬件资源,无法容纳一个监控程序实时记录程序的状态信息,也无法使用大量的内存来存储生成的监控点数据。
5、因此,如何实现物联网环境的固件崩溃分析,是亟待解决的问题。
技术实现思路
1、针对相关技术的缺陷,本申请的目的在于提供一种基于物联网的固件崩溃分析方法及装置,旨在实现物联网环境的固件崩溃分析。
2、第一方面,本申请实施例提供一种基于物联网的固件崩溃分析方法,应用于基于物联网的固件崩溃分析装置,包括:
3、在物联网设备运行过程中,记录与物联网设备的交互数据和快照信息;
4、在物联网设备崩溃后,加载物联网设备的固件,基于快照信息还原固件在当前快照时和后续的状态信息;
5、基于还原的固件实时的状态信息,自动化推理硬件反馈和中断事件,以还原固件从当前快照到崩溃之间的执行流;
6、通过动态程序分析和静态程序分析的方式分析还原的执行流,确定崩溃成因。
7、第二方面,本申请实施例还提供一种基于物联网的固件崩溃分析方法,应用于设置在边缘网关中的数据记录模块,包括:
8、在物联网设备运行过程中,记录与物联网设备的交互数据和快照信息;
9、在物联网设备崩溃后,发送交互数据和快照信息给动态仿真模块,以使动态仿真模块还原物联网设备的固件在当前快照时和后续的状态信息,以及还原固件从当前快照到崩溃之间的执行流。
10、在一些实施例中,记录与物联网设备的交互数据和快照信息,包括:
11、在链路层记录与物联网设备的交互数据,交互数据包括第一交互数据和第二交互数据,第一交互数据是物联网设备从传感器接收并发送给边缘网关的交互数据,第二交互数据是边缘网关发送给物联网设备的交互数据;
12、在记录的数据量占满边缘网关中物联网设备对应的缓冲区的情况下,记录物联网设备发送的快照信息,快照信息包含内存中有读写权限的数据段和寄存器段。
13、第三方面,本申请实施例还提供一种基于物联网的固件崩溃分析方法,应用于动态仿真模块,包括:
14、接收数据记录模块记录的物联网设备运行过程中边缘网关与物联网设备的交互数据和快照信息;
15、在物联网设备崩溃后,加载物联网设备的固件,基于快照信息还原固件在当前快照时和后续的状态信息,以及还原固件从当前快照到崩溃之间的执行流。
16、在一些实施例中,基于快照信息还原固件在当前快照时和后续的状态信息,包括:
17、确定物联网设备中固件的地址空间;
18、基于地址空间将固件映射到仿真器中,并加载固件的内容;
19、解析快照各部分在物联网设备中的内存分布;
20、将快照数据段分段加载至仿真器单元中的对应地址,并覆盖与固件的地址空间冲突的部分;将快照寄存器段依次加载至仿真器中的对应寄存器;
21、从快照覆盖的程序计数器指向的指令位置开始执行,并利用映射好的内存和寄存器来获取快照时固件的运行栈;
22、通过启发式递归反汇编算法反汇编程序计数器当前指向的指令;
23、利用软件模拟的指令执行来模拟固件的硬件执行过程。
24、在一些实施例中,还原固件从当前快照到崩溃之间的执行流,包括:
25、获取硬件行为推理模块自动化推理的硬件反馈和中断事件,还原固件从当前快照到崩溃之间的执行流;
26、向崩溃成因分析模块发送还原的执行流。
27、第四方面,本申请实施例还提供一种基于物联网的固件崩溃分析方法,应用于硬件行为推理模块,包括:
28、基于动态仿真模块还原的物联网设备固件实时的状态信息,自动化推理硬件反馈和中断事件;
29、将硬件反馈和中断事件推送至动态仿真模块,以还原固件从当前快照到崩溃之间的执行流。
30、在一些实施例中,自本文档来自技高网...
【技术保护点】
1.一种基于物联网的固件崩溃分析方法,其特征在于,应用于基于物联网的固件崩溃分析装置,所述方法包括:
2.一种基于物联网的固件崩溃分析方法,其特征在于,应用于设置在边缘网关中的数据记录模块,所述方法包括:
3.根据权利要求2所述的基于物联网的固件崩溃分析方法,其特征在于,所述记录与物联网设备的交互数据和快照信息,包括:
4.一种基于物联网的固件崩溃分析方法,其特征在于,应用于动态仿真模块,所述方法包括:
5.根据权利要求4所述的基于物联网的固件崩溃分析方法,其特征在于,所述基于所述快照信息还原固件在当前快照时和后续的状态信息,包括:
6.根据权利要求5所述的基于物联网的固件崩溃分析方法,其特征在于,所述还原固件从所述当前快照到崩溃之间的执行流,包括:
7.一种基于物联网的固件崩溃分析方法,其特征在于,应用于硬件行为推理模块,所述方法包括:
8.根据权利要求7所述的基于物联网的固件崩溃分析方法,其特征在于,所述自动化推理硬件反馈和中断事件,包括:
9.根据权利要求8所述的基于物联网的固件
10.一种基于物联网的固件崩溃分析装置,其特征在于,包括:
...【技术特征摘要】
1.一种基于物联网的固件崩溃分析方法,其特征在于,应用于基于物联网的固件崩溃分析装置,所述方法包括:
2.一种基于物联网的固件崩溃分析方法,其特征在于,应用于设置在边缘网关中的数据记录模块,所述方法包括:
3.根据权利要求2所述的基于物联网的固件崩溃分析方法,其特征在于,所述记录与物联网设备的交互数据和快照信息,包括:
4.一种基于物联网的固件崩溃分析方法,其特征在于,应用于动态仿真模块,所述方法包括:
5.根据权利要求4所述的基于物联网的固件崩溃分析方法,其特征在于,所述基于所述快照信息还原固件在当前快照时和后续的...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。