操作系统实验第二讲、操作系统的启动_第1页
操作系统实验第二讲、操作系统的启动_第2页
操作系统实验第二讲、操作系统的启动_第3页
操作系统实验第二讲、操作系统的启动_第4页
操作系统实验第二讲、操作系统的启动_第5页
已阅读5页,还剩9页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作系统实验报告课程名称操作系统实验课程编号201406304实验项目名称实验环境的使用学号2015061423班级20150614姓名吴雪含专业计算机科学与技术学生所在学院计算机科学与技术学院指导教师王红滨、曹雪实验室名称地点21B276哈尔滨工程大学计算机科学与技术学院1第二讲操作系统的启动一、实验概述1实验名称操作系统的启动2实验目的1)、跟踪调试EOS在PC机上从加电复位到成功启动的全过程,了解操作系统的启动过程。2)、查看EOS启动后的状态和行为,理解操作系统启动后的工作方式。3实验类型(验证、设计)验证4实验内容1)、启动OSLAB。2)、新建一个EOSKERNEL项目。3)、在“项目管理器”窗口中打开BOOT文件夹中的BOOTASM和LOADERASM两个汇编文件。BOOTASM是软盘引导扇区程序的源文件,LOADERASM是LOADER程序的源文件。简单阅读一下这两个文件中的NASM汇编代码和注释。4)、按F7生成项目。5)、生成完成后,使用WINDOWS资源管理器打开项目文件夹中的DEBUG文件夹。找到由BOOTASM生成的软盘引导扇区程序BOOTBIN文件,该文件的大小一定为512字节(与软盘引导扇区的大小一致)。找到由LOADERASM生成的LOADER程序LOADERBIN文件,记录下此文件的大小1566字节,在下面的实验中会用到。找到由其它源文件生成的操作系统内核文件KERNELDLL。二、实验环境进行实验使用的操作系统、编译器、语言及工具等。操作系统WINDOWSXP编译器TEVALATONOSLAB语言C2三、实验过程(每次实验不一定下面6条都写,根据实际情况定)需要解决的问题以及解答(1)、自己设计两个查看内存的调试命令,分别验证这两个用户可用区域的高地址端也是空白的。答命令为XP/512B0X7A00和CP/512V0X9FE00。因为第一个用户区的高位地址截止到0X7C00,第二个用户区高位地址截止到0XA0000,命令表示显示从0X7A00和0X9FE00以后512B空间的所有字节码,即两个用户区的高位地址端,可以看到所有字节全为0,说明高地址端是空白的。如图一、图二所示。(2)、自己设计一个查看内存的调试命令,验证上位内存的高地址端已经被系统占用。答命令为XP/512B0XFFE00。因为上位内存的高位地址截止到0X100000,命令表示显示从0XFFE00以后的512B空间的所有字节码,即两个用户区的高位地址端。可以看到所有字节都有值,说明高地址端被占用。如图三所示。(3)、根据之前记录的LOADERBIN文件的大小,自己设计一个查看内存的调试命令,查看内存中LOADER程序结束位置的字节码,并与LOADERLST文件中最后指令的字节码比较,验证LOADER程序被完全加载到了正确的位置。答命令为XP/8B0X1616程序的初始位置为0X1000,加上1566的十六进制61E8B,答案即为1616如图四、图五、图六、图七所示。(4)、仔细比较实验指导105图和106图,尝试说明哪个是应用程序的进程,它和系统进程有什么区别,那个是应用程序的主线程,它和系统线程有什么区别答进程列表中ID为31的进程是应用程序的进程,其优先级为8,包含1个线程,主线程ID为33,映像名称为AHELLOEXE。而ID为1的是系统进程,其优先级为24,包含有10个线程,其中的ID为2的线程是该进程的主线程,系统进程没有映像名称。主要区别为应用程序的进程优先级较低。线程列表中ID为33的线程是应用程序的线程,其优先级为8,处在阻塞状态,而ID为2028的是系统进程,其优先级为24,其中ID为22的处于运行状态3图一4图二5图三6(5)、为什么EOS操作系统从软盘启动时要使用BOOTBIN和LOADERBIN两个程序使用一个可以吗它们各自的主要功能是什么如果将LOADERBIN的功能移动到BOOTBIN文件中,则BOOTBIN文件的大小是否仍然能保持小于512字节答在生成项目的时候,BOOT文件夹中的两个汇编文件BOOTASM和LOADERASM分别生成了两个二进制文件BOOTBIN和LOADERBIN。这两个文件缺一不可,他们会被写入软盘镜像文件。在EOS操作系统启动的时候,BOOTBIN用于引导软盘,而LOADERBIN用于加载程序。如果把LOADERBIN的功能移动到BOOTBIN程序中,肯定会增加BOOTBIN的规模文件大小将会大于512字节。(6)、软盘引导扇区加载完毕后内存中有两个用户可用的区域,为什么软盘引导扇区程序选择将LOADERBIN加载到第一个可用区域的0X1000处呢这样做有什么好处这样做会对LOADERBIN文件的大小有哪些限制答第一个用户可用区取余位于低地址端,便于检索查找,并且容量相对较小,适合容纳相对较小的文件,所以将LOADERBIN加载到第一个可用区域,节省资源。由于第一用户区域的大小限制,LOADERBIN的大小不能超过295KB。图四图五7如左图图六所示LOADERBIN文件大小为1566B。图七8程序运行时的初值以及运行结果BOCHS在CPU要执行的第一条指令处中断。DISPLAY窗口没有显示内容。如下图所示SREG命令查看当前CPU各个段寄存器的值R命令查看当前CPU中各个通用寄存器的值输入调试命令XP/1024B0X00009输入调试命令XP/512B0X7C00输入调试命令VB0X00000X7C00添加断点输入C继续执行输入SREG验证CS寄存器的地址10输入调试命令R验证IP寄存器的值输入调试命令XP/512B0X7C00显示软盘引导扇区程序的所有字节码输入调试命令XP/512B0X0600输入调试命令XP/512B0X7E0011输入调试命令XP/512B0XA0000验证上位内存已被系统占用输入调试命令VB0X00000X7D81添加一个断点输入调试命令C继续执行,在断点处中断12输入调试命令XP8B0X10000查看内存0X1000处的数据324调试加载程序查看EOS版本号13迅速按CTRLF2切换到控制台2,并输入命令“PT”后按回车。输出的进程和线程信息如图106所示四、实验体会本次实验主要采用了在EOS操

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论