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引导程序执行

qemu虚拟机的初步使用了解linux下gdb和gdbserver

Linux学习笔记-初步认识Linux-centos

移值linux3.4.2内核之框架及初步修改

移值linux3.4.2内核之框架及初步修改