可用于設(shè)置對(duì)某個(gè)變量的觀察點(diǎn) 。此處變量i為被監(jiān)視的變量 。而用:
* 0x00400000:m
則可將地址0x00400000 處設(shè)置成觀察點(diǎn),而0x00400000將成為被監(jiān)視的地址 。
在設(shè)置了觀察點(diǎn)之后,sdb會(huì)同處理S命令一樣開(kāi)始程序的單步執(zhí)行,并在變量的值或指定地址單元的內(nèi)容被改變時(shí)停止程序的執(zhí)行 。由于變量值的改變或地址內(nèi)容的變化,或者其他什么原因而使程序的執(zhí)行中止,包括因?yàn)橛龅綌帱c(diǎn)而使程序停止的情形,都將使得所設(shè)置的觀察點(diǎn)被sdb自動(dòng)刪掉 。被觀察的變量必須是當(dāng)前函數(shù)的局部變量或者是當(dāng)前函數(shù)所能夠訪問(wèn)的變量 。
其他命令
除了上面介紹的五類(lèi)主要命令之外,sdb還支持其他一些命令 。使用這些命令,可以完成其他一些輔助性的工作 。分別介紹如下 。
. !Shell Command
此命令可以使sdb去執(zhí)行指定的Shell Command 。這里Shell Command是一個(gè)合法命令 。例如可以輸入:
* ! ls -l
sdb將執(zhí)行指定的ls -l 命令,并將其輸出顯示出來(lái) 。
使用:
* ! sh
能夠生成一個(gè)新的Shell進(jìn)程 。在此新的Shell中可以完成某些工作,然后用exit命令返回到sdb中 。
"SomeString
指示sdb顯示出某個(gè)字符串 。常用此命令給出某些提示信息,
k 此命令將使當(dāng)前對(duì)程序的調(diào)試終止,之后仍可用r命令重新啟動(dòng)被調(diào)試的程序 。如:
* k
1111:killed
*
這里1111是被調(diào)試進(jìn)程的進(jìn)程號(hào) 。
* q
此命令將使sdb停止其自身的運(yùn)行而返回至原Shell提示符下 。在調(diào)試完程序之后一般都要使用此命令 。
推薦閱讀
- 輕松制作SCO UNIX系統(tǒng)備份
- SCO UNIX 5 的幾個(gè)新特點(diǎn)
- 機(jī)器啟動(dòng)的認(rèn)識(shí) SCO UNIX學(xué)習(xí)寶典
- 創(chuàng)建一個(gè)包含vi的SCO5.05系統(tǒng)應(yīng)急引導(dǎo)盤(pán)
- SCO Unix 故障排除四例
- 應(yīng)急啟動(dòng)盤(pán)與安全管理
- SCO UNIX基礎(chǔ)講座--第二講shell環(huán)境
- SCO UNIX作業(yè)調(diào)度
- 電腦如何重裝系統(tǒng) u盤(pán)
- Informix數(shù)據(jù)庫(kù)軟件開(kāi)發(fā)方法與工具
