[发明专利]一种监测车机系统CMA内存越界的方法、装置及存储介质在审
申请号: | 202210311406.6 | 申请日: | 2022-03-28 |
公开(公告)号: | CN114840333A | 公开(公告)日: | 2022-08-02 |
发明(设计)人: | 吴宛平;刘浩;杜祥潇 | 申请(专利权)人: | 东风汽车集团股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F11/07;G06F13/28 |
代理公司: | 湖北武汉永嘉专利代理有限公司 42102 | 代理人: | 王丹 |
地址: | 430056 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 监测 系统 cma 内存 越界 方法 装置 存储 介质 | ||
本发明公开了一种监测车机系统CMA内存越界的方法,其包括如下步骤:1)系统上电后,模块开始初始化工作,申请CMA内存;2)申请CMA内存时,在申请的内存区域前后分别多申请内存;3)在多申请的内存区域中写入一个预设的数据,记录该内存区域是由哪个控制器申请;4)起一个线程监测前后多申请的内存是否被改写;5)若前后多申请的内存被改写,判断是哪个控制器的内存区域,通知对应的控制器进行复位操作,修复内存越界问题。本发明还公开了一种监测车机系统CMA内存越界的装置。本发明可及时监测车机系统CMA内存越界情况,以便及时修复,提高系统稳定性。
技术领域
本发明属于计算机技术领域,具体涉及一种监测车机系统CMA内存越界的方法、装置及存储介质。
背景技术
车机系统一般采用Linux或Android系统,系统中的各种控制器大多会涉及到内存的申请,使用和释放。现有的车机系统一般都集成倒车影像、投屏等功能,相应的外设模块摄像头、显示屏、视频编码解码模块、GPU等在上电初始化时都需要申请CMA内存,用于视频数据的传输、处理等。车机中的GPU、摄像机、硬件视频解码器、编码器等设备在使用时都需要较大的连续内存缓冲区,使用CMA技术分配连续的内存空间进行数据的传输,DMA传输过程中将数据搬移到DMA内存,很多DMA控制器无法返回占用了内存。因为无法得知CMA内存的占用情况,因此不能有效的对比是否出现了内存越界。在这个过程中,很容易出现内存泄漏、内存越界等问题。如果出现内存越界,很容易导致数据丢失,使整个系统出现功能异常,比如摄像头显示画面花屏,甚至可能导致系统重启,严重影响系统正常工作。
当系统出现内存问题时,往往现象不确定,出现的条件、时间也不确定,因此很难定位究竟是哪里出现了内存问题。现有的代码检测工具只能检测出一些比较明显的内存泄漏、内存越界问题,对于复杂的功能代码,传统的代码检测工具不能进行有效的检查。我们迫切需要一种监测车机系统CMA内存越界的方法。
发明内容
本发明的目的在于提供一种监测车机系统CMA内存越界的方法、装置及存储介质,可及时监测车机系统CMA内存越界情况,以便及时修复,提高系统稳定性。
本发明解决其技术问题所采用的技术方案是:
一种监测车机系统CMA内存越界的方法,其包括如下步骤:
1)系统上电后,模块开始初始化工作,申请CMA内存;
2)申请CMA内存时,在申请的内存区域前后分别多申请内存;
3)在多申请的内存区域中写入一个预设的数据,记录该内存区域是由哪个控制器申请;
4)起一个线程监测前后多申请的内存是否被改写;
5)若前后多申请的内存被改写,判断是哪个控制器的内存区域,通知对应的控制器进行复位操作,修复内存越界问题。
更进一步的方案是,所述模块包括CAMERA模块、DISPLAY模块、视频编码模块和/或视频解码模块,适用范围广。
更进一步的方案是,步骤2)中,申请CMA内存时,在申请的内存区域前后分别多申请4K内存。
更进一步的方案是,步骤3)中,预设的数据应先定义好协议,每个数据代表由不同的控制器申请的内存。
更进一步的方案是,步骤3)中,记录多申请的内存的开始地址和结束地址,该数据也用于判断多出的内存属于哪个控制器。
更进一步的方案是,步骤5)中,若前后多申请的内存被改写,根据多申请的内存的开始地址和结束地址判断是哪个控制器的内存区域。
本发明还提供一种监测车机系统CMA内存越界的装置,其包括
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东风汽车集团股份有限公司,未经东风汽车集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210311406.6/2.html,转载请声明来源钻瓜专利网。