在windbg的命令列視窗輸入"?", 則會輸出幫助選單, 在這個menu中會顯示一些常用的命令:
(1)斷點指令
b[c|d|e]
clear|disable|enable breakpoints bl
list breakpoints
bp set soft breakpoints
ba break on access
(2)資料檢視指令
d[type]
dump memory
dt [-n|y] [[mod!]name] [[-n|y]fields][address] [-l list] [-a|c|i|o|r[#]|v]
dump using type information
dv
dump local variables
(3)資料修改指令
e[type]
enter memory values
(4)執行
g[h|n] [=[...]]
gop [=]
step over
(5)堆疊操作
k[b|p|p|v]
(6)顯示載入的模組列表 lm
list modules
(7)暫存器操作
r [[[= ]]]
view or set registers
(8)search指令 s
search memory
(9)跟蹤指令t,ta,tb,tc,wt,p,pa,pc
(10)退出 q
(11)反彙編
u其中最常用的就是反彙編操作和顯示模組操作. lm命令顯示當前載入的模組. 當你連線過程中, windbg提示相應的module找不到時, 就可以運用這個命令進行檢視. lm的乙個擴充套件命令是"lm t n", 這個命令顯示當前所有載入的驅動資訊(過去的命令是!driver),在除錯核心驅動的過程中非常有用,可以找到相應驅動的起始位址。反彙編命令u, 可以在相應的位址中逐步的解析**,這在核心除錯中是最常用的一種檢視**的方式。
除上面的一些基本命令之外,還有一些非常有用的指令:
(1)k[kb|kp]
顯示當前的堆疊,當然也可以用alt+6直接調出視窗顯示
(2)!process
顯示當前的程序exprocess狀態,!process 0 0 顯示所有的程序狀態
(3)!thread
顯示當前的執行緒狀態,dt nt!_ethread顯示ethread結構
(4)!drvobj [path]
列出當前的驅動程式在驅動物件中的例程,其中path是驅動的裝置路徑,例如: !drvobj \filesystem\fat 2 列出fat檔案系統驅動的例程
(5)dt nt!_*
檢視核心的資料結構
(6)!stack 0
顯示執行緒當前位址
(7)!ioapic
檢視i/o的中斷控制器
(8)!irql
檢視cpu的irql,這在cpu中斷除錯中非常有用
(9)!exqueue
可以看系統輔助的執行緒列表
(10)!reg viewlist
登錄檔的儲存顯示,!reg hivelist顯示登錄檔乙個儲存的記憶體使用量
(11)!vm
顯示系統的記憶體池資訊
(12)dt _token
顯示內部訪問令牌
(13)!object \device
顯示裝置物件資訊,用winobj工具也可以看到
windbg常用命令
2.斷點 斷點之於除錯當然是非常重要的 常用命令 bp address or symbol 在指定位址下斷 可以使用位址或符號,如 bp 80561259 windbg預設使用16進製制 bp mydriver getkernelpath bp mydriver getkernelpath 0x12...
windbg常用命令
1.檢視執行緒 ring3 顯示當前執行緒.顯示所有執行緒 顯示異常執行緒 2 選擇2號執行緒 1 kb 顯示1號執行緒棧資訊 2.斷點 bp addr module fun 支援位址和模組斷點 bp p proc 程序斷點 bp t thread 執行緒斷點 bu module fun 模組斷點 ...
windbg常用命令
2.斷點 斷點之於除錯當然是非常重要的 常用命令 bp address or symbol 在指定位址下斷 可以使用位址或符號,如 bp 80561259 windbg預設使用16進製制 bp mydriver getkernelpath bp mydriver getkernelpath 0x12...