我用的是bochs 2.6.11
首先进入bochs的调试模式使用的是bochsdbg
,打开bochsdbg。他会让你选择配置文件。
选择完了配置文件,弹出两个窗口,一个是调试命令行,一个是操作系统窗口
最初的时候,他会显示一些日志,然后注意:
显示了下一条指令的所在地和指令内容。我们观察因为实模式下 BIOS的引导代码实在 0xf000:0xfff0这里,也就是机器一加电后,cs和ip的初始化内容,我们可以看到他要跳转到 0xf000:e05b这里,这个时候才是我们真正的BIOS代码。
之后查看 0x7c00:0000这里,发现他的内容是0000,这个是正常的,毕竟我们的mbr是需要BIOS加载到对应位置的,这个时候BIOS还没有运行呢。
下面引入一下实模式的内存布局,方便没有了解过的小伙伴们学习。
接着引入bochs