最近終于把車考過去了
,windbg
的學(xué)習(xí)耽擱了好多
前幾天每天都在練車
~
搞死我了
不過還好在海邊練
景色很宜人
~
舒服
~HOHO
?
上次說啥來著
?
哦
對了
就是這幾個命令
~
呵呵
堆棧顯示指令
kb , kp, kP , kv
反匯編指令
u,uf
跟蹤指令
T,TA,TB,TC
執(zhí)行相關(guān)指令
P,PA,PC
跟蹤查看指令
WT
?
這些差不多了
?
到時候調(diào)試篇忘記了會把這些命令說明插進(jìn)去
~HOHO
這里僅做個整理
?
----------------------------------------------------------------------------
堆棧顯示指令
k
[b|p|P|v]
在內(nèi)核調(diào)試的時候
,k
命令用來顯示內(nèi)核棧的內(nèi)容
先說說內(nèi)核棧用來干嘛的
看了些資料個人理解是這樣的
比如我們的代碼運(yùn)行時
,
肯定會有函數(shù)
函數(shù)然后還會調(diào)用函數(shù)
但是系統(tǒng)如何記錄是哪個父函數(shù)調(diào)用了這個子函數(shù)
,
在子函數(shù)調(diào)用之前整個狀態(tài)又是怎樣的
,
其實(shí)系統(tǒng)是利用了堆棧記錄的
棧這個東西好阿
?
先進(jìn)后出
?
最近調(diào)用的函數(shù)記錄在最頂層
函數(shù)執(zhí)行完后就從棧內(nèi)彈出之前記錄的參數(shù)
,
如果調(diào)用函數(shù)
一樣的把函數(shù)壓進(jìn)棧內(nèi)就好了
這樣一來
一旦子函數(shù)執(zhí)行完
,
從棧內(nèi)彈出的第一個函數(shù)肯定是該子函數(shù)的老爹
?
我們可以看上層堆棧的狀態(tài)等等
功能大家慢慢去體會吧
我也沒用過
?
呵呵
?
不好說什么
下面說些細(xì)節(jié)的東西
b
顯示傳給函數(shù)的前三個參數(shù)
p
顯示傳給函數(shù)的全部參數(shù)
P(
大寫
)
跟上面那個一樣
只不過是顯示形式不同而已
V
外加顯示一些額外的信息
----------------------------------------------------------------------------
u
[f]
反匯編指令
,
嘿嘿
超級有用的指令喲
雖然說內(nèi)核很多東西很復(fù)雜
認(rèn)識偶爾小小反下也是可以的
u
反匯編當(dāng)前寄存器指向的代碼
uf
函數(shù)名
(
比如
nt!ZwCreateFile)
反匯編指定的函數(shù)
----------------------------------------------------------------------------
t
[r]
單步跟蹤
r
打開指顯示寄存器的詳細(xì)信息
,
狀態(tài)的開關(guān)
(
下面指令一樣有效
,
在用
1
次就會關(guān)閉哦
~)
ta
地址
讓程序執(zhí)行到指定地址
tb
讓程序運(yùn)行到分支語句時停止
tc
讓程序運(yùn)行到下一個函數(shù)調(diào)用停止
----------------------------------------------------------------------------
p
[r]
單步執(zhí)行一跳指令
r
打開指顯示寄存器的詳細(xì)信息
,
狀態(tài)的開關(guān)
(
下面指令一樣有效
,
在用
1
次就會關(guān)閉哦
~)
pa
讓程序執(zhí)行到指定地址
pc
讓程序執(zhí)行到函數(shù)調(diào)用就停止
?
----------------------------------------------------------------------------
wt
?
在想查看指定函數(shù)的信息而又不想單步通過該函數(shù)時很有用。可以到函數(shù)的起始地址并執(zhí)行
wt
命令。
(
摘自翻譯文檔
)
?
這個感覺用處不是很大
.
不細(xì)細(xì)研究了
----------------------------------------------------------------------------
?
?
Ps:
很多人不清楚到底
p
指令和
t
指令有什么區(qū)別
其實(shí)很簡單
p
指令執(zhí)行到函數(shù)時把這個當(dāng)做一個指令來執(zhí)行
也就是說不會進(jìn)入函數(shù)執(zhí)行
,
但是
t
指令會進(jìn)入到函數(shù)里面執(zhí)行
?
就這么簡單
~~
呵呵
?
?
基礎(chǔ)指令就到這里了
?
過段時間開始記點(diǎn)調(diào)試的東東了
呵呵
?
?
?