- 博客(10)
- 资源 (3)
- 收藏
- 关注
转载 Makefile 入门
转自 http://www.opussoftware.com/tutorial/TutMakefile.htmThe MakefileComments Rules Dependency Lines Shell Lines Ma
2011-07-31 11:55:50 1162
原创 编译器对数据的分配
注明: 以下结论的可靠性不予担保。1. 实验方法给出两个C++源代码文件,主要文件如下,辅助文件定义了全局变量g_ext, g_ext_ini。#include extern int g_ext;extern int g_ext_ini;int g_a=
2011-07-29 00:54:52 976
原创 libdwarf的使用
例子来源于libdwarf的发布版本,可以参考例子前面的版权声明。我加了部分注释(原有注释用/**/,我加的注释用//)./* Copyright (c) 2009-2010 David Anderson. All rights reserved. Redistri
2011-07-27 23:58:03 6221
原创 寻找libdwarf
1. 因为需要得到程序中,地址到符号的映射信息;而Pin只提供函数符号的信息,不提供其它符号,比如数据符号的信息,所以需要访问目标文件的调试信息。2. 在Pin的讨论组中,发现需要libelf和libdwarf来访问其它符号。据论坛所说,libelf访问任意ELF文件的符号信息(
2011-07-25 21:41:51 4088 4
原创 Linux中缺少so文件的问题
1. Problem >ldd icount.so linux-gate.so.1 => (0x0048d000) libdwarf.so => not found libelf.so.0 => not found libdl.so.2 => /lib/libdl.so.2
2011-07-25 16:09:24 6918
原创 Pin学习笔记2
<!-- BODY,DIV,TABLE,THEAD,TBODY,TFOOT,TR,TH,TD,P { font-family:"Liberation Sans"; font-size:x-small } --> 粒度操作解释InstructionINS_Memory
2011-07-25 13:43:16 3606 1
翻译 调试信息格式(Debugging Format)简介
1. 实际使用中,多种调试信息格式,stabs, COFF, PE-COFF, OMF, IEEE-695, 以及DWARF。2. stabs stabs取名于symbol table strings,因为开始的时候,调试信息是以字符串的形式存储在Unix的a.out
2011-07-25 11:25:07 5527 1
原创 Pin学习笔记1
类似于valgrind,pin也是一个用于编写动态分析程序的框架。Pin由Intel负责,因而貌似更加强大。Pin支持的Linux二进制,包括IA-32,Intel-64,Itanium等处理器;支持的windows二进制,包括IA-32和Intel64;支持的MacOS二进制,
2011-07-23 22:21:22 4714
翻译 dynamic profiling
1. Dynamic profling的效果,受到源代码、编译器选项以及运行的目标平台地影响。2. Dynamic profiling所使用的方法包括:Event-based profiler,包括Java的JVMTI等。Statistical profiler,利用OS中断功能
2011-07-21 19:39:10 833
原创 valgrind工具
valgrind提供了一个用于编写动态分析工具的框架。该框架目前已经实现了一些标准的动态分析工具,包括:MemCheck, 用于检测内存错误。Cachegrind, 用于分析cache和分支预测情况。Callgrind, 可以用于交互式地分析函数的动态调用过程。Helgrind和
2011-07-21 19:02:16 642
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人