[发明专利]一种软件性能数据采集方法和装置有效
申请号: | 201610416979.X | 申请日: | 2016-06-14 |
公开(公告)号: | CN107506293B | 公开(公告)日: | 2022-04-22 |
发明(设计)人: | 刘刚;雒主纲 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 深圳市力道知识产权代理事务所(普通合伙) 44507 | 代理人: | 张传义 |
地址: | 518057 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 性能 数据 采集 方法 装置 | ||
本发明公开了一种软件性能数据采集方法和装置,在获取了软件中的待测量代码的对应的机器码的地址后,可以在待测量代码的对应的机器码前后分别插入使能开关和结束开关控制性能统计功能的开启和结束,使能开关和结束开关的位置可以随着待测量代码的不同而不同,相对于现有技术中在软件固定位置写入统计代码,或者,在函数前后插入钩子函数的方式而言,本发明对软件本身没有任何修改,不会对软件性能产生不利影响,其次,本发明具有灵活性高的优点,可以对软件的任意位置的代码进行性能统计,提高性能数据统计的效率,即使在软件版本交付之后,采用本发明的方案依然可以对软件任意位置的代码进行性能统计。
技术领域
本发明涉及嵌入式系统的软件领域,具体涉及一种软件性能数据采集方法和装置。
背景技术
对于实时嵌入式系统,需要采集软件性能数据来分析软件瓶颈,不断改进软件效率,以实现硬件效益最大化。软件的性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是在完成该功能时展示出来的及时性。
软件性能的指标包括响应时间、系统响应时间和应用延迟时间、吞吐量、并发用户数、资源利用率等指标。为了对软件进行性能分析,确定软件的实际性能,以便对软件做出改进,需要对上述的性能指标进行统计。
现有技术中,为软件的性能统计提供了两种方案:
第一种方案:在应用软件中增加性能采集模块,采集模块具体的可以是一段采集代码。
第二种方案:利用编译器技术在应用软件函数的前后插入特殊钩子函数实现性能采集功能。
上述的第一种方案会对软件本身进行修改,增加性能统计代码,这无疑会影响软件性能。并且,将性能统计代码写入软件后,性能统计代码的位置就固定了,无法更改性能统计位置,当需要对软件中的另一些代码或其他性能进行统计时,需要再次修改软件才能实现。但是可以想到的是当软件版本对外交付后,这样的做法实现起来明显比较困难。
上述的第二种方案,也是对软件本身进行修改,在软件中的函数前后插入钩子函数,所以第二种方案只能按照函数进行性能统计,此方案也存在性能统计不够灵活的缺点,且采用此种方案,当软件版本对外交付之后,性能统计位置无法再更改。
发明内容
本发明实施例要解决的主要技术问题是,提供一种软件性能数据采集方法和装置,解决现有技术中对软件进行性能统计只能通过该在软件中新增统计代码或插入钩子函数实现带来的影响软件性能、统计方法不够灵活,无法对软件的任意片段的代码进行统性能计,以及软件交付后,性能统计位置不能更改的问题。
为解决上述技术问题,本发明实施例提供一种软件性能数据采集方法,包括:
确定软件中的待测量代码对应的机器码的地址;
在机器码的前后分别插入使能开关和结束开关;使能开关用于开启性能统计功能对待测量代码进行性能统计,结束开关用于关闭性能统计功能;
在软件的运行过程中,对待测量代码进行性能统计。
为解决上述技术问题,本发明实施例还提供一种软件性能数据采集装置,包括:
获取模块,用于确定软件中的待测量代码对应的机器码的地址;
配置模块,用于在机器码的前后分别插入使能开关和结束开关;使能开关用于开启性能统计功能对待测量代码进行性能统计,结束开关用于关闭性能统计功能;
统计模块,用于在软件的运行过程中,对待测量代码进行性能统计。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610416979.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:Z型翅片
- 下一篇:用于换热器管箱的密封导向垫及换热器管箱
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置