• 休闲生活
  • 教育教学
  • 经济贸易
  • 政法军事
  • 人文社科
  • 农林牧渔
  • 信息科技
  • 建筑房产
  • 环境安全
  • 当前位置: 达达文档网 > 达达文库 > 休闲生活 > 正文

    针对实际应用的Linux实验教学研究

    时间:2020-10-18 08:01:38 来源:达达文档网 本文已影响 达达文档网手机站

    摘要:针对高校操作系统教学中存在重理论轻实践的状况,在分析产生原因的基础上,本文提出将Linux实验教学引入操作系统教学体系中的观点。实践证明,教授Linux有利于激发学生学习操作系统的兴趣,培养学生的系统管理能力和程序编写能力,教学效果良好。

    关键词:操作系统;Linux;实践教学研究

    操作系统课程是普通高校本科计算机及相关专业的核心基础课程,在整个计算机的学科体系中起着承上启下的作用,具有相当重要的地位,也是绝大多数国内外大学的计算机及相关专业研究生入学考试的重点科目之一。

    由于操作系统是最复杂的一类系统软件,涉及较多软硬件知识,理论性和实践性较强,具有概念多、较抽象、涉及面广、整体实现思想和技术难于把握等特点,因而这门课的教学难度较大。同时,课程教学理论与实际脱节,实验环节比较薄弱,大部分学生对操作系统的学习仍停留在理论层面上,因此有必要在操作系统教学过程中结合具体操作系统,加强实验课的教学。

    1操作系统课程教学现状和问题

    国内高校的操作系统教学,大致可分为三种情况:①操作系统课程除了讲授原理外,没有实践课程;②操作系统有实践课程,但实验停留在模拟层面,比如使用Windows环境下的API编写模拟程序,这与内核的实现以及操作系统应用关系不大,不利于学生深入理解操作系统原理。③国内的少数高校,比如北京大学、浙江大学、上海交通大学等,要求学生阅读Linux或者Minix的源代码,并针对内核实现安排一些实践练习。

    国内高校在操作系统原理教学部分与国外高校相差不大,但在操作系统的实践部分,国内高校与国外高校在教学内容和教学手段上都有较大差别。国外大学都要求学生实现一个操作系统或者操作系统某一个主要功能部件。

    造成国内众多高校在操作系统的教学中重理论轻实践、实践教学不尽如人意的主要原因来自两个方面:

    1) 主观原因。实践方面的教学如果深入核心,要求学生掌握实现细节,这是复杂的,而且对于大多数本科学生而言是困难的,因为操作系统是最复杂的系统软件。

    2) 客观原因。我们大多数高校的实验环境以PC为主,PC上主流的Windows操作系统不公开技术细节,不开放源代码,很难深入内核开展实践。早期的操作系统教材在原理讲解这一环节往往沿用国外教材中的实例,以传统的Unix为主,而目前大多数高校根本没有Unix的实验环境,学生连见都没见过,更不可能谈得上对理论的理解。

    造成这样的结果就是:

    1) 课程理论性太强,内容抽象,不能激发学生学习的兴趣,学完之后,学生不能真正的理解操作系统原理,只能应付一些考试;

    2) 缺乏实践性环节,学生的动手能力和创新能力得不到有效的培养,在以后的实际工作中也不能活学活用,无法满足未来工作岗位的应用需求。

    2实验教学的改革

    2.1操作系统课程的教学安排

    Linux的出现与兴起为大多数高校开展操作系统的实践教学提供了一条可行之路。Linux是现代优秀的操作系统[1],它源自Unix,源代码公开,由众多的爱好者共同开发维护,可以通过网络及时获取相关资料,学习并阅读它的代码对于理解和掌握现代操作系统的设计思想、实现技术有很大的帮助[2]。它的操作方法基本与Unix相同,有了Linux基础,为学生以后在其他服务器上工作提供了便利。并且,Linux是免费的,不存在版权问题,它对硬件要求低,可以安装在PC机上,也可以使用虚拟机或仿真软件,维护也很方便,特别适合学校实验机房。

    同时,Linux是一种可移植性很强的操作系统,无论是掌上电脑、个人计算机、小型机,还是中型机都可运行Linux,Linux占据着越来越大的市场份额,在服务器和嵌入式系统方面,Linux可以作为Web服务器、Ftp服务器、邮件服务器、路由器、交换机等众多设备的支撑平台。因此,市场对掌握Linux技术的人才有大量的需求[3],所以教授Linux对学生就业也有现实意义,这也是我们不选用Minix、Nachos等教学用操作系统的主要原因。

    因此,我们将Linux引入教学体系,在原先讲解操作系统原理的基础上,加上Linux实践课程,即将操作系统课程分为原理和实践两个部分,整个课程体系最好能保持在一个学年内教授完毕。

    在第一学期,讲授操作系统原理课程,以理论教学为主,主要完成操作系统的基本概念、原理和整体实现技术的讲解,这是必需的,也符合国家教育部课程大纲的教学要求。通过本学期课程的教授,使得学生能够从整体上理解和掌握操作系统的基本原理和技术,有能力应对研究生入学考试。

    在第二学期,讲授Linux操作系统课程,以实践教学为主。Linux应用层面的技术与操作系统原理虽然关系不大,如Shell语言、Linux环境下的C++/Java程序设计、Web服务器配置等,但掌握这些技术的毕业生,往往是就业市场上急需的人才,所以本着针对应用教学的原则,将学时分配和教学重点偏向具体应用。

    通过将Linux实验教学引入操作系统的整个课程教学体系中,很好的解决了高校操作系统课程教学中重理论轻实践的问题。

    2.2Linux操作系统课程的理论教学

    第二个学期的Linux操作系统课程以实践教学为主,但实验室课时通常只占全部课时的1/3到1/2,有一部分课堂教学课时,并且也有必要对第一个学期讲授的操作系统原理课程进行简单的复习。

    为了使学生更好的复习原来的原理内容,可以使用Linux的某一版本展开教学。以Linux的具体实现作为实例进行讲解,讲解过程中,可以选择一些经典的代码片断进行分析,细节要有所选择,想让学生理解每一行代码是比较困难的。对于精力还有富余的学生,可以要求提交源代码的阅读分析报告,或者让学生针对操作系统的一个或若干个功能模块的不足提出改进方案、上机编码并调试。例如在讲授Linux内核这个章节时,实验内容本身就较少,教师可以选择一些内核程序进行讲解,比如LKL(—个劫持用户键盘输入的黑客程序,源代码可以从网上免费下载),这些程序只有1~2个源文件,代码量也只有1 000~2 000行,可以使学生学习的难度大大降低。重要的是这些程序直接跟内核打交道,学生首先要理解相关的内核模块的功能和结构,而任何改进都可以看到明显的输出效果,也有利于提高学生的学习兴趣。

    当然,如果条件允许,也可以将Linux操作系统课程的所有课时安排在实验室教授,这样可以边讲解边练习,比先进行课堂教学再进行实验室练习效果要好。但也要注意学生在实验室上课注意力不集中无法专心听讲的问题。

    2.3Linux操作系统课程的实验教学

    Linux本身就是一个已经长期实际使用的操作系统,所以Linux操作系统课程应该以实验教学为主。

    Linux操作系统在应用方面内容很多,但一般根据在实际工作中担任的职能不同,可以分为系统管理员和程序开发人员。系统管理员主要负责Linux操作系统的磁盘管理、用户管理、网络管理和运行在操作系统上的服务器的管理;程序开发人员主要关注Shell编程、操作系统上的程序开发、程序运行情况等。

    Linux操作系统一学期的课时是48课时或者64课时,而Linux所涉及到的每一种技术又有足够的深度,例如系统管理、网络管理、Shell编程,任何一个部分都能单独组织一门课程,所以要将Linux讲授的面面俱到是不可能的,实验教学内容过多也是Linux操作系统课程教学存在的主要问题之一。

    考虑到课时有限,所以需要根据学生的专业和兴趣区分重点,有选择性的开展实验教学。

    1) 对于网络工程专业的学生,以及部分对系统管理有兴趣的学生,在实验教学中应多关注以下内容。

    操作系统的安装。对于一个操作系统来讲,最基础的就是安装,没有安装,使用也就无从谈起,而且,在安装的过程中,对Linux操作系统的内部架构会有一个最初的笼统的印象,对于后续学习和使用也有很大的帮助。

    内核的升级。内核承担了操作系统最为重要的任务,而且Linux是一个开放原码的操作系统,它的升级非常频繁,升级内核是系统管理员的日常工作之一。

    文件和分区的管理。Linux大多数情况下是作为服务器使用的,所以需要时刻关注其文件和分区的使用情况。磁盘管理是系统管理员的最频繁的日常工作之一。

    用户的管理。Windows操作系统每次只允许一个用户登陆,与此不同,Linux天生就是一个多用户操作系统,系统管理员需要为不同的使用者分配不同的权限,为他们规划群组,并保证他们井然有序的在系统中工作。用户管理是系统管理员的最频繁的日常工作之一。

    软件包的管理。Linux上会安装很多软件,有的软件的安装并不像在Windows上安装那么轻松,所以需要多加学习和训练。

    网络管理和服务器的安装和配置。Linux具有强大的网络功能,可以在Linux上架设几乎所有的网络服务器:NFS服务器;Web服务器;Ftp服务器;DNS服务器。

    Linux命令。Linux的命令行工具非常强大,可以操控系统的所有细节,不掌握Linux的命令,永远不算真正的掌握Linux。熟练掌握Linux命令是对于系统管理员的最基本要求,这些命令不仅包括前文提到的安装命令、升级命令、磁盘管理命令、用户管理命令、网络管理命令、服务器相关命令,还需要掌握文本编辑器的使用、系统监控与安全保障等。在命令的操作过程中,还可以了解Linux的工作原理,更能促进学生对于操作系统的相关重要概念的理解。

    2) 对于软件工程专业、计算机科学与技术专业的学生,以及部分对程序开发感兴趣的学生,在实验教学中应多关注以下内容。

    内核的配置和编译。有些语言,例如C/C++,是和平台相关的,在不同的操作系统下运行前都需要重新编译,掌握了Linux内核的编译对这些语言的使用有很大帮助。

    Shell编程。Shell编程是Linux命令的高级版本,而且它可以做很多X-Windows和命令无法做到的事情。Linux Shell编程,通常在课程中只作为—个章节,而单独讲解Shell编程的教材厚达几百页,如何选择授课和实验内容是一件需要教师仔细分析的工作。

    Linux下的高级语言。Linux作为常用的服务器操作系统,可以支持绝大多数的高级语言,包括:C/C++、Java、PHP等。每一个高级语言都有自己的特点,例如C/C++是和平台相关的,需要掌握编译器gcc和调试器gcd;Java和平台无关,需要掌握JDK的安装配置和一些应用服务器(例如Tomcat、JBoss)的使用。

    系统信息的查看和监控、程序的性能分析和优化。操作系统支撑了应用软件的运行,应用软件使用操作系统的资源,所以开发人员有义务对自己所写的代码运行情况负责。学会使用系统监控命令是必要的,当然,程序的性能分析和优化相对难度大一些。

    Linux命令。前面提到了系统管理员所需要掌握的命令,除此之外,开发人员还需要掌握一些监控和分析命令,例如:ps、top、file、core。

    根据专业和学生的兴趣区分重点,有选择性的开展实验教学工作,运用这个方法能够很好的解决Linux操作系统课程的实验教学内容过多的问题。

    在实验课的具体安排上,建议采用“教、学、做、考”四位一体的教学方式。先进行实际操作演示,然后给学生学习的机会,教师同时进行现场指导,并提出一些问题或稍有难度的上机作业让学生练习。通过这种“讲解—演示—现场演练—现场指导”的方式,可以使学生很快掌握各个知识点的内容,强化技能,达到较好的教学效果。

    3结语

    综上所述,Linux不仅仅是一个优秀的操作系统,同时也是一个不断成长的国际化软件项目,其在服务器领域的实际应用非常多,并且发展迅速。我们将Linux操作系统引入到实践教学中,对于促进学生对操作系统知识的理解和掌握、提高教学质量起到了很好的作用。同时,针对实际应用的Linux实验教学,也提高了学生的动手能力,为以后深造和未来就业奠定了坚实的基础。

    参考文献:

    [1] 金海. 谈Linux系统在操作系统课程实验教学中的应用[J]. 教育与职业,2006(27):163-164.

    [2] 赵炯. Linux内核完全注释[M]. 北京:机械工业出版社,2004:54.

    [3] 张彦俊,孙晓宇,关心. Linux操作系统在高校教育中的发展前景探析[J]. 教育探索,2006(7):53-54.

    Practical Teaching Research Based on Linux for Application

    YING Yi

    (College of Computer Science and Technology, Sanjiang University, Nanjing 210012, China)

    Abstract: It is well known that university teaching of Operating System has the common weaknesses of stressing theory and attaching no significance to practice. After studying on the causes, this article proposes the introduction of experimental teaching on Linux into Operating System teaching. Practice proves that experimental teaching on Linux can stimulate learning interest in Operating System and develop students" abilities in system management and programming. Satisfactory changes appear, students in general agree with this educational style, and good teaching effect has been received during the practice.

    Key words: Operating System; Linux; practical teaching research

    (编辑:白杰)

    相关热词搜索: 教学研究 实际应用 实验 Linux

    • 生活居家
    • 情感人生
    • 社会财经
    • 文化
    • 职场
    • 教育
    • 电脑上网