操作系统教学方法探讨

时间:2022-08-03 01:57:59

操作系统教学方法探讨

文章编号:1672-5913(2011)21-0084-03 中图分类号:G642 文献标识码:A

摘 要:操作系统原理有较强的理论性和抽象性,学生们普遍反映学习操作系统的原理和方法十分困难。本文主要从合理组织教学内容,采用形象直观的原理图来取代大段的文字叙述,揭示各复杂问题的内在联系等入手,探讨提高操作系统课程的教学方法。

关键词:操作系统;教学方法;探讨

一直以来,操作系统课程的教学方法和教学艺术都是从事该课教学的教师探讨的问题。笔者从事多年的操作系统教学工作,想就这些年来在教学中采取的一些方法和大家共同探讨一下。不知是否能对那些刚刚踏入操作系统课程教学的新人们有所帮助和启迪。

本文从如何根据操作系统课程的特点和内容,结合二本、三本学生的学习现状,采取一些切实有效的教学方法,并在其中合理地、适当地讲究其教学艺术。

操作系统课程能作为计算机专业及计算机相关专业的硕士研究生统一入学考试课程之一,其重要性在专业课程体系中可见一斑。它具有概念多,理论性强,内容抽象,涉及面广,算法繁多,综合性强,灵活性大等特点。因此,造成学生理解掌握困难,教师绞尽脑汁也很难取得理想地教学效果。下面分别从几个方面谈谈笔者在教学中所采用的一些做法。

1 多变少 繁变简

针对操作系统概念多、算法繁多的特点,在教学中采用行之有效的方法,使学生们比较轻松地掌握所学内容。

1.1 抓住重点,多就会变少

在操作系统概论一章中,诸如并行、并发、多道程序设计、系统调用、分时、实时、内核、虚拟、共享等概念多达几十个[1],铺天盖地而来,一下子就把学生弄得晕头转向了。还有在介绍各种资源管理时,分配算法繁多,学生们也经常搞错算法的适用范围。

如告诉学生概论中的概念,你只要有一点印象就行,不用急于弄明白,在概述中重点了解操作系统定义和功能。又如通过用Word中复制一个文件的全过程的介绍,将其中所涉及到的文件、设备、存储等许多细节上的管理一一指明,若这些工作完全由用户自己来实现,其复杂程度可想而知。而事实上现在的用户简单到点点鼠标就能实现,就是因为有Windows操作系统的存在。学生们听完课后,从总体上对操作系统在计算机系统中的作用有了初步地了解。采用资源管理的观点,把操作系统比作“管家”,它将计算机系统资源管理得井井有条,让“雇主”满意是操作系统的服务宗旨,这才是本章的重点。计算机系统资源有两类:硬件资源和软件资源。操作系统管理的对象,也就是这些资源。进一步引申到硬件资源主要有处理机、存储器、I/O设备,软件资源包括以文件形式存储的程序和数据。因此,用资源管理的观点看待操作系统,它包括相应的四大管理,即处理机管理、存储管理、设备管理和文件管理。围绕着操作系统这个计算机系统的“管家”的职责,是什么?如何实现?最终“雇主”是否满意等问题,即是操作系统这门课所要讲授的内容。至于那些概念的具体含义,在以后的各个章节中会不断地加以充实和完善的。学会不同的情况下做恰当地取舍,才能更好地理清思路,扫清学习上的障碍。另外,针对学生综合分析能力差的情况,在教学中尽可能地用形象直观的原理图来描述所讲授的内容,以取代大段的文字说明。采用这种方法后,学生们感到把书学薄了。

1.2 找出共性,繁就会变简

对于各种资源分配的方式,为了便于学生们掌握,归纳总结出四句话:资源分配先查“表”,依据“算法”来实现,出错/异常找“中断”,操作系统“来”解决。以内存中虚拟页式管理为例,请求分配页框时,首先通过查找位示图(可看作是记录内存分配情况的表格),若能满足需求的话,把分得的页框号填入页表(进行地址映射的表格)中所对应的表目里。否则,操作系统需要按照淘汰算法淘汰一页后,再把所需要的页装入内存。实际上在这里操作系统是利用缺页(也称之为页故障)中断处理程序完成淘汰和将其装入内存的。帮助学生归纳总结出在各种管理中所用到的主要数据结构“表”:PCB(进程控制块)、FCB(文件控制块)、DCB设备控制块)、PT(页表)、ST(段表)等。主要算法:处理机调度算法、淘汰算法、磁盘调度算法等。中断包括缺页(段)中断、地址越界中断、存储访问越权中断、I/O中断等。而中断服务处理程序就是操作系统中处理解决各类问题的主要系统程序。有了清晰的思路,繁杂的事情也会变得简单了。

2 抽象变具体

操作系统的另一个特点是内容抽象,看不见摸不着,学生们学起来总觉得似懂非懂。

2.1 用生动形象的例子使抽象变具体

在讲授死锁避免中的银行家算法具有保守性时,说明不安全不一定死锁的道理。给学生举了利用过街天桥过马路的例子,在天桥上走路肯定不会发生交通事故,即系统处于安全状态不会发生死锁;而穿行马路,也不一定发生交通事故,即系统不安全,也不一定会发生死锁的道理。银行不会明明知道你无能力归还贷款,还冒着风险向你发放贷款,这就是银行家算法的由来。还有对死锁的预防、死锁避免、死锁检测以及死锁恢复之间的关系解释时,用“甲流”的例子打比方。死锁的预防好像打了“甲流”的疫苗,且不去人流密集的公共场所,肯定不会得病。死锁避免,去了人流密集的公共场所,但已经打了经过证明百分之百有效的疫苗,也不会得“甲流”。而死锁检测是指疫苗也没注射,人流密集的公共场所也去了,没采取任何预防措施,恰有感冒的症状,这时就需要到医院化验确诊,看看是否得了“甲流”,若得了,就应该治疗。死锁的恢复就相当于检测出得了“甲流”要治疗一样。

2.2 用图示的形式来描述问题的内在联系

在讲述进程管理一章内容时,自始至终都用进程状态图来说明进程调度、进程控制在什么情况下完成什么任务,达到什么目的。这样,帮助学生弄清问题的来龙去脉,学生便可一目了然地、轻轻松松地掌握所学内容。利用作业状态转换图和带有就绪队列等待队列的进程状态转换图一起来解释高级调度、中级调度以及低级调度之间的关系,揭示得更加透彻。总之,在教学中只要能用图说明的尽可能地不用文字来解释。

3 复杂变简单

由于操作系统课程理论性强,内容抽象等特点,使学生在学习过程中,理解掌握所学知识时有一定困难。特别对于基础较差的三本学生来说,就更难了。采用学生容易接受的方法,把那些较难理解的问题变得较为容易些。

3.1 用生活中常见的实例将难题变得容易

在讲述管程的结构时,为了说明入口队列、紧急队列与条件队列三者之间的进程内在联系时,形象地用到行政大厅办事的过程来说明它们之间的关系。假定某市行政大厅,一次允许若干人进入大厅,那些未被允许进入的人就在大门外入口队列中排队等待。进入大厅办事的人,根据他(她)所要办的事情所属部门分别在不同的窗口前办理,若办理相同事件的人不止一人时,那就会有人在条件队列中排队。正在办事的人中,又可能有人需要去复印相关资料,暂时离开当前窗口,在他后面的人就可立刻得到服务。在这个过程中,暂时离开去复印的人回来后,工作人员继续为其服务时,在他后面的那个人进入紧急队列等待。也就是说,当服务结束后,在紧急队列中的人享有优先权。当在大厅的人中有办完事情的了,先看紧急队列中有无等待者,有则为其服务。否则,从入口队列中放新人进入[2]。

还有,在讲授系统调用功能和实现过程时,同学们被一会儿是用户态一会儿是系统态给搞懵了。可以用储户到银行存钱、取钱的过程来说明系统调用中的处理机状态。储户到银行取钱时,在窗口外填写好取款单,相当于用系统调用提出资源请求,这时是用户态。把取款单从窗口递给银行工作人员后,经一系列地验证核实,所需要的取款从银行的服务窗口递出。尽管你把钱存入这家银行,你也不能直接从保险柜里拿走你的存款。整个取款验证核实工作是由系统完成的,所以是系统态。一旦储户从窗口得到钱款后,系统服务结束,又回到用户态,你可以随意花属于你自己的钱了。

3.2 交给学生归纳总结知识的方法

针对学生自学能力差的实际情况,在每一章的小结过程中,对于所学内容进行归纳,并指出与前后章的联系,使学过的内容更加巩固,为新的一章开始打下基础。比如:在讲完存储管理一章后,总结资源管理的功能主要有四个方面:分配和回收;共享和保护;逻辑到物理;虚拟和扩充。这是资源管理功能的共性,在不同的资源管理中,又赋予不同的含义,只要掌握特性,便可融会变通。让学生对设备管理功能,按上述四个方面归纳总结。从而提高学生的自学能力。在期末复习时用平时交给学生们的归纳总结方法,对所学的内容进行梳理,收到较好的学习效果。

3.3 分散难点循序渐进

在操作系统的教学中遇到几个难点问题,一是程序运行的并发性,由于学生们平时上机编程序都是在单机环境下顺序执行的,考虑问题时总是习惯于以往的思维模式,对于并发执行很难理解。通过详细分析了用软件方法和硬件方法实现进程互斥的过程,使学生建立起多道程序设计的思想。二是进程同步机制中的信号量和PV操作的设置问题,首先分别建立起互斥模型和同步模型,然后再讨论,不同情况下信号量初值的设定。最后交代在什么情况下采用P操作,什么情况下使用V操作。结合具体问题,如生产者-消费者问题、读者-写者问题,加入有条件互斥,同种组合资源的管理,经过逐步分析,由浅入深,使得学生接受起来就不那么困难了。

4 结语

总之,在操作系统的教学中,想尽各种各样的办法,能把一门大家都认为难学难教的课程,变得较为轻松易学些。

参考文献:

[1] 孙钟秀,费翔林,骆斌. 操作系统教程 [M]. 北京:高等教育出版社,2008:1-57.

[2] 左万历,周长林. 计算机操作系统教程[M]. 北京:高等教育出版社,2004:84-92.

An Exploration for Teaching Course of Operating System

HU Yizhi

(University of science and technology Liaoning, Anshan 114051, China)

Abstract: The system operation principle is theoretical and abstractive. Students reflect in general that learning them and getting hold of some main concepts are relatively difficult. The paper emphasizes the big paragraph of text might be replaced by sensitive graphics, thereby in teaching phase students could get better understanding of the inner connections which are hidden from certain complex issues. In our practical use of this manner, not only the teaching process is more fluent and effective, but also students’ enthusiasm is improved and atmosphere in class is inspiring.

Key words: operating systems; teaching method; exploration

上一篇:基于源码分析的多核操作系统研究与人才培养实... 下一篇:计算机网络课程实践教学的研究与改革