徐 晶,方 明,李岩芳,方向明
(长春理工大学计算机科学技术学院,长春 130022)
Linux操作系统课程作为计算机专业的一门专业选修课程,主要讲授Linux操作系统的基本操作环境、Linux shell程序设计、Linux操作系统内核和Linux环境编程等方面的知识。为了更好地配合理论教学,长春理工大学开设了Linux操作系统实验课程,这就涉及到Linux操作系统实验课程实验案例设计问题。
Linux操作系统实验课程的培养目标是使学生通过上机实验逐步熟悉Linux操作环境,增加学生对Linux基本内容和操作的领悟和掌握。同时培养学生Linux系统管理的基本能力,熟悉Linux操作系统,掌握Linux(或Unix)平台的安装、环境变量的设置、开发工具的使用方法和编程知识。
选取实验案例是为学生提供案例研究的学习环境,学生通过收集资料并对资料进行分析、讨论来解决问题,来更好地消化、吸收和理解理论教学的内容,因此实验案例的选择是非常重要的。
考虑到Linux本身作为一种操作系统,首先必须让学生掌握该操作系统的运行环境,知道如何运用该操作系统完成各种应用。Linux操作系统为用户提供3种类型的接口,图形环境、命令接口和系统功能调用[1-3]。在Unix类操作系统中,应用最广泛的基于窗口的用户图形界面是X Window系统,在Linux系统上,常用的桌面系统是GNOME和KDE[4]。Linux为用户提供的命令接口是命令解释器shell,用户在提示符后输入命令,由shell予以解释执行,shell提供几百条系统命令。系统功能调用是提供给程序员的接口,并以函数调用的形式来使用[5]。因此,我们设计实验案例——Linux操作系统图形环境安装和使用、shell常用命令的使用和Linux环境编程,由浅入深使学生逐步掌握Linux操作系统的运行环境使用方法。
Linux操作系统课程的先修课程是操作系统,操作系统课程从实现资源管理的观点出发,阐述如何对计算机系统中的硬、软件资源进行管理,使计算机协调一致地、有效地为用户服务。Linux作为一种开放源代码操作系统,通过源代码分析更有利于学生透彻理解操作系统的基本原理,两门课程互相衔接,知识点互相渗透,在实验过程中通过设置文件操作和进程控制案例进一步提高学生综合实践能力。
同时,Linux操作系统课程还和程序设计课程息息相关,因为其作为一个系统环境同样提供编程工具支持应用程序的开发,通过shell程序设计、vi编辑器和gcc编程案例进一步学习Linux环境下编辑程序的方法和程序编译运行的方法。
Linux操作系统本身是一门操作性非常强的课程,在设计实验案例时,要尽量将学生所需要掌握的基本操作技能融入到实验任务之中,同时将实际应用任务用于实验过程。在实验课程中我们采用以学生为主体,以教师为引导,以实验任务为载体的实验教学模式,充分调动学生学习的主动性,激发学生的学习兴趣,全面发展学生的创新能力、独立分析问题能力和解决问题能力,全面提升学生的专业技能。在设计实验案例时,我们同时设计必做实验和选做实验,必做实验是在实验课时之内必须完成的任务,而选做实验学生可以有选择来完成,学生可以根据自己的兴趣在完成必做实验的基础上来完成,对于完成选做实验的学生给与适当的加分,建立鼓励机制促进学生积极思考[6-7]。
基于以上基本原则,来设计实验案例。Linux操作系统实验课程总计16学时,我们一共设计8个必做实验案例。这个8个案例要在实验课时内完成,除此以外还设计8个选做案例,8个选做案例可以选择完成。实验案例的设计结果如表1所示。
其中的案例分为3种类型,验证性实验、设计性实验和综合性实验。通过系统安装、常用shell命令使用、系统管理和网络管理验证性实验案例使学生掌握Linux系统管理的基本技能,通过shell程序设计、系统编程和gcc编程设计性实验案例提供学生系统管理和维护能力,通过gcc编程等综合性实验案例提高学生Linux系统程序开发综合实践能力。
表1 Linux操作系统实验案例
实验考核是Linux操作系统实验课不可缺少的重要组成部分,通过考核反映实验教学水平、实验效果和学生掌握基本知识的状况和具有的实验技能,使学生重视实验课程的学习和实际操作,通过实践环节加强实践训练。Linux操作系统实验课程成绩由学生出勤、实验报告和学生上机表现三部分组成,学生出勤和报告占实验成绩的20%,而学生上机表现占实验成绩的80%,也就是考核时更注重学生实际操作能力。考查学生上机表现能实时跟踪学生的学习状况,了解学生对系统的掌握情况。对于验证性实验,我们采用针对实验步骤对学生提问的模式进行考核;对于设计性实验,主要考核学生是否掌握程序设计思想;对于综合性实验,主要考核学生的综合实践能力。检查学生的程序调试运行情况时,不仅要查看程序运行结果,还应注重实验中间环节,更加客观评价学生[8]。
实验过程我们选取虚拟机运行模式,采用Vmware虚拟机,Linux采用 Ubuntu12.10 ,Linux内核3.5。应用以上实验案例,开展了Linux实验课程,值得注意的问题主要包括以下两个方面。
在实验进行过程中我们发现学生呈现两极分化。由于本课程设在第7学期,学生已经是大学4年级,少数学生平时就有过使用Linux操作系统的经验,其他大部分学生对于Linux平台比较陌生,几乎没有使用过。于是,我们照顾到大多数学生情况,按照实验大纲的内容完成实验内容,而对于有使用经验的学生我们则通过进一步完善选做实验案例,增加Linux源码分析和Qt Designer开发工具等选做案例来满足其学习需要。这样,可以利用Linux的开源特性加深学生对操作系统原理、系统与技术的理解和掌握,进一步提高学生编制大型应用系统的能力。
随着计算机技术的快速发展,Unix类操作系统也在不断地发展和更新,Linux操作系统作为一种面向多领域的开源操作系统其应用范围不断扩展,所设计的案例应及时体现出这些变化,因此案例的设计并非一劳永逸,必须紧跟形势、与时俱进,不断地改进与完善。
通过实验课的实践检验,我们设计的实验案例能够满足学生培养目标的需求。以前没有接触过Linux类操作系统的学生,通过理论教学和实践教学,已完全掌握该操作系统运行环境的应用程序的使用方法,并基本掌握Linux shell程序设计和Linux环境编程思想。以前已经对Linux类操作系统有所了解的学生,通过本课程的学习,强化了Linux操作系统的原理思想,进一步掌握了Linux环境下各种编程工具的使用方法,逐步具有了Linux程序开发人员的基本素质。
[1]孟庆昌,牛欣源.Linux教程[M].2版.北京:电子工业出版社,2010.
[2]刘海燕,荆涛.Linux系统应用与开发教程[M].北京:机械工业出版社,2010.
[3]左万历,周长林.计算机操作系统教程[M].2版.北京:高等教育出版社,2005.
[4]Kate Wrightson,Joe Merlino.UNIX 从入门到精通[M].马树奇,金燕,译.北京:电子工业出版社,2001.
[5]郝铃,李晓.Ubuntu Linux从入门到精通[M].北京:科学出版社,2008.
[6]范振岐,杨全丽,李鹏,等.民族学生Linux课程教学改革与研究[J].农业网络信息,2012(2):110-111.
[7]韦静.Linux操作系统课程教学改革初探[J].河池学院学报,2009(S1):46-48.
[8]杨有利,唐丽文,田中青.优化实验分组法改善教学效果[J].重庆与世界:学术版,2013(2).