前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇实验室管理系统方案范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
引言
内存管理机制是嵌入式系统研究中的一个重点和难点的问题,它必须满足以下几个特性:
①实时性。从实时性的角度出发,要求内存分配过程要尽可能地快。因此,在嵌入式系统中,不可能采用通用操作系统的一些复杂而完善的内存分配策略,一般没有段页式的虚存管理机制;而是采用简单、快速的内存分配方案,其分配方案也因程序对实时性的要求而异。例如,VxWorks系统采用简单的“首次适应,立即聚合”方法;VRTX中采用多个固定尺寸存储块的binning方案。
②可靠性。嵌入式系统应用的环境千变万化,在有些特定情况下,对系统的可靠性要求极高,内存分配的请求必须得到满足,如果分配失败则可能会带来灾难性的后果。比如,飞机的燃油检测系统。在飞机飞行过程中,如果燃料发生泄漏,系统应该立即检测到,并发出相应的警报等待飞行员及时处理。如果因为内存分配失败而不能相应地操作,就可能发生机毁人亡的事故。
③高效性。内存分配要尽可能地减少浪费。不可能为了保证满足所有的内存分配请求而将内存配置得很大。一方面,嵌入式系统对成本的要求使得内存在其中只是一种很有限的资源;另一方面,即使不考虑成本的因素,系统硬件环境有限的空间和有限的板面积决定了可配置的内存容量是很有限的。
针对以上三个约束条件,市场上主流的嵌入式操作系统,如VxWorks、嵌入式Linux等均提出了一套有效的解决方案;但是,这些系统只提供了应用开发的接口,其底层的实现方案不可见。本文以开源的嵌入式操作系统RTEMS为例,分析了嵌入式系统内存管理所面临的问题,研究了其底层实现的解决方案。一般的嵌入式系统中最基本的内存管理方案有两种——静态分配和动态分配。
1 静态分配与动态分配
静态分配是指在编译或链接时将程序所需的内存空间分配好。采用这种分配方案的程序段,其大小一般在编译时就能够确定;而动态分配是指系统运行时根据需要动态地分配内存。这两种策略的选取一直是嵌入式系统设计中一个令人头痛的问题。
一般的嵌入式系统都支持静态分配,因为像中断向量表、操作系统映像这类的程序段,其程序大小在编译和链接时是可以确定的。而是否支持动态分配主要基于两个方面的考虑:首先是实时性和可靠性的要求,其次是成本的要求。对于实时性和可靠性要求极高的系统(硬实时系统),不允许延时或者分配失效,必须采用静态内存分配,如航天器上的嵌入式系统多采用静态内存分配。除了基于成本的考虑外,用于汽车电子和工业自动化领域的一些系统也没有动态内存分配,比如WindRiver著名的OSEKWorks系统。然而,仅仅采用静态分配,使系统失去了灵活性。必须在设计阶段就预先知道所需要的内存并对之作出分配;必须在设计阶段就预先考虑到所有可能的情况,因为一旦出现没有考虑到的情况,正在运行的系统就无法处理。这样的分配方案必然导致很大的浪费。因为内存分配必须按照最坏情况进行最大的配置,而实际运行时很可能只使用其中的一小部分;而且在硬件平台不变的情况下,不可能灵活地为系统添加功能,从而使得系统的升级变得困难。
虽然动态内存分配会导致响应和执行时间不确定、内存碎片等问题,但是它的实现机制灵活,给程序实现带来极大的方便,有的应用环境中动态内存分配甚至最必不可少的。比如,嵌入式系统中使用的网络协议栈,在特定的平台下,为了比较灵活地调整系统的功能,在系统中各个功能之间作出权衡,必须支持动态内存分配。例如,为了使系统能够及时地在支持的VLAN数和支持的路由条目数之间作出调整,或者为了使不同的版本支持不同的协议,类似于malloc和free这类的函数是必不可少的。
大多数的系统是硬实时和软实时综合。系统中的一部分任务有严格的时限要求,而另一部分只是要求完成得越快越好。按照RMS(Rate Monotonous Scheduling)理论,这样的系统必须采用抢先式任务调度;而在这样的系统中,就可以采用动态内存分配来满足部分对可靠性和实时性要求不高的任务。采用动态内存分配的最大好处就是给设计得很大的灵活性,可以方便地将原来运行于非嵌入式操作系统的程序移植到嵌入式系统中。
2 RTEMS内存管现机制
RTEMS(The Rael Time Executive for Multi-processor Systems)是一个基于多处理器的,能够运行在不同处理器平台上的嵌入式操作系统。其应用领域十分广泛,包括航空航天设备(导弹、飞机控制系统),网络设备(路由器、交换 机),掌上设备(电子阅读器、PDA)等。针对不同领域应用的需求差异,该系统的内存管理提供了比较完善的机制。同其它常见的嵌入式系统一样,RTEMS不支持虚拟存储管理,不支持复杂的段页式的保护机制,而采用线性编址方式,即逻辑地址和物理地址一一对应的平面模式,同时支持静态和动态两种管理模式。在系统正常运行时,内存中的映像如图1所示。
图1中假设内破大小为2MB。在特定的应用中,中断表和RTEMS的映像所占用的内存空间大小是个定值,采用静态的内存分配机制,在编译时就可以确定其大小。堆栈区和系统内存区则采取动态分配机制,在系统运行时可以根据需要自动调整其大小。
3 RTEMS动态内存管理
RTEMS动态内存管理机制提供两种分区机制,Partition和Region。
Partition分区管理用于固定大小内存块的分配,Region分区管理 用于可变大小内存块的分配。
3.1 固定长度分区管理
RTEMS定义的固定长度的分区(Partition)是一段连续的内存空间。它可以被划分成固定长度的内存块(buffer),允许应用在创建分区时配置分区的大小和内存块的大小,要求分区的大小是内存块的整数倍。例如,应用创建一个大小为1024字节的分区,内存块为256字节,如图2所示。
创建分区时,RTEMS根据分区和内存块的大小,形成一个空闲内存块的双向链表。当从分区中申请内存块时,按照空闲内存块链表的顺序分配。如果空闲空间不足,调用者不会被阻塞,而是获得一个空指针,以确保申请内存调用的时间确定性。释放内存块时,将该内存块挂在空闲内存块链表的链尾。分区被删除时将释放出这段连续的内存空间。
RTEMS的分区管理机制提供以下API:
rtems_partition_create 创建一个分区
rtems_partition_ident 获得分区标识号
rtems_partition_deldet1 删除一个分区
rtems_partition_get_buffer 申请一个内存块
rtems_partition_return_buffer 释放一个内存块
RTEMS的固定长度分区管理算法有以下特色:
①系统创建的分区数目可在运行时动态增减。
②内存块的控制结构所占用的内存空间在该内存块被分配出去时会变为可用空间,不会影响该内存块实际可用的大小;而在回收时控制块会自动生成,这一点使得分区管理的系统开销对用户的影响为零。
③在分区的内存块中还可以再定义分区,这就意味着内存块可以很容易地被分为子内存块,提高了分区管理的灵活性。
3.2 可变长度分区管理
RTEMS定义的可变长度的分区(Region)是一段连续的、大小可配置的内存空间,可以被划分成很多大小不一的段(Segment)。创建分区时要指定一个分配单元,称为页。段的大小是页的倍数,如果应用程序在申请段时,给出的大小不是页的倍数,内核会将其调整为页的倍数。例如,应用从而大小为512个字节的分区中申请一个大小为700字节的段,那么,内核实际分配的段大小为1024字节。
创建Region分区时,RTEMS根据分区大小和页小建立分区的控制结构和段的控制结构。在创建之初,只有一个空闲段,其大小为分区的大小减去控制结构的内存开销。随着应用申请、释放段的操作不断进行,分区中形成用双向链表链接起来的空闲段链。当从分区中分配段时,依据首次适应算法(即第一个满足要求的空闲段就作为分配结果)查看空闲段链中是否存在合适的段。当把段释放回分区时,该段被挂在空闲段链的链尾,并且如果空闲段链中有与此段相邻的段,则将其合并成一个更大的空闲段。RTEMS在段的控制块中设置一个标志位表示其被使用的情况。标志位为1表示该段正被使用,标志位为0表示该段空闲。图3是一个分区中具有两个空闲段和一个正被使用的段的示例。
空闲段和已经使用段的控制结构有所不同,如图4所示。
RTEMS的分区管理机制提供以下API:
rtems_region_create 创建一个分区
rtems_region_ident 获得分区的标识
rtems_region_delete 删除一个分区
rtems_region_extend 扩展一个分区
rtems_region_get_segment 申请一个段
rtems_region_return_segment 释放一个段
RTEMS的可变长度分区管理算法有以下特色:
①系统创建的分区数目可在运行时动态增加;
②段的控制结构在该段被分配出去后会减小,而在回收到控制快会自动恢复大小。这一点使得分区管理的系统开销降低到最小;
③时应用程序发现一个分区的内存空间不够使用时,可以调用retms_region_extend函数(API)扩展该分区的大小。
④当程序要求从某个分区获取分段而未成功时,可以立即返回,也可以采取多种等待策略。等待策略包括优先级等待、FIFO等待。在FIFO等待策略中又可分为有限等待和无限等待。
在动态可变长度内存管理的基础上,RTEMS还提供了Malloc/free等标准的C函数。在使用Malloc/free等函数时应注意以下几个方面的限制:
①因为内存分区是一种临界资源,由信号量保护,使用Malloc会导致当前调用挂起,因此它不能用于中断服务程序。
②因为进行内存分配需要执行查找算法,其执行时间与系统当前的内存使用情况相关,具有不确定性,因此对于有规定时限的操作是不适宜的。
③由于采用简单的首次适应算法,容易导致系统中存在大量的内存碎片,降低内存使用效率和系统性能。
关键词 课程体系;职业技能;校企合作
中图分类号:G712 文献标识码:B 文章编号:1671-489X(2012)18-0055-02
自2008年我国高职院校开设网络系统管理专业以来,其专业定位、培养目标、课程体系结构等均不很成熟,各学院对该专业的认识有很大的差异。因此,德州职业技术学院在2008年申报网络系统管理专业后,就开始对网络系统管理专业的人才培养方案进行研究和实践。
1 找准专业定位,确定培养目标
高职教育培养的是高技能应用型人才,其专业具有较强的职业定向性和针对性,这就是以服务为宗旨、以市场为导向、以职业岗位为依据、以技术含量为参数、以学科专业的交叉复合来把握专业定位的原则。
经过几年实践,把网络系统管理专业定位在面向区域经济发展和信息系统集成、信息安全产品和应用软件开发、信息工程监理、IT产品销售与服务企业及其他企事业单位信息技术部门生产、服务及管理第一线,培养从事网络建设、管理、应用开发与技术服务工作,具有职业生涯发展基础的高素质、高技能专门人才。
2 设计符合培养目标的课程体系
为满足社会对网络系统管理专业人才的需求,保证高职网络系统管理专业的培养目标的实现,建立起适合当前状况的专业课程体系结构,如图1所示。
2.1 两类必修课程
在网络系统管理专业的课程体系中,职业公共必修课和职业能力必修课构成整个课程体系的两大坚实基础。“两课”、法律、体育课程的开设力图使学生树立正确的人生观、世界观,培养良好的思想和身体素质。数学课程没有必要学得太深,可以根据计算机专业的要求和学生的接受能力灵活调整。外语教学是非常重要的,在设备的操作和调试中会遇到大量的英语词汇,因而英语教学贯穿始终。另外开设IT职业英语,对其在工作中的应用进行强化,为学生今后的发展打下基础。
而职业能力必修课是学习本专业的立足之本,其设置应该认真探讨。哪些课程对于本专业来说是必要的基础课?应该掌握到什么程度?如何进行课程的整合,并合理安排每一门课的内容?综合考虑网络系统管理专业人才的需求和应用状况,最终确定包括计算机基础类、网络编程实现类和系统管理与维护类的专业技术基础课的课程体系。尽量少讲纯粹的理论,用专业技能学习是否需要作为衡量技术基础课开设的依据。另外,还以讲座、报告或参观的形式,让学生在入学后了解培养目标,了解他们将要从事工作的性质、岗位特征、发展方向等,进而有目的、有选择地进行学习。
2.2 三个专业方向
在第一阶段基础课之后,根据就业方向的不同划分网络规划与施工方向、网络管理与维护方向、网络编程应用开发方向的专业学习课程体系,学生可以根据自己的兴趣选择某一方面的学习。
网络设计与实施方向重点培养学生的网络工程项目的简单设计与实施能力,通过对网络综合布线技术、局域网组建技术、网络互联技术及网络设备的配置调试等知识的学习,使学生能胜任网络施工管理及简单的网络方案设计等工作岗位。
网络管理方向侧重培养学生对网络软环境的管理能力,要求学生不仅要熟悉Win2003 Server的网络管理方法,更要熟悉Linux操作系统以及Unix系统,具有在这些真正的网络操作系统下配置、管理及实施网络服务功能的能力;同时,要熟悉各种网络环境下基本的安全防范方法和安全实施技术,这样才能胜任网络管理员的工作岗位。
网络编程方向是为了适应社会对网站建设、网页设计、网络程序编写人员的岗位需求而设置的。网络编程类课程开设为两条主线的教学,一条是数据库、VB、Java编程技术,另一条是网页编程(静态、动态以及多媒体技术),学生可以灵活选择。
2.3 四项专业实训
以技能培养为重点的高职网络系统管理专业需要大量的实践技能训练,各专业课程的实践教学时数都达到一半甚至更多。此外,在第三、四、五学期还安排了集中的独立实践课以进行专门的技能训练,综合运用多种知识,锻炼学生分析问题、解决问题的能力,也培养团队协作精神。而网络编程实训是对有志于网络编程的学生的一次很好的锻炼,通过完成一个模拟项目,不仅让学生感受到做项目的全过程和乐趣,更重要的是在参与开发的过程中学会解决问题的方法,而这才是在以后的工作中最重要的。
2.4 实施“教学做”一体化教学模式
在课程教学过程中,网络专业依托功能配套、技术先进的校内实训环境,遵循“技能是学和练而不是教出来”的人才培养理念,将专业课程安排在实训室讲授,形成师生交流互动新模式。教师理论讲授中穿插技能演示,让学生的理论学习与技能模仿、强化密不可分,从而有效集中学生注意力,及时熟悉并掌握所学技能,最大限度发挥实训室的服务教学功效。
2.5 建立以学生能力水平为主要指标的专业技能评价方法
教学质量监控与评价方面,强调多层面、多难度、多方式和多层标准,学生质量评价以能力水平为主要指标,重视综合素质与知识运用的考核,采用多标化的考核方式。
2.6 培养双师型师资队伍,构建职业教学团队
经过几年的建设,已经塑造了一支教学经验丰富、教学质量高、实践能力强、适应高职教育的双师型师资队伍。一是采取“培养和培训”的方法,借助于行业、企业等资源,安排教师进行培训,将教师深入企业一线的经历纳入专业技术职务评聘考核的重要内容。二是采用“积多成少”的方式,从企业聘请一流的技术骨干,实质性地投入到教学和科研中来。
2.7 深化校企合作,引入行业认证和职业资格证书,实施“双证书”教育
本专业与思科网络和趋势安全签署合作协议,进行课程置换与整合,把先进的企业理念和计算机技术融入教学体系中,根据市场需求规格培养对口人才,使教学内容同企业的岗位需求密切结合,先后与多家企业签订合作协议,为学生提供生产实践机会,营造工学结合的环境和氛围。
推行职业资格证书制,要求本专业学生必须取得至少一个职业资格证书(专业技能证书如Cisco CCNA网络工程师认证、人力资源和社会保障部网络工程师、信息产业部网络工程师等)。
3 结束语
经过几年的实践,人才培养方案已初见成效,毕业生受到用人单位的好评,同时校内外实践教学条件不断完善,人才培养方案不断优化。人才培养模式的创新,也推动教学改革的不断深入,形成鲜明的办学特色和良好的社会声誉。
参考文献
[1]姜腊林,易建勋,陈倩诒,等.网络工程专业培养方案的研究与实践[J].高等教育研究学报,2005,28(3):67-69.
[2]孙涌,孙宏伟,蔡学军.高职院校IT类专业内涵定位研究与实践[J].中国职业技术教育,2007(1):16-17.
[3]吕明娥.计算机网络技术专业人才培养方案的研究与实践[J].中国电力教育,2009(12):17-18.
关键词:SOA架构 实验室信息管理系统 解决方案
中文分类号:TP39 文献标识码:A 文章编号:1674-098X(2013)05(b)-0105-02
面向服务架构(service-oriented architecture,SOA)是一种组件模型,它将软件整体分解为不同的、小的逻辑单元,这些逻辑单元既可以组成一个完整的业务逻辑,也可以相对独立的分布式部署。SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。SOA架构中的各种组件的开发、部署形式帮助系统架构者以更迅速、更可靠、更具重用性架构整个业务系统。作为一个灵活、可扩展的框架,总的来说SOA的核心价值在于:灵活、快速、可重用和适应性强。
在移动互联领域,依托于网站资源所开发的各种移动平台上的Apps在近几年中逐渐增加,不断改变着人们对互联网资源的使用习惯。许多企业在无纸化办公的实现中采用了SOA架构,通过总体的SOA解决方案取得了成功。这些都不断的推动着SOA的发展,在SOA架构日益成熟及其实现技术多样化的今天,其带来的新特性让互联网应用在近5年间发生了巨大变化。但反观现在的高校信息化系统建设,基本还是清一色的B/S架构,呆板的业务流程,毫无灵活性可言。作者以本校实验室信息管理系统的设计为例,探讨采用SOA架构为高校信息管理系统带来的新功能和在实验室信息管理系统实现SOA架构的可能性。
1 传统单一的B/S或C/S架构实验室信息管理系统的局限性
传统架构的实验室信息管理系统的局限性,在实际的使用中反映为软件模块设计更新跟不上业务更新以及无法适应所有应用情景。具体来说,主要体现在以下3个方面。
(1)传统架构的实验室信息管理系统毫无灵活性可言。在传统的以功能模块为基础所开发的实验室信息管理系统里,开发的模式一般以一个模块对应一种业务,把所有模块集成在一起,再用权限管理区分用户对模块的使用权力。这种管理系统在管理体系本身或者业务流程发生了改变就意味着整个模块要进行重写,以至于要对整个系统进行大的修改,这无疑是个浩大的工程。在高校实验室管理系统不断改进以适应快速发展的今天,管理模式和业务流程的更改是常见的,因此管理软件的灵活性显得尤为重要。
(2)传统架构的实验室信息管理系统客户端使用的技术架构是单一的。传统的管理系统都是采用单一的软件架构,从早期的C/S架构到后来为了解决兼容性以及易用性所使用的B/S架构,都存在着各自的局限性和在部分场景中的不适用性。比如教师进行实验室使用记录登记,要尽量做到方便快捷,这种情景下无疑使用窗口软件要比使用网页合适;而在等级记录管理端,需要对记录进行增删改操作,需要以图形化的方式展示实验室每周的使用情况,这时无疑用网页模式要优于用窗口软件的模式。因此,针对不同的使用场景选用不同的软件开发技术是对实验室信息管理来说十分重要。
(3)传统架构的实验室信息管理系统不能为现场工作提供信息支持,实验管理人员在完成实际的工作后如果要进行工作记录就必须回到电脑上对自己的工作进行登记,这种软件的使用方式是工作记录式的,能为工作管理提供服务,但不能在现场工作过程中提供信息支持和查询服务,而现场工作经常需要对设备信息进行查询。因此给现场工作提供信息支持对于实验室管理系统来说是不可缺少的组成部分,而这也是传统架构的实验室信息管理系统很难做到的功能。
2 采用SOA架构的实验室管理系统的优点
基于SOA架构的实验室管理系统可以较好地解决以上所提出的问题。切实做到了按需开发客户端,在业务流程发生改变时缩短开发时间以及利用移动设备的功能更好的拓展管理系统的应用。
(1)可以根据不同的情况灵活地选择业务的构成。具体是指,在开发时可以更灵活的根据岗位职能的实际需求来构造不同的客户端,这样不仅避免了客户端因功能模块的堆积而变得过分臃肿,也相应的减轻了因权限问题所造成的设计和开发上的负担。在管理模式和业务流程发生更改时,对于SOA架构的系统来说维护量要比传统系统小,因为服务和实际业务的分离,并且可以重用所有当前的服务,所以当业务或管理模式发生改变的时候,只需要更改相应的客户端就可以,并不涉及其他的模块和核心服务。
(2)客户端可以采用不同的技术手段方式来建立,例如客户端是用FLEX技术的,而服务端使用PHP技术,他们之间并不存在沟通的障碍,仍然可以正常互相通信。这给客户端开发带来了很大的灵活性,应对不同的场景采用不同的技术,让客户端可以适用于一些特定的场景。比如适合用网页形式的情景和适合用窗口软件形式的情景,在SOA框架中就可以共同存在而不增加额外的开发成本。
(3)利用移动设备的功能来扩展系统的应用范围。把客户端开发到移动设备平台上,包括智能手机和平板设备,可以使实验室信息系统随实验员带到工作现场。在移动设备上使用实验室管理系统,使得系统和移动设备可以结合起来,通过包括摄像头等移动设备上提供的功能,给实验员在现场工作中查询相关记录信息提供了条件,还可以通过这个平台获取各种信息,做到信息支持的效果;并且可以在现场进行登记记录的作业,可以更高效、更准确的记录下现场的情况。
综上所述,可以看出使用SOA架构的实验室信息系统给我们带来了包括软件开发上的便利,系统平台搭建的灵活,以及在移动平台上开发和使用管理系统的新思路。因此,在实验室信息系统中引入SOA架构是非常有意义以及有必要的。
3 基于SOA架构的实验室信息管理系统的设计
系统基于对本校实验室管理的流程进行服务和业务的设计。服务是通过对业务的归纳和分析来设计,业务是针对不同的职能对象来设计的。具体来说,业务被分为,实验室使用管理,设备维修管理,基础数据管理和数据统计情况展示4个部分组成。
实验室使用管理部分。其分为课室登记端和管理端两部分,课室登记端配置在每个实验室的教师计算机上,由任课老师进行登记,收集实验课的基本使用情况,在没有计算机的课室,由管理员代为填写,软件采用Adobe Air平台开发,可以在不同的系统平台下使用,收集的数据以统一的格式记录在数据库中;管理端因为交互操作较多,并且需要对数据进行图表化转变,所以采用B/S模式,管理员可以通过系统界面以图形的形式在日程表上查看实验室的使用情况,并可以对相关记录进行维护。
设备维修管理部分。这部分业务有手机平台以及网页平台两种客户端,两种客户端功能相同,都是对维修情况进行记录。不同点在于,网页平台采用传统的表单设计,而手机平台借助手机的摄像头对设备编号二维码的扫描直接对设备信息进行读取(需要无线网络支持),使得管理员的现场维修记录的无纸化变为了可能。
基础数据管理部分。主要业务是对实验室和实验室设备的基本情况和动态情况的记录和管理。客户端同样分为网页平台及手机平台两种客户端,但实现的功能有所不同,手机客户端主要是用以记录个别设备的动态情况,比如某一设备的借调、归还、报废等,同样是应用了二维码扫描技术。而网页平台客户端的功能主要是实验室基础信息的维护,设备信息及情况的批量更改,和手机平台客户端形成有效的互补,突出各自平台的长处。
数据统计情况展示部分。这部分业务主要是以各种数据为基础,用图表的形式展现出来,直观的展示数据所反映的情况。其客户端采用Adobe Air平台,用其丰富的图形资源来展示图表。现阶段应用的图表主要包括了,基于各个实验室人时数统计的数据所形成的图表有:《实验室使用情况月表》、《不同系部实验室使用情况表》、《实验室使用情况对比表》;基于维修情况数据所形成的图表有:《实验室设备完好率表》。这些图表是制定实验室建设和调整的有力依据。
所有的这些客户端都是依托于同一个核心服务以及数据库,有效的保证了数据的统一。并且做到了在同一个平台下多功能模块的单点登录,实际上所有平台的验证策略都是相同的,通过对身份以及身份对应的角色进行判断来选择加载的功能模块以及可以编辑的数据范围(如图1)。
4 结语
该文以一个实际的SOA架构应用为基础,分析了SOA架构的引用给软件开发和应用方式上带来的新思路和新方向。从灵活性、扩展性以及应用平台的丰富性上阐述了SOA架构的软件对比传统软件的优势所在,并且发现在开发新的业务时服务的重用给开发效率带来的很大的提高,有效缩短了开发进程。
但是,从软件实施的现阶段看来,SOA架构最大的不足就是对于服务及网络的依赖性,以及对于网络的稳定性和托管服务的服务器性能要求都比较高。尤其是对于网络,有很多不可预见性的问题,这些都影响着软件系统的健壮性。总体来说,优化网络结构、安排冗余主机以及合理地配置服务器是解决以上问题的一个方向。
该文所涉及的实验室信息管理项目已在本校中使用,并取得了一定的管理效益,目前正在进一步的完善和功能的扩展中。对于尚未采用实验室信息化管理系统以及准备引入SOA架构改造信息化管理系统的部门起到一定的启示作用。
参考文献
[1] 徐文静.SOA架构多系统整合办公系统解决方案[J].价值工程,2013(1).
[2] 魏强,金芝,李戈,等.物联网服务发现初探:传统 SOA的可行性和局限性[J].计算机科学与探索,2013(2).
【关键词】新课程改革;实验室;信息;管理系统
教育部在2003年4月颁布的《普通高中课程标准(实验)》和《普通高中课程方案(实验)》中明确指出中国教育要“适应时展的需要”,“大力推进创新”,教育观念要“根据时展需要及时调整、更新”。作为普通高中的课程组成部分,实验室管理亦应如此。
一、实验室管理的概念与现状研究
实验室课程是普通高中课程不可或缺的组成部分,对高中学生学习的重要性不容置疑。其地位决定其“既要有丰富的资源,又要有先进的管理体系,这样才能成为学生‘最积极、最富有创造性的区域’的最佳空间。”①其将实验室的仪器设备、日常运作等要素以计算机网络为中介进行连接,利用科学的管理思想和先进的数据库信息技术,实现对实验室的全方位管理,从预约、教学至量化考核,达到“数据网络化共享、无纸化记录与办公、资源与成本管理以及人员的量化考核等,为实验室管理水平的整体提高提供先进的技术支持。”②
基于数据库信息技术的实验室管理系统目前在普通高中的普及程度较低。通过对五所高中的理科教师与学生进行抽样性的问卷调查与实地访谈显示,教师与学生对实验室进行信息化管理大多持赞成态度,教师普遍认为实验室教学能是教学中很重要的一环;高中教师与学生对是否需要对实验室进行信息化管理,95%的师生都认为需要;其中超过4成的师生认为非常需要。而在现实教学与学习中,实验室信息化管理基本处于空白。普通高中实验室配备信息管理系统的比例非常之低,仅达到12%。
二、实验室管理系统设计的理论支撑
教育部2003年颁发的《普通高中课程方案(实验)》中指出了高中课程内容及其相关内容应遵从的基本原则。其中,信息技术是重要的组成因素。学生对信息技术的了解与掌握超出了时代的预料,若脱离信息技术,坚持传统理念不做任何改变,教学势必难有长足的发展。
与我国新课程改革最为契合的理论为建构主义。建构主义强调以学生为中心,强调强调利用各种信息资源来支持“学”。这就与我国课程改革的要求相吻合,为实验室信息建设提供了理论上的支持。
三、实验室管理系统设计的技术支撑
(一)系统开发平台:Windows 7 professional
网络操作系统是网站软件平台的核心,它决定了网络系统的整体水平,同时也决定了应用及技术发展方向。Windows 7 professional 是在Windows 2000基础上发展起来的32/64位操作系统,它适用于几乎所有的硬件环境,有超强的硬件兼容性,价格较为低廉。
(二)开发模式:B/S
目前使用较为广泛的开发模式为B/S(Browser/Server)模式。通过B/S结构,用户界面利用浏览器完成,主要事务逻辑在服务器端完成,降低了使用难度,减少了开发与维护成本,提高了运行效率。
四、实验室管理系统的设计
(一)层次设定
一般而言,实验室中需要有三类人员,其一是教师。教师在信息平台中扮演着重要的角色,课程内容与课程时间,评价学生的实验过程与结果是教师的职责与权利。其二为学生。学生模块需要有学生资料管理,如所属班级、课程开展、完成实验数量等。另外,何时进行何种课程的实验课,实验课的成绩等,也可在系统中查询得知。实验室管理系统的另一个成员是管理员。管理员功能是实验室管理系统的核心功能模块。管理员的职能很多:设置系统内教师、学生的各种信息;管理实验室设备,设置实验室课程;进行实验室权限管理,处理意见及留言管理。
(二)界面设置
由于实验教师、管理员与学生都非专业网络技术人员,界面设置应具备简单明了的特征。如登陆界面:
图1:实验室管理系统登陆页面
登陆之后的模块显示同样需要具备这样的特征,以学生登陆之后的界面为例:
图2:学生信息界面
依此类推,教师与管理员按照系统设置的层次结构及其所具备的权限,应该有相应的简单明了又简约完备的界面。
(三)数据库设计
在设计数据表时,应将以下问题纳入考虑范围:规范性、合理性、真实性。实验室数据库至少包括以下内容:
表1:数据库内容
用户注册表:login
实验室基本表:labinfo
班级表:bas_class
实验教师表:teacher_info
学生表:student
实验设备表:equip_info
成绩表:score
实验预约表:reservation
实验记录表:record
实验教学表:lab_teach
课程表:bas_course
预约回复表:reservation -reply
实验室布局表:lab_room
五、实验室管理系统相关功能的设计
在系统规划完成后,需要有编程的介入,即信息管理系统的建立需要有相关代码。这些代码需要由专业的网络技术人员进行编写。以管理员模块为例,管理员需要管理学生与教师的登陆等各项信息。这些信息的产生即需要编写一段程序。编码因篇幅所限,不一一书写。系统编码在系统建立至维护都是存在的,在编码完成建立后,还需要一定的专业人员利用专业知识修复系统漏洞,防止其遭受网络攻击。
六、小结
本文研究与设计的实验室信息管理系统是基于Windows 7professional开发平台和B/S的开发模式,通过分层设定结构,数据库的设计,简明界面的创立等途径建立起来的。这种实验室信息管理系统集实验室预约、课程安排、学生评价管理、教师业绩考评等于一体。此系统功能完备,操作简单,具备人性化发展特点,能满足学校对实验室进行管理的业务需求,优化了实验室的工作流程,更新了实验室建设的理念,符合潮流的发展与时代的要求。由于笔者本身并非专业性网络人员,目前省内也未有类似的信息管理系统,故而在颇多方面还存在不足。然而,实验室管理系统走向信息化建设乃大势所趋,是我辈应努力的方向。
参考文献:
[1]中华人民共和国教育部,普通高中课程标准(实验)[M],北京:人民教育出版社,2003
[2]何克抗、李克东,教育技术学研究方法[M],北京:北京师范大学出版社,2003
[3]刘德文等,实验管理学网[M],西安:西北大学出版社,1986
[4]牛宝涛,基于网络平台国家重点实验室信息管理系统的研究与设计[D],湖南大学,2005
[5]曹福祥,实验室建设与改革[M],长沙:国防科学技术大学出版社,2002
注释:
Abstract: Network Experiment Management System (NEMS) is a professional network experiment management platform which can be used to manage experiment teaching, student and equipment. NEMS-based Laboratory Teaching Assistant System under B/S architecture could change the old way of network experiment. Through accessing remotely and configuring logically, we can solve the problem of loss and confusion of equipment caused by networking frequently and physically. Meanwhile, new system is easy to operate, simple to configure, stable and reliable and can significantly extend experimental space, improve experimental efficiency and laboratory management.
关键词: B/S架构;网络实验管理系统;网络实验室;教学辅助系统
Key words: B/S architecture;Network Experiment Management System (NEMS);network laboratory;teaching assistant system
中图分类号:TP393.07 文献标识码:A 文章编号:1006-4311(2014)02-0178-02
0 引言
在网络实验室进行各种网络实验时,需要使用大量的交换机和路由器。以传统方式进行实验时,需要学生根据实验内容,先使用交叉线或直通线连接不同设备,进行物理组网;然后再通过电脑的串口访问设备,对交换机和/或路由器进行参数配置。这样的方式有以下几个缺点:
①每次实验之前,学生都需要花费时间进行组网和配置;每次实验之后,由需要拆线和恢复出厂配置,组网方案无法重用。②频繁插拔容易造成设备接口的损坏,增加设备损耗。③由于设备有限,实验中经常需要多人共用设备或搬动设备,造成管理混乱。④实验需要物理设备的支持,使得学生需要到达实验室才能进行实验,无法随时随地进行远程实验。
针对以上的缺点,本文提出了一种采用B/S架构实现的基于NEMS的网络实验室教学辅助系统。该系统采用B/S架构实现,学生无需到达实验室,即可远程访问,在页面上进行逻辑组网,输入实验命令,查看实验结果,扩展了网络实验空间。该系统基于NEMS,可以对实验教学、实验学员、实验设备集中统一管理,逻辑组网方案可以保存和加载,实现了组网方案的重新,提升了网络实验效率。该系统不需要对实验设备的连线进行物理上的改变,改善了实验室的管理。
1 网络实验管理系统简介
网络实验管理系统(NEMS)是一种专业的网络实验管理平台,可以对实验教学、实验学员、实验设备集中统一管理。NEMS针对网络实验生命周期(实验定义、实验准备、实验过程、实验结果)提供完整的智能的管理。教师可以通过NEMS系统进行实验的定制、实验环境部署和实验过程的管理、监控,完成实验环境的快速部属、恢复,以及获取、验证实验结果等工作,学生可以通过NEMS系统进行具体的实验。
NEMS系统基于SOA的软件架,教师和学员通过WEB浏览器就可以进行网络教学实验,不需要部署客户端,仅仅需要部署服务器端,极大了减轻了网络实验室管理员的维护工作。NEMS网络实验管理系统通过与设备控制台设备(DMC)联动,提供全面实验管理方面的功能。
2 硬件组成及拓扑结构
网络实验室教学辅助系统的硬件由核心机柜(Core RACK)和实验机柜(RACK01~RACK08)构成。核心机柜中包含了1个交换机、1个路由器和1台WEB服务器。每个实验机柜中包含4台路由器、2台三层交换机、2台二层交换机和1台控制服务器。完整拓扑结构如图1所示。
由于实际硬件的限制,我们只部署了8个实验小组,每个实验小组的拓扑图如图2。每个实验小组对应一个实验机柜,实验机柜中的控制管理服务器(CMS)与核心机柜中的NEMS服务器部署了两条线路(线2),确保核心机柜对实验机柜的状态控制,CMS与各实验设备之间使用控制线进行连接(线1)。每个实验小组有8台实验主机,网卡1与核心机柜相连接(线3),可用于正常的网络通讯,网卡2与实验机柜相连接(线4),可用于实验。网卡1的IP地址由实验室内网分配,且与服务器在同一网段;后者的IP地址由学生根据实验的需要自由分配。为了便于管理并减少设备端口的损耗,实验主机的所有网线都汇聚于各自的信息盒,再由综合布线分配到各自机柜的配线模块,然后配线模块与机柜的各实验设备相连接。
3 网络实验室教学辅助系统组成
网络实验室教学辅助系统分为4个部分:实验主机、WEB服务器、NEMS服务器、CMS、网络实验设备。各部分说明如下:
①实验主机:安装双网卡,网卡1用于正常通讯,可通过核心路由访问外网,也可访问WEB服务器并对NEMS服务器进行操作;网卡2仅供学生测试实验结果使用。②WEB服务器提供友好的操作界面,方便学生对NEMS服务器进行各项操作,并提供用户登陆、学生管理、实验管理、组网方案管理、控制命令输入和实验结果输出等辅助功能。③NEMS服务器可以实现登陆物理设备、配置物理设备参数、下发实验命令、远程操作CMS等核心功能。④CMS位于NEMS服务器与网络实验设备之间,负责汇集设备并提供远程操作的接口。NEMS服务器下发的实验命令以IP数据的形式封装,CMS接收到命令后转为字符数据形式,并转发到网络实验设备,同时在完成实验后上传所需网络设备的配置信息。⑤网络实验设备是指实验机柜中的其它实验设备,用于实验中的逻辑组网及响应。
4 网络实验室教学辅助系统所实现的功能
网络实验需要进行大量重复的工作,如物理组网、实验环境配置、实验设备管理、学生管理、实验方案管理等,而对于网络技术的科学研究又需要灵活的实验环境。基于此,我们设计了基于B/S架构的网络实验室教学辅助系统,提供以下的功能,可以很好地满足实际需求:
①实验设备管理。管理员可以对CMS、实验设备的配置文件进行管理,包括获取实验设备信息,获取、查看、编辑、保存、恢复、比较实验设备配置、设置实验设备缺省配置等。②实验方案管理。教师可以为每个网络实验定义所需的实验设备、实验设备间的逻辑组网情况、各实验设备的初始配置,保存、加载、查看、编辑实验方案内容,并可以将实验方案进行分类,组成不同的实验课程,便于管理和使用。③实验课程管理。教师可以定义实验课程所包含的实验、所使用的实验方案、实验报告模板和实验指导书等资料,并指定参与课程的学生。④实验人员管理。教师可以导入学生信息、指定学生参与的实验课程、学生提交的查看实验报告、对实验结果进行评分。⑤实验过程管理。学生在实验过程中,可以随时将实验环境恢复到初始状态。系统自动记录实验过程中学生输入的命令及实验设备反馈的结果,并将这部分内容作为实验报告的附件,防止学生间互相抄袭实验报告。同时,教师还可以预定义所需屏蔽的命令,以达到所需的实验结果。⑥并发控制。控制学生对实验设备的访问,确保每台实验设备在同一时刻只能由一个用户访问,避免不可预料的实验结果。⑦逻辑组网代替物理组网。系统部署之后,不需要再频繁插拔网线和控制线,减少了设备端口的损耗。学生只需在图形界面上拖动设备图标及连接线图标,即可组成可视的逻辑拓扑图,然后进行命令输入。系统将自动识别所组成的拓扑结构,并反馈与物理组网相同的操作结果。⑧远程进行实验。在系统正常运行时,只需有合法的用户身份,即可使用浏览器随时随地进行网络实验,突破了时空的限制,使网络实验更加人性化。
5 网络实验室的维护与管理
网络实验室教学辅助系统在原有的网络设备基础上进行了改造和升级,引入了额外的控制设备和服务器,其设备和功能的复杂性为网络实验室的维护与管理增加了难度。为此,我们采取实验室管理与教学相结合的办法,以实验室管理保障教学、教学辅助实验室管理的工作思路。实验室管理员与任课教师、助教合作,助教负责在课前录入和管理实验课程信息、部署实验内容,课后恢复初始实验环境;任课教师负责课中的教学辅导;实验室管理员负责整个实验室的安全和实验设备的完好等工作。
为了有效预防病毒的破坏,系统中的软件部分安装在虚拟机上,无论服务器遇到任何问题,如机械故障、系统崩溃等,都可以方便快捷地使用备份文件快速恢复,保证系统的正常运行,保障实验课的正常开展。同时在各实验主机上安装硬盘保护卡,指定的分区在重启后可以自动恢复原始状态。
6 结论
在实际部署和运行之后,网络实验室教学辅助系统确实能够提供所需的功能,实现了远程访问、逻辑组网、实验方案重用,扩展了网络实验空间,提升了网络实验效率,改善了实验室的管理。
参考文献:
[1]李敏等.基于虚拟原型技术的虚拟网络实验室[J].计算机工程与应用,2002(07):151-153.
[2]何建新,曾伟.网络虚拟实验室的设计与实现[J].微计算机应用,2008(07):34-37.
[3]倪林.基于B/S架构的NEMS网络实验室应用[J].实验室研究与探索,2011(04):57-60.
[4]王淖等.基于Internet的计算机网络虚拟实验室的设计与实现[J].玉林师范学院学报,2013(02):134-138.