操作系统课程设计实验报告(以Linux为例)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《操作系统课程设计》
实验报告
学号:
姓名:
苏州大学计算机科学与技术学院
2014年9月
操作系统课程设计实验报告
目录
目录 (1)
一、实验环境 (2)
二、实验报告总体要求 (2)
实验一编译L INUX内核 (3)
实验二观察L INUX行为 (7)
实验三进程间通信 (14)
操作系统课程设计实验报告
一、实验环境
Linux平台
◆硬件平台:普通PC机硬件环境。
◆操作系统:Linux环境,例如,红旗Linux或Red Hat Linux;启动
管理器使用GRUB。
◆编译环境:伴随着操作系统的默认gcc环境。
◆工作源码环境:一个调试的内核源码,版本不低于2.4.20。
二、实验报告总体要求
在2013年11月25日前提交实验报告。实验报告至少要求包含以下内容:
1.引言:概述本次实验所讨论的问题,工作步骤,结果,以及发现的意
义。
2.问题提出:叙述本篇报告要解决什么问题。注意不可以抄写实验要求
中的表述,要用自己的话重新组织我们这里所提出的问题。
3.解决方案:叙述如何解决自己上面提出的问题,可以用小标题 3.1,
3.2…等分开。这是实验报告的关键部分,请尽量展开来写。注意,
这部分是最终课程设计的基本分的部分。这部分不完成,本课程设计不会及格。
4.实验结果:按照自己的解决方案,有哪些结果。结果有异常吗?能解
释一下这些结果吗?同别人的结果比较过吗?注意,这部分是实验报告出彩的地方。本课程设计要得高分,应该在这部分下功夫。
5.结束语:小结并叙述本次课程设计的经验、教训、体会、难点、收获、
为解决的问题、新的疑惑等。
6.附录:加了注释的程序清单,注释行数目至少同源程序行数目比1:
2,即10行源程序,至少要给出5行注释。
操作系统课程设计实验报告实验一编译Linux内核
实验时间
6小时
实验目的
认识Linux内核的组成,掌握配置、编译、安装Linux内核的步骤。
实验目标
下载2.6.19或更新的Linux内核,配置该内核使其支持NTFS,并在新的内核中修改其版本为Linux NameTestKernel x.x.x,其中,Name是你的名字(汉语拼音);x.x.x是新内核的版本号,最后在你的机器上编译安装这个新内核。
背景知识
参见《Red Hat Enterprise Linux 4入门与提高》第20章。
实验步骤
1.验证gcc的可用:在你自己的工作目录下,编译链接运行Hello World程序。
2.在上下载指定的内核,或者查找更新的稳定版内核并下
载之。
3.准备相关工具。
提示:如当前运行的Linux内核是基于2.4版本的,则需要更新以下软件:module-init-tools 和mkinitrd。具体更新信息可参见下载内核源代码中的Documentation/Changes这个文件。
4.把源代码解压缩至/usr/src中,最终形成/usr/src/linux x.x.x/目录(x.x.x是新内
核的版本号)。
提示:这里的注意点是路径的选择,一般要放在/usr/src/linux x.x.x/目录下面,以满足Makefile 对路径设置的初始要求。
5.进入源代码的根目录(/usr/src/linux x.x.x),找到合适自己的内核配置方法,并
按照实验目标对其进行配置。
操作系统课程设计实验报告
6.修改/usr/src/linux x.x.x/include/linux/version.h文件中的版本信息。
注:如果没有这个文件,请执行命令:make include/linux/version.h
7.编译内核。
8.安装模块文件。
9.安装内核文件。
10.重新启动新内核。
实验结果
1.实验步骤1中,编译链接运行程序你下达了哪些命令?
2.实验步骤2中,你下载了哪个版本的内核文件?
3.实验步骤3中,你是否安装了相关工具?如安装,则写出安装过程。
4.实验步骤4中,你是用哪些命令解压缩内核文件的?
5.实验步骤5中,你用了哪种内核配置的方法?
6.你对实验步骤6中涉及的文件做了怎样的修改?
7.实验步骤7-9的过程,是否出现错误?如有,你是如何解决的?
8.观察你机器中GRUB的配置文件,它在安装完新内核后发生了哪些变化?
9.新内核启动过程是否成功?如有错误,是哪些错误?你是如何消错的?
操作系统课程设计实验报告(如不够,可另附页)
实验报告
操作系统课程设计实验报告
操作系统课程设计实验报告实验二观察Linux行为
实验时间
6小时
实验目的
学习Linux内核、进程、存储和其他资源的一些重要特征。
实验目标
编写一个程序使用/proc机制检查反映机器平均负载、进程资源利用等方面的各种内核值。在得到内核状态之后,将所观察到的行为在屏幕上输出。
背景知识
Linux、Solaris和其他版本的UNIX提供了一种非常有用的检查内核状态机制,叫做/proc文件系统。这是可以用来完成本练习的关键机制。
1. /proc文件系统
/proc文件系统是一种操作系统机制,它的接口就像传统UNIX文件系统的一个目录(在根目录中)。可以改变到/proc正如改变到任何其他目录,例如,
bash$ cd /proc
使/proc作为当前目录。一旦把/proc作为当前目录,就可以用ls命令列出它的内容。其内容看起来像普通的文件和目录。但是,/proc或者其子目录中的文件实际上是读取内核变量并以ASCII字符串方式报告它们的程序。这些例程中的一些仅在伪文件打开时读取内核表,而其他例程在每次文件被访问时读表。因此各种读函数的工作方式可能与预期的有所不同,因为它们并没有在真正操作文件。
Linux提供的/proc实现可以读取很多不同的内核表。/proc中包含一些目录和文件,每个文件读取一个或多个内核变量。而具有数字名称的子目录包括更多的伪文件读取其进程ID和目录名相同的进程的有关信息。self目录包含了正在使用/proc 进程的特定进程信息。/proc目录树的确切内容随Linux的版本而不同,所以必须对伪文件进行实验查看所提示的信息。