strace基本操作

2021-09-06 19:40:45 字數 734 閱讀 4429

可以發現很多真正在系統層面發生的呼叫,以及很細微的返回錯誤資訊,用於除錯工作。(比如,軟體出錯,或是效能變慢。。。)

strace -p 32000 -o strace.txt

基本上完整的用法是這樣:

strace -o /tmp/output2.txt -t -tt -e trace=desc -s 12 -p 17129

使用到的引數如下:

1)strace -p pid  可以跟蹤某個後台程序

2)strace -o filename 把跟蹤結果輸出到檔案

3)strace -t 記錄每個系統呼叫花費的時間,可以看看哪個系統呼叫時間長

4)strace -t (或者 -tt)記錄每個系統呼叫發生是的時間(時分秒的格式)

5)strace -s 1024 顯示系統呼叫引數時,對於字串顯示的長度, 預設是32,如果字串引數很長,很多資訊顯示不出來。

6)strace -e trace=nanosleep 只記錄相關的系統呼叫資訊。  

-e trace=network // 只記錄和網路api相關的系統呼叫

-e trace=file // 只記錄涉及到檔名的系統呼叫

-e trace=desc // 只記錄涉及到檔案控制代碼的系統呼叫

還有其他的包括process,ipc,signal等。

strace命令基本用法

strace的最簡單的用法就是執行乙個指定的命令,在指定的命令結束之後它也就退出了。在命令執行的過程中,strace會記錄和解析命令程序的所有系統呼叫以及這個程序所接收到的所有的訊號值。c 統計每一系統呼叫的所執行的時間,次數和出錯的次數等.f 跟蹤由fork呼叫所產生的子程序.ff 如果提供 o ...

strace實現原理

引子 1.在linux系統中,程序狀態除了我們所熟知的task running,task interruptible,task stopped等,還有乙個task traced。這表明這個程序處於什麼狀態?2.strace可以方便的幫助我們記錄程序所執行的系統呼叫,它是如何跟蹤到程序執行的?3.gd...

strace學習筆記

strace學習筆記 v0.1 2013.11.15 簡介 stracestrace a.out 可以輸出a.out中依次呼叫的系統呼叫,和gdb一樣strace使 用系統呼叫pstrace實現其功能 基本功能 1.strace a.out 依次顯示各個系統呼叫 2.strace c a.out 可...