[发明专利]一种基于Web的协同调试系统及方法有效
申请号: | 201810552504.2 | 申请日: | 2018-05-31 |
公开(公告)号: | CN108829591B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 计卫星;石剑君;王一拙;高玉金;石峰 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;H04L29/08 |
代理公司: | 北京慕达星云知识产权代理事务所(特殊普通合伙) 11465 | 代理人: | 姜海荣 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 web 协同 调试 系统 方法 | ||
1.一种基于Web的协同调试系统,其特征在于,包括基于Web的图形化调试平台和协同调试框架;
所述基于Web的图形化调试平台包括:
Web客户端浏览器模块,用于向HTTP服务器模块发送调试请求,将GDB服务器调试模块返回的调试信息呈现给用户;
HTTP服务器模块,用于接收所述调试请求,并将GDBWrapper消息转换模块的输出结果返回给用户客户端浏览器;
GDBWrapper消息转换模块,用于接收所述HTTP服务器模块处理的所述调试请求,并将所述调试请求发送给GDB服务器调试模块;以及接收所述GDB服务器调试模块的发送的调试结果,将所述调试结果返回给所述HTTP服务器模块;
GDB服务器调试模块,用于调试所述调试请求相对应的目标系统和应用程序,将调试结果返回给GDBWrapper消息转换模块;
所述协同调试框架包括:
协同调试用户管理模块,用于将所有调试用户分为多个调试组进行管理,并根据用户请求为用户创建一个新的调试组或将用户加入到现有的调试组;每个调试组具有唯一表示ID,同一所述调试组的用户所接收到的调试信息相同;
协同调试权限管理模块,用于确定每个调试组的待调试用户是否拥有唯一Token;所述每个调试组Session维护一个唯一Token,当拥有Token的用户有权限发送调试命令;
协同调试消息管理模块,用于对所述调试请求和调试结果采用统一管理机制,将每一个调试请求和调试结果返回给相对应调试组的所有调试成员,通过采用数据库缓存机制保证调试信息的一致性。
2.如权利要求1所述的一种基于Web的协同调试系统,其特征在于,所述调试请求包括以下一种或多种命令:
暂停Pause、运行Run、Step单步、设置断点Set Breakpoint、删除断点RemoveBreakpoint、设置观察点Set Watchpoint、删除观察点Remove Watchpoint、查看指定内存信息Memory、查看寄存器信息Register和退出Quit。
3.如权利要求1所述的一种基于Web的协同调试系统,其特征在于,所述调试信息包括以下一种或多种信息:
系统运行时线程堆栈信息、命令执行返回的GDB调试信息、断点列表信息、观察点列表信息、指定内存数据信息和寄存器数据信息。
4.如权利要求1所述的一种基于Web的协同调试系统,其特征在于,所述GDBWrapper消息转换模块,具体用于将所述Web客户端浏览器模块发送的JSON格式数据转换为GDB服务器可执行的调试命令,以及将所述GDB服务器调试模块返回的调试结果转换为所述Web客户端浏览器模块显示的HTML格式数据。
5.如权利要求4所述的一种基于Web的协同调试系统,其特征在于,所述JSON格式数据的调试命令,具体格式为:
[GID][COMMAND]:[调试事件]。
6.如权利要求4所述的一种基于Web的协同调试系统,其特征在于,所述的调试结果的格式为:
[GID][COMMAND]:[调试事件][线程堆栈][断点列表][内存信息][寄存器信息]。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810552504.2/1.html,转载请声明来源钻瓜专利网。