Linux工具

1 程序構(gòu)建

Step1:配置?檢測當前環(huán)境是否滿足安裝軟件的依賴關(guān)系以及初始化程序
?./configure --help
?./configure --prefix=/usr/local/snmps指定安裝路徑
Step2:編譯?源文件編譯鏈接生成可執(zhí)行文件
?make -f myMakefile編譯指定的makefile文件轧铁,
???以下編譯選項是指定用戶環(huán)境變量讥此,右邊庫是左邊的前提:
???CPPFLAGS='-I/usr/local/libcom/include -I/usr/local/libpng/include'
???LDFLAGS='-L/var/xxx/lib -L/opt/mysql/lib'

makefile文件中的變量
??$@目標文件名
??@^所有前提名梳星,除副本
??@+所有前提名枚驻,含副本
??@<一個前提名
??@痴昧?所有新于目標文件的前提名
??@*目標文件的基名稱
ldd myprogrammer可以查詢app需要的鏈接庫

Step3:安裝?將生成的可執(zhí)行文件拷貝到指定路徑
?make install

2 程序調(diào)試

gdb 程序交互調(diào)試
?$gdb programmer?啟動gdb
??> break main?設(shè)置斷點
??> run?運行調(diào)試程序
??> next?單步調(diào)試
??> print var1?使用print打印某個變量值
??> list?顯示當前調(diào)試處的源代碼
??> info b?顯示當前斷點設(shè)置情況
pstack 跟蹤棧空間
?$pstrack < pid >
??Thread 7 (Thread 1084229984 (LWP 4552)):
??#0 0x00000000006f172a in ub::NetReactor::callback ()
??#1 0x00000000006fbbbb in ub::UBTask::CALLBACK ()
??#2 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0
strace 分析系統(tǒng)調(diào)用
常用來跟蹤進程執(zhí)行時的系統(tǒng)調(diào)用和所接收的信號腋舌。進程不能直接訪問硬件設(shè)備帆离,當進程需要訪問硬件設(shè)備時,必須由用戶態(tài)模式切換至內(nèi)核態(tài)模式僧叉,通過系統(tǒng)調(diào)用訪問硬件設(shè)備奕枝。
?$strace -o output.txt -T -tt -e trace=all -p < pid >
?$strace -p <process-pid>?實時輸出進程執(zhí)行系統(tǒng)調(diào)用的情況
size 查看程序內(nèi)存占用
查看程序運行時各個段的實際內(nèi)存占用
?$size a.out
??text data bss dec hex filename
??1146 256 8 1410 582 a.out
file 查詢文件類型
?$file a.out
strings 查詢數(shù)據(jù)中的文本信息
?$strings <objfile>
fuser 顯示文件使用者
顯示所有正在使用著指定的file, file system 或者 sockets的進程信息
?$fuser -m -u redis-server
?$fuser –k /path/to/your/filename

3 性能優(yōu)化

主要從兩個層面來介紹:系統(tǒng)層面和程序?qū)用?br> 分析系統(tǒng)瓶頸
?top?輸入M,查看內(nèi)存使用情況瓶堕,檢測內(nèi)存泄漏隘道;
????輸入P,查看CPU情況:
?????%id空閑CPU值過低捞烟,則cpu存在瓶頸
?????%wa等待IO的CPU過高薄声,則IO存在瓶頸
分析內(nèi)存瓶頸
?free?更直觀詳細的查看內(nèi)存情況
??系統(tǒng)實際可用的內(nèi)存為free工具輸出的free+buffer+cached
??缺少內(nèi)存,系統(tǒng)響應(yīng)變慢很明顯题画,因為這使得系統(tǒng)不停的做換入換出的工作
?vmstat?實時動態(tài)監(jiān)視操作系統(tǒng)的內(nèi)存和虛擬內(nèi)存的動態(tài)變化
分析IO瓶頸
?iostat
分析進程調(diào)用
?pstack
?strace
優(yōu)化程序代碼
?二八法則:先優(yōu)化最重要的少部分代碼
?編完代碼默辨,再優(yōu)化:強調(diào)效率和可讀性
性能分析工具
?gprof
??http://www.cnblogs.com/me115/archive/2013/06/05/3117967.html
??> g++ -pg -o test main.cpp?使用-pg參數(shù)在目標代碼中插入用于性能測試的代碼片斷
??> ./test?輸出gmon.out的性能數(shù)據(jù)文件
??> gprof test gmon.out?分析程序運行信息
?OProfile
??https://www.ibm.com/developerworks/cn/linux/l-oprof/
?sar
調(diào)試內(nèi)存泄漏
?valgrind

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市苍息,隨后出現(xiàn)的幾起案子缩幸,更是在濱河造成了極大的恐慌,老刑警劉巖竞思,帶你破解...
    沈念sama閱讀 223,126評論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件表谊,死亡現(xiàn)場離奇詭異,居然都是意外死亡盖喷,警方通過查閱死者的電腦和手機爆办,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評論 3 400
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來课梳,“玉大人距辆,你說我怎么就攤上這事∧喝校” “怎么了跨算?”我有些...
    開封第一講書人閱讀 169,941評論 0 366
  • 文/不壞的土叔 我叫張陵,是天一觀的道長椭懊。 經(jīng)常有香客問我诸蚕,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,294評論 1 300
  • 正文 為了忘掉前任背犯,我火速辦了婚禮坏瘩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘媳板。我一直安慰自己桑腮,他們只是感情好,可當我...
    茶點故事閱讀 69,295評論 6 398
  • 文/花漫 我一把揭開白布蛉幸。 她就那樣靜靜地躺著,像睡著了一般丛晦。 火紅的嫁衣襯著肌膚如雪奕纫。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,874評論 1 314
  • 那天烫沙,我揣著相機與錄音匹层,去河邊找鬼。 笑死锌蓄,一個胖子當著我的面吹牛升筏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播瘸爽,決...
    沈念sama閱讀 41,285評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼您访,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了剪决?” 一聲冷哼從身側(cè)響起灵汪,我...
    開封第一講書人閱讀 40,249評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎柑潦,沒想到半個月后享言,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,760評論 1 321
  • 正文 獨居荒郊野嶺守林人離奇死亡渗鬼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,840評論 3 343
  • 正文 我和宋清朗相戀三年览露,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片譬胎。...
    茶點故事閱讀 40,973評論 1 354
  • 序言:一個原本活蹦亂跳的男人離奇死亡差牛,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出银择,到底是詐尸還是另有隱情多糠,我是刑警寧澤,帶...
    沈念sama閱讀 36,631評論 5 351
  • 正文 年R本政府宣布浩考,位于F島的核電站夹孔,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜搭伤,卻給世界環(huán)境...
    茶點故事閱讀 42,315評論 3 336
  • 文/蒙蒙 一只怎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧怜俐,春花似錦身堡、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至季稳,卻和暖如春擅这,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背景鼠。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評論 1 275
  • 我被黑心中介騙來泰國打工仲翎, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人铛漓。 一個月前我還...
    沈念sama閱讀 49,431評論 3 379
  • 正文 我出身青樓溯香,卻偏偏與公主長得像,于是被迫代替她去往敵國和親浓恶。 傳聞我的和親對象是個殘疾皇子玫坛,可洞房花燭夜當晚...
    茶點故事閱讀 45,982評論 2 361

推薦閱讀更多精彩內(nèi)容