[发明专利]嵌入式系统内存改写监测方法、装置、设备及存储介质在审
申请号: | 202011270848.8 | 申请日: | 2020-11-13 |
公开(公告)号: | CN114490310A | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 贾国栋;陈剑 | 申请(专利权)人: | 大唐移动通信设备有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/53 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 项京;丁芸 |
地址: | 100083 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 系统 内存 改写 监测 方法 装置 设备 存储 介质 | ||
本申请实施例提供了嵌入式系统内存改写监测方法、装置、设备及存储介质,获取嵌入式系统中由内存改写而导致异常的异常线程的运行数据;根据异常线程的运行数据,确定发生异常的内存地址或内存变量,得到待监测内存地址或内存变量;运行嵌入式系统,并通过预设的监测程序监测待监测内存地址或内存变量;在待监测内存地址或内存变量被异常改写时,通过预设调用工具获取待监测内存地址或内存变量的调用栈信息。实现了对嵌入式系统中的内存改写的自动化监测,并且获取了内存改写时的调用栈信息,能够方便定位改写原因。
技术领域
本申请涉及计算机技术领域,特别是涉及嵌入式系统内存改写监测方法、装置、设备及存储介质。
背景技术
嵌入式系统是以应用为中心,以现代计算机技术为基础,能够根据用户需求(例如,功能、可靠性、成本、体积、功耗、环境等)灵活裁剪软硬件模块的专用计算机系统。
嵌入式系统由硬件和软件组成.是能够独立进行运作的器件。其软件内容只包括软件运行环境及其操作系统。硬件内容可以包括处理器、存储器、通信模块等。相比于一般的计算机处理系统而言,嵌入式系统存在较大的差异性,它不能实现大容量的存储功能,因为没有与之相匹配的大容量介质。在嵌入式系统中,由于内存变量没有明确的空间隔离,在同一个进程内,各个子系统共享同一块内存空间,所以经常发生内存改写的问题,从而导致进程访问内存数据错误的情况,容易导致进程崩溃。因此,希望对嵌入式系统中的内存改写进行监测。
发明内容
本申请实施例的目的在于提供一种嵌入式系统内存改写监测方法、装置、设备及存储介质,以实现对嵌入式系统中的内存改写进行监测。具体技术方案如下:
第一方面,本申请实施例提供了一种嵌入式系统内存改写监测方法,所述方法包括:
获取嵌入式系统中由内存改写而导致异常的异常线程的运行数据;
根据所述异常线程的运行数据,确定发生异常的内存地址或内存变量,得到待监测内存地址或内存变量;
运行所述嵌入式系统,并通过预设的监测程序监测所述待监测内存地址或内存变量;
在所述待监测内存地址或内存变量被异常改写时,通过预设调用工具获取所述待监测内存地址或内存变量的调用栈信息。
在一种可能的实施方式中,所述根据所述异常线程的运行数据,确定发生异常的内存地址或内存变量,得到待监测内存地址或内存变量,包括:
对所述异常线程的运行数据进行反汇编,得到汇编数据;
根据所述汇编数据得到内存改写的位置;
根据所述内存改写的位置,确定发生异常的内存地址或内存变量,得到待监测内存地址或内存变量。
在一种可能的实施方式中,所述运行所述嵌入式系统,并通过预设的监测程序监测所述待监测内存地址或内存变量,包括:
根据所述汇编数据,确定所述嵌入式系统中内存变量被改写的代码段,针对所述内存变量被改写的代码段添加监测函数;
运行添加监测函数后的嵌入式系统,并利用所述监测函数监测所述待监测内存地址或内存变量。
在一种可能的实施方式中,所述在所述待监测内存地址或内存变量被异常改写时,通过预设调用工具获取所述待监测内存地址或内存变量的调用栈信息,包括:
在所述待监测内存地址或内存变量被异常改写时触发断点,并通过程序调试工具GDB调用call函数,以获取异常修改改写所述待监测内存地址或内存变量的调用栈信息。
第二方面,本申请实施例提供了一种嵌入式系统内存改写监测装置,其特征在于,所述装置包括:
运行数据获取模块,用于获取嵌入式系统中由内存改写而导致异常的异常线程的运行数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大唐移动通信设备有限公司,未经大唐移动通信设备有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011270848.8/2.html,转载请声明来源钻瓜专利网。