嵌入式linux项目开发(一)——BOA移植
项目目标:使用BOA、CGIC、SQLite搭建嵌入式web服务器
一、嵌入式web服务器BOA简介
在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流,即在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器,能够生成动态页面,在用户端只需要通过Web浏览器就可以对嵌入式设备进行管理和监控,使用极为方便。
目前嵌入式设备中所使用的web服务器主要有:boa、thttpd、mini_httpd、shttpd、lighttpd、goaheand、appweb和apache等。
BOA是Paul Philips在1991年开发的开源的嵌入式web服务器,BOA功能强大,支持认证,CGI等,应用广泛,特别适合于嵌入式设备。与传统的web服务器为每个访问连接开启一个进程不同,BOA是一个单任务的web服务器,不会为多个连接开启多个任务进程。BOA对所有的活动的http连接在内部进行处理,而且只为每个CGI连接(独立的进程)开启新的进程。因此,BOA在同等硬件条件下显示出更快的速度。测试表明boa在Pentium 300MHZ下能够每秒钟处理几千次点击,在20 MHz 386/SX下能够每秒钟处理几十次点击访问。
BOA与apache等高性能web服务器主要区别是,BOA是单进程的服务器,只有在完成一个用户请求后才能响应另一个用户的请求,无法并发响应,在嵌入式设备的应用场合里已经足够。
BOA是一个非常小巧的Web服务器,可执行代码只有约60KB,是一个单任务Web服务器,只能依次完成用户的请求,而不会fork出新的进程来处理并发连接请求;但BOA支持CGIÿ