Bochs虚拟机debug指令

来源:互联网 发布:java电脑版86安装包 编辑:程序博客网 时间:2024/05/01 03:52

在学习《Linux内核完全注释》时,为了方便,直接使用了赵博提供的linux-0.11-devel-040923.zip来debug,帮助理解代码。

后来又在哈工大的网站上发现了他们操作系统课程的实验,同样是关于Linux 0.11版本的。

后来在使用的过程中,我发现赵博使用的是bochs 2.1.1,而哈工大的oslab使用的是bochs 2.3.7版本。两者的debug指令有几个差别:

操作 2.1.1 2.3.7 显示通用寄存器状态 info r r 显示CPU状态 info cpu dump_cpu 查看段选择符状态 sreg dump_cpu 查看控制寄存器状态 creg dump_cpu

除了最新版本增加了几个debug指令外,其他都相同。

这里再列举出几个重要的debug指令:

操作 指令 举例 连续执行 c 单步执行 s [count] s 10 打印栈 print-stack [num words] print-stack 10 查看数据段内容 x /[nuf] [addr] x /4x ds:0x1918a 在物理地址上设置断点 b [addr] b 0x641c 在虚拟地址上设置断点 vb [seg:addr] vb 0x0000:0x7c00 查看断点 info b info b 删除断点 delete [n] delete 1 查看从当前指令开始的给定行数的反汇编 u /[n] u /100 对给定的线性地址范围内的指令进行反汇编 u [start] [end] u 0x7410 0x7450

更详细的指令说明请参考bochs的debugger指令说明

0 0
原创粉丝点击