[发明专利]监测断点出现的存储器位置的方法、计算机系统和介质有效
申请号: | 201780083409.6 | 申请日: | 2017-12-29 |
公开(公告)号: | CN110168508B | 公开(公告)日: | 2023-05-26 |
发明(设计)人: | J·莫拉 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F12/0802 |
代理公司: | 北京世辉律师事务所 16093 | 代理人: | 王俊 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 监测 断点 出现 存储器 位置 方法 计算机系统 介质 | ||
1.一种用于在调试期间通过高速缓存的使用来监测断点出现的存储器位置的方法,所述方法在包括一个或多个处理器的计算机系统处实现,所述方法包括:
标识要被监测的存储器地址;
至少基于标识要被监测的所述存储器地址,至少执行以下操作:
将所述存储器地址存储在断点监测列表中;以及
确保与所述存储器地址重叠的任何高速缓存行从高速缓存中被逐出,包括:
确定与所述存储器地址重叠的一个或多个高速缓存行是否已经存在于所述高速缓存中,并且
当所述一个或多个高速缓存行已经存在于所述高速缓存中时,基于所述存储器地址被存储在所述断点监测列表中,从所述高速缓存中逐出所述一个或多个高速缓存行;
在调试期间,基于存储器访问操作,检测高速缓存未命中的发生;以及
至少基于所述高速缓存未命中的发生,确定基于所述高速缓存未命中导入到所述高速缓存中的高速缓存行的一部分是否与存储在所述断点监测列表中的所述存储器地址重叠,并且当导入的高速缓存行的所述部分确实与所述存储器地址重叠时,至少执行以下操作:
处理对所述存储器地址的一个或多个监测操作;以及
基于所述存储器地址被存储在所述断点监测列表中,从所述高速缓存中逐出所述导入的高速缓存行。
2.如权利要求1所述的方法,其中所述一个或多个监测操作包括将所述一个或多个处理器中的至少一个置于详细模式中并且使所述至少一个处理器单步操作。
3.如权利要求1所述的方法,其中确定基于所述高速缓存未命中导入到所述高速缓存中的高速缓存行的一部分是否与存储在所述断点监测列表中的所述存储器地址重叠包括确定所述导入的高速缓存行是否包括与存储在所述断点监测列表中的所述存储器地址匹配的存储器地址。
4.如权利要求1所述的方法,其中当所述导入的高速缓存行的所述部分不与所述存储器地址重叠时,所述导入的高速缓存行保留在所述高速缓存中。
5.如权利要求1所述的方法,其中处理对所述存储器地址的一个或多个监测操作包括确定当所述存储器访问操作写入或读取所述存储器地址时遇到断点。
6.如权利要求1所述的方法,其中处理对所述存储器地址的一个或多个监测操作包括确定当所述存储器地址没有由所述存储器访问操作写入或读取时没有遇到断点。
7.如权利要求1所述的方法,其中所述存储器访问操作包括数据读取、数据写入或代码执行访问操作中的至少一个。
8.如权利要求1所述的方法,还包括通过对由多个存储器操作访问的高速缓存行执行监测操作来合并针对所述多个存储器操作的高速缓存未命中,同时避免在所述多个存储器操作期间逐出所述高速缓存行。
9.如权利要求1所述的方法,其中将所述存储器地址存储在断点监测列表中包括将所述存储器地址存储在包括多个被监测的存储器地址的断点监测列表中。
10.如权利要求1所述的方法,其中所述一个或多个监测操作包括在用户界面处报告断点检查的结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780083409.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:可执行代码的推测重放
- 下一篇:集成应用问题检测和改正控制