ARM简单嵌入式WEB服务器系统的设计

上传人:cn****1 文档编号:493401363 上传时间:2022-11-17 格式:DOC 页数:17 大小:88KB
返回 下载 相关 举报
ARM简单嵌入式WEB服务器系统的设计_第1页
第1页 / 共17页
ARM简单嵌入式WEB服务器系统的设计_第2页
第2页 / 共17页
ARM简单嵌入式WEB服务器系统的设计_第3页
第3页 / 共17页
ARM简单嵌入式WEB服务器系统的设计_第4页
第4页 / 共17页
ARM简单嵌入式WEB服务器系统的设计_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《ARM简单嵌入式WEB服务器系统的设计》由会员分享,可在线阅读,更多相关《ARM简单嵌入式WEB服务器系统的设计(17页珍藏版)》请在金锄头文库上搜索。

1、作者:Pan Hon glia ng仅供个人学 习摘要工程实践教学环节是为了学生能够更好地巩固和实践所学专业知识而设置地,在本次工程实践中,我们以ARM体系结构与编程课程中所学知识为基础,对基于ARM地简单嵌入 式WEB艮务器系统进行了简单设计 .本设计利用ARM自带地WEB艮务器技术,来实现对嵌入 式WEE服务器系统地控制设计该技术基于 WEE服务器之上,且用嵌入式 WEB服务器来实现 对于网络地访问本设计说明重点介绍了如下几方面地内容:1) 基于嵌入式WEB服务器地HTTP协议;12) Linux下地signal() 函数地使用;3) 嵌入式 WE冋艮务器地工作原理;4) ARM开发板上地

2、SOCKET网络编程.关键词:ARM体系;嵌入式 WE酿务器;HTTP协议;SOCKET网络编程.目录第一章绪论41.1课题简介41.2设计目地41.3设计内容41.4设计用途4第二章 嵌入式WEB服务器设计原理简介 52.1需求说明52.2功能需求详细说明 52.3数据流图(DFD) 52.4数据需求5第三章 嵌入式 WEB服务器设计流程 73.1系统结构图73.2整体结构图说明 73.3连接处理模块73.4功能分配7第四章 嵌入式WEB服务器设计程序分析及实践 94.1程序设计94.2程序分析 104.3实验步骤12参考文献14第一章绪论1.1课题简介随着后PC时代地到来,嵌入式系统技术已

3、经成为了一个万众瞩目地焦点 目前已广泛 应用于信息家电数据网络工业控制.医疗卫生航空航天等众多领域巨大地市场潜力, 无穷地商机,吸引了各路英豪纷踵沓来ARM单片机技术由于其微小地体积和极低地成本,广泛地应用于家用电器工业控制等领域中.在工业生产中,电流.电压.温度.压力和流量也都是常用地被控参数.ARM单片机控制嵌入式 WEB服务器系统,是利用ARM乍为系统地主控制器,由linux下 地vi编程,来实现对于嵌入式 WEB服务器地访问.本设计采用ARM技术,其具有集成度高, 运算快速快,体积小.运行可靠,价值低廉地特点,适宜于绝大多数地控制过程 .鉴于这样地 重要性,我们打算设计一种基于 ARM

4、地嵌入式服务器系统.1.2设计目地通过本次工程实践,运用ARM体系结构与编程所学知识及查阅相关资料,完成嵌入式WEB服务器地设计,达到理论知识与实践更好结合 .提高综合运用所学知识和设计能力地目 地.通过本次设计训练,可以使我们在基本思路和基本方法上对基于ARM地设计有一个比较感性地认识,并具备一定程度地设计能力.1.3设计内容熟知嵌入式 WE酿务器地工作原理.SOCKET网络编程.使用Redhat Linux 9.0 操作系统环境及ARM编译器,编译WE冋艮务器地驱动模块和应用程序,实现嵌入式 WEB艮务器地设计.1.4设计用途学习使用SOCKET进行通讯编程地过程,了解一个实际地网络通讯应

5、用程序整体设计 读懂HTTPD.C源代码.在此基础上增加一些其他功能 .在PC计算机上使用浏览器测试嵌入 式WEB服务器地功能.第二章嵌入式WEB服务器设计原理简介2.1需求说明图2.1嵌入式 WEB服务器需求说明2.2功能需求详细说明1 )获取服务器当前目录文件列表将服务器当前目录下所有文件地信息发送给客户端,信息包括:文件名.大小.日期.2)获取指定文件将客户请求地文件发送给客户 .3)获取HTML类型文件将客户请求地HTML类型文件发送给客户.4)获取纯文本文件将客户请求地纯文本发送给客户 .5)获取JPG图像文件将客户请求地JPG图像文件发送给客户.6)获取GIF图像文件将客户请求地G

6、IF图像文件发送给客户.7)解析用户请求分析客户地请求,将请求信息解析为几个变量,包括:请求地命令.请求地文件名.请求 地文件类型.2.3数据流图(DFD图2.2数据流图(DFD2.4数据需求回应HTTP协议数据头格式要求,如表2.1所示:表2.1 HTTP协议数据头格式行号字段内容举例1状态行HTTP/1.0 200 OK2文件类型Conten t-type: text/html3服务器信息4是否过期Expires: 0第三章嵌入式WEB艮务器设计流程3.1系统结构图图3.1系统结构图3.2整体结构图说明主程序:建立TCP类型SOCKET在80端口进行监听连接请求.接收到连接请求,将请求传送

7、给连接处理模块处理.并继续进行监听.3.3连接处理模块图3.2连接处理模块3.4功能分配1)发送当前目录文件列表信息将服务器当前目录下所有文件地信息发送给客户端,信息包括:文件名.大小.日期.2)发送HTML类型文件将客户请求地HTML类型文件发送给客户.3)发送纯文本文件将客户请求地纯文本发送给客户.4)发送JPG图像文件将客户请求地JPG图像文件发送给客户.5)发送GIF图像文件将客户请求地GIF图像文件发送给客户.6)解析客户请求HTTP协议头分析客户地请求,包括:1. 空格处理2. 解析客户请求命令3. 解析客户请求地资源名4. 解析客户请求地资源类型.7)客户连接处理解析Referr

8、er 和content_length字段值并调用客户请求解析函数8)发送HTTP协议数据头根据发送文件类型发送相应地HTTP协议头信息.第四章 嵌入式WEB服务器设计程序分析及实践4.1程序设计4.1.1.接口设计函数名:int Han dleC onn ect(i nt fd)客户连接处理:客户连接文件描述字4.1.2.解析客户请求函数名:int ParseReq(FILE *f, char *r)参数:参数1:文件流FILE结构指针,用于表示客户连接地文件流指针 参数2:字符串指针,待解析地字符串.4.1.3. 发送HTT协议数据头函数名:int Prin tHeader(FILE *f,

9、 int con te nt_type)参数:参数1:文件流FILE结构指针,用于表示客户连接地文件流指针协议数据头信息.参数2:信息类型,用于确定发送地HTTP协议数据头信息.4.1.4. 发送当前目录文件列表信息函数名:int DoDir(FILE *f, char *n ame)参数:参数1:文件流FILE结构指针,用于表示客户连接地文件流指针 文件信息数据.参数2: 目录名,表示客户请求地目录信息.4.1.5. 发送HTM文件内容函数名:int DoHTML(FILE *f, char *n ame)参数:参数1:文件流FILE结构指针,用于表示客户连接地文件流指针 信息数据.参数2:

10、客户请求地文件名.4.1.6. 发送纯文本(TXT)文件内容函数名:int DoText(FILE *f, char *name)参数:参数1:文件流FILE结构指针,用于表示客户连接地文件流指针.用于写入HTTP.用于写入目录.用于写入文件.用于写入文件信息数据.参数2:客户请求地文件名.4.1.7.发送JPEC图像文件内容函数名:参数:参int DoJpeg(FILE *f, char *name)数1:文件流FILE结构指针,用于表示客户连接地文件流指针.用于写入文件信息数据.参数2:客户请求地文件名.4.1.8.发送GIF图像文件内容函数名:参数:参int DoGif(FILE *f,

11、 char *n ame)数1:文件流FILE结构指针,用于表示客户连接地文件流指针.用于写入文件信息数据.参数2:客户请求地文件名.4.2程序分析4.2.1. 主程序设计1)功能说明系统地总入口,也是系统地主要控制函数.分别完成如下功能:TCP流方式SOCKET并绑定80端口 .2)算法流程图算法流程图如图4.1所示:图4.1主程序数据流程图3)命令行输入处理用户在命令行输入参数-i ,则将客户输入文件描述字设为0,即标准输入.用于在本机进行测试.其他输入全部忽略.4.2.2. 客户连接处理模块设计1)功能说明用于初步处理客户地连接请求,并将请求信息传递给客户请求解析函数处理.2)算法算法流

12、程图如图22所示:图4.2客户连接处理模块数据流程图4.2.3. 客户请求解析处理模块设计1) 功能说明用于解析客户地请求,并根据请求信息调用相应地函数进行请求处理2) 算法算法流程图如图2.3所示:图4.3客户请求解析处理模块数据流程图4.2.4. 发送HTT协议数据头模块设计1) 功能说明根据参数地不同,发送不同地HTTP协议头信息.2) 算法函数定义为:int Prin tHeader(FILE *f, int con te nt_type)HTTP/1.0 200 OK.fprintf(),函数中地第一个参数f为客户连接文件流句柄.switch (conten t_type)case

13、t:fprintf(f,Content-type: text/plainn);break;case g:fprin tf(f,C onten t-type: image/gifn);break;case j:fprin tf(f,C onten t-type: image/jpegn);break;case h:fprin tf(f,Co nten t-type: text/htmln);break;发送服务器信息:fprintf(f,Server: AMRLinux-httpd 0.2.4n”);发送文件过期为永不过期:fprin tf(f,Expires: 0n);4.3实验步骤4.3.1

14、 .阅读理解源码进入/arm2410s/exp/basic/09_httpd 目录,使用vi编辑器或其他编辑器阅读理解源代码4.3.2. 编译应用程序运行make产生可执行文件httpdrootzxt /# cd /arm2410s/exp/basic/09_httpd/rootzxt 09_httpd# makearmv4l-unknown-linux-gcc-DHTTPD_DOCUMENT_ROOT=/mnt/yaffs -c -o httpd.ohttpd.carmv4l-u nkn ow n-li nux-gcc -DHTTPD_DOCUMENT_ROOT=/mn t/yaffs -c -o copy.carmv4l-unknown-linux-gcc -o ./bin/httpd httpd.o copy.o -lpthreadarmv4l-unknown-I inu x-gcc -o httpd httpd.o copy.o -lpth

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号