精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
操作系统
实 验 报 、实现代码及其说明:验证性实验,无此项目。
:验证性实验,无此项目。
,实验过程
1. 调试BIOS程序
(1). 在Console窗口中输入调试命令sreg后按回车,显示当前CPU中各个段寄存器的值,如图2-1。其中CS寄存器信息行中的“s=0xf000”表示CS寄存器的值为0xf000.
(2).输入调试命令r后按回车,显示当前CPU中各个通用寄存器的值,如图10-3。其中“rip: 0x:0000fff0”表示IP寄存器的值为0xfff0。
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
(3). 输入调试命令xp /1024b 0x0000,查看开始的1024个字节的物理内存。在Console中输出的这1K物理内存的值都为0,说明BIOS中断向量表还没有被加载到此处。
(4). 输入调试命令xp /512b 0x7c00,查看软盘引导扇区应该被加载到的内存位置。输出的内存值都为0,说明软盘引导扇区还没有被加载到此处。
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
2. 调试软盘引导扇区程序
a. 输入调试命令vb 0x0000:0x7c00,这样就在逻辑地址0x0000:0x7c00(相当于物理地址0x7c00)处添加了一个断点。
b. 输入调试命令c继续执行,在0x7c00处的断点中断。中断后会在Console窗口中输出下一个要执行的指令,即软盘引导扇区程序的第一条指令,如下 (0) [0x00007c00] 0000:7c00 (unk. ctxt): jmp .+0x006d (0x00007c6f) ; eb6d
c. 为了方便后面的使用,先在纸上分别记录下此条指令的字节码(eb6d)和此条指令要跳转执行的下一条指令的地址(括号中的0x00007c6f)。
d. 输入调试命令sreg验证CS寄存器(0x0000)的值。
e. 输入调试命令r验证IP寄存器(0x7c00)的值。
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
f. 由于BIOS程序此时已经执行完毕,输入调试命令xp /1024b 0x0000验证此时BIOS中断向量表已经被载入。
g. 输入调试命令xp /512b 0x7c00显示软盘引导扇区程序的所有字节码。观察此块内存最开始的两个字节分别为0xeb和0x6d,这和引导程序第一条指令的字节码(
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
eb6d)是相同的。
h. 输入调试命令xp /512b 0x0600验证图3-2中第一个用户可用区域是空白的。
i. 输入调试命令xp /512b 0x7e00验证图3-2中第二个用户可用区域是空白的。
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
j. 自己设计两个查看内存的调试命令,分别验证这两个用户可用区域的高地址端也是空白的。
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专心---专注---专业
精选优质文档-----倾情为你奉上
专心---专注---专业
k. 输入调试命令xp /512b 0xa0000验证图3-2中上位内存已经被系统占用。
l. 自己设计一个查看内存的调试命令,验证上位内存的高地址端已经被系统占用。
精选优质文档-----倾情为你奉上
精选优质文档-----倾情为你奉上
专心---专注---专业
专
操作系统的启动实验报告(共14页) 来自淘豆网m.daumloan.com转载请标明出处.