1、操作系统实验教学大纲一课程基本信息名称:操作系统实验学分:0.5分/17学时考核方式:考查二 教学目标操作系统是计算机科学与技术专业的一门专业必修课程,其特点是概念多、较抽象 和涉及面广,同时,也是一门实践性很强的课程,既要掌握原理,又需编程验证。只有通过 上机实验,才能使学生在整体上对操作系统的工作原理有深入的理解和掌握。因此,本实验 课程是实施操作系统原理教学的一个重要组成局部。通过本实验课程的学习,学生应熟 悉操作系统各功能中的基本算法,具有分析和设计操作系统主要功能、基本算法的能力。三 教学内容实验工程一:Linux入门实验(2学时)L实验属性:验证实验2,修读性质:必开3.教学目标(
2、1)了解LINUX运行环境的命令及使用格式(2)熟悉LINUX的常用基本命令(3)练习并掌握LINUX下C语言程序的编写、编译、调试和运行方法4 .实验方法上机操作5实验仪器设备硬件设备:高档微机软件环境:Windows XP及虚拟机下安装的Linux6 .实验内容(1)熟悉 LINUX 的常用基本命令如 logout/exit adduser deluser Is、cd、pwd、mkdir rmdir rm、cp mv cat man 等。(2)用vi编写一个简单的显示“hello word!”的程序,用gcc编译并观察编译后的结 果,运行生成的可执行文件。7 .成绩评定实验要求提交相应的文
3、档及实验报告,教师对其进行评分,最后纳入操作系统课程 的平时成绩中。实验工程二:Linux进程控制(4学时)8 .实验属性:验证实验9 ,修读性质:必开10 教学目标(1)加深对进程概念的理解,明确进程和程序的区别。(2)进一步认识并发执行的概念,区别顺序执行和并发执行。(3)掌握进程创立的方法。(4)熟悉进程的睡眠,同步和撤销等进程控制方法。(5)分析进程争用临界资源的现象,学习解决进程互斥的方法。11 实验方法上机操作5实验仪器设备硬件设备:高档微机软件环境:Windows XP及虚拟机下安装的Linux12 实验内容(1)编写一段程序,使用系统调用fork()创立两个子进程。各进程显示不
4、同的信息, 如父进程显示字符“a”,子进程分别显示字符“b”和“c”。屡次运行观察显示结果,并分 析产生这种执行效果的原因。(2)修改已编写的程序,将每个进程输出一个字符改为每个进程输出一句话,在观察 程序执行时屏幕出现的现象,并分析原因(3) 一个父进程创立一个子进程,子进程通过exec系统调用执行另一个文件。各自的 代码中显示不同的信息,从其运行结果可看出两个进程并发执行的效果。(4)利用wait ()来控制进程执行顺序,并用exit ()来终止进程执行,分析wait()是 如何实现进程同步的(5)选作:如果在程序中使用调用lockf()来给每一个子进程加锁,可以实现进程之 间的互斥,观察
5、并分析出现的现象。13 成绩评定实验要求提交相应的文档及实验报告,教师对其进行评分,最后纳入操作系统课程 的平时成绩中。实验工程三:Linux进程通信(3学时)L实验属性:验证实验14 ,修读性质:必开15 教学目标(1)了解什么是信号、熟悉LINUX系统中进程之间软中断通信的基本原理。(2) 了解什么是管道以及熟悉LINUX支持的管道通信方式。(3) 了解什么是消息以及熟悉消息传送的机理。16 实验方法上机操作5实验仪器设备硬件设备:高档微机软件环境:Windows XP及虚拟机下安装的Linux17 实验内容(1)进程的软中断通讯任务:编写一段程序,使其现实进程的软中断通信。出结果并分析原
6、因。(2)进程的管道通信任务:编写程序实现进程的管道通信。用系统调用pipe()建立一管道,二个子进程P1 和P2分别向管道各写一句话:Child 1 is sending a message!Child 2 is sending a message!父进程从管道中读出二个来自子进程的信息并显示(要求先接收P1,后P2)。(3)消息通信任务:使用系统调用msgget ( ), msgsnd( ), msgrev(),及msgctl ()编制一长度为1 k 的消息发送(client, c)和接收(server, c)的程序。观察上面的程序,记录实验结果,说明控制消息队列系统调用msgctl ()
7、在此起什么作用?(选作:为了便于操作和观察结果,用一个程序为“引子”,先后fork。两个进程,server 和client进行通信。)18 成绩评定实验要求提交相应的文档及实验报告,教师对其进行评分,最后纳入操作系统课程 的平时成绩中。实验工程四:处理机调度(3学时)1 .实验属性:验证实验2 .修读性质:必开3 .教学目标(1)通过设计先来先服务调度算法和短作业优先调度算法,模拟多个进程调度方式, 进一步理解先来先服务和短作业优先调度算法的实质,掌握周转时间和带权周转时间等基本 概念,并对两种算法的优劣有清晰的了解。(2)要求学生选择一种熟悉的高级语言,完成调度算法设计。提交编译链接成功的源
8、 代码文件和可执行的EXE文件以及相应的设计文档,并检查实际运行结果。4 .实验方法上机操作5实验仪器设备硬件设备:高档微机软件环境:Windows XP及虚拟机下安装的Linux6 .实验内容4个等待调度的作业,它们的到达时间和要求服务时间。要求输出作业的调度顺序 和每个作业的到达时间、要求服务时间、开始运行时间、结束运行时间、周转时间、带权周 转时间,每种算法的平均周转时间和平均带权周转时间。7 .成绩评定实验要求提交相应的文档及实验报告,教师对其进行评分,最后纳入操作系统课程 的平时成绩中。实验工程五:页面置换算法模拟(2学时)1 .实验属性:验证实验2 .修读性质:必开3 .教学目标(
9、1)进一步掌握虚拟存储器的工作原理。(2)通过实验理解和掌握FIFO, LRU, OPT三种页面置换算法(3)比拟各种页面置换算法的优缺点。4 .实验方法上机操作5实验仪器设备硬件设备:高档微机软件环境:Windows XP及虚拟机下安装的Linux6 .实验内容(1)编译。pt.c,实现OPT置换算法。(源程序已给)屡次执行,查看OPT置换算法的详细置换过程及结果。(2)编辑Iru.c,实现LRU置换算法。(源程序已给)屡次执行examl6b,查看LRU置换算法的详细置换过程及结果。(3)代码参照前两个算法自行编写,实现FIFO置换算法。(4)在一个程序中同时实现OPT, LRU和FIFO三
10、种置换算法。7 .成绩评定实验要求提交相应的文档及实验报告,教师对其进行评分,最后纳入操作系统课程 的平时成绩中。实验工程六:简单多用户文件系统(3学时).实验属性:验证实验2,修读性质:必开.教学目标通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及内部实现。3 .实验方法上机操作5实验仪器设备硬件设备:高档微机软件环境:Windows XP及虚拟机下安装的Linux.实验内容为LINUX设计一个简单的二级文件系统。要求做到以下几点:(1)可以实现以下儿条命令(至少4条)。Login用户登录Dir列文件目录Create创立文件Delete删除文件Open翻开文件Close关闭文件
11、Read读文件Write写文件(2)列目录时要列出文件名、物理地址、保护码和文件长度。(3)源文件可以进行读写保护。6 .成绩评定实验要求提交相应的文档及实验报告,教师对其进行评分,最后纳入操作系统课程 的平时成绩中。四、考核形式及成绩评定本门实验课程考核成绩占课程总成绩的10%。考核分课外上机实验准备、实验过程、实 验结果和实验报告等三个方面。(-)考核形式:考查(二)成绩评定:成绩评定为课外上机实验占20%、实验过程占20%、实验结果和实验报告占60%。五、教材与参考书教 材:张丽芬等编著.操作系统实验教程,北京:清华大学出版社.2006.3参考书:1王亚著.操作系统实验设计与指导.安徽:阜阳师范学院计算机与信息学院.2011. 82汤子瀛等.计算机操作系统实验指导与题解.陕西:西安电子科技大学出版社.六、课程学时分配表序号实验工程名称学时实验属性修读性质主要仪器设备实验工程1Linux入门2验证实验必开PC实验工程2Linux进程控制4验证实验必开PC实验工程3进程间通信3验证实验必开PC实验工程4处理机调度3验证实验必开PC实验工程5页面置换算法模拟2验证实验必开PC实验工程6简单多用户文件系统3验证实验必开PC