新版本的bochs调试命令和老版本有些不同,作者书中给出的命令无法在我的2.6版本的bochs中使用。例如dump_cpu命令已经无法使用了。
下面给出一些常用命令,这些都可以在网上找到,记录备查。
1. b | break:设置断点
例:b 0x7c00 在物理地址0x7c00处设置断点
2. info b | info break:查看设置的断点
blist:列出所有断点
3. c:执行程序,遇到断点停止
4. s | step:单步调试,会进入函数
s N:可执行N条指令
5. p | n | next:单步调试,不会进入函数
6. xp /nuf addr:查询从某个物理地址开始的N个字节的内存
n表示显示多少内存
u表示内存单位大小,可以为:b字节;h两个字节;w双字(4字节);g 4字(8字节)。注意,它们不符合Intel字节命名格式,但遵守GDB约定
f 表示打印格式,可以为:x 16进制;d 10进制;u 无符号10进制;o 8进制;t 2进制。
例:xp /32bx 0x00007c00 查询0x00007c00开始的32个字节内容
x /nuf ad