[发明专利]一种共享内存泄漏的提醒方法及装置有效
| 申请号: | 201810047922.6 | 申请日: | 2018-01-18 |
| 公开(公告)号: | CN108334435B | 公开(公告)日: | 2021-12-24 |
| 发明(设计)人: | 符志清 | 申请(专利权)人: | 杭州迪普科技股份有限公司 |
| 主分类号: | G06F11/32 | 分类号: | G06F11/32;G06F11/30;G06F9/50 |
| 代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
| 地址: | 310051 浙江省杭*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 共享 内存 泄漏 提醒 方法 装置 | ||
1.一种共享内存泄漏的提醒方法,其特征在于,所述方法应用于多进程操作系统,所述多进程操作系统中维护有若干共享内存,所述方法包括:
在接收到目标进程成功启动的消息后,对所述目标进程的地址空间进行监测;
根据监测结果,获取所述地址空间中所述目标进程附接各共享内存所占用的地址空间的大小,以及所述目标进程附接的共享内存的信息;所述目标进程附接的共享内存的信息包括共享内存被所述目标进程附接的次数;
根据所述目标进程附接各共享内存所占用的地址空间的大小和所述目标进程附接的共享内存的信息,判断所述目标进程是否存在共享内存泄漏;
若是,则进行提醒;
所述方法还包括:
在接收到目标进程成功启动的消息后,获取所述目标进程初始状态下的空闲地址空间的大小;
所述根据所述目标进程附接共享内存所占用的地址空间的大小和所述目标进程附接的共享内存的信息,判断所述目标进程是否存在共享内存泄漏,包括:
当任一共享内存被所述目标进程附接的次数大于预设次数,且附接所述共享内存所占用的地址空间的大小与所述空闲地址空间的大小的比值大于等于预设比值时,确定所述目标进程存在共享内存泄漏。
2.根据权利要求1所述的方法,其特征在于,在所述目标进程为多线程的情况下,所述目标进程附接的共享内存的信息还包括共享内存被所述目标进程的线程附接的次数;
所述任一共享内存被所述目标进程附接的次数,包括任一共享内存被所述目标进程的任一线程附接的次数。
3.根据权利要求1所述的方法,其特征在于,所述进行提醒,包括:
发送警告日志或发送TRAP消息;
所述目标进程附接的共享内存的信息,还包括:
所述目标进程的ID、所述目标进程的线程的ID、共享内存的大小及共享内存的key值。
4.一种共享内存泄漏的提醒装置,其特征在于,所述装置应用于多进程操作系统,所述多进程操作系统中维护有若干共享内存,所述装置包括:
监测模块,用于在接收到目标进程成功启动的消息后,对所述目标进程的地址空间进行监测;
第一获取模块,用于根据监测结果,获取所述地址空间中所述目标进程附接各共享内存所占用的地址空间的大小,以及所述目标进程附接的共享内存的信息;所述目标进程附接的共享内存的信息包括共享内存被所述目标进程附接的次数;
判断模块,用于根据所述目标进程附接各共享内存所占用的地址空间的大小和所述目标进程附接的共享内存的信息,判断所述目标进程是否存在共享内存泄漏;
提醒模块,用于在确定所述目标进程存在共享内存泄漏时,进行提醒;
所述装置还包括:
第二获取模块,用于在接收到目标进程成功启动的消息后,获取所述目标进程初始状态下的空闲地址空间的大小;
所述判断模块,具体用于:
当任一共享内存被所述目标进程附接的次数大于预设次数,且附接所述共享内存所占用的地址空间的大小与所述空闲地址空间的大小的比值大于等于预设比值时,确定所述目标进程存在共享内存泄漏。
5.根据权利要求4所述的装置,其特征在于,在所述目标进程为多线程的情况下,所述目标进程附接的共享内存的信息还包括共享内存被所述目标进程的线程附接的次数;
所述任一共享内存被所述目标进程附接的次数,包括任一共享内存被所述目标进程的任一线程附接的次数。
6.根据权利要求4所述的装置,其特征在于,所述提醒模块,具体用于:
发送警告日志或发送TRAP消息;
所述目标进程附接的共享内存的信息,还包括:
所述目标进程的ID、所述目标进程的线程的ID、共享内存的大小及共享内存的key值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州迪普科技股份有限公司,未经杭州迪普科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810047922.6/1.html,转载请声明来源钻瓜专利网。





