操作系统课程多角度教学改革探索与实践

时间:2022-09-05 09:51:42

操作系统课程多角度教学改革探索与实践

摘 要: 操作系统是计算机科学与技术专业的主干课之一,在计算机专业教学体系中具有举足轻重的地位和作用。本文深刻分析了现有教学过程中暴露出来的问题,从教学理念、多媒体课件、教学网络平台、实践教学等方面探索教学改革实践。通过多角度改革方案的实施,激发了学生的学习热情及求知欲,提高其反思和创新能力,更好地引导学生从系统软件角度分析和解决问题,从而提升教学质量。

关键词: 操作系统; 多角度; 实践教学; OS Lab

中图分类号:TP316-4 文献标志码:A 文章编号:1006-8228(2017)05-75-04

Exploration and practice of multi-angle teaching reform of operating system course

He Ju

(Information Technology Academy of Nanjing University of Chinese Medicine, Nanjing, Jiangsu 210029, China)

Abstract: Operating System is one of the main courses for the specialty of computer science and technology, which plays an important role in the teaching system of computer science. This paper analyzes the existing problems in the teaching process, explores the teaching reform from the following four aspects, teaching idea, multimedia courseware, teaching network platform and practice teaching. Practice has proved that the implementation of the multi-angle teaching reform stimulates students' enthusiasm and curiosity, improves their ability of reflection and innovation, and can guide the students to analyze and solve problems better from the perspective of the system software, so as to improve the teaching quality.

Key words: operating system; multi-angle; practice teaching; OS Lab

0 引言

操作系y是现代计算机系统中最核心、最基础的软件,是计算机技术和管理技术的结合。在计算机及相关学科课程体系中,操作系统作为一门理论和实践性并重的核心课程,是计算机科学与技术专业、软件工程专业学生必修的专业基础课程之一[1-2]。课程的教学目标是让学生理解计算机系统工作、用户与计算机系统交互、设计开发应用系统的基本知识结构,从宏观上掌握操作系统的整体特性,从微观上熟悉原理与算法的应用技巧,培养学生计算思维能力、算法设计与分析能力、程序设计与实现能力。

1 传统教学中出现的问题

在整个计算机科学与技术知识体系中,操作系统课程具有承上启下的重要作用。由于课程较强的逻辑性和抽象性决定了该课程的难度较大,在教学实践中出现了学生难学、教师难教的普遍反映。总体来说存在如下问题。

教师授课主要以讲授理论知识为主,课程中的概念和原理抽象,难以理解,学生常常“知其然,不知其所以然”缺乏主动学习的意识。作业以知识点复习为主,需要发散思维的主观内容不多,而且网络上的参考资料也较丰富,学生习惯了这种快餐式的学习,很难做到独立思考和举一反三。

实验课时有限,实验内容大多是算法验证项目,而设计性、综合性和探索创新性实验偏少,没有适当的方式激发学生的编程兴趣,使学生获得快乐和成就感,因而也会影响学生探讨问题的积极性和创新能力的提高。

笔者作为课程负责人承担操作系统课程的教学工作已有十载,从2013年开始探索课程教学改革,借鉴构思-设计-实施-运行的培养模式[3],从学生的学习潜能考虑,以操作系统的教学基本内容为依据,依托现代信息技术和现代教育技术,对操作系统的教育理念、多媒体课件、教学内容、教学资源等进行改革探索,以求提高操作系统的教学质量,提升学生的学习兴趣和自主学习能力,实现学以致用。

2 教学改革实施

2.1 教学观念的转变

教学改革,首要任务是教师转变教学观念,树立以学生为中心,充分发挥学生的主动性,激发学生创造精神的教学思想。从以知识为重心逐渐转移到以能力为重心,力求做到知识与能力的最佳结合;从以接受学习为重心逐渐转移到以发现学习为重心,力求做到接受学习与发现学习的最佳结合。充分利用现代教育技术,专注于学习资源的建设、研究和评价。通过教学过程信息和学生学习的互动状况,评价教学内容及其组织形式是否符合教学目标,并及时作合理调整,为学生提供有针对性的学习信息。根据在教学实践中出现的各种现象,不断总结和改进教学思维和教学方式,形成理性认识。教师想要把一门课教好,不仅仅需要过硬的专业技能,更需要具有管理学习资源、管理学习过程和教育教学研究的能力。

2.2 多媒体化课件优化

多媒体教学对传统的操作系统教学技术起着补充和辅助作用,增加操作系统教学内容的表现形式,从而达到化繁为简、化难为易、化抽象为具体、化艰涩为通俗的效果。许多计算机教材都有配套课件,但是这些课件并不能完全满足授课需求,笔者所在的团队花了相当多的精力对授课课件做完善,通过图片、动画、视频同时辅以文字对操作系统的难点进行展示,这样可以减少理论的抽象性,加深理解、增强记忆。运用多媒体课件对调动起学生的求知欲望和学习操作系统的兴趣很有帮助。

2.3 网络教学平台的应用

笔者所在学校的U-MOOCS网络教学平台,集课程管理、教学资源、教学活动、课程建设等功能于一身。操作系统课程自开课起的全部教学资料都会在教学资料模块中积累保存,形成小型“资料库”,供教师随时调用。教学活动包括课程论坛、课程作业、调查问卷、题库卷库在线测试等,全面支持基于项目的小组协作式研究型教学模式。网络平台同时配有移动客户端,支持学生在手机等移动设备上进行在线学习,满足学生利用闲暇时间随时随地“碎片化”的学习需求,实现线上学习与线下学习相互补充,推进泛在学习和终身学习有效实践。借助网络教学平台,在期中和期末阶段进行在线测试,让学生及时把握自己的学习情况,查漏补缺;在授课结束后开展调查问卷工作,及时听取学生的意见反馈,作为教学反思的一个参照,更好地为下一轮教学服务。

2.4 实验教学改革

实验是整个操作系统教学环节的重要组成部分,对促进学生更深人、全面地理解理论知识起着至关重要的作用[4]。但是操作系统实践环节一直相对薄弱,已经不能适应现代高等教育的要求。2015年笔者申购了北京海西慧学科技有限公司研发的操作系统集成实验环境OS Lab,采用“实例学习”法引导学生详细分析一个小型操作系统的实例,在充分理解操作系统原理的同时,对实际操作系统获得直接经验。OS Lab主要包含了小型开源操作系统EOS(可直接运行于x86硬件平台)和可视化的IDE环境(界面和操作习惯都类似于Visual Studio,见图1)[5]。一方面,EOS操作系统对X86平台中的各种硬件进行统一管理,提高系统资源的利用率;另一方面,EOS提供了一个“虚拟机”和一组API函数,EOS应用程序通过调用这些API函数获得服务,从而在此“虚拟机”上运行。在IDE中可以编译、调试EOS操作系统,同时可以借助Virtual PC、Bochs等虚拟机软件,对EOS内核进行交叉调试。IDE还支持C源码级的内核调试,支持反汇编,可在内核中设置断点和监视,可随意查看、修改内核变量或CPU寄存器的值,为学生调试、分析源代码提供了极大的便利。

EOS的源代码主要使用C语言编写,总量不超过10000行,并配有大量的中文注释,阅读方便。EOS融合了Windows和Linux的设计理念,并且提供了和Windows一致的API函数和应用程序功能,对学生参加工作后进行Windows开发有很大帮助。EOS从学习者的角度进行了功能模块划分,主要包括了进程管理、存储器管理、设备管理、文件系统等模块,各个模块间的耦合性低,完全可以与理论课上采用的经典操作系统教材配套使用。学生在深入分析和理解EOS内核源代码后,可按照个人意愿对感兴趣的模块进行修改,甚至添加新的模块,为学生提供了极大的自由发挥空间。

OS Lab中配套有12个实验项目,但因为课时的限制,笔者主要选取了其中的4个项目开展实验教学,分别是操作系统的启动、M程的创建、进程的同步、分页存储器管理。前两个以验证为主,后两个以设计为主,由浅入深,将基础理论知识与实践很好地结合,加强了教师与学生的互动,充分调动了学生的学习积极性和主动性。笔者认为,为学生提供学习一个实际操作系统的机会是非常必要的,在他们的学习生涯中至少应该阅读并理解一个具有相当规模的程序,这会使他们获益匪浅。后续在OS Lab中还可以增加课程设计教学环节,进一步加深对操作系统课程的基础理论知识、具体实现机制的理解,全面深入地了解操作系统设计思想的具体实施策略。应用卡内基梅隆大学提出的口号“Learning By Doing”,联系到操作系统课程设计的项目实践中,使这种以项目为驱动的教学理念得到更好地发展。

3 典型案例分析

进程同步是操作系统进程管理中的重点也是难点。以生产者-消费者问题(P-C问题)为例,借助于信号量机制,解决生产者和消费者之间的同步互斥关系。一旦缓冲池中所有缓冲区均装满产品时,生产者必须等待消费者提供空缓冲区;一旦缓冲池中所有缓冲区全为空时,消费者必须等待生产者提供满缓冲区;由于缓冲池是临界资源,所以任何进程在对缓冲区进行存取操作时都必须和其他进程互斥进行。在理论课中讲授完这个知识点后,实验课上立刻跟进完成进程同步实验项目。P-C问题中main函数、producer函数、consumer函数流程图如图2所示。EOS中使用CreateSemaphore这个API函数创建信号量,分等待信号量(不阻塞)、释放信号量(不唤醒)、等待信号量(阻塞)、释放信号量(唤醒)四种情况进行调试。验证完后再尝试修改信号量算法,使信号量对象支持等待超时唤醒功能和批量释放功能。最后再对修改过的算法进行测试。最后实验教师会引导学生对实验结果进行剖析,再次证明信号量机制是解决进程同步问题的一个利器。对于能力较强的学生,还有课后思考题来对进程同步进行深层次的分析。学生通过即学即用,提高了发现问题、分析问题和解决问题的能力,同时引导学生由浅入深、由基础到综合、由验证到创新地进行实践,多层次地加强学生对理论知识的理解,增强了学生的实践与创新能力。

4 总结

时代在变迁,信息的获取更加便捷,学生的学习积极性在某种程度上也发生了蜕变,所以教学方式也应与时俱进。本文探讨了操作系统课程教学改革实践,从教学理念、多媒体课件、教学网络平台、实践教学等多角度出发,采取重基础、重实践、重创新的多方位教学模式,通过开拓思维、研究分析实例和实践操作,激发学习兴趣,掌握分析和解决问题的方法,培养学生从理论中来,到理论中去,再进一步升华为理论的创新能力,为后续课程如网络操作系统、编译原理等课程奠定了扎实的理论和实践基础。实践证明,这样的改革提高了教学质量,同时也获得了学生和同行的认可。

参考文献(References):

[1] 汤小丹.计算机操作系统[M].西安电子科技大学出版社,2009.

[2] 张尧学,史美林.计算机操作系统教程[M].清华大学出版社,2003.

[3] 杨柳,胡志刚,李玺,谭长庚,任胜兵,宋虹.面向CDIO的“操作系统”教学改革探讨与实践[J].计算机教育,2009.14:24-26

[4] 叶保留,费翔林,葛季栋,骆斌.“操作系统”实验课程建设与教学探讨[J].计算机教育,2009.14:122-125

[5] 操作系统集成实验环境内皮书[M].海西慧学科技有限公司,2010.

上一篇:接地气 暖人心 有情感 见实效 下一篇:基于大数据的智慧政府门户建设分析