操作系统实验2精品文档.docx
《操作系统实验2精品文档.docx》由会员分享,可在线阅读,更多相关《操作系统实验2精品文档.docx(11页珍藏版)》请在冰点文库上搜索。
操作系统实验2精品文档
操作系统
实验报告
课程名称
操作系统实验
实验项目名称
操作系统的启动
学号
2012201425
班级
20122014
姓名
颜凡腾
专业
软件工程
学生所在学院
软件学院
指导教师
曹雪
实验室名称地点
21b
哈尔滨工程大学
软件学院
一、实验概述
1.实验名称
实验环境的使用
2.实验目的
熟悉操作系统集成实验环境OSLab的基本使用方法。
练习编译、调试EOS操作系统内核以及EOS应用程序。
3.实验类型
验证
二、实验环境
OSLab
三、实验过程
新建:
调试:
使用Bochs作为远程目标机:
调试:
调试软盘引导扇区程序:
查看boot.lst文件:
查看最后指令字节码
调试加载程序:
调试内核:
EOS启动后的状态和行为:
ID是31的是应用程序的进程,ID31的是系统进程。
应用程序的优先级是8,而系统进程的优先级是24,应用程序的进程数是1,而系统进程的进程数是10,并且应用程序是有名字的,而系统程序没有名字。
Id是33的是应用程序的主线程,它与系统线程主要的区别就是优先级不同。
四、思考题
1、为什么EOS操作系统从软盘启动时要使用boot.bin和loader.bin两个程序?
使用一个可以吗?
它们各自的主要功能是什么?
如果将loader.bin的功能移动到boot.bin文件中,则boot.bin文件的大小是否仍然能保持小于512字节?
答:
在IDE环境启动执行EOS操作系统的时候,会把boot.bin、loader.bin和kernel.dll三个二进制文件写到软盘镜像文件中,然后让虚拟机来执行软盘里的EOS操作系统。
仅使用其中的一个是不能运行的。
Boot.bin程序的功能是:
在Boot.bin程序执行的过程中,CPU始终处于实模式状态。
Boot.bin程序利用BIOS提供的int0x13中断服务程序读取软盘FAT12文件系统的根目录,在根目录中搜寻loader.bin文件。
Loader.bin程序的功能是:
Loader.bin程序的任务和Boot.bin程序很相似,同样是将其它的程序加载到物理内存中,但这次加载的是EOS内核。
除此之外,Loader.bin程序还负责检测内存大小,为内核准备保护模式执行环境等工作。