“操作系统原理”理论与实践课教学研究

时间:2022-05-20 01:11:24

“操作系统原理”理论与实践课教学研究

摘要:本文结合多年的教学经验,从操作系统的教学方法、教学手段、实验设计等方面探讨了操作系统课程的理论与实践教学。经过多届学生的实践推广,证明这些措施能够有效促进学生对“操作系统原理”的基础理论学习和实践动手能力提高,进而增强其分析问题及编程能力。

关键词:计算机操作系统;实践教学;教学改革

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

“操作系统原理”是一门理论性、实践性并重的基础核心课程,内容抽象、课程教学难度大。课程内容主要介绍系统原理、设计方法和实现技术,这是众多操作系统的设计精髓。这些内容是人们在操作系统工程实践方面的经验总结,呈现更新速度快、系统性差、概念抽象、原理性强等主要特点,也是该课程的教学难点。为提高“操作系统原理”课程的教学质量,使其内容具有系统性,形成积极的、充满生机活力的教学机制,课程组自2002年起就开始规划和设计分层次内容和系列实验,确立责任教师,2005年作为校精品课程立项建设。通过几年来坚持不懈的教学改革和教学研究,通过“操作系统原理”这门课程,使得对学生能力培养更有效。

1教学方法研究

操作系统是计算机专业重要的核心课程,也是一门教师难教、学生难学的课程。该课程教学难点集中表现在:(1)教材内容十分庞杂,涉及面广,与计算机软、硬件及用户都有着密切的交互;(2)教学实践性强,与实际运行着的各类操作系统有着密切的联系;(3)计算机技术发展迅速,更新快。

针对这些问题和难点,本课程组老师将自己所从事的科研工作与教学密切结合起来,不断改革教学方法、手段和加深教学内容。首先,在OS的多用户、多任务运行特征的主线下,有一条动态的进程活动线,有一个系统资源管理的截面,针对前者,课题组教师围绕多进程运行所带来的问题,以及所涉及的方法与机制展开讨论;对后者,围绕多用户、多任务对系统资源的竞争,展开操作系统资源管理策略与方法的讨论。其次,选取合适的操作系统实例,注重与实际运行的各类操作系统结合,选用Linux和Windows系统作为实例操作系统,让学生了解实际操作系统的逻辑结构、核心实现技术、并分析部分内核代码,潜移默化地培养了学生创新性的专业技能。接着,将操作系统实验与课程设计的内容限制在操作系统的核心实现技术上;将实践环境主要放在Linux系统和Windows系统上;在实践方面,既强调学生自主编写与调试程序,又强调多人按软件工程方法合作解决大型问题。

2教学手段研究

在操作系统本科教学中本课程组采用并坚持了传统教学和多媒体教学手段相结合的方式进行。传统教学是教学相长、教学互动的最好的模式。传统方法学互动性强,而采用现代教育技术手段,以多媒体方式进行教学,可以加大信息容量;以动画生动表现动态过程;以拟人手段讲解难点,提高学生学习兴趣。在操作系统原理课教学中采用这种教学相长的启发式教学方法,课堂上组织讨论,使课堂气氛活跃,学生的学习兴趣、能动性大大提高。

此外,课程组采用了如下教学手段:(1)突出教学内容的系统性和完整性;(2)课堂充分调动学生的积极性和创造性;(3)注重实践环节,强调能力培养,对学生的考核手段科学合理。

3实验课程设计

遵循学生创新能力培养的整体规划,基于系统设计和软件模块设计的思路,在灵活实施双语教学的基础上,课程组利用较好的实验室条件,开设“实验室课堂”,构建“操作系统案例库”,并结合课程设计和综合实验加强学生系统编程与内核模块设计。例如,系统内核调用、内核模块替换,操作系统补丁等。这些案例既作为教学,也供学生自行设计或复现,优秀作品又进入案例库循环,使学生能即学即用,及时发现和解决问题,对抽象概念通过实践环节理解,拓展深层次思考。对学生的能力训练收到很好的效果。

课程考试采用笔试+实验方式,并要求学生完成课程设计,获得应有学分。并根据综合设计(实验)的课题情况,拓展到学生毕业设计过程,让学生体验进行较大型课题和实际科研项目开发的工作,受到学生普遍欢迎。

3.1实验课程设计的思想与课程目标

“操作系统原理”课程的实践性要求很强,学生不仅需要掌握其原理,而且也要求培养其实际动手能力。“操作系统原理实验”主要是根据所学课程中的原理,设计某些算法实验并进行验证;熟悉操作系统平台的使用,以及能够将某一操作系统的系统功能调用应用到实践中。通过这些上机实验,以加深对课程中的概念、原理、算法的理解,达到提高学生的程序设计能力的目标。

3.2实验课程教学内容的设计

(1)作业调度算法实验(4学时),具体要求:设计作业控制结构;完成作业队列的创建;模拟作业调度算法,包括:先来先服务算法、最短作业优先算法和最高响应比优先算法等。(2)进程调度算法实验(6学时),具体要求:设计进程PCB;完成进程队列等的创建;模拟进程调度算法,包括:先来先服务算法、优先级算法和轮转算法。(3)以分区策略为主的内存分配算法实验(4学时),具体要求:建立模拟用的内存分区、分区表和空闲队列等;实现最先适应算法;实现最佳适应算法;实现最坏适应算法;通过实例对上述算法进行对比。(4)存储器命中率计算问题(2学时),具体要求:设计描述页面的数据结构和管理内存页面的链表;实现页面的FIFO算法并研究其命中率;实现OPT算法并研究其命中率;实现LRU算法并研究其命中率;实现LFU算法并研究其命中率;比较各算法的命中率。(5)SPOOLING系统的模拟(4学时),具体要求:设计PCB、PCB队列等数据结构;模拟实现SPOOLING算法;使用初始数据进行模拟,并分析模拟结果。(6)文件系统中操作命令的实现(6学时),具体要求:设计两级目录结构;设计文件的保护措施;实现如下文件操作命令:create、del、open、close、read和write;运行初始数据,分析运行结果。

3.3实验课程组织形式与教师指导方法研究

实验课程的组织形式和教师指导方法的实施具体如下:(1)课堂常规授课,教师进行理论讲授,要求学生理解操作系统在计算机系统中的作用、地位和特点,熟练掌握和运用操作系统在进行计算机软硬件资源管理和调度时常用的概念、方法、策略、算法、手段等。(2)教师在正常上机辅导时间在实验室与学生就事先布置的问题进行讨论;在考核时期,教师要求学生上机进行实验验收,要求学生能够正确调试程序,运行程序并就输入输出数据进行解释和分析;教师要求学生撰写规范的实验报告,从中选择优秀者。(3)学生在教师的安排下进行课堂演示与答辩,教师要求上机验收优秀者,在课堂上面对全班同学进行演示,并当堂回答同学提出的问题,最后由教师进行点评。(4)教师在课后答疑,通过网络等媒介回答同学提出的各类问题。(5)教师上复习课和习题课,根据学生在平时课程学习中提出的问题,平时作业中出现的错误等,集中进行讲解。

3.4实验课程考核内容与方法研究

实验课程的考核按照如下环节进行:(1)实验报告及其检查与评价,此环节可占实验课程考核总分的30%。(2)要求学生回答如下设计性问题并进行评价:解释算法原理、数据结构设计思路、测试用例设计及其含义,此环节可占总分的50%。(3)要求学生上机演示,随时回答问题并进行评价,主要做法包括:源程序的上机编译、调试;运行系统并显示运行结果,在此基础上对相关的输入数据加以解释,此环节可占总分的20%。

4结束语

本文在将理论教学与实践教学相结合方面进行了探索,主要做法是在课堂上重视交互式教学,在课外实践教学中以培养学生的自学能力、团队合作能力、实践动手能力为目标;改革考试方法;增加学生课堂演示和答辩内容,促使学生从被动学习角色向主动学习角色的转换。

参考文献:

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

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

[3] 罗宇,张颖蓓,叶常春. 本科操作系统课程设置及教学体会[J]. 计算机教育,2006(1):39-40.

上一篇:关于提高“计算机组成原理实验”课程教学质量... 下一篇:程序设计课程实践教学课程体系改革与实践