- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Linux嵌入式WebServer设计和实现
基于Linux嵌入式WebServer设计和实现 摘要:提出基于ARM9和Linux嵌入Web服务器的实现方案,介绍了基于S3C2410处理器嵌入式Web服务器的硬件电路和软件设计,通过搭建嵌入式交叉编译环境,移植BootLoader、Linux内核、文件系统、Boa网络服务器,给出了嵌入式Web服务器的实现方法,通过通用网关接口CGI,成功实现了动态网络服务。
关键词:S3C2410处理器;Linux;Web 服务器;BOA 网络服务器
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)09-1966-03
嵌入式系统具有功能特定、规模可变、扩展灵活、有一定的实时性和稳定性、系统式内核比较小等特点。随着Internet技术持续发展,嵌入式产品的上网被寄予厚望。然而,以TCP/IP协议为核心的网络软件对于计算机系统的运算速度、内存空间要求相对较高。由于早期的CPU和单片机是嵌入式系统中的主体,运算能力有限,速度很慢,内存空间有限,硬件上的限制阻碍了网络的嵌入式应用。近年来,计算机硬件特别是CPU的发展得到很大幅度的提升,已经可以将操作系统、TCP/IP协议软件以及相应的应用软件存放在以Flash为主的存储器中。操作系统和TCP/IP协议软件随着Linux的普及揭开了神秘的面纱,嵌入式产品的网络化逐渐成为现实。
1 硬件系统设计
从技术上来讲,嵌入式产品网络化有多种方式。比如:有的是通过专门Webserver实现,有的是通过专用网关连接,也有的是在嵌入式产品中扩展传统网络技术,通过嵌入式系统本身的架构实现Webserver功能。前两种方案构成比较简单,实现的功能也比较单一,所以本文重在阐述后者,也即基于Linux的嵌入式Webserver系统的构建(硬件系统结构框图见图1)。
该系统主要由S3C2410处理器、Flash存储器、SDRAM、JTAG接口电路和时钟、复位、电源电路组成,通过专用以太网接口电路连接以太网,并通过RS232接口电路与PC电脑相连。其中核心处理器S3C2410采用Samsung公司生产的一款基于32位ARM核的RISC嵌入式处理器核,该处理拥有独立的16KB数据Cache和16KB指令Cache,SD主机和MMC接口,NAND闪存控制器,2个USB主机,1个USB设备,采用272-FBGA芯片封装,最高频率可运行在203MHz。
2 开发环境Linux平台建立
ARM Linux开发首先要有ARM Linux编译开发环境,常见做法是采用所谓“虚拟开发环境”方式。也就是主机使用Windows操作系统,虚拟机安装Linux系统,然后在虚拟机上建立ARM Linux编译开发环境。虚拟机搭建工具可以使用WMware WorkStation,它的完整使用过程大体分为:建立一个新的虚拟机、配置安装好的虚拟机、配置虚拟机的网络3个部分。
2.1 虚拟机建立
建立虚拟机的操作并不复杂,打开VMware软件环境,按照向导提示逐步操作,直至结束,就可以顺利完成全部过程。具体操作如下:首先启动VMware WorkStation 软件,单击【File】→ 【New】→【Virtual Machine】选项,会出现一个VMware安装向导窗口(见图2)。依指引操作,直至出现虚拟机相关参数的界面(见图3),单击【Finish】按钮,这时候就已经建立完成一个虚拟机了。
2.2 虚拟机配置
虚拟机配置是指对虚拟机的硬盘大小、内存容量和网络类型等各项参数进行设置修改的过程,虚拟机安装完成之后,就可以进行虚拟机配置。具体单击“Edit virtual machine settings”,开始进行参数设置,可以对虚拟机的Devices进行配置(见图4)。
2.3 配置网络
配置虚拟机网络也就是搭建Linux编译开发环境,它主要完成三大目标任务。一是目标板通过NFS协议挂接到服务器的开发目录下,二是开发终端通过串口监视目标程序的运行,三是利用Samba服务器的开发目录映射到终端的一个本地目录。完成Linux编译开发环境的搭建主要包括准备源文件、搭建工作目录、创建系统变量、创建binutils、编译内核以及创建boot-trap gcc、gblic、GCC和G++等过程。
3 软件系统设计
3.1 Boot Loader移植
当前比较流行的Boot Loader是由韩国Mizi公司开发的Vivi,它针对ARM9处理器设计,提供比较完备的命令体系,操作起来十分方便。该文即以Vivi为例来说明Boot Loader的移植过程。
Vivi在通常情况下有两种工作模式。第一种是启动加载模式,也称为自主模式,是 Bo
文档评论(0)