基于单步异常的嵌入式软件堆栈使用情况动态分析方法和系统

    公开(公告)号:CN114238096A

    公开(公告)日:2022-03-25

    申请号:CN202111495468.9

    申请日:2021-12-08

    IPC分类号: G06F11/36 G06F8/41 G06F8/72

    摘要: 本发明提供了一种基于单步异常的嵌入式软件堆栈使用情况动态分析方法和系统,包括:步骤1:对被分析程序进行编译,并在预设位置调用分析开始接口;步骤2:通过预设分析模块使能嵌入式目标板的单步异常;步骤3:在单步异常的异常处理中,分析当前指令是否修改栈指针寄存器,若修改栈指针寄存器则记录栈指针寄存器的值,否则不处理;步骤4:当被分析程序运行到预设位置时调用分析结束接口,关闭单步异常并输出堆栈分析结果。本发明在不插桩源代码并且不借助仿真器的情况下,实现了在嵌入式程序运行过程中动态的分析嵌入式程序的堆栈使用情况。

    基于单步异常的目标码覆盖率测试方法、系统及介质

    公开(公告)号:CN110647467A

    公开(公告)日:2020-01-03

    申请号:CN201910900845.9

    申请日:2019-09-23

    IPC分类号: G06F11/36

    摘要: 本发明提供一种基于单步异常的目标码覆盖率测试方法、系统及介质,包括:编译步骤:在测试前对被测程序进行编译,将监控模块与被测程序一起编译,并在监控范围的开始点和结束点分别调用监控开始函数和监控结束函数;监控开始步骤:目标代码执行到监控开始函数时,监控开始函数使能处理器的单步异常,从而使得处理器每执行一条指令就产生一个单步异常。本发明不需要借助额外的调试硬件,在应用上具有更高的灵活性;本发明不仅可以做目标码的语句覆盖率分析,同时可以做目标码的分支覆盖率分析和目标码的调用覆盖率分析。

    动态配置编程方法
    3.
    发明授权

    公开(公告)号:CN106339249B

    公开(公告)日:2019-09-27

    申请号:CN201610712344.4

    申请日:2016-08-23

    IPC分类号: G06F8/41

    摘要: 本发明提供了一种动态配置编程方法,包括以下步骤:步骤一:动态的配置数据格式和解析;步骤二:将配置的数据格式转换成某种脚本语言;步骤三:在接收到的数据之后,按照用户配置的数据结构进行解析,在解析之后的数据上轻松的实现数据处理;步骤四:将处理后的数据按照解析方法再进行打包,传输出去。本发明降低了通信协议等变更时,再次进行软件的开发的工作量。

    基于单步异常的目标码覆盖率测试方法、系统及介质

    公开(公告)号:CN110647467B

    公开(公告)日:2021-05-28

    申请号:CN201910900845.9

    申请日:2019-09-23

    IPC分类号: G06F11/36

    摘要: 本发明提供一种基于单步异常的目标码覆盖率测试方法、系统及介质,包括:编译步骤:在测试前对被测程序进行编译,将监控模块与被测程序一起编译,并在监控范围的开始点和结束点分别调用监控开始函数和监控结束函数;监控开始步骤:目标代码执行到监控开始函数时,监控开始函数使能处理器的单步异常,从而使得处理器每执行一条指令就产生一个单步异常。本发明不需要借助额外的调试硬件,在应用上具有更高的灵活性;本发明不仅可以做目标码的语句覆盖率分析,同时可以做目标码的分支覆盖率分析和目标码的调用覆盖率分析。

    基于预设断点的目标码覆盖率测试方法、系统及介质

    公开(公告)号:CN110554969B

    公开(公告)日:2021-05-25

    申请号:CN201910900830.2

    申请日:2019-09-23

    IPC分类号: G06F11/36

    摘要: 本发明提供了一种基于预设断点的目标码覆盖率测试方法、系统及介质,包括:编译步骤:在测试前对被测程序进行编译,将监控模块与被测程序一起编译,并在监控范围的开始点和结束点分别调用监控开始函数和监控结束函数;开始监控步骤:目标代码执行到监控开始函数时,监控开始函数在监控范围的开始点设置预设断点并使能调试中断。本发明相比于现有技术本发明不需要借助额外的调试硬件,在应用上具有更高的灵活性。

    基于数据断点的嵌入式软件堆栈使用情况动态分析方法和系统

    公开(公告)号:CN114238098A

    公开(公告)日:2022-03-25

    申请号:CN202111501263.7

    申请日:2021-12-09

    IPC分类号: G06F11/36 G06F8/41 G06F8/72

    摘要: 本发明提供了一种基于数据断点的嵌入式软件堆栈使用情况动态分析方法和系统,包括:步骤1:对被分析程序进行编译,并在预设位置调用分析开始接口;步骤2:通过预设分析模块获取当前嵌入式程序的预设栈空间,给预设栈空间设置数据断点,并使能嵌入式目标板的数据断点异常;步骤3:在数据断点的异常处理中,分析当前指令读取或修改的目标地址,并记录目标地址;步骤4:当被分析程序运行到预设位置时调用分析结束接口,关闭目标板的数据断点异常并输出堆栈分析结果。本发明在不插桩源代码并且不借助仿真器的情况下,实现了在嵌入式程序运行过程中动态的分析嵌入式程序的堆栈使用情况。

    操作系统级程序的目标码覆盖率测试方法、系统及介质

    公开(公告)号:CN110580226B

    公开(公告)日:2021-09-14

    申请号:CN201910900844.4

    申请日:2019-09-23

    IPC分类号: G06F11/36

    摘要: 本发明提供了一种操作系统级程序的目标码覆盖率测试方法、系统及介质,包括:编译步骤:在操作系统源代码中将监控模块注册为系统调用函数,并将监控模块和操作系统源代码一起进行编译;测试步骤:调用监控模块,测试目标代码信息及覆盖率信息,获得测试信息;计算步骤:根据所述测试信息,计算操作系统级应用程序的目标码覆盖率。本发明依托真实的物理环境得出的覆盖率更具可信性。

    操作系统级程序的目标码覆盖率测试方法、系统及介质

    公开(公告)号:CN110580226A

    公开(公告)日:2019-12-17

    申请号:CN201910900844.4

    申请日:2019-09-23

    IPC分类号: G06F11/36

    摘要: 本发明提供了一种操作系统级程序的目标码覆盖率测试方法、系统及介质,包括:编译步骤:在操作系统源代码中将监控模块注册为系统调用函数,并将监控模块和操作系统源代码一起进行编译;测试步骤:调用监控模块,测试目标代码信息及覆盖率信息,获得测试信息;计算步骤:根据所述测试信息,计算操作系统级应用程序的目标码覆盖率。本发明依托真实的物理环境得出的覆盖率更具可信性。

    基于预设断点的目标码覆盖率测试方法、系统及介质

    公开(公告)号:CN110554969A

    公开(公告)日:2019-12-10

    申请号:CN201910900830.2

    申请日:2019-09-23

    IPC分类号: G06F11/36

    摘要: 本发明提供了一种基于预设断点的目标码覆盖率测试方法、系统及介质,包括:编译步骤:在测试前对被测程序进行编译,将监控模块与被测程序一起编译,并在监控范围的开始点和结束点分别调用监控开始函数和监控结束函数;开始监控步骤:目标代码执行到监控开始函数时,监控开始函数在监控范围的开始点设置预设断点并使能调试中断。本发明相比于现有技术本发明不需要借助额外的调试硬件,在应用上具有更高的灵活性。

    基于网络的主题订阅系统
    10.
    发明授权

    公开(公告)号:CN106330744B

    公开(公告)日:2019-08-16

    申请号:CN201610712467.8

    申请日:2016-08-23

    IPC分类号: H04L12/801 H04L29/08

    摘要: 本发明提供了一种基于网络的主题订阅系统,包括以下模块:网络通讯模块,初始化网络通讯环境,设置通讯通道,监听网络节点上线与下线,并通知控制节点;控制节点模块,初始化控制节点并设定通讯通道,为控制节点分配本通道内固定识别码;普通节点模块,初始化普通节点并设定通讯通道。本发明可根据主题接收者数量自动调整网络发送方式,既可将数据快速发送出去,又可避免网络阻塞。