《操作系统实验教学》由会员分享,可在线阅读,更多相关《操作系统实验教学(5页珍藏版)》请在金锄头文库上搜索。
1、甘肃政法学院计算机科学与技术专业课程教学大纲操作系统实验教学大纲一、 课程性质操作系统基础实验是操作系统课的理论实践,通过实践操作,加深对进程管理、文件管理等的理解,主要对进程的创建、进程的消息通信、信号量通信、管道通信、共享存储区通信,文件的创建、文件的复制、文件的随机访问等进行实践。从而对操作系统的基本原理有深刻的理解,为进一步设计大型软件做好基础,为操作系统课程设计积累经验。二、基本要求掌握Windows 2000系统中利用任务管理器观察进程、线程、内存分配的变化情况。可以用C语言进行较复杂的程序设计,并能在Linux环境下编译生成可执行代码;会用gdb跟踪程序的执行;会在Linux环境
2、下查看命令和系统调用的man帮助,会使用kill、ls、cp、rm等命令,能熟练vi编辑器。三、项目总表序号实验项目名称学时数项目类别项目类型1Vmware及Linux的安装2基础必做2Linux文件操作命令练习2基础必做3Linux用户及常用命令练习2基础必做4Windows xp环境下程序、进程、线程关系观察2基础必做5Linux环境下程序、进程、线程关系观察2基础必做6进程的创建及终止2基础必做7父子进程的同步2基础必做8管道通信2基础必做9消息通信4基础必做10信号量通信2基础必做11共享存储区通信2基础必做12文件的创建及类型访问2基础必做13文件的复制2基础必做14文件的随机存取2
3、基础必做15进程调度模拟6综合选做16请求页式存储管理模拟6综合选做四、实验内容1 Vmware及Linux的安装实验目的:掌握vmware安装,了解vmware的基本功能,掌握在虚拟机中安装red hat linux操作系统的方法。实验内容:(1) 下载并安装vmware workstaion6.0。(2) 下载rad hat linux镜像光盘文件shrike-i386-disc1.iso、shrike-i386-disc2.iso、shrike-i386-disc3.iso,并在vmware workstaion6.0进行安装。(3) 通过vmware workstaion6.0或虚拟机
4、播放器录登录linux系统。2 Linux文件操作命令练习实验目的:掌握linux的登录及退出,掌握文件操作的常用命令。实验内容:(1) 练习login、logout、shutdown。(2) 练习mkdir、rmdir、cd、ls、find、cat、chmod、mv、pwd、du、cp、rm。3 Linux用户及常用命令练习实验目的:掌握linux的常用常用命令。实验内容:(1) 练习grep、ln、compress。(2) 练习tar、df、quot、fsck、mount、umount、ping 。(3) 练习adduser、userdel、passwd、kill、ps等命令。4 Wind
5、ows xp环境下程序、进程、线程关系观察实验目的:掌握Windows xp中进程的描述,进程占用资源的情况分析。了解进程与程序的大小关系。实验内容:利用Windows xp的任务管理器进行下面内容的观察并记录、分析。观察现有系统进程,并记录它们的内存占有情况,进程ID号,映象名,优先级;记录系统现在的进程数、线程数。运行Word2003,观察其进程的描述及系统的进程数、线程数;分别同时创建一个文档,两个文档;三个文档观察进程数、线程数及内存的变化。运行PowerPoint 2003观察其系统进程数、线程数及内存变化;观察其程序大小与进程大小的关系。任选五个可执行程序并运行,观察它们的进程描述
6、(进程PID、映象名称、CPU使用、内存使用、内存使用增量、内存使用高峰值、用户名、虚拟内存大小、基本优先级、句柄计数、线程计数等可以观察到的内容,并记录分析。实验目的:熟悉Windows xp系统中进程的描述、进程与程序、线程的关系,通过Word进程理解进程运行时内存动态分配;理解线程是进程的执行部分的概念,深刻理解进程是系统进行分配的基本单位,是程序在某数据集上的执行过程。实验要求:对观察到的内容做详细记录分析,并写出实验报告。5 Linux环境下程序、进程、线程关系观察实验目的:掌握red hat linux中进程的描述,进程占用资源的情况分析。了解进程与程序的大小关系。实验内容:利用r
7、ed hat linux的任务管理器进行下面内容的观察并记录、分析。观察现有系统进程,并记录它们的内存占有情况,进程ID号,映象名,优先级;记录系统现在的进程数、线程数。通过ps观察进程的运行状态。实验要求:对观察到的内容做详细记录分析,并写出实验报告。6 进程的创建及终止实验目的:掌握linux中进程的创建及撤消,理解进程的生命周期。实验内容:编写三个程实现进程的创建及撤消。要求分别调用fork()、vfork()实现进程的创建,调用exit()终止进程,调用exec()为进程指定新的运行程序。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。7 父子进程的同步实验目的
8、:理解进程同步工作的原理,掌握linux中wait()、exit()、sleep()实现进程的同步。实验内容:编写两个程实现进程的同步。要求分别调用fork()、sleep()、wait()、exit()实现两个进程的同步。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。8 管道通信实验目的:理解进程通信的原理,掌握管道通信机制,熟悉无名管道和有名管道通信的实现。实验内容:编写两个程实现进程的无名管道和有名管道通信。要求分别调用pipe()、close()、write()、read()、popen()、pclose()、mknod()、mkfifo()、open()实现
9、多个进程间的通信。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。9 消息通信实验目的:理解进程通信的原理,掌握消息通信机制,熟悉消息的构造、消息的通信。实验内容:分别调用msget()、msgsnd()、msgrcv()实现多个进程间的通信。编写一程序实现创建一个私有消息队列,一上进程自己发送消息和接收消息。编写另一程序实现创建一个公共消息队列,实现客户进程和服务者进程之间进行通信。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。10.信号量通信实验目的:理解进程通信的原理,掌握信号量通信机制,熟悉信号量的构造、信号量的通信。实验内容:分别调用
10、semget()、semop()、semctl()实现多个进程间的通信。编写一程序实现进程互斥共享文件的信号量的使用。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。11. 共享存储区通信实验目的:理解进程通信的原理,掌握共享存储区通信机制,熟悉共享区的连接与断开,数据的发送与获取。实验内容:分别调用shmget()、shmat()、shmctl()实现多个进程间的通信。编写两程序,一个向共享段写信息,一个从共享段读信息。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。12.文件的创建及类型访问实验目的:理解文件的说明信息,能够通过其信息了解文件
11、的属性、文件、大小、创建日期等。实验内容:分别调用stat()、fstat()、lstat()实现对任一文件说明信息的访问。调用create()、unlink()、open()、close()、read()、write()实现对文件的创建、删除、读写。编写一程序,实现对任意文件说明信息的访问,并显示其结果。编写一程序,实现对指定文件的创建、删除、换名。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。13.文件的复制实验目的:理解文件的创建与读写。掌握文件的复制原理。实验内容:调用create()、unlink()、open()、close()、read()、write(
12、)实现对文件的复制。编写一程序,实现对任意文件的复制。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。14.文件的随机存取实验目的:理解文件的指针,掌握文件的随机访问及多个程序对其访问。实验内容:调用lseek()实现对文件内容的定位。编写一程序,实现对指定文件内容的随机访问。调试并分析结果。实验要求:对观察到的内容做详细记录分析,并写出实验报告。15.进程调度模拟实验目的:熟悉进程调度的管理,理解Linux系统中的进程管理原理。实验内容:以函数或过程或对象的方式建立十个模拟进程,它们各自有独立的功能,每个进程的执行有相应的显示,建立一进程调度程序,依据一定的动态优先数
13、规则对这十个进程进行调度,每次调度在显示器上应看到调度的结果。实验目的:熟悉进程调度算法中动态优先数调度。实验要求:(1)在Linux系统上进行实验。(2)要求程序编写规范,运行结果正确,并写出实验报告。16.请求页式存储管理模拟实验目的:熟悉内存的管理,理解Linux系统中的内存管理原理。实验内容:编写程序,模拟内存和外存中页的置换过程,分别以FIFO,RR, OPT方法置换时,算法的效率。实验要求:(1)在Linux系统上进行实验。(2)要求程序编写规范,运行结果正确,并写出实验报告。五、考核要求要求程序编写规范,运行结果正确,实验报告中能对问题和现象进行解释。对于设计和综合类的实验项目,要有分析和设计、以及测试的过程说明文档。六、 参考书目1 张丽芬、刘利雄、王全玉编著,操作系统实验教程,清华大学出版社。2操作系统原理与实践教程周湘贞、曾宪权编,清华大学出版社。3.Windows操作系统核心编程实验教程,宋晓宇,中国铁道出版社。5