Bochs调试Linux内核初步学习 - 3
Posted bcbobo21cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bochs调试Linux内核初步学习 - 3相关的知识,希望对你有一定的参考价值。
接此;
https://blog.csdn.net/bcbobo21cn/article/details/120480214
前面尝试了在线性地址下断点,都是失败;下面再研究一下;
首先看一下0.11或0.12目录下,还有一个debug.bat,其中目录可能要改成和run.bat一致;
运行run.bat;启动;bochs命令行停留在<bochs:1>,此时左边虚拟机的面板是空白;
看一下相关教材的说明,目前是,
Bochs调试系统准备好运行;操作系统还没有引导;
执行输入c执行指令;左边面板运行到下图停止;
打回车没反应;猛敲了一阵回车,又停留了一阵,也许还按了 Ctrl+鼠标中键;左边面板下部状态栏有个关于Ctrl+鼠标中键的提示;
终于有反应;运行到下图停住;
输入 Root 登录;进到了Baby Linux系统的欢迎界面;此时右边没反应,不能输入;
左边输入一个ls命令;可以显示内容;
右边不能输入;反复敲Ctrl-c后,出现 <bochs:x> 的提示符,可以输入指令;
可以打n,一条条执行指令;
lb,在线性地址下一个断点,再c,执行;挂了;
打 Ctrl-c退出;不行就多打几次;
输入stepi 10,stepi 100,一次执行多条指令;看上去没有执行多条;
输入info program,查看程序运行状态,提示 语法错误;资料上有此命令;
info cpu,查看寄存器内容,是可以的;
在线性地址下一些断点,都是挂掉;
看上去左边和右边没有关联起来;不知道咋回事;
那么目前并不是说,枪法太差,放了几枪,连靶都没打中;而是说,还没弄清哪儿是枪托、哪儿是枪管、哪儿是扳机。。。。。。,还在认识枪的阶段;
以上是关于Bochs调试Linux内核初步学习 - 3的主要内容,如果未能解决你的问题,请参考以下文章
Bochs调试Linux内核 - 定位内核中的变量或数据结构
Bochs调试Linux内核6 - 启动过程调试 - 跳到bootsect引导程序执行