[发明专利]动态汇编指令统计的方法及装置有效
申请号: | 201210355265.4 | 申请日: | 2012-09-21 |
公开(公告)号: | CN102929679A | 公开(公告)日: | 2013-02-13 |
发明(设计)人: | 陈浩 | 申请(专利权)人: | 武汉邮电科学研究院 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 北京捷诚信通专利事务所(普通合伙) 11221 | 代理人: | 魏殿绅;庞炳良 |
地址: | 430074 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态 汇编 指令 统计 方法 装置 | ||
技术领域
本发明涉及计算机网络技术,具体涉及动态汇编指令统计的方法及装置。
背景技术
当前,云计算已经成为计算机网络技术的热点,在云计算的研究中,计算能力被当作一种商品通过互联网进行流通。在进行计算能力的评价时,除了与被评价的计算机的结构、功能等特性参数有关以外,还与输入(即该计算机系统的工作负荷,目标应用程序)有密切关系,特别是目标应用程序执行过程中出现的各种指令和指令串的计算能力,即需要评价目标应用程序执行过程中出现的各种指令和指令串的计算能力。
因此,如何实时评价目标应用程序在执行过程中出现的各种指令和指令串的计算能力,对改进云计算系统设计,提高云计算能力具有重要的意义。
发明内容
本发明所要解决的技术问题是如何实时评价目标应用程序在执行过程中出现的各种指令和指令串的计算能力的问题。
为了解决上述技术问题,本发明所采用的技术方案是提供一种动态汇编指令统计的方法,包括以下步骤:
解析被测模块上的目标应用程序的二进制代码结构,对目标应用程序的二进制代码中的指令类型进行识别,指令类型包括跳转指令和非跳转指令;
根据目标应用程序的二进制代码指令类型,按照插入条件确定需要插入统计指令的位置;
在每个需要插入统计指令的位置通过动态指令插入工具插入统计指令代码;
随目标应用程序的运行执行相应的统计指令,并将统计信息实时发送给数据接收模块;
所述插入条件为:在每一条跳转指令后插入一条统计指令;在N条连续的非跳转指令后插入一条统计指令,N大于等于2。
在上述方法中,所述动态指令插入工具为Dyninst。
在上述方法中,N大于等于3且小于等于10。
在上述方法中,所述统计信息包括:目标应用程序的二进制代码指令的类别、运行地址、个数和运行时刻。
在上述方法中,采用共享内存的方式将所述统计信息实时发送给所述统计分析模块,所述共享内存方式是指:数据接收模块作为一个新的进程与实时获取统计信息的指令统计模块运行在同一台主机上,指令统计模块通过共享内存的方式发送所述统计信息给数据接收模块。
在上述方法中,采用网络通信的方式将所述统计信息实时发送给所述统计分析模块,所述网络通信方式是指:数据接收模块与实时获取统计信息的指令统计模块运行在不同的主机上,指令统计模块通过网络通信udp的方式发送所述统计信息给数据接收模块。
本发明还提供了一种动态汇编指令统计的装置,包括指令分析模块、指令插入模块、指令统计模块和数据接收模块,所述指令分析模块解析被测模块上的目标应用程序的二进制代码结构,对目标应用程序的二进制代码中的指令类型进行识别,并根据目标应用程序的二进制代码指令类型,按照插入条件确定需要插入统计指令的位置,所述插入条件为:在每一条跳转指令后插入一条统计指令;在N条连续的非跳转指令后插入一条统计指令,N大于等于2;所述指令插入模块在每个需要插入统计指令的位置通过动态指令插入工具插入统计指令代码;所述指令统计模块实时获取所述统计指令的运行结果得到到相应的统计信息,所述统计指令随目标应用程序运行;所述数据接收模块实时接收并保存所述统计信息。
本发明,根据目标应用程序的二进制代码指令类型,按照插入条件插入统计指令代码,对目标应用程序中指令的动态使用进行统计分析,可以精确了解计算机中计算模块CPU的输入数据(目标应用程序)的信息,从而为提高计算能力提供依据,同时,最大限度地减少了统计指令代码对目标应用程序的影响。
附图说明
图1是本发明提供的动态汇编指令统计的方法流程图;
图2是动态指令插入工具Dyninst的工作原理示意图;
图3是本发明提供的动态汇编指令统计的装置结构框图。
具体实施方式
下面结合附图对本发明作出详细的说明。
如图1所示,本发明提供动态汇编指令统计的方法,包括以下步骤:
步骤1:解析被测模块上的目标应用程序的二进制代码结构,对目标应用程序的二进制代码中的指令类型进行识别,指令类型包括跳转指令和非跳转指令。
步骤2:根据目标应用程序的二进制代码指令类型,按照插入条件确定需要插入统计指令的位置。所述插入条件为:在每一条跳转指令后插入一条统计指令;在N条连续的非跳转指令后插入一条统计指令,且N大于等于2。即需要插入统计指令的条件是:
C1:指令是跳转指令;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉邮电科学研究院,未经武汉邮电科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210355265.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:锅炉燃烧无烟零排污水提硫双节能组合机
- 下一篇:应用程序的加载方法及通信终端