基于linux的操作系统实验教学改革研究(通用9篇)
基于linux的操作系统实验教学改革研究 篇1
基于linux的操作系统实验教学改革研究
姜姗(河南中医学院,450000)
【摘要】现阶段我国的信息化技术已经发展到历史时期的最高水平,在各个方面都做出了比较突出的成绩。其中一项比较具有实际意义的就是将信息技术应用到教学中,让信息技术的应用途径更加广阔。本文笔者主要探讨了linux的操作系统实验教学改革与研究,笔者结合实际工作经验,分析了linux操作系统的发展背景与国内外的发展现状,结合实际提出了操作系统实验教学的改革措施。
【关键词】linux;操作系统;实验教学;改革研究
linux操作系统由于其自身的各种优越性广泛的应用在各种领域,比如说现代化的计算机算法、手机通信、互联网安全、软件开发等方面。而且随着时间的推移,linux操作系统的功能也越来越完善,被用户的认可度也越来越高,正在以飞快的增长速度与我们日常生活中所接触到的信息技术相关联,所以我们将linux操作系统应用在课堂教学中,并对这种实验教学方式进行改革与研究
1linux操作系统的发展背景
随着全球信息化技术的迅猛发展,软件开发领域也得到了计算机研究人员的青睐,在近些年取得了优异的成绩。linux操作系统的成功开发与使用就是其中一项比较优秀的产物。近些年来linux操作系统一直在不断地自我完善与发展,已经可以做到成功的植入一个系统的服务器或者计算机的桌面上,并且在一些特殊定制的系统中也取得了不错的成绩,尤其是在现在那些发展比较成熟的服务器领域当中。由于linux的免费性、实用性、包容性等特点,使得,受到广大人民群众的喜爱。
2linux操作系统在国内外的发展与教学现状
在国外,linux操作系统的实验教学被分为几个环节去实施的,当然也有的是放在一起完成的。分开教学通常是在春季和秋季这么两个学期去完成的,而且根据不同的学习环节课程还被赋予了不同的名称,在春季的那个学期学生主要学到的是有关linux操作系统的基本概念问题,内容涉及到具体系统的构成与基本原理以及存储调节方式,在这一点的教学方式上国内外存在了许多的共性。然而在秋季的这个环节中,国外一些大学研究的深度与实验教学的目的性比国内的一些专业高校研究的更加广阔与明确。他们要求学生不仅仅能够独立的去完成系统的构建与调试,还要求学生能够直接按照客户的需要去独立完成系统的设计工作。当然在符合这样的要求之前,学校会给学生们一些具体的案例,让学生按照实际案例要求去构思与设计程序的编写工作,在老师的指导下去实现相应的案例要求,最终达到能够独立完成linux操作系统的设计与编写能力。与此同时,在国外的一些学校里,老师更注重学生的自己主动学习和互动的能力,将课程的学习内容按照一定的成绩分配比例来设计,以此鼓励学生去有目的的学习,不断培养学生的学习能力。在国内,随着我国信息技术的不断发展,在近些年我国的许多高校也相继开设了linux操作系统的学习课程,但是由于我国的这种信息技术课程开展的比较晚,所以在很多方面与发达国家相比还是会存在许多不合理、不完善的地方。笔者结合自己的实际工作经验并且调研了我国的许多高校,将我国的linux操作系统实验教学大致的总结了三个特点:①由于我国的linux操作系统大都是引自国外的计算机程序员编写的,而我国本身缺少这样的系统编写人员,更加缺少linux操作系统的编写案例,这样的实际现状直接导致了在我国的linux操作系统教学过程中缺少操作系统案例讲解的环节。这样就让学生只能停留在理论学习中,而没有实际的案例分析机会,所以学生学习linux操作系统的效果相对于国外的高校来说就会有很大的差距,不利于直接培养出能够实实在在具有编写linux操作系统能力的人才;②即使在国内有些比较先进的高校中,老师会融入一些实际的系统程序编写的案例去讲解,笔者也在实际调研中发现老师所讲解的那些实际案例在一定程度上可能会提高学生的实际理解和编写能力,让学生在原有的理论学习上有着更深的理解。但是老师通常所讲解的案例都是已经过时的或者已经不适合现在社会经济发展需求的linux操作系统,比如说UNIX或者较早版本的Windows。这些过时的系统在一定程度上会对学生的学习造成误解与创新上的阻碍,让学生的实际编写能力并不能得到现代社会的认可;③国内许多知名高校已经逐渐与世界上的大学接轨,在很大的程度上模仿了世界上先进的大学有关linux操作系统的实验教学,让那些学生在实际理论学习过程中,加入了阅读Linux和Minix等源代码的要求,让学生理论联系实际的同时理解更多的linux操作系统的原理与编写方式,再结合实际训练,让学生体验真正意义上的系统程序编写过程。
3基于linux的操作系统实验教学改革与研究
3.1调整课堂教学内容,与时俱进
由于信息技术的发展相对于其他的技术而言,发展与更新换代的周期短,包容性与时效性比较强,所以老师在实际授课过程中要时常添加入新的系统编写方法、新的问题处理思想以及新的技术概念等。由于一些新的东西涌现出来之后,如果学生不能在学习阶段去接触认识这些新鲜的东西并且培养自己接受新思维的能力,那么在以后的实际工作中就不能自己独立的完成技术变更之后的程序编写工作,经常容易发生技术更新的部分主要包括操作系统的嵌入方式、多核技术以及多线程技术等,需要我们在实际学习过程中不断地加以关注与探索。
3.2改进课堂的教学方式,主动思考
学生的学习过程更主要的部分主要体现在学生的自主环节,老师在学生的整个学习环节中只能起着引导的作用,在高校linux的操作系统实验教学环节中也不例外。老师可以在实际的课堂环节中减少理论的讲述时间,在课堂中加入学生主动思考与讨论的时间,给予学生自己对课程的理解与经验分享的机会。在这些课堂小活动之外,老师可以以linux操作系统的实质和基本原理出发,让学生们自己去主动地思考与讨论更深入的问题,也可以进行小组讨论,增强学生的学习共享能力与团队合作的能力等。通过这些方式,我们有理由相信,课堂的教学方式一定会更加的丰富多彩。
3.3合理的安排实践教学内容,理论联系实践
由于linux操作系统的学习最终是以实践编程的方式来实现的,而且linux操作系统其逻辑性比较强,系统的原理比较复杂,所以在教学过程中科学合理的安排实践教学内容是十分有必要的。学生如果仅仅学习理论知识,那么不足以从实质上掌握linux操作系统的设计步骤与设计能力,需要在不断的实际操作过程中发现自己的不足,然后一个个去克服、弥补这些不足或者知识漏洞,最后才能转化为自己的实际操作经验,真正的提高自己的linux操作系统的程序编写水平。同时可以对实践教学方式进行改革,将学生分组,给予每个小组明确的系统实现目标,让小组成员一起讨论、确定系统的设计方向与具体实现方式,在培养学生合作学习能力的同时,也提高学生操作系统的编写能力与创新能力。
4结语
现代的社会不仅仅是经济型社会,更是以信息技术为载体的多元化社会。信
息技术已经融入到我们生活中的方方面面,各种操作系统也在我们的社会生活、文化生活以及经济生活中占据了很大的比重,各种先进的操作系统也给予了我们极大的便利。在本文中笔者以linux操作系统为基础,结合我国各高校在操作系统方面的实验教学现状,提出了相应的改进方式与技术探讨,希望能进一步提高我国操作系统的研究水平与创新能力。
参考文献
[1]赵伟华,贾刚勇,刘真,等.基于linux的操作系统课程教学改革初探[J].福建电脑,2014(10):34~35,67.
基于linux的操作系统实验教学改革研究 篇2
从多年的嵌入式系统开发教学效果来看,该课程入门难、上手慢、实践性强,需要综合知识面广。要掌握嵌入式系统开发技术,需要大量的实践练习,因此,实验教学是非常重要的一环。
1 嵌入式系统开发平台组成
嵌入式系统开发平台有多种类型[2],我校使用的平台可以选用S3C44B0或S3C2410处理器。由于S3C44B0不支持MMU功能,因此如果选用S3C44B0作为处理器,相应的嵌入式操作系统则应选择uClinux;如果选择S3C2410处理器,则应选用Linux作为嵌入式操作系统来搭配使用。由于S3C44B0+uClinux平台功能相对简单,因此本文所涉及的实验全部基于S3C2410+Linux平台。
嵌入式系统开发平台结构框图如图1所示。使用CPU扩展接口,可以更换使用S3C44B0或S3C2410处理器。该平台提供的硬件资源丰富,包括64 M SDRAM,4 M Nor Flash,32 M Nand Flash,标配320×240 CSTN 5.7英寸LCD,多个LED指示灯,8个8段数码管,8路10BIT的ADC,提供触摸屏接口电路,5×4键盘,直流电机,步进电机模块,具有采用扩展子板形式的GPRS模块电路和GPS模块电路等,同时,该平台也提供了丰富的接口,包括10 M以太网接口,USB接口电路,2个RS232串行口,IIS音频信号接口,2个CAN接口,1个IDE硬盘接口,1个PCI扩展插槽和1个PS2接口,CF存储卡接口,SD卡接口等。同时,开发平台还提供JTAG接口,支持JTAG仿真技术,支持ADS,STD和IDE等集成开发环境。基于丰富的硬件资源和接口,可以开设各种类型的嵌入式实验。
要想在嵌入式开发平台上运行L i n u x操作系统,首先要把Linux裁剪、压缩,去掉一些使用不到的功能,以便符合硬件平台的要求。然后移植BootLoader,BootLoader是一段负责引导Linux操作系统启动的程序,在嵌入式系统开发中具有重要的作用。BootLoader一般分为两段,第一段一般采用ARM汇编程序编写,主要负责硬件初始化、设置堆栈等工作,然后跳转到第二段程序入口点;第二段程序一般采用C语言编写,主要负责检测系统内存映射,将压缩的Linux Kernel映像文件从Flash拷贝到RAM并解压,为Linux Kernel内核设置启动参数,最后调用内核,完成Linux启动。BootLoader有很多种,如VIVI,UBOOT,ARMBOOT,BLOB等,我们采用VIVI作为开发平台的BootLoader。
嵌入式系统开发采用交叉编译模式,所谓交叉编译模式是指在主机上进行程序的编写、编译、调制,而在开发平台上运行的模式。交叉编译模式如图2所示。主机上安装编译工具对源程序进行交叉编译,生成的可执行程序,通过主机和目标板之间的JTAG接口、串口、Ethernet接口或者USB接口下载到目标板,然后启动执行。
2 开展嵌入式系统开发教学实验的两种方案
嵌入式开发平台具有丰富的硬件资源和接口电路,因此可开设的实验非常丰富,形式多种多样[3,4],在文献[3][4]中列举出的实验共计48个,面对数量如此多的实验,在教学课时、教学设备有限的条件下,不可能一一开设,因此如何选择实验,以便让学生能够快速有效地掌握嵌入式系统开发技术是非常重要的问题。基于循序渐进、由简单到复杂的原则,同时兼顾初学者的接受能力,我们提出两种嵌入式实验的开设顺序,实践表明,这两种方案都具有很好的实验教学效果。
2.1 第一种方案
第一方案所开设的实验分为三大部分:第一部分为ARM相关的基础实验(6个);第二部分为与Linux相关的实验(7个);第三部分为综合应用实验(1个)。共计14个实验(见表1)。
我们把开设的实验分成了基础、综合和应用三个级别。在第一种方案中,基础实验为8个,综合实验为5个,应用实验为1个,符合宽基础的教学要求。通过大量的基础实验训练,使学生掌握嵌入式开发的基本技术之后,再通过综合型和应用型的训练,提高使用嵌入式技术解决问题的能力。
2.2 第二种方案
第二种方案所开设的实验也分为三大部分,其中第一部分为ARM基础实验(4个);第二部分为Linux相关实验(7个);第三部分为综合应用型实验(1个),共计12个实验,第二种方案所开设的12个实验见表2。
比较方案一和方案二开设的实验,可以看出,两种方案有所侧重。其中方案一比较注重基础,方案一提供的基础实验共8个,同时偏重对整个嵌入式系统的整体了解,方案一中的实验8,10,11都是了解整个嵌入式系统架构所必须开设的。而方案二更加注重应用,从实验5到实验11,都是嵌入式应用程序的开发实验。通过实行不同的方案,既可以对整个嵌入式系统开发架构有所了解,同时也能够从事实用的嵌入式应用开发,多年的教学效果表明,采用这样的实验方案,取得了很好的教学效果。
3 远程温度控制系统
以方案一和方案二中的应用型实验“远程温度控制系统设计”为基础,我们设计了一种远程温度控制系统,参加了2010年“博创杯全国嵌入式设计大赛”,获得了山东省二等奖。该温控系统的结构图如图3所示。
该远程温度控制系统主要包括温度传感器、嵌入式开发平台和主机。温度传感器使用通用I/O端口与开发平台连接,GRPS模块使用串口与开发平台连接,主机使用串口与开发平台连接,用来调试、下载程序。温度传感器检测的温度数值通过通用I/O端口发送给开发平台上的接收程序,程序接收温度数值后判断是否大于或者小于某个设定值,如果大于或者小于设定值,则通过GPRS模块发送到远程手机,同时,对于传感器每次发送过来的温度数值,都以文件的形式保存在本地,嵌入式开发平台上部署了嵌入式Web服务器和CGI程序,这样在主机就可以通过Ethernet接口来访问以文件形式保存在开发板上的温度值。在该方案中,我们基于方案一中的实验11,开发了通用I/O端口驱动程序;基于方案一的实验11和方案二的实验11,开发了嵌入式Web服务器及CGI程序;基于方案二的实验8,开发了GRPS模块和开发平台的串口通信程序;基于方案二的实验6和7开发了相关的应用程序。通过该系统的实施过程和最后的得奖情况来看,我们所提出的嵌入式开发平台教学实验的方案一和方案二是合理可行的,对于提高学生嵌入式系统开发技术水平,提高就业竞争力具有很好的作用。
4 结束语
嵌入式系统开发平台及其教学实验方案,是针对目前高校嵌入式系统开发课程的实验教学实际而提出的。方案一侧重宏观整体掌握嵌入式系统开发架构,方案二则注重嵌入式应用,并且基于方案一和方案二所开设的实验,设计了一种远程温度控制系统,并获得了“博创杯全国大学生嵌入式设计大赛”山东赛区二等奖。结果表明,该实验方案科学合理,能够满足不同层次学生的需求,对高校嵌入式系统开发实验课具有较好的指导意义。
摘要:对基于ARM-Linux开发平台的嵌入式系统教学实验进行了研究,提出了开设实验的两种方案并进行了对比分析。在相关实验的基础上,提出了一种远程温度控制系统。
关键词:ARM-Linux,嵌入式系统,实验教学
参考文献
[1]中国嵌入式开发从业人员调查报[EB/OL].http://www.farsight.com.cn/subject/report2010-2011.htm.[2011-05-03]
[2]朱丽霞.基于ARM-Linux的嵌入式实验教学平台构建[J].中国现代教育装备,2010,23:42-43.
[3]深圳英蓓特公司.EudkitIII S3C2410实验教程[Z].2008
基于linux的操作系统实验教学改革研究 篇3
【关键词】嵌入式;Linux;指纹识别;MiniGUI
0.引言
计算机的发展使指纹识别技术得到高速发展。目前指纹识别系统的发展以嵌入式系统为主,嵌入式指纹识别系统需要构建可靠的嵌入式平台,而且由于资源有限,对指纹识别算法要求较高。嵌入式指纹识别系统体积小、灵活性高、操作简单,能够很好的满足实际需要。与其它生物识别技术相比,指纹具有较高的稳定性、独特性。指纹绝对可以通过每个指纹的细节特征进行区分。
1.指纹识别系统设计方案
本系统以S3C2410微处理器为核心,外围扩展了SDRAM、RAM芯片、FLASH芯片、RTL8019AS网卡芯片。S3C2410的通用IO口与液晶显示屏、键盘相连,完成与用户的交互操作,构成了了本系统的硬件开发板。指纹采集模块采用的是Veridicom公司的FPS200指纹传感器模块,并通过USB接口与开发板相连,实现数据指令的传送,从而在开发板上完成指纹的获取、预处理、提取特征值、特征值对比等功能。系统机构框架见图1。
操作系统启动后对FPS200指纹模块进行初始化,然后通过USB将采集到的指纹图像传送到ARM开发板上,应用程序对读入的指纹图像进行处理并,最后进行指纹的匹配。
2.嵌入式linux开发平台搭建与实现
2.1嵌入式系统概述
嵌入式操作系统(Embedded Operating System,简称EOS)负责嵌入式系统的全部资源的分配和调度工作,管理任务和并发操作,为开发人员提供统一的接口和硬件抽象。嵌入式操作系统除具备任务调度、中断处理、文件操作等一般操作系统所具有的最基本功能外,还具有小巧、稳定可靠、可移植性好、可扩展性好、具有强大的网络功能及硬件支持等优点。
2.2嵌入式Linux交叉编译环境的搭建
交叉编译需要一个高性能的宿主机,用来编译应用开发的源程序,然后可以生成目标平台的可执行程序。建立交叉编译环境需要完成两件事:宿主机的选择和交叉编译环境的建立。
2.2.1宿主机的选择
嵌入式Linux开发的宿主机可以选择安装Linux操作系统的主机或是装有Linux虚拟机的主机。本文选择Fedora12作为宿主机的操作系统,Linux宿主机与目标机通过两种方式进行连接:(1)网络方式,通过TFTP和NFS服务;(2)串口方式minicom。
2.2.2交叉编译环境的建立
交叉编译就是在一个平台上编译生成可在另一个平台上执行的程序。平台是指体系结构(Architecture)和操作系统(Operating System)。为了Linux的应用程序的开发,构建一个多体系结构的交叉编译环境是非常必要的。
2.5设备驱动程序移植
在Linux系统下将设备分为三类:字符设备,块设备和网络设备。字符设备驱动程序与访问普通文件一样,需要至少实现open、close、read和write等方法,但是普通文件可以前后移动的访问,字符设备通常只能顺序访问。块设备与字符设备类似,块设备上可以容纳文件系统。但是块设备和字符设备在内核中数据的管理方式不同,内核与驱动程序之间的软件接口也不同。
Linux设备驱动的移植分为两种,一种是内核已经支持的硬件,这些设备驱动移植比较简单,只需在内核配置时加入该设备,并添加相应的初始化代码即可。另一种是内核不支持的硬件,首先要编写相应的驱动程序,然后通过交叉编译生成驱动模块文件,在应用程序使用该驱动时加载驱动模块。与U-Boot的移植一样,Linux内核也需要对K9F1208U0B NAND Flash、RTL8019AS网卡进行驱动的移植,而且内核中还要加入LCD、触摸屏和USB驱动的移植。
2.6根文件系统的设计
嵌入式Linux可以支持的多种文件系统,最常用的是Cramfs、YAFFS、JFFS等。
3.指纹识别算法研究
指纹识别算法是将采集到的指纹与指纹模板进行对比,判断它们是否为同一枚手指。目前的指纹识别过程如图3所示。系统从指纹传感器获得原始指纹图像,首先要对采集的图像进行预处理,将噪声等无用信息去除,并且将有用信息加强。其次对处理后的图像提取特征,获得能够区分指纹的唯一性特征。注册指纹是把得到的指纹加入到指纹库中。最后对指纹匹配,通常为了节省查找时间,会将指纹数据库分类。
3.1指纹图像预处理
指纹模块采集到的指纹图像是灰度图像,这些灰度图像中通常包含有噪声等无用信息,而这些无用信息严重影响到指纹识别系统的准确性,为了提高系统的性能需要对指纹图像进行预处理。指纹图像预处理包括提取指纹图像中指纹的有效区域,去除有效区域中的噪声,加强指纹有效信息,为指纹特征提取和最终的识别提供好的条件。
3.1.1归一化
归一化的算法描述如下:假设指纹图像大小为N×N,G(i,j)为像素点(i,j)的灰度值,N(i,j)为归一化后像素点(i,j)的灰度值,对指纹图像中的像素点依次应用公式(1)实现归一化。归一化处理调整图像灰度值的均值和方差到一个希望的范围内,保证采集到的指纹图像的灰度值能够在同一个级别上,为以后的处理算法提供一个好的条件。
3.1.2分割
指纹模块采集到的指纹图像包括指纹和背景两部分,所以在预处理时需要将背景分割出去,只留下指纹部分。分割操作就是将指纹图像的有效指纹区域保留下来进行后续的预处理操作。
3.1.3基于点方向的二值化
通常在对指纹图像进行二值化之前要先完成滤波去噪,如卷积法、Gabor等,但是这些算法运算量较大,不适宜在嵌入式应用系统中使用,所以本文中采用将滤波和二值化合并的算法,即基于点方向的二值化,能够在较小的运算代价下去除一定的粘连和连接断文等。二值化操作就是将255级灰度图像转化为只显示黑和白两种颜色的指纹图像。
3.1.4去噪
虽然二值化能够消除一些噪声干扰,但是可能会引入新的噪声,而且指纹纹线上可能会存在少数气泡噪声,指纹图像边缘上也会有部分毛刺存在。这些噪声会对后面的指纹特征提取造成影响,所以在完成二值化操作后需要进行一步去噪的操作,删除指纹图像边缘的毛刺和对指纹纹线上的气泡进行填充。
3.1.5细化
经过上面几步的处理,基本得到了指纹纹线,但是纹线的宽度却是不均匀的,原因可能是采集指纹图像时手指压力大小不同或是手指不干净等噪声影响,纹线不均匀会给指纹特征提取带来比较大的误差。对图像进行细化的算法有很多,常用算法有:Hitditcb算法、E.S.Deutsch算法和OPTA算法。
3.2指纹特征提取
在进行指纹特征提取前会利用纹线跟踪算法对指纹图像中纹线进行修复,修复后的指纹图像会提高指纹特征提取的效果和效率,但是如果指纹图像噪声干扰严重时,指纹修复就是一件非常困难的任务,对于不同的指纹图像,指纹修复算法效果差别会很大,从而影响到指纹识别算法。还有一种处理方法是,对细化后的指纹图像直接进行指纹特征提取,当然提取的特征中会包含大量的伪特征,但是这样的提取过程简单,简化了算法的复杂度;然后再根据实际中真实特征点和伪特征点的特点,对提取的特征进行筛选,删除伪特征,最终得到真实有用的特征点集。
3.3指纹特征匹配
指纹匹配是指纹识别系统非常关键的一步,目前已经做了大量的研究,常见的匹配算法有基于点模式的指纹匹配算法,基于纹理结构的匹配算法,基于纹线的匹配算法等。点模式匹配算法因其不高的时间和空间复杂度,非常适合在嵌入式环境下使用。本文就采用基于二维群集的点模式匹配算法进行指纹匹配。
4.结束语
本设计在S3C2410实验箱平台上实现基于Linux操作系统的指纹识别系统的设计与实现,采用先进的FPS200指纹采集模块,设计了良好的图形交互界面。本文对基于嵌入式linux的指纹识别系统进行了深入研究,硬件平台采用基于ARM9架构的S3C2410嵌入式平台。对指纹识别算法进行了深入的研究,选择和改进后的算法更适用于嵌入式平台,算法主要分为三个部分:指纹图像预处理、特征值提取和指纹匹配。 [科]
【参考文献】
[1]颜永龙.嵌入式自动指纹识别系统若干问题的研究[D].重庆:重庆大学硕士学位论文,2008.
[2]陈梁.嵌入式指纹识别系统研究与实现[D].南京:南京航空航天大学硕士学位论文,2007.
[3]丁飞.基于的指纹识别系统的研究与实现[D].广州:华南理工大学硕士学位论文,2007.
基于linux的操作系统实验教学改革研究 篇4
基于Linux/NC网络教学课件实现技术研究
本文介绍了基于Linux/NC网络教学中课件技术的.研究.阐述教学课件在整个教学过程中的基础作用.从网络技术和教学方面进行分析,探讨研究Linux/NC网络教学课件的建立方式.
作 者:白云燕 作者单位:贵州大学,继续教育学院,贵州,贵阳,550003 刊 名:考试周刊 英文刊名:KAOSHI ZHOUKAN 年,卷(期): “”(12) 分类号:H3 关键词:Linux NC 网络教学 网络教学课件
基于linux的操作系统实验教学改革研究 篇5
上一节的方法虽然可以避免溢出的问题,但会导致数据的丢失,下面我们就来学习一种更好的方法-动态内存的使用,由于动态内存是完全由用户自行分配使用的,因此需要用到一些系统调用,下面我们就分别学习它们。
首先我们需要的是动态内存分配的系统调用calloc函数,其函数原型为:
#include
void *malloc(size_t size);
void *calloc(size_t nmemb,size_t size);
函数malloc和calloc都用于分配动态内存空间,其中malloc中的参数size表示申请分配的内存空间的大小,以字节计;calloc的参数nmemb表示分配内存空间占的数据项数目,参数size表示每一个数据项的大小,以字节计。因此calloc函数分配大小为nmemb*size大小的内存空间。
calloc和malloc的最大区别在于calloc函数将初始化所分配的内存空间,把所有位置置为0。
调用成功时,它们的返回值都为被分配的内存空间的指针;调用失败时,返回值为NULL。
当对一块动态内存的使用结束后,需要手动将其释放。其中用到的系统调用为free()函数,其函数原型为:
#include
void free(void *ptr);
参数ptr是指向要释放的动态内存的指针,要注意在动态内存使用完毕后释放它,以免造成内存泄漏。下面我们就具体编写一个动态内存管理的例子。
程序4.2如下:
#include
#include
char *upcase(char *inputstring);
int main(void)
{
char *str1;
str1=upcase(“Everybody”); /*调用子函数upcase()*/
printf(“str1=%sn”,str1);
free(str1);/*释放内存*/
return 0;
}
char *upcase(char *inputstring)
{
char *newstring;
int counter,N;
N=strlen(inputstring); /*N为字符串长度*/
/*申请N+1个字节的内存空间,若出错则报错并退出*/
if(!(newstring=malloc(N+1)))
{
printf(“ERROR ALLOCATING MEMORY!n”);
exit(255);
}
/*将原字符串拷贝到新申请的内存块*/
strcpy(newstring,inputstring);
for(counter=0;counter
{
if(newstring[counter]>=97&&newstring[counter]<=122)
newstring[counter]-=32; /*将小写字母转换为大写字母*/
}
return newstring;
}
结果分析:
在这个程序中,由于所使用的是动态内存,因此程序可以将子函数中分配的内存空间的指针返回到主函数中,
同时,由于使用了动态内存,使得子函数可以灵活地分配所需要的内存空间(注:之所以要多申请一个字节的空间,是因为strlen在求字符串长度时,不包括结尾的“”标志,但拷贝字符串时需要为此字符串结束标志留出空间)。此程序的运行结果为:
EVERYBODY
基于linux的操作系统实验教学改革研究 篇6
目前,Linux 操作系统凭借着良好的兼容性、稳定的可靠性和功能的完备性,在过
去的近二十年间风靡全球,被广泛应用于智能电子产品开发、网络服务器配置和集群计
算机领域。当前我国高职高专院校大都开设了《Linux 操作系统》这一课程,特别是在计算机网络和信息安全技术等专业中,更是作为专业主干课程进行开设,已成为专业课
程体系设置中的重要内容和学生专业技能培养中的重要环节。
但是:由于Linux 操作系统与学生早先熟悉的Windows 操作系统在文件和系统管
理方式上都存在着较大差异,windows 系统主要采用所见即所得的图形界面管理,而
linux 系统主要采用简洁、高效的字符界面管理,使不少学生在学习过程中感到不适应。
同时,由于Linux 操作系统中操作命令繁多(要求学生有一定的英文基础,特别
是有赖于计算机英语掌握度),且每个命令还有不同的选项和参数设置,使得不少学生
在学习的过程中产生畏难(随着课程的深入、细化,每一项服务的配置都要使用大量的英文字符。)情绪。因此,教师教好这门课程和学生学好这门课程,都是一件不容易的事(根据多方调查高职高专的学生实际掌握程度大约为20%左右)。根据多年教学实践,针对本课程的教学内容和教学方法提出一些观点和体会。加深学生对操作系统相关知识的理解
操作系统可以被看作是计算机系统的指挥中心,统管整个系统的所有资源,制定不
同资源的分配策略,调度系统中运行的用户程序,协调它们对资源的需求,从而使整个
系统在高效、有序的环境里运行。同时,它又是用户与计算机交互的平台,离开了操作
系统用户就难以利用计算机硬件资源完成各种操作任务,实现不同的操作目标。
由于学生习惯了Windows 环境下的可视化界面,仅用鼠标点击就可以完成各项系
统功能,简化的操作使人们疏忽了对每步操作含义和操作系统的工作原理的思考。而在Linux 操作系统学习中,字符界面下是通过丰富的命令来完成系统的各项功能,这要求
学生熟悉系统的文件组织结构及系统的工作原理,才能使用正确的命令及选项和参数进
行正确的操作。例如在Windows 环境下对文件及文件夹的管理操作几乎没有区别,都可
通过点击鼠标菜单实现,而在Linux 环境下对文件及文件夹(目录)的管理、操作,命
令参数却是不尽相同。因此,在linux 教学中应加深学生对操作系统相关知识的理解,才能使其更好地掌握Linux 环境下的各种操作命令,达到记准用好命令的教学目的。体现不同专业学生教学内容的差别
《Linux 操作系统》课程的主要任务是培养学生对Linux 操作系统的熟练应用和
网络管理能力。其知识体系不但包括对操作系统的安装、配置和常用命令(这是我们学
校第一学期的基本讲课内容),还包含了对服务的配置(如:DNS 服务器设置、WEB 服
务器设置、NFS 服务器的设置、文件和打印服务器设置,第二学期的基本讲课内容)以及在Linux 系统环境下一个程序的编辑、编译、调试、生成RPM 安装包等内容,但以现有学校配制的学时分配情况,难以在这么短时间内让学生熟练掌握所有内容。同时,在现实中对不同专业学生的实际能力要求存在一定的差异。例如,对计算机网络专业要侧重网络服务的安装、配置、调试和管理,对信息安全技术专业要强调系统及服务器的安全设置,而对软件专业要突出其软件环境下的程序编辑、编译、调试等。
因此,在教学过程中要从专业培养人才培养标准出发,对照课程的知识目标和能力目标,对《Linux 操作系统》课程内容进行取舍、优化,体现出不同专业之专业特点。只有这样才能在规定的学时范围内,最大程度地提升学生的实际应用能力,体现各自的专业培养特色。我们的网络和3G专业应该有一定的区别,特别是针对两个班上的不同文化层次的学生,教学尤更难了。采用灵活多样、效果良好的教学方法
3.1 情景教学法。情景教学法是教师根据教材所描绘的情景,创设出形象鲜明的投影图画片或形象的动画短片,辅之生动的文学语言,并借助音乐的艺术感染力,再现教材所描绘的情景表象,使学生仿佛置身其间,如临其境;师生就在此情此景之中进行着的一种情景交融的教学活动。对于一些抽象、难以理解的知识,如各种服务的工作原理及过程,教师采用这种教学方法,可以直观地将教学内容呈现给学生,帮助学生理解知识。我们学校应增添设备,努力实现。
3.2 任务驱动教学法的应用。任务驱动教学法为学生提供体验实践的情境和感悟问题的情境,围绕任务展开学习,以任务的完成结果检验和总结学习过程,提高学生自主学习的积极性,使学生建构探究、实践、思考、运用的学习模式。
例如,在学习linux 的常用命令时,首先要激发学生的想象,结合当前企业中的实际情况创设出具体任务,但是我们有些学生的想象力不足,给教学带来了不定的困难。还有:例如,在一台公共主机上,每个部门的员工都有自己的计算机帐户,对自己创建的文件可以进行任何操作,同一部门的员工可以相互阅读,不同部门的员工禁止相互查看,将教学内容的传授转变为学生根据线索提示解决实际问题的过程(要求学校提供一些相应的设备)。然后学生会创建帐号,管理用户,设置文件权限,查看文件,修改文件,复制、移动、删除文件等基本操作等,在完成任务的过程中学习基本操作命令,从而掌握教学内容。学生对完成实际任务产生浓厚兴趣,3.3 项目驱动教学法的应用。项目驱动教学法,就是老师与学生通过共同实施一个完整的项目而进行的教学活动。学生在项目实践过程中,理解和把握课程要求的知识和技能,体验工作的艰辛和乐趣。好的开端是成功的一半,所以第一节课在整个教学过
程中起着举足轻重的作用。因此,在第一节给学生展示这学期要完成的完整项目,激起学生学习兴趣,并分解项目,让学生知道学习的重点,做到有的放矢、心中有数。如计算机网络专业,教师可以给学生展示一台配置完善的服务(由于教学任务比较繁重,有些准备不够充分),并演示和分解其功能,让学生知道学完这门课能掌握的知识和技能。并在日后的教学中,可逐一学习大项目分解出来的小项目,最后再综合完成开课时展示的综合项目。
3.4 分组教学法的应用。众所周知,学生之间知识水平、操作能力参差不齐,如何在教学中实施差异教学,培养学生良好的计算机素养与实际操作能力,全面地提高学生的整体水平,这已经成为所有计算机教师的共同课题。在此,我认为在实践教学过程中采用分组教学法是一种新颖而有效的教学模式。
例如,本课程的集中实训环节中,按照实验设备组网情况将学生分成若干小组,每个小组都要完成一个完整的项目,如搭建DHCP 服务器、samba 服务器、Apache 服务器、DNS 服务器、E-mail 服务器、FTP服务器等,小组成员分工协作,探讨交流,轮流完成各个服务器配置和测试的工作。最后,教师和同学们一起对各组的项目进行评议。这样不仅能保证每组同学都能得到指导,也能锻炼学生的协同学习和自学能力。实验考核方式也采取小组考核,激发学生集体荣誉感,促使学生共同学习和进步。当然我们学校由于教学设备和学生能力的问题,不能完全做到。强化学生上机操作能力的培养
《Linux 操作系统》是一门实践性很强的课程,众多的命令等待学生上机操作实习。因此,在本课程课堂教学的同时,应注重对学生实验课的教学指导。在上机实验过程中,针对学生上机操作出现的共性问题要及时予以纠正,弥补理论教学上的疏漏。教师应鼓励学生课后在自己电脑上安装虚拟机进行单独练习(对网络、3G班都是这样要求的,但有些学生不能按老师的要求完成),以及网络环境下的客户端/服务器之间的练习,并在课程考核时增加实际操作能力考评成绩在总成绩中所占的比重,采取各种措施强化学生上机操作能力的培养。结束语
基于linux的操作系统实验教学改革研究 篇7
但是通常的操作系统都是一个庞大而复杂的大型软件。例如, IBM公司的IBM360操作系统, 该系统共由700多位来自欧、美各国的软件技术人员参加开发, 历经4年时间才得以基本完成。因此, 操作系统课程在大学本科计算机专业的传统教学中, 经常会出现这样的现象:学生学完这门课程后, 对操作系统的理解、掌握还仅限于用户级的水平, 只能将操作系统当作一个资源管理者使用, 很难达到程序员级的水平, 把操作系统当作是一个与计算机硬件等价的可扩展、可开发的计算平台来使用。如何才能让学生真正学懂、掌握操作系统的体系结构理论, 并通过实验教学得以巩固提高, 为今后的学习、发展打下一个扎实的理论基础。针对这一目标, 我们根据在实验课教学中的经验和体会, 对改革Linux操作系统实验教学模式进行了认真的探讨与研究, 并且在实践中取得了预期的效果。
1 Linux操作系统的特点
Linux操作系统是一个自由的操作系统, 可以免费使用, 遵循GPL声明, 符合POSIX标准, 可以自由修改和传播。而且Linux系统包含了人们希望操作系统拥有的所有功能特性, 这些功能包括真正的多任务、虚拟内存、最快的TCP/IP驱动程序、共享库和多用户支持等。
Linux操作系统还具有强大的网络功能, 具有支持多种硬件设备的特性。由于Linux系统下的驱动程序开发比Windows系统下的驱动程序开发要简单得多, 因此, 开发者可以充分地发挥各种硬件设备的功能。同时Linux核心不仅可以运行在Intel系列PC机上, 还可以运行在Apple系列、DEC系列、MIPS和Motorola6800系列的计算机上。甚至其改进的嵌入式Linux核心还可以运行于手机、家电等设备上。这就为在实验教学课的实验项目选择上提供了广泛的空间。
Linux操作系统在开发模式上也有其鲜明的特点。它采取的是Bazaar“巴扎”模式, 在这种模式下, 程序员在一个软件项目中的作用不再是流水线上的工人, 只是按照“图纸”完成某个零部件的加工工作。程序员变成了独立的实体, 软件以平行排错、分头发展的方式快速演进, 开发人员的集体智慧得到充分发挥, 大大减少了不必要的重复劳动, 并使所开发软件的漏洞能得到及时发现和克服。
2 Linux操作系统实验课程设计
Linux操作系统是一门理论与实践性很强的专业课程。传统的教学模式主要是以理论学习为主, 实验教学只是为验证理论课的相关内容而设立, 所以, 在传统实验教学模式中主要存在以下问题:第一、学生对实验过程不求甚解;第二、学生缺乏对实验的主动思考;第三、没有很好地激发出学生的学习兴趣和创新能力。因此, 我们对原有的实验教学模式进行了改革, 将实验课分成“课程实验”和“综合应用实验”两个层次, 同时在实验进度安排上采用循序渐进的方式, 重视实验过程的具体规范, 突出清晰的实验思路, 并且为每个实验设置思考点, 使学生通过实验教学这个平台积极主动地思考, 激发学生的学习兴趣, 从而提高学生对所学知识的实际应用能力和创新能力。
2.1 课程实验
Linux操作系统课程实验要与理论课同步进行。实验内容是使学生熟悉Linux操作系统环境的用户接口部分, 掌握操作系统的最常用的几十个重要命令和这些命令中的主要选项参数, 掌握系统调用。从而了解操作系统的各部分管理技术, 逐步掌握操作系统的本质, 提高开发自己的系统软件和应用软件的能力。
例如, 在建设操作系统课程的实验环境中, 学生通过自己安装Linux系统来熟悉安装过程, 在熟悉基本的Linux命令的基础上解决一些基本的问题。学生通过对Linux的核心模块的剖析实验, 采用“替换式”实验模式去尝试对该系统的一些功能模块进行修改。如, 用C语言设计和实现将多道程序非抢占式调度内核转换为抢占式内核, 然后通过新生成的简单的、单内核系统进行观察检验。甚至可针对现代操作系统的主要部分来设计几个阶段项目 (如, 线程管理的实现, 多道程序设计, 虚存, 网络等) , 让学生几人一组分别设计实现各个项目, 最后得到一个小的、真正的操作系统。这样使学生在实践中真正体验操作系统的实现技术在实际操作系统中的应用。
(1) 实验项目与实验案例设计1:
实验项目:操作系统安装与用户界面。
实验案例:Linux系统安装与用户界面。
基本思路:加深认识操作系统的地位与作用, 培养学生安装和使用Linux操作系统的能力。
主要步骤:进行硬盘分区, 在主引导区上安装Linux操作系统, 根据所使用计算机的硬件与软件环境对系统进行配置与设置。练习控制台命令使用, 故障判断、查找、排除, 简单编程作业。
实验软件装置:①硬盘管理软件对硬盘进行分区和格式化;②各种版本的Linux安装盘, 提供操作系统代码和相关工具, 进行操作系统安装。
(2) 实验项目与实验案例设计2:
实验项目:进程与子进程。
实验案例:Linux系统的进程与子进程。
基本思路:加深对处理机 (CPU) 管理、单道程序设计与多道程序设计的理解, 了解提高处理机 (CPU) 的使用效率的基本思路和方法。掌握Linux中C语言中多道程序的设计机制的应用。
主要步骤:提出包含有生产者—消费者问题、同步—互斥问题的适用多进程技术解决的应用问题。进行单道程序技术编程、多道程序技术编程, 编译、调试。
实验软件装置:Linux系统的进程与子进程实验工程模版、测试用例文档;GCC环境或其它C语言环境, 提供多道程序设计的支持, 如, 支持fork () 、exit () 等系统调用。
(3) 实验项目与实验案例设计3:
实验项目:线程与子线程。
实验案例:Linux系统的线程与子线程。
基本思路:加深对如何减轻系统开销、减少系统资源占用的理念和思路的理解, 加深对进程与线程区别的理解。掌握Linux系统中C语言多线程机制的应用。
主要步骤:分别提出适用于内核级线程或用户级线程的多线程技术解决的应用问题。在进一步理解Linux为何将线程定义为“执行上下文”的含义的基础上, 进行单线程技术编程、多线程技术编程, 编译、调试。
实验软件装置:Linux系统的线程与子线程实验工程模版、测试用例文档;GCC环境或其它C语言环境, 提供多线程设计的支持, 如, 支持fork () 、clone () 等系统调用, 支持POSIX线程库。
在此实验教学层次中应采用案例教学法, 教师先演示操作一遍, 然后让学生自己重复、调试操作, 以便加深学生的印象。案例教学法可以使用不同章节的内容组合成一个案例, 尽量做到前后联系, 以求融会贯通。如, shell脚本编程, 其内容可以覆盖Linux教材多个章节的内容。通过具体实例的应用可以提高学生的学习积极性, 较快地提高学生的动手能力与理论水平。
2.2 综合应用实验
综合应用实验是在理论课程学习之后安排的综合实践训练。通过一定的综合设计实验, 使学生进一步掌握操作系统的整体框架和内核工作原理, 提高学生对所学知识的应用能力。特别是锻炼提高学生搜集有关资料, 在相关文档的帮助下, 运用Linux的基本知识以及常用的操作命令来解决实际问题的能力。
综合设计以一个实际应用程序系统或实际应用开发项目的运行、开发需求为背景, 以安装操作系统及相关软件包、配置网络、设置远程访问与管理的机制、设置运行环境、数据库的系统配置及安装、构建网络服务器、系统的安全配置等为基本内容, 设计Linux实训案例。
(1) 实验项目与实验案例设计4:
实验项目:TCP/IP网络管理。
实验案例:Linux系统网络服务功能的实现。
基本思路:加深对TCPIP网络管理功能以及基本网络服务概念的理解, 掌握网络编程接口Sockect的用途与用法, 掌握Linux系统的网络管理与Sockect编程操作和相关的数据结构。进而解决一些实际应用问题。
主要步骤:给出用Linux做防火墙、路由器、代理服务器等实际问题。针对每一问题先进行可行性分析, 然后对设计思想、设计目标与系统的整体结构进行详细的规划。在此基础上进行程序的编程、编译、调试, 最终做出一个完整的产品。
实验软件装置:Linux系统网络及相应的编程实验工程模版, 相应的软件包、硬件资源, 测试用例文档等。
(2) 实验项目与实验案例设计5:
实验项目:嵌入式Linux的应用。
实验案例:俄罗斯方块手机游戏设计。
基本思路:进一步加深对Linux操作系统特有的性能、功能和广泛的可用性的理解, 了解嵌入式系统的技术特点和应用前景。学习、理解、掌握嵌入式Linux系统在解决实际生产、生活中的应用问题的广泛用途与用法, 进而提高解决实际应用问题的能力。
主要步骤:根据嵌入式Linux手机游戏开发理论及俄罗斯方块手机游戏的功能要求, 先组织学生进行系统需求分析, 制定出系统目标、开发要求、手机游戏开发流程、设计约束、设计策略、功能需求、界面需求等文档。再进行系统总体设计, 系统模块设计, 详细设计, 如, 初始化模块、自动下移模块、操作响应模块、重绘窗口模块等。再根据制定出的设计要求、系统类结构、模块命名规则、各模块设计方案等进行程序的编程, 编译、测试、运行。最终做出一个完整的产品。
实验软件装置:PXA270开发板硬件资源, Linux嵌入式系统, Linux智能手机操作系统, C++语言, VI (VIM) 编译器, QTOPIA手机版。相应的软件包、硬件资源, 测试用例文档等。
在此实验教学层次中教师要由指导者变为初期参加者, 特别是在对项目进行系统需求分析、可行性分析, 制定设计思想、设计目标与系统整体结构时进行适时引导。在组织结构上将学生分成设计小组, 每个设计小组由3~4人组成。这样既可以布置工作量大、难度大的项目, 又可以在项目执行过程中强制性地培养、锻炼、提高学生的团队协作能力。并可使团队中理论强与动手能力强的同学间相互学习交流, 互取所长, 共同提高。
3 Linux操作系统实验课考核方式
Linux操作系统课是一门实践性很强的课程, 因此, 实验课的考核应在考核成绩中占有较大的比重。建议采用45-45-10的考核方案。即期末理论考试占45%, 实践考核占45% (实验30%, 期末测试15%) , 平时作业占10%。期末理论考试采用闭卷方式, 期末的实践技能测试重点考核学生应用Linux的能力。主要包括系统管理、网络配置、常用服务器的构建和一些常见故障的处理等。
4 Linux操作系统实验课的教学体会和经验
在Linux操作系统实验课教学中通过实际的教学活动, 得到以下几点经验:
1) 由于Linux是一个实际应用的操作系统, 学生们学有目的, 所以, 学习热情高涨, 能较好地理解课程内容。
2) 部分基础好、有兴趣的同学可进一步深入学习, 如, 研究Linux内核、Linux网络应用、嵌入式Linux的应用、Linux应用程序设计等。
3) 教学中的讲授内容应包括Linux系统结构、处理机管理、进程管理、存储管理、文件系统、处理机调度、设备管理、网络管理。
4) 在实验课内容的编排上应注重设计有助于提高学生实际应用能力和操作技巧水平的实验内容, 这样不仅能使学生较快地学会、学懂课程内容, 而且还可以较快地提高学生利用所学知识发现问题和解决问题的能力。
摘要:针对Linux操作系统课程的特点, 阐述了实验课教学模式改革的重要性。通过具体的实验课程案例设计, 重点探讨了如何提高学生的理论与实践结合能力、创新能力及综合素质的方法和途径。
关键词:Linux操作系统,实验教学,教学模式改革,创新能力
参考文献
[1]汤荷美, 董渊, 李莉.Linux基础教程 (1) [M].北京:清华大学出版社, 2001.
[2]杨海鹏, 魏巍.Linux操作系统的教学与实验研究[J].吉林工程技术师范学院学报, 2007 (9) .
[3]王波.Linux网络技术[M].北京:机械工业出版社, 2007.
[4]邓冬梅, 杨铁林.嵌入式系统和Linux[J].计算机与现代化, 2004 (12) .
基于linux的操作系统实验教学改革研究 篇8
关键词:校园网络;嵌入式Linux;技术方案
中图分类号:TP311.52文献标识码:A文章编号:1007-9599 (2011) 05-0000-01
Campus Network System Based on Embedded Linux
Lu Jun
(Tianjin Hexi Environmental Protection Bureau,Tianjin300202,China)
Abstract:The campus network is based on the campus network as the background,combine with teaching,management,and entertainment information based on work,study and living environment.Selection of system design related to the application system was put into the practical effect use,a direct impact on users,Linux is currently favored in the network server operating system,and the Linux operating system's strengths is the strong safety and stability Network function,so in the future development of the network to construct the Linux operating system based on Web services platform is very important.
Keywords:Campus network;Embedded Linux;Technical solutions
教育信息化是指在教育领域运用计算机多媒体和网络信息技术,促进教育的全面改革,使之适应信息化社会对教育发展的新要求。随着经济的发展和国家科教兴国战略的实施,校园网络建设已逐步成为学校的基础建设项目,更成为衡量一个学校教育信息化、现代化的重要标志。
一、嵌入式Linux
(一)嵌入式Linux的定义。Linux是一个成熟而且稳定的操作系统,并且已经得到了广泛的推广。其中嵌入式Linux是一个重要的分支。它是在Linux操作系统的基础上进行修改,这种操作系统能在嵌入式计算机系统上运行。嵌入式Linux操作系统的优点是效果成本免费、极强的可定制性、硬件支持广和运行相对稳定。这些优点使嵌入式Linux得到了广泛应用。
(二)嵌入式Linux系统的特点和应用。Linux应用到嵌入式系统里可以发挥巨大的优势特点,首先,Linux是开放源代码的,每位技术人员都可以利用该技术,这为Linux的推广发挥了极大的作用;其次,Linux的内核小、效率高;第三,Linux是免费的OS。同时可以利用嵌入式系统的特点,不仅可以将系统固化在ROM盘内,还可以提供很多功能,例如升级,系统备份和初始化恢复等。这不仅方便客户使用,还便于管理员的维护。
二、基于嵌入式Linux构建校园网络系统的构成与说明
嵌入式Linux技术校园网络的体系结构是以Linux核心层集群技术为基石,构成的一个方便用户使用、便于管理者管理和操作的操作平台。这个系统可以分为三大模块:控制终端,网络通讯,显示终端。控制终端的作用是进行信息内容的更新、文件和图片的上传和控制媒体操作等。网络通讯是控制终端和显示终端的枢纽,连接两个模块,可以将控制终端的命令和信息传递到显示终端。显示终端的作用是负责响应来自控制终端的控制命令和信息。
总线形拓扑结构和星形拓扑结构是校园网拓扑结构常用的选择,在这里我们选用星型拓扑结构。虽然总线型拓扑有很多优点,比如结构简单、容易安装,但它的可靠性差,一旦电缆出现问题,整个网络系统就会失灵。所以根据学校实际情况,校园网建设采用易于布线、管理和维护的星形拓扑结构方案。因为这考虑到结构化布线、所采用的交换技术以及将来便于向ATM技术过渡等因素。
根据学校的实际情况,为了适应楼宇地理位置、站点和信息流量的均衡分布,实现高速、有效的信息传输,满足主干网和局域网的清晰层次结构,再考虑到结构化布线以及性能价格比,校园网建设选择100Mbps交换式快速以太网技术的二级星型拓扑结构,使其网上信息分层流动,降低了对主干网的带宽压力。
三、构建校园网络系统中所要注意的问题
构建校园网络系统需要注意很多方面,在这里主要介绍以下两个方面:
(一)在“防火墙”计算机上安装Linux操作系统的注意事项。为了正确安装和使用操作系统,我们在安装过程中应该注意以下几点。
1.为了便于系统的安全和升级,进入“System Service”文本框中,选择“network、iptables、sshd、crond和syslog”等必要项。
2.为了防止网络冲突,需要正确填写两块网卡的IP地址和网关信息。
3.在安装时,应选择中文和图形方式进行安装,同时在正常使用时应选择英文和文本方式。
(二)校园网经常会发生IP地址冲突致使用户无法上网,同时也会发生病毒感染等情况导致用户计算机无法正常使用。为了解决这些问题,应采用IP地址和网卡MAC地址绑定,这可以在一定程度上防止以上问题的出现。在Linux操作系统中的实现方法如下。
1.设置成开机自动加载ip-mac文件。
echo arp -f/etc/ip-mac /etc/rc.d/rc.local或手动绑定执行:arp -f/etc/ip-mac。
2.首先要把IP地址和对应网卡MAC地址添加到/etc/ip-mac文件中。然后建立文件:/etc/ip-mac,该文件为IP地址和MAC地址的对应表文件,最后在该文件中写入将要绑定的IP和MAC地址,并使其格式为“ip-mac”。
四、结束语
校园网络系统是校园信息宣传、沟通互动的平台。随着社会信息的飞速发展,校园数字化越来越受到重视,嵌入式Linux操作系统可以很好完成建设校园网络的任务。
参考文献:
[1]吴岳.Linux C程序设计大全[M].北京:清华大学出版社,2009,2
基于linux的操作系统实验教学改革研究 篇9
摘 要:针对非计算机专业学生学习Linux操作系统的教学要求,本文从“Linux操作系统与应用 ”课程教学的教育目标、教学模式、教学方法等方面,对课程教学改革进行了一些有益的探索。提出了基于互动式及任务驱动的教学方法,并对这种方法进行了必要教学实践。教学实践证明这种方法在教学中起到了积极的推动作用,学生能够取得较好的学习效果。
关键词:教学方法 任务驱动 互动式 Linux操作系统
Linux 是一种可以运行在PC机上的免费的类UNIX操作系统,Linux最早是由计算机爱好者Linus Torvalds在1991 年开发出来的。自从Linux 问世以来,一直受到世界的青睐,数万程序员和网络专家为Linux操作系统努力完善,极具影响力。具有优良稳定的性能和良好的安全性,Linux不仅在高端的服务器市场占有很大的份额,而且在桌面和嵌入式领域也得到了广泛应用。
“Linux 操作系统与应用”是一门应用性很强的课程,在高等学校已逐步被列为计算机专业及其相关专业的教学计划。Linux 操作系统的操作命令繁多且每条命令都有一些选项、对于初学的学生记忆比较困难。为了使学生对Linux 操作系统的命令有一个清楚的认识,教学方法上:要注重提高学生的理解能力及培养学生的学习热情,传统授课与多媒体技术相结合;课堂上师生互动,快乐教学。同时注重学生动手能力的培养,课后或上机实验给学生多个Linux操作系统应用的项目任务,让学生或小组选择一个作业任务完成。这样能让学生对Linux操作系统下的相关知识能够较好的掌握和使用,从而可以取得好的学习效果,提高教学质量。
一、教学目标与内容的设计
Linux操作系统是应用性的计算机知识,由于学生学过的计算机知识一般是基于windows系统,初次接触Linux操作系统,很多同学觉得很难,所以在教学目标与内容上我们要始终围绕三个方面来设计。首先,提高学习兴趣,学习操作系统是很枯燥的,特别是Linux操作系统中的命令操作,学生记忆比较困难。所以在授课过程中,当学生掌握了基本操作以后,应该给学生一些有趣的管理任务,让学生去实验,并给予讲解。其次,培养学生学习热情,鼓励学生思考,并多给予表扬。第三,培养学生的学习主动精神,布置层次多样且与实际应用问题紧密结合的实验课题,允许学生自主安排实验内容和进程。大力提倡、积极引导学生组织课外兴趣小组。
由于目前课程教学课时较少,应注意学生自学能力和技能的培养,让学生积极主动地去探索和学习,在整个教学活动中,我们要提倡研究性学习,探究性学习。通过较少的学时教学让学生对Linux操作系统有全面的认识和掌握,培养其在Linux操作系统环境下的实际应用能力。教学内容涉及从怎样在PC机上安装Linux操作系统到Linux系统的系统管理、网络功能应用及程序开发。根据内容的不同,为了达到更好的教学效果,所采用的教学方法会有差异。
Linux操作系统的操作命令繁多,而且每条命令都有一些选项,学生记忆比较困难。因此,在教学时根据教学内容把这些命令分类,以便于学生记忆操作命令。所以在内容上安排以下内容:(1)Linux基本知识及安装操作命令;(2)文件系统基本知识及操作命令;(3)系统管理知识及操作命令;(4)软件安装及系统配置操作;(5) Shell脚本及操作;(6)程序开发及方法;(7)网络服务配置及操作。这些内容受课时的现在基本限于基础知识,根据学生专业的差异选择某几个内容作较深入的教学和练习。
二、教学方法的设计与改革
1、多媒体教学与网络应用
Linux操作系统的学习倾向于系统管理与应用,并不涉及太多的理论及公式,而知识点太多,可借助于多媒体进行教学。多媒体教学比传统教学的模式具有更大的优势,多媒体教学把枯燥的计算机内容转化为生动的图像、交互和视听媒体,把教学内容直观化,有利于学生更好地接受知识。Linux操作系统中涉及到很多命令,这些命令常伴有很多参数选项,学习和记忆非常困难,在教学中一般采用现场命令操作方式进行讲解和练习,而教室的微机上一般都不允许安装Linux操作系统,我们可借助于网络服务连接到安装Linux操作系统的服务器上,把自己的微机作为虚拟终端,访问和操作服务器,这样既不影响多媒体演示,同时可进行Linux操作系统现场操作演示。如系统管理知识的教学可以进行多媒体演示内容,同时在服务器上进行用户、设备及软件的管理操作,这样形象直观,有利于同学的记忆和学习。同时布置小作业,让同学在课堂上进行上机练习,可以发现很多问题和不足,并能及时的进行讲解和补充。
2、任务驱动实验教学
运用任务驱动教学法于Linux操作系统教学, 在形式上是: 提出任务→师生共同分析完成任务的方法和步骤→适当讲解或自学或协作学习→完成任务实践→交流或归纳。
首先要确定好任务, 任务设计是关键环节, 课堂教学中, 教师和学生通过创设的问题情景, 把所要学习的知识巧妙地隐含在一个个任务当中, 根据学生的知识、能力基础和培养目标,结合任务驱动教学法的项目任务,设置原则使学生完成任务达到掌握知识的目的,选取的项目任务要有实际的应用价值,设置“Linux 操作系统”的项目任务如下:
1) 用shell脚本系统任务定制,日常系统维护;
2) 用shell脚本管理用户及数据备份;
3) 基于Makefile实现某一功能(如排序、数据库)程序开发;
4) 在局域网中实现DHCP功能,要求IP绑定一台客户机,供企业的机房管理员使用;
5) 在局域网中实现DNS功能,要求分别能解析以下域名:财务处、科技处、教务处、研究生
院;
6) 为院系建立MAIL服务器(一台机器4服务),要求能通过Outlook收发各服务器的邮件;
7) 为机房建立FTP服务器,为每个学生创建一个用户,分别属于各班级群组,这些用户可以允许
3、互动教学
在教学过程中,力求以生动形象的语言,讲授知识,活跃课堂气氛,以改过去学生被动学习、课堂气氛死气沉沉的`局。针对大多数学生对实际应用(如系统安全、网络服务)知识比较感兴趣的特点,列举一些现实中的例子,理论联系实际。在实例分析过程中,以启发的方式进行,先设置一些如多用户、访问权限、文件相互传输等问题,促使学生大胆猜想,踊跃回答所提出的问题,并引导学生有一个正确的思路;之后再解答实际工作中是怎样处理类似问题的。一般要遵循“设疑――思考――提示――解答”的思维过程,通过教学互动,实现课堂上的师生互动,以提高课堂教学的质量。使学生更好地掌握Linux操作系统的知识并能灵活应用。
三、课程考试方式的转变
传统的试卷笔试方法不能完全地适应计算机应用课程的教学要求,更无法产生引导学生积极思考、自主学习的作用。以前的考试方法,大多数要求学生对课本内容死记硬背,所以高分低能的学生时有发生。鉴于“Linux操作系统与应用”课程的特点,以考察学生实际动手能力为主要目标,评价学生成绩的方式采区笔试和实际操作相结合的模式。笔试内容集中在一些基本常识和概念,同时增加一部分常用命令。实际操作测试主要结合任务驱动教学的项目,在上机实验课上根据其完成的情况考查其对知识的掌握程度。最后将两项考核内容按一定比例给学生成绩。
综上所述,本文针对“Linux操作系统与应用”课程的特点,从教学目标及课程内容、教学方法以及考试方式等方面进行了阐述。重点要根据学生的专业不同选择相应的内容,并重点讲解和练习,同时注重自学能力的培养;其次,设计一定实际应用的任务驱动,提高学生动手能力。采用笔试和实际操作相结合的方式,来考核学生对本门课程掌握的程度。
参考文献:
[1]苑益军、张致付.浅谈“大型地震资料处理软件系统”课程的教学与实践[J].高等教育.
[2]黄丽娜等.Red Hat Linux 9.0基础教程[M]. 清华大学出版社.2007
[3]谭浩强.高等学校计算机基础教育改革的新阶段[J].计算机教育.,(12)
[4]谢幼如.新型教学模式的探索[M].北京师范大学出版社,.
【基于linux的操作系统实验教学改革研究】推荐阅读:
基于互联网遥操作研究09-15
基于MATLABSimulink的电力系统仿真实验09-25
Linux操作系统研究论文08-16
操作系统实验教学研究06-24
基于建构主义的大学物理实验教学设计探讨07-08