Web的嵌入式设备管理_第1页
Web的嵌入式设备管理_第2页
Web的嵌入式设备管理_第3页
Web的嵌入式设备管理_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于Web的嵌入式设备管理随普互联网络换件、软件的迅猛发展.嵌入式系统被广泛应用到匸作和生活的各个领域中.如何对这些设 备进行治理成为嵌入式系统软件开发中的一个重雯方而。用户只有通过设备所提供的治理接口对共进行配 宜、治理和监控,因些治理接易用程度和效率成为衡虽设备优劣的重要标准之一。在嵌入式设备中加入HTTP 服务能将其转化成Web Server.可以向Internet或内部网提供基于牠b的图形化治理接口.用户可以使 用浏览器作为接口來访问嵌入式设备。这样不仅使设备的易用性大大提岛.而且可以省去专用治理软件, 从而方便地进行统一治理。1 Wind Web Server 介绍VxWorks是册

2、ndRiver公司开发的具有匸业体体育场地位的髙位能实时操作系统内核.它是一个运行在目 标机上的商性能、可裁减的嵌入式实时操作系统.具有先进的网络功能.支持市面上逾90$的处理器。该 公司的网络协议栈产品Wind Web Server提供了功能强大的基于b方式的网络治理系统.可以无缝地集 成到任何基于VxWorks的嵌入式应用中。Wind Web Server具有以下特性:完全支持HTTP 11标准不需要文件系统支持Java Appletsx图像文件.声音文件等可通过标记支持SSI URL处理可定制灵活配宜的模块结构脚本小(740KB)支持用户/用户组/密码认证有IP过滤机制支持CGI可记录日

3、志.支持别名支持服务器推送(Server push)技术cWind Web Server采用模块设计,可以方便地进行裁剪以满足应用的非凡要求根据配WindWeb Server需雯740KB的内存。在嵌入式系统中换件资源宝贵,有时并不需要文件系统。WindWeb Server提供了一个匸具Pagepack,可以在编译和连接时将Web内容放在程序代码中从而可以存储在 ROM 中。实例应用在ADSL汇接器系统软件的开发过程中使用Wind Web Server开发了基于Web的图形化设备治理接口用 户在任何地点只需使用浏览器就可以对设备进行全面的治理.包括:可以对系统用户认证和治理,不同的用户具有不同

4、的操作权限:可以对系统进行实时监控.页面依照机柜布局设讣。设备面板和页面上的各种信号灯同步变化 一目了 然。同时可以在页面上直接使用设备面板上的各种按键.操作方便。采用了服务器推送技术.降低了网络 通信址和系统负担:可以对初如化数据进行修改和保存:可以远程更新整个软件系统:可以随时获取和淸除讣费信息。整个程序(含页而代码)共200K字节左右任务的优先级设为般低.不彩响原系统的正常运行,达到J很 好的效果。2 Wind Web Server 结构嵌入式系统的使用的资源是受限的.在许女飞速下甚至没有外部存储系统,这一点要求嵌入式系统的b 服务器与UNIX和Windows平台上的Web服务器有很大不

5、同 Wind Web Server采用模块化和可伸缩的系统 结构.答应用户进行裁剪以满足资源的不同限制。Wind Web Server由以下耍害部分组成: Web服务器核心 HTTP请求处理模块( RP2调度程序 RPM.服务器端符号表 API函数2. 1 Web服务器核心和RPM调度程序Web服务湍核心作为一个任务运行在目标系统中。提供网络服务绑定、Socket函数调用和初始化参数的设 宜等。RPH调度程序决定怎样响应HTTP请求即决定/HTTP请求的地址和RPH的对应关系2.2 HTTP请求处理模块(RPM)HTTP请求处理模块分为两大类:系统RPH和用户RPH。其中系统RPM执行HTTP

6、请求的基木处理.包括:记 录日志、处理别名与MIME头.IP地址检查、密码验证和访问限制。而用户RPM处理具体的页血请求,包 括:文件系统RPM、SSI (Server Side Include) RPM、CGI PRJk用户函数调用RPM、服务器推送RPH等。 另外用户可以使用自定义RPM完成一些非凡的处理过程-2.3服务器端符号表Wind Web Server主耍通过符号表來支持Web存取目标机中的变虽.每个符号表包含如下屈性: Address内存地址 Name名称 Descrip 描述 Type数据类型Num Elems变址个数M开发论坛 GET Routine读加调函数GET Para

7、m调回调数数的参数 SET Routine写回调函数SET Param写回涮函数的参数 Access ID变址的访问控制.将网页请求和符号表联系起來的方法有两种:扩展SSI和股务器推送。(1)扩展SSI的实现可以在HTML网贞中使用标记,每个标记都与存在干Wind Web Server符号表中的一个读或写回调函数相对 应。X网贞为Wind Web Server请求时包含变址值等动态信息的读或写回调函数输岀替代了网页上的标 记.从而动态显示或提交数据内容。这项技术同时提商了在HTML贞中处理表单的能力。传统的Web Server 只能处理爭先确定的缺省的表敢元素.在Wind Web Server

8、实际值可以从符号表中得以,然后在HTML页 被提交到客户端前插入到表单中o Wind Web Server还提供了一个工具formpack,用于在包含表单的普通 网页中加入标记。Wind Web Server中已经包含标准的SSI实现,如输入框.下拉列表、复选框等。另外,用户可以加入自 定义的SSI函数以处理特定的HTTP请求。(2)服务器推送的实现HTTP是一种请求响应协议,假如要对股务器端进行持续的监控.必须不断地发送请求刷新页【加这将大大 加重服务器的负担。Wind Web Server能够使用内嵌的Linve Control模块在0讪I中的Javaapplet与服务器端的符号表之间建立

9、一条持续的交线链路,使服务器端符号表变虽的改变无需客户端请求 而直接对客户端发布,从而实现了服务器推送的目的。2. 4 HTTP请求处理过程一个典型的HTTP请求处理包含以下步骤:(1) 接收到HTTP请求后,服务器取出包含目的URL的请求地字符串,将其存入描述HTTP请求的数据结构 中;(2) 假如该请求是页面提交,即如下形式:Paral=xxx?2=xxx,则将提交参数存入环境变虽QVERY.STRING 中。(3) 调用所有已配置的系统RPM,假如返回正确则继续:(4) 调用页面对应的用户PRM.假如该页血中包含SSI标记,则调用SSI RPM:(5) 査找标记.例如:则调用标准SSI函

10、数ShowValue ()对符号表中的变& usersymbol进行处理.然 后将得到的变量值插入要返回的HTML页面中,传送至客户端。3并发中的要吿技术3.1自定义用户RPM通过调用函数httpRomConfAdd (HTTP_M_GET, /user_rpm/User_rpm),把形如的请求用函数框架如下: short User_rpm (HTTP_REQ_ID reqld;char * para。httpStatusSet (reqld, HTTP_0KhttpHeaderGenerate (reqld )o / * 产生 THHP 头* / para=httpGetEnv (敲??兜?

11、刼卜剔义届)。/*得到输入参数* /*处理输入参数及预备输出结果*/httpStringPut (敲?)o/* 开始输出* /*输岀全部HTML语句*/httpStringPut (敲?):/* 结束输出*/return (RPM_D0XE)o处理函数SSI自定义32通过调用函数httpSsiFnConfAdd (%user ssi, User_ssi )建立自定义SSI处理函数User_ssi。耳而面中包 含如下标记时:,服务器将调用函数User.ssi (参数为para),并将输入插到倾备返回的HTTP页而中。函 数User_rpm的实实框架如下:short User_ssi (HTTP_

12、REQ_ID redid, * szArg) * paracparg=szArga / *得到输入参数* /*处理输入参数及预备输出结*/httpStringPut (reqld,):/* 输出全部 HTML 语句*/return (HTTP_OK) 3. 3 et Java applet实现服务湍推送Live Control模块的API提供如卜Java类的实现: DirectRegistry Applet与符号表进行通讯的基木部件 DirectReadProxy从DirectRegistry中获取符号表变:的改变 DirectWr it eProxy HI 新 DirectRegistry

13、中符号表变虽的值 DataObjectChangeListenet DataObjectStatusListener 用于监听的容器用Java applet实现服务器推送的框架如下:(1) 创建用于连接服务器瑞的DirectRegistry类的实例:myServerURL=new URL (http:/ getDocumentBase () getHost ()韵?攔?myRegistry=new DirectRegistry (myServerURL)c(2) 创建用于监听符号表变址的Java部件:myWidget=new TextWidget (if?)。(3) 创建DirectReadP

14、roxy和DirectWr it eProxy的实例用干读写符号表变虽my Symbol:myReadProxy=new DirectReadProxy (浜血J浹丫黄屬)。myWriteProxy=new DirectWnteProxy (浜H卩浹潢屬)。(4) 将 Java 部件 myWidget 加入 myReadProxy 和 my Write Proxy成为监听容器:myReadProxy addDataObjectChangeListener (myWidget);myWriteProxy addDataObjectChangeListener (myWidget);(5) 将已创建的监听容器myReadProxy myWr it eProxy加入myRegistry中.完成Applet与服务器端LiveControl模块的连接:myRegistry addPropertyChangeListener (myReadProxy)myRegistry addPropertyChangeListener (myWriteProxy):另外,用户可以创建自己的Java部

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论