《第18章--嵌入式Web服务器Thttpd移植-Linux系统移植(第2版)-教学课件.ppt》由会员分享,可在线阅读,更多相关《第18章--嵌入式Web服务器Thttpd移植-Linux系统移植(第2版)-教学课件.ppt(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第18章 嵌入式W eb 服务器Thttpd 移植 18.1 Thttpd 介绍 18.2 Thttpd 编译和HTML 页面测试 18.3 CGI 脚本测试 18.4 Thttpd 交叉编译与移植 18.5 Thttpd 与嵌入式数据库结合18.1 Thttpd 介绍 18.1.1 Web 服务器比较 18.1.2 Thttpd 的特点 18.1.3 Thttpd 核心代码分析18.1.1 Web 服务器比较 一般有3种常用Web 服务器:Httpd、Thttpd 和Boa。Httpd 是最简单的一个Web服务器,它的功能最弱,不支持认证,不支持CGI(Common Gateway Inte
2、rface,通用网关接口)。Thttpd 和Boa 都支持认证、CGI 等,功能都比较全。Boa 源代码开放、性能可靠、稳定性好,但是仅能作为一个单任务的Web 服务器。所以,使用简单、小巧、易移植、快速和安全的Thttpd 嵌入式Web 服务器是一个明智的选择。18.1.2 Thttpd 的特点 Thttpd 的特点是高效、安全,并且支持URL流量控制。基于这些特点其在嵌入式方面的应用很有前景。下面分别介绍其特点:1.安全性 2.高效性 3.流量控制2.高效性 Thttpd 对于并发请求不使用fork()来创建子进程处理,而是采用多路复用(Multiplex)技术来实现。而通过fork()的
3、方式创建子进程是父进程的一个复制,两者是独立的,使用该方式时,当并发的请求增多时,系统的性能被迅速降低。Thttpd 采用多路复用技术,当并发请求增多时节省了资源,提高了系统效率。3.流量控制 Thttpd 支持基于URL的文件流量限制,便于处理连续的视频流量。与Apache 比较,随着请求频率增加、请求数量增加时,Thttpd 的优势变得更加明显。18.1.3 Thttpd 核心代码分析 Thttpd 工作流程的主逻辑在thttpd.c 文件的main()函数中。该函数中描述了Thttpd 服务建立服务、接收请求、处理请求、日志文件及断开连接的过程。下面分析建立Web 服务器的核心函数httpd_initialize()。函数httpd_initialize()在文件libhttpd.c 中定义,用于初始化Web 服务器,如成功则返回httpd_server 类型指针指向建立的Web 服务器。