《X86汇编 从实模式到保护模式》 关于Bochsdbg二次启动错误的解决方案

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/OneTrianee/article/details/80461055

1.前言:

在本书中,Bochsdbg是一个非常重要的调试工具,关于bochsrc文件的配置,在文件中的配置已经给出了,按照这步骤来完全可以。
第一次时按步骤配置,之后使用“断点”跳转到0x7c00主引导扇区时完全可以,但当往下学习学习到下一章再次运行时,发现无法跳转到主引导扇区,经过多次尝试,终于找到一种可行的解决方案,再次记录一下,希望可以对其他人有帮助。

2.问题:

1.错误1

再次打开Bochsdbg未加载
再次启动未加载

2.错误2

当打开并加载Bochsdbg,可以进入调试界面,但很明显可以看到,只能在BIOS程序中运行,无法运行到我们所编写好的主引导扇区。
重新加载
这里写图片描述

3.解决方案:

我们浏览加载的虚拟硬盘所在的文件夹,发现出现了个LOCK加载格式的文件,但其字节数为零。

我们需要删除这个LOCK文件,然后在Bochsdbg再重新加载Bochsrc文件,则即可运行

注意:我们在加载bochsrc文件时,要退出Virtual Box这个软件,因为它在用到虚拟硬盘,故Vitrual Box对它进行内存保护,我们用bochdbg时无法加载的情况。

可以看出,我们在这操作之后,完美从BIOS程序跳转到我们所向虚拟磁盘中所加载的主引导扇区代码。
每次加载生成一个LOCK文件

成功跳转运行

4.问题分析:

这只是问题猜测,对于Bochdbg,当启动时,会自动生成一个加载文件,但当文件夹中出现相同文件,可能因为某种原因阻止这次系统的加载,我们只要删除这个LOCK文件就可以了。

阅读更多
换一批

没有更多推荐了,返回首页