首頁
社區(qū)
課程
招聘
windbg怎么下斷點,觀察內(nèi)核態(tài)調(diào)用用戶態(tài)過程

如題:

 

假如有一個函數(shù),從用戶態(tài)進入內(nèi)核態(tài),然后從內(nèi)核態(tài)調(diào)用了另外一個用戶態(tài)函數(shù)

 

如何跟蹤觀察,從內(nèi)核態(tài)的哪個地方調(diào)用了用戶態(tài)函數(shù)。
怎么下斷點觀察呢?

收藏
2條回答
為華 2022-11-27

用windbg

回復
Sonshines 2022-12-6

要在 WINDBG 中下斷點,您可以使用 bp 命令。例如,如果您想為函數(shù) foo 設置斷點,可以在 WINDBG 的命令提示符下輸入以下命令:

1
bp foo

如果您想為內(nèi)核態(tài)函數(shù)設置斷點,可以在函數(shù)名前面加上 nt! 前綴。例如,如果您想為內(nèi)核態(tài)函數(shù) bar 設置斷點,可以在 WINDBG 的命令提示符下輸入以下命令:

1
bp nt!bar

設置完斷點后,您可以使用 g 命令啟動程序的執(zhí)行。當程序執(zhí)行到斷點處時,WINDBG 將暫停程序的執(zhí)行,并進入交互式調(diào)試模式。您可以在交互式調(diào)試模式下使用 k 命令來查看調(diào)用堆棧,從而了解從內(nèi)核態(tài)調(diào)用用戶態(tài)函數(shù)的具體過程。

 

例如,如果您想查看從內(nèi)核態(tài)函數(shù) foo 調(diào)用用戶態(tài)函數(shù) bar 的過程,可以在 WINDBG 的命令提示符下輸入以下命令:

1
bp nt!foo
回復