中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中ltrace命令有什么用

發布時間:2022-02-09 14:54:32 來源:億速云 閱讀:150 作者:小新 欄目:開發技術

小編給大家分享一下Linux中ltrace命令有什么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

Linux常用命令ltrace命令 是用來跟蹤進程調用庫函數的情況。

Linux中ltrace命令有什么用

ltrace

用來跟蹤進程調用庫函數的情況

語法

 ltrace [option ...] [command [arg ...]]

選項

 -a 對齊具體某個列的返回值。
 -c 計算時間和調用,并在程序退出時打印摘要。
 -C 解碼低級別名稱(內核級)為用戶級名稱。
 -d 打印調試信息。
 -e 改變跟蹤的事件。
 -f 跟蹤子進程。
 -h 打印幫助信息。
 -i 打印指令指針,當庫調用時。
 -l 只打印某個庫中的調用。
 -L 不打印庫調用。
 -n, --indent=NR 對每個調用級別嵌套以NR個空格進行縮進輸出。
 -o, --output=file 把輸出定向到文件。
 -p PID 附著在值為PID的進程號上進行ltrace。
 -r 打印相對時間戳。
 -s STRLEN 設置打印的字符串最大長度。
 -S 顯示系統調用。
 -t, -tt, -ttt 打印絕對時間戳。
 -T 輸出每個調用過程的時間開銷。
 -u USERNAME 使用某個用戶id或組ID來運行命令。
 -V, --version 打印版本信息,然后退出。
 -x NAME treat the global NAME like a library subroutine.(求翻譯)

實例

最基本應用,不帶任何參數:

 [guest@localhost tmp]$ ltrace ./a.out
 __libc_start_main(0x80484aa, 1, 0xbfc07744, 0x8048550, 0x8048540 printf("no1:%d \t no2:%d \t diff:%d\n", 10, 6, 4no1:10 no2:6 diff:4 ) = 24
 printf("no1:%d \t no2:%d \t diff:%d\n", 9, 7, 2no1:9 no2:7 diff:2 ) = 23
 printf("no1:%d \t no2:%d \t diff:%d\n", 8, 8, 0no1:8 no2:8 diff:0 ) = 23
 --- SIGFPE (Floating point exception) ---
 +++ killed by SIGFPE +++

輸出調用時間開銷:

 [guest@localhost tmp]$ ltrace -T ./a.out
 __libc_start_main(0x80484aa, 1, 0xbf81d394, 0x8048550, 0x8048540 printf("no1:%d \t no2:%d \t diff:%d\n", 10, 6, 4no1:10 no2:6 diff:4 ) = 24 
 printf("no1:%d \t no2:%d \t diff:%d\n", 9, 7, 2no1:9 no2:7 diff:2 ) = 23 
 printf("no1:%d \t no2:%d \t diff:%d\n", 8, 8, 0no1:8 no2:8 diff:0 ) = 23 
 --- SIGFPE (Floating point exception) ---
 +++ killed by SIGFPE +++

顯示系統調用:

 [guest@localhost tmp]$ ltrace -S ./a.out
 SYS_brk(NULL) = 0x9e20000
 SYS_access(0xa4710f, 4, 0xa4afc0, 0, 0xa4b644) = 0
 SYS_open("/etc/ld.so.preload", 0, 02) = 3
 SYS_fstat64(3, 0xbfbd7a94, 0xa4afc0, -1, 3) = 0
 SYS_mmap2(0, 17, 3, 2, 3) = 0xb7f2a000
 SYS_close(3) = 0
 SYS_open("/lib/libcwait.so", 0, 00) = 3
 SYS_read(3, "\177ELF\001\001\001", 512) = 512
 SYS_fstat64(3, 0xbfbd76fc, 0xa4afc0, 4, 0xa4b658) = 0
 SYS_mmap2(0, 4096, 3, 34, -1) = 0xb7f29000
 SYS_mmap2(0, 5544, 5, 2050, 3) = 0x423000
 SYS_mmap2(0x424000, 4096, 3, 2066, 3) = 0x424000
 .............省去若干行

以上是“Linux中ltrace命令有什么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

会理县| 怀来县| 治县。| 稷山县| 大安市| 壶关县| 余江县| 怀来县| 阿坝县| 玉屏| 桦川县| 罗江县| 疏勒县| 东阳市| 确山县| 桐梓县| 淳化县| 威远县| 政和县| 饶平县| 马关县| 隆回县| 肥东县| 南宫市| 商洛市| 常宁市| 青河县| 大田县| 宝兴县| 迁安市| 沙洋县| 禄丰县| 宁夏| 远安县| 贡嘎县| 永和县| 乳山市| 谷城县| 徐闻县| 利川市| 望城县|