嵌入式 Web视频服务器
随着 Internet 技术的兴起,在嵌入式设备的管理与交互中,基于 Web 方式的应用成为目前的主流,
这种程序结构也就是大家非常熟悉的 B/S 结构,即在嵌入式设备上运行一个支持脚本或 CGI 功能的 Web
服务器,能够生成动态页面,在用户端只需要通过 Web 浏览器就可以对嵌入式设备进行管理和监控,非
常方便实用。本节主要介绍这种应用的开发和移植工作。
用户首先需要在嵌入式设备上成功移植支持脚本或 CGI 功能的 Web 服务器,然后才能进行应用程序的开
发。
应用: 1,发布网页。
2 ,视频监控系统设计。
3,远程控制系统设计。
1 、嵌入式 Web 服务器移植 由于嵌入式设备资源一般都比较有限, 并且也不需要能同时处理很多用户
的请求,因此不会使用 Linux 下最常用的如 Apache 等服务器, 而需要使用一些专门为嵌入式设备设计的
Web 服务器,这些 Web 服务器在存贮空间和运行时所占有的内存空间上都会非常适合于嵌入式应用场合。
典 型 的 嵌 入 式 Web 服 务 器 有 Boa ( www.boa.org ) 和 thttpd
(http://www.acme.com/software/thttpd/ )等,它们和 Apache 等高性能的 Web 服务器主要的区
别在于它们一般是单进程服务器,只有在完成一个用户请求后才能响应另一个用户的请求,而无法并发响
应,但这在嵌入式设备的应用场合里已经足够了。
我们绍比较常用的 Boa 服务器的移植。
Boa 是一个非常小巧的 Web 服务器,可执行代码只有约 60KB 。它是一个单任务 Web 服务器,只能
依次完成用户的请求,而不会 fork 出新的进程来处理并发连接请求。但 Boa 支持 CGI ,能够为 CGI 程序
fork 出一个进程来执行。 Boa 的设计目标是速度和安全,在其站点公布的性能测试中, Boa 的性能要好于
Apache 服务器。
第一步 完成 Boa 程序的 移植 。从 www.boa.org 下载 Boa 源码,当前最新版本为 0.94.13 ,将其解压
并进入源码目录的 src 子目录
# tar xzf boa-0.94.13.tar .gz
# cd boa-0.94.13/src
生成 Makefile 文件
# ./configure
修改 Makefile 文件,找到 CC=gcc ,将其改成 CC = arm-linux-gcc ,再找到 CPP = gcc –E,将其
改成 CPP = arm-linux-gcc –E,并保存退出。
然后运行 make 进行编译, 得到的可执行程序为 boa ,将调试信息剥去, 得到的最后程序只有约 60KB
大小。
# make
# arm-linux-strip boa
第二步 完成 Boa 的配置 ,使其能够支持 CGI 程序的执行。
************************************************************************
先仔细阅读下面,主要是为了先准备好需要的东西,即先把药配置的文件修改好,最后在把他们送到
需要送到的目录中去。
以下只是一个文件的配置内容:
1. Boa 需要在 /etc 目录下建立一个 boa 目录,里面放入 Boa 的主要配置文件 boa.conf 。
在 Boa 源码目录下已有一个示例 boa.conf ,可以在其基础上进行修改, 下面解释一下该文件的含义: