国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

迅為3399開發板Android系統-使用strace跟蹤系統調用

發布時間:2021-10-9 13:25    發布者:落風
1 什么是 strace
strace 常用來跟蹤進程執行時的系統調用和所接收的信號。在 Linux 世界,進程不能直接訪問硬件設備,當進程需要訪問硬件設備(比如讀取磁盤文件,接收網絡數據等等)時,必須由用戶態模式切換至內核態模式,通過系統調用訪問硬件設備。
strace 可以跟蹤到一個進程產生的系統調用,包括參數,返回值,執行消耗的時間。
2 什么是系統調用
系統調用(英語:system call),又稱為系統呼叫,指運行在用戶空間的程序向操作系統內核請求需要更高權限運行的服務。系統調用提供用戶程序與操作系統之間的接口。操作系統的進程空間分為用戶空間和內核空間:
 操作系統內核直接運行在硬件上,提供設備管理、內存管理、任務調度等功能。
 用戶空間通過 API 請求內核空間的服務來完成其功能——內核提供給用戶空間的這些 API, 就是系統調用
Linux 內核目前有 300 多個系統調用,詳細的列表可以通過 syscalls 手冊頁查看。這些系統調用主要分為幾類:
文件和設備訪問類 比如 open/close/read/write/chmod 等
進程管理類 fork/clone/execve/exit/getpid 等
信號類 signal/sigaction/kill 等
內存管理 brk/mmap/mlock 等
進程間通信 IPC shmget/semget * 信號量,共享內存,消息隊列等
網絡通信 socket/connect/sendto/sendmsg 等
其他
查看系統調用幫助手冊 man 2 函數名,例如下圖所示:


3 strace 的應用場景
基于特定的系統調用或系統調用組進行過濾
通過統計特定系統調用的使用次數,所花費的時間,以及成功和錯誤的數量來分析系統調用的使用。
它跟蹤發送到進程的信號。
通過 pid 附加到任何正在運行的進程。
調試性能問題,查看系統調用的頻率,找出耗時的程序段
查看程序讀取的是哪些文件從而定位比如配置文件加載錯誤問題
當程序出現“Out of memory”時被系統發出的 SIGKILL 信息所 kill
另外因為 strace 拿到的是系統調用相關信息,一般也即是 IO 操作信息,這個對于排查比如 cpu 占用 100%問題是無能為力的。這個時候就可以使用 GDB 工具了。

4 命令參數
我們輸入以下命令,可以查看 strace 命令的參數。
strace -h
-c 統計每一系統調用的所執行的時間,次數和出錯的次數等. -d 輸出 strace 關于標準錯誤的調試信息. -f 跟蹤由 fork 調用所產生的子進程. -ff 如果提供-o filename,則所有進程的跟蹤結果輸出到相應的 filename.pid 中,pid 是各進程的進程號. -F 嘗試跟蹤 vfork 調用.在-f 時,vfork 不被跟蹤. -h 輸出簡要的幫助信息. -i 輸出系統調用的入口指針. -q 禁止輸出關于脫離的消息. -r 打印出相對時間關于,,每一個系統調用. -t 在輸出中的每一行前加上時間信息. -tt 在輸出中的每一行前加上時間信息,微秒級. -ttt 微秒級輸出,以秒了表示時間. -T 顯示每一調用所耗的時間. -v 輸出所有的系統調用.一些調用關于環境變量,狀態,輸入輸出等調用由于使用頻繁,默認不輸出. -V 輸出 strace 的版本信息. -x 以十六進制形式輸出非標準字符串
-xx 所有字符串以十六進制形式輸出. -a column 設置返回值的輸出位置.默認 為 40.

5 實用示例
1 跟蹤已經在運行的進程,使用-p 選項能用在運行的進程上,輸入以下命令:
strace -p 進程號
2 通過 strace 啟動要跟蹤的進程,./hello.sh 是要運行的文件,大家可以根據自己的需求自定義,如下所示:
strace ./hello.sh


本文地址:http://m.qingdxww.cn/thread-775829-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 手机看片1024精品国产 | 日本一区二区在线看 | 99视频免费在线观看 | 亚洲高清网站 | 四虎影在线永久免费观看 | 亚洲最大免费视频网 | 日本高清乱码中文字幕 | 久草最新| 亚洲高清在线观看看片 | 狠狠色视频 | 四虎免费看黄 | 国产一区曰韩二区欧美三区 | 特黄特色大片免费视频大全 | 中文字字幕在线一本通 | 草逼视频免费观看 | 日本高清免费中文字幕不卡 | 国产在线91精品 | 亚州综合 | 欧美视频一区 | 国产67194| 色女孩xx | 国产一级特黄aa级特黄裸毛片 | 欧美亚洲三级 | 久久精品美女视频 | 四虎免费永久网站入口 | 亚洲成人影院在线观看 | 人间正道是沧桑全集手机免费观看 | 91免费版视频 | 91免费福利视频 | www.亚洲黄色| 日本免费高清视频 | 日韩欧美亚洲国产 | 演员请就位第一季 | 9久热| 日本午夜精品 | 奇米视频7777 | 黄色欧美视频在线观看 | 天堂网www | 自拍1区| 青草视频在线观看视频 | jizz日本在线观看 |