1.前言:
在本书中,Bochsdbg是一个非常重要的调试工具,关于bochsrc文件的配置,在文件中的配置已经给出了,按照这步骤来完全可以。
第一次时按步骤配置,之后使用“断点”跳转到0x7c00主引导扇区时完全可以,但当往下学习学习到下一章再次运行时,发现无法跳转到主引导扇区,经过多次尝试,终于找到一种可行的解决方案,再次记录一下,希望可以对其他人有帮助。
2.问题:
1.错误1
再次打开Bochsdbg未加载
2.错误2
当打开并加载Bochsdbg,可以进入调试界面,但很明显可以看到,只能在BIOS程序中运行,无法运行到我们所编写好的主引导扇区。
3.解决方案:
我们浏览加载的虚拟硬盘所在的文件夹,发现出现了个LOCK加载格式的文件,但其字节数为零。
我们需要删除这个LOCK文件,然后在Bochsdbg再重新加载Bochsrc文件,则即可运行
注意:我们在加载bochsrc文件时,要退出Virtual Box这个软件,因为它在用到虚拟硬盘,故Vitrual Box对它进行内存保护,我们用bochdbg时无法加载的情况。
可以看出,我们在这操作之后,完美从BIOS程序跳转到我们所向虚拟磁盘中所加载的主引导扇区代码。
4.问题分析:
这只是问题猜测,对于Bochdbg,当启动时,会自动生成一个加载文件,但当文件夹中出现相同文件,可能因为某种原因阻止这次系统的加载,我们只要删除这个LOCK文件就可以了。