和菜鸟一起学linux之linux性能分析工具oprofile移植
一、内核编译选项
make menuconfig
General setup--->
[*] Profiling support
<*> OProfile system profiling
二、popt移植
下载源码:http://rpm5.org/files/popt/ popt-1.16.tar.gz
解压缩后,在popt-1.16当前目录下,新建build.sh,编辑内容如下:
---------------------------------------分割线----------------------------------------------------
#!/bin/sh
./configure --host=arm-linux \
--prefix=/home/eastmoon/rootfs \
--target=arm-linux
---------------------------------------分割线----------------------------------------------------
设置下build.sh的权限后,
./build.sh 配置好以后,
make下,
再make install就ok了。
然后可以看到在/home/eastmoon/rootfs中就会有相关的.so等库了。
二、binutils移植
下载源码:http://ftp.gnu.org/gnu/binutils/ binutils-2.22.tar.gz
解压缩后,在binutils-2.22当前目录下,新建build.sh,编辑内容如下:
---------------------------------------分割线----------------------------------------------------
#!/bin/sh
./configure --host=arm-linux \
--with-kernel-support \
--prefix=/home/eastmoon/rootfs \
--target=arm-linux \
--disable-nls
---------------------------------------分割线----------------------------------------------------
设置下build.sh的权限后,
./build.sh 配置好以后,
修改gas/Makefile,WARN_CFLAGS中去掉-Werror
因为有些机器是64位的,编译的.a在oprofile中链接会有问题。所以,这时候
vim config.status
修改$[“CFLAGS”]=”-g–O2” 为 $[“CFLAGS”]=”-g–O2 -fPIC”.
接着
make下,
再make install就ok了。
然后可以看到在/home/eastmoon/rootfs中就会有相关的.so等库了。
三、oprofile移植
下载源码:http://oprofile.sourceforge.net/download/ oprofile-0.9.9.tar.gz
解压缩后,在oprofile-0.9.9当前目录下,新建build.sh,编辑内容如下:
---------------------------------------分割线----------------------------------------------------
#!/bin/sh
CFLGAS+=-I//home/eastmoon/rootfs/include \
CXXFLGAS+=-I//home/eastmoon/rootfs/include\
LDFLGAS+=-L//home/eastmoon/rootfs/lib \
./configure --host=arm-linux \
--with-kernel-support \
--prefix=/home/eastmoon/rootfs \
--target=arm-linux \
---------------------------------------分割线----------------------------------------------------
设置下build.sh的权限后,
./build.sh 配置好以后,
接着
make下,
再make install就ok了。
然后可以看到在/home/eastmoon/rootfs中就会有相关的应用程序了。
四、应用
编译的时候有指定的OPROFILE_EVENTS_DIR的路径。所以,在使用的时候
export OPROFILE_EVENTS_DIR=’/home/oprofile’
把/home/eastmoon/rootfs/share/oprofile下的文件,拷贝到/home/oprofile下。
最后,就可以使用oprofile了
opcontrol –setup–no-vmlinux
opcontrol –init
opcontrol –start //启动
opcontrol –dump //采集
opcontrol –stop //停止
opreport //查看
opreport –l //查看,包括函数
具体的其他功能可以百度查看,这里只是移植和简单的应用。
和菜鸟一起学linux之linux性能分析工具oprofile移植的更多相关文章
- perf学习-linux自带性能分析工具
目前在做性能分析的事情,之前没怎么接触perf,找了几篇文章梳理了一下,按照问题的形式记录在这里. 方便自己查看. 什么是perf? linux性能调优工具,32内核以上自带的工具,软件性能分析. ...
- 1.linux服务器的性能分析与优化
[教程主题]:1.linux服务器的性能分析与优化 [课程录制]: 创E [主要内容] [1]影响Linux服务器性能的因素 操作系统级 CPU 目前大部分CPU在同一时间只能运行一个线程,超线程的处 ...
- Linux性能分析工具的安装和使用
转自:http://blog.chinaunix.net/uid-26488891-id-3118279.html Normal 0 7.8 磅 0 2 false false false EN-US ...
- 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化
高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...
- linux命令(4):top 命令(性能分析工具)
linux 的top命令详解 简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个 ...
- Linux性能分析工具top命令详解
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析. top命令说明 [www.linuxidc.com@linuxidc-t-tomcat-1 ...
- Linux性能分析工具与图形化方法
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~. 作者:赵坤|腾讯魔王工作室后台开发工程师 在项目开发中,经常会遇到程序启动时间过长.CPU使用率过高等问题,这个时候需要依靠性能分析工具来 ...
- Linux 性能分析工具汇总合集
出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章.本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面.如果没有完善的计算机系统知识,网络知识和操作系统知识, ...
- [转]Linux性能分析工具汇总合集
出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章.本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面.如果没有完善的计算机系统知识,网络知识和操作系统知识, ...
随机推荐
- Linux下yum安装MySQL yum安装MySQL指定版本
yum安装MySQL 1. 查看有没有安装过 yum list installed MySQL* (有存在要卸载yum remove MySQL*) rpm -qa | grep my ...
- Android游戏开发之SurfaceView的使用-android学习之旅(五)
SurfaceView和View的区别 View是在ui主线程中,直接响应用户的操作,以及任务的分发,但是任务比较复杂会出现阻塞. SurfaceView则不会出现这种问题,以为它直接从内存等取得图像 ...
- 音乐API
博主在前几篇博客中介绍了小Q聊天机器人的源码及其包含的一些功能,并在应用市场上上线了一个版本,其中有一个功能是歌曲搜索,即输入格式为"歌曲#歌曲名#歌手"即可搜索出相应的歌曲并进行 ...
- C语言--static修饰变量
Static在C语言里面有两个作用,第一个是修饰变量,第二个是修饰函数. 1.Static修饰变量 按照作用范围的不同,变量分为局部变量和全局变量.如果用static修饰变量,不论这个变量是全局的还是 ...
- Android之Gallery和Spinner-Android学习之旅(二十九)
Spinner简介 spinner是竖直方向展开一个列表供选择.和gallery都是继承了AbsSpinner,AbsSpinner继承了AdapterView,因此AdaptyerView的属性都可 ...
- (八十八)VFL语言初步 - 实现布局
[基本语法] VFL的语法为H:和V:开头,代表水平和垂直. 接下来如果要涉及距离,使用|-x-,x为距离的点数. 对于视图,用[ ]包围,例如[blueView]. ①下面的语句实现了blueVie ...
- 判断无向图是否有环路的方法 -并查集 -BFS
可以利用并查集或者带颜色标记的BFS(来自算法导论)判断. 首先介绍第一种,用并查集来判断: 首先初始化所有元素的根为-1,-1代表根节点,接下来对于图中的每一条边(v1,v2)都并入集合,并入的方式 ...
- javascript 把时间戳转为时间 ajax HTML拼装
这个目的是记下来,好让我以后可以看一下,这个脚本可是反反复复写了我N天啊!! 全部写下,以备后用! Date.prototype.format = function(format) { var o = ...
- HTML5哪点事
HTML5哪点事 [引子] 微信圈里,很多朋友时常讲起HTML5,是未来很重要的一项技术,小老虎则更关注HTML5具体包含哪些技术内容. [技术内容] 1.说到底就是传统:html + css + j ...
- Shell入门之概念
1.一切皆是文件: 在bash Shell 中一切皆是文件,不管是我们认为的文本文件,还是那些文件夹的东西,在这里都是文件,Linux只管比特和字节流,而不关心他们最终组成了什么格式,这些工作交给在L ...