发明名称 基于MATLAB及COM技术的B/S结构远程计算平台
摘要 本发明公开了基于MATLAB的B/S结构远程计算平台,包括WEB客户端模块、WEB服务器、命令处理模块、文件上传模块、MATLAB控制模块和MATLAB;向WEB服务器上传.m文件或.mdl模型文件后,根据不同的请求调用模块;处理后的MATLAB命令或文件上传模块得到上传的文件,被提交给MATLAB控制模块;MATLAB控制模块通过COM技术产生一个MATLAB的COM对象并得到执行结果;执行结果通过WEB服务器后返回给客户端,本发明为基于MATLAB的WEB应用开发提供了一个框架,而对使用的WEB技术、编程语言以及WEB服务器的种类并没有特别限制,使用该框架可开发各种远程应用。
申请公布号 CN101360126A 申请公布日期 2009.02.04
申请号 CN200810167549.4 申请日期 2008.10.10
申请人 北京理工大学 发明人 田德振;姚远;戴亚平
分类号 H04L29/08(2006.01);H04L29/06(2006.01);G06F9/48(2006.01) 主分类号 H04L29/08(2006.01)
代理机构 北京理工大学专利中心 代理人 张利萍
主权项 1.基于MATLAB的B/S结构远程计算平台,包括WEB客户端模块、WEB服务器、命令处理模块、文件上传模块、MATLAB控制模块、MATLAB;其特征在于:WEB客户端模块:通过HTML和JavaScript等客户端脚本给用户提供一个交互界面;WEB服务器:负责处理客户端的HTTP请求;文件上传模块:负责处理用户上传*.m程序文件和*.mdl模型文件;命令处理模块:出于安全因素考虑,对用户输入的命令进行过滤、格式化;MATLAB控制模块:使用COM技术,调用MATLAB,执行用户请求,并取回执行结果;MATLAB:执行MATLAB命令或程序,完成计算任务;其特征还在于工作步骤如下:(1)用户通过客户端模块提供的WEB界面编辑MATLAB命令或选择要上传到服务器用以执行的.m文件或.mdl模型文件,并向WEB服务器提交请求;(2)WEB服务器接到用户的请求之后,根据不同的请求调用不同的模块;如果用户需要执行MATLAB命令,WEB服务器直接将命令传送给命令处理模块,对命令字符串进行处理,主要包括两方面的处理:①去掉有可能损坏系统的命令,主要是“!”字符开头的命令,因为在MATLAB中可以通过“!”字符后跟系统命令来执行系统命令,特别是!format,!del,!copy,!move等命令,如果不对这些命令进行限制,恶意的MATLAB程序或错误的MATLAB程序很可能损坏服务器的文件系统,甚至损坏重要数据;②在命令末尾增加回车符,因为MATLAB命令以回车结尾时才开始运行,从客户端上传的命令字符串末尾可能没有回车符,该模块为这些命令字符串增加回车符;如果用户要运行.m程序文件或.mdl模型文件仿真,则调用文件上传模块上传用户的文件;.m程序文件上传后,出于安全考虑,与用户上传的命令字符串一样,都要经过命令处理模块才能够被送往MATLAB控制模块,然后由MATLAB执行;(3)命令处理模块处理后的MATLAB命令或文件上传模块得到的用户上传的文件,被提交给MATLAB控制模块;(4)MATLAB控制模块通过COM技术,产生一个MATLAB的COM对象,通过该对象执行MATLAB命令或.m、.mdl文件,并得到执行结果;(5)执行结果被转交给WEB服务器,由WEB服务器作为HTTP响应返回给客户端,客户端便以图表或曲线等格式看到执行结果,或者下载原始数据;至此一次远程科学计算的请求完成。
地址 100081北京市海淀区中关村南大街5号