手机平台web服务器的内存分配研究及实现

手机平台web服务器的内存分配研究及实现

ID:33621567

大小:1.60 MB

页数:38页

时间:2019-02-27

手机平台web服务器的内存分配研究及实现_第1页
手机平台web服务器的内存分配研究及实现_第2页
手机平台web服务器的内存分配研究及实现_第3页
手机平台web服务器的内存分配研究及实现_第4页
手机平台web服务器的内存分配研究及实现_第5页
资源描述:

《手机平台web服务器的内存分配研究及实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、兰州人学硕}:学位论文手机、r台web服务器的内存分配研究及实现1.2.2TCP通信原理‘261当服务器程序开始运行时,主进程就创建一个套接口,并和主机地址绑定到一起,随后置为被动监听状态,等待客户端连接请求的到来。一旦接收了一个连接,ACCEPT会返回一个新的套接口描述符,主进程则开辟一个新的子进程来处理这个新的连接,这样系统可以同时接受多个客户端来的请求。程序具体实现如下:intsocket(family,type,protoc01),该函数用来创建一个套接口,并返回一个短整数的套接口描述符。intbind(socke

2、t,localaddr,addrlen),该函数为一个套接口指明一个本地IP地址和协议端口号,一般用来为服务器指定知名端口,其中socket为上边socket()函数所创建的套接口描述符。intlisten(socket,queuelen),服务器使用该函数使上面所创建的套接口处于被动状态(即准备接受客户端的请求)。intaccept(socket,addr,addrlen),该函数接受连接请求,为该请求创建一个新套接口,并返回新的套接口描述符,交给子进程具体处理。原套接口继续用桌监听后续请求。子进程用来处理每个具体请求。

3、’’1.2.3工作方式系统初始化后,进入主程序循环部分。主程序循环包括两大部分:对接收到的以太网数据帧进行解包和对欲发送的数据进行封装并发送。对接收到的以太网数据帧进行解包,供应用程序使用;对欲发送的数据进行打包,将数据4兰州大学硕七学位论文『-机平台web服务器的内存分配研究及实现以以太网数据帧的格式发送出去,使采用TCP/IP协议的以太网内所有计算机能收到此数据帧。详细过程为:先检查是否收到以太网数据帧,若己收到以太网数据帧,则检测以太网数据帧首部,判断所载数据类型,然后对接收到的数据进行相应处理:若接收到的以太网数据

4、帧中包含ARP数据,则调用ARP处理程序:若接收到的以太网数据帧中包含IP数据报,则针对其是否为ICMP、TCP协议格式分别进行相应的解包处理。若不包含IP数据报,则丢弃此数据帧。若未收到以太网数据帧,此时若有数据要发送,则对数据进行打包,将数据以以太网数据帧的格式发送出去。若无数据要发送,则回到主程序循环。其具体过程为,Web服务器遵循HTTP协议为客户服务,并使用TCP/IP协议进行网络通讯,其工作方式我们分成以下几个步骤:乜1第一步:等待客户请求。Web服务器等待来自Internet的客户的请求,如图卜l所示。web

5、服务器监听一个端口,直到有请求进来。此时,服务器处于“睡眠状态"。5兰州人学硕l:学位论文手机‘甲台web服务器的内存分配研究及实现◇◇◇客户机l:⋯⋯⋯一I+nte‘r7net。。7“ijt‰㈧。‰#“^ok。“⋯⋯⋯“。‘⋯“—々m%⋯hw-,~一一.j、m无请求,监听中Lister()Web服务器图1-1监听状态的服务器第二步:客户请求到来。客户通过浏览器对文档提出请求。用户可能是敲入了一个URL地址,也可能是点击了一个HTML文档中的链接。无论何种方式,均会发出请求。比如键入了这样的URL地址:http://lav

6、w.sina.com.cn/sample.html它也可能是位于一个HTML链接中,如:Clickhere</A>客户机上的网络软件负责定位服务器主机,并建立一条客户与服务器www.sina.com.cn间的双向网络连接,实现这一点要依赖于Internet上的诸多协议及域名服务系统。6兰州火学硕’t:学位论文丁.机、r台web服务器的内存分配研究及实现一旦连接建立,客户便按照HTTP协议发出请求。在本例中,客户请求文档/sample.h

7、tml。发出如下ASCII字符串⋯:GET/sample.htmlHTTP/1.1这些字符串经过网上传输,被服务器接受并保存在内存中,图-2给出了基于web服务器连接的请求的发送。GET/§§§客户机IF■■了—■■鬣毛;i^蠢⋯■”⋯_=’?要爵器接受请求,接收’机发来的请求字符目淼ttHTTP/\弋Accept0Web服务器图1.2服务器接收客户机的请求第三步:服务器解析请求。web服务器对请求按照HTTP协议进行解码来确定进一步的动作,如图1.3所示。涉及的内容有三个要点:方法(GET)、文档(/sample.htm

8、l)和浏览器使用的协议(HTTP/I.1)。其中方法告诉服务器应完成的动作,GET方法的含义很显然是:服务器应定位、读取文件并将它返回给客户。web服务器软件现在就知道了:它应找到文件/sample.html,并使用HTTP/1.1协议将内容返回给7兰州人学硕I:学位论文手机平台web服务器的内存分配研

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。