成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

跟蹤程序在Linux下的執行的函數調用

系統 Linux
本篇文章主要是向大家講述了跟蹤程序是如何在Linux下執行的函數調用,作者從基本概念、具體實例方面進行講解,相信對于Linux的初學者來說會有很大的幫助!

本篇文章主要是向大家講述了跟蹤程序是如何在Linux下執行的函數調用,作者從基本概念、具體實例方面進行講解,相信對于Linux的初學者來說會有很大的幫助!

對于一個程序,通常我們可以使用gdb之類的調用工具設定斷點進行調用。然而Linux系統提供了眾多的跟蹤工具,可以讓我們在沒有源代碼的情況下跟蹤程序都執行了哪些系統調用、動態庫調用、棧情況以及接收信號等。可以讓我們不停止程序來觀察程序的執行流程。

strace 顯示執行程序的系統調用及接收信號情況;

strace [strace 選項]  可執行程序 可執行程序參數。

選項說明:

-o filename 將輸出寫到文件filename中;

-f 跟蹤子進程的執行,適合多線程程序;

-ff 如果使用了-o指定輸出文件,則將每個子進程都寫入到filename.pid中;

-s strsize,指定最大字串大小,默認為32;

-r  打印相對時間戳;

-t  打印實際時間 -tt 打印毫秒級 -ttt 打印微秒級時間;

-x 將所有非ASCII字符串顯示為十六進制字串;

-xx 將所有字符串顯示為十六進制;

-P pid 附著于進程進行跟蹤,并在ctrl+c后離開保持被跟蹤程序執行。

-e key=[!]value[,value]或-evalue,只顯示value的系統調用;

key包括trace、abbrev、verbose、raw、signal、read、write,value為系統調用的符號。

例如-e trace=open,默認使用trace=all。

為了方便使用value定義了一些不同類型的系統調用:file代表所有文件相關調用,process涉及相關進程的調用,network涉及相關網絡系統調用,signal代表所有信號相關的系統調用,此外還有ipc,desc。其他的key如abbrev、verbose、raw表示使用什么樣的輸出方式。signal可以跟蹤特定信號集的接收情況。默認為signal=ALL,可以使用SIGIO這種方式。而read/write則可以指定跟蹤寫特定文件描述符的動作,并將讀寫數據以十六進制的方式打印出來。例如-e read=3,5。

ltrace 顯示執行程序的庫調用及接收信號情況,其與strace的使用參數類似,支持-e -f -P -s -t -tt -tt -o -ff等參數,此外它還支持下面的一些參數:

-C --demangle 轉換低級編譯器的符號令用戶易看,例如C++等的mangle操作;

-l --library libname,lib... 只顯示對libname中的庫調用;

-S 顯示系統調用,-L 不顯示庫調用;

-n num  當嵌套調用時,進行縮進顯示;

對于不同的庫中的調用,列于/etc/ltrace.conf文件中。

pstack 打印命中時程序的調用棧及相應參數;

pstack pid即可。

【編輯推薦】

  1. Linux下讀取Windows注冊表
  2. Linux下用adb連接手機的問題解決
  3. Linux下的高精度時間獲得與定時器
  4. 四步到位正確安裝Arm-Linux交叉編譯器
  5. Linux安裝使用jprofiler6分析服務器應用狀態
     
責任編輯:馮宇 來源: Linux社區
相關推薦

2011-04-19 14:59:27

LinuxJava

2017-03-08 15:39:11

Linuxselect函數

2012-04-16 13:47:37

JavaMatlab

2022-01-10 07:57:25

Linux 插樁Linux 系統

2023-11-17 08:02:34

系統調用linux

2021-03-25 14:25:24

Linux運維Linux系統

2010-01-12 11:48:59

Linuxitoa函數

2010-04-12 09:07:09

Make命令

2018-01-24 18:51:39

Linuxftrace內核函數

2025-05-08 03:33:00

Linuxperf.NET

2010-01-22 10:51:54

svn命令linux

2009-07-22 07:44:00

Scala尾遞歸

2009-12-09 11:45:51

SUSELinuxADSL

2012-03-02 12:14:19

JavaJstackJmap

2011-01-06 16:29:08

linuxtasklet機制

2011-01-14 14:15:11

Linux匯編語言

2011-01-14 14:22:50

Linux匯編語言

2010-09-17 11:01:05

Java運行環境

2010-05-12 15:16:46

MySQL 5.1

2010-03-04 09:27:00

Oracle RAC
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www.欧美 | 91精品在线看 | 日韩精品av一区二区三区 | 狠狠亚洲 | 亚洲伊人a | 欧美在线国产精品 | 天色综合网 | 黄色毛片在线观看 | 亚洲色图插插插 | 国产真实乱全部视频 | 日本色婷婷 | 亚洲一区二区中文字幕在线观看 | 久久久成人一区二区免费影院 | 精品人伦一区二区三区蜜桃网站 | 91精品国产91久久综合桃花 | 日韩av免费在线观看 | 一区二区三区在线观看视频 | 国外成人在线视频 | 国产精品jizz在线观看老狼 | 黄片毛片免费观看 | 欧美区日韩区 | 91精品国产一区二区在线观看 | 国产又色又爽又黄又免费 | 国产99久久精品一区二区永久免费 | 欧美成年黄网站色视频 | 日韩1区 | 观看av| 特a毛片 | 久久久精选| 国产日韩欧美电影 | 91精品国产综合久久久久 | 免费国产一区二区视频 | 一级毛片高清 | 国产精品1区 | 91精品国产91久久久久久丝袜 | а√中文在线8 | 亚洲视频在线观看一区二区三区 | 欧美日韩电影在线 | 色橹橹欧美在线观看视频高清 | av在线影院 | 91污在线 |