注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

dp: 生活的脚步,进步的点滴...

Cam、DSP、FPGA、PM、Life、More ...

 
 
 

日志

 
 

动态程序分析器valgrind  

2013-01-31 16:58:40|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

程序分析器有静态分析器和动态分析器之分。

咱们常用的编辑软件,如SourceInsight,notepad++,UE等都或多或少有程序分析的功能,他能知道哪些是函数接口,哪些是全局变量,哪些是局部变量等等。

pclint就是咱们常用的稍微专业点的静态代码检查工具了,再专业点的比如Testbed等。

相对于静态代码检查工具,动态代码分析工具就更专业一点了,可以分析二进制代码的详细的属性,比如instruction mix,call graph,memory leak等等。

pin最常用,有intel公司维护,提供丰富API,不提供source。

valgrind是开源的,我喜欢,呵呵。


2.1 安装步骤


1》下载最新源码包

http://valgrind.org/


2》解包

tar -xjvf valgrind-3.8.1.tar.bz2


3》安装

cd valgrind-3.8.1

./configure

make

make install


2.2 编写待分析代码:rill.c

  1. #include <stdio.h>  
  2.   
  3. int main(void)  
  4. {  
  5. printf("hello rill\n");  
  6. return 0;  
  7. }  
#include <stdio.h>    int main(void)  {  printf("hello rill\n");  return 0;  }


2.3 编译生成可执行文件rill

gcc -g rill.c -O0 -o rill


2.4 分析

valgrind --leak-check=yes rill 


2.5 分析结果

  评论这张
 
阅读(471)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016