- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
geekos计算机系统软件实验报告
计算机系统软件实验报告
GeekOS操作系统的研究与实现
题 目:GeekOS操作系统的研究与实现
学 院: 学院专 业: 学生姓名: 学 号:题目类型:(理论研究 (实验研究 (工程设计 (工程技术研究 (软件开发
Bochs模拟器下模拟启动,来了解操作系统的基本原理和系统的启动过程。同时扩充GeekOS操作系统内核,使得系统能够支持用户级进程的动态创建和执行。
二.实验要求
GEEKOS提供了7个project进行试验,本人选做了project0~project2。
(1)搭建GeekOS的编译和调试平台,掌握GeekOS内核进程工作原理。
(2)了解GEEKOS的使用方法,完成其键盘响应函数,使其对键盘的中断作出响应,并显示出按下的键值。
(3)完成对可执行文件(ELF)的格式分析,并将分析结果传递到GEEKOS提供的程序装载器。
(4)在用户模式下建立进程和使用系统调用。
(5)实现进程的调度和同步。
三.实验及其配置
本实验所需资源:VMware ,Red Hat Enterprise Linux 4、Geekos-0.3.0、Bochs 2.2.6、Gedit、Nasm汇编语言编译器等。本实验采用直接在虚拟机上安装Linux进行开发调试
1 GeekOS简介
操作系统是管理系统软,硬件资源,控制程序运行,改善人机界面,提供各种服务,合理组织计算机工作流程和为用户有效使用计算机提供良好运行环境的系统软件,它为用户使用计算机提供一个方便,灵活,安全,可靠的工作环境,也是其他应用软件赖以存在的基础.操作系统是计算机系统的重要组成部分,操作系统课程是计算机教育的必修课程,作为计算机专业的核心课程,不但高校计算机相关专业的学生必须学习操作系统,从事计算机行业的从业人员也需要深入了解它.GeekOS中,使用分段机制实现了用户模式任务的内存保护。为了克服在存储设备和文件系统方面的欠缺,GeekOS提供了一个种机制以实现将用户程序编译成直接链接内核的数据对象。这种技术也可以用来实现基于RAM的文件系统。
2 VMware虚拟机 ,Bochs仿真器介绍
VMWare (Virtual Machine ware)是一个“虚拟PC”软件公司.它的产品可以使你在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就象标准Windows应用程序那样切换。而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。安装在VMware操作系统性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。
Bochs的配置
试验可以分别在Windows环境和Linux环境下交替完成,下面介绍具体的实现方法。
1) 下载并安装VMware虚拟机;
2)在VMware虚拟机上安装linux,操作系统开发工具包里,有nasm软件。选中安装即可。如果安装系统没有安装。可以在以后的添加删除程序里安装,不过要安装盘。和windows安装其他软件类似。安装即可。
3)在VMware虚拟机上的linux环境下对GeekOS源文件进行编译和链接,编译成功后生成fd.img软盘映射文件和hd.img硬盘映射文件;
4) 下载并安装系统仿真工具Bochs;
5)配置Bochs环境配置文件Bochsrc.txt,
6)启动Boch环境,在提示的出现GeekOS的欢迎界面。
7)GeekOS系统编译和仿真成功。
8)开始安装好bochs之后,对bochsrc.txt进行配置,考虑到bochs自带bochsrc-sample.txt的比较复杂,因此对其进行改写,方便日后阅读。且将该配置文件放在各个项目之下,方便进行修改。以project0为例,该项目的配置文件如下:
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
romimage: file=$BXSHARE/BIOS-bochs-latest, address=0xf0000
megs: 8
boot: a
floppya: 1_44=fd.img, status=inserted
log: ./bochs.out
keyboard_serial_delay: 200
floppy_command_delay: 500
vga_update_interval: 300000
ips: 1000000
mouse: enabled=0
private
文档评论(0)