|
命令: |
PROC |
作用: |
显示系统中所有进程的简要信息 |
语法: |
PROC [-xo] [task] |
用法: |
-x: 即-eXtended : 显示每个线程的扩展信息 -o: 即-Objects : 显示在进程句柄表中的对象列表 task : 任务名 输出: Process : 任务名 pProcess : 指向进程数据库的指针 Process ID : 进程的Ring 3的ID Threads : 进程所拥有的线程数量 Context : 地址区域 DefHeap : 缺省堆 DebuggeeCB : 调试块 |
点评: |
无 |
|
命令: |
QUERY |
作用: |
显示某个进程的虚拟地址映象 |
语法: |
QUERY [[-x] address] | [process-type] |
用法: |
-x : 显示某个线性地址在所有有效的地址区 域中的内存映象 address : 线性地址 processtype: 可被解释成进程的表达式 QUERY 命令可以显示某个进程的虚拟地址映象或某个 线性地址的映象.如果QUERY命令不加任何参数,将显示 当前进程的映象. 输出: Base : 指向连续页的基址 AllocBase : 由VirtualAlloc函数申请的内存的基址 AllocProtect:在申请时被指定为存取保护 Size : 有相同特性的页组成的内存区的大小Bytes State : 内存区中页的状态: ---------------------------------- .Commit 受委托的页,意即物理定位的. .Free 空闲的页,可以被申请 .Reserve 保留 ---------------------------------- Protect : 当前存取保护 Owner : 内存区的所有者 Context : 地址区域 |
点评: |
无 |
|
命令: |
R |
作用: |
显示或更改寄存器的内容 |
语法: |
R [-d | register-name | register-name [=] value] |
用法: |
register-name: 以下任何一种: ---------------- AL,AH, AX,EAX BL,BH, BX,EBX CL,CH, CX,ECX DL,DH, DX,EDX DI,EDI,SI,ESI BP,EBP,SP,ESP IP,EIP,FL,DS ES,SS,CS,FS,GS ---------------- value : 将要修改的寄存器内容.寄存器名除 FL (标志寄存器)以外,其他所有的都是 16 进制的值.如果是FL的话,value应如下: ---------------- O 溢出位 D 方向位? I 中断位? S 符号位 Z 零标志 A 辅助进位 P 奇偶位 C 进位标志 ---------------- 在相应的标志前加"+","-"号,表示打开或关闭 如: R FL +O 将溢出标志置位.如果不带"+,-" 号,则将当前的状态反转. -d :在命令窗口中显示寄存器的值. 如果 R 命令不加参数,光标将移到寄存器窗口中,进行 实时修改.如果当前寄存器窗口不可见, 那么这个命令 将自动显示它. 另外,修改FL寄存器时,参数不必按照顺序,如: R fl=o+a-c 一次修改3个标志位. |
点评: |
无. |
|
命令: |
RS |
作用: |
暂时恢复程序屏幕 |
语法: |
RS |
用法: |
RS 命令允许用户暂时恢复程序的视屏画面. 这个命令 在调试频繁更新屏幕的程序时特别有用.当显示出程序 的原画面后,可以按任意键返回SoftICE.RS有个快捷键 F4. |
点评: |
无. |
|
命令: |
S |
作用: |
在内存中搜寻特定数据 |
语法: |
S [-cu][address L length data-list] |
用法: |
address :搜索的起始地址 length :搜索的长度(字节长) data-list:可以是一系列字节,也可以是字符串, 字符 串可以用单引号,也可以用双引号括住. -c :使查找区分大小写 -u :查找Unicode 编码的字符串. S 命令将从指定的内存地址开始查找指定内容的数据, 一直到超过指定的长度为止.如果查到相应数据,会在 当前的数据窗口中显示它,并在命令窗口中显示信息. 想要继续查找,则只要打入 S 即可,不需另外带参数. S 命令忽略被标记为不在内存中的页. 想搜索一大段 内存的话,请用一马平川的30做为选择符. |
点评: |
无. |
|
命令: |
SERIAL |
作用: |
将控制台转移到串口终端上 |
语法: |
SERIAL [on [com-port] [baud-rate] | off] |
用法: |
com-port : 从1-4,分别代表COM1,COM2,COM3,COM4 其中COM1是默认值. baud-rate: 波特率,默认值由SoftICE自动侦测. 可能 值为:1200,2400,4800,9600,19200,23040, 28800,38400,57000,115000. 用一条电缆将两台机器的COM口联起来, 有被调试程序 的机器称为本地机(local), 另一台做为控制台的机器 称为远程机(remote).在联接前, 远程机上必须运行软 件包中的serial.exe程序,所以,远程机至少要是MSDOS 操作系统.Serial.exe 程序的命令格式和Serial 指令 的格式一致. 当联接建立后,本地机的屏幕将恢复被调 试程序的屏幕(即windows屏幕), 而远程机将显示Sof- tICE的调试窗口.电缆的做法如下: 25Pin的电缆 =========================== 远程 本地 2 ---------------------- 3 3 ---------------------- 2 4 ---------------------- 5 5 ---------------------- 4 6 ---------------------- 20 8 -----^ 20---------------------- 6 ^------- 8 7 ---------------------- 7 =========================== 9 Pin的接法: =========================== 本地 远程 2 ---------------------- 3 3 ---------------------- 2 5 ---------------------- 5 7 ---------------------- 8 8 ---------------------- 7 6 ---------------------- 4 1 ------^ 4 ---------------------- 6 ^------ 1 =========================== 注:表中的^代表相接.如上面的 表示6和1先相接,再接对方的4 远程机上总可以用CTRL+D 来激活调试. 结束调试可以在远程机上打入SERIAL off 远程机要退出serial.exe程序可以用CTRL+Z |
点评: |
无 |
|
命令: |
SET |
作用: |
显示或改变SoftICE的内部参数 |
语法: |
SET [keyword] [on | off] [value] |
用法: |
keyword : 内部变量 value : 有些变量有数值量,不是简单的ON,OFF Set 命令用来设置SoftICE的内部变量. 不加参数将显 示所有这些变量的当前状态, 只加keyword将只显示当 前变量的状态. 变量列表 ---------------------- ALTSCR [ON|OFF] CASESENSITIVE [ON|OFF] CODE [ON|OFF] EXCLUDE [ON|OFF] FAULTS [ON|OFF] FLASH [ON|OFF] I1HERE [ON|OFF] I3HERE [ON|OFF] LOWERCASE [ON|OFF] MOUSE [ON|OFF][1,2,3] PAUSE [ON|OFF] SYMBOLS [ON|OFF] TABS [ON|OFF][1,2,3,4,5,6,7,8] THREADP [ON|OFF] VERBOSE [ON|OFF] ---------------------- CASESENSITIVE ON 将使符号名对大小写敏感 MOUSE 允许或禁止使用鼠标.还可以设定鼠标移动的速 度,1最慢,3最快,2是中速,也是缺省值. SYMBOLS ON 将允许反汇编器在代码中显示符号名. 如 果为OFF,将只显示数字化的地址等. 其余见它们各自的命令解释. |
点评: |
无 |
查看所有0条评论>>