基于IC卡的实验中心管理信息系统设计
实验教学示范中心建设是适应新时期对高校人才培养要求的一个重要举措。实验教学示范中心的作用是进一步加强学生实践能力和创新能力培养,我校计算机基础实验教学中心为更好地为校内外师生提供服务 ,实现实验教学资源开放共享,中心在开放性实验教学体系、开放性实验课程体系、开放性实验管理模式等方面进行不断探索,为使实验中心的使用真正做到开放、高效、方便,提高机房的有效利用,开发一个即保证学生上机方便又有利于机房管理的实验中心综合管理信息系统,对提高实验中心的管理效率、管理质量及服务水平十分重要。作者根据实验教学管理的特点,提出了基于IC卡的计算机实验中心综合管理信息系统的设计思想,系统地阐述了系统的体系结构及相关实现技术。
1 设计思想
实验中心综合管理信息系统实现对实验设备运行监控管理及实验课程管理的功能,实现中心管理的信息化、网络化。所以系统的开发必须遵循安全可靠、稳定、灵活、维护性好等原则,以便于系统既能满足目前的需要,又能适应将来扩展的需要。为使系统能很好地满足实验室管理的需要,系统设计应具有以下几方面特点。
1)内核级防毒安全:系统必须既能够防止恶意的侵扰,又能防止因误操作引起的数据错误,保证系统运行的稳定性。系统设计时利用驱动程序直接访问系统内核中的双向句柄链表,根据句柄表获取所有进程的结构,再挂起对应于结构中的所有线程,从而挂起进程,实现所有的用户态和内核态的病毒的防护。
2)反弹连接:突破传统服务器连客户端的连接模式。传统连接方式是基于服务器扫描客户端的连接方式,在客户机数量多达几百台甚至数千台时,这种连接方式会极大地浪费服务器资源。反弹式连接通过服务端开通端口等待客户端连接,采用多线程处理连接,大大节省了服务器资源,提高效率。而且反弹式连接可以突破大部分防火墙,适用场合更广。
3)客户端的防恶意删除:客户端采用远程插入线程、进程复活、进程隐藏等多种最新安全技术,使客户端运行更加安全。插入远程线程技术采用了动态文件名插入的方式,插入完成自动清理垃圾文件,有效防止各类破坏客户端进程的非法行为。
4)可靠性:系统设计应具有较高的可靠性,在系统故障或事故造成中断后能确保数据的准确性、完整性和一致性并具备迅速恢复的功能。
5)可扩充性:为便于与各种一卡通系统集成,系统设计了与校园一卡通集成的通用接口,从现有系统升级到校园一卡通集成环境无需重新安装,只需简单升级即可。系统有标准、开放的系统接口,也可根据校园一卡通要求定制开发接口。
2 系统总体结构
系统设计采用集中式的数据存储管理模式,即所有数据存放在中心数据库服务器上,校内所有实验室的管理通过访问该中心数据库服务器实现。中心数据库存放全校实验室的所有实验设备、用户及实验课程数据,如个人帐户信息,基本管理信息,全校课表,统计信息等。
在体系结构的设计方面,对于用户帐户管理、设备管理、信息录入、课程管理等功能采用C/S 结构,而对于涉及到要在校园网上发布信息的部分,如教师和学生上机预定、课程信息等,则同时采用B/S 结构和C/S结构设计。综合使用基于B/S 和C/S 的体系结构,保证系统具有高性能和可扩展性,提高系统的效率和响应速度。
系统采用非接触式IC卡及用户帐户做为身份识别的工具,用户只需使用校园卡即可在任一实验室刷卡上机。系统在学生机上安装网络登录控制卡及客户端软件,来达到对学生机控制和监控的预期效果。系统的网络结构图如图1所示。
3 系统设计
3 .1 系统设计原理
系统启动时自动加载客户端,客户端常驻内存,使系统处于锁定状态,用户进入机房需刷卡,机房管理系统调用读卡接口获取卡信息根据上机课表判断是否可以上机,输入账号和密码后系统进行身份验证,系统解除锁定正式开始上机。机器运行期间系统定时检测学生是否开启游戏软件,若检测到则警告学生并且将系统锁定;到达规定的上机时限系统自动锁定机器,并把学生的上机情况和机器状态信息写入本地数据库。系统锁定后,学生不能再使用计算机,从而达到自动下机和自动监控的目的,实现机房的无人值守管理。
3 .2 系统功能设计
机房管理信息系统按功能分为系统管理、帐户管理、机房机器和教学管理等子系统。系统功能结构图如图2所示。
1)系统管理子系统:使用动态超级密码、系统初始化操作,记录日常操作用户操作过程和操作时间,对于日志审计内容的处理可以根据不同的需求进行操作。为确保用户帐户数据的安全,系统提供帐户数据自动备份或手工备份功能。对不同机房实行IC卡、帐号登陆进行选择设置功能。
2)帐户设置子系统:为实现机房的自动化管理,不论是教学安排上机还是课外预约上机,均需要进行登录认证,需要为上机用户进行开户、销户,加减机时等操作,提供批量帐户的导入导出,按院系、班级分层次管理结构设置、临时用户设置,根据不同对象、时段、机器、机房的上机机时标准设定功能。
3)机房机器管理子系统:设置机房的名称、工作组、机器数量、费率,机器的相关信息,自动考核学生上机到课率。实现机器的跨网段远程管理、机器硬件监控封锁、软件的跨网端分发,分发软件的源文件可在不同网段的多台服务器上,支持批处理操作,可单台、批量、全部传送,实现远程单机器的管理。
4)实验教学管理:实现课程上机、各类课程外上机预约的机房分配,机房的动态排课,控制上机可运行的程序,实时监视机器运行情况和运行的程序,通过预约处理,以保证教学上机的要求,支持周期化预约,实现完全学分制的学生自由选课形成的班级建立动态组,课程预约时自动对动态组进行机房分配,便于对课程上机的管理。
5)多媒体教学:实现教学的全屏及区域广播教学功能,电子黑板功能,示范教学功能,电子点名功能及学生电子签到。
3 .3 系统接口函数设计
系统服务器端安装在中心服务器上,接收来自用户的刷卡请求信息,然后依据系统数据库对学生做身份验证,再依据上机安排表判断用户是否可以上机,然后通过网络向客户端发出开放或锁定系统的控制信息,以实现自动安排上机,相关接口函数如下:
1)读卡机初始化函数
function DkjInit - Old(const ComPortNo :Byte ;const YhMm :DWORD) :Boolean ;
参数:Comport ,读卡机连接的串口号;YhMm ,用户单位密码;实现初始化串口和读卡机,只有初始化成功后读卡机才能进行正常读写卡工作。
2)读卡机释放函数
function DkjFinal- Old() :Boolean ;
参数:无;实现释放读卡机占用的串口资源。
3)获取卡信息函数
function ReadConsumeCard- Old ( const CardRecAddress :Byte ;var ConsumeCardInfo : TConsume-CardInfo - Old ) :Boolean ;
参数:CardRecAddress ,卡片结构地址;ConsumeCardInfo ,消费卡信息结构。
4)扣款写卡函数
function WriteConsumeCard- Old (const CardRecAddress :Byte ; const ConsumeCardInfo : TConsume-CardInfo - Old) :Boolean ;
参数:CardRecAddress ,卡片结构地址;ConsumeCardInfo ,消费卡信息结构。
3 .4 系统监控算法设计
系统具有自动检测用户使用软件并进行控制的功能,通过在控制端选择适当的检测包,然后发送到服务端,服务端将检测包转发到所有的客户端,客户端将接收到的检测包放入内存缓冲区中;客户端定时(如每分钟1次)枚举所有的顶层窗口,并且获取顶层窗口的标题存入到字符串变量中,并将内存缓冲区中的检测包中的关键字逐一遍历,检查这些关键字是否在字符串变量中出现,若出现说明用户在使用规定外软件(如电脑游戏) ,客户端此时发出警告信息,3次警告过后将自动锁定系统,同时发消息到服务端显示相关用户信息。实现该功能的算法描述如下:
4 结语
系统使用VisualC ++ NET 编程实现,通过网络通信实现局部范围内的计算机统一监控管理。采用段管理策略实现不同网段实验室计算机的集中监控管理,大大提高了系统的通用性和可扩展性。系统实现了实验教学资源开放共享,为学生提供了简便的上机手段,使实验中心的使用真正做到开放、高效、方便,提高各类实验设备的有效利用,并显著提高机房的管理水平和工作效率,在实际使用中取得了较好的效果,为实验中心的实验教学改革奠定了良好的基础。