[发明专利]一种嵌入式Linux系统应用程序的调测方法及系统在审
申请号: | 202011153779.2 | 申请日: | 2020-10-26 |
公开(公告)号: | CN112231221A | 公开(公告)日: | 2021-01-15 |
发明(设计)人: | 常卫江;赵静;魏峰;柳逢源 | 申请(专利权)人: | 积成电子股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/54 |
代理公司: | 北京久维律师事务所 11582 | 代理人: | 邢江峰 |
地址: | 250104 *** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 linux 系统 应用程序 方法 | ||
本发明提供了一种嵌入式Linux系统应用程序的调测方法及系统,本发明通过在应用程序中添加Shell模块,以及自制debugshell工具,两者通过管道进行进程间通信,同时应用程序进程利用自动提取的符号表解析调试命令,完成在标准Linux系统根Shell命令行交互窗口中,通过debugshell工具对应用程序全局变量的实时读写、函数的实时调用等功能,操作简单,实时性强,且能够做到不干扰系统的正常运行,不影响现场环境的正常运营。
技术领域
本发明涉及嵌入式Linux系统技术领域,特别是一种嵌入式Linux系统应用程序的调测方法及系统。
背景技术
在嵌入式Linux系统中调试程序或定位问题时,经常需要在运行时查看某个变量的值,或执行某个调试函数,这时往往需要在源代码中增加打印语句,或增加函数调用的语句,并重新编译运行,这样做不仅操作步骤繁琐,要花费大量编译和运行的时间,更重要的是破坏了问题发生时的现场,不利于一些偶发问题的调试定位,尤其是当设备在客户运营的环境下工作时,重新编译运行的方式可能会中断现场的运营,无法得到客户的认同,这就需要一种能让开发人员在系统正常运行不受干扰的情况下定位问题的快捷手段。
发明内容
本发明的目的是提供一种嵌入式Linux系统应用程序的调测方法及系统,旨在解决现有技术中调试过程影响系统正常运行的问题,实现不干扰系统的正常运行,降低操作复杂度。
为达到上述技术目的,本发明提供了一种嵌入式Linux系统应用程序的调测方法,所述方法包括以下操作:
在应用程序源码中添加Shell模块,重新编译后,利用nm工具获取重新编译后的应用程序文件的符号表;
在ubuntu中交叉编译debugshell源码,得到debugshell工具的可执行文件,并将debugshell工具放置在设备目录下,创建符号链接;
在设备的Shell命令行中键入调试命令和参数,debugshell工具向命令管道发送调试命令,Shell模块接收调试命令,调用命令函数并查找符号表,将参数中符号替换为内存地址,输出调试结果至结果管道,debugshell工具读取结果并打印。
优选地,所述debugshell工具以只写方式打开命令管道文件以及以只读方式打开结果管道文件;所述Shell模块以只读方式打开命令管道文件以及以只写方式打开结果管道文件。
优选地,所述调试命令包括d/m/call的调试命令,d命令为按一定的字节宽度显示指定地址后若干字节的内容,m命令为按一定的字节宽度修改指定地址后若干字节的内容,call命令为调用指定的应用程序中的函数,并根据命令的参数个数选用相应的函数指针,通过函数指针调用目标函数并传递参数。
优选地,所述调试结果具有固定的结尾字符。
本发明还提供了一种嵌入式Linux系统应用程序的调测系统,所述系统包括:
主程序Shell模块,用于在应用程序源码中添加Shell模块,重新编译后,利用nm工具获取重新编译后的应用程序文件的符号表;
debugshell模块,用于在ubuntu中交叉编译debugshell源码,得到debugshell工具的可执行文件,并将debugshell工具放置在设备目录下,创建符号链接;
调试交互模块,用于在设备的Shell命令行中键入调试命令和参数,debugshell工具向命令管道发送调试命令,Shell模块接收调试命令,调用命令函数并查找符号表,将参数中符号替换为内存地址,输出调试结果至结果管道,debugshell工具读取结果并打印。
优选地,所述debugshell工具以只写方式打开命令管道文件以及以只读方式打开结果管道文件;所述Shell模块以只读方式打开命令管道文件以及以只写方式打开结果管道文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于积成电子股份有限公司,未经积成电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011153779.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种载人潜水器甲板横向轨道车机构
- 下一篇:一种用于石英炉的气体冷却过滤装置