当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]嵌入式Web服务器移植与测试

随着计算机技术和现代通信技术的不断发展,设备即网络是后PC时代对嵌入式系统的客观要求,因此也需要建立嵌入式设备的网络Web服务器。嵌入式Web能够实现在各种工业监控、检测、以及自动化控制等领域的远程控制,世界上无论任何地方,只要是存在Internet网络,都能够通过Web服务对各种现场进行管理,甚至可以在有网络的手持设备上对现场进行控制管理操作。传统的Web服务器大多在大型机,PC机上实现,其成本比较高,而且不方便工业现场的应用实施,嵌入式系统以及嵌入式小型Web服务器的出现使得Web服务运行在资源、性能有限的嵌入式设备上提供了条件。本文主要介绍嵌入式Web服务器BOA在ARM9嵌入式系统设备板上的移植,并对移植后的BOA服务器进行测试验证。

1 硬件设计需求
    根据系统要求,硬件电路部分核心处理器采用三星公司的S3C2440,该器件基于ARM920T内核,主频400 MHz,是性价比比较高的嵌入式32位处理器之一。S3C2440微处理器内部资源丰富,包括1个LCD控制器、SDRAM控制器、4个通道的DMA等。开发板的存储系统分SDRAM和Flash两
部分,其中SDRAM存储系统使用了两片外接的32 M字节总共64 M字节的SDRAM芯片,其型号为HY57V561620FTP。这部分通常称之为内存,两片SDRAM并在一起形成32位宽的数据总线,增加了数据访问速度;开发板具有两种Flash:一种是型号为SST39VFl60l的Nor Flash,大小为2 M字节;另一种是型号为K9F1208的Nand Flash,大小为64 M字节;开发板采用的网卡芯片为DM9000,它自适应10/100 M网络,RJ45连接头内部已经包含了耦合线圈,因此在开发板上没有另接网络变压器,通过网线即可连接开发板到Internet网络中,从而实现嵌入式Web服务。另外还包括电源、晶振、JTAG调试口,以及基本输入输出端口等部分。嵌入式硬件设计框图如图1所示。



2 嵌入式Web服务器BOA实现原理
    BOA是一款非常小巧的Web服务器,源代码开放、性能优秀、支持CGI通用网关接口技术,特别适合应用在嵌入式系统中。BOA服务器主要功能是在互联嵌入式设备之间进行信息交互,达到通过网络对嵌入式设备进行监控,并将反馈信息自动上传给主控设备的目的。它是基于HTTP超文本传输协议的,Web网页是Web服务最基本的传输单元。嵌入式Web服务的工作基于客户机/服务器计算模型,由Web浏览器(客户机)和Web服务器(服务器)构成,也即著名的B/S结构。运行于客户端的浏览器首先要与嵌入式Web服务器BOA端建立连接,打开一个套接字虚拟文件,此文件建立标志着SOCKET连接建立成功。然后客户端浏览器通过套接字SOCKET以GET或者POST参数传递方式向Web服务器提交请求,Web浏览器提交请求后,通过HTTP协议传送给Web服务器。Web服务器接到请求后,根据请求的不同进行事务处理,返回HTML文件或者通过CGI调用外部应用程序,返回处理结果。服务器通过CGI与外部应用程序和脚本之间进行交互,根据客户端浏览器在请求时所采用的方法,服务器会搜集客户所提供的信息,并将该部分信息发送给指定的CGI扩展程序,CGI扩展程序进行信息处理并将结果返回给服务器,然后服务器对信息进行分析,并将结果发送回客户端在浏览器上显示出来。

3 嵌入式Web服务器BOA移植
    首先,Web服务器BOA是要运行于ARM嵌入式设备上的,因此需要对BOA源文件进行交叉编译。编译工具使用arm-linux-gcc-4.3.2交叉编译工具链,拷贝文件arm-lin-ux-gcc-4.3.2.tgz到目录/tmp下,执行命令cd/tmp;tar zxvfarm-linux-gcc-4.3.2.tgz-C/.这样交叉编泽工具就安装到/usr/local/arm/4.3.2目录下面。为确保在打开终端后能直接应用交叉编译工具链,要在/root/.bashrc文件中把编译器路径加入到系统环境变量。运行命令gedit/root/.bashrc编辑文件/root/.bashrc。在文件的最后添加export PATH=$PATH:/usr/local/arm/4.3.2/bin。保存退出。接着执行source/root/.bashrc命令使设置生效。最后检测交叉编译工具是否安装成功,命令为在终端中输入arm-linux-gcc-v;若能在输出的信息中看到arm-linux-gcc版本号4.3.2,说明安装成功。
    其次,交叉编译BOA源码,拷贝BOA源码包boa-0.94.13.tar.gz到/tmp目录下,解压缩掩码包tar zxvf boa-0.94.13.tar.gz;
解压后在Linux终端进入BOA所在目录,首先执行命令./con-figure生成Makefile文件,然后打开文件夹,找到Makefile文件,用文本编辑器打开,找到CC=gcc,CPP=gcc-E两行,分别将其设置成上一步生成的交叉编译工具路径CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc和CPP=/usr/local/arm/4.3.2/bin/arm-linux-gcc-E,然后将Makefile保存后退出,回到终端执行make命令,进行交叉编译得到可执行程序BOA,它就是能够运行在ARM嵌入式设备上的执行文件。可通过命令fileboa查看文件信息。拷贝此BOA文件到目标板/bin目录中。
    再次,配置boa服务器。配置BOA主要是为了使其能够支持CGI程序的执行。在文件系统的/etc目录下mkdir boa建立一个BOA目录,拷贝BOA源码目录中的boa.conf文件到文件系统目录/etc/boa目录下,然后根据嵌入式BOA的需求在此配置文件的基础上进行修改。在修改此配置文件时需要注意保证其他文件和设置必须与配置文件相一致,否则嵌入式Web服务器BOA就不能正常运行。boa.conf文件主要配置内容如图2所示。[!--empirenews.page--]



4 嵌入式Web服务器BOA移植测试
    测试的目的主要是验证嵌入式Web服务器BOA移植以及配置是否正确,能否正常工作。根据以上配置文件boa.conf的内容在文件系统目录/var下创建www目录用于存放html文档以及html文档所需的图像资源。创建/www/cgi-bin目录用于存放CGI程序。
    1)制作Web测试页 Web测试网页主要由Html语言、
    Javascript脚本语言完成,新建文本文档输入网页代码如图3所示。


    保存此文件并重命名为index.html。拷贝此Html文件到目标板/vat/www/目录下。假设开发宿主机与目标板在同一局域网中,并且无网络故障,目标板ip地址设置为192.168.1.156。在宿主机上运行浏览器进行BOA页面测试,在浏览器地址栏中输入ip地址192.168.1.-1,则可以看到Web测试页面如图4所示。


    2)CGI脚本测试在目标板打开一个终端输入命令
    viceshi.cgi,新建一个脚本文件,输入如图5所示代码。


    :wq保存此脚本文件,并拷贝此文件到/var/www/cgi-bin目录中,chmod+x ceshi.cgi更改此文件的执行权限。然后在宿主机(客户端)浏览器中输入http://192.168.1.156/cgi-bin/ceshi.cgi地址,经过测试符合功能要求。

5 结论
    本文实现了嵌入式BOA Web服务器在ARM9目标板的移植以实现微型机在各种控制领域的远程管理,并通过了移植后测试。嵌入式BOA的成功移植为以后在具体生活、工业现场中的应用提供了条件,方便了未来Web应用工程的开发。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

美国纽约州阿蒙克2022年10月20日 /美通社/ -- IBM(NYSE: IBM)发布 2022 年第三季度业绩报告。 IBM 董事长兼首席执行官 Arvind Kri...

关键字: IBM 软件 BSP 云平台

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

嵌入式软件

15715 篇文章

关注

发布文章

编辑精选

技术子站

关闭