欢迎访问爱发表,线上期刊服务咨询

操作系统实验报告8篇

时间:2023-03-07 15:02:20

绪论:在寻找写作灵感吗?爱发表网为您精选了8篇操作系统实验报告,愿这些内容能够启迪您的思维,激发您的创作热情,欢迎您的阅读与分享!

操作系统实验报告

篇1

实验报告格式实验名称

要用最简练的语言反映实验的内容。如验证某程序、定律、算法,可写成"验证×××";分析×××。

学生姓名、学号、及合作者

实验日期和地点(年、月、日)

实验目的

目的要明确,在理论上验证定理、公式、算法,并使实验者获得深刻和系统的理解,在实践上,掌握使用实验设备的技能技巧和程序的调试方法。一般需说明是验证型实验还是设计型实验,是创新型实验还是综合型实验。

实验原理

在此阐述实验相关的主要原理。

实验内容

这是实验报告极其重要的内容。要抓住重点,可以从理论和实践两个方面考虑。这部分要写明依据何种原理、定律算法、或操作方法进行实验。详细理论计算过程。

实验步骤

只写主要操作步骤,不要照抄实习指导,要简明扼要。还应该画出实验流程图(实验装置的结构示意图),再配以相应的文字说明,这样既可以节省许多文字说明,又能使实验报告简明扼要,清楚明白。

实验结果

实验现象的描述,实验数据的处理等。原始资料应附在本次实验主要操作者的实验报告上,同组的合作者要复制原始资料。

对于实验结果的表述,一般有三种方法:

1. 文字叙述: 根据实验目的将原始资料系统化、条理化,用准确的专业术语客观地描述实验现象和结果,要有时间顺序以及各项指标在时间上的关系。

2. 图表: 用表格或坐标图的方式使实验结果突出、清晰,便于相互比较,尤其适合于分组较多,且各组观察指标一致的实验,使组间异同一目了然。每一图表应有表目和计量单位,应说明一定的中心问题。

3. 曲线图

应用记录仪器描记出的曲线图,这些指标的变化趋势形象生动、直观明了。

在实验报告中,可任选其中一种或几种方法并用,以获得最佳效果。

讨论

根据相关的理论知识对所得到的实验结果进行解释和分析。如果所得到的实验结果和预期的结果一致,那么它可以验证什么理论?实验结果有什么意义?说明了什么问题?这些是实验报告应该讨论的。但是,不能用已知的理论或生活经验硬套在实验结果上;更不能由于所得到的实验结果与预期的结果或理论不符而随意取舍甚至修改实验结果,这时应该分析其异常的可能原因。如果本次实验失败了,应找出失败的原因及以后实验应注意的事项。不要简单地复述课本上的理论而缺乏自己主动思考的内容。

另外,也可以写一些本次实验的心得以及提出一些问题或建议等。

结论

结论不是具体实验结果的再次罗列,也不是对今后研究的展望,而是针对这一实验所能验证的概念、原则或理论的简明总结,是从实验结果中归纳出的一般性、概括性的判断,要简练、准确、严谨、客观。

实验报告范文1一、实验目的及要求:

本实例的目的是设置页面的背景图像,并创建鼠标经过图像。

二、仪器用具

1、生均一台多媒体电脑,组建内部局域网,并且接入国际互联网。

2、安装windows xp操作系统;建立iis服务器环境,支持asp。

3、安装网页三剑客(dreamweaver mx;flash mx;fireworks mx)等网页设计软件;

4、安装acdsee、photoshop等图形处理与制作软件;

5、其他一些动画与图形处理或制作软件。

三、实验原理

设置页面的背景图像,并创建鼠标经过图像。

四、实验方法与步骤

1) 在“页面属性”对话框中设置页面的背景图像。

2) 在页面文档中单击“”插入鼠标经过图像。

五、实验结果

六、讨论与结论

实验结束后我们可以看到页面的背景变成了我们插入的图像,并且要鼠标经过的时候会变成另一个图像,这就是鼠标经过图像的效果。当然这种实验效果很难在实验结果的截图里表现出来。这个实验的关键在于背景图像的选择,如果背景图像太大不仅会影响网页的打开速度,甚至图像在插入会也会有失真的感觉,因此在插入前对图像进行必要的处理能使实验的效果更好。

实验报告范文2一、实验目的及要求:

本实例是要创建边框为1像素的表格。

二、仪器用具

1、生均一台多媒体电脑,组建内部局域网,并且接入国际互联网。

2、安装windows xp操作系统;建立iis服务器环境,支持asp。

3、安装网页三剑客(dreamweaver mx;flash mx;fireworks mx)等网页设计软件;

4、安装acdsee、photoshop等图形处理与制作软件;

5、其他一些动画与图形处理或制作软件。

三、实验原理

创建边框为1像素的表格。

四、实验方法与步骤

1) 在文档中,单击表格“”按钮,在对话框中将“单元格间距”设置为“1”。

2) 选中插入的表格,将“背景颜色”设置为“黑色”(#0000000)。

3) 在表格中选中所有的单元格,在“属性”面版中将“背景颜色”设置为“白色”(#ffffff)。

4) 设置完毕,保存页面,按下“f12”键预览。

五、实验结果

篇2

摘 要:操作系统原理课程包含广泛的专业基础知识和较强的专业内涵,抽象概念多,内容更新快,因此该课程的实验教学需要不断更新实验教学内容,改革实验教学方法。本文结合本校实际教学特点,从这门课程的实验教学方法、实验教学手段、实验设计、课程设计等方面探讨了操作系统原理的实验教学改革情况。

关键词:操作系统;实验教学;计算机专业教学

基金项目:广东石油化工学院教育教学改革研究项目(204232)。

作者简介:许波,男,美国计算机学会(ACM)会员,中国计算机学会(CCF)会员,讲师,研究方向为计算智能、云计算、数字媒体;代静,女,西南大学硕士研究生,专业方向为学科教学。

1 背景介绍

各大高校在开展操作系统原理课程教学时,一般分为理论和实验两大部分[1-2]:首先先通过板书、多媒体等手段讲解理论知识,再通过机房实验操作完成认知和验证训练。在理论教学方面,由于各个院校非常重视并不断进行改革,已渐渐走向成熟与正规化,而实验教学由于起步比较晚,教师与学生重视不够,存在比较多的问题,例如[3-4]:1)实践教学环节非常薄弱,因为实验环境设置问题,几乎没有课程设计;2)大多数国内实验教材内容都陈旧[5]。这些问题使得教师需要不断地更新实验教学内容,改革实验教学方法[6-7]。针对这些问题,并考虑到各个高等院校实际情况与教学条件的差异,我们从实验教学内容的深度、广度和重点、难点等多方面进行改革,经过教学实践,探索出了一些行之有效的实验教学方法,以满足企业对人才的要求。

2 课堂实验教学改革

2.1 编写实验教材

选择合适的实验教材对于实验教学非常关键,目

前市场上关于操作系统原理实验教材种类少,质量不高。这些教材大致可分为以下两种类型[6]:第一类为国内自编实验教材,即国内各大重点院校主讲教师所编著,这类教材偏重于操作系统理论知识的讲解,实践性不强;第二类教材为国外具有权威性的英文原版实验教材,该类教材知识较新、实践性很强,但是由于普通院校教师以及学生的专业英语水平有限,对教材大部分内容无法很好地理解,难以得到全面实施。因此,我们采取了灵活方法来处理教材选用的问题,在充分理解大多数教材,遵循课程教学规律的基础上,针对本校学生的特点与水平,编写了适合我校教学对象和要求的实验教材,综合趣味性、可操作性和适当的难度,在保证实验可完成性的基础上增加学生的兴趣,使其在解决问题的过程中获得成就感。我们还向同类二本院校推荐,解决目前全国大部分高校计算机学科在这门课程的实践教学环节中发展普遍滞后的问题。

2.2 因材施教

作为任课教师,要挖掘每一位学生的自身特点,做到因材施教、人尽其才。只有这样,我们才能为社会输送各种类型的人才,满足不同层次的需要。针对学生的不同需求,教师可穿插讲解难度不同的实验内容。学生大致可以分为以下三种类型:一种为非计算机专业的。一种为计算机专业的,而计算机专业的又可分为深造型和普通就业型。对于深造型,在授课过程中,教师列举典型的考研实验题型,使学生能够深入理解操作系统的原理和应用,对于计算机专业以及网络工程专业将来主要就业的学生或者考证的学生,强化实践动手能力,对实际操作系统,例如Linux,加强实验教学。对于非计算机专业的学生而言,更多的是准备参加计算机等级考试,在课堂上有针对性地梳理实验知识点,引导学生由浅入深地加深操作系统原理知识的学习,针对学生的需要并结合实验教学大纲来授课,可以很好地激发了学生的学习兴趣。

2.3 课堂实验

作为操作系统课堂理论教学的辅助部分,课内实验是加强计算机科学与技术专业实践的重要环节之一。由于操作系统自身的庞大和复杂,造成学生在学过操作系统课程后,总有一种“雾里看花”的感觉,

只是支离破碎地了解了一些操作系统局部知识,而很难将这些知识融会贯通,对于运用操作系统知识从事设计和应用更是无从谈起。我们实验课程设置的目的就是力图解决上述问题。

1) 实验设置。

课堂实验将按以下两个方面进行。

(1) 对常用的系统调用命令的使用方式有一个较熟练的掌握

(2) 对典型操作系统的编程基础知识和机制进行学习和了解。

实验内容如表1所示,操作系统的课内实验共8个,根据具体上机条件和学时选做5~6个,其中实验2、3中必选1个,实验4~7中必选1个。由于所有实验均在Linux环境下工作,用C语言编程,因此学生要具备一定的C语言编程能力。同时要在充分预习实验中相关知识后,再进行实验的上机环节,另外,由于操作系统实验中有些题目具有一定的难度和规模,建议采用分组方式进行实验。

表1 课堂实验设置

2) 实验报告。

实验报告内容包括两部分:一是对相关知识学习的书面总结,主要包括知识综述和参考文献;二是对本次实验的分析报告,主要针对涉及算法的题目;三是包括本次实验的上机结果(数据结构、程序框图、源程序文档和运行情况)以及实验中的难点分析和心得体会。

3) 实验平台。

选用目前最为流行的操作系统Red Hat Linux 9.0作为实验平台,实验内容以验证性实验为主,比如在讲授操作系统原理第一章绪论时,我们设计了Red Hat Linux 9.0的安装实验,并介绍了操作系统的发展历史,学生通过实验环节深化和理解书本知识。

4) 多维度评价体系。

多维度不仅仅是指学习知识,它包括知识与技能、过程与方法、情感态度与价值观等方面,该评价体系打破以往以期末考试成绩为主的成绩评定方法,经过实践与完善,为课程确立了多方面的考核因素和成绩计算公式,内容如下:

总评成绩=课程设计(20%)+实验(20%)+预习报告(5%)+实验报告(10%)+期末考试(45%)-考勤扣分。

由此可见,作为操作系统原理课程的重要学习内容,课程设计和实验操作这两部分在应考核方面力度加大,主张强化应用;另外,对预习报告和实验报告的考核更能反映学生学习的态度及学习成果。

3 课程设计

对一个具体的设计来说,不同功能的实现都有专职的工作组。对于一个班级来讲,50多人也不能都去完成同一个任务。我们应该根据设计的实际情况,将设计进行任务分解,同时将班级全体学生划分成多个小组,每个小组完成一个设计。在分组培养模式下,学生的团队协作精神将明显提高,这既包括组内成员协调,也包括组间协调,既有技术性的,也有人事关系上的。在课程设计中,我们主要侧重运用一些重要的系统调用编写程序模块,对操作系统中的一些重要概念和典型算法进行实现或验证,根据实验讲义和课堂上学到的知识写出程序,带到实验现场调试。主要内容如下。

1) 银行加算法模拟。

2) 小型文件系统设计。

3) 页面置换算法模拟。

4) 进程调度算法模拟。

5) 进程间通信模拟。

6) Linux下USB驱动程序。

要求:对于一个课程设计题目,每个班级限2组选择,每4个人一组。

实验结束后,由实验指导教师根据实验记录给出成绩。

4 结语

在教学中,我们始终坚持教师是主导、学生是主体的原则,使用多样合理的教学方法,充分调动学生的主动性,通过加强实验教学环节来提高学生解决问题及实践动手的能力。操作系统原理课程实验教学改革是一个复杂的系统工程,我们立足本校,从实验教学方式、实验教学内容以及实践教学环节各个方面进行改革,取得了显著的教学成果。

参考文献:

[1] 陈向群. 探索操作系统实践教学[J]. 计算机教育,2008(17):45-47.

[2] 王雷. 国外操作系统课程分析[J]. 计算机教育,2008(5):85-87.

[3] 郝继升. 计算机操作系统原理课程的教学探索[J]. 教育与职业,2007(8):99-101.

[4] 付晓翠. 计算机操作系统教学方法改革探悉[J]. 山东农业教育,2008(4):32-34.

[5] 孙斌,周海波. 操作系统(Linux)实验指导[M]. 大连:东软电子出版社,2008.

[6] 朱贵良,陈向群.美国若干知名大学操作系统课程设计的比较性研究[J]. 计算机科学,2002(6):152-153.

[7] 李瑛达,谢双杰. “操作系统”实例化教学的改革探讨[J]. 计算机教育,2009(14):27-30.

Experiment Teaching Reform on Operating System Principle

XU Bo1, DAI Jing2

(1.Department of Computer Science and Technology, Guangdong University of Petrochemical Technology, Maoming 525000, China; 2.School of Chemistry and Chemical Engineering, Southwest University, Chongqing 400715, China)

篇3

关键词:操作系统;实验教学;教学质量;应用型本科

1操作系统实验教学的重要性

“操作系统”课程是计算机科学与技术专业必修的一门专业基础课,本课程的学习目的是让学生掌握操作系统的基本概念、基本原理、设计方法和实现技术[1-2],为今后在相关领域的工作打下坚实基础。

实验教学是“操作系统”课程必不可少的环节,我们不仅要设置实验,而且还要重视实验,使其很好地辅助课堂教学。实验教学的质量直接影响学生的就业机会和工程实践能力[3]。德国教育家第斯多惠曾经说过:“教学的艺术不在于传授的本领,而在于激励、唤醒和鼓舞。”而实验教学的重点就是培养学生的好奇心和求知欲,帮助学生自主学习、独立思考,鼓励学生发现问题、提出问题,并通过实验过程找到解决问题的方法和途径。

2现状与存在的问题

操作系统实验教学的重要性使我们有足够的理由要教好这门课,但是在实际的实验教学活动中,学生要真正完成好操作系统的实验内容却并不是十分容易的事情。下面从专业培养方案的定位、前导课程

影响、选用操作系统以及实验教学质量监控等方面进行分析。

2.1应用型本科计算机专业培养方案的定位

长期以来,我国计算机专业教育带有浓厚的计算机系统研究型人才培养色彩,与应用型本科人才培养目标的“理论够用,注重实践”的特点不太相符。国家教育部强调对不同院校不同层次的学生要采取分类指导的原则,应用型本科计算机类学生的培养目标是培养既懂得计算机专业的理论知识,又掌握计算机应用技能的高级应用人才。对此问题的研究,我们课程组在文献[4-5]中已进行过论述,特别需要说明的是我们课程组负责人范辉教授参加了由教育部教学指导委员会组织的全国高校操作系统课程研究与资源建设项目,并在其中承担了应用型本科操作系统课程的部分研究与建设工作,使我校的应用型本科操作系统的课程建设起到了很好的示范作用。

2.2前导课程的影响

“操作系统”的前导课程有“程序设计语言”、“数据结构”、“计算机组成原理”和“汇编语言”等,它的后续课程包括“计算机网络”、“数据库原理”和“编译原理”等计算机学科的重要课程,如图1

作者简介:孙述和(1966-),男,山东烟台人,副教授,硕士,研究方向为计算机应用、图像处理;谢青松(1965-),男,副教授,硕士,研究方向为算法分析与设计、信息安全技术;董付国(1977-),男,山东聊城人,讲师,硕士,研究方向为数字图像处理、信息安全;杜萍(1981-),女,山东青岛人,讲师,硕士,研究方向为基于角色的访问控制。

所示。大部分学生在学任何一门课之初都比较认真,主观上有较强烈的学好这门课的愿望,但是随着课程的日益深入,课程特征不断显露,特别是“操作系统”这门课本身的理论性较强且实验内容对前导课的依赖性很大,从而打击了一部分学生的学习热情,甚至有一部分学生因前导课程学习较差而放弃了操作系统实验作业的完成,从而影响了课堂学习甚至包括后续课程的学习。

图1 “操作系统”的前导与后续课程

2.3选用的实验操作系统

由于操作系统课程本身的原因,使得操作系统实验环境较难选择。大部分教材以Unix系统为实例,而Unix的安装成本又较贵,不太适宜用于学生实验。而传统的Windows操作系统的大部分源代码未公开,具有一定的局限性和不透明性。所以,我们选用Linux作为主要的实验操作系统。但是,由于大部分学生之前都没有接触过Linux,并且还都非常熟悉Windows系统,思维定势难免会给Linux的认识与学习带来一定的难度。

2.4实验教学质量监控

从目前的实验教学情况来看,各个学校对评价工作都较为重视,但存在着只重结果而忽视过程以及考核方式不科学等问题。由于当前互联网技术的高速发展,网络资源不断丰富,在实验过程中,学生的实验报告或设计代码部分存在抄袭现象,这部分学生虽然提交了实验报告,成绩也不错,但实际上,却没有掌握相关的知识。如何在实验过程中进行教学质量监控,合理利用网络资源,避免抄袭,使学生能够既掌握知识又锻炼能力,这为我们的实验教学提出了新的难题。

3提高实验教学质量的对策与方法

笔者结合自己近几年的教学实践,就“操作系统”课程实验教学中遇到的上述问题,从以下3个方面谈谈自己的体会。

3.1化难为易,从主观和客观两方面进行引导

(1) 在学习的主动性方面,潜移默化地消除学生的畏难情绪。

① 在第一节实验课上多下功夫。通过实例告诉学生操作系统实验学习在现在的学习和今后工作中的重要性,使学生从纯粹学好课程的想法变为有目的性的学习。例如,从考研和就业的角度,强调编程能力和动手能力的重要性,并结合前导课程如“高级程序设计”中的线程等相关内容加以说明。

② 结合教师和前面学生的经验,介绍操作系统实验学习的方法和特征,以及可能遇到的困难,让学生针对自身的学习情况,提前准备和查阅前导课程的相关内容,做到心中有数。同时,把一些好的学习技巧传授给学生,让学生知道怎么学、怎么做。

③ 在后面的实验课上,单纯地强调操作系统实验内容重要性的意义已经不大,教师应在每一次布置实验作业的时候,有意识的从应用及工程实践角度,用案例的方式对实验内容加以多角度描述,从而使学生明确实验目的并激发学习兴趣。

(2) 在客观上,化难为易,有针对性地解决学生的学习难题。

① 分层次设计实验要求,如表1所示将学生粗略分为高中低3个层次。

表1学生层次分类

层次前导课程

掌握情况学习兴趣与

学习目的人数

第一层次基础知识

非常扎实学习兴趣非常强烈一小部分

(

第二层次基础知识稳固学习目的明确绝大部分

(>80%)

第三层次基础知识较差学习兴趣不高一小部分

(

对不同层次学生,有针对性地分析并提出解决方案,以帮助他们提高,如表2所示。

表2按层次设计实验要求

层次针对性分析及解决方案

第一层次多加鼓励及肯定,并结合其兴趣点推荐学习资料,引导自学,可在后面的团队实验任务中委以重任。

第二层次按照既定的实验要求和目的进行实验安排。

第三层次放弃部分选做实验,适量延长必做实验的学时,以弥补前导课程的不足并强化必做实验。

② 提供参考程序,帮助学生快速入门。这个方法主要是针对第三层次和第二层次的一小部分前导课程学习效果不好的学生而言的。我们以实验“进程调度模拟程序设计”为例进行说明。

例1:进程调度模拟程序设计

实验目的:加深对进程概念和进程调度算法的理解。

实验内容:(a)给出进程调度的动态优先级和时间片轮转调度算法描述;

(b) 用C语言设计一个对n个并发进程进行调度的程序,每个进程由一个进程控制块结构表示;

(c) 调度程序应当包含两种不同的调度算法,运行时可以任选一种,以利于分析和比较;

(d) 程序应能显示或打印各种进程状态和参数变化情况,便于观察。

实验参考方案:对于这个实验,首先要明确实验目的是通过编程加深对进程概念和算法的理解,对算法的理解是重点,而非编程本身。我们给编程确实有困难的学生,提供一个实验参考框架,并在此基础上基本实现动态优先算法,只留下一些涉及到该算法核心思想的代码让学生自己填空,最后重点考察学生在此框架基础上自己编写的时间片轮转调度算法的实现。当然,对于绝大部分基础较好的学生,我们还是建议程序框架也要自己搭建。

③ 我们还可以多鼓励学生充分合理利用网络资源,如果有某些疑问或未解决的问题可以自己到网络上寻找答案或到一些论坛上参与讨论,增加自己学习和丰富操作系统知识的途径。

3.2由浅入深,多角度多层次学习掌握Linux系统

我们选择Linux做为实验操作系统,由于大部分学生之前都没有接触过它,所以做实验时应该从易到难,一步步的来操作,如图2所示。

图2Linux系统学习阶段示意图

我们的方法是首先熟悉Linux简单操作的验证性实验,包括基本的应用级实验和系统管理级实验。在这一阶段,可以引导学生通过对熟悉的Windows操作系统的相关功能,对比学习Linux操作系统的功能,如表3所示。

表3操作系统验证性实验列表

序号实验内容LinuxWindows

1系统安装√√

2系统的用户接口和编程界面√√

3系统的界面认识(窗口系统、文件管理和系统管理工具等)√√

4使用U盘√√

5屏蔽Windows桌面上的“回收站”√

6观察注册表内容√

其次,在熟悉操作系统的基本操作与环境之后,进入设计性实验阶段,编程模拟实现操作系统的某些功能模块,如表4所示。

表4Linux系统设计性实验列表

序号实验内容(对应算法或命令)必做选做

1进程调度模拟程序设计(动态优先级算法、时间片轮转调度算法)√

2页面置换模拟程序设计(OPT、FIFO、LRU)√

3文件系统模拟设计(login、dir、read、open、close等)√

最后,进行实验内容难度较大,但很有意义,也很有意思的源代码阅读级实验,这部分内容建议学生分组协作完成。可选内容有很多,例如进程创建、内存分配、系统安全性、磁盘驱动、文件的读或写、虚拟文件系统、idle进程等,每组学生可自主选题,最后的实验报告,由团队统一提交。表5所示是我们2008~2009年度第二学期学生源代码阅读级实验分组情况汇总。

表5源代码阅读级实验分组情况列表

序号实验内容是否团队人数/组

1进程创建√9

2内存分配√10

3文件的读或写√8

4虚拟文件系统√10

5网络传输√10

6设备管理√10

3.3改进考核方式,加强实验教学质量的监控

要加强实验教学质量监控,保证操作系统课程的教学质量,我们对传统的只提交实验报告的实验考核方法从如下几个方面进行了改革与实践:

(1) 提高实验成绩在最终课程成绩中所占比例(如图3所示),引导学生重视实验教学。

图3 提高实验成绩比例示意图

(2) 对设计性实验和综合性实验的成绩评定,应

在实验报告的基础上,综合多种形式进行考核量化。我们的方法是在实验过程中,不定时抽查部分学生的程序,并有针对性的提问和讨论,保证一学期每个学生至少有一次提问的机会,按回答情况进行打分。团队形式的综合性实验还要求组长提交任务分配情况以及个人完成情况,将协作能力、资料分析能力等纳入考核指标。

4结束语

我校“操作系统”(应用型本科)从2004年被评为“校级精品课程”和2006年被评为“山东省省级精品课程”以来,在更新教学与实验内容、加强教学梯队建设与教材建设、改进教学方法和教学手段、加强素质教育、培养创新人才等方面不断进行探索与实践,已开始显现初步成效。近年来,我校计算机专业学生在山东省软件设计大赛、学生科研立项、考研录取率、毕业生就业率等诸多方面的成绩稳步攀升。总之,要让学生学好“操作系统”、做好操作系统实验、提高人才培养质量,还需要我们不断在教学实践中加以发现和总结。我们将不断努力,逐步完善操作系统实验教学体系,在改革中探索、提高,培养出更多适应社会需要的应用型人才。

参考文献:

[1] 谢青松,范辉. 操作系统课程教学之我见[J]. 计算机教育,2004(9):75.

[2] 王国华.《操作系统》实验课程的设置与实践[J]. 山西财经大学学报:高等教育版,2006(4):108.

[3] 郭观七,周细义,张舸. 应用型本科计算机专业实践教学改革探索[J]. 计算机教育,2009(12):85-87.

篇4

1 概述

《操作系统》课程是计算机及相关专业的核心基础课,该课程不仅要求学生较好地掌握理论基础,而且要求培养学生良好的课程实践能力。由于该课程的内容比较抽象、深奥,并且课程实验难做,实验效果不明显,所以,该课程的实践环节在很多学校成为摆设,有的学校干脆去掉实践环节。然而,实践教学又是本门课的重要组成部分,实践教学对于学生理解和掌握操作系统的基本原理和方法,为今后从事系统程序设计,并发程序设计,多用户环境应用程序设计打下坚实的基础。所以,本门课不但必须包含实践内容, 而且还应该加强,使之能更好地辅助课堂教学。[1]

2 《操作系统》实践环节的运作情况

经过对各高校《操作系统》实践教学的调查,《操作系统》实践部分的开设形式主要有以下四种:

2.1 验证操作系统部分功能的实验

这种实验方式最简单,主要思路是,以某个实际的商业操作系统为实验环境,学生可以尝试执行操作系统提供的某些功能,能力更强的学生还可利用操作系统提供的系统调用函数编写、运行程序,以改进功能。通过这两种方式,学生可体验操作系统原理在实际商用操作系统中是如何工作的。

这种方式的特点是,学生不必编写操作系统功能实现的代码,对完全理解操作系统的内涵意义不大。

2.2 模拟经典算法的实验

这是比较常见的一种实验方式。其执行过程是,由教师选取操作系统中的一些经典算法,如读者-写者问题,电梯算法,让学生使用其熟悉的编程语言(如:C语言、C++语言)来实现算法。

该方式与程序设计课程的上机环节相似,这有助于学生理解《操作系统》的理论和技术,但是,这种方式由于缺乏训练学生对操作系统完全性的把握,达不到培养学生完整掌握操作系统的目的。

2.3 替换实际操作系统的主要模块

这种方式对学生的编程能力要求较高。其执行过程是,以开源的操作系统为平台,要求学生选取其中的主要功能模块,并对其进行替换及扩展。然而,开源的操作系统一般比较庞大,结构环境复杂,对师生的要求很高,一般高校实施的效果不好,最终只有小部分学生达到实验目的,学生的受益面不大。[3]

2.4 设计一个操作系统雏形

这种方式的执行过程是,教学中可选取一个包含简单内核的教学操作系统,让学生逐步改进、扩展其功能;或者干脆让学生设计一个全新的操作系统雏形,该雏形包含操作系统的基本内核功能,如处理机管理、进程管理、内存管理、设备管理、文件管理功能。

该方式与课程实验教学目标一致,理论上比较理想,但在实际的执行过程中,由于操作系统是一个大型的系统软件,其设计、结构相当复杂,因此这种方式实施起来难度很大。

3 在教学操作系统GeekOS上完成实验教学

由于一般的商业操作系统设计复杂,结构庞大,学生规定课时内很难全面掌握,同时,这些操作系统已经非常成熟,差不多实现了全部功能,学生没有多少新的工作可做。所以,设计一个基于教学操作系统的实践教学平台显得尤为迫切和必要。

3.1 教学操作系统的分类

教学操作系统有两大类:一类是针对RISC结构MIPS处理器的,例:Nachos;另一类是针对CISC结构的X86通用处理器的,例:Minix、 GeekOS。

3.2 GeekOS操作系统概述

最通用的处理器是CISC结构的X86通用处理器。它是一个用C语言开发的操作系统,学生可以在Linux或UNIX环境下对其进行功能扩充,也可以在g(project1等项目中还包含有磁盘镜像diskc.img),makefile项目管理文件。

2) Include文件夹。包含两个子目录,分别是geekos和libc,在geekos子目录中有kthread.h,keyboard.h等头文件,在libc中包含有GeekOS支持的C语言标准字符串函数头文件string.h。

3) scripts文件夹。包含项目编译时用到的一些脚本文件。

4) src文件夹。包含系统内核源代码,用户修改GeekOS系统时要修改的源代码如main.c等都位于这个目录中,在User子文件夹中一般是用来存放用户的测试文件,在tools子目录中的代码是用来建立pfat测试文件系统的。

3.3.2七个项目的功能

project0:在该项目中,要求学生实现一个内核级的I/O进程,该进程能从键盘接收一个按钮,并显示在显示屏上。该项目的目的是让学生了理解GeekOS的编译、链接和运行,明白计算机系统是如何启动的。

project1:在该项目中,要求学生熟悉可执行链接文件(ELF)的格式,并通过编程程序来分析该文件,同时将分析结果送到加载器。该项目的目的是让学生理解ELF文件的结构,使学生掌握如何加载和运行可执行文件。

在提供的GeekOS内核系统的基础上,为学生设计了7个由易到难的设计项目用于GeekOS的改进。这些项目分别涵盖了操作系统内核的各个基本模块:系统启动,进程管理,存储管理,文件系统,访问控制以及进程间通信。7个项目都规定了改进的目标,并提供了一些设计指导性的意见,但没有提供源代码,所以学生首先必须熟悉GeekOS的基本工作原理,才能开展各个项目的设计与实现。

project2:在该项目中,要求学生编程来支持用户态进程,这种支持包括初始化用户态进程空间、初始化用户进程空间、切换用户进程、导入用户程序。该项目中,计算机存储分配方式还是采用段式分配。该项目实现后,学生就可以使用GeekOS提供的命令行解释器Shell运行一些命令来执行PFAT文件系统内的用户测试程序。

project3:在该项目中,要求学生改进GeekOS的调度程序,实现基于4级反馈队列的调度算法(初始GeekOS系统仅提供了FIFO进程调度算法),并实现信号量,支持进程间通信。

project4:在该项目中,要求学生编程实现分页虚拟存储管理,以替代前述项目中一直采用的段式存储管理。学生实现分页式虚存管理以后,系统在内存不足时,就可以将部分内存页面调出送到硬盘,以缓解内容压力,实现虚拟存储技术。

project5:在该项目中,要求学生实现GOSFS文件系统,该文件系统采用虚拟文件系统,可加载不同的文件系统,PFAT只读文件系统是默认加载的文件系统。该项目的目的是要实现一个多级目录的、可读写的文件系统。

project6:在该项目中,要求在文件系统中新增一个访问控制列表,并使用匿名半双工管道实现进程间通信。

4 《操作系统》实践环节的考核

《操作系统》实践环节的考核非常重要,好的考核将激励学生努力学习,达到实验效果,办法如下:

1)教师制定实验报告格式和要求,教师对学生完成的实验报告的作检查和评价;

2)对设计性实验,要求学生回答并作出评价,回答的问题主要有:阐述解决该问题的算法思想、所使用的数据结构是如何设计的、使用的测试用例是如何选取和设计的、算法性能怎么样。

3)对一些学生能实现的算法,要求学生上机演示,教师在其演示期间可提问并作评价:主要程序代码的含义,分析及解释运行结果。[4]

篇5

基于以上基本原则,来设计实验案例。Linux操作系统实验课程总计16学时,我们一共设计8个必做实验案例。这个8个案例要在实验课时内完成,除此以外还设计8个选做案例,8个选做案例可以选择完成。实验案例的设计结果如表1所示。其中的案例分为3种类型,验证性实验、设计性实验和综合性实验。通过系统安装、常用shell命令使用、系统管理和网络管理验证性实验案例使学生掌握Linux系统管理的基本技能,通过shell程序设计、系统编程和gcc编程设计性实验案例提供学生系统管理和维护能力,通过gcc编程等综合性实验案例提高学生Linux系统程序开发综合实践能力。

二、实验考核办法分析

实验考核是Linux操作系统实验课不可缺少的重要组成部分,通过考核反映实验教学水平、实验效果和学生掌握基本知识的状况和具有的实验技能,使学生重视实验课程的学习和实际操作,通过实践环节加强实践训练。Linux操作系统实验课程成绩由学生出勤、实验报告和学生上机表现三部分组成,学生出勤和报告占实验成绩的20%,而学生上机表现占实验成绩的80%,也就是考核时更注重学生实际操作能力。考查学生上机表现能实时跟踪学生的学习状况,了解学生对系统的掌握情况。对于验证性实验,我们采用针对实验步骤对学生提问的模式进行考核;对于设计性实验,主要考核学生是否掌握程序设计思想;对于综合性实验,主要考核学生的综合实践能力。检查学生的程序调试运行情况时,不仅要查看程序运行结果,还应注重实验中间环节,更加客观评价学生[8]。

三、实验课程总结分析

实验过程我们选取虚拟机运行模式,采用Vmware虚拟机,Linux采用Ubuntu12.10,Linux内核3.5。应用以上实验案例,开展了Linux实验课程,值得注意的问题主要包括以下两个方面。

(一)学生呈现两极分化现象

在实验进行过程中我们发现学生呈现两极分化。由于本课程设在第7学期,学生已经是大学4年级,少数学生平时就有过使用Linux操作系统的经验,其他大部分学生对于Linux平台比较陌生,几乎没有使用过。于是,我们照顾到大多数学生情况,按照实验大纲的内容完成实验内容,而对于有使用经验的学生我们则通过进一步完善选做实验案例,增加Linux源码分析和QtDesigner开发工具等选做案例来满足其学习需要。这样,可以利用Linux的开源特性加深学生对操作系统原理、系统与技术的理解和掌握,进一步提高学生编制大型应用系统的能力。

(二)案例要不断充实与完善

随着计算机技术的快速发展,Unix类操作系统也在不断地发展和更新,Linux操作系统作为一种面向多领域的开源操作系统其应用范围不断扩展,所设计的案例应及时体现出这些变化,因此案例的设计并非一劳永逸,必须紧跟形势、与时俱进,不断地改进与完善。

四、结束语

篇6

关键词:操作系统;计算机专业师范生;课堂教学;实验教学

中图分类号:G642 文献标识码:B

1引言

2007年3月5日国务院总理在政府工作报告中指出,在教育部直属师范大学实行师范生免费教育。这意味着,近代中国在相当长时间内实行的师范生免费教育制度,如今将重新返回大学校园。自2007年秋季入学起,教育部直属6所师范大学:北京师范大学、东北师范大学、华东师范大学、华中师范大学、西南大学和陕西师范大学开始招收生免费师范生。华中师范大学计算机科学系已经招收了07级和08级2届计算机专业的免费师范生,一共约200人,以后还会继续招收。由于计算机专业不像中文、数学、英语等专业那样原来就是师范专业,有现成的针对师范生的授课大纲和经验,这些学生的课程如何设置成了一个亟待研究解决的问题。

“操作系统原理”课程是学习计算机科学的必修课程,又是一门理论性与实践性都很强的课程,要求学生掌握计算机操作系统的基本原理、基本概念;了解操作系统的设计方法;学会使用常用的操作系统;而且要求学生能够理解和实现简单的相关算法。这门课程的内容和教学方法针对师范生如何调整,是本文要说明的主要内容。

2针对师范生的“操作系统”课程的问题

2.1课程的地位问题

毋庸置疑,在原来的教学体系中,“操作系统”课程处于专业课的核心地位,是极为重要的专业必修课,但是对于毕业后要从事中小学信息技术教学的师范生来说,这门课程的地位如何?这需要从分析中小学对信息技术教师的基本要求入手,为此笔者分析了国家制定的高中初中和小学的信息技术课程标准,并访问了一些中小学的信息技术教师。

我国在中小学对学生信息技术教育的目标主要是激发和培养学生的兴趣,使学生能掌握某些技术的运用,并鼓励创新。

初中和小学的信息技术课程的基本要求有:

(1) 了解计算机的结构和工作原理。

(2) 能利用因特网有效获取信息,解决实际问题。

(3) 能使用文字处理、绘画、电子表格等简单软件表达想法。

(4) 能运用常用远程通讯工具进行合作学习。

高中信息技术课程包括必修与选修两个部分,共六个模块。必修部分只有“信息技术基础”一个模块,选修部分包括“算法与程序设计”、“多媒体技术应用”、“网络技术应用”、“数据管理技术”和“人工智能初步”五个模块,信息技术课程各模块之间的关系结构如图1所示。

由此可见我国中小学的信息技术教育是以计算机的基础知识和应用为主,在高中包括C或Java语言编程、Dreamware、Photoshop等多媒体工具的使用、Access数据库的使用等,以使用工具为主,同时包含简单的理论知识。

笔者还采访了一些中小学的信息技术教师,他们普遍认为中小学信息技术教师由于学科的特殊性,不可能像其他专业的教师那样只完成教学任务,而是要做很多与计算机有关的工作,如校园网络的建设和维护、网站的制作;竞赛培养如NOI竞赛;为其他专业教师做教学比赛的课件;学校硬件维护,如功能教室、多媒体教室、电视台、网络教室等设备维护。这使中小学对信息技术的教师要求很高,要求教师知识面广,有很强的应用能力,并有一定的专长。

据此可以了解“操作系统”课程虽然不是师范生以后要讲授的课程,但仍然十分重要。在中小学的信息技术基础课程中一般都要讲解Windows系统的使用,师范生通过学习“操作系统”课程能够更好地理解和运用Windows系统;师范生需要做学校各种设备的维护和网络维护,了解各种操作系统的特点和管理方式对他们有所帮助;同时,师范生要有较好的程序设计能力,能为学校构建小的应用或演示系统,学习“操作系统”课程能使他们更好地理解系统调用,提高编程能力。因此,“操作系统”课程仍然是重要的专业必修课。

2.2课时的调整问题

由于“操作系统”课程的内容非常丰富,涉及理论和实验,课时量较大,我系原来的课时是72学时/学期,即每周4节课。并且在下一个学期安排“操作系统课程设计”课程,使学生有时间完成几个大的操作系统试验,如进程的调度和演示、文件系统的模拟和演示等,使学生能够通过编程模拟实现部分操作系统的功能从而进一步加深对操作系统原理的认识,提高动手编程的能力。即便如此还是有很多学生反映课时太少,授课时有些地方讲解得不够详细,例子不够多,编程时有很多困难等等。

由于师范生必须学习许多学校规定的师范类专修的课程,如教师口语(普通话),教师书法,心理学基础,教育学基础,现代教育技术等,计算机专业课程的学习时间有限,必须减少课程,压缩课时。因此“操作系统”课程改成54学时/学期,即每周3节,增加了18个课时的上机试验课时,但减掉了“操作系统课程设计”课程,这样就把2门课程合在一起上了。考虑到“操作系统”课程开始就讲授理论基础,没有涉及到实验的内容,于是上机试验课时间定在第9周之后开始,每周2节。

2.3课程内容的调整问题

我系原来使用的教材是陈向群主编的《操作系统原理(第二版)》一书,这是一本经典的操作系统教材,主要特点是对操作系统的基本原理阐述清楚,并能发反映一些较新的成果和发展方向,同时非常注重操作系统的课程实践,在每一章中都加入了对Linux系统和Windows Server2003系统的分析。其中对Linux系统的分析非常详细,如存储管理一章分析Linux系统的内存管理,分析了Linux系统的内存数据结构、页表管理、页面的分配回收、地址映射等内容,配有相关的图表和代码,使学生很快从操作系统的理论进入到实际,并产生了阅读相关的Linux代码、通过修改部分代码编译自己的操作系统的兴趣,学习效果很好。由于师范生在每一届的人数不到一百人,笔者认为暂时没有必要更换教材。但这本教材的内容很多,由于课时的压缩,必须对授课内容有所删减,具体修改如下:

(1) 减掉了第2章操作系统的硬件环境。因为之前开设的计算机组成原理课程已经讲授了这些知识,不需要再作介绍。

(2) 减掉了第8章死锁。死锁是操作系统中一个很重要的概念,但一些基本概念可以放在进程管理中的进程的同步和互斥中介绍,这一章的内容比较深,学生不容易理解。

(3) 减掉了第9章操作系统设计。由于课程针对师范生,他们主要从事教学和简单的编程、应用,一般不会从事操作系统的设计,故减掉了这一章。

(4) 减掉了第10章操作系统安全。这一章实际上内容很多,在几个课时内讲授没有很好的效果,因此被删除。

有些章节的内容还有一些调整,如在第6章文件系统中去掉了文件系统的性能问题和文件系统的可靠性小节,把文件系统的使用放在实验课中等等。

3教学方法的改革

由于课时限制,必须在比原来更短的时间内教授“操作系统”课程的内容并使学生能很好地掌握,同时希望培养学生的兴趣和创造性,为他们以后的教学工作做出表率,笔者研究改革了教学方法。

3.1对课堂教学的改革

课堂教学是教学中最重要的环节,传统教学方发重演绎、推理、按部就班,教师花很长的时间讲授,但学生不一定理解,束缚了学生的独立思考能力和创造能力。笔者注重培养学生正确的学习方法和良好的自学能力,采用了以下方法。

(1) 注重案例教学方法。“操作系统”课程理论比较枯燥难懂,笔者摒弃了过去只注重书本内容的教授方式,采用分析案例的方法,促使学生从实际出发,运用理论知识分析问题。在授课中用Linux作为实例讲解效果非常好,由于Linux的源代码是公开的,并且用C语言和汇编语言实现,讲解时可以把一部分源代码拿出来进行分析。比如讲进程时,PCB的概念很重要,但又比较抽象,这时可以把PCB的源代码拿出来作为案例讲解。学生通过分析源代码,能很快理解PCB的概念,否则教师可能花费很长时间讲解学生还是似懂非懂。对处理机调度、内存管理、系统调用、中断处理等内容的讲解也都可以先找好的案例进行分析,对学生帮助很大。

(2) 在课堂中穿插提问。提问是教师与学生交流的重要手段,但在大学授课中常常因为班上学生很多、课时紧、学生反应不积极等原因,教师很少提问。其实提问是学生对授课内容的反馈,也是学生参与教学的一种方式,能很好的提高教学效果。笔者把提问成绩作为学生的平时成绩,迫使学生认真思考所提问题,跟上课程进度,同时也鼓励学生广泛阅读相关资料,深入思考,提出问题。对能提出有深度的问题的学生实行加分鼓励,学生通过课程网站、电子邮件等提出和回答的问题也一样计为平时成绩,尽量使所有学生都至少有一次回答问题的成绩,作为期末成绩的重要参考。课堂提问虽然会占用时间,但好的问题能引起学生深入思考,又能使老师了解教学效果,及时调整进度,改进教学方法。

(3) 要求学生预习和复习。由于课时有限,课程进度较快,这需要学生课前预习,从而能更好的理解课堂内容。笔者在每次课前会提出一两个小问题,答案都在课本中,以检查学生的预习情况,在每次课后会展望下次课的内容,方便学生预习。在每一章上完还会提供一些参考资料,包括一些相关网站、原来学生的报告、相关论文等,需要学生课后复习,在后一次上课时随机抽查学生介绍自己看过并感兴趣的内容,上讲台做一个小报告,这种方式培养了学生的自学能力,调动了他们的积极性,活跃了课堂气氛。

3.2对实验教学的改革

实验是“操作系统”课程教学中非常重要的环节,通过实践学习操作系统是最佳的学习途径,但由于课时原因不得不对原来的实验内容有所压缩。笔者开设的操作系统实验内容和原因如下。

(1)Linux操作系统的使用。由于师范生工作后一般会做学校的校园网、实验室等设备的维护工作,可能用于网络服务器和一些设备中的Linux系统是学生应该掌握的。实验要求学生熟练使用Linux系统的图形界面和命令语句,了解系统的文件结构、用户接口等。

(2) 分析Linux操作系统的源代码。阅读并理解操作系统的源代码是学习操作系统设计的一种重要方法,学生可通过分析某个具体的系统较快地掌握操作系统的总体结构和设计思想。笔者选择的教材的最大特点就是每一章中都在最后一节分析了Linux和Windows系统的相应管理方法,这部分内容很多,没有时间全部在课堂上讲授,因此安排在实验中,要求学生分析其中的Linux代码,总结出对应的模块功能。

(3) 模拟实现操作系统的某些功能。学生通过为对操作系统中的一些典型算法的模拟实现,能更好地掌握操作系统的实现原理,使学到的理论知识形象化、具体化。笔者要求学生完成进程调度、作业调度、存储器管理中的命中率问题和文件管理的算法的模拟演示。学生需要选择其中的一个算法编程实现并提供良好的界面演示算法的运行过程,这使学生能更好的认识操作系统主要功能的实现机理。模拟所需的算法、主要数据结构和程序流程图都由教师提供,涉及的软硬件资源和数据结构都是自建的,这样简化了实验,使学生能够在较短的实验时间内在教师的指导下完成编程实验,而不是因为太难无从下手而放弃,能够达到实验效果。

3.3对考核方式的改革

考核方式是对学生学习效果的评价方式,是学生学习的主要参照物。在“操作系统”课程中,面对单调抽象的理论知识,上机试验以提高学生的能力尤为重要。所以笔者改变了传统的卷面考核办法,将总评成绩改为卷面成绩占50%,实验成绩占50%。同时,实验课的考核要详细化、规范化。由于试验是分组进行的,每组交一份实验报告,给一个成绩,应该对小组各个成员有所区分,实验评分时要求小组提交实验报告时按各人的贡献排名,组长排在第1位有5%的加分,组员的成绩按权值递减,分别是100%,98%,95%。这样避免了原来只是由个别能力强的组员完成整个实验,有些组员没有参与的问题,使评分更加合理。对于实验的考核包括上机演示、上机时提问和实验报告3部分,各占试验成绩的40%、30%和30%。每组都有10分钟的提问时间,提出的问题包括整体的设计思想、对开发工具的了解、用到的一些函数或变量的意义、现场对某个功能的修改等等,这样能检查出学生是否是从别人或网上得到的试验程序,得出充分客观的评分。

3.4充分利用网络资源

笔者所在课程组开发了操作系统精品课程网站,网站上有所有的教学课件、实验指导书、教学视频录像等课程内容;提供其它好的操作系统课件、操作系统实验的例子、Linux分析资料等很多有用的资源下载;还包括网上答疑、在线考试和提交作业等特色功能。学生可以在网站论坛上提问,教师能实时做出解答。在线考试系统能自动抽取教师定义的试题库中的试题,组成一份试卷,并在学生答完后评分并给出正确的答案(目前试题库中只有客观题)。教师能够在线布置作业、批改作业并统计成绩。这种方式提高了学生的学习兴趣和学习效率,加强了师生之间、学生之间的交流与合作,并能及时向教师反映学生的学习状况,为课程教学提供了有力保障。

4结束语

计算机专业的师范生还是个新事物,这些学生该如何培养值得我们探讨。我们培养的学生应该能满足现在各地中小学对信息技术教师的要求,又要有一定的前瞻性,能满足学生以后考研的需要。对学生的培养大纲和各门课程的教学计划都要认真研究,使我们的学生有好的理论知识和应用技术,能尽量满足社会各方面的需要。笔者根据自己的理解和实践,谈了自己对计算机专业师范生的“操作系统”课程的内容调整和对课程的授课、实验、考核方式的调整。这门课程已经上过一轮,学生反应很好,在学时压缩的情况下学生对理论知识的掌握情况和原来一致,达到了课程要求。并且学生能积极地提出自己的想法,关注相关的新技术新发展,这说明课程促进了学生的个性发展,培养了学生的自学和创新能力。

参考文献:

[1] 贺颖. 我国部属师范大学实行师范生免费教育政策的价值分析[J]. 长春理工大学学报:高教版,2008(4):92-94.

[2] 叶俊民,胡金柱,李蓉,等. 软件工程案例教学研究[J]. 计算机教育,2007(6):19-21.

篇7

关键词:创新驱动;操作系统;实验教学;改革

中图分类号:G642.0文献标识码:A文章编号:1671-0568(2012)11-0116-03

一、引言

操作系统是计算机专业重要的核心课程,是一门理论性和综合性较强的学科,该课程的理论学习是理解计算机系统工作、用户与计算机系统交互和设计开发应用系统等基本知识结构的重要途径,而其实验教学则是学生得以深入理解和验证课堂教学内容的直接和有效手段。

操作系统实验教学能强化学生加深理解操作系统的概念、原理、组成等基本知识,能拓宽学生编程思路,培养动手操作能力与分析综合能力,所以实验教学的质量将直接影响学生的实践能力、创新能力、合作能力等。[1]在创新驱动战略的指引下进行操作系统实验教学的改革,面向市场不断创新实验教学的各项机制,提高学生的创新能力和实践能力,使实验教学、人才培养和服务社会有机融合、协同发展,培养更符合就业市场对计算机类技术应用型需求的人才。

二、操作系统实验教学现状及存在的问题

1.实验教学的重视度不够

在教育教学中,大多数的实验教学往往附属于理论教学,对学生的实验能力和创新精神的培养不够重视。而学生在实验环节中过于随意,学习纪律涣散,迟到、早退、旷课、请假等情况屡见不鲜。由于实验教学落不到实处,导致学生动手实践能力薄弱,创新能力差,缺乏适应企业需求的专业知识和实践能力,造成了学生就业困难的局面。

2.实验教学内容设置问题[2]

操作系统课程的实验教学内容主要是围绕教材中的主要算法进行验证性的实验,但是仅仅靠这几个算法很难让学生直观地理解众多抽象的概念,且学生在这些实验中学习的方法和技能并不能应用到实际项目开发中去,实验成为一种形式,理论与实践脱离严重。

3.实验教学平台的选择问题[1,2]

操作系统课程的实验教学环境选择较难,大部分的教材都是以Unix系统为例,但是Unix安装成本较贵,不太适宜用于学生实验。Windows系统是学生较为熟悉的操作系统,但是其大部分源代码不对外公开,学生实验时无法深入到操作系统内部进行学习和探究,不利于学生对操作系统的工作原理的理解。选用Linux作为实验操作系统,又因为学生对Windows系统较为熟悉,大部分没有接触过Linux系统,思维定势难免会给学习和认知带来难度,因而也限制了学生对操作系统工作原理的理解和创新能力的培养。

4.实验教学类型和手段的单一[3]

目前的实验教学大多是验证型和仿真型的,注重的是理论知识的检验和证明。这种实验以教师为中心,学生完全按照教师的意图进行实践操作,缺乏自己的思考和创新过程。实验教学没有发挥其应有的作用,还直接影响到学生的学习兴趣和积极性,也因此使学生的创新思维和能力的培养和提高受到了限制。

5.缺乏高水平的、双师型的实验教学师资队伍

高校教师大多是从学校到学校,缺乏校企沟通的理念和环境,缺乏企业工程化的实践工作经验,因而无法保证对学生的操作技能进行有效的指导,直接影响实践教学的效果和应用型人才的培养。

针对上述操作系统实验教学的现状,笔者结合学校“第四批精品课程立项项目”――计算机操作系统课程建设中的实验教学的改革实践,提出了创新驱动战略下实验教学体系改革的思路以及一些具体的措施。

三、创新驱动战略下实验教学改革思路

1.推进产学研合作,构建实验教学改革的条件

建立产学研技术创新战略联盟,为实验教学体系结构的改革提供有力的支持。具体包括两个方面的创新工作:

(1)创新制度建设,搭建高校和企业合作的外部环境。建立高校教师到企业挂职制度,改善教师的专业知识结构,通过结合技术创新的实践,提高专业技能、积累经验,从创新过程中加深教师对产业的认知。同时建立流动编制,从企业聘请集工程理论与技术专长为一体的工程师进行实验指导,并在制度上促进这一机制的形成。这种制度建设的改革,培养了高素质的、“双师型”实验师资队伍,使实验教学教师的知识结构与时俱进,从而保证了实验教学的质量。

(2)创新科研思路,将实验教学与科研进行有机融合,促进产学研合作机制的可持续发展。以科技或市场为驱动,加强与企业的联系,主动找准企业的关键点和兴趣点,建立以企业需求为导向的科研项目。同时将科研与实验教学相结合,以综合性的工程实践项目为主线,围绕综合实践项目内容将项目模块化,按照操作系统功能的五大模块:进程管理模块、存储管理模块、文件管理模块、设备管理模块、网络管理模块分配到实验教学内容各环节中,从而将实验教学与科研实现有机的融合。在提高教师的科研水平和业务水平的同时,实验教学的效果和质量得到了显著提高,实验教学内容也更加贴近了产业技术对人才的需求。

2.创新实验教学过程,分层次教学,逐步培养学生的学习能力

单一的验证型实验教学并不适合培养学生的独立设计能力和综合运用知识的能力,所以要创新实验课程内容,精简基础和验证性实验,增加模拟设计性、规划研究性和开放性的实验,使实验教学内容的层次分明。

在不同阶段实施不同的实验内容和形式,让实验教学循序渐进完成,以达到最佳实验效果。具体实验教学过程为:

(1)认知学习实验阶段。这种实验主要是验证型实验,包括基本的应用级和系统管理级的实验。如,操作系统的安装、文件操作等,实验中以教师辅导为主,教会学生如何安装虚拟机、如何加载虚拟机镜像、熟悉操作系统各项功能、掌握文件操作命令等。

(2)设计性实验阶段。以学生自学为主,学生自己编程模拟实现操作系统的某些功能模块。主要的实验有:动态优先权进程调度算法、时间片轮转调度算法、页面置换算法等。当学生遇到问题时,并不直接替他们排除故障,而是提出产生故障的几种可能性,鼓励学生提出问题和不同的见解并自行加以解决。例如,在动态优先权进程调度算法设计实验中,学生的设计思路不明确时,可从几个方面来帮助他们理清思路:是否考虑了进程的阻塞时间、在运行进程已占用CPU时间以达到所需运行时间时是否进程还未到达,等等,提出多种可能的情况,让学生自行思考、设计并解决问题。

(3)研究创新性实验阶段。在进行设计性实验后,学生已经从书本逐步走向实践,消除了对编写软件系统的心理障碍,提高了编程水平。此阶段是以提高素质为主,激发学生创新思维能力,强调的是主动研究式的实验学习过程。可选的实验内容较多,如进程创建、内存分配、文件的读/写等,教师给出其中较为有意思部分的源代码,要求学生阅读,然后让学生在此基础上自行提出课题和基本思路,并利用图书馆、网络等查找相关资料后独立完成。学生在这种研究性学习过程中主动获取知识,开动脑筋进行课题的思考和设计,因而有效地培养了学生的创新精神和实践能力。

(4)开放性实验阶段。[4]最后,安排学生进行开放性实验,培养学生的主体作用和主动学习能力。可让学生自成小组,在虚拟机平台上,从裸机开始,通过实例利用汇编与C语言编写一个小型的操作系统的框架,包括处理机管理、存储器管理、文件管理和简单的设备管理。团队协作分析和设计仿真操作系统的架构和各项功能、制定实验计划、编写代码并注释说明、分析实验结果、撰写说明书和实验报告,最后由团队统一提交。这样的实验有助于学生把握操作系统的精髓,真实地消化书本知识,同时培养和提高了学生自主学习能力、独立思考的探索精神和团队协作的能力。

3.创新实验教学方法和手段,激发学生的兴趣

在实验中创新实验教学方法和手段,使用多样的教学方法和手段并灵活应用来提高学习的积极性、激发学习的兴趣。

(1)借助合适的实验平台。在实验教学平台选择上,采用的是在Windows操作系统上运行虚拟机方式,利用一些虚拟机软件,如VisualPC,再运行Linux系统。通过学生较为熟悉的Windows操作系统的相关功能来对比学习Linux操作系统,这样的实验平台更容易让学生更易掌握和理解操作系统的工作原理。

(2)多媒体辅助实验教学。利用多媒体技术为实验教学提供交互式教学环境,让学生清楚实验的内容、重点、目的等,促进学生对知识的学习兴趣和热情。例如在银行家算法实验中,可以设计动态的场景,借助多媒体的应用,让学生充分了解在该实验中什么情况下会发生死锁现象,又如何设计实现安全状态来避免该现象的发生等。

(3)启发式实验教学。实验教学中可采用启发式的教学方法,加强学生对抽象知识的理解和掌握。例如在操作系统教学内容中有多处调度算法,如进程调度算法、虚拟内存的页面调度算法、磁盘调度算法等,在实验教学中可采用对比分析的启发式教学方法,让学生对不同内容的调度算法进行比较,从而对实现操作系统课程教学的目的起到很好的促进作用。

(4)案例驱动式实验教学。实验中通过具体案例来挖掘学生的创新潜能,要有意识地从应用及工程实践的角度,用案例、项目的方式对实验内容以多角度描述,然后让学生在案例基础上进行改进和创造。如,将开源操作系统Linux作为实例教学,引导和帮助学生进行深入分析,通过案例分析和“做中学”,使学生深刻理解操作系统中的原理和算法和实现技术,让学生在内核中添加或修改功能。培养了学生的创新能力,同时也培养了学生对系统软件进行分析、设计和开发的能力。

4.创新实验教学考核评价模式

探索、创新更加合理的实验教学考核评价模式,不再单纯地以上交的实验报告为最终成绩的评定。具体的方法有:提高实验成绩在总成绩中的比例,使得学生更加重视实验教学;对不同阶段的实验题目设置一定的权重,学生根据能力选择题目;深入学生实验项目中,随时提问,考察学生的学习态度、设计思路等;程序验收时,抽选部分学生进行答辩,考核学生的学习效果;结合学生平时的各项表现,批改实验报告,给出实验教学最终成绩。

四、结语

操作系统实验教学活动可以帮助学生加深对操作系统原理和算法的理解和掌握,让学生通过实验过程体会到计算机软硬件体系结构和操作系统的关系,以及计算机体系结构对操作系统发展的影响等。我们在学校立项的精品课程建设项目中,立足本校,更新实验教学理念,深化实验教学体系结构的改革,培养学生对技术发展的跟踪意识,提高学生的学习能力、实践能力、创新能力,锻炼他们的团队协作精神,以达到与企业的无缝链接,为社会培养能适应市场需求的创新型与技能性的计算机专业技术人才。

参考文献:

[1]孙述和等.操作系统实验教学研究与探索[J].计算机教育,2010,(1).

[2]张其亮,韩斌.操作系统课程实验教学改革探析[J].计算机教育,2010,(7).

篇8

一.实验目的

1.加深对进程概念的理解,明确进程和程序的区别。

2.深入了解系统如何组织进程,创建进程。

3.掌握进程相关数据结构。

二.实验要求

1.编写程序完成实验内容

2.对测试数据进行分析

3.撰写实验报告

三.实验内容

1.进程的创建

2.对代码进行测试

3.进程控制

四.实验原理

1.进程

(1)进程是程序是一次执行

(2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动

(3)进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位

2.进程控制块

为了描述和控制进程的运行,系统为每个进程定义了一个进程控制块(PCB),它是进程实体的一部分,是操作系统管理进程最重要

的数据结构。其主要包含四类信息:进程标识符,处理机状态,进程调度信息,进程控制信息。

3.进程创建流程

(1)申请空白PCB

(2)为新进程分配资源

(3)初始化进程控制块

(4)将新进程插入就绪队列

4.进程树

P12 P6 P7 P8 P9 P10 P11 P2 P3 P1 P4 P5

五.实验步骤

1.在C++环境下输入实验提供的代码,并对程序运行

2.输入 createpc 命令创建进程,输入 showdetail 显示每个进程及其子进程的信息

3.对代码进行测试

六.实验总结

1.运行结果

推荐期刊