WinDBG命令概覽 上 標準命令

2021-07-10 21:49:48 字數 3682 閱讀 9321

windbg的大多數功能是以命令方式工作的, 本系列將介紹windbg的三類命令, 標準命令, 元命令和擴充套件命令.

標準命令

***************

標準命令用來提供適用於所有除錯目標的基本除錯功能.

所有基本命令都是實現在windbg內部的, 執行這些命令時不需要載入任何擴充套件模組. 大多數標準命令是一兩個字元或者符號, 只有version等少數命令除外. 標準命令的第乙個字元是不分大小寫的, 第二個字元可能區分大小寫. 迄今為止, windbg偵錯程式共實現了130多條標準命令, 分為60多個系列. 為了便於記憶, 可以根據功能將標準命令歸納為如下18個子類.

控制除錯目標執行功能

命令描述/助記

補充資訊

恢復執行ggo

~123g,~#g,~*g

跟蹤執行

ttrace

單步執行

pstep

追蹤監視

wttrace and watch data

暫存器相關功能

命令描述/助記

補充資訊

觀察和修改通用暫存器

rregisters

讀寫msr暫存器

rdmsr和wrmsr

read msr and write msr

設定暫存器顯示掩碼

rmregister mask

io埠讀寫功能

命令描述/助記

讀io埠

ib, iw, id

input from port (byte, word, double word)

寫io埠

ob, ow, od

output to port (byte, word, double word)

記憶體控制功能

命令描述/助記

補充資訊

觀察記憶體

d系列display memory

d, da, db, dc, dd, dd, df, dp, dq, du, dw, dw, dyb, dyd

編輯記憶體

e系列enter values

e, ea, eb, ed, ed, ef, ep, eq, eu, ew, eza, ezu

搜尋記憶體

ssearch memory

sb, sw, sd, sq, sa, su

功能

命令描述/助記

補充資訊

觀察棧k系列

display stack backtrace

k, kb, kc, kd, kp, kp, kv

設定維護斷點功能

命令描述/助記

軟體斷點

bp, bu, bm

set breakpoint, set unresolved breakpoint, set symbol breakpoint

硬體斷點

babreak on access

管理斷點

blbreakpoint list

清除,禁止,重新啟用斷點

bc, bd, be

breakpoint clear, breakpoint disable, breakpoint enable

執行緒功能

命令描述/助記

顯示控制線程

~thread status

程序功能

命令描述/助記

顯示程序

|process status

表示式功能

命令描述/助記

評估表示式

?evaluate expression

評估c++表示式

??evaluate c++ expression

彙編, 反彙編功能

命令描述/助記彙編a

assemble

反彙編u

unassemble

功能

命令描述/助記

顯示段的選擇子

dgdisplay selector: shows the segment descriptor for the specified selector

執行命令檔案功能

命令描述/助記

補充資訊

執行命令指令碼檔案

$run script file

$<, $><, $$<, $$><, $$>a<

配置命令功能

命令描述/助記

補充資訊

異常發生或者某事件發生時debuger的處理方式

sx系列

set exceptions

sx, sxd, sxe, sxi, sxn, sxr, sx-

啟用與禁止靜默模式

sqset quiet mode

sq

sq

設定核心debugging選項

soset kernel debugging options

設定符號字尾

ssset symbol suffix

ss[a|w|n]

版本與系統資訊功能

命令描述/助記

顯示偵錯程式和除錯目標版本

version

show debugger version

顯示除錯目標所在系統的資訊

vertarget

show target computer version

檢查符號功能

命令描述/助記

檢查符號

xexamine symbols

源程式功能

命令描述/助記

補充資訊

控制和顯示源程式

ls系列

list source lines

ls, lsa, lsp, lsc, lsf

除錯符號功能

命令描述/助記

載入除錯符號

ldload symbols

搜尋相鄰符號

lnlist nearest symbols

顯示模組列表

lmlist loaded modules

除錯會話功能

命令描述/助記

結束除錯會話

qquit

結束遠端除錯

qqquit

結束除錯會話並分離除錯目標

qdquit and detach

在命令編輯框中輸入乙個問號(?), 可以顯示出主要的標準命令和每個命令的簡單介紹.

摘自:《軟體除錯》 張銀奎

WinDBG命令概覽 中 元命令

元命令 meta command 用來提供標準命令沒有提供的常用除錯功能,與標準命令一樣,元命令也是內建在偵錯程式引擎或者windbg程式檔案中的.所有元命令都已乙個點 開始,所以元命令也被稱為點命令 dot command 按照功能,可以把元命令分成如下幾類.控制除錯會話或者除錯目標.放棄使用者態...

WinDBG標準命令

windbg的大多數功能是以命令方式工作的,本系列將介紹windbg的三類命令,標準命令,元命令和擴充套件命令.標準命令 標準命令用來提供適用於所有除錯目標的基本除錯功能.所有基本命令都是實現在windbg內部的,執行這些命令時不需要載入任何擴充套件模組.大多數標準命令是一兩個字元或者符號,只有ve...

Windbg斷點命令

windbg斷點命令 1 bu bp bm設定軟體斷點 a bp設定位址關聯的斷點 b bu設定符號關聯的斷點 c bm支援設定含萬用字元的斷點,可以一次建立乙個或多個bu或bp bm d 斷點 bp和bu的主要區別 a bp所設斷點和位址關聯,如果模組把該位址的指令移到其它地方,斷點不會隨之移動,...