[发明专利]天熠嵌入式操作系统下一种基于代理的任务级调试方法在审
申请号: | 202211557343.9 | 申请日: | 2022-12-06 |
公开(公告)号: | CN115757183A | 公开(公告)日: | 2023-03-07 |
发明(设计)人: | 岳静;郭袁贾;姚蕊;洪冯;刘永胜;薛渊文 | 申请(专利权)人: | 北京计算机技术及应用研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 刘瑞东 |
地址: | 100854*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 操作系统 一种 基于 代理 任务 调试 方法 | ||
本发明涉及一种天熠嵌入式操作系统下一种基于代理的任务级调试方法,属于软件调试领域。本发明在天熠嵌入式操作系统上实现调试代理并将调试代理模块运行在目标机端,以天熠嵌入式操作系统中线程的方式实现该调试代理模块,上位机运行GDB调试器,接收和处理来自用户的调试命令,然后GDB调试器将此命令基于目标机架构以RSP包的形式发给调试代理模块解析,返回结果信息,这样使得天熠嵌入式操作系统能够有一个在线调试环境。本发明能够完美解决现有的嵌入式操作系统只能采用串口打印的方式进行应用程序的调试,本发明将被调试程序作为一个运行在天熠嵌入式操作系统下的任务,且对此任务进行调试不会影响其他无关任务的运行。
技术领域
本发明属于软件调试领域,具体涉及一种天熠嵌入式操作系统下一种基于代理的任务级调试方法。
背景技术
调试又称排错或纠错。调试的任务是根据发现的错误,找出原因以及具体的位置以改正错误。即对错误进行定位并分析原因。
然而通用操作系统与嵌入式操作系统在调试环境上存在明显的差别。一是被调试程序的运行位置不一致,二是运行调试代理的操作系统不一致。对于通用桌面操作系统,如windows、l inux等,调试器与被调试程序都运行于桌面操作系统,通过使用GDB或者其他软件调试器来控制和访问被调试程序。对于嵌入式操作系统,调试器运行在桌面操作系统,被调试程序则运行在目标机器中。
GDB是一种开源调试器,所包含的功能几乎涵盖了商用调试器的全部功能。其为编程人员提供了良好的交互界面,可以完成本地或者远程的程序源码级和指令级的调试。
目前在天熠嵌入式操作系统下常用的调试手段为串口调试。在调试程序时添加打印信息,打印信息通过串口工具比如串口助手、secureCRT等工具打印出来,通过逐步增加打印信息的方式定位问题的位置,达到纠错的目的。
目前串口打印作为一种离线调试方式,需要将编译好的程序装载到目标机上运行,然后通过串口方式打印想要获取的信息。然而由于问题的复杂性,这个过程往往要持续多次,对开发人员来说,大大增加了开发周期和开发成本,降低了嵌入式操作系统开发速度和开发质量。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是如何提供一种天熠嵌入式操作系统下一种基于代理的任务级调试方法,以解决通过串口方式调试对开发人员来说,大大增加了开发周期和开发成本,降低了嵌入式操作系统开发速度和开发质量的问题。
(二)技术方案
为了解决上述技术问题,本发明提出一种天熠嵌入式操作系统下一种基于代理的任务级调试方法,该方法包括
S1、准备好上位机运行环境:GDB调试器运行在上位机中,下载并编译对应版本以及对应架构的GDB源码,准备对应目标机架构的交叉编译器以及链接脚本文件;
S2、开发调试代理:针对天熠嵌入式操作系统和具体的目标CPU架构,在天熠操作系统上,开发定制目标机端的调试代理源码;调试代理模块包括初始化模块、命令解析执行模块以及数据传输模块;
S3、应用开发与调试阶段
S31、在上位机中通过准备好的交叉编译链以及链接脚本将已开发完成的调试代理模块以及被调试应用源码一起编译生成带’-g’选项的可执行文件,‘-g’选项表示可执行文件附带调试信息;
S32、将目标镜像文件下载至目标机上运行,等待shel l启动;
S33、通过串口或者网络输入封装好的命令以初始化调试代理模块以及其他驱动,并输出字符串表示目标机等待连接;
S34、上位机编译好的GDB调试器启动,通过“target”命令连接目标机,连接成功后上位机GDB调试器处于轮询模式;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211557343.9/2.html,转载请声明来源钻瓜专利网。