版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、Linux源碼分析(ptrace)第1頁一函數(shù)說明函數(shù)說明1.函數(shù)使用說明函數(shù)使用說明名字名字ptrace–進程跟蹤形式形式#includeintptrace(intrequestintpidintaddrintdata)描述描述Ptrace提供了一種父進程可以控制子進程運行,并可以檢查和改變它的核心image。它主要用于實現(xiàn)斷點調(diào)試。一個被跟蹤的進程運行中,直到發(fā)生一個信號。則進程被中止,并且通知其父進程。在進程中止的狀態(tài)下,進程的內(nèi)
2、存空間可以被讀寫。父進程還可以使子進程繼續(xù)執(zhí)行,并選擇是否是否忽略引起中止的信號。Request參數(shù)決定了系統(tǒng)調(diào)用的功能:PTRACE_TRACEME本進程被其父進程所跟蹤。其父進程應(yīng)該希望跟蹤子進程。PTRACE_PEEKTEXTPTRACE_PEEKDATA從內(nèi)存地址中讀取一個字節(jié),內(nèi)存地址由addr給出。PTRACE_PEEKUSR從USER區(qū)域中讀取一個字節(jié),偏移量為addr。PTRACE_POKETEXTPTRACE_POKE
3、DATA往內(nèi)存地址中寫入一個字節(jié)。內(nèi)存地址由addr給出。PTRACE_POKEUSR往USER區(qū)域中寫入一個字節(jié)。偏移量為addr。PTRACE_SYSCALLPTRACE_CONT重新運行。PTRACE_KILL殺掉子進程,使它退出。PTRACE_SINGLESTEP設(shè)置單步執(zhí)行標(biāo)志PTRACE_ATTACH跟蹤指定pid進程。PTRACE_DETACH結(jié)束跟蹤Intel386特有:PTRACE_GETREGS讀取寄存器Linux源
4、碼分析(ptrace)第3頁描述:描述:往內(nèi)存地址中寫入一個字節(jié)。pid表示被跟蹤的子進程,內(nèi)存地址由addr給出,data為所要寫入的數(shù)據(jù)。4)PTRACE_PEEKUSR形式:形式:ptrace(PTRACE_PEEKUSRpidaddrdata)描述:描述:從USER區(qū)域中讀取一個字節(jié),pid表示被跟蹤的子進程,USER區(qū)域地址由addr給出,data為用戶變量地址用于返回讀到的數(shù)據(jù)。USER結(jié)構(gòu)為ce文件的前面一部分,它描述了進
5、程中止時的一些狀態(tài),如:寄存器值,代碼、數(shù)據(jù)段大小,代碼、數(shù)據(jù)段開始地址等。在Linux(i386)中通過PTRACE_PEEKUSER和PTRACE_POKEUSR可以訪問USER結(jié)構(gòu)的數(shù)據(jù)有寄存器和調(diào)試寄存器。5)PTRACE_POKEUSR形式:形式:ptrace(PTRACE_POKEUSRpidaddrdata)描述:描述:往USER區(qū)域中寫入一個字節(jié),pid表示被跟蹤的子進程,USER區(qū)域地址由addr給出,data為需寫入
6、的數(shù)據(jù)。6)PTRACE_CONT形式:形式:ptrace(PTRACE_CONTpid0signal)描述:描述:繼續(xù)執(zhí)行。pid表示被跟蹤的子進程,signal為0則忽略引起調(diào)試進程中止的信號,若不為0則繼續(xù)處理信號signal。7)PTRACE_SYSCALL形式:形式:ptrace(PTRACE_SYSpid0signal)描述:描述:繼續(xù)執(zhí)行。pid表示被跟蹤的子進程,signal為0則忽略引起調(diào)試進程中止的信號,若不為0則繼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論