【摘 要】本文结合操作系统原理课程教学实践,阐述了5种教学方法,并分别举例分析其用法。
【关键词】操作系统;教学方法;打比方;讨论式;案例式
引言
操作系统是计算机必不可少的系统软件,《操作系统》课程是计算机专业的核心课程之一。它涉及计算机硬件、软件设计、程序设计语言、数据结构和计算方法等领域。具有涉及面广、概念抽象、理论性和实践性强等特点。对提高学生的思维能力、动手能力、创新能力和培养开发型人才具有十分重要的意义。正是由于这些特点,学生在学习过程中往往感到不易理解,难于掌握,和其他的应用软件如Excel等相比学习起来更抽象、枯燥。所以,如何讲授《操作系统》才能激发学生的兴趣和创造力值得探讨。下面从几个方面来进行分析。
一、上好第一堂课
就像一部好戏,开头唱好才会有观众。一门课想要激发学生的兴趣,引起学生共鸣,如何上好第一堂课尤为重要。按照教材的组织,作为第一章的绪言将介绍“操作系统”的概念。所以第一堂课不要急于介绍操作系统的内核是如何实现的,而要从不同的方面给学生讲解操作系统的含义。让学生从不同的角度去认识操作系统。
二、选择适合的教学方法
(一)学科式教学
操作系统课程融合了多门计算机科学与技术专业的相关课程,在课程讲授上需要结合相关的课程知识进行扩展,体现学科式教学的特点。
例如,在学习存储管理功能中的页面置换算法时,除了演示算法的基本思想外,结合数据结构和程序设计相关知识,从算法设计角度讲解应选择何种数据结构来实现相关算法,这点非常重要。因为大多数学生对学习过的数据结构的用途还没有真正理解掌握,对于已经掌握的学生来说,可以进一步巩固。
(二)打比方
操作系统原理性强,且比较抽象,不易理解,此时可采用打比方的方法,将问题讲得深入浅出,清晰直观的比方帮助学生理解。
例如,在讲到互斥信号量mutex的作用时,可以用火车上公共厕所门锁来比方讲解。初始时,锁上显示“无人”,可看作mutex的值为1,表示厕所可用,乘客可以申请使用。当乘客进入厕所时,把门锁上取得互斥访问权,此时厕所显示“有人”,可看作对mutex的值进行减1操作,此时mutex的值为0,表示其他乘客则不能再使用厕所,只能等待。当乘客使用完毕,出来时,打开门锁,释放互斥访问权,厕所显示为“无人”,此时相当于对mutex进行加1操作,这时其他乘客可以申请使用。
在讲解程序与进程的区别时,以火车与列车进行比方,火车相当于程序,列车相当于进程。火车由多节列车组成。
(三)案例式
传统的操作系统课程教学的理论性较强、内容抽象。学生在实际使用计算机时,也很难找到这些抽象理论在实际操作系统中的应用。这使得学生对操作系统理论难以理解和掌握。而对于操作系统课来说,如果学生找不到具体的直观感受,对理论的理解和接纳就都成问题。因此教师在讲授时要注重理论与实践系统相结合,注重引导学生去发现问题、解决问题。尤其是一些常见的问题,往往体现着很多操作系统所涉及的基础知识。结合着这些实例问题进行基础内容教学可以收到事半功倍的效果。
比如文件管理,一个文件存储介质,格式化后就分成许多大小相等的单位--存储块(物理盘块)。并给每个存储块有个编号,称为物理块号。文件的存储以块为单位进行。“块”是内存和外存之间进行信息传输的基本物理单位。那么在实际的操作系统中如何来查看文件的存储块大小就可以作为一个案例引起大家的思考,并通过实际操作给出答案。这样即可帮助学生理解文件存储原理了。
(四)讨论式
操作系统课程讲授的操作系统设计的基本原理,也就是说可以从软件项目开发的角度,结合软件工程的思想来讲授,这样在讲授某些原理时,就将其看作是一个小的项目,然后采用讨论式教学模式,以“讨论式”教学为突破口,对更新教学内容、优化教学手段、加强素质教育、培养创新人才具有意义。教师要扮演“项目经理”的角色,根据学生不同的基础做一定的引导,可设置一些问题,帮助提高讨论的质量,同时作为一种促进的手段要求提交个人学习总结和学习小组的讨论记录,保证讨论的效果。小组学习讨论必须有充足的论题可以展开,以避免形式主义。作业与实验的量及其难度应适度,过多过难的作业对大多数学生的学习是不合适的,不利于学生学习自信心的加强。
比如在学习作业调度算法时,可先提出作业的特点,然后让学生分组讨论,应怎样设计算法来满足相应的要求。
“讨论式”教学以培养学生自主学习能力为宗旨,以实现课程教学目标为目的,通过开展课堂讨论、网上讨论、小组讨论等教学活动,使学生对专题问题有进一步的理解。“讨论式”教学能引发学生对不同角度与方法的探讨,增强学生的主体意识,增进学生的协作意识,培养学生的创新意识[1]。
(五)程序设计
操作系统原理课程的实践性环节按深度可以分为五个层次:使用级、观察级、习题管理级、源代码阅读级和实现级。而大多数本科院校都只达到了习题管理级,只有少数院校达到了源代码阅读级和实现级。这也说明要达到源代码阅读级和实现级是非常困难的。对于大多数院校来说可以采用模拟实现的方式来进行实践。
比如在进行进程同步教学时,可以利用某种高级语言对抽象模型“生产者与消费者关系”写出进程同步的代码,并上机实践,使学生把进程同步的抽象知识变为具体可理解的知识。
以JAVA语言为例。对于进程同步问题,JAVA语言提供了线程,即轻型进程,它为同步线程提供了两个方法:object类的wait()方法和notify()方法。当某线程通过管程请求资源而未能满足时,管程调用wait()方法使线程等待,并将它排在等待队列上。当一个线程对资源访问完后,通过notify()方法唤醒等待队列上的线程,需要同步执行的代码要用关键字synchronized修饰。
三、科学的组织教学内容
在内容组织上,无需按照教材编写的顺序进行开展。通过对操作系统原理进行分析,明确“计算机操作系统是方便用户,管理和控制计算机系统软硬件资源的程序的集合[2]”、计算机操作系统是计算机技术和管理技术的结合,以及“操作系统有五大类型和五大功能”的基础上,针对五大功能展开知识结构教学,首先对软件资源管理为主的作业管理,包括任务管理、人机交互界面管理等进行详细讲解,然后进行文件管理、涉及硬件资源管理的存储管理、输入输出设备管理等内容的讲解,最后深入到进程及处理机管理的讲解。
这样组织,可使得每一个新的内容是基于一些问题而引入,带着问题进行讲解,可引起学生的思考,进一步理解了问题的由来和解决问题的方法。
结束语
操作系统是现代计算机的必备系统软件,其应用范围之广,决定了操作系统课程学习的重要性,同时也对操作系统的教法提出了更高的要求。我们需要从实际出发,针对目前操作系统课程存在的问题,对教学活动的各个环节不断进行改进,以达到共同的目标,那就是努力提高教学质量,培养更多学生具备设计、构造和开发系统软件的综合能力。而这需要依赖于教、学双方的不懈努力和教学方法的不断创新。
参考文献
[1]周汉光.讨论教学法在中文教学上的应用[J].教育研究学报.1998.13(2)
[2]张尧学史美林张高等编著.计算机操作系统教程(第三版).清华大学出版社
期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。
【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。