【技术实现步骤摘要】
监控方法、装置及系统
本申请涉及计算机
,尤其是涉及一种监控方法、装置及系统。
技术介绍
在日常的系统运维和调测过程中,内存数据故障导致的问题的来源通常是随机产生的,因而难以定位。类似的问题比如包括:i)踩内存:程序内存由于被异常代码修改而导致错误,但是异常代码源却难以确定;ii)系统引用计数错误:由于代码异常,在某些场景中添加了引用计数操作,但是却没有在匹配的场景下减少引用计数。iii);死锁问题:程序在运行过程中,触发死锁后,通常很容易就找到导致死锁的锁(通常为排它锁),但却无法确定导致死锁的锁当前被谁持有。目前,一般采用排除法或代码分析方法确定内存数据故障源。显然,这样的方式耗时耗力,实现成本高且效率低下。因此实现成本低且效率高的定位内存数据故障源的方案是人们所普遍希望的。
技术实现思路
本申请实施例的目的在于提供一种监控方法、装置及系统,以提高定位内存数据故障源的效率,降低定位内存数据故障源的实现成本。为达到上述目的,一方面,本申请实施例提供了一种监控方法,包括以下步骤:确定预定类型的操作访问预定的物理内存地址,则触发中断;根据触发所述中断的物理内存地址 ...
【技术保护点】
1.一种监控方法,其特征在于,包括以下步骤:确定预定类型的操作访问预定的物理内存地址,则触发中断;根据触发所述中断的物理内存地址,确定第一可执行代码的入口地址;执行所述第一可执行代码,以对所述预定的物理内存地址进行数据监控。
【技术特征摘要】
1.一种监控方法,其特征在于,包括以下步骤:确定预定类型的操作访问预定的物理内存地址,则触发中断;根据触发所述中断的物理内存地址,确定第一可执行代码的入口地址;执行所述第一可执行代码,以对所述预定的物理内存地址进行数据监控。2.根据权利要求1所述的监控方法,其特征在于,所述根据触发所述中断的物理内存地址,确定第一可执行代码的入口地址,包括:根据触发所述中断的物理内存地址,确定对应的数据断点;确定所述数据断点中的第一可执行代码的入口地址。3.根据权利要求1所述的监控方法,其特征在于,所述对所述预定的物理内存地址进行数据监控,包括:判断所述物理内存地址是否存在指定类型的内存数据故障;如果存在,则按照所述第一可执行代码中的监控逻辑,实时抓取所述物理内存地址的状态信息保存至共享内存,以提供给用户。4.根据权利要求3所述的监控方法,其特征在于,在所述按照所述第一可执行代码中的监控逻辑,实时抓取所述物理内存地址的状态信息保存至共享内存之后,还包括:触发软中断,并确定第二可执行代码的入口地址;执行所述第二可执行代码,以根据所述第二可执行代码中的监控逻辑定位内存数据故障源。5.根据权利要求2所述的监控方法,其特征在于,所述数据断点预先通过以下步骤配置于数据缓冲寄存器中:获取监控逻辑脚本、以及用户指定监控的内存地址范围和内存操作类型;将所述监控逻辑脚本转换成对应的可执行代码;将该可执行代码加载至内核地址空间中的指定内存段,并记录该可执行代码的入口地址;将所述指定监控的内存地址范围所对应的物理地址信息,以及所述内存操作类型写入数据缓冲寄存器,并在所述数据缓冲寄存器的数据结构中,添加该可执行代码的入口地址。6.根据权利要求5所述的监控方法,其特征在于,所述将所述监控逻辑脚本转换成对应的可执行代码,包括:通过虚拟解释器将所述监控逻辑脚本转换成对应的可执行代码。7.根据权利要求5所述的监控方法,其特征在于,所述内存地址范围包括以下中的一种:指定进程的内存逻辑地址范围;指定进程的内存线性地址范围;内核线性地址范围;内核逻辑地址范围;以及,内核符号。8.根据权利要求5所述的监控方法,其特征在于,所述预定类型的操作包括以下中的至少一种:内存读操作、内存写操作和内存读写操作。9.根据权利要求5所述的监控方法,其特征在于,所述监控逻辑脚本包括以下中的至少一种:踩内存监控逻辑;死锁监控逻辑;以及,系统引用计数错误监控逻辑;其中,每...
【专利技术属性】
技术研发人员:张超,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。