91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

怎樣進行gdb attach 進程調試

發布時間:2021-11-17 15:39:12 來源:億速云 閱讀:1621 作者:柒染 欄目:軟件技術

本篇文章為大家展示了怎樣進行gdb attach 進程調試,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

gdb調試正在運行的進程:

GDB可以對正在執行的程序進行調度,它允許開發人員中斷程序 并查看其狀態,之后還能讓這個程序正常地繼續執行

(gdb) attach xxxxx --- xxxxx為利用ps命令獲得的子進程process id
(gdb) stop --- 這點很重要,你需要先暫停那個子進程,然后設置一些斷點和一些Watch
(gdb) break 37 -- 在result = wib(value, div);這行設置一個斷點,可以使用list命令察看源代碼
Breakpoint 1 at 0x10808: file eg1.c, line 37.
(gdb) continue
Continuing.

Breakpoint 1, main () at eg1.c:37
37                              result = wib(value, div);
(gdb) step

 在完成調試之后,不要忘記用detach命令斷開連接,讓被調試的進程可以繼續正常運行。

我們可以通過  1)  gdb prog_name -> r               用在逐步調試自己的程序時

                    2)  gdb -> attach process_id       正在運行中的后臺程序突然卡在了某個地方,先ps再gdb/attach

                    3)  gdb prog_name core              程序core掉了

三種方式對一個程序進行調試;

1. thread——gdb 多線程調試命令:

     info threads:           顯示當前進程中的線程;

     thread thread_no:  進入線程xx,通常緊接而來的是 bt/f 命令;

2. strace/ltrace:

     前者關注系統調用和程序所接收的信號;后者關注庫函數調用;

     strace的應用在 我們沒有程序的源碼,或者不方便從頭開始運行程序時;可以方便查看一個應用程序進行了哪些系統調用。

     而在希望知道程序都調用了動態庫中的哪些函數時,我們使用 ltrace。ltrace有個-S選項,類似于strace功能。

3.檢查內存泄漏的工具:

   valgrind (in linux, free) 
   visual leak detector (windows , free)
   boundschecker(windows, free)

   profile工具:
   oprofile
   vtune

上述內容就是怎樣進行gdb attach 進程調試,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

新密市| 婺源县| 大足县| 大同县| 集贤县| 铁岭市| 鞍山市| 乌兰县| 汝阳县| 辽宁省| 渭源县| 青阳县| 奈曼旗| 亳州市| 扎兰屯市| 竹山县| 鹿泉市| 肥东县| 石阡县| 阿尔山市| 浦城县| 滁州市| 宾阳县| 武功县| 积石山| 乐安县| 博白县| 贞丰县| 新化县| 兴国县| 东港市| 华池县| 修武县| 淮北市| 海晏县| 荣昌县| 金坛市| 陕西省| 龙海市| 彩票| 永泰县|