《操作系统》理论教学的三点思考
2017-09-30张霄宏
张霄宏
【摘 要】《操作系统》是计算机专业的核心课程,在专业课程体系中地位非常重要。本文从 《操作系统》课程的特点出发,分析了学生在课程学习过程中存在的问题,提出了将抽象知识具体化、将枯燥理论生动化的教学思路,并探讨了利用主线将操作系统知识系统化的教学方法。
【关键词】操作系统;理论教学;教学改革
0 引言
《操作系统》是计算机专业的核心课程,在专业课程体系中起着承上启下的作用。该课程主要讲授计算机操作系统的基本原理和实现技术,是理解计算机系统的工作过程和使用计算机进行应用开发进而解决实际问题的重要基础。课程内容涵盖处理机管理、进程管理、内存管理、文件系统管理和用户接口等相关的理论、算法、技术、实现和应用[1-2]。深入理解并熟练掌握《操作系统》的知识对学好后续专业课程非常重要。
1 《操作系统》教学中存在的问题
通过对课程调查发现,学生在学习《操作系统》的过程中会觉得内容枯燥、知识点零碎且连系不紧密,理解难度大。这些因素会降低学生对该课程的学习兴趣,影响学习效果。通过分析发现这种情况是由以下三个原因造成的。
(1)知识点繁多且抽象
计算机操作系统负责管理计算机中的硬件资源。由于这些资源在工作原理、使用方式等方面存在差异,必须以不同的方式对它们进行管理以保证其正确高效工作。这些因素导致操作系统设计比较复杂,规模比较庞大大。要把操作系统的知识讲清楚,相应课程包含的内容势必比较广泛,知识点和概念也会比较多,这是学生觉得本门课程知识零碎的一个原因。除了对硬件进行管理,操作系统还用向用户提供使用计算机的接口。为了便于用户使用,操作系统会对硬件进行抽象以屏蔽其复杂性。举例来讲,磁盘的存储空间正是经过了抽象才变成了文件系统直接面对物理块。而学生对计算机系统的认识停留在硬件层面,这些抽象增加了知识点的理解难度。
(2)理论性强
《操作系统》侧重讲授计算机操作系统的基本原理和实现方法,常借助于流程图或文字进行阐述。由于很多原理比较复杂且是在抽象的基础上形成的,需要用专业术语进行描述,理論性较强,不易理解。文献[3-5]也提到类似的问题。虽然在介绍这些原理和方法时可以使用流程图等工具,但是由于原理的复杂性导致相应的流程图或文字描述比较枯燥,而教材中给出的例子专业性又太强,学生理解起来有较大难度,学习热情受到影响。死锁相关知识中的银行家算法就是这样的例子。
(3)局部性强
现有的教材在介绍计算机操作系统的知识时都是分模块展开,各个模块自成一章进行阐述,缺少将这些知识连成一个整体的纽带。具体来讲,操作系统的内容一般分成处理机管理、内存管理、进程管理、文件系统和用户接口五模块,每个模块都由独立的章节进行介绍。这种布局有利于对各个模块进行深入细致的阐述,但是却不易将各模块之间的联系阐述清楚。因此,学生会觉得操作系统的知识比较分散,不够系统。
以上这些因素会降低学生的学习兴趣,并使学习效果大打折扣。要客服这些问题必须对《操作系统》的教学思路、手段等进行改进和完善。
2 解决方法与手段
为克服《操作系统》课程中存在的知识点繁多、理论性强、知识点间联系不突出等问题,本文将从以下三个方面对理论教学的思路和手段进行改进。
(1)借助例子将抽象的知识具体化
将抽象的、难理解的知识具体化可以加大其可理解性。要在教学中做到这一点可以分两步、由浅入深来实现。第一步借助生活中的具体例子诠释知识点。在学生对这个知识点有了初步认识之后,再利用专业的例子加深学生对这个知识点的理解。下面将以操作系统对进程和线程的资源分配为例说明具体化的过程。
第一步寻找生活中与进程和线程关系比较接近的例子。家庭关系中的父子关系与进程和线程之间的关系比较接近。在家庭关系中,父亲拥有对家庭全部财产,儿子出生时没有任何财产,但在成长过程中儿子可以使用父亲拥有的财产。与此类似,计算机操作系统只给父进程分配资源,线程不拥有资源,需要时线程可以共享父进程的资源。
第二步用专业相关的例子加深学生对这一知识的理解。可以用程序设计语言写一段代码,展现计算机操作系统给父进程与线程分配资源的具体情况。
(2)采用图、文、动画等多种手段使理论生动易理解
计算机操作系统中很多重要的理论虽然通过文字和算法描述能够介绍清楚其原理,但是学生会觉得理论枯燥、晦涩难懂,进而失去了学习兴趣。如果在介绍理论的过程中能恰当地使用图、动画等手段就可以使枯燥的学习变得有趣,从而激起学生的学习兴趣,改善理论学习的效果。然而,过多的使用图形和动画会使课件过于花哨,反而容易分散学生的注意力,在教学过程中要特别注意这一点。
(3)利用主线突出课程的系统性和整体性
学生在学习《操作系统》课程时经常只见局部不见整体。对操作系统各个模块的运行原理能够较好理解,但是对类似于“操作系统采取了哪些措施保障程序顺利执行结束”这样的问题并不能清晰准确地回答,而对这个问题的回答正是学生是否透彻理解操作系统原理的重要体现。要帮助学生全面透彻理解操作系统,在授课过程中必须突出整体性和系统性。文献[6]也强调在教学中要突出整体,注重知识之间的内在联系。
为做到这一点,可以将程序的执行过程作为主线将操作系统各个模块的内容连系起来。在讲解程序如何执行的过程中,适时地将操作系统各个模块的内容以及模块之间相互协作的内容引申出来。这种方式即可在纵向上对某个模块进行深入阐述,也可在横向上对模块间的协作关系进行清晰解释,使学生对操作系统有一个系统、整体的认识。
3 结论
《操作系统》是计算机专业的核心课程,在作业课程体系中扮演非常重要的角色,具有知识点多、理论性强等特征,学生在学习过程中容易出现只见局部、不见整体的情况。为提高操作系统的学习效果,本文提出了将抽象知识具体化、将枯燥理论生动化的教学思路,并探讨了利用主线将操作系统知识系统化的教学方法。
【参考文献】
[1]汤小丹,梁红兵,等.计算机操作系统(第四版)[M].陕西:清华大学出版社,2014.
[2]张尧学,宋虹,等.计算机操作系统教程(第四版)[M].北京:清华大学出版社,2013.
[3]杨晓敏,吴炜,等.《计算机操作系统》课程教学改革之探索与实践[J].教育教学论坛.2015,7:110-111.
[4]刘杨涛,白光远.《计算机操作系统》课程教改研究[J].软件导刊.2012,11(4):184-186.
[5]叶俊民,李源,等.“操作系统原理”理论与实践课教学研究[J].实验技术与管理.2010,27(9):171-177.
[6]刘乃琦,蒲晓蓉,等.电子科技大学“计算机操作系统“精品课程建设[J].计算机教育.2006,17-20.
[责任编辑:朱丽娜]