和菜鳥一起學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之initramfs方式啟動Linux
- 和菜鳥一起學linux之DBUS基礎學習記錄Linux
- 和菜鳥一起學android4.0.3原始碼之硬體gps簡單移植Android原始碼
- linux高階工具命令(三)使用gprof和oprofile查詢效能瓶頸Linux
- 效能除錯工具——oprofile除錯
- 菜鳥學習計劃淺談之Linux系統Linux
- 菜鳥入門:Linux之Makefile概述(轉)Linux
- Linux“菜鳥”到“菜鳥的一些建議Linux
- 菜鳥也裝Linux(轉)Linux
- 鳥哥的 Linux 私房菜Linux
- 和菜鳥一起學產品之產品經理的工作職責
- Linux效能分析工具Linux
- linux-鳥哥私房菜學習筆記Linux筆記
- linux學習導讀_鳥哥的私房菜Linux
- Linux菜鳥到老鳥的那些建議Linux
- 菜鳥學習寫的Ioc工具
- 菜鳥學Linux 第111篇筆記 MemoryLinux筆記
- 菜鳥學Linux第055篇筆記php基礎Linux筆記PHP
- 菜鳥學Linux命令:bg fg jobs命令 任務管理Linux
- 菜鳥學Python之 _, __ 和 __xx__的區別Python
- Linux 效能分析工具彙總Linux
- linux / aix 效能分析工具nmonLinuxAI
- 菜鳥入門 個人學習Linux知識總結(轉)Linux
- 歪批IT之六:顧問菜鳥和老鳥(轉)
- 鳥哥的Linux私房菜--CPU種類Linux
- Linux菜鳥入門級命令大全(轉)Linux
- 菜鳥學Python之雜湊表Python
- 菜鳥學網路之 —— 長連線和短連線
- linux 效能分析工具dstat之一Linux
- Linux 效能分析工具彙總合集Linux
- linux效能分析工具之火焰圖Linux
- 菜鳥學Linux第058篇筆記httpd編譯安裝Linux筆記httpd編譯
- Linux C++ 自學筆記之二<菜鳥初學系列> (轉)LinuxC++筆記
- 效能工具之linux常見日誌統計分析命令Linux
- 鳥哥的Linux私房菜 -- 電子書(pdf)Linux
- 菜鳥學堂之破解Sessioncookie的方法(轉)SessionCookie
- Linux系統效能調優之效能分析Linux
- linux高通核心移植工具十教程Linux