嵌入式系统设计期末大作业.pdf
《嵌入式系统设计期末大作业.pdf》由会员分享,可在线阅读,更多相关《嵌入式系统设计期末大作业.pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、江苏科技大学嵌入式系统设计期末大作业-嵌入式 web 服务器设计学号:姓名:专业:江苏科技大学2016-12-30嵌入式嵌入式 WebWeb 服务器的设计与实现服务器的设计与实现引言引言近年来,传统上用于办公室和商业的以太网逐渐进入了基于嵌入式设备的控制领域。Web 技术可跨越诸多设备和系统在硬件和软件产品间做到即连即用,只需用 Web 浏览器通过以太网和 TCPIP 协议便可访问各种信息终端。客户机可任意设置,只要能连上 Internet 并有权访问 Web 服务器,便可查阅现场有关信息,给维护和管理工作带来很大的方便。本文提出的基于 ARM Linux 的嵌入式Web 服务器以 S3C24
2、10 处理器为核心,以可裁减可移植的 Linux 为操作系统,为嵌入式系统的 Internet 接入提供了一种方便、快捷、简单的实现方法。1 嵌入式 web 服务器技术嵌入式 Web 服务器(embedded web server,EWS)是指将 Web 服务器引入到现场测试和控制设备中,在相应的硬件平台和软件系统的支持下,使传统的测试和控制设备转变为具备了以 TCP/IP 为底层通信协议,Web 技术为核心的基于互联网的网络测试和控制设备。其执行 3 种基本功能:静态和动态网页信息发布;提供接口监测现场设备;提供接口控制现场设备。由于 Web 技术的开放性和独立平台特性,降低了软件系统和通信
3、系统的设计、维护工作量,提高了现场测试和控制设备的管理水平。嵌入式 Web 服务器技术提供了异构网络远程管理和监控设备的方法和途径。在嵌入式 Linux 系统中,常用的 Web Server 有 Boa、httpd、thttpd 和mini-httpd 等。其中 Boa 是一个运行在类 Unix 系统中的小型 WebServer,适合嵌入式环境。在 Boa 中若两个用户同时访问,则其中的一个必须等待,它产生独立进程来处理 CGI(通用网关接口)程序,因此占用较少的资源,其体系结构如图 1 所示。Boa 的优点在于其快速可靠性。它与其它服务器的区别:没有为CGI 程序设置 REMOTE_HOST
4、 环境变量;没有 Server-Side Include(SSI)项,要产生动态网页只能通过 CGI:没有设置进入控制,而是根据 LinuxUnix 的文件系统的权限来决定服务的对象:没有 chroot 选项,即不能改变根目录。基于以上的阐述,Boa 应用到嵌入式平台上有着诸多的优势,本文的嵌入式 Web 服务器也因此选用 Boa 作为平台。下面笔者将着重介绍嵌入式 Web 服务器的硬件平台及软件体系的设计与实现。图 1 Boa 网络服务器的体系结构2 2 硬件平台的设计与实现硬件平台的设计与实现本文的硬件平台采用 S3C2410 为系统硬件核心,系统框图如图 2 所示。主要包括:存储系统、系
5、统接口、用户接口(显示 LCD 与键盘)3 个部分。图 2 硬件平台体系结构 S3C2410 把外部复位信号作为一个中断处理,在系统复位时,程序指针(PC)被设置为 0,程序跳转到 0 x00000000 开始运行。此空间对应 Bank0,系统的2MB 的 NORFlash 和处理器的 Bank0 相连接。在 NORFlash 中存储的是BootLoader,它负责配置处理器的结构、工作模式以及自动检测系统的各个硬件是否工作正常。系统经过初始化和自检后,BootLoader 负责把 16 MBNANDFIash 的 zlmage(即软件系统的镜像文件)复制到 0 xc0008000 地址(此地
6、址是系统 64MB SDRAM 的首地址)。然后,引导程序把 PC 指向 0 xc0008000 地址,系统开始运行。3 3 基于基于 BoaBoa 的软件平台设计与实现的软件平台设计与实现上述的嵌入式硬件平台实际上是一通用平台,基于该平台构建嵌入式 Web服务器,设计者必须考虑其通用性、响应速度及对于硬件的可操控性。正是基于这样的考虑,笔者分三层构建嵌入式 Web 服务器的软件体系:ARMLinux 的建立;Boa 服务器的移植与构建;Cgi 程序的扩展。31 ARM Linux 的建立 ARM Linux 的建立是基于 U-Boot 的实现,它的建立实际上是 Linux 内核在S3C241
7、0 上移植的过程,主要分为 3 个步骤:建立交叉编译环境;编译内核;生成并配置根文件系统。因本文的工作重点并不是介绍 Linux 移植,因此下面只是简要介绍 3 个步骤的实现。(1)建立交叉编译环境:建立交叉编译环境的过程实际就是对交叉编译器压缩包解包的过程。在本文中,所有的软件源码包都放在tools 目录下,解包所用指令序列在此不做赘述,其解包路径为usrlocalarm cross。(2)交叉编译 Linux 内核:在交叉编译内核之前,对编译选项的配置是很重要的。执行“make menuconfig”指令,进入 Syetem Type 选项。本文中选择对S3C2410 系统板的支持,然后配
8、置 File System 以及 Block device。保存配置后要修改 Makefile 文件,即把交叉编译的路径指定为本文中安装的特定目录,修改语句为:CROSS_Complie=usrIocaarm_cross341binarm-Linux-。最后通过 make dep;make clean;make zlmage 命令编译内核,得到内核压缩映象 zlmage。(3)生成并配置根文件系统:生成并配置文件系统主要有以下的几个步骤完成:安装 busybox 工具包(首先解压 busybox 压缩包,在解压目录下修改Makefile 文件,然后使用 Make install 完成安装);创
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 设计 期末 作业
限制150内