Bochs调试Linux内核6 - 启动过程调试 - 跳到bootsect引导程序执行
Posted bcbobo21cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bochs调试Linux内核6 - 启动过程调试 - 跳到bootsect引导程序执行相关的知识,希望对你有一定的参考价值。
接此,Bochs调试Linux内核5 - 启动过程调试 - 认识Bootsect.S_bcbobo21cn的专栏-CSDN博客
看一下,0x00007c11 这里是重复执行串传送;而后一条是跳转到9000:0018处执行;
跳转之前代码段是0x0000,跳转后是0x9000;查看CS寄存器;
用reg指令看不到,只看到通用寄存器;
用dump_cpu或sreg均提示出错;也许用的bochs被精简了,或配置的问题,
就是执行完 0x00007c11 处的指令后,将执行0x9000:0x0018处的指令;
用step单步执行,一直都在7c11这里循环;
资料是说用 s 256 直接过去;s 256 = step 256,往后执行256条;由于上面已经 step 了几次,输个 s 248,
再 step 二次,才开始执行 9000:0018处的指令;
下面几条指令是把ds,es,ss都设置成移动后的代码所在的段(0x90000)并设置堆栈在0x9000:0xff00;下回继续;
以上是关于Bochs调试Linux内核6 - 启动过程调试 - 跳到bootsect引导程序执行的主要内容,如果未能解决你的问题,请参考以下文章