操作系统实验一

操作系统实验一

练习2 使用qemu执行并调试lab1中的软件

1.从 CPU 加电后执行的第一条指令开始,单步跟踪 BIOS 的执行。
对于gdbinit,也就是gdb的初始设置,开始时发现是如下:

①在其中加入语句:set architecture i8086,再执行make debug,有如下结果
此时进入gdb调试,而且显示architecture被假设到i8086。

2.在初始化位置0x7c00 设置实地址断点,测试断点正常。

如图,gdbinit文件里面的内容编写成这样,gdb调试的过程就被钉死,即建筑体假设完成后设置断点0x7c00,并且展示出来。

结果如下,断点功能正常。

运行后,Gedit bootasm.S得到,他在boot文件夹里。

在obj文件夹里找到bootblock.asm文件,他其中也有相似内容,代表含义相同。

从这里可以发现断点后运行,这两个代码应该是相同。

4.自己找一个bootloader或内核中的代码位置,设置断点并进行测试。

我i自己设置的断点是0x7c13,对应于相加操作,用gdb后结果如下:

练习4.分析bootloader加载ELF格式的OS的过程。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年10月13日
下一篇 2019年10月13日

相关推荐