色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

linux怎么調(diào)試

linux怎么調(diào)試?

1、使用'print' 語(yǔ)句

這是一個(gè)基本的調(diào)試問(wèn)題的方法。 我們?cè)诔绦蛑袘岩傻牡胤讲迦雙rint語(yǔ)句來(lái)了解程序的運(yùn)行流程控制流和變量值的改變。

它的缺點(diǎn)是需要進(jìn)行程序編輯,添加'print'語(yǔ)句,必須重新編譯,重新運(yùn)行來(lái)獲得輸出。若需要調(diào)試的程序比較大,這將是一個(gè)耗時(shí)費(fèi)力的方法。

2、使用查詢

在某些情況下,我們需要弄清楚在一個(gè)運(yùn)行在內(nèi)核中的進(jìn)程的狀態(tài)和內(nèi)存映射。為了獲得這些信息,我們不需要在內(nèi)核中插入任何代碼。 相反,可以用 /proc文件系統(tǒng)。在/proc的偽文件系統(tǒng),保留系統(tǒng)啟動(dòng)運(yùn)行就收集的運(yùn)行信息 (cpu信息, 內(nèi)存容量等)。

ls -l /proc的輸出結(jié)果,通過(guò)對(duì)系統(tǒng)中運(yùn)行的每一個(gè)進(jìn)程在/proc文件系統(tǒng)中有一個(gè)以進(jìn)程id命名的項(xiàng)。每個(gè)進(jìn)程的細(xì)節(jié)信息可以在進(jìn)程id對(duì)應(yīng)的目錄下的文件中獲得。也可以'ls /proc/pid'的輸出。

免費(fèi)視頻教程推薦:linux視頻教程

3、使用跟蹤

strace的和ltrace是兩個(gè)在Linux中用來(lái)追蹤程序的執(zhí)行細(xì)節(jié)的跟蹤工具。

strace:

strace攔截和記錄系統(tǒng)調(diào)用及其接收的信號(hào)。對(duì)于用戶,它顯示了系統(tǒng)調(diào)用、傳遞給它們的參數(shù)和返回值。strace可以附著到已在運(yùn)行的進(jìn)程或一個(gè)新的進(jìn)程。它作為一個(gè)針對(duì)開(kāi)發(fā)者和系統(tǒng)管理員的診斷、調(diào)試工具是很有用的。

它也可以用來(lái)當(dāng)做一個(gè)通過(guò)跟蹤不同的程序調(diào)用來(lái)了解系統(tǒng)的工具。這個(gè)工具的好處是不需要源代碼,程序也不需要重新編譯。

使用strace的基本語(yǔ)法是:

strace的輸出非常長(zhǎng),我們通常不會(huì)對(duì)顯示的每一行都感興趣。我們可以用'-e expr'選項(xiàng)來(lái)過(guò)濾不想要的數(shù)據(jù)。

用 '-p pid' 選項(xiàng)來(lái)綁到運(yùn)行中的進(jìn)程。

用'-o'選項(xiàng),命令的輸出可以被重定向到文件。

strace過(guò)濾成只有系統(tǒng)調(diào)用的輸出。

ltrace:

ltrace跟蹤和記錄一個(gè)進(jìn)程的動(dòng)態(tài)(運(yùn)行時(shí))庫(kù)的調(diào)用及其收到的信號(hào)。它也可以跟蹤一個(gè)進(jìn)程所作的系統(tǒng)調(diào)用。它的用法是類似與strace。

'-i' 選項(xiàng)在調(diào)用庫(kù)時(shí)打印指令指針。

'-S' 選項(xiàng)被用來(lái)現(xiàn)實(shí)系統(tǒng)調(diào)用和庫(kù)調(diào)用.

trace捕捉'STRCMP'庫(kù)調(diào)用的輸出。

相關(guān)文章教程推薦:linux教程

以上就是linux中程序調(diào)試的方法有哪些的詳細(xì)內(nèi)容

java 進(jìn)程trace,linux怎么調(diào)試