- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式WEB服务器BOACGI
嵌入式WEB服务器:BOA+CGI 报 告 人: 李 实 * ASIPP 随着Internet技术的兴起,在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流。原因在于: 1、不需要专用的通信线路 2、传输的信息不局限于数据信号,还有声音和图像 3、其通信协议是标准且公开的 在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器,能够生成动态页面,在用户端只需要通过Web浏览器就可以对嵌入式设备进行管理和监控,非常方便实用。 一个嵌入式Web服务器不可能是很全面的,但是: 1、拥有足够小的容量 2、不影响嵌入式系统的整体性能 3、必须具备一个Web服务器应有的特征。 1、一个非常小巧的Web服务器,约60KB 2、一款单任务的HTTP 服务器, 通过建立HTTP 请求列表来处理多路HTTP 连接请求, 同时它只为CGI 程序创建新的进程, 这样就在最大程度上节省了系统资源 3、具有自动生成目录、自动解压文件等功能 因此, Boa 具有很高的HTTP 请求处理速度和效率 BOA服务器简介: BOA的功能实现: 完成Web 服务器的初始化工作 (b) 当有客户端连接请求时,Web 服务器负责接收客户端请求, 并保存相关请求信息; (c) 在接收到客户端的连接请求之后,分析客户端请求,求做出相应的处理; (d) Web服务器完成相应处理后, 向客户端浏览器发送响应信息, 关闭与客户机的TCP 连接. Boa 根据请求方法的不同, 做出不同的响应. 1、请求方法为HEAD, 则直接向浏览器返回响应首部; 2、请求方法为GET, 则在返回响应首部的同时, 将客户端请求的URL 目标文件从服务器上读出, 并且发送给客户端浏览器; 3、请求方法为POST, 则将客户发送过来的表单信息传送给相应的CGI 程序, 作为CGI 的参数来执行CGI 程序, 并将执行结果发送给客户端浏览器. BOA的移植: 1、修改Web 服务器Boa,(输入输出缓存,可以处理的HTTP 连接数量,用户必须自己实现一些函数功能) 2、交叉编译Boa 3、配置Web服务器Boa,主要在boa.conf文件中需要对其运行环境、参数等进行设置 :端口,服务器名称,文件根目录,权限等 4、测试运行 目前Web技术中生成动态Web页面的方法有CGI和服务器脚本,如JSP, ASP等,但后者需要Web服务器具有这些脚本的运行支持模块。在嵌入式Web服务器中,考虑到资源限制问题,一般都只提供CGI支持,因此在嵌入式设备中Web方式应用实际上就是基于CGI的程序开发。 #include stdio.hint main(void){????????printf(Content-type: text/html\n\n);????????printf(html\n);????????printf(headtitleCGI Output/title/head\n);????????printf(body\n);????????printf(h1Hello,world./h1\n);????????printf(body\n);????????printf(/html\n);????????exit(0);} CSP(是C Language Service Page 的缩写) 它是一种基于C语言的脚本开发技术。跟ASP、JSP类似,它们都是CGI(Common Gateway Interface)的一种变种。 是直接将C/C++语句插入到HTML/XML等模板文件中脚本格式。它的语法非常简单,像ASP/JSP一样通过% %标记嵌入C语句。使得CSP的开发更快速、更高效,同时还大大提了最终代码的可读性和维护性。 html headtitleCGI Output/title/head body % @include stdio.h % % $printf(%sBR, Hello world! ); % /body /html eybuild开发套件 它能自动将CSP页面及其相关文件(CSS/JS/GIF/JPG等)编译成C/C++源程序,并链接eybuild平台库生成可以在目标系统上直接执行的CGI程序。 C源程序 CGI程序 CSP文件 eybuild CSP2BIN 编译程序 Eybuild优势 1、继承了C语言的一切特性 2、完全遵循CGI1.1标准 3、WEB界面的开发和执行控制动作进行了有效的分离。编辑好HTML页面模板, 然后在适当地方嵌入C语句即可以有效控制页面的输出 谢谢! * ASIPP
文档评论(0)