[发明专利]一种统计程序访问文件次数和耗时的方法及装置在审
申请号: | 201810005246.6 | 申请日: | 2018-01-03 |
公开(公告)号: | CN108304304A | 公开(公告)日: | 2018-07-20 |
发明(设计)人: | 周伟杰;谢鸿雁;张治良;张经生;朱海旺;张健 | 申请(专利权)人: | 珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 俞梁清 |
地址: | 519000 广东省珠*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 钩子函数 动态库 耗时 采样数据 程序访问 进程 监视 卸载 统计 检测 采样数据保存 输出采样数据 计算机程序 测试过程 创建文件 访问文件 继续执行 外部文件 性能瓶颈 挂起 捕获 直观 开发 | ||
1.一种统计程序访问文件次数和耗时的方法,其特征在于,包括以下步骤:
启动待检测的程序,并挂起程序对应的进程;
将监视动态库注入进程并启动所述监视动态库,其中监视动态库包括采样数据的钩子函数,安装及卸载钩子函数的安装卸载函数,以及,统计及输出采样数据的整理函数;
让进程继续执行,此时通过监视动态库的钩子函数捕获进程打开和/或创建文件事件以采样数据;
终止进程前,整理函数将采样数据保存为外部文件。
2.根据权利要求1所述方法,其特征在于,监视动态库注入进程并启动所述监视动态库的步骤还包括如下子步骤:
远程启动监视动态库,使用安装卸载函数安装钩子函数;
初始化钩子函数,监控待检测的程序内的打开和/或创建文件的函数。
3.根据权利要求1所述方法,其特征在于,终止进程还包括如下子步骤:
以文件为单位,由整理函数统计各份文件的采样数据;
启动安装卸载函数卸载钩子函数。
4.根据权利要求1所述方法,其特征在于,采样数据至少包括被打开文件的路径、被打开的次数、打开失败次数以及打开耗时总和。
5.根据权利要求4所述方法,其特征在于,整理函数根据各份文件被打开的次数排序,并将排序后的采样数据保存到外部文件。
6.根据权利要求4所述方法,其特征在于,整理函数根据各份文件被打开的总耗时排序,并将排序后的采样数据保存到外部文件。
7.根据权利要求5或6所述方法,其特征在于,外部文件保存排序后采样数据的前指定个数的记录。
8.根据权利要求4所述方法,其特征在于,整理函数根据各份文件被打开的次数以及打开耗时总和,形成各份文件每次打开的耗时平均值,保存到外部文件。
9.一种统计程序访问文件次数和耗时的装置,其特征在于,包括以下模块:
启动模块,用于启动待检测的程序,并挂起程序对应的进程;
注入模块,用于将监视动态库注入进程并启动所述监视动态库,其中监视动态库包括采样数据的钩子函数,安装及卸载钩子函数的安装卸载函数,以及,统计及输出采样数据的整理函数;
采样模块,用于让进程继续执行,此时通过监视动态库的钩子函数捕获进程打开和/或创建文件事件以采样数据;
保存模块,用于终止进程前,整理函数将采样数据保存为外部文件。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于该指令被处理器执行时实现如权利要求1至8中任一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司,未经珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810005246.6/1.html,转载请声明来源钻瓜专利网。