《计算机操作系统》课程教改研究
《计算机操作系统》课程教改研究
1 《计算机操作系统》课程的教学现状
1.1 学生学习现状
对于计算机专业的学生来说,虽然《计算机操作系统》这门课很重要,但学生的学习兴趣却不是很高,究其原因有以下两方面:
(1)从主观上来讲,很多学生认为学习操作系统没有用。因为这门课不像有的课程学后会有立竿见影的效果。
(2)从客观上来讲,《计算机操作系统》关联多门课程,有较强的理论性和综合性。要学好这门课,学生不但要有较强的抽象思维能力,而且要具有一定的程序设计能力、牢固的《数据结构》基础知识及相应的硬件基础知识。所以很多学生对这门课有一种畏惧心理。另外在讲授过程中若采用传统的教学方式,讲干巴巴的理论,也难以激起学生学习的兴趣。
1.2 教学方法和教学手段比较单一
目前该课程的教学方法大多数仍然采用传统的“灌输式”的教学方法,学生的思考比较少,课堂缺乏互动性,因此也难以激发学生学习的兴趣。当然,由于这门课自身的原因,使得部分现代化的教育手段难以应用到教学当中。
1.3 实践环节比较薄弱
首先,本课程教材大多数都是以操作系统的基本原理和它的5大功能模块为基本结构,最后再以某一具体的操作系统为例进行分析。而现实生活中学生很少接触该操作系统,这样使课堂所学和实际接触有较大的距离,也使学生对课程缺少感性的认识。
其次,很多论文联盟http://专业开设了这门课程,而其中只有一部分专业开设了实验课,所以存在理论和实践相脱节的问题。另外,因为课时所限且课程本身的原因,使得实验设计比较难,主要是一些验证性的实验,学生只能接触些皮毛知识,所以兴趣也不大。
综上所述,目前这种教学模式不能达到培养学生科研能力、创新能力和探索精神的目标。
2 课程教学改革探讨
对于这门课的改革,我们始终结合教学实际及以人为本的教学理念去研究和探索,现就一些问题的解决方法进行探讨。
2.1 破除“无用论”,激发学生学习兴趣
作为教师应正确对待学生的“无用论”思想,有针对性地正确引导学生克服轻视、畏惧的心理,培养学生的学习兴趣。为此笔者提出以下几点建议:
首先使学生了解学习《计算机操作系统》的意义和重要性,树立起学好这门课的信心。
(1)学习操作系统的必要性。应使学生明白《计算机操作系统》这门课是计算机专业的核心理论课之一,是其它专业课程的基础,在计算机专业的教学中处于非常重要的地位。作为计算机专业的学生来说,不仅要知其然,还要知其所以然。所以大家有必要知道操作系统到底如何管理计算机系统中所有的软硬件资源。
(2)学习操作系统好处。虽然以后真正从事操作系统研发的同学可能不多,但学好操作系统可以拓展思维,极大地锻炼大家的逻辑思维能力。计算机课程不是割裂的,而是一个统一的整体,是触类旁通的,因此学好操作系统可以更好地促进对其它理论课的理解,为以后其它专业知识的学习打下扎实的基础。比如抽象、缓存、并发和进程调度等,对后继课诸如“网络安全”、“数据库应用技术”等具有重要意义。学好了操作系统,可为以后的工作奠定基础。所以从学生自身的发展考虑,也应该学好操作系统。
2.2 重视基础课程的学习
学好操作系统要分3步走,即基础→理论→实验,而要掌握“理论”和“实验”都需要“基础”课程的强力支持。若没有基础课程,那理论课程就不可能学好,继而相应的实验课程也不能完成。这些基础课程主要有:《计算机组成原理》、《数据结构》和《程序设计语言》等。对于这些课程,最低的要求是了解它们的基本概念,尤其是硬件工作原理、程序设计方法及数据组织形式等。只有掌握了这些知识,才能系统地学习操作系统的理论知识,才能够融会贯通,并把所学的理论知识用到实验中去。所以在学习操作系统之前,就要下决心先学好这几门课程。
2.3 适当增删教学内客,突出教学重点和难点
目前国内的操作系统教材中,基础理论知识都占有很大的比例,而技能培养和训练的有关内容相对比较少。若完全按照教材内容教学,难以达到培养目标。鉴于此,在教学中要适当增加部分内容,同时向学生推荐相关的学习资料以扩展视野,弥补教材缺陷,从而提高学生的技能。另外,随着计算机技术的飞速发展,很多新的概念、技术和方法被不断应用的操作系统中,而这些前沿性的知识是我们在教材中所看不到的。比如多核cpu、新虚拟技术、新网络支持、资源管理器、线程和管程等。因此,作为教师应该加强新知识的学习,并及时介绍给学生。最后,针对学生的特点及讲课的需要,可将教材中的部分内容适当删减,比如繁杂的理论阐述,或者在其它课程中已学习过的,比如网络操作系统章节中的部分已学过的概念,这些内容可作为课外阅读去处理,或者一带而过,不必详细讲解。
教学内容的确定和教材的选用,必须围绕课程的教学大纲进行。对于大纲中所规定的重点和难点应加大讲解的力度和强度。大纲中的重点和难点内容主要体现在一些“基础性”和“实用性”的内容,这些内容可以拓宽学生的知识面,也是学生学习后继课程的保证,所以这部分内容必须详讲,并且要求学生务必掌握。除此之外,在讲课过程中还要突出实验大纲和考核大纲的重点和难点内容,并确保学生能够顺利完成实验的相关任务。
2.4 使用多元化课堂教学手段
教师应该精心备课,激情授课,以激昂的情绪感染学生,以免“满堂灌”。内容要深入浅出,理论结合实际,突出操作系统原理的应用。在授课过程中要设计合理的教学方式,采用多种教学手段,常用的教学方法和教学手段如下:
(1)多媒体与板书相结合。把操作系统中枯燥乏味的理论知识做成生动的多媒体课件,让学生有一个直观、感性的认识,将抽象的理论知识具体化、形象化、生动化。对于需要互动推导讲解的内容,则适宜用板书,这样学生有思考的空间,可提高学生的思维能力。
(2)启发式与交互式相结合。教师可以用设问的方法引起学生对某个问题的好奇和兴趣,启发学生积极主动地去思考,继而引导学生去窥探奥秘,而不是让学生机械被动地接收知识。实践表明,学生非常喜欢这种交互式教学方式。
(3)类比教学法。对于初学者来说,操作系统这门课中的许多原理和算法不是很直观,也不易理解,所以在课堂中引入现实生活中的例子,通过类比的方法用通俗的语言来讲解枯燥的原理和算法效果较好。比如在讲程序和进程的区别时,可用菜谱和烧菜的过程来类比;在讲“死锁原理”时,可用现实生活中的两个人踩着河中的石块相向行走而在河中间互不相让的情况类比;在讲“银行家算法”时,可用现实生活中的银行家为了保证每次放贷交易的安全而要进行严格的审核流程来类比;在讲“优先级调度算法”时,可用现实生活中的各种车辆(如119消防车、120救护车还有一般车辆等)相遇该让谁先通过类比;在讲“先来先服务算法”时,可用顾客在商场购物结账来类比,等等。这样学生会有很大的兴致,且易理解和记忆。
(4)实例剖析教学法。在讲解操作系统原理时,结合当前主流操作系统,比如windows、linux和unix,让学生有更多的感性认识。在教学过程中可以拿公开的linux功能模块的源代码进行实例剖析,让学生掌握操作系统中模块的设计和实现,从而加深学生对操作系统的理解以及提高解决问题的能力。
(5)比较教学法。在教学中可将多个对象,从多个方面、多个角度对它们的本质属性进行鉴别,并总结出它们的共同点和不同点,以加深学生的理解和记忆。比如进程和程序,可从概念、结构、动静态、生命周期和并发性等多方面进行比较;比如实时系统与分时系统,可从多路性、独立性、及时性、交互性和可靠性等方面比较,等等。采用这种教学方法时,不要将比较的结果直接公布出来,而应该设立不同的情景,逐步暗示出线索信息,并结合其它教学方法,启迪学生思考、分析,进而总结出答案。
(6)前后贯通、联想记忆教学法。操作系统课程中的知识点比较多,若将各知识点分散孤立地记忆既费时又费力,效果还不好,所以教师在授课时要注意相关概念之间的联系。比如在讲程序的链接时,首先是“静态链接”,因为这种方式对模块的修改或更新不方便,且无法实现对模块的共享。由此产生了“装入时动态链接”,它解决了对模块的修改、更新以及共享的问题,但可能把一些自始至终都不会运行的模块也链接并装入内存,浪费了内存空间。由此又产生了“运行时动态链接”,把链接推迟到运行时进行,保证了链接时装入内存的都是要运行的模块,从而提高了内存的利用率。在操作系统中这种逐步推演的内容比较多,像信号量机制的发展、i/o控制方式的发展和存储管理方式的发展等等。在讲这些内容时,每引入一个新的知识点,都要讲清它的前因后果、来龙去脉,并分析其与相关概念的共同点和不同点。由简单到复杂,逐步推演,逐步加深难度,这样学生既容易接受新知识,又方便记忆。既让学生学会了一分为二地看待事物,又让学生明白了科学研究的方法。
在教学中,除了以上几种常用的教学方法之外,还有案例法、任务驱动式教学法等,在此不一一列举。在实际教学中,为了达到教学目的,往往是以上多种教学方法的结合。
3 抓好实践环节
目前在笔者学校开设的操作系统专业中,只有部分专业有实验课,且都是一些验证性的实验,比如进程的创建和控制、进程的通信、消息的创建、发送与接受、存储管理等。这些实验主要是让学生掌握一些基本的知识和技能,实验内容单调,学生兴趣不高。为了培养学生的动手操作能力、综合分析能力以及引导学生对未知领域的探索,我们还应该增加一部分综合性实验和设计性实验,比如文件系统的设计、虚拟存储区和内存工作区的设计,并演示几种置换算法的执行过程、编程实现各种磁盘调度算法、模拟进程调度算法及银行家算法等。
课本上的实例是unix操作系统,其实验环境的实现比较困难,所以实际中我们选择的实验平台是linux操作系统。linux系统有以下好处:它是一个免费的、源代码开放的、先进的、多用户多线程类的操作系统,具有unix的全部特征。学生可以通过阅读linux核心模块的源代码,实现对它们的剖析,从而加深理解操作系统的基本思想。在实践课中,可以让学生几人一组分别设计实现一些算法或各个功能模块,最后组合得到一个小的、真正的操作系统,然后老师对实验的结果进行合理的点评和考核。
在实验的过程当中,可使学生更加深刻地理解进程以及并发等重要概念,不但学生的程序设计能力和编程能力有所提高,而且学生从实验当中也真正体会到了操作系统的实现技术和学习操作系统的乐趣。
4 结束语
《计算机操作系统》这门课是计算机专业的核心课程之一,在该专业的教学体系中有着重要的作用。笔者结合自己多年的教学实际,以学生为本,从教学内容、教学方法和手段、实践环节等方面对该课程改革进行了研究和探索。实践表明,通过一系列的教学改革,学生对该门课的学习兴趣明显提高,也表现出较强的学习主动性和创造性。虽然一系列改革措施得到了肯定,但还有一些问题有待解决或者完善,比如双语教学、实践环节、课程网站的建设等等。所以我们还要继续努力,为《计算机操作系统》的教学和发展贡献自己的微薄之力。转贴于论文联盟 http://
上一篇:浅谈计算机操作系统及其发展
下一篇:探讨计算机操作系统的分类和发展