




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要北京信息科技大学 毕业设计(论文)题 目: 基于Web的远程实验系统的设计和实现 学 院: 信息管理学院 专 业: 信息安全 学生姓名: 李继文 班级/学号 信安1002/2010012713 指导老师/督导老师: 任俊玲 起止时间:2014 年 2月25日 至 2014年 6月 21日34摘要摘 要进入21世纪后,各个高校中的计算机类专业的实验教学得到了更多的重视,已经成为了高校教育中不可或缺的一部分。但是,高校也面临着学生人数不断的增多这样一个难题,传统的实验教学模式为了适应人数的增加和实验量的增加,将会对实验室场地、实验仪器设备、指导教师的数量提出了更为严格的要求,尤其是实验资源的最优化利用更是无法解决。这一系列的问题也使得远程实验系统的出现了成为了一种必要,且日益蓬勃。当前,国内外的实验系统多事面向实验室流程的管理,例如实验报告提交、设备管理、实验批改、成绩导出等,而对于在线实验部分缺少研究。本文设计和实现了基于Web的实验系统,不但用于常见的实验管理,并可以进行在线实验。经过后期的测试,本系统可在实际中进行使用。本文在起始章节阐述了研究的背景和意义,对于国内外研究现状及相关关键技术。其中对于VMware workstation自动化处理、MySQL数据库、远程控制技术进行了重点介绍;然后设计了系统的整体实施方案。对于整个系统的三大模块:学生端、教师端、管理员端,进行了详尽的分析,实现了各模块的界面设计;然后介绍了三大模块在Yii框架下的具体实现方法、MySQL数据库的设计,同时也介绍了VMware workstation和VNC实现在线实验、swftools和flexpaper实现在线文档阅读;最后,对其进行测试,结果表明该系统可以应用于实际的教学实践并发挥一定的优势。关键词:远程实验系统;VMware workstation;VNC;flexpaper;YiiAbstractAbstractAfter entering the 21st century, all kind of professional experimental teaching of computer in colleges and universities to get more attention, has become an important part of college education. Colleges are also facing the number of students, however, increase in the number of such a problem, the traditional experiment teaching mode in order to adapt to the increase of the number and the increased amount of experiment, laboratory space, experimental instruments and equipment, will be the number of teachers put forward the more strict requirements, especially the experimental resources optimization using is unable to solve. That is a series of questions to make the remote experiment system appeared a necessity, and growing. At present, the domestic and foreign experimental system much geared to the needs of the management of the laboratory process, such as experiment report, equipment management, grade, grade export, part of the lack of research for the online experiment.In this paper, the design and implementation of web-based experiment system, not only for common lab management, and can be online experiments. The late after the test, this system can be used in practice.In this paper, in the beginning chapter expounds the research background and significance, for domestic and foreign research present situation and the related key technologies. One for VMware workstation automated processing, MySQL database, remote control technology were introduced; Then design the overall scheme of the system. For the whole system of three modules: side, teachers and students, administrators, has carried on the detailed analysis, implements the interface design of each module. Then introduces the three modules in the concrete realization method of the Yii framework, the design of the MySQL database, it also introduces the VMware workstation and VNC to realize online experiment, swftools and flexpaper realize online document reading; Finally, to test it, and the results show that the system can be applied in the actual teaching practice and play a certain advantage.Keywords: The remote experiment system; VMware workstation; VNC; flexpaper;Yii目录目录摘 要IAbstractII第一章绪论11.1课题研究背景和意义11.2国内外研究现状及趋势21.2.1国内研究现状21.2.2国外研究现状21.3本文研究内容31.4本章小结3第二章远程实验系统开发关键技术42.1C/S与B/S架构解析42.2MySQL数据库技术52.3文档在线展示技术62.4Web开发相关技术72.4.1Java Script技术72.4.2Ajax数据异步传输82.4.3Yii框架82.4.4Netbeans开发环境及PHP开发82.5VMware Workstation自动化处理92.6远程控制技术102.7本章小结11第三章远程实验系统总体分析与设计123.1系统总体分析123.2系统总体设计方案123.3学生端整体架构133.3.1用户登录界面设计143.3.2主界面设计143.4教师端整体架构153.4.1用户登陆界面设计153.4.2管理选课学生界面设计153.4.3管理实验课程界面设计163.5管理员端整体架构183.5.1登录设计183.5.2学生管理193.5.3教师管理203.5.4课程管理203.6本章小结20第四章远程实验系统的具体实现214.1学生端功能实现214.2教师端功能实现234.3管理员端功能实现234.4MySQL数据库的设计与应用244.5在线实验功能实现274.6文档在线展示功能实现284.7本章小结30第五章系统测试315.1本章小结32第六章总结与展望326.1总结326.2展望32基于Web的远程实验系统的设计和实现第一章 绪论1.1 课题研究背景和意义随着时代的不断发展和对应的计算机信息技术的进步,尤其是windows系统的不断发展,使得计算机进入到PC时代。随之而带来的是对于计算机技术的强大的市场需求,高校对应的计算机类的实验课程不断增加,科研中的实验比例也不断提高。对于工科学生而言,必要数量的实验是是十分有必要的,这对于学生的创新意识、实践能力、在实践中联系理论的能力是不可或缺的。同时也是发现、分析问题和提高解决问题能力的重要手段。21世纪进入了一个信息化的时代,科研发展对于高校人才的综合素质和创新能力要求更高,因此不断提高实验在高校人才教育中的发展使十分重要的,但是与此同时也带来了一些问题随着高校对于实验课程的增加和学生的增加,使得出现了一系列的问题,在实践过程中可能出现以下问题:一方面同学对于前沿先进技术的渴望和对实验环境更高的要求,另一方面实验设备陈旧,无法进行前沿先进技术实践的问题;一方面同学们所需实验数量增加,另一方面高校实验室承载量有限,无法进一步提高实验设备利用率的问题;一方面高性能实验设备有限,这就不得不增加实验室开放时间,但是另一方面又不能过度增加实验管理人员的工作量和压力。针对这个问题,为应对当前出现的挑战和机遇,美国国家自然科学基金会(NSF)和IEEE控制系统协会(CSS)于1998年10月在伊利诺大学Urbana-Champain分校就控制系统教育的未来发展举行了一次讨论会。会上的提出了总体建议指出:,即在世界范围内,加强不同控制组织和控制学科间的合作来紧密关注控制系统的教育问题,深化社会对控制系统技术重要性的认识。此外,为了进一步解释总体建议,会议还补充了 9条附加建议:其中第五条为推动控制系统实验室的发展(尤其是共享实验室),使更多的实验成为包括研究生在内的所有学生的接收控制理论教育的重要组成部分;第六条内容强调控制系统教育和研究在各层次上的有机结合;第九条鼓励将技术信息传播给控制系统工业应用者,同时提倡把实际工作经验带到课堂。目的是加强控制理论实验室建设、通过因特网连接远程控制系统,釆取的创新方案是在高校、研究所间建立共享实验室。一方面可有效利用现有实验资源;另一方面加深实验者对控制系统的理解同时方便实验室间的研究交流。实验是高等教育、远程教育和科学普及中不可缺少的一环。它对于培养学生的实际操作能力和解决问题的能力至关重要,传统的实验教学受到很多条件的限制,例如:设备资源不足,实验场地有限,安全性低等。发展焦躁的基于录像带、广播、电视的远程实验教学形式,使学生和教学机构存在空间的差距,但学生只能观看演示实验而不能做实验,学生无法实际控制实验仪器和实验条件,时间操作能力、研究能力、创新能力得不到培养,实验教学的质量不高。这种情况下,基于网络的可远程操作的实验应运而生。本课题研究的意义在于将实验所需要的环境集成到了远端服务器,同学们通过web浏览器进行访问实验服务器并完成实验,这样有效的提高了高性能环境的利用率,同时对于使用者而言不必自己搭建环境而造成不必要的时间浪费。进而有效的解决了高校计算机类实验所遇到的无法充分利用高性能资源的问题。1.2 国内外研究现状及趋势 远程实验室和虚拟实验室无疑是实验教育的重点和热点,而结合远程和虚拟是目前的方向。最早的实验室虚拟思路多,也是为了节省开支,但是这方面取得的进步不大,更多的发展方向是远程实验室的方向。1.2.1 国内研究现状我国的研究我国的研究与国外相比起步较晚,但在国外成熟技术的借鉴下,国内的远程实验法阵迅速。从文献看,最早的远程实验开始于2000年,但目前愈多高校和科研中心已陆续建立远程实验系统,但应用领域较国外局限,且研究多基于具体一门课程,与具体学科联系紧密,一些学者将远程控制(真实)实验与远程虚拟实验分开定义,本课题中称两者为远程实验。国内研究主要有一下几个特点:l 实验室倾向于真实实验对象为基础Internet的普及、多媒体技术、计算机仿真技术以及虚拟仪器技术的出现和发展使远程变成现实,对于它的研究经历了虚拟实验室、虚拟与真实实验室结合、真实实验室三个阶段。学生通过虚拟实验室得不到关于仪器操作、真实实验现行的感性认识。同时,仿真软件也有很多局限性:无法模拟随即发生的实验,模拟对象的粗糙性造成的与真实对象之间的差距。这些都将导致一些实验现象和结果无法通过仿真技术来重现,实验者不能观察到实际真实的实验结果。因此,从以真实实验对象为基础的远程实验室所占的比例中也不难发现,远程实验室的研究以基于真实实验对象的构建为主。l 实验系统控制模式从C/S转向B/S对比B/S 与C/S 两种结构,C/S 结构下应用程序的安装、修改和升级,均需要在所有的客户机上进行,B/S 结构采用标准的浏览器为客户端,结构的网络适应性更好,可实现不同人员在不同地点以不同方式访问和操作,客户端不再需要负责复杂的计算和数据访问,只负责显示部分,所有维护和升级工作都是在服务器上执行, 不需要对客户端作任何改变,故而大大降低了开发和维护的成本。因此,国内远程实验室的控制模式从2006 年开始基本采用B/S 模式。综合上述两种结构的优缺点,浙江大学“电子电工网络实验室”采用CSC 体系结构和BSC 体系结构的两层架构,由用户、服务和实验三部分组成,整个平台具有良好的可扩展性和安全性,允许多用户、多实验同时进行。1.2.2 国外研究现状1989年,美国弗吉尼亚大学的William Wolf教授第一次提出了一个计算机网络化的虚拟实验室环境的历年。随着基于网络的远程虚拟化仪器技术的不断发展,国外网络实验室的研究已日趋成熟。1. 80年代LIMS(Laboratory Information Management Systems 实验室管理信息系统)逐渐应用在各类实验室里。这个时候的试验管理系统需要专业人员从编写设计到最后的维护。2. 90年代是计算机技术迅速发展的时期,这个阶段个人计算机价格下降但是性能却在日益提高,尤其是Microsoft Windows(微软视窗操作系统)系列操作系统的普及,基于客户机和服务器结构(C/S架构)的LIMS成为主流,SQL网络数据库被广泛使用,这些都大大增强了LIMS数据处理能力。由于操作系统由文字界面转向图形界面,使对操作系统的操作更加便捷,一般非专业技术人员也可以进行LIMS的设计编写与维护。3. 90年代后期到现在,Internet互联网和Web技术在LIMS应用中得到进一步发展,LIMS以改变了传统的运行模式,功能更全,更易进行二次开发,操作者不受空间和时间限制,可以实现远程系统登录,访问以及远程信息交换。1.3 本文研究内容远程实验系统摆脱了传统实验的场地以及实验设备的约束,给高校带来了新的实验实施环境,使得广大师生都获得了便利,不受制与时间和地点的限制,实现了实验资源的共享和师生信息的管理,这一切与传统的试验模式是有很大差别的。本文主要设计和实现了一种远程实验系统,主要包括一般实验管理系统中所包含的功能(提交实验报告、批改、统计分数、导入学生、修改课程、修改实验等)和实现在远程实验服务器进行实验操作的功能。实现在线通过Web浏览器登录远程实验服务器,进行实验操作。本文所进行的主要研究内容1. 确立总体设计方案2. 通过进行调研,对开发使用的环境和工具进行选择。3. 进行系统分析,建立系统所需的数据库。4. 根据数据库和Web服务器尽心搭建系统5. 根据具体实验情况,使用Vmware Workstation和Vnc搭建可访问的实验服务器。1.4 本章小结本章主要对于远程实验系统提出的背景根据本国国情进行了阐释,并且对于目前的国内外的发展情况分别进行了介绍和分析,同时对于本文所要进行的研究内容进行了大致的介绍和实现的一般原理。第二章 远程实验系统开发关键技术2.1 C/S与B/S架构解析从计算机诞生并进入到应用时代开始,其模式发生了由集中式结构到分布式结构的转变(数据和应用程序存在于多个机器上),其中,从上个世纪末开始C/S架构得到了广泛的应用,但是随着网络技术的高速发展,尤其是进入web2.0时代后,网络分布式对象技术的飞速发展,致使计算机网络结构向更加灵活的多级分布结构演变,网络结构进入B/S架构(浏览器/服务器模式)时代,从严格意义上来说,B/S架构也是一种C/S模式,只是它的客户端是浏览器而已。1) C/S模式介绍C/S模式,即Client/Server(客户机/服务器)结构。C/S结构通常采取两层结构,如图 1所示,服务器负责数据的管理和处理,客户机完成与用户的交互任务。 图2-1 C/S结构简图通过它可以充分利用两端硬件环境的优势,将任务合理分配到client端和server端来实现,降低了系统的通讯开销。C/S结构可以看着做是胖客户端架构。客户端实现绝大多数的业务逻辑和处理界面展示,作为客户端的部分要承受很大的压力,充分利用客户端的资源,对客户机的要求比较高。其实现可以是客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。传统的CS体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端,还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。2) B/S模式介绍B/S结构,即Brower/Server(浏览器/服务器)结构,是基于Internet环境的信息系统,采用标准的TCP/IP协议,以WEB为平台形成的,B/S结构分为三个层次:客户机、WEB服务器、数据服务器(如图-2所示),这是一种对C/S结构的变化和改进。图2-2 B/S结构简图B/S结构可以看作是瘦客户端,只是把显示的较少的逻辑交给了Web浏览器,事务逻辑数据处理在放在了Server端,这样就避免了庞大的胖客户端,减少了客户端的压力。B/S结构的系统无须特别安装,只有Web浏览器即可。当然AJAXFlex等等的普遍使用也有富客户端的发展方向。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。3) C/S和B/S模式的对比C/S和B/S架构已经成为当今世界的两大主流技术,并且各自拥有不同的领域份额。相较于C/S而言,B/S最大的优势就是客户端免维护,适用于用户群庞大,或者客户需求经常发生改变的情况;C/S功能请打,可以减轻服务端压力,如果用户需求特别复杂,用C/S。C/S一般建立在专用的网络上,小范围里的网络换进,局域网之间再通过专门服务器提供连接和数据交换服务,B/S建立在广域网上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息管理,有着比C/S更强的适应范围,一般只要有操作系统和浏览器就行。2.2 MySQL数据库技术通常我们所说的数据库一般是包含两重含义:第一、可以有效的保存数据,使用者可以将数据存储在其中,“用户数据”和“存储库”构成了“数据库”概念;第二、以此同时产生了管理数据的新方法和技术,可以有效地组织、维护、控制和利用数据,其中的数据具有整体性和共享性两个特征。随着网络的发展、处理数据量的增加,数据库在应用软件系统中扮演着重要的角色。数据库技术诞生于20世纪中期,由第一代的网状数据库、层次数据库过渡到关系数据库和后来的以面向对象为特征的数据库系统。20世纪后期,关系数据库的使用逐渐占据了大多数的市场,MySQL数据库也是其中的一种关系型数据库。但随着发展提升了用户的需求,计算机硬件技术和网络多媒体技术,数据库技术的发展,促进分布式处理,人工智能,并行处理技术,多媒体技术和其他技术渗透相互结合,成为当前数据库的技术发展的特点,一个新的数据库技术的形成。一个优秀的数据库不但是要满足无错误这一基本要求,而且对于良好的关系模式也是要支持的。这样才可以避免大量的数据冗余、异常插入、删除等错误的产生。数据库一般都是满足一下三种范式。l 第一范式:如果关系模式R的所有属性均不可再分,则满足第一范式。l 第二范式:如果关系模式R满足第一范式,且所有非主属性都函数依赖于任何一个候选关键字,则满足第二范式。l 第三范式:如果关系模式R满足第二范式,且所有的非主属性对于任何关键字都不存在传递函数依赖,则满足第三范式。MySQL数据库是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL具有以下优点:l MySQL的核心程序采用哇怒气难的多线程编程。线程是轻量级的进程,他可以灵地为用户提供服务,而不过多的占用系统资源。用多线程和C语言实现的MySQL可以很容易充分利用CPU。l MySQL可以运行在不同的操作系统上,简单的说MySQL可以支持Windows以及Linux和UNIX等多种操作系统平台。这就意味着一个操作系统中实现的应用可以很方便的移植到其他的操作系统下。l MySQL有一个非常灵活而且安全的权限和口令系统。当客户与MySQL服务器连接时,他们之间所有的口令传送被加密,而且MySQL支持主机认证。l MySQL支持大型的数据库。虽然对于PHP编写的网页来说只要存放上百条以上的记录数据就够了,但是MySQL可以方便的支持上千万条记录的数据库。最为一个开放源代码的数据库,MySQL可以针对不同的应用进行相应的修改。l PHP为MySQL提供了强力支持,PHP中提供了一整套的MySQL函数,对MySQL进行了全方位的支持。2.3 文档在线展示技术在一些传统网站上,文档必须下载才可以进行查看,这样给用户带来了很大的困惑:l 用户可能仅仅想知道这个文件是什么,但是需要经过漫长的下载等待,这个十分不友好。l 完整的下载,导致占用过多的带宽。l 用户可能没有安装相关的文档查看软件,特别是移动设备上。文档在线查看,这个是互联网对文档分享的有一个新需求。这涉及服务端的文档转换,以及浏览器端的文档查看体验两个部分。如何更快、更好、更稳定的对多格式的文档进行转换并显示在Web上成为了众多服务提供商的任务。下面是一些常见的解决方案:l Windows平台下,利用office中的Save as 功能将对应的office文档转化为Html格式,然后再web页面进行展示。但是该方法局限比较大,仅仅支持在Windows环境下,而且还必须装有offices组件。l 另外一种思路,将文档转化为flash文件,然后通过前端将flash在页面进行展示,例如道客巴巴之类的网站。不论国内外对于这个部分的实现,已经出现了很成熟的技术,一些常见的成熟的解决方案如下:1) 火狐开源项目PDF.js:实现的原理为基于html5,利用javascript和html5画布将本地pdf文件进行转化显示。2) Flexpaper:这是一个开源轻量级的在浏览器上显示各种文档的组件,被设计用来个pdf2swf(当然flashpaper也是可以的)一起使用,使在Flex中显示PDF成为可能,整个过程中无需PDF软件环境的支持。它可以被当做Flex的库来使用。对于word、PPT等文档可以先转化为PDF,然后实现在线浏览。3) 易度云查看:这是国内的一个比较成熟的在线浏览文档的方案,一共有8种查看器,在浏览器运行。可以实现flash查看、纯文本查看、html查看、pdf查看、缩略图查看。2.4 Web开发相关技术2.4.1 Java Script技术JavaScript是一种由Netscape的LiveScript发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,不如Perl,遗留的速度问题,为客户端提供更顺畅的浏览体验。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器加入了JavaScript,提供了数据验证的基本功能。JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种管饭用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如相应用户的各种操作。它最初由网景公司的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。JavaScript也可以用于其他场合,如服务器端编程(例如NodeJs),完整的JavaScript实现包含三个部分:ECMAScript,文档对象类型,浏览器对象模型。JavaScript可以很好地与其他Web技术一起使用比如HTML和CSS而且甚至可以与Flash之类的插件进行交互。JavaScript使我们可以创建高响应度的用户界面,避免令人郁闷的页面重新加载,甚至还可以解决CSS的支持问题。通过适当的浏览器附加软件(比如谷歌离线应用开发工具或雅虎Brower Plus),你甚至可以用JavaScript来使联机系统在离线时仍然可以使用,并在计算机连线后实现自动同步,JavaScript也不受浏览器的限制。与其它程序设计语言相比,JavaScript的速度更快,内存占用更小,这使得它的应用越来越普及。2.4.2 Ajax数据异步传输AJAX即“AsynchronousJavascript +XML”(异步JavaScript和XML1),是指一种创建交互式网页应用的网页开发技术。AJAX=异步JavaScript和XML(标准通用标记语言的子集)。AJAX是一种用于创建动态网页的技术,通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。这意味着在不重新加载这个网页的情况下,对网页的某部分进行更新。传统网页如果需要更新内容,必须加载整个网页页面。AJAX的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5 中首次引入,它是一种支持异步请求的技术。简而言之,xmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。原理图如图-3所示:图2-3 AJAX原理图2.4.3 Yii框架Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用。Yii是一个严格的MVC框架,采用严格的OOP编写,并有着完善的库引用以及全面的教程。从MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了今日Web 2.0应用开发所需要的几乎一切功能。事实上,Yii是最有效率的PHP框架之一。Yii是一个高性能的PHP5的web应用程序开发框架。通过一个简单的命令行工具 yiic 可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以快速完成应用程序的开发。2.4.4 Netbeans开发环境及PHP开发PHP原始为Personal Home Page的缩写,已经正式更名为 PHP: Hypertext Preprocessor。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf 为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。这些工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。后来又用C语言重新编写,包括可以访问数据库。他将这些程序和一些表单直译器整合起来,称为 PHP/FI。PHP/FI 可以和数据库连接,产生简单的动态网页程序。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快,PHP具有以下特性:1) 支持多平台2) 具有自由软件的特性3) 版本更新速度快4) 容易与现有的网页整合5) 具有丰富的功能。从结构化的特性、对象式的设计、数据库处理、网络接口使用、到安全编码机制等,几乎完成地包括所有网站所需要的功能。6) 系统移植速度快。少许修改,就可以将整个网站从一个平台移到另一个平台。2.5 VMware Workstation自动化处理VMware Workstation是一款请打的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试、部署新的应用程序的最佳解决方案。VMware Workstation可在一步实体机器上模拟完整的网络环境,以及可便于携带的虚拟机器,其更好的灵活性与先进性的技术胜过了市面上其他的虚拟计算机软件。对于企业的IT开发人员和管理员而言,VMware在虚拟网络,实时快照,支持PXE等方面的特点是它成为必不可少的工具。其中vmrun命令行工具在自动化处理过程中有着很方便的应用,下面为一些常见的vmrun命令行。l Power Commands:开启、停止、重启、挂起虚拟机。vmrun -T ws start|stop|reset|suspend “path_of_wmx_file”start,有两个参数gui|nogui,前者是默认参数,参数加在末尾stop/reset/suspend有两个参数hard|soft,hard代表执行命令前不运行wmtools文件夹中对应的批处理文件,soft代表执行命令前运行批处理文件,参数加在末尾。l Snapshot Commands:创建、删除、还原快照。vmrun -T ws snapshot|deleteSnapshot|revertToSnapshot “path_of_wmx_file” “snap_shot_name”Snapshot还有一个命令是listSnapshots,列出所有快照名l Record and Replay Commandsvmrun -T ws -gu -gp beginRecording “path_of_wmx_file” “session_name”vmrun -T ws -gu -gp endRecording “path_of_wmx_file”l Guest Operating System Commands:这个类型的命令比较多,而且比较有价值:runProgramInGuest | runScriptInGuest |listProcessesInGuest | killProcessInGuest | fileExistsInGuest |deleteFileInGuest |renameFileInGuest | createDirectoryInGuest |deleteDirectoryInGuest |listDirectoryInGuest |copyFileFromHostToGuest |copyFileFromGuestToHost | captureScreen2.6 远程控制技术远程控制是在网络上由一台电脑(主控端 Remote)远距离去控制另一台电脑(被控端Host/服务器端)的技术,主要通过远程控制软件实现。远程控制软件工作原理:远程控制软件一般分客户端程序(Client)和服务器端程序(Server)两部分,通常将客户端程序安装到主控端的电脑上,将服务器端程序安装到被控端的电脑上。使用时客户端程序向被控端电脑中的服务器端程序发出信号,建立一个特殊的远程服务,然后通过这个远程服务,使用各种远程控制功能发送远程控制命令,控制被控端电脑中的各种应用程序运行。TCP协议远程控制:主要有windows系统自带的远程桌面、pcAnyWhere等,网上98%的远程控制软件都使用TCP协议来实现远程控制(包括上述几款),使用TCP协议的远程控制软件的优势是稳定、连接成功率高;缺陷是双方必须有一方具有公网IP(或在同一个内网中),否则就需要在路由器上做端口映射。这意味着你只能用这些软件控制拥有公网IP的电脑,或者只能控制同一个内网中的电脑(比如控制本公司里其它的电脑)。你不可能使用TCP协议的软件从某一家公司的电脑,控制另外一家公司的内部电脑,或者从网吧、宾馆里控制你办公室的电脑,因为他们处于不同的内网中。80%以上的电脑都处于内网中(使用路由共享上网的方式即为内网),TCP软件不能穿透内网的缺陷,使得该类软件使用率大打折扣。但是目前很多远程控制软件支持从被控端主动连接到控制端,可以一定程度上弥补该缺陷。UDP协议远程控制与TCP协议远程控制不同,UDP传送数据前并不与对方建立连接,发送数据前后也不进行数据确认,从理论上说速度会比TCP快(实际上会受网络质量影响)。最关键的是:使用UDP协议可以利用UDP的打洞原理(UDP Hole Punching技术)穿透内网。从而解决了TCP协议远程控制软件需要做端口映射的难题。这样,即使双方都在不同的局域网内,也可以实现远程连接和控制。QQ、MSN、Dragon远程控制UDP版、XT800的远程控制功能都是基于UDP协议的。你会发现使用穿透内网的远程控制软件无需做端口映射即可实现连接,这类软件都需要一台服务器协助程序进行通讯以便实现内网的穿透。由于IP资源日益稀缺,越来越多的用户会在内网中上网,因此能穿透内网的远程控制软件,将是今后远程控制发展的主流方向。VNC (Virtual Network Computer)是虚拟网络计算机的缩写。VNC 是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的。VNC 是在基于UNIX和Linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和Windows和MAC中的任何远程控制软件媲美。VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序(vncserver)。VNC的基本运行原理和一些Windows下的远程控制软件很相象。VNC的服务器端应用程序在UNIX和Linux操作系统中适应性很强,图形用户界面十分友好,看上去和Windows下的软件界面也很类似。在任何安装了客户端的应用程序(vncviewer)的Linux平台的计算机都能十分方便的和安装了服务器端的应用程序(vncserver)的计算机相互连接。另外,服务器端 (vncserver)还内建了Java Web接口,这样用户通过服务器端对其他计算机的操作就能通过浏览器显示出来了,这样的操作过程和显示方式比较直观方便。2.7 本章小结本章消息介绍了远程实验系统实现中的关键技术难点,对于MySQL数据库技术、文档在线展示以及web2.0相关的关键的技术进行了介绍(js、ajax异步传输技术、Yii开发框架、Netbeans开发和PHP技术),以此同时对于vmware workstation自动化技术进行了阐述,在本章的最后将远程控制技术进行了详尽的阐述,并且对于远程实验系统中使用的VNC进行了介绍。第三章 远程实验系统总体分析与设计3.1 系统总体分析本项目是为了设计和实现一个更便捷、更有效、更实用的远程实验系统,在前文中介绍的国内外的远程实验系统,这些系统更多面向信息管理,为了进一步的提高实验的自由度和解决实验室资源、设备紧缺的问题。本系统将重点放在远程实验这一主题上,而不是信息管理部分。大部分的现有的远程实验系统大多基于web框架,采取B/S模式。采用这样的方式可以将系统数据集中管理,操作分布进行。以一般常见的远程实验系统而言,一般采用J2EE、.NET或者PHP多种架构进行开发,多采用MVC架构,即底层进行数据处理,中间层的业务处理以及上层的显示,这样的架构层次清晰,大量的数据都在中间层完成。客户端的负荷相对较小。本系统采用B/S架构,使用PHP+MySQL进行开发。使用PHP开发的主流Yii框架,严格按照MVC模式进行开发。3.2 系统总体设计方案本项目可以分为学生、教师、管理员三个模块,学生端实现一般常见的上交实验报告,查看对应实验的实验指导(将本地文档进行在线展示),修改个人信息,并且可以实现进入远端服务器进行实验操作;教师端可以修改实验信息,对于同学上传的实验报告进行批改,导入选课学生;管理员端实现对上述两者的管理。具体的系统原理如下图:图3-1 远程实验系统原理图其中访问远端实验服务器的具体流程如下:图3-2 进行远程实验的详细流程图3.3 学生端整体架构学生端主要是为使用者学生进行使用和操作,具有修改个人信息、上传上传实验报告、查看实验指导、查看个人分数的功能。主界面包含学生已选实验课程列表,进入对应实验课程后,该实验课程对应的实验列表,进入所要操作的实验界面后,会有一系列的对应该实验的操作列表(查看实验指导、提交实验报告、修改实验报告、查看分数、查看自己上传的实验报告),学生端总体设计架构如图-6所示:图3-3 学生端总体设计架构3.3.1 用户登录界面设计学生进入系统界面后,会要求登录,当用户输入用户名和密码后,选择学生角色,进行登录。如果成功则进入主界面。以此同时还有记住密码的功能。登录界面如图-7所示:图3-4 登陆界面3.3.2 主界面设计学生控制主界面如图-8所示,学生进入主界面后首先展现出来的是该同学选择的实验课程的列表。点击进入课程后,对应该课程的实验列表。点击进入实验列表后展现的为单个实验的具体操作。在这个界面学生可以进行如列表所罗列的操作。图3-5 学生主界面3.4 教师端整体架构教师端由实验指导教师控制和使用,具有学生信息,学生成绩、课程信息、对应课程的实验信息、批改学生上传实验报告以及选课学生信息导入功能。主界面为菜单栏,分为三个部分:管理对应课程实验、管理选课学生、导出对应课程成绩表格。其中课程实验管理又包括查看实验、修改实验、查看该实验的提交情况;管理选课学生又分为两个部分:手动单个导入选课学生、excel导入选课学生。在选课学生管理界面中是学生列表的展示,在这个部分可以进行删除、修改、添加操作;教师端总体设计架构如图-9所示:图3-6 教师端总体架构3.4.1 用户登陆界面设计实验指导教师登陆界面和学生端使用的是同一个界面,只需进行角色选择为教师就可以,然后将账号、密码输入,对比数据库中存储用户名和密码,比对成功后进入主界面。3.4.2 管理选课学生界面设计 选课学生管理界面包含一下几个元素:第一栏为选课学生的列表(包含学生详尽的信息和删除选项),第二列为添加选课学生选项(包含手动添加单个选课学生、导入excel添加学生)。其中选课学生列表为HTML元素table,具体界面设计如下图所示:图3-7 选课学生管理界面在进入手动添加后,为学号添加框(表单),如下图所示:图3-8 单个选课学生添加界面设计在进入excel导入选课学生名单后,为对应的上传excel界面,具体设计如下图所示:图3-9 Excel导入学生名单在该界面中,对于上传的数据可以进行预览和导入数据库操作,通过AJAX进行数据的异步传输,实现页面的局部刷新,进而实现导入数据的预览。3.4.3 管理实验课程界面设计在进入实验管理界
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年甲氨蝶呤项目申请报告
- 2025年脉冲反应堆及配套产品项目规划申请报告
- 2025年中国便携式催化加热器行业市场分析及投资价值评估前景预测报告
- 杨家坪老房渗水施工方案
- 产业投资规划中的设备与技术选型
- 漏电应急预案a
- 饭馆疫情应急预案
- 雨污分流改造工程实施方案
- 采购应急预案制度
- 地基沉降监测与动态调整方案
- 第三单元第2课时儿童乐园(教学设计)数学北师大版二年级上册2025
- 建设用地审查报批课件
- 2025年企业首席质量官培训考核试题(含答案)
- 2025-2030礼品包装品牌化运营策略及消费者偏好与市场营销渠道研究
- 弹簧测力计的原理
- 《家具与陈设设计》课件(共十章)
- 迪士尼电影讲解
- 2025至2030中国背光器件行业市场深度研究与战略咨询分析报告
- 跨境交易信用风险传导路径-洞察阐释
- 影响力与ABC法则
- 中国沈阳铁路局劳动合同8篇
评论
0/150
提交评论