[发明专利]一种数据断点监控方法、装置及调试器在审
申请号: | 201310423291.0 | 申请日: | 2013-09-16 |
公开(公告)号: | CN104461806A | 公开(公告)日: | 2015-03-25 |
发明(设计)人: | 吴春江 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F11/26 | 分类号: | G06F11/26 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 张颖玲;张振伟 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 断点 监控 方法 装置 调试 | ||
技术领域
本发明涉及数据调试技术,尤其涉及一种数据断点监控方法、装置及调试器。
背景技术
数据断点监控涉及的程序越来越庞大,程序内部的关联越来越多,内存问题也相应越来越多。因此,出现了内存越界读写、空指针读写、非法地址读写等内存问题,这些问题一直困扰着软件开发人员。
调试器是一种帮助开发人员分析和定位程序故障的工具,不仅能够在被调试程序中设置断点、查看变量和寄存器、显示堆栈和求表达式值,而且能够控制被调试程序单步进入、单步跳过、单步返回、暂挂、继续运行等操作。
目前常用的调试器仅能对被调试程序中内存地址固定的全局变量进行数据断点监控,而由于被调试程序中局部变量对应的内存地址存在的时间比较短,现有调试器无法实现对内存地址不确定的局部变量进行数据断点监控。
发明内容
本发明主要提供一种数据断点监控方法、装置及调试器,能够对被调试程序中任意变量进行数据断点监控。
本发明的技术方案是这样实现的:
本发明提供一种数据断点监控方法,该方法包括:
调试器设置第一触发点,在所述第一触发点被触发时,根据所述第一触发点的数据断点信息设置数据断点寄存器,并根据所述数据断点寄存器监控所述第一触发点。
上述方案中,所述调试器设置第一触发点为:所述调试器在被调试程序指定位置设置用于开启自定义数据断点监控功能的数据断点。
上述方案中,所述根据所述第一触发点的数据断点信息设置数据断点寄存器包括:调试器确定出第一触发点的数据断点信息中有开启自定义数据断点功能标志,根据第一触发点的数据断点信息中数据断点所对应的内存地址或变量名、和监控属性设置数据断点寄存器,所述数据断点寄存器包括数据断点地址寄存器和数据断点控制寄存器。
上述方案中,所述根据第一触发点的数据断点信息中数据断点所对应的内存地址或变量名、和监控属性设置数据断点寄存器为:
当第一触发点对应全局变量名时,所述调试器通过查找符号表获得所述全局变量名对应的数据断点监控地址;
当第一触发点对应内存地址时,所述调试器将所述内存地址进行字符串转换获得数据断点监控地址;
当第一触发点对应局部变量名时,所述调试器通过分析被调试程序上下文获得数据断点监控地址;
所述调试器在获得数据断点监控地址后,将所获得的数据断点监控地址及监控属性分别写入数据断点地址寄存器和控制寄存器。
上述方案中,所述调试器根据所述数据断点寄存器监控所述第一触发点为:所述调试器根据所述数据断点控制寄存器中的监控属性对所述数据断点地址寄存器中数据断点监控地址对应的内存区域进行监控。
上述方案中,所述调试器设置第二触发点,在所述第二触发点被触发时,根据所述第二触发点的数据断点信息清除对应数据断点寄存器。
上述方案中,所述调试器设置第二触发点为:所述调试器在被调试程序指定位置设置用于关闭自定义数据断点监控功能的数据断点。
上述方案中,所述根据所述第二触发点的数据断点信息清除对应数据断点寄存器为:调试器确定出第二触发点的数据断点信息中有关闭自定义数据断点功能标志,根据第二触发点的数据断点信息中数据断点所对应的内存地址或变量名、和监控属性删除对应数据断点寄存器,所述数据断点寄存器包括数据断点地址寄存器和数据断点控制寄存器。
本发明提供一种数据断点监控装置,该装置包括:第一设置模块、第二设置模块、触发模块和监控模块;
所述第一设置模块,用于设置第一触发点;
所述触发模块,用于在所述第一触发点被触发时,通知所述第二设置模块;
所述第二设置模块,用于在所述第一触发点被触发时,根据所述第一触发点的数据断点信息设置数据断点寄存器;
所述监控模块,用于根据所述数据断点寄存器监控所述第一触发点。
上述方案中,所述装置还包括:清除模块,用于在第二触发点被触发时,根据第二触发点的数据断点信息清除对应的数据断点寄存器;
相应的,所述第一设置模块,还用于设置第二触发点;
相应的,所述触发模块,还用于在所述第二触发点被触发时,通知所述清除模块。
本发明还提供一种调试器,该调试器包括:以上所述的数据断点监控装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310423291.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置